Skip to main content

An Empirical Study of Patterns in Agent Programs

  • Conference paper
Book cover Principles and Practice of Multi-Agent Systems (PRIMA 2010)

Abstract

Various agent programming languages and frameworks have been developed by now, but very few systematic studies have been done as to how the language constructs in these languages may and are in fact used in practice. Performing a study of these aspects contributes to the design of best practices or programming guidelines for agent programming. Following a first empirical study of agent programs written in the Goal agent programming language for the dynamic blocks world, in this paper we perform a considerably more extensive analysis of agent programs for the first-person shooter game Unreal Tournament 2004. We identify and discuss several structural code patterns based on a qualitative analysis of the code, and analyze for which purposes the constructs of Goal are typically used. This provides insight into more practical aspects of the development of agent programs, and forms the basis for development of programming guidelines and language improvements.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. SWI Prolog, http://www.swi-prolog.org/

  2. Ben-Ari, M., Ben-David Kolikant, Y.: Thinking parallel: The process of learning concurrency. In: Fourth SIGCSE Conference on Innovation and Technology in Computer Science Education, pp. 13–16 (1999)

    Google Scholar 

  3. Bordini, R.H., Dastani, M., Dix, J., Seghrouchni, A.E.F.: Multi-Agent Programming: Languages, Tools and Applications. Springer, Heidelberg (2009)

    MATH  Google Scholar 

  4. Bordini, R.H., Hübner, J.F., Wooldridge, M.: Programming Multi-agent Systems in AgentSpeak using Jason. Wiley (2007)

    Google Scholar 

  5. Burkert, O., Kadlec, R., Gemrot, J., Bída, M., Havlíček, J., Dörfler, M., Brom, C.: Towards Fast Prototyping of IVAs Behavior: Pogamut 2. In: Pelachaud, C., Martin, J.-C., André, E., Chollet, G., Karpouzis, K., Pelé, D. (eds.) IVA 2007. LNCS (LNAI), vol. 4722, pp. 362–363. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  6. Dastani, M.: 2APL: a practical agent programming language. JAAMAS 16(3), 214–248 (2008)

    Google Scholar 

  7. Dignum, V.: A Model for Organizational Interaction: Based on Agents, Founded in Logic. PhD thesis (2004)

    Google Scholar 

  8. Hindriks, K.V.: GOAL Programming Guide (2010), http://mmi.tudelft.nl/~koen/goal

  9. Hindriks, K.V., Birna van Riemsdijk, M., Behrens, T., Korstanje, R., Kraaijenbrink, N., Pasman, W., de Rijk, L.: Unreal GOAL agents. In: Proc. of AGS 2010 (2010)

    Google Scholar 

  10. Howatt, J.: A project-based approach to programming language evaluation. ACM SIGPLAN Notices 30(7), 37–40 (1995)

    Article  Google Scholar 

  11. Jordan Howell, R., Collier, R.: Evaluating agent-oriented programs: Towards multi-paradigm metrics. In: Proc. of ProMAS 2010, pp. 63–79 (2010)

    Google Scholar 

  12. Marshall, M.N.: Sampling for qualitative research. Family Practice 13(6), 522–525 (1996)

    Article  Google Scholar 

  13. Padgham, L., Winikoff, M.: Developing Intelligent Agent Systems: A Practical Guide. Wiley Series in Agent Technology. John Wiley and Sons (2004)

    Google Scholar 

  14. Pokahr, A., Braubach, L., Lamersdorf, W.: Jadex: a BDI reasoning engine. In: Multi-Agent Programming. Springer, Berlin (2005)

    Google Scholar 

  15. Shoham, Y.: Agent-oriented programming. Artificial Intelligence 60, 51–92 (1993)

    Article  MathSciNet  Google Scholar 

  16. van Riemsdijk, M.B., Hindriks, K.V.: An Empirical Study of Agent Programs: A Dynamic Blocks World Case Study in GOAL. In: Yang, J.-J., Yokoo, M., Ito, T., Jin, Z., Scerri, P. (eds.) PRIMA 2009. LNCS, vol. 5925, pp. 200–215. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  17. Wasserman, A.I.: Issues in programming language design— an overview. SIGPLAN Notices (1975)

    Google Scholar 

  18. Winikoff, M.: JACKTM intelligent agents: an industrial strength platform. In: Multi-Agent Programming: Languages, Platforms and Applications. Springer, Heidelberg (2005)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hindriks, K.V., van Riemsdijk, M.B., Jonker, C.M. (2012). An Empirical Study of Patterns in Agent Programs. In: Desai, N., Liu, A., Winikoff, M. (eds) Principles and Practice of Multi-Agent Systems. PRIMA 2010. Lecture Notes in Computer Science(), vol 7057. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-25920-3_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-25920-3_14

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-25919-7

  • Online ISBN: 978-3-642-25920-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics