Abstract
This chapter surveys the multi-agent programming research field by presenting and discussing some typical multi-agent programming languages and frameworks. It provides an overview of the concepts and abstractions that are used to describe multi-agent systems. It is argued that the existing programming languages and frameworks are designed to support the implementation of high-level abstractions such as individual agents, the organization that controls and regulates the behavior of individual agents, or the environment with which individual agents interact. The distinction between agent, organization, and environment is used to structure the presentation of the programming languages and frameworks.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
In contrast to direct communication by means of send and receive messages, a shared environment can be used to communicate indirectly by reading and writing information from/to it.
References
Ågotnes T, van der Hoek W, Wooldridge M (2008) Robust normative systems. In: Padgham P, Muller P (eds) Proceedings of the seventh international conference on autonomous agents and multiagent systems (AAMAS 2008). IFAMAAS/ACM DL, Estoril, pp 747–754
Arbab F, Astefanoaei L, de Boer F, Dastani M, Meyer JJ, Tinnermeier N (2009) Reo connectors as coordination artifacts in 2APL systems. In: Proceedings of the 11th pacific rim international conference on multi-agents (PRIMA 2008). Lecture notes in computer science, vol 5357. Springer, New York, pp 42–53
Astefanoaei L, Dastani M, Meyer JJC, Boer F (2009) On the semantics and verification of normative multi-agent systems. Int J Universal Comput Sci 15(13):2629–2652
Baldoni M, Boella G, Dorni M, Grenna R, Mugnaini A (2008) PowerJADE: organizations and roles as primitives in the JADE framework. In: WOA 2008: Dagli oggetti agli agenti, Evoluzione dell’agent development: metodologie, tool, piattaforme e linguaggi, pp 84–92
Baldoni M, Boella G, Torre LVD (2005) Roles as a coordination construct: introducing powerJava. In: Proceedings of 1st international workshop on methods and tools for coordinating concurrent, distributed and mobile systems, Namur, 23 April 2005. Electron Notes Theor Comp Sci 150(1):9–29
Behrens T, Dix J, Hindriks K, Dastani M, Bordini R, Hubner J, Pokahr A, Braubach L (2012) An interface for agent-environment interaction. In: Proceedings of the eighth international workshop on programming multi-agent systems (ProMAS’10). Springer, Berlin, pp 139–158
Bellifemine F, Bergenti F, Caire G, Poggi A (2005) JADE - a java agent development framework. In: Multi-agent programming: languages, platforms and applications. Springer, Berlin, pp 125–148
Bergenti F, Gleizes MP, Zambonelli F (eds) (2004) Methodologies and software engineering for agent systems. In: Multiagent systems, artificial societies, and simulated organizations, vol 11. Kluwer Academic, Dordrecht
Boella G, van der Torre L (2008) Substantive and procedural norms in normative multiagent systems. J Appl Logic 6:152–171
Bordini RH, Dastani M, Dix J, Fallah-Seghrouchni AE (eds) (2005) Multi-agent programming: languages, platforms and applications, multiagent systems, artificial societies, and simulated organizations, vol 15. Springer, Berlin
Bordini RH, Dastani M, Dix J, Fallah-Seghrouchni AE (eds) (2009) Multi-agent programming: languages, tools and applications. Springer, Heidelberg
Bordini R, Hübner J, Wooldridge M (2007) Programming multi-agent systems in AgentSpeak using Jason. Wiley series in agent technology. Wiley, Hoboken
Bracciali A, Demetriou N, Endriss U, Kakas A, Lu W, Sadri PMF, Stathis K, Terreni G, Toni F (2004) The KGP model of agency for global computing: computational model and prototype implementation. In: Global computing. Lecture notes in computer science, vol 3267. Springer, New York, pp 340–367
Bresciani P, Giorgini P, Giunchiglia F, Mylopoulos J, Perini A (2003) TROPOS: an agent-oriented software development methodology. Int J Auton Agents Multi-Agent Syst 8(3):203–236
Cohen P, Levesque H (1990) Intention is choice with commitment. Artif Intell 42:213–261
Dastani M (2008) 2APL: a practical agent programming language. Int J Auton Agents Multi-Agent Syst 16(3):214–248
Dastani M, Gomez-Sanz J (2004). AgentLink III technical forum group, programming multiagent systems. http://people.cs.uu.nl/mehdi/al3promas.html
Dastani M, Gomez-Sanz J (2006) Programming multi-agent systems. Knowl Eng Rev 20(2):151–164
Dastani M, Grossi D, Meyer JJC, Tinnemeier N (2009) Normative multi-agent programs and their logics. In: Post proceedings of the international workshop on knowledge representation for agents and multi-agent systems (KRAMAS’08). Lecture notes in artificial intelligence, vol 5605. Springer, Berlin, pp 16–31
Dastani M, van Riemsdijk B, Hulstijn J, Dignum F, Meyer JJC (2004) Enacting and deacting roles in agent programming. In: Proceedings of the agent-oriented software engineering (AOSE’04), pp 189–204
Dastani M, van Riemsdijk M, Meyer JJC (2005) Programming multi-agent systems in 3APL. In: Multi-agent programming: languages, platforms and applications. Springer, Berlin, pp 39–67
Dastani M, van der Torre L, Yorke-Smith N (2013) Monitoring interaction in organisations. In: Post-Proceedings of the fourteenth international workshop on coordination, organization, institutions and norms (COIN’12), Springer, Berlin, pp 17–34
Dignum V (2004) A model for organizational interaction. Ph.D. thesis, Utrecht University, SIKS
Dix J, Zhang Y (2005) IMPACT: a multi-agent framework with declarative semantics. In: Multi-agent programming: languages, platforms and applications. Springer, Berlin, pp 69–94
Esteva M, de la Cruz D, Sierra C (2002) ISLANDER: an electronic institutions editor. In: Proceedings of the first international joint conference on autonomous agents and multiagent systems (AAMAS 2002), Bologna, pp 1045–1052
Esteva M, RodrÃguez-Aguilar J, Rosell B, Arcos J (2004) AMELI: an agent-based middleware for electronic institutions. In: Proceedings of the third international joint conference on autonomous agents and multiagent systems (AAMAS 2004), New York, pp 236–243
Fisher M (2006) METATEM: the story so far. In: Proceedings of the third international workshop on programming multi-agent systems (ProMAS’05). Lecture notes in artificial intelligence, vol 3862. Springer, Berlin, pp 3–22
Garcia-Camino A, Noriega P, Rodriguez-Aguilar JA (2005) Implementing norms in electronic institutions. In: Proceedings of the fourth international joint conference on Autonomous Agents and MultiAgent Systems (AAMAS’05), New York, pp 667–673
Giacomo GD, Lesperance Y, Levesque H (2000) Congolog, a concurrent programming language based on the situation calculus. Artif Intell 121(1–2):109–169
Gomez-Sanz J, Pavon J (2003) Agent oriented software engineering with ingenias. In: CEEMAS’03. Lecture notes in computer science, vol 2691. Springer, Berlin, pp 394–403
Grossi D (2007) Designing invisible handcuffs. Ph.D. thesis, Utrecht University, SIKS
Hindriks K (2009) Programming rational agents in GOAL. In: Multi-agent programming: languages and tools and applications. Springer, New York, pp 119–157
Hindriks K, Boer FD, der Hoek WV, Meyer JJ (1999) Agent programming in 3APL. Int J Auton Agents Multi-Agent Syst 2(4):357–401
Hübner J, Boissier O, Kitio R, Ricci A (2010) Instrumenting multi-agent organisations with organisational artifacts and agents: giving the organisational power back to the agents. Int J Auton Agents Multi-Agent Syst 20:369–400
Hübner J, Sichman J, Boissier O (2006) \(\mathcal{S}-\mathcal{M}\) OISE+: a middleware for developing organised multi-agent systems. In: Proceedings of the international workshop on coordination, organizations, institutions, and norms in multi-agent systems. Lecture notes in computer science, vol 3913. Springer, Berlin, pp 64–78
Hübner J, Sichman J, Boissier O (2007) Developing organised multiagent systems using the \(\mathcal{M}\) OISE+ model: programming issues at the system and agent levels. Int J Agent-Oriented Software Eng 1(3/4):370–395
Jones AJI, Sergot M (1993) On the characterization of law and computer systems. In: Meyer JJC, Wieringa R (eds) Deontic logic in computer science: normative system specification. Wiley, Chichester, pp 275–307
Kakas A, Mancarella P, Sadri F, Stathis K, Toni F (2004) The KGP model of agency. In: The 16th European Conference on Artificial Intelligence (ECAI’04), pp 33–37
Leite J, Alferes J, Pereira L (2001) Minerva: a dynamic logic programming agent architecture. In: Meyer JJ, Tambe M (eds) Pre-proceedings of the eighth international workshop on Agent Theories, Architectures, and Languages (ATAL-2001), pp 133–145
Müller J (1996) The design of autonomous agents: a layered approach. Lecture notes in artificial intelligence, vol 1177. Springer, New York
Nair R, Tambe M (2005) Hybrid BDI-POMDP framework for multiagent teaming. J Artif Intell Res 23:367–420
Omicini A (2007) Formal ReSpecT in the A&A perspective. Electronic Notes Theor Comput Sci 175(2):97–117
Padgham L, Winikoff M (2003) Prometheus: a methodology for developing intelligent agents. In: AOSE’02. Lecture notes in artificial intelligence, vol 2585. Springer, Berlin, pp 174–185
Parunak HVD, Weyns D (2007) Guest editors’ introduction, special issue on environments for multi-agent systems. Int J Auton Agents Multi-Agent Syst 14(1):1–4
Pokahr A, Braubach L, Lamersdorf W (2005) Jadex: a BDI reasoning engine. In: Multi-agent programming: languages, platforms and applications. Springer, Berlin, pp 149–174
Prakken H, Sergot M (1996) Contrary-to-duty obligations. Studia Logica 57:91–115
Rao A (1996) AgentSpeak(L): BDI agents speak out in a logical computable language. In: van Hoe R (ed) Proceedings of the seventh European workshop on Modelling Autonomous Agents in a Multi-Agent World (MAAMAW’96), Eindhoven, pp 42–55
Rao A, Georgeff M (1991) Modeling rational agents within a BDI-architecture. In: Allen J, Fikes R, Sandewall E (eds) Proceedings of the second international conference on principles of knowledge representation and reasoning (KR’91), Morgan Kaufmann, San Francisco, pp 473–484
Ricci A, Viroli M, Omicini A (2006) Cartago: a framework for prototyping artifact-based environments in mas. In: E4MAS, pp 67–86
Sadri F (2006) Using the KGP model of agency to design applications. In: Proceedings of the 6th international conference on Computational Logic in Multi-Agent Systems (CLIMA’05), vol 3900. Springer, Berlin, pp 165–185
Sardina S, Giacomo GD, Lespérance Y, Levesque H (2004) On the semantics of deliberation in IndiGolog - from theory to implementation. Ann Math Artif Intell 41(2–4):259–299
Seghrouchni AEF, Suna A (2005) CLAIM and SyMPA: a programming environment for intelligent and mobile agents. In: Multi-agent programming: languages, platforms and applications. Springer, Berlin, pp 95–122
Shoham Y (1993) Agent-oriented programming. Artif Intell 60:51–92
Silva VT (2008) From the specification to the implementation of norms: an automatic approach to generate rules from norms to govern the behavior of agents. Int J Auton Agents Multiagent Syst 17 (1):113–155
Tasaki M, Yabu Y, Iwanari Y, Yokoo M, Tambe M, Marecki J, Varakantham P (2008) Introducing communication in Dis-POMDPs with locality of interaction. International conference on web intelligence and intelligent agent technology, IEEE/WIC/ACM, vol 2, pp 169–175
Tinnemeier N, Dastani M, Meyer JJC (2009) Roles and norms for programming agent organizations. In: Decker S, Sichman J, Sierra C, Castelfranchi C (eds) Proceedings of the eight international conference on autonomous agents and multiagent systems (AAMAS’09). IFAMAAS/ACM DL, pp 121–128
Tinnemeier N, Dastani M, Meyer JJC (2010) Programming norm change. In: van der Hoek W, Kaminka GA, Lespérance Y, Luck M, Sen S (eds) Proceedings of the ninth international conference on autonomous agents and multiagent systems (AAMAS’10). IFAAMAS, Richland, pp 957–964
Tinnemeier N, Dastani M, Meyer JJC, van der Torre L (2009) Programming normative artifacts with declarative obligations and prohibitions. In: Proceedings of IEEE/WIC/ACM international joint conference on web intelligence and intelligent agent technology. IEEE Computer Society, Los Alamitos, pp 145–152
Weyns D, Parunak HVD, Michel F, Holvoet T, Ferber J (eds) (2005) Environments for multiagent systems state-of-the-art and research challenges. Lecture notes in computer science, vol 3374. Springer, New York
Winikoff M (2005) JACKTM intelligent agents: an industrial strength platform. In: Multi-agent programming: languages, platforms and applications. Springer, Berlin, pp 175–196
Woolridge M (2002) Introduction to multiagent systems. Wiley, New york
Zambonelli F, Jennings N, Wooldridge M (2003) Developing multiagent systems: the Gaia methodology. ACM T Softw Eng Meth 12(3):317–370
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Dastani, M. (2014). A Survey of Multi-agent Programming Languages and Frameworks. In: Shehory, O., Sturm, A. (eds) Agent-Oriented Software Engineering. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-54432-3_11
Download citation
DOI: https://doi.org/10.1007/978-3-642-54432-3_11
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-54431-6
Online ISBN: 978-3-642-54432-3
eBook Packages: Computer ScienceComputer Science (R0)