Autonomous Agents and Multi-Agent Systems

, Volume 32, Issue 1, pp 59–133 | Cite as

A new Hierarchical Agent Protocol Notation

  • Michael WinikoffEmail author
  • Nitin Yadav
  • Lin Padgham


Agent interaction descriptions (or protocols) are a key aspect of the design of multi-agent systems. However, in the authors’ extensive experience, the notations commonly used for specification are both difficult to use, and lack expressiveness in certain areas. Some desired modular representations are impossible to express, while others result in specifications that are unwieldy and difficult to follow. In this paper we present a new notation for expressing interaction protocols, focussing on key issues that we have found to be problematic: the ability to define flexible data-driven protocols; representation of roles including their mapping to agents; and hierarchical modularity. We provide the semantics for our notation and illustrate its use with three diverse case studies. Finally we evaluate this notation using objectively assessable criteria that we argue contribute substantially to pragmatic usability, and using a human subject evaluation of the notation’s usability.


Interaction protocols Design notations Agent interaction Agent oriented software engineering 



This work is partially supported by the Australian Research Council and Real Thing Entertainment Pty. Ltd. under Linkage Grant No. LP110100050. We would like to thank Tim Miller for discussions relating to the empirical evaluation described in Sect. 6.2. We would also like to thank the anonymous reviewers for detailed and insightful comments that helped to improve this paper.

Supplementary material


  1. 1.
    Alur, R., Kannan, S., & Yannakakis, M. (1999). Communicating hierarchical state machines. In J. Wiedermann, P. van Emde Boas, & M. Nielsen (Eds.), Automata, languages and programming (pp. 169–178). Berlin: Springer.Google Scholar
  2. 2.
    Ancona, D., Ferrando, A., & Mascardi, V. (2016). Comparing trace expressions and linear temporal logic for runtime verification. In E. Ábrahám, M. Bonsangue, & E. B. Johnsen (Eds.), Theory and practice of formal methods: Essays dedicated to Frank de Boer on the occasion of his 60th birthday (pp. 47–64). Cham: Springer.CrossRefGoogle Scholar
  3. 3.
    Baldoni, M., Baroglio, C., Calvanese, D., Micalizio, R., & Montali, M. (2016). Data and norm-aware multiagent systems for software modularization (position paper). In M. Baldoni, J. P. Müller, I. Nunes, & R. Zalila-Wenkstern (Eds.), Engineering multi-agent systems (EMAS) (informal workshop proceedings) (pp. 23–38). Singapore.Google Scholar
  4. 4.
    Baldoni, M., Baroglio, C., & Capuzzimati, F. (2014). A commitment-based infrastructure for programming socio-technical systems. ACM Transactions on Internet Technology, 14(4), 23:1–23:23.CrossRefGoogle Scholar
  5. 5.
    Baldoni, M., Baroglio, C., Marengo, E., & Patti, V. (2013). Constitutive and regulative specifications of commitment protocols: A decoupled approach. ACM Transactions on Intelligent Systems and Technologies, 4(2), 22.Google Scholar
  6. 6.
    Baldoni, M., Baroglio, C., Marengo, E., Patti, V., & Capuzzimati, F. (2014). Engineering commitment-based business protocols with the 2CL methodology. Autonomous Agents and Multi-Agent Systems, 28(4), 519–557.CrossRefGoogle Scholar
  7. 7.
    Basu, S., Bultan, T., & Ouederni, M. (2012). Deciding choreography realizability. In J. Field & M. Hicks (Eds.), Proceedings of the 39th ACM SIGPLAN-SIGACT symposium on principles of programming languages (POPL) (pp. 191–202). Philadelphia, Pennsylvania: ACM.Google Scholar
  8. 8.
    Bhattacharya, K., Caswell, N. S., Kumaran, S., Nigam, A., & Wu, F. Y. (2007). Artifact-centered operational modeling: Lessons from customer engagements. IBM Systems Journal, 46(4), 703–721.CrossRefGoogle Scholar
  9. 9.
    Bultan, T., Su, J., & Fu, X. (2006). Analyzing conversations of web services. IEEE Internet Computing, 10(1), 18–25.CrossRefGoogle Scholar
  10. 10.
    Cabac, L., Duvigneau, M., Moldt, D., & Rölke, H. (2005). Modeling dynamic architectures using nets-within-nets. In G. Ciardo & P. Darondeau (Eds.), 26th International conference on applications and theory of Petri nets (ICATPN), volume 3536 of lecture notes in computer science (pp. 148–167). Berlin: Springer.Google Scholar
  11. 11.
    Chopra, A. K., Christie, S. H. V., & Singh, M. P. (2017). Splee: A declarative information-based language for multiagent interaction protocols. In S. Das, E. Durfee, K. Larson, & M. Winikoff (Eds.), Autonomous agents and multi-agent systems (AAMAS) (pp. 1054–1063). São Paulo, Brazil: IFAAMAS.Google Scholar
  12. 12.
    Chopra, A. K., & Singh, M. P. (2015). Cupid: Commitments in relational algebra. In B. Bonet & S. Koenig (Eds.), Proceedings of the twenty-ninth AAAI conference on artificial intelligence (pp. 2052–2059). Austin, TX: AAAI Press.Google Scholar
  13. 13.
    Chopra, A. K., & Singh, M. P. (2016). Custard: Computing norm states over information stores. In C. M. Jonker, S. Marsella, J. Thangarajah, & K. Tuyls (Eds.), Autonomous agents & multiagent systems (AAMAS) (pp. 1096–1105). Singapore: IFAAMAS.Google Scholar
  14. 14.
    Cohn, D., & Hull, R. (2009). Business artifacts: A data-centric approach to modeling business operations and processes. IEEE Data Engineering Bulletin, 32(3), 3–9.Google Scholar
  15. 15.
    Desai, N., Chopra, A. K., & Singh, M. P. (2009). Amoeba: A methodology for modeling and evolving cross-organizational business processes. ACM Transactions on Software Engineering and Methodology, 19(2). doi: 10.1145/1571629.1571632.
  16. 16.
    Desai, N., & Singh, M. P. (2008). On the enactability of business protocols. In D. Fox & C. P. Gomes (Eds.), Proceedings of the twenty-third AAAI conference on artificial intelligence (pp. 1126–1131). Chicago, Il: AAAI Press.Google Scholar
  17. 17.
    Eshuis, R. (2009). Reconciling statechart semantics. Science of Computer Programming, 74(3), 65–99.MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Günay, A., Winikoff, M., & Yolum, P. (2015). Dynamically generated commitment protocols in open systems. Autonomous Agents and Multi-Agent Systems, 29(2), 192–229.CrossRefGoogle Scholar
  19. 19.
    Harel, D. (1987). Statecharts: A visual formalism for complex systems. Science of Computer Programming, 8(3), 231–274.MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    Huget, M.-P., Bauer, B., Odell, J., Levy, R., Turci, P., Cervenka, R., & Zhu, H. (2003). FIPA modeling: Interaction diagrams. On under “Working Documents”. FIPA Working Draft (version 2003-07-02).
  21. 21.
    Huget, M.-P., & Odell, J. (2005). Representing agent interaction protocols with agent UML. In J. Odell, P. Giorgini, & J. P. Müller (Eds.), Agent-oriented software engineering V: 5th international workshop, AOSE 2004, Revised Selected Papers (pp. 16–30). Berlin: Springer.CrossRefGoogle Scholar
  22. 22.
    Huget, M.-P., Odell, J., & Bauer, B. (2004). The AUML approach. In F. Bergenti, M. P. Gleizes, & F. Zambonelli (Eds.), Methodologies and software engineering for agent systems (pp. 237–257). Berlin: Springer.CrossRefGoogle Scholar
  23. 23.
    Jarvis, J., Rönnquist, R., Jarvis, D., & Jain, L. C. (2008). A conceptual model for holonic manufacturing execution. In Holonic execution: A BDI approach, volume 106 of studies in computational intelligence (pp. 33–42). Berlin: Springer.Google Scholar
  24. 24.
    Jarvis, J., Rönnquist, R., McFarlane, D., & Jain, L. (2006). A team-based holonic approach to robotic assembly cell control. Journal of Network and Computer Applications, 29(2–3), 160–176.Google Scholar
  25. 25.
    Kazhamiakin, R., & Pistore, M. (2006). Analysis of realizability conditions for web service choreographies. In E. Najm, J. Pradat-Peyre, & V. Donzeau-Gouge (Eds.), Formal techniques for networked and distributed systems FORTE, volume 4229 of lecture notes in computer science (pp. 61–76). Berlin: Springer.Google Scholar
  26. 26.
    Koning, J., Huget, M., Wei, J., & Wang, X. (2001). Extended modeling languages for interaction protocol design. In M. Wooldridge, G. Weiß, & P. Ciancarini (Eds.), Agent-oriented software engineering II, second international workshop, Revised Papers and Invited Contributions, volume 2222 of lecture notes in computer science (pp. 68–83). Berlin: Springer.Google Scholar
  27. 27.
    Lanese, I., Guidi, C., Montesi, F., & Zavattaro, G. (2008). Bridging the gap between interaction- and process-oriented choreographies. In Sixth IEEE international conference on software engineering and formal methods (pp. 323–332).Google Scholar
  28. 28.
    Mazouzi, H., Fallah-Seghrouchni, A. E., & Haddad, S. (2002). Open protocol design for complex interactions in multi-agent systems. In Autonomous agents & multiagent systems (AAMAS) (pp. 517–526). ACM.Google Scholar
  29. 29.
    Montali, M., Calvanese, D., & De Giacomo, G. (2014). Verification of data-aware commitment-based multiagent system. In A. L. C. Bazzan, M. N. Huhns, A. Lomuscio, & P. Scerri (Eds.), Autonomous agents and multi-agent systems (AAMAS) (pp. 157–164). Paris, France: IFAAMAS.Google Scholar
  30. 30.
    Moody, D. L. (2009). The “physics” of notations: Toward a scientific basis for constructing visual notations in software engineering. IEEE Transactions on Software Engineering, 35(6), 756–779.CrossRefGoogle Scholar
  31. 31.
    Moody, D. L., & van Hillegersberg, J. (2009) Evaluating the visual syntax of UML: An analysis of the cognitive effectiveness of the UML family of diagrams. In D. Gasevic, R. Lämmel, & E. V. Wyk (Eds.), First international conference on software language engineering, volume 5452 of lecture notes in computer science (pp. 16–34). Berlin: Springer.Google Scholar
  32. 32.
    Nigam, A., & Caswell, N. S. (2003). Business artifacts: An approach to operational specification. IBM Systems Journal, 42(3), 428–445.CrossRefGoogle Scholar
  33. 33.
    Reisig, W. (1985). Petri nets: An introduction. EATCS Monographs on Theoretical Computer Science. Berlin: Springer.Google Scholar
  34. 34.
    Singh, M. P. (1998). Agent communication languages: Rethinking the principles. Computer, 31, 40–47.CrossRefGoogle Scholar
  35. 35.
    Singh, M. P. (2011). Information-driven interaction-oriented programming: BSPL, the Blindingly simple protocol language. In Proceedings of the 10th international conference on autonomous agents and multiagent systems (AAMAS) (pp. 491–498).Google Scholar
  36. 36.
    Singh, M. P. (2011). LoST: Local state transfer—An architectural style for the distributed enactment of business protocols. In IEEE international conference on web Services (ICWS) (pp. 57–64). IEEE Computer Society.Google Scholar
  37. 37.
    Singh, M. P. (2012). Semantics and verification of information-based protocols. In Proceedings of the 11th international conference on autonomous agents and multiagent systems (AAMAS) (pp. 1149–1156).Google Scholar
  38. 38.
    Singh, M. P. (2014). Bliss: Specifying declarative service protocols. In Proceedings of the 11th IEEE international conference on services computing (SCC) (pp. 1–8).Google Scholar
  39. 39.
    Taleghani, A., & Atlee, J. (2006). Semantic variations among UML StateMachines. In O. Nierstrasz, J. Whittle, D. Harel, & G. Reggio (Eds.), Model driven engineering languages and systems, volume 4199 of lecture notes in computer science (pp. 245–259). Berlin: Springer.Google Scholar
  40. 40.
    Telang, P. R., & Singh, M. P. (2012). Comma: A commitment-based business modeling methodology and its empirical evaluation. In W. van der Hoek, L. Padgham, V. Conitzer, & M. Winikoff (Eds.), International conference on autonomous agents and multiagent systems AAMAS (pp. 1073–1080). Valencia, Spain: IFAAMAS.Google Scholar
  41. 41.
    Thielscher, M., & Zhang, D. (2010). From general game descriptions to a market specification language for general trading agents. In E. David, E. Gerding, D. Sarne, & O. Shehory (Eds.), Agent-mediated electronic commerce. Designing trading strategies and mechanisms for electronic markets (pp. 259–274). Berlin: Springer.Google Scholar
  42. 42.
    Winikoff, M. (2006). Designing commitment-based agent interactions. In IEEE/WIC/ACM international conference on intelligent agent technology (IAT).Google Scholar
  43. 43.
    Winikoff, M. (2006). Implementing flexible and robust agent interactions using distributed commitment machines. Multiagent and Grid Systems, 2(4), 365–381.CrossRefzbMATHGoogle Scholar
  44. 44.
    Winikoff, M. (2007). Implementing commitment-based interactions. In Autonomous Agents and multi-agent systems (AAMAS) (pp. 873–880).Google Scholar
  45. 45.
    Winikoff, M., Liu, W., & Harland, J. (2004). Enhancing commitment machines. In J. Leite, A. Omicini, P. Torroni, & P. Yolum (Eds.), Declarative agent languages and technologies II, number 3476 in lecture notes in artificial intelligence (pp. 198–220). Berlin: Springer.Google Scholar
  46. 46.
    Winikoff, M., & Padgham, L. (2013). Agent oriented software engineering, chapter 15. In G. Weiß (Ed.), Multiagent systems (2nd ed., pp. 695–757). Cambridge, MA: MIT Press.Google Scholar
  47. 47.
    Yadav, N., Padgham, L., & Winikoff, M. (2015). A tool for defining agent protocols in HAPN: (demonstration). In Autonomous agents and multiagent systems (AAMAS) (pp. 1935–1936). IFAAMASGoogle Scholar
  48. 48.
    Yolum, P. (2005). Towards design tools for protocol development. In F. Dignum, V. Dignum, S. Koenig, S. Kraus, M. P. Singh, & M. Wooldridge (Eds.), Autonomous agents and multi-agent systems (AAMAS) (pp. 99–105). Utrecht, The Netherlands: ACM Press.Google Scholar
  49. 49.
    Yolum, P., & Singh, M. (2002). Commitment machines. In J.-J. C. Meyer & M. Tambe (Eds.), Agent theories, architectures, and languages (ATAL), volume 2333 of lecture notes in computer science (pp. 235–247). Berlin: SpringerGoogle Scholar
  50. 50.
    Yolum, P., & Singh, M. P. (2002). Flexible protocol specification and execution: Applying event calculus planning using commitments. In Autonomous agents and multiagent systems (AAMAS) (pp. 527–534).Google Scholar

Copyright information

© The Author(s) 2017

Authors and Affiliations

  1. 1.University of OtagoDunedinNew Zealand
  2. 2.RMIT UniversityMelbourneAustralia
  3. 3.University of MelbourneMelbourneAustralia

Personalised recommendations