Notes on Pragmatic Agent-Programming with Jason
Abstract
AgentSpeak(L), together with its implementation Jason, is one of the most influential agent-oriented programming languages. Besides having a strong conceptual influence on the niche of BDI-inspired agent programming systems, Jason also serves as one of the primary tools for education of and experimentation with agent-oriented programming. Despite its popularity in the community, relatively little is reported on its practical applications and pragmatic experiences with adoption of the language for non-trivial applications.
In this paper, we present our experiences gathered during an experiment aimed at development of a non-trivial case-study agent application by a novice Jason programmer. In our experiment, we tried to use the programming language as is, with as few customisations of the Jason interpreter as possible. Besides providing a structured feedback on the most problematic issues faced while learning to program in Jason, we informally propose a set of ideas for solving the encountered design problems and programming language issues.
Keywords
Multiagent System Belief Base Path Planning Algorithm Agent Programming Language Formation AlignmentPreview
Unable to display preview. Download preview PDF.
References
- 1.Multi-agent programming contest 2010 (2010), http://www.multiagentcontest.org/2010
- 2.Behrens, T.M., Dastani, M., Dix, J., Köster, M., Novák, P.: The multi-agent programming contest from 2005-2010 - from gold collecting to herding cows. Ann. Math. Artif. Intell. 59(3-4), 277–311 (2010)CrossRefGoogle Scholar
- 3.Behrens, T.M., Dix, J., Dastani, M., Köster, M., Novák, P.: MASSim: Technical Infrastructure for AgentContest Competition Series (2009), http://www.multiagentcontest.org/
- 4.Behrens, T.M., Dix, J., Dastani, M., Köster, M., Novák, P.: Multi-Agent Programming Contest (2009), http://www.multiagentcontest.org/
- 5.Bordini, R.H., Braubach, L., Dastani, M., El Fallah Seghrouchni, A., Gomez-Sanz, J.J., Leite, J., O’Hare, G., Pokahr, A., Ricci, A.: A survey of programming languages and platforms for multi-agent systems. Informatica 30, 33–44 (2006)MATHGoogle Scholar
- 6.Bordini, R.H., Dastani, M., Dix, J., El Fallah-Seghrouchni, A. (eds.): Multi-Agent Programming: Languages, Tools and Applications. Springer, Berlin (2009)MATHGoogle Scholar
- 7.Bordini, R.H., Dastani, M., Dix, J., El Fallah-Seghrouchni, A.: Multi-Agent Programming Languages, Platforms and Applications. Multiagent Systems, Artificial Societies, and Simulated Organizations, vol. 15. Kluwer Academic Publishers (2005)Google Scholar
- 8.Bordini, R.H., Hübner, J.F., Wooldridge, M.: Programming Multi-agent Systems in AgentSpeak Using Jason. Wiley Series in Agent Technology. Wiley-Blackwell (2007)Google Scholar
- 9.Bratman, M.E.: Intention, Plans, and Practical Reason. Cambridge University Press (March 1999)Google Scholar
- 10.Bryson, J.J.: Intelligence by design: Principles of Modularity and Coordination for Engineering Complex Adaptive Agent. PhD thesis (2001)Google Scholar
- 11.Forgy, C.: Rete: A fast algorithm for the many patterns/many objects match problem. Artif. Intell. 19(1), 17–37 (1982)CrossRefGoogle Scholar
- 12.Gemrot, J.: Joint behaviour for virtual humans. Master’s thesis, Faculty of Mathematics and Physics. Charles University, Prague (2009)Google Scholar
- 13.Gemrot, J., Brom, C., Plch, T.: A Periphery of Pogamut: From Bots to Agents and Back Again. In: Dignum, F. (ed.) Agents for Games and Simulations II. LNCS, vol. 6525, pp. 19–37. Springer, Heidelberg (2011)CrossRefGoogle Scholar
- 14.Jason Developers. Jason, a Java-based interpreter for an extended version of AgentSpeak (2011), http://jason.sourceforge.net/
- 15.Madden, N., Logan, B.: Modularity and Compositionality in Jason. In: Braubach, L., Briot, J.-P., Thangarajah, J. (eds.) ProMAS 2009. LNCS, vol. 5919, pp. 237–253. Springer, Heidelberg (2010)CrossRefGoogle Scholar
- 16.Novák, P.: Jazzyk: A Programming Language for Hybrid Agents with Heterogeneous Knowledge Representations. In: Hindriks, K.V., Pokahr, A., Sardina, S. (eds.) ProMAS 2008. LNCS, vol. 5442, pp. 72–87. Springer, Heidelberg (2009)CrossRefGoogle Scholar
- 17.Novák, P., Jamroga, W.: Code patterns for agent-oriented programming. In: Proceedings of the Eighth International Conference on Autonomous Agents and Multi-Agent Systems, AAMAS, IFAAMAS (2009)Google Scholar
- 18.Pokahr, A., Braubach, L., Lamersdorf, W.: Jadex: A BDI Reasoning Engine. In: [7]. Multiagent Systems, Artificial Societies, and Simulated Organizations, ch. 6, vol. 15, pp. 149–174 (2005)Google Scholar
- 19.Rao, A.S.: AgentSpeak(L): BDI Agents Speak Out in a Logical Computable Language. In: Van de Velde, W., Perram, J.W. (eds.) MAAMAW 1996. LNCS, vol. 1038, pp. 42–55. Springer, Heidelberg (1996)CrossRefGoogle Scholar
- 20.Winikoff, M.: JACKTM Intelligent Agents: An Industrial Strength Platform. In: [7]. Multiagent Systems, Artificial Societies, and Simulated Organizations, ch. 15, vol. 15, pp. 175–193 (2005)Google Scholar