Abstract
A fully-fledged programming paradigm based on ideas from multi-agent systems requires a lot more than early agent-oriented programming languages envisaged. More than interaction between autonomous entities, the social level of multi-agent systems as well as the shared environment where the agents are situated also need to be suitably designed. In fact, the abstractions used at each of those three levels are all equally important and interrelated. In this chapter, we discuss JaCaMo, a platform for multi-agent-oriented programming that covers abstractions such as: beliefs, goals, and plans at the agent level; groups, roles, functional schemes (i.e., social plans), and norms at the organizational level; and artifacts and workspaces at the environment level. The chapter also includes a simple multi-agent system example to illustrate the approach.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
- 3.
- 4.
- 5.
At runtime, the organization program is available to agents and the organization infrastructure as an XML file.
- 6.
There is further ongoing work on normative programming in the context of JaCaMo that removes the burden of reporting back when goals have been achieved, as with that work it is possible to specify which environment changes count as the achievement of organizational goals [6].
- 7.
As usual in multi-agent systems, communication in JaCaMo is based on speech acts, therefore making explicit to the receiver the intentions of the sender of a message (i.e., agents use asynchronous communication); for formal details, see [19].
References
Agha G (1986) Actors: a model of concurrent computation in distributed systems. MIT Press, Cambridge
Beydoun G, Low G, Henderson-Sellers B, Mouratidis H, Gomez-Sanz JJ, Pavon J, Gonzalez-Perez C (2009) FAML: a generic metamodel for MAS development. IEEE Trans Softw Eng 35:841–863
Boissier O, Bordini RH, Hübner JF, Ricci A, Santi A (2013) Multi-agent oriented programming with JaCaMo. Sci Comput Program 78(6):747–761. doi:http://dx.doi.org/10.1016/j.scico.2011.10.004. http://www.sciencedirect.com/science/article/pii/S016764231100181X
Bordini RH, Hübner JF, Vieira R (2005) Jason and the golden fleece of agent-oriented programming. In: Bordini RH, Dastani M, Dix J, Fallah-Seghrouchni AE (eds) Multi-agent programming, multiagent systems, artificial societies, and simulated organizations, vol 15. Springer, Berlin, pp 3–37
Bordini RH, Hübner JF, Wooldridge M (2007) Programming multi-agent systems in AgentSpeak using Jason. Wiley Series in Agent Technology. Wiley, New York
Brito M, Hübner JF, Bordini RH (2013) Programming institutional facts in multi-agent systems. In: Aldewereld H, Sichman J (eds) Coordination, organizations, institutions, and norms in agent systems, vol VIII. Lecture notes in computer science, vol 7756. Springer, Berlin, pp 158–173. doi:10.1007/978-3-642-37756-3_10. http://dx.doi.org/10.1007/978-3-642-37756-3_10
Bromuri S, Stathis K (2008) Situating cognitive agents in GOLEM. In: Weyns D, Brueckner S, Demazeau Y (eds) Engineering environment-mediated multi-agent systems. Lecture notes in computer science, vol 5049. Springer, Berlin, pp 115–134
Dastani M, Grossi D, Meyer JJ, Tinnemeier N (2008) Normative multi-agent programs and their logics. In: Proceedings of the KRAMAS-08
Dignum V, Sichman J (2010) Agent organizations; models, architectures and applications. Springer, Berlin
Harel D, Marron A, Weiss G (2012) Behavioral programming. Commun ACM 55(7):90–100. doi:10.1145/2209249.2209270. http://doi.acm.org/10.1145/2209249.2209270
Hübner JF, Sichman JS, Boissier O (2007) Developing organised multiagent systems using the MOISE. IJAOSE 1(3/4):370–395
Hübner JF, Boissier O, Kitio R, Ricci A (2010) Instrumenting multi-agent organisations with organisational artifacts and agents. Auton Agent Multi Agent Syst 20(3):369–400
Padgham L, Winikoff M (2004) Developing intelligent agent systems: a practical guide. Wiley, New York
Ricci A, Piunti M, Viroli M, Omicini A (2009) Environment programming in CArtAgO. In: Bordini RH, Dastani M, Dix J, El Fallah Seghrouchni A (eds) Multi-agent programming, Chap 8. Springer, Berlin, pp 259–288. doi:10.1007/978-0-387-89299-3_8. http://www.springerlink.com/content/p36v9l7446j75828/
Ricci A, Piunti M, Viroli M (2011) Environment programming in multi-agent systems: an artifact-based perspective. Auton Agent Multi Agent Syst 23(2):158–192
Sterling L, Taveter K (2009) The art of agent-oriented modeling. The MIT Press, Cambridge
Stratulat T, Ferber J, Tranier J (2009) MASQ: towards an integral approach to interaction. In: AAMAS (2009), pp 813–820
Urovi V, Bromuri S, Stathis K, Artikis A (2010) Initial steps towards run-time support for norm-governed systems. In: Coordination, organizations, institutions, and norms in agent systems, vol VI. Lecture notes in computer science, vol 6541. Springer, Berlin, pp 268–284
Vieira R, Moreira ÁF, Wooldridge M, Bordini RH (2007) On the formal semantics of speech-act based communication in an agent-oriented programming language. J Artif Intell Res (JAIR) 29:221–267
Weyns D, Parunak HVD (eds) (2007) Special issue on environments for multi-agent systems. Autonomous agents and multi-agent systems, vol 14(1). Springer, The Netherlands
Acknowledgments
Thanks to Rafael Cauê Cardoso for proofreading and to Ismael Jabes da Silva Santos for suggesting the metal workshop example used in this chapter. Rafael Bordini and Jomi Hübner are grateful for the support given by CNPq grant numbers 307924/2009-2 and 307350/2009-6.
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
Boissier, O., Bordini, R.H., Hübner, J.F., Ricci, A. (2014). Unravelling Multi-agent-Oriented Programming. In: Shehory, O., Sturm, A. (eds) Agent-Oriented Software Engineering. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-54432-3_13
Download citation
DOI: https://doi.org/10.1007/978-3-642-54432-3_13
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)