Skip to main content

Supporting Agent Development in Erlang through the eXAT Platform

  • Conference paper
Software Agent-Based Applications, Platforms and Development Kits

Abstract

This work describes a new approach for writing multi-agent systems considering the use of the Erlang programming language. An analysis of the features of this language is provided, which shows that Erlang characteristics allow a programmer to easily model and implement agent systems. Then, a new agent programming platform, called eXAT—erlang eXperimental Agent Tool—will be described. This platform has been designed by the authors to support agent development and deploying with Erlang; the aim is to provide an all-in-one environment, allowing an agent designer to program agent intelligence, agent behavior and agent communication with a single language.

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. http://fipa-os.sourceforge.net/. FIPA-OS Web Site., 2003.

    Google Scholar 

  2. http://herzberg.ca.sandia.gov/jess/. JESS Web Site, 2003.

    Google Scholar 

  3. http://www.ghg.net/clips/CLIPS.html. CLIPS Web Site, 2003.

    Google Scholar 

  4. http://www.agentlink.org/resources/agent-software.php, 2004.

    Google Scholar 

  5. http://www.diit.unict.it/users/csanto/eres.html. ERES Web Site, 2004.

    Google Scholar 

  6. http://www.diit.unict.it/users/csanto/exat/. eXAT Web Site, 2004.

    Google Scholar 

  7. http://www.drools.org. Drools Home Page, 2004.

    Google Scholar 

  8. http://www.erlang.org. Erlang Language Home Page, 2004.

    Google Scholar 

  9. http://www-2.cs.cmu.edu/~softagents/, 2004.

    Google Scholar 

  10. http://www.agent-software.com, 2004.

    Google Scholar 

  11. C. Agha and C. Hewitt. Concurrent Programming using Actors. MIT Press, 1987.

    Google Scholar 

  12. J. L. Armstrong. The development of Erlang. In ACM Press, editor, Proceedings of the ACM SIGPLAN International Conference on Functional Programming, pages 196–203, 1997.

    Google Scholar 

  13. J. L. Armstrong. Making Reliable Distributed Systems in the Presence of Software Errors. PhD Thesis, Swedish Institute of Computer Science, Stockholm, Sweden, 2003.

    Google Scholar 

  14. J. L. Armstrong, M. C. Williams, C. Wikstrom, and S. C. Virding. Concurrent Programming in Erlang, 2nd Edition. Prentice-Hall, 1995.

    Google Scholar 

  15. Joe Armstrong and Robert Virding. Erlang-An Experimental Telephony Programming Language. In XIII International Switching Symposium, May 27–June 1, Stockholm, 1990.

    Google Scholar 

  16. F. Bellifemine, A. Poggi, and G. Rimassa. Developing multi-agent systems with a FIPA-compliant agent framework. Software: Practice and Experience, 31(2):103–128, 2001.

    Article  Google Scholar 

  17. Federico Bergenti. Formalizing the Reusability of Agents. In Andrea Omicini, Paolo Petta and Jeremy Pitt, editor, 4thInternational Workshop Engineering Societies in the Agents World (ESAW 2003). Springer, 2003.

    Google Scholar 

  18. Federico Bergenti and Agostino Poggi. A Development Toolkit to Realize Autonomous and Inter-operable Agents. In 5thInternational Conference on Autonomous Agents (Agents 2001), Montreal, Canada, 2001.

    Google Scholar 

  19. G. Cabri, L. Leonardi, and F. Zambonelli. Mobile-Agent Coordination Models for Internet Applications. IEEE Computer, 33(2), February 2000.

    Google Scholar 

  20. N. Carriero and D. Gelernter. Linda in Context. Comm. ACM, 32(4), April 1989.

    Google Scholar 

  21. J. Chang-Hyun and K. M. Geroge. Agent-based Programming Language: APL. In 2002 ACM Symposium on Applied Computing, Madrid, Spain, 2002.

    Google Scholar 

  22. P. Ciancarini, R. Tolksdorf, F. Vitali, D. Rossi, and A. Knoche. Coordinating Multiagent Applications on the WWW: A Reference Architecture. IEEE Transaction on Software Engineering, 24(5), 1998.

    Google Scholar 

  23. Keith Clark and Steve Gregory. PARLOG: Parallel Programming in Logic. ACM Transactions on Programming Languages and Systems, 8(1):1–49, January 1986.

    Article  Google Scholar 

  24. Philip R. Cohen, Adam Cheyer, Michele Wang, and Soon Cheol. Baeg. An Open Agent Architecture. In Micheal N. Huhns & Munindar P. Singh, editor, Readings in Agents, pages 197–204, 1997.

    Google Scholar 

  25. M. Cremonini, A. Omicini, and F. Zambonelli. Coordination and access control in open distributed agent systems: The TuCSoN approach. In António Porto and Gruia-Catalin Roman, editors, Coordination Languages and Models, volume 1906 of LNCS, pages 99–114. Springer-Verlag, 2000.

    Google Scholar 

  26. M. Dastani, J. van der Ham, and F. Dignum. Communication for Goal Directed Agents. In Marc-Philippe Huget, editor, Communication in Multiagent Systems-Agent Communication Languages and Conversation Policies, pages 239–252. LNCS, 2003.

    Google Scholar 

  27. W. H. E. Davies and P. Edwards. Agent-K: an Integration of AOP and KQML. In Y. Labrou and T. Finin, editors, CIKM’94 Workshop on Intelligent Information Agents, Anaheim, CA, 1994.

    Google Scholar 

  28. Antonella Di Stefano and Corrado Santoro. eXAT: an Experimental Tool for Programming Multi-Agent Systems in Erlang. In AI*IA/TABOO Joint Workshop on Objects and Agents (WOA 2003), Villasimius, CA, Italy, 10–11 September 2003.

    Google Scholar 

  29. Antonella Di Stefano and Corrado Santoro. eXAT: A Platform to Develop Erlang Agents. In Agent Exhibition Workshop at Net.ObjectDays 2004, Erfurt, Germany, 27–30 September 2004.

    Google Scholar 

  30. Antonella Di Stefano and Corrado Santoro. Designing Collaborative Agents with eXAT. In ACEC 2004 Workshop at WETICE 2004, Modena, Italy, 14–16 June 2004.

    Google Scholar 

  31. Antonella Di Stefano and Corrado Santoro. On the Use of Erlang as a Promising Language to Develop Agent Systems. In AI*IA/TABOO Joint Workshop on Objects and Agents (WOA 2004), Turin, Italy, 29–30 October 2004.

    Google Scholar 

  32. T. Finin and Y. Labour. A Proposal for a New KQML Specification. Technical Report TR-CS-97-03, Computer Science and Electrical Engineering Dept., Univ. of Maryland., 1997.

    Google Scholar 

  33. C.L. Forgy. Rete: a fast algorithm for the many pattern/many object pattern match problem. Artificial Intelligence, pages 17–37, 1982.

    Google Scholar 

  34. Foundation for Intelligent Physical Agents. FIPA ACL Message Representation in Bit-Efficient Encoding Specification —No. SC00069G, 2002.

    Google Scholar 

  35. Foundation for Intelligent Physical Agents. FIPA ACL Message Representation in XML Specification–No. SC00071E, 2002.

    Google Scholar 

  36. Foundation for Intelligent Physical Agents. FIPA Agent Message Transport Protocol for HTTP Specification–No. SC00084F, 2002.

    Google Scholar 

  37. Foundation for Intelligent Physical Agents. FIPA Agent Message Transport Protocol for IIOP Specification–No. SC00075G, 2002.

    Google Scholar 

  38. Foundation for Intelligent Physical Agents. FIPA Communicative Act Library Specification–No. SC00037J, 2002.

    Google Scholar 

  39. Foundation for Intelligent Physical Agents. FIPA Contract Net Interaction Protocol Specification–No. SC00029H, 2002.

    Google Scholar 

  40. Foundation for Intelligent Physical Agents. FIPA English Auction Interaction Protocol Specification–No. SC00031F, 2002.

    Google Scholar 

  41. Foundation for Intelligent Physical Agents. FIPA Request Interaction Protocol Specification–No. SC00026H, 2002.

    Google Scholar 

  42. Foundation for Intelligent Physical Agents. FIPA SL Content Language Specification–No. SC00008I, 2002.

    Google Scholar 

  43. Foundation for Intelligent Physical Agents. http://www.fipa.org, 2002.

    Google Scholar 

  44. Stan Franklin and Art Graesser. Is it an Agent, or just a Program?: A Taxonomy for Autonomous Agents. In Third International Workshop on Agent Theories, Architectures, and Languages (ATAL). Springer-Verlag, 1996.

    Google Scholar 

  45. K.V. Hindriks, F.S. de Boer, W. van der Hoek, and J.-J.Ch. Meyer. Agent programming in 3APL. Autonomous Agents and Multi-Agent Systems, 2(4):357–401, 1999.

    Article  Google Scholar 

  46. C.A.R. Hoare. Communicating Sequential Processes. Prentice Hall International, 1985.

    Google Scholar 

  47. Sonya E. Keene. Object-Oriented Programming in Common Lisp. Addison-Wesley, 1989.

    Google Scholar 

  48. Frank McCabe and Keith Clark. April: Agent Process Interaction Language. In N. Jennings and M. Wooldridge, editor, Intelligent Agents. Springer, LNCS 890, 1995.

    Google Scholar 

  49. Frank McCabe and Keith Clark. Go!-A Multi-Paradigm Programming Language for Implementing Multi-Threaded Agents. Annals of Mathematics and Artificial Intelligence, 41(2–4):171–206, August 2004.

    Google Scholar 

  50. Mickaël Rémond. Erlang-Programmation. Eyrolles, 2003.

    Google Scholar 

  51. R. Milner. Communication and Concurrency. Prentice Hall International, 1989.

    Google Scholar 

  52. R. Milner. Communicating and Mobile Systems: the Pi-Calculus. Cambridge Univ Press, 1999.

    Google Scholar 

  53. Andrea Omicini, Alessandro Ricci, Mirko Viroli, Marco Cioffi, and Giovanni Rimassa. Multi-agent infrastructures for objective and subjective coordination. Applied Artificial Intelligence, 18(9/10):815–831, October/December 2004.

    Google Scholar 

  54. G. P. Picco, A. Murphy, and Roman G.-C. LIME: Linda Meets Mobility. In D. Garlan and Los Angeles (USA) J. Kramer, eds., editors, 21th Intl. Conference on Software Engineering (ICSE’ 99), May 1999.

    Google Scholar 

  55. A. Pokahr, L. Braubach, and W. Lamersdorf. Jadex: Implementing a BDIInfrastructure for JADE Agents. Telecom Italia Journal: EXP-In Search of Innovation (Special Issue on JADE), 3(3), Sept. 2003.

    Google Scholar 

  56. A. S. Rao. AgentSpeak(L): BDI agents speak out in a logical computable language. In Agents Breaking Away, pages 42–55. Springer-Verlag, LNAI 1038, 1996.

    Google Scholar 

  57. A. S. Rao and M. P. Georgeff. Modeling Rational Agents within a BDI-Architecture. In R. Fikes J. Allen and E. Sandewall, editors, 2ndInternational Conference on Principles of Knowledge Representation and Reasoning (KR’91). Morgan Kauffman, 1991.

    Google Scholar 

  58. Corrado Santoro. eXAT: an Experimental Tool to Develop Multi-Agent Systems in Erlang-A Reference Manual. Available at http://www.diit.unict.it/users/csanto/exat/, 2004.

    Google Scholar 

  59. Y. Shoham. AGENT-0: A Simple Agent Language and its Interpreter. In 9thNational Conference of Artificial Intelligence, Anaheim, CA, 1991. MIT Press.

    Google Scholar 

  60. K. Sycara, M. Paolucci, M. van Velsen, and J. Giampapa. The RETSINA MAS Infrastructure. Special joint issue of Autonomous Agents and Multi-Agent Systems Journal, 7(1 and 2), July 2003.

    Google Scholar 

  61. S. R. Thomas. The PLACA Agent Programing Language. In N. Jennings and M. Wooldridge, editor, Intelligent Agents. Springer, LNCS 890, 1995.

    Google Scholar 

  62. Carlos Varela, Carlos Abalde, Laura Castro, and José Gulias. On Modelling Agent Systems with Erlang. In 3rdACM SIGPLAN Erlang Workshop, Snowbird, Utah, USA, 22 September 2004.

    Google Scholar 

  63. M. Wooldridge, N. Jennings, and D. Kinny. The Gaia Methodology for Agent-Oriented Analysis and Design. Journal of Autonomous Agents and Multi-Agent Systems, 3(3), 2000.

    Google Scholar 

  64. M. J. Wooldridge. Multiagent Systems. G. Weiss, editor. The MIT Press, April 1999.

    Google Scholar 

  65. F. Zambonelli, N.R. Jennings, A. Omicini, and M.J. Wooldridge. Agent-oriented software engineering for Internet applications. In A. Omicini, F. Zambonelli, M. Klusch, and R. Tolksdorf, editors, Coordination of Internet Agents: Models, Technologies, and Applications, chapter 13, pages 326–346. Springer-Verlag, March 2001.

    Google Scholar 

  66. Franco Zambonelli, Nicholas R. Jennings, and Michael Wooldridge. Developing multiagent systems: The gaia methodology. ACM Trans. Softw. Eng. Methodol., 12(3):317–370, 2003.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Birkhäuser Verlag

About this paper

Cite this paper

Di Stefano, A., Santoro, C. (2005). Supporting Agent Development in Erlang through the eXAT Platform. In: Unland, R., Calisti, M., Klusch, M. (eds) Software Agent-Based Applications, Platforms and Development Kits. Whitestein Series in Software Agent Technologies. Birkhäuser Basel. https://doi.org/10.1007/3-7643-7348-2_3

Download citation

  • DOI: https://doi.org/10.1007/3-7643-7348-2_3

  • Publisher Name: Birkhäuser Basel

  • Print ISBN: 978-3-7643-7347-4

  • Online ISBN: 978-3-7643-7348-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics