Social agents interact with their neighbors. Agent Smith may have a conversation with agent Jones. Smith may imitate, infect, or play a game with Jones.
Agents don't make small talk. Agent conversations are usually goal-directed transactions. For example, Smith wants to buy a book from Jones. Here's how the conversation might go:
The solid barbed arrows are messages. The dashed arrows are responses. The triangular arrows are procedure calls or tasks.
The messages in a conversation can be classified according to their types:
Call for Proposal
Agent conversations instantiate conversational patterns called protocols. We can imagine that a protocol is like a script from a play. In this metaphor the agents are actors playing roles in the play. For example, in the marketplace play conversations occur between agents playing the roles of seller and buyer. In the auction play conversations occur between agents playing the roles of auctioneer and bidder. In the supply chain play conversations occur between agents playing the role of consumer and producer. In this play agent B may be the producer when he interacts with agent A, and the consumer when he interacts with agent C.
A supply chain consumer may want to first broadcast a request for proposals to several potential producers. Interested producers respond with proposals, then the consumer can select the best one. This is called the Contract Net Protocol. This protocol is used in our implementation of Sugarscape.
Some of these protocols are discussed in Role Models.
The principle architectures of a distributed system are client-server, peer-to-peer, and pipeline. (These are discussed Distributed Architectures.) A multi-agent system can be viewed as a special case of a distributed peer-to-peer system.
One simple form of interaction is when one agent imitates the attributes and behavior of an influential neighbor. Assume agents Smith and Jones are neighbors. Here are a few examples:
Smith's political opinions are influenced by Jones
Smith copies an answer from Jones' exam
Smith buys the same type of car Jones buys (keeping up with the Joneses)
Smith borrows some of Jones' customs: eating sushi, praying to Allah, making weapons out of stone, etc.
If Smith doesn't have an influential neighbor, he may adopt some combination of the attributes and behaviors of all or some of his neighbors. For example, Smith may adopt the religion of the majority of his neighbors, or he may donate to charity the average of the donations of his neighbors.
Many of these phenomena can be modeled using our Cellular Automata Framework.
While Smith is buying that book from Jones, Smith may infect Jones with a virus. We can regard this as another type of interaction between agents. Depending on how contagious the virus is, Smith may infect 80% of the agents that come closer than two meters. These agents infect 80% of the agents they come close to and so on and so on until an epidemic spreads through the society.
Of course the virus can be a real virus or a metaphor for something else.
Viral communication is discussed in Plague.
Many interactions between agents can be modeled as games. These games aren't necessarily fun, though. For example, Mr. Smith loves football and he loves Mrs. Smith. Shall he buy a ticket to the football match or the ballet? Across town Mrs. Smith is in a similar quandary. If both buy football tickets Mr. Smith will be very happy and Mrs. Smith will be moderately happy. If both buy ballet tickets, the reverse will be true. If Mr. Smith buys a football ticket and Mrs. Smith buys a ballet ticket, then both will be moderately happy. If Mr. Smith buys a ballet ticket and Mrs. Smith buys a football ticket, then both will be unhappy.
Games are discussed in Adaptation.