From Multi-Agent Programming to Object Oriented Design Patterns

  • Mehdi Dastani
  • Bas Testerink
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8758)


Various agent-based programming languages and frameworks have been proposed to support the development of multi-agent systems. They have contributed to the identification and operationalisation of multi-agent system concepts, features and abstractions by proposing specific programming constructs. Unfortunately, these contributions have not yet been widely adopted by industry. In this paper, we follow the argument that multi-agent programming technology can find its way to industry by introducing design patterns for the existing agent constructs in standard software technology. We provide some object-oriented design patterns based on the programming constructs that have been developed in agent-based programming languages.


Multiagent System Design Pattern Target Speed Proactive Behaviour Autonomous Behaviour 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aridor, Y., Lange, D.B.: Agent design patterns: Elements of agent application design. In: AGENTS 1998, pp. 108–115 (1998)Google Scholar
  2. 2.
    Bellifemine, F.L., Caire, G., Greenwood, D.: Developing Multi-Agent Systems with JADE. Wiley (2007)Google Scholar
  3. 3.
    Bordini, R.H., Wooldridge, M., Hübner, J.F.: Programming Multi-Agent Systems in AgentSpeak using Jason. John Wiley & Sons (2007)Google Scholar
  4. 4.
    Busetta, P., Ronnquist, R., Hodgson, A., Lucas, A.: Jack intelligent agents - components for intelligent agents in java (1999)Google Scholar
  5. 5.
    Cohen, P.R., Levesque, H.J.: Intention is choice with commitment. Artificial Intelligence 42(2-3), 213–261 (1990)CrossRefMathSciNetzbMATHGoogle Scholar
  6. 6.
    Dastani, M., Gomez-Sanz, J.: Programming multi-agent systems. The Knowledge Engineering Review 20(2), 151–164 (2006)CrossRefGoogle Scholar
  7. 7.
    Dastani, M., Grossi, D., Meyer, J.-J.C., Tinnemeier, N.: Normative multi-agent programs and their logics. In: KRAMAS, pp. 16–31 (2008)Google Scholar
  8. 8.
    Dastani, M.: 2apl: A practical agent programming language. Autonomous Agents and Multi-Agent Systems 16, 214–248 (2008)CrossRefGoogle Scholar
  9. 9.
    Dastani, M., Grossi, D., Meyer, J.-J.: A logic for normative multi-agent programs. International Journal of Logic and Computation (2011)Google Scholar
  10. 10.
    Do, T.T., Kolp, M., Faulkner, S., Pirotte, A.: Agent-oriented design patterns. In: ICEIS, pp. 48–53 (2004)Google Scholar
  11. 11.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Longman Publishing Co., Inc. (1994)Google Scholar
  12. 12.
    Gelernter, D., Carriero, N.: Coordination languages and their significance. Commun. ACM 35(2), 97–107 (1992)CrossRefGoogle Scholar
  13. 13.
    Hindriks, K.V., de Boer, F.S., van der Hoek, W., Meyer, J.-J.C.: Agent programming with declarative goals. In: ATAL 2000, pp. 228–243 (2001)Google Scholar
  14. 14.
    Hübner, J., Boissier, O., Bordini, R.: A normative programming language for multi-agent organisations. Annals of Mathematics and Artificial Intelligence 62, 27–53 (2011)CrossRefMathSciNetzbMATHGoogle Scholar
  15. 15.
    Hübner, J., Sichman, J., Boissier, O.: \(\mathcal{S-M}oise^{+}\): A middleware for developing organised multi-agent systems. In: Boissier, O., et al. (eds.) ANIREM 2005 and OOOP 2005. LNCS (LNAI), vol. 3913, pp. 64–78. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  16. 16.
    Juziuk, J., Weyns, D., Holvoet, T.: Design patterns for multi-agent systems: A systematic literature review. In: Shehory, O., Sturm, A. (eds.) Agent-Oriented Software Engineering, pp. 79–99. Springer, Heidelberg (2014)CrossRefGoogle Scholar
  17. 17.
    Kendall, E.A., Krishna, P.V.M., Pathak, C.V.: CB Suresh. Patterns of intelligent and mobile agents. In: Proceedings of the Second International Conference on Autonomous Agents, pp. 92–99. ACM Press, New York (1998)CrossRefGoogle Scholar
  18. 18.
    Krajzewicz, D., Erdmann, J., Behrisch, M., Bieker, L.: Recent development and applications of SUMO - Simulation of Urban MObility. International Journal on Advances in Systems and Measurements 5(3&4), 128–138 (2012)Google Scholar
  19. 19.
    Minsky, N.H., Ungureanu, V.: Law-governed interaction: A coordination and control mechanism for heterogeneous distributed systems. TOSEM, ACM Transactions on Software Engineering and Methodology 9, 273–305 (2000)CrossRefGoogle Scholar
  20. 20.
    Morreale, V., Francaviglia, G., Centineo, F., Puccio, M., Cossentino Bc, M.: Goal-oriented agent patterns with the practionist framework. In: EUMAS 2006 (2006)Google Scholar
  21. 21.
    Oluyomi, A., Karunasekera, S., Sterling, L.: A comprehensive view of agent-oriented patterns. Autonomous Agents and Multi-Agent Systems 15(3), 337–377 (2007)CrossRefGoogle Scholar
  22. 22.
    Sauvage, S.: Design patterns for multiagent systems design. In: Monroy, R., Arroyo-Figueroa, G., Sucar, L.E., Sossa, H. (eds.) MICAI 2004. LNCS (LNAI), vol. 2972, pp. 352–361. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  23. 23.
    Schmidt, D., Stal, M., Rohnert, H., Buschmann, F.: Pattern-Oriented Software Architecture. Patterns for Concurrent and Networked Objects, vol. 2. Wiley (2000)Google Scholar
  24. 24.
    Vázquez-Salceda, J., Aldewereld, H., Dignum, F.P.M.: Implementing norms in multiagent systems. In: Lindemann, G., Denzinger, J., Timm, I.J., Unland, R. (eds.) MATES 2004. LNCS (LNAI), vol. 3187, pp. 313–327. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  25. 25.
    Wampler, D.: Contract4j for design by contract in java: Design pattern like protocols and aspect interfaces. In: Proceedings of the Fifth AOSD Workshop on Aspects, Components, and Patterns for Infrastructure Software, pp. 27–30 (2006)Google Scholar
  26. 26.
    Weyns, D.: A pattern language for multi-agent systems. In: European Conference on Software Architecture, pp. 191–200 (September 2009)Google Scholar
  27. 27.
    Weyns, D., Helleboogh, A., Holvoet, T.: How to get multi-agent systems accepted in industry? Int. J. Agent-Oriented Softw. Eng. 3(4), 383–390 (2009)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Mehdi Dastani
    • 1
  • Bas Testerink
    • 1
  1. 1.Intelligent Systems GroupUtrecht UniversityThe Netherlands

Personalised recommendations