Autonomous Agents and Multi-Agent Systems

, Volume 15, Issue 3, pp 337–377 | Cite as

A comprehensive view of agent-oriented patterns

  • Ayodele Oluyomi
  • Shanika Karunasekera
  • Leon Sterling


This paper presents a comprehensive framework for classifying, analyzing and describing agent-oriented software patterns. We present a two dimensional scheme for classifying agent-oriented patterns. We define agent-oriented pattern attributes and use these attributes in a process for analyzing and placing agent-oriented patterns within the classification scheme. Using the proposed classification scheme, we classify 28 patterns written by a variety of agent researchers, chosen from almost 100 patterns which we have studied.


Agent technology Agent-oriented software engineering Agent-oriented patterns Classification scheme 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aridor, Y., & Lange, D. B. (1998). Agent design patterns: Elements of agent application design. In Proceedings of the Second International Conference on Autonomous agents (pp. 108–115). ACM Press.Google Scholar
  2. 2.
    ARPA Knowledge Sharing Initiative, External Interfaces Working Group, Specification of the KQML agent-communication language, working paper, July 1993.Google Scholar
  3. 3.
    Ashri, R., Rahwan, I., & Luck, M. (2003). Architectures for negotiating agents. In The 3rd International/Central and Eastern European Conference on Multi-Agent Systems.Google Scholar
  4. 4.
    Chacon, D., McCormick, J., McGrath, S., & Stoneking, C. (2000). Rapid application development using agent itinerary patterns. Technical Report #01-01, Lochheed Martin Advanced Technology Laboratories, March 2000.Google Scholar
  5. 5.
    DeLoach, S. A. (2002). Analysis and design of multi-agent systems using hybrid coordination media. In Proceedings of Software Engineering in Multi-agent Systems (SEMAS 2002), July 18, 2002. Orlando, Florida.Google Scholar
  6. 6.
    Do, T.T., Kolp, M., & Pirotte, A. (2003). Social patterns for designing multi-agent systems. In Proc. of the 15th Int. Conf. on Software Engineering and Knowledge Engineering, SEKE’03.Google Scholar
  7. 7.
    Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (1994). Design patterns: Elements of reusable object-oriented software. Addison-Wesley.Google Scholar
  8. 8.
    Hayden, S., Carrick, C., & Yang, Q. (1999). Architectural design patterns for multi-agent coordination. In Proceedings of the International Conference on Agent Systems ′99 (Agents′99), May 1999. Seattle, WA.Google Scholar
  9. 9.
    Heinze, C. (2003). Modelling intention recognition for intelligent agent systems. PhD thesis, The University of Melbourne.Google Scholar
  10. 10.
    Huang J., Jennings N. R., Fox J. (1995). Agent-based approach to healthcare management. Applied Artificial Intelligence 9: 401–420CrossRefGoogle Scholar
  11. 11.
    Jennings, N. R., Faratin, P., Norman, T. J., O′Brien, P., Wiegand, M. E., Voudouris, C., Alty, J. L., Miah, T., & Mamdani, E. H. (1996). ADEPT: Managing business processes using intelligent agents. In Proceedings of the 16th Annual Conference of the British Computer Society Specialist Group on Expert Systems (ISIP Track) (pp. 5–23). Cambridge, UK.Google Scholar
  12. 12.
    Jennings N.R., Norman T.J., Faratin P. (1998). ADEPT: An agent-based approach to business process management. ACM SIGMOD Record 27(4):32–39CrossRefGoogle Scholar
  13. 13.
    Juan, T., Pearce, A., & Sterling, L. (2002). ROADMAP: Extending the Gaia methodology for complex open systems. In W. Johnson & C. Cristelfranchi (Eds.), Proc. First International Joint Conference on Autonomous Agents and Multi-Agent Systems AAMAS2002 (pp. 3–10), Bologna, July 2002. ACM Press.Google Scholar
  14. 14.
    Kendall, E. A., Murali Krishna, P.V., Pathak, C.V., & Suresh, C.V. Patterns of intelligent and mobile agents. In Proceedings of the Second International Conference on Autonomous Agents (pp. 92–99), Minneapolis, Minnesota, USA, May 1998.Google Scholar
  15. 15.
    Kolp M., Giorgini P., Mylopoulos J. (2003). Organizational patterns for early requirements analysis. Advanced Information Systems Engineering, Proceedings 2681:617–632CrossRefGoogle Scholar
  16. 16.
    Kolp, M., & Mylopoulos, J. (2001). Architectural styles for information systems: An Organizational perspective. Dept. of Computer Science, University of Toronto, Tropos Working Paper, January 2001.Google Scholar
  17. 17.
    Kuan, P., Karunasekera, S., & Sterling, L. (2005). Improving goal and role oriented analysis for agent based systems. In The Proceedings of the Australian Software Engineering Conference (ASWEC) (pp 40–47), March–April 2005. Brisbane.Google Scholar
  18. 18.
    Lind, J. (2001). Iterative software engineering for multi-agent systems – The MASSIVE method. Lecture Notes in Computer Science, Vol. 1994. Springer, May 2001.Google Scholar
  19. 19.
    Lind, J. (2002) Patterns in agent-oriented software engineering. In Agent-oriented Software Engineering Workshop, AAMAS 2002, Bologna, Italy.Google Scholar
  20. 20.
    Oluyomi, A. (2006). Protocols and patterns for agent-oriented software development. PhD thesis, The University of Melbourne.Google Scholar
  21. 21.
    Oluyomi, A., Karunasekera, K., & Sterling, L. (2004). An agent design pattern classification scheme: Capturing the notions of agency in agent design patterns. In Proceedings of 11th Asia-Pacific Software Engineering Conference, APSEC-04 (pp. 456–463). IEEE Computer Society.Google Scholar
  22. 22.
    Padgham, L., & Winikoff, M. (2002). Prometheus: A methodology for developing intelligent agents. In F. Giunchiglia, J. Odell, & G. Weiss (Eds.), Agent-Oriented Software Engineering III: Third International Workshop, AOSE 2002.Google Scholar
  23. 23.
    Padgham, L., & Winikoff, M. (2004). Developing intelligent agent systems: A practical guide. June 2004, ISBN 0-470-86120-7, John Wiley and Sons.Google Scholar
  24. 24.
    Patterns Home Page. Web, December 2000.
  25. 25.
    Sanya, L., & Hongwei, W. (2003). Agent architecture for agent-based supply chain integration & coordination. ACM SIGSOFT Software Engineering Notes, 28(4).Google Scholar
  26. 26.
    Sauvage, S. (2004). MAS development: reusing through agent-oriented design patterns. In Eight World Multi-Conference on Systemics, Cybernetics and Informatics, SCI’04, 18–21 July 2004. Orlando.Google Scholar
  27. 27.
    Schelfthout, K., Coninx, T., Helleboogh, A., Holvoet, T., Steegmans, E., & Weyns, D. (2002). Agent implementation patterns. In J. Debenham, B. Henderson-Sellers, N. Jennings, & J. Odell (Eds.), Proceedings of the OOPSLA 2002 Workshop on Agent-Oriented Methodologies (pp. 119–130).Google Scholar
  28. 28.
    Shen, W., & Norrie, D. H. (1998). An agent-based approach for manufacturing enterprise integration and supply chain management. In G. Jacucci (Ed.), Globalization of Manufacturing in the digital communications era of the 21st century: Innovation, agility, and the virtual enterprise (pp. 579–590). Kluwer Academic Publishers.Google Scholar
  29. 29.
    Sturm, A., & Shehory, O. (2003). A framework for evaluating agent-oriented methodologies. In M. Winikoff, P. Giorgini, B. Henderson-Sellers (Eds.), Proc. of the Int. Bi-Conference Workshop on Agent-Oriented Information Systems, AOIS 2003.Google Scholar
  30. 30.
    Tahara, Y., Ohsuga, A., & Honiden, S. (1999). Agent system development method based on agent patterns. In Proceedings of the Fourth International Symposium on Autonomous Decentralized Systems.Google Scholar
  31. 31.
    Weiss, M. (2001). Patterns for e-Commerce agent architectures: Using agents as delegates, Conference on Pattern Languages of Programming (PLoP).Google Scholar
  32. 32.
    Weiss, M. (2003). Patterns for motivating an agent-based approach, conceptual modelling for novel application domains (AOIS@ER). LNCS, Vol. 2814, pp. 229–240.Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2007

Authors and Affiliations

  • Ayodele Oluyomi
    • 1
  • Shanika Karunasekera
    • 1
  • Leon Sterling
    • 1
  1. 1.Department of Computer Science and Software EngineeringThe University of MelbourneParkvilleAustralia

Personalised recommendations