Abstract
Goal is a multi-agent programming language based on the BDI paradigm. It is a logic-based language that supports modular agent design based on established software engineering principles and interaction with environments using an environment interface standard (EIS). Goal recently won the multi-agent programming contest (MAPC), where two teams consisting of ten agents play against each other in order to explore and defend occupied territory on a distant planet. The MAPC game is a complex and dynamic environment that supports EIS and thus facilitates easy connection of a multi-agent system (MAS) to an environment that is remotely run. We describe the design of the multi-agent solution that won the competition, the EIS interface that was used, and the MAPC scenario.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
The Goal agent programming language does not commit to Prolog or any other computational logic in particular (cf. [8]). In principle, other languages such as Answer Set Programming or ontology languages such as OWL might also be used.
- 2.
This can be done, for example, by using the fact that Goal attaches numbers to names in order to create unique names for each agent.
- 3.
In many areas of competitive activity, the theory is that if you can cycle through the OODA loop faster than your opponent, you have the advantage.
- 4.
- 5.
It is often argued that path planning is better delegated to another software component that is not programmed using a logic-based agent programming language . The HactarV2 agents, however, use Prolog for path planning and implement variants of Dijkstra’s shortest path algorithm.
References
Behrens T, Dastani M, Dix J, Köster M, Novák P (2010) The multi-agent programming contest from 2005–2010. Ann Math Artif Intell 59(3):277–311
Behrens TM, Hindriks KV, Dix J (2011) Towards an environment interface standard for agent platforms. Ann Math Artif Intell 61(4):261–295
Bordini R, Braubach L, Dastani M, Seghrouchni AEF, Gomez-Sanz J, Leite J, O’Hare G, Pokahr A, Ricci A (2006) A survey of programming languages and platforms for multi-agent systems. Informatica 30(1):33–44
Dekker M, Hameete P, Hegemans M, Leysen S, van den Oever J, Smits J, Hindriks KV (2012) Hactarv2: an agent team strategy based on implicit coordination. In: Dennis L, Boissier O, Bordini RH (eds) 9th International Workshop, ProMAS 2011, Taipei, Taiwan, 3 May 2011, Revised Selected Papers. LNAI, vol 7217, pp 173–184
Eaton J, Redmayne J, Thordsen M (2007) Joint analysis handbook, 3rd edn. Joint Analysis and Lessons Learned Centre, Lisbon. www.jallc.nato.int
Freeman E, Freeman E, Sierra K, Bates B (2004) Head first design patterns, 1st edn. O’Reilly Media, Inc., Sebastopol
Georgeff MP, Pell B, Pollack ME, Tambe M, Wooldridge M (1999) The belief-desire-intention model of agency. In: Proceedings of the 5th international workshop on intelligent agents, vol V. Agent theories, architectures, and languages (ATAL ’98). Springer, Berlin, pp 1–10
Hindriks K (2009) Programming rational agents in goal. In: Multi-agent programming: languages, tools and applications. Springer, Heidelberg, pp 119–157
Hindriks K, de Boer FS, van der Hoek W, Meyer J (2001) Agent programming with declarative goals. In: Intelligent agents VII agent theories architectures and languages. Springer, Berlin, pp 248–257
Hindriks K, van Riemsdijk B, Behrens T, Korstanje R, Kraayenbrink N, Pasman W, de Rijk L (2011) Unreal Goal bots. In: Dignum F (ed) Agents for games and simulations, vol II. Lecture notes in computer science, vol 6525. Springer, Berlin, pp 1–18. http://dx.doi.org/10.1007/978-3-642-18181-8_1
Newell A (1981) The knowledge level. AI Mag 2(2):1–20
Nguyen C, Perini A, Bernon C, Pavn J, Thangarajah J (2011) Testing in multi-agent systems. In: Gleizes MP, Gomez-Sanz J (eds) Agent-oriented software engineering, vol X. Lecture notes in computer science, vol 6038. Springer, Berlin, pp 180–190
Padgham L, Winikoff M (2003) Prometheus: a methodology for developing intelligent agents. In: Proceedings of the 3rd international conference on agent-oriented software engineering, vol III (AOSE’02). Springer, Berlin, pp 174–185
Schwaber K (1995) Scrum development process. In: Proceedings of the 10th annual ACM conference on object oriented programming systems, languages, and applications (OOPSLA), pp 117–134
Shapiro L, Sterling E (1994) The art of prolog: advanced programming techniques. MIT Press, Cambridge
The Goal website (2012). http://ii.tudelft.nl/trac/goal
The iceScrum website (2012). http://www.icescrum.org/en/
The Multi-Agent Programming Contest website (2012). http://www.multi-agentcontest.org/
The Multi-Agent Programming Contest 2011 website (2012). http://www.multi-agentcontest.org/2011
van Riemsdijk MB, Hindriks KV, Jonker CM (2012) An empirical study of cognitive agent programs. Multiagent Grid Syst 8(2):187–222
Acknowledgments
We would like to recognize the effort the students put into developing the HactarV2 MAS and their help in explaining their code while writing this chapter. The chapter is partly based on the MAPC paper for the HactarV2 MAS [4].
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
Hindriks, K.V., Dix, J. (2014). GOAL: A Multi-agent Programming Language Applied to an Exploration Game. In: Shehory, O., Sturm, A. (eds) Agent-Oriented Software Engineering. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-54432-3_12
Download citation
DOI: https://doi.org/10.1007/978-3-642-54432-3_12
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)