A Comparison of Language Evolution and Communication Protocols in Multi-agent Systems Dirkjan Bussink University of Twente, Faculty of Electrical Engineering, Mathematics and Computer Science [email protected] ABSTRACT Communication is a very important concept in multi-agent systems. There are several approaches to how this communication can take shape. In this paper the two most important approaches are reviewed and compared, communication using communication protocols and communication using an evolving language. Both techniques have their advantages and disadvantages. In industrial applications communication protocols will be the best practice, but in systems where homogeneous agents can work together language evolution is a good option. Keywords Multi-agent communication, agent communication languages, language evolution, communication protocols 1. INTRODUCTION Communication is a key concept in multi-agent systems. A lot of research is already conducted in this area, but many ideas and concepts are still open for debate. The main focus of all this research is on the classical area of communication protocols, which are the oldest and most used technique. Many of these researches are about the formal specification of the design and implementation of communication protocols, in order to construct formal and error free protocols [MSH02]. Other researchers have chosen for a totally different approach. They treat communication just like another component that can be learned by agents. A widely known research about this subject is the Talking Heads experiment [Ste99]. Agents learn and become intelligent though the communication with other agents. The aim of this paper is to gain more insight into both different approaches and to compare them on different criteria. These criteria can be criteria like interoperability and complexity. First both methods will be described in general, to gain a good insight into the working of both techniques. After this, a comparison will be made, based on the individual aspects of each method. These individual aspects will be used to make a general comparison and to conclude which approach works best for which domain or application. Section 2 will contain a general description of communication in general and of communication protocols and evolving language is specific. Section 3 will describe the different advantages and disadvantages of each method, after which section 4 will provide a comparison based on these Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission. 1st Twente Student Conference on IT, Enschede 14 June 2004 Copyright 2004, University of Twente, Faculty of Electrical Engineering, Mathematics and Computer Science advantages and disadvantages. Section 5 will conclude the paper and section 6 will presents some suggestions for future work. 2. COMMUNICATION IN MULTIAGENT SYSTEMS Communication is a very important concept in multi-agent systems. Without it, different agents cannot know from each other who is doing what and how they can cooperate. Therefore communication is a must if you want to set up a useful multi-agent system. 2.1 Theory and ideas behind communication Most concepts that are used when agents try to communicate come directly from research about how humans communicate. This Speech Act Theory [Aus62] is widely used in communication protocols, but also evolving languages are based on human communication. A lot of researchers use this Speech Act Theory as the basis for their protocol design. This means that communication can be viewed in the same way as any other act. If the performance of an agent is analyzed, communication is treated in the same way as any other action, such as picking up an object. Both actions can have a positive impact on the agent’s desired result; there is no difference in how this impact is rated. Speech Act Theory divides communication up into different types of communication messages [RN95]. These different actions are the following: • Inform Making a statement about yourself or the world, these are treated as facts • Query Ask other agents whether they have some specific knowledge of the world • Answer In response to a query of another agent, an agent can answer that question • Request or command Ask or command another agent to perform a certain action. • Promise or offer State you will do something, or offer to do something in return of a favour • Acknowledge Respond as a reaction to offers and requests. • Share Used to share feeling and experiences with other agents, thus the sharing of subjective ideas and not of facts the Speech Act Theory and therefore not present in ACL’s such as the FIPA ACL. This shows that designing a protocol is often a very application specific task. Protocols are often based on these primitive acts. Some of these acts are used to transfer information the hearer, others are used to make the hearer perform a certain action. When a communication protocol is used in a multi-agent system, the design will all take place before the protocol is put to its definitive use. The implementation and testing will therefore take place before the system is made operationally. When it appears that a certain protocol is not sufficient, the system has to be taken offline, modified and put back to work. This can be a very time-consuming process. The research of Mazouzi, El Fallah and Haddad proposes a formal method for designing protocols based on Agent Unified Modelling Language (AUML) and Coloured Petri Nets (CPN) [MSH02]. The protocols designed using these methods are verifiable and consistent. When different agents want to communicate, there are in principle two possibilities. The first and most simple solution is to directly send information from the knowledge base to the other agent. This knowledge base is an internal representation of the agent’s knowledge of the world [RN95]. This is socalled telepathic communication. Both agents participating in the conversation must have a knowledgebase with exactly the same structure for this to be possible. If the agents have different knowledge representation languages, the knowledge bases cannot be interchanged. This way of communication could be used by a malicious agent to corrupt the knowledge base of another agent by simply telling it the wrong information. The other way is using some kind of formal language. This is usually done using a formal grammar, such as a recursively enumerable grammar or a context-free grammar. This way, the agents do not have to have the same internal structure. This approach is nowadays used most of the time. 2.2 Communication protocols For a long time, the only way agents communicated was using communication protocols. Therefore research often focussed on this area and a lot of specifications have been written. Because of the formal nature of protocols, there are a quite a few widely known and used standards. First I discuss some of the organizations and their standards. The best-known organization that promotes a standard is the Foundation for Intelligent Physical Agents (FIPA) [FIPA]. They aim to produce software standards for heterogeneous and interacting agent-based systems. Part of these standards is the specification of communication protocols that can be used between agents. One of these specifications is the FIPA Agent Communication Language (ACL) Message Structure Specification [ACL]. This specification specifies how messages should be exchanged between agents and how the content of the messages should represented. There are a lot of other specifications from the FIPA that all cover a certain area of multi-agent communication. The FIPA specifications are of course not the only specifications. Other communication protocols are the Knowledge Query and Manipulation Language (KQML) [KQML] and the Interagent Communication Language (ICL), part of the Open Agent Architecture (OAA) [OAA], a framework for creating your own multi-agent systems. These last two are more focussed on software agents, whereas the FIPA is oriented towards physical agents. Although there a several standards for designing an ACL, much research is done concerning more specific applications. Many different researches are dedicated to finding the best solution for a certain specific application. Examples are a KQML based brokerage protocol [PGS00] and a collaborate communication to instruct a robot to conduct certain actions on objects [SP99]. In the latter article new aspects of communication are also used, such as indirect speech acts and object references. These are possible because the agent and the human are both present in the same environment. These aspects are modelled into their model, but are not described in Huget and Koning also suggest a more formal approach to protocol design [HK03]. They propose several protocol development stages, much like the software engineering cycle. The design starts with a requirements analysis, after which a formal description, validation, synthesis, and conformance will be performed. To illustrate how exactly a protocol looks like, an example will be given based on the FIPA specification [FIPAACL]. It will describe the simple elements and how they can be combined into a protocol. A basic FIPA message has several different messages parameters. The first parameter is the so called performative, this indicated the kind of communicative act. There is also a FIPA standard in which these performatives are listed. The performative parameter is obligatory. Other important parameters are sender, receiver and content. Also there is a language parameter; this indicates the formal language of the content. A basic message could look like this: ( request :sender a :receiver b :language ComLanguage :content (action buyStock) ) This message means that sender a request agent b to buy stock. The content of the message can be understood by b, because it will be part of the ComLanguage (just an exemplary name) formal grammar. 2.3 Evolving languages The basis for language evolution is in human communication. The agent languages consist of grammars and vocabularies, just like any human language. Some researchers even do research in the area of language evolution using agents in order to get more understanding of how human communication has evolved. The Talking Heads research from Luc Steels [Ste99] also has this goal: “The goal of the talking heads experiment is not to demonstrate an artificial intelligence with the same capacities as human intelligence, but to perform scientific experiments so as to examine aspects of a theory of the origins of language and meaning” ([Ste99] p. 10). The evolution of the language than can be compared to self-organization, such as the creation of a path in an ant society. When different agents first start communicating with each other in a certain environment, both their vocabulary and grammar are empty. This means the agents will start without any knowledge, and therefore these ‘virgin’ agents will learn from scratch. The exact workings of this principle of evolving languages will be illustrated using an example from Luc Steels [Ste96]. In his experiment he is using a so called language game in order to evolve a language. He has used this same idea in his Talking Heads experiment [Ste99]. The language game is based on a very simple principle. In a certain environment there are several agents with different properties (properties such as colours, weight, etc). The goal is to let each agent know what the properties are of the other agents. In order to achieve this goal, they use an evolving communication language. Each agent tries to communicate its features and tries to understand the features of the other agents. Agents can also talk to each other about features from a third agent. • • The language games conducted by Luc Steels are not the only way of creating a language using evolution. A totally different approach is to use genetic algorithms and let the best communicating agents reproduce. This is done in the research from Jim and Giles [JG01]. The grammar used in this article is very simple and predefined; the language consists of words from a certain length N made up from binary characters. In this case, only the vocabulary of the agents is empty. The agents do not use a new word for a new situation, but instead they use random words. Other agents will interpret these random words, before performing an action. The best performing agents will then be selected to reproduce. Some mutation will occur because of the genetic algorithm and this will be repeated several times. The vocabulary is built this way totally independent from the system’s designer. • 3.1 Communication protocols 3.1.1 Advantages • Simplicity This is one of the major advantages of communication protocols. Because of their strict and formal nature, they are very easy to understand. When a protocol does not suffice, the problem can be easily identified and the protocol can be extended. Due to the formal nature, reasoning about communication protocols is also very well possible. Verifiability Closely related to the simplicity is the verifiability. Because of the transparency of a communication protocol, it is possible to formally analyse the protocol. This means it is guaranteed to work correctly for the use it was designed for. 3.1.2 Disadvantages • Inflexibility A communication protocol has to be designed by a human designer before it is ever used by the agents. After this design the multi-agent systems cannot adapt the language when new situations arise. Using a communication protocol can therefore be very inflexible. Even when agents are used that learn for themselves, they cannot adapt their language and are much more limited. • Hard to design A protocol is easy to design, but designing a good protocol takes a lot of effort. The inflexible nature of communication protocols has as a result that the design of the protocol must be very complete. The agents must have enough possibilities to communicate all the necessary information. When it becomes clear after a while that the designed language is not sufficient, it has to be revised and tested again. This can be a painstaking process, before the language is finally satisfactory. When the agents have to communicate with other agents who use their own protocol, this design becomes even harder. 3. ADVANTAGES AND DISADVANTAGES OF DIFFERENT TECHNIQUES Every technique used to communicate between agents in a multi-agent system has its own advantages and disadvantages. These advantages and disadvantages of both communication protocols and evolving languages will be discussed in this section. Widely known Because communication protocols are a relatively simple form of communication, it was the first technique that was really used in communication. The evolving languages appeared at a later stage. Because of this, communication protocols are widely spread and known, therefore they are also used more often. They are more thoroughly researched and more information is known about communication protocols. When a certain feature is not yet known, a new word will be made up for this certain property. Agents who do not recognize this new word will try to associate it with certain properties. This game is repeated several thousand times before the language will finally stabilize. While the language game is being played, agents can be added and removed from the population. When new agents are introduced, they will pick up the existing language. When these new agents have new properties (such as a property specifying their size), these new properties have to be named too in order to be able to determine these properties. The evolutionary process will continue until these properties are also known. This means that these newly introduced agents will learn the existing language much faster that the agents who learned with only ‘virgin’ agents around them. Interoperability One of the major goals of protocol specification such as the FIPA specification is the possibility to let multiple agents created by different people communicate. This advantage is very important for the practical application of agents. In a controlled scientific environment they may only have to communicate with similar agents, but in the real world it is very well possible they will have to work together with other agents. • Interoperability It may seem strange, but interoperability is also a big disadvantage. When a protocol designer want to adhere to the FIPA standards, it is not very hard. Because of the loose formulation of the standards, it is possible to create a protocol that is compliant, but the agents using the designed protocol cannot interact with other agents that do not speak the exact same protocol. A simple example from [PM99] shows this very clear: ( inform :sender s :receiver r :language KQML :content (:tell : : : ) ) A human designer only designs the very basic systems needed to be able to learn. Basic systems such as perception are implemented. Also parts such as the vocabulary will be implemented, but only to be able to add new words. They will not be filled with any default data. After the systems starts to evolve, the human designer does not do anything anymore. This may result in highly complex grammars, which no human would ever design, but who are very efficient. The system is capable to exceed its basic design. One example of this is the experiment conducted by Jim and Giles [JG01]. They used evolutionary algorithms to randomly create a language and then pick the best performing agents, who are then used in another evolutionary cycle. The final language these agents evolved is very efficient and far more complex that a human would probably design. The language has a lot of words, where the meaning also depends on the state of the agent. A human designed would probably use different words for different meanings and not the same word with different meanings depending on the state of the agent. This is a simple FIPA compliant message from agent s to agent r. The content contains the message. In this example this message contains an entire protocol in itself, the FIPA compliant message is only used as an envelope. This means that the protocol itself is FIPA compliant, but it will never be interoperable with other systems, because of the custom protocol that in used in the tell structure. On the other hand, you can also over specify a protocol. When there are a lot of performatives that are not known to other agents, they different agents can also not communicate. • Centred around sender Speech Act Theory is mostly criticised for being centred too much on the sender. The classification that Searle made [Se69] made for his view on speech only takes into account the beliefs and intentions of the speaker. The theory is therefore very unidirectional. The sender does not take in account how the hearer will understand the message, the hearer might think the speaker meant something totally different and respond it an unexpected way. • Choosing a standard and how formal it should be interpreted 3.2.2 Disadvantages • This property has also been seen as an advantage, the system can grow more complex that is humanly designable. This also has a great disadvantage. When the system is working and has learned quite a lot, it is very likely that it is not possible, or very hard, to understand the language that has evolved. This disadvantage can also been seen in [JG01]. The language is very efficient, but also very hard to understand. The same word may have different meanings, depending on the state of the agent. In this experiment is it possible to use a Mealy machine to represent the entire language, but when a larger system is built where the language is more complex that only one word consisting of a fixed number of binary digits, this approach will probably not work. The resulting state machine would be far too large to draw and the language will be almost impossible to understand. When multi-agent systems where first devised, everyone designed and used their own communication protocols. Later several standards where developed, KQML is one of the older ones, FIPA came later. These multiple standards result in more different protocols and therefore less compatibility. To make it even more complex, each standard has some sub standards, such as the FIPA standard for performatives (which can be used with the FIPA standard for ACL messages). But you can also choose to use KQML as a formal language describing the content of a FIPA compliant ACL message. All these possibilities make it extremely difficult to design a good protocol. 3.2 Evolving languages 3.2.1 Advantages • Flexibility One of the main advantages of an evolving language is its power to adapt. As already illustrated in the example in section 2.3, agents can devise their own new words and use them to describe previously unknown concepts. • Close to human evolution The idea that human communication and intelligence reinforce each other is widely accepted. Whether humans use language because they are intelligent, or the other way around is still subject of much debate. Fact remains that communication is a very important factor when one tries to create an artificially intelligent agent. The Talking Heads Experiment has exactly this motivation as one of the reasons why the research was conducted. This advantage is of course only relevant if the mimicking of human intelligence is the goal of the research. • Evolution of systems not designable by humans Table 1: Overview of comparable advantages and disadvantages Can evolve into a highly complex system • Interoperability Agents, who use their own evolved language, will most likely not be able to communicate with other agents. Each evolving language seen so far has a different structure and works very different. The language games from [Ste96] are totally different from [JG01]. If the agents should be able to communicate, they would have a compatible language, especially a compatible grammar. Another problem with heterogeneous agents is mentioned by [Ste99]. In the Talking Heads Experiment, all agents have the exact same physical body with the same perception possibilities. He has thought of using possibly different physical agents, where some might not have the capability to see and where other could not move. This would introduce interesting aspects, but would make the entire experiment very complex, Property Communication protocol Language evolution Flexibilty Flexible in design phase, not when implemented Very flexible in use, system constantly adapts Complexity Fixed complexity Can grow very complex Interoperability With a very good design, the system can work with other heterogeneous agents Very hard to make a system able to communicate with heterogeneous agents because the agents cannot talk about their perceptual experiences. • Time consuming evolution In the example in section 2.3 the time necessary for training the agents was mentioned. The simple language game already took several thousand iterations before the language stabilized. When an evolving language is put into use in a more real-life environment, this could mean that the evolution could take enormous amounts of time, because of the complexity of the environment. This is a serious disadvantage of evolving languages, the system has to be run for a long time before reliable communication can be possible. • Verifiability A disadvantage closely related to the possible complexity of the system, is the verifiability of the system. When an evolving language is used, there is not control on how the language evolves. The final language can be very hard to understand. Because of this, verification of this language is even harder, if not impossible. The language is not transparent and its workings cannot be checked. 4. COMPARISON OF THE DIFFERENT TECHNIQUES 4.1 Advantages vs. disadvantages In table 1 there is a short overview of the comparable advantages and disadvantages mentioned in section 3. The first major difference between the two different techniques is the flexibility. Communication protocols are far more rigid and less flexible than an evolving language. This however, does not mean that an evolving language is always better. The flexibility comes at a certain price. The evolved language will likely be much harder to understand and it will not be easy to analyse its structure. This complexity due to the evolving language has a very important impact. Most of the agents that use an evolving language are agents that interact among themselves in order to achieve a certain goal. This is often in a setting that permits some sort of research. But agents are not only used to conduct research, one of their major tasks in the future will be assisting human beings. This assistance can come in many different forms, a robotic agent that cleans the house or a software agent that helps you find a good vacation. It is very important that humans can interact and communicate with these agents. This means that the agents should understand the human language, or at least a subset of a human language. For example, when a human buys a robotic cleaning agent, he does want to train the agent with literally thousands of language games, so the agent can understand him. The agent can also not be trained interacting with other agents, because the language would not be understandable by humans, so it would be very complicated to use an evolving language for such a robot. Therefore a protocol would probably be much more appropriate. Jacobus and Duffy have conducted more research in this area [JD03]. They also base their ideas on an ACL based protocol, which is extended with features from human language, so the communication will be formal, but also easy for a human being. Interoperability is a large problem in both areas. When the designer chooses to use a protocol, he has to decide first on an ACL to use or to design its own. But this is not the only choice; each ACL is only a very basic specification. A lot of extra design has to be done and when the system has to cooperate with other agents this can be very hard. In some systems interoperability with humans is also a necessary requirement. A designer should take this into account, but it is also very possible that interaction with humans makes the protocol design easier. Humans are very adaptable and will adopt the language of the agents much faster than other agents. This is even the case when evolving languages are used, as can be seen in the Talking Heads experiment. Here people were encouraged to try to interact with the robotic agents and they managed to succeed. Both man and the machine adapted their language in order to be able to adapt [Ste99]. Verifiability is an important criterion. A system that is put into use in a critical environment has to work correctly. Although the correctness of an evolving language can be checked using simulation, it is not guaranteed that this simulation covers all possible problems. Even if it performs correctly in the simulation, this does not have to mean it works correctly in the real world, the simulation is after all just a model of the reality. A protocol can be verified much better, because of its finite nature. All states can be examined and if the system works correctly for all states, the protocol is correct. There are several other properties mentioned, but none of these can be directly compared. The advantage that evolving languages are close to human language evolution is not always a real advantage, but it is if simulating human evolution and intelligence is the goal of the experiment. The interpretation of how formal a specification should be interpreted is still open for debate; this is already recognized by [PM99]. 4.2 Applications in domains 4.2.1 Predatory Prey Predator prey is one of the best known domains where simple concepts can easily be tested. The experiment consists of a grid on which a prey is present in a certain square. There are a number of predators, whose goal is to capture the prey by locking it in on every side, so the prey cannot make any move. There are many variations on this general idea (such as whether diagonally moves are allowed and sometimes predators may make two moves, whereas the prey may only make one). Jim and Giles conducted a research in this area [JG01]. Their rules are very fair; the predators have the same capabilities as the prey. They use an evolving language to let the agents communicate. The communication is used to know which agent is where en where the prey is. They do not have individual knowledge of where the other predators are and where the prey is, they only know what’s in the grid blocks adjacent to them. The performance measure used in this domain is usually the number of steps it takes before the predators have enclosed the prey. This performance depends heavily on the type of prey. A random prey will much more likely caught (because of its locality), a prey that walks continuously in one direction is much harder to catch. Jim and Giles claim their system outperforms regular communicating systems, but do not back this up with performance numbers of ordinary communicating systems. The only claim they make is that the system outperforms all previously designed predator prey systems. This claim however, seems reliable and there is no obvious reason to question their results. 4.2.2 Robot-soccer Communication between different agents is not very widely spread. However, in real life soccer, communication between players is very important. In the research from Veloso, Stone and Bowling [VSB98], communication is only minimally used. It is only mentioned that it is possible, not how it is used and whether it is important. More and improved communication could result in better playing robot soccer teams, especially evolving systems, because an evolving system can constantly adapt itself to the situation. In soccer games, new situations arise very often and an evolving system can name these new situations and therefore cope with them very well. Communication with a protocol could break apart in such a situation. A downside of using an evolving language is the time it takes to evolve it. The basic language can be evolved using simulations (just like robot soccer agents are trained now). The language that emerges from this simulation can be used as the basis for the final language. This makes the learning much faster than evolving an entire language when playing real life games. 4.2.3 Other domains There are various other widely known domains, but they won’t be mentioned here. However, there are some conclusions that can drown from the advantages and disadvantages in general. Typically the type of communication that is used in a system that incorporates other systems from different designers is a communication protocol. Such systems can be multi-agent systems on the internet that cooperate with each other in order to achieve a certain goal. An evolving language is almost not possible here; the only solution is a well designed protocol. This protocol has to incorporate all the necessary features, so it will be very complex to design. Therefore, even using a protocol will not ensure that the agents will be able to corporate, but it will be more feasible than with an evolving language. Also interacting with a human can be difficult. Here however, are some more options. The Talking Heads Experiments [Ste99] has shown that humans can communicate with the agent with their evolving language, but it takes some effort on the human side. Most likely people do not want to take effort when the agent system is purely for their use, such as a cleaning agent. Therefore communication with humans will most likely use some sort of protocol, but not in the same way as agents among themselves use. 5. CONCLUSIONS There are a lot of differences between communication protocols and evolving languages. The first is a very formal and strict way of specifying communication, where all communicative acts are predefined and no new acts are devised during system use. Evolving languages however, are flexible and are continuously adapted. A consequence of these differences is the complexity of an evolving language can grow very large, whereas the complexity of a communication protocol is always the same. Another result is that the research done in evolving languages is very much research into the workings of the principle. There are not many researches that try to apply the theories in a system that has another purpose than to research evolving languages. The Talking Heads Experiment is totally focussed on the evolution of a language and the consequences of this. It does not say anything about other application of the same technique, such as improving the performance of multi-agents systems. Communication protocols have been around for longer time, therefore a lot more research has been conducted in this area. Also a lot of researches have been done in the specific application of protocols and how it should be designed to work best. But also with communication protocols, there are not many researches with quantitative and comparable results. Making a definitive conclusion is therefore very hard. In the predator prey domain, the evolving language works very well and it probably will work in comparable situations, such as robot-soccer, where agents work among each other in order to achieve a goal. However, when a multi-agent system has to communicate with other systems, designed by others, using evolving languages becomes very hard. Especially in industrial applications, where most of all verifiability is very important, evolving languages are not the best solution. In those cases a communication protocol would be more trustworthy, because of its verifiability and its transparency. When an agent has to communicate with a human, a sort of middle way would probably be the best solution. The basis will be a communication protocol, because a human has to be able to understand the agent, but this protocol should be extendable and it should be able to learn from the human being. A kind of middle way approach is also suggested in [JD03]. 6. FUTURE WORK No real conclusive results could be drawn from the found literature, a lot more research should be done in order to be able to come up with conclusive results. Setting up an experiment in which a direct comparison is made would shed more light on when which technique can be used best. Several simple experiments should be conducted in simple domains, such as a direct comparison in predator prey. Another interesting research would be using language evolution in robot soccer. This could make is possible to make a better performing soccer team, because they can communicate simple tactical advise, about where a pass is going or what the intentions are of a specific robot. Here one could compare how different teams perform, without communication, with a protocol communication and with an evolving communication system. The results from such an experiment would be very interesting. REFERENCES [Aus62] Austin, J.L., How to do things with Words. ClarendonPress, 1962. [Se69] Searle, J.R., Speech Acts: An Essay in the Philosophy of Language, Cambridge University Press, Cambridge, 1969 [RN95] Russel, S. J, Norvig, P., Artificial Intelligence – A modern approach, Prentince Hall, New Jersey, 1995 [KQML] UMBC Lab for Advanced Information Technology, Knowledge and Query Manipulation Language, http://www.cs.umbc.edu/kqml/, 1993 [FIPA] Foundation for Intelligent Physical Agents, FIPA 97 Specification. Part 2, Agent Communication Language, http://www.fipa.org, 1997 [FIPAACL] Foundation for Intelligent Physical Agents, FIPA ACL Message Structure Specification, http://www.fipa.org/specs/fipa00061/SC00061G.html, 2002 [OAA] SRI International, Open Agent Architecture, http://www.ai.sri.com/~oaa/, 1998 [PGS00] Pitt, J., Guerin, F., Stergiou, C, Protocols and intentional specifications of multi-party agent conversions for brokerage and auctions, Proceedings of the fourth international conference on Autonomous agents (Barcelona, Spain, 2000), ACM Press, New York, NY, 2000, 269-276 [SP99] Strippgen, S., Peters, K., ‘The other way round!’ Collaborative Communication with Agents, Proceedings of the third annual conference on Autonomous Agents (Seattle, Washington, 1999), ACM Press, New York, NY, 1999, 108-115 [HK03] Huget, M.-P., Koning, J.-L., Interaction Protocol Engineering. Communication in Multiagent Systems, LNAI 2650, Springer, Berlin, 2003, 179-193 [MSH02] Mazouzi, H., Seghrouchni, A.E.F., Haddad, S., Open protocol design for complex interactions in multi-agent systems. In Proceedings of the first international joint conference on Autonomous agents and multiagent systems: part 2 (Bologna, Italy, 2002). ACM Press, New York, NY, 2002, 517-526, http://doi.acm.org/10.1145/544862.544866 [Ste96] Steels, L., The Spontaneous Self_organization of an Adaptive Language, Muggleton, S.(ed).(1996) Machine Intelligence, Oxford Univ. Press, Oxford, 1996 [Ste99] Steels, L., The Talking Heads Experiment. VUB Artificial Intelligence Laboratory, Antwerpen, 1999 [JG01] Jim, K.-C., Giles, C.L., How communication can improve the performance of multi-agent systems. In Proceedings of the fifth international conference on Autonomous agents (Montreal, Quebec, Canada, 2001). ACM Press, New York, NY, 2001, 584-591, http://doi.acm.org/10.1145/375735.376455 [JD03] Jacobus, E., Duffy, B., The language of machines, Proceedings of the 1st international symposium on Information and communication technologies (Dublin, Ireland, 2003), Trinity College Dublin, Dublin, 2003, 409-414 [VSB98] Veloso, M., Stone, P., Bowling, M., Anticipation: A Key for Collaboration in a Team of Agents, Proceedings of SPIE Sensor Fusion and Decentralized Control in Robotic Systems II, volume 3839, Boston, 1999 [PM99] Pitt, J., Mamdani, A., Some Remarks on the Semantics of FIPA’s Agent, Autonomous Agents and Multi-Agent Systems 2, Kluwer Academic Publishers, The Netherlands, 1999, 333–356
© Copyright 2026 Paperzz