Improving the Reactivity of BDI Agent Programs

  • Hoa Khanh Dam
  • Tiancheng Zhang
  • Aditya Ghose
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8291)


Intelligent agent technology has evolved rapidly over the past few years along with the growing number of agent applications in various domains. However, very little work has been dedicated to define quality metrics for the design of an agent-based system. Previous efforts mostly focus on adopting classical metrics such as coupling and cohesion to measure quality of an agent design. We argue that the time has come to work towards a set of software quality metrics that are specific to the distinct characteristics of agent-based systems. In this paper, we propose a method to measure the reactivity of an agent design which provides indications of how the agent system responds to changes in the environment in a timely fashion. The proposed metric is part of the framework which facilitates the restructuring of an Belief-Desire-Intention agent program to improve its reactivity. Our framework was developed into a prototype tool which is integrated with Jason, a well-known agent-oriented programming platform.


Multiagent System Agent System Context Condition Design Option Reactivity Measure 
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.
    Alonso, F., Fuertes, J.L., Martinez, L., Soza, H.: Towards a set of measures for evaluating software agent autonomy. In: Proceedings of the 2009 Eighth Mexican International Conference on Artificial Intelligence, MICAI 2009, pp. 73–78. IEEE Computer Society, Washington, DC (2009)Google Scholar
  2. 2.
    Alonso, F., Fuertes, J.L., Martinez, L., Soza, H.: Measuring the pro-activity of software agents. In: International Conference on Software Engineering Advances, pp. 319–324 (2010)Google Scholar
  3. 3.
    Barnes, G., Swim, B.: Inheriting software metrics. Journal of Object-Oriented Programming 6(7), 27–34 (1993)Google Scholar
  4. 4.
    Bordini, R.H., Dastani, M., Dix, J., El Fallah Seghrouchni, A. (eds.): Multi-Agent Programming: Languages, Platforms and Applications. Springer (2005)Google Scholar
  5. 5.
    Bordini, R.H., Hübner, J.F., Wooldridge, M.: Programming multi-agent systems in AgentSpeak using Jason. Wiley (2007) ISBN 0470029005Google Scholar
  6. 6.
    Busetta, P., Howden, N., Rönnquist, R., Hodgson, A.: Structuring BDI agents in functional clusters. In: Jennings, N.R. (ed.) ATAL 1999. LNCS, vol. 1757, pp. 277–289. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  7. 7.
    Cernuzzi, L., Rossi, G.: On the evaluation of agent oriented modeling methods. In: Proceedings of Agent Oriented Methodology Workshop, Seattle (2002)Google Scholar
  8. 8.
    Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Softw. Eng. 20, 476–493 (1994)CrossRefGoogle Scholar
  9. 9.
    Dam, H.K., Ghose, A.: Automated change impact analysis for agent systems. In: Proceedings of the 27th IEEE International Conference on Software Maintenance, ICSM 2011, pp. 33–42. IEEE, Washington, DC (2011)CrossRefGoogle Scholar
  10. 10.
    Dam, H.K., Ghose, A.: Supporting change impact analysis for intelligent agent systems. Science of Computer Programming 78(9), 1728–1750 (2013)CrossRefGoogle Scholar
  11. 11.
    Dam, H.K., Winikoff, M.: An agent-oriented approach to change propagation in software maintenance. Journal of Autonomous Agents and Multi-Agent Systems 23(3), 384–452 (2011)CrossRefGoogle Scholar
  12. 12.
    Dam, H.K., Winikoff, M.: Towards a next-generation AOSE methodology. Science of Computer Programming 78(6), 684–694 (2013)CrossRefGoogle Scholar
  13. 13.
    Dam, K.H., Winikoff, M.: Cost-based BDI plan selection for change propagation. In: Padgham, Parkes, Müller, Parsons (eds.) Proceedings of the 7th International Conference on Autonomous Agents and Multiagent Systems (AAMAS 2008), Estoril, Portugal, pp. 217–224 (May 2008)Google Scholar
  14. 14.
    Dastani, M., Birna Riemsdijk, M., Meyer, J.-J.: Programming multi-agent systems in 3APL. In: Bordini, R., Dastani, M., Dix, J., Fallah Seghrouchni, A. (eds.) Multi-Agent Programming. Multiagent Systems, Artificial Societies, and Simulated Organizations, vol. 15, pp. 39–67. Springer US (2005)Google Scholar
  15. 15.
    Fowler, M., Beck, K.: Refactoring: improving the design of existing code. Addison-Wesley Longman Publishing Co., Inc., Boston (1999)Google Scholar
  16. 16.
    Georgeff, M., Rao, A.: Rational software agents: From theory to practice. In: Agent Technology: Foundations, Applications, and Markets, ch. 8, pp. 139–160 (1998)Google Scholar
  17. 17.
    Henderson-Sellers, B., Giorgini, P. (eds.): Agent-Oriented Methodologies. Idea Group Publishing (2005)Google Scholar
  18. 18.
    Hindriks, K.V., de Boer, F.S., van der Hoek, W., Meyer, J.-J.C.: Agent programming with declarative goals. In: Castelfranchi, C., Lespérance, Y. (eds.) ATAL 2000. LNCS (LNAI), vol. 1986, p. 228. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  19. 19.
    Martin, C.E., Barber, K.S., Barber, K.S.: Agent autonomy: Specification, measurement, and dynamic adjustment. In: Proceedings of the Autonomy Control Software Workshop, Agents 1999, pp. 8–15 (1999)Google Scholar
  20. 20.
    Meneguzzi, F., Luck, M.: Composing high-level plans for declarative agent programming. In: Baldoni, M., Son, T.C., van Riemsdijk, M.B., Winikoff, M. (eds.) DALT 2007. LNCS (LNAI), vol. 4897, pp. 69–85. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  21. 21.
    Padgham, L., Winikoff, M.: Developing intelligent agent systems: A practical guide. John Wiley & Sons, Chichester (2004) ISBN 0-470-86120-7CrossRefGoogle Scholar
  22. 22.
    Pavon, J., Gomez-Sanz, J.J., Fuentes, R.: The INGENIAS methodology and tools. In: Henderson-Sellers, B., Giorgini, P. (eds.) Agent-Oriented Methodologies, ch. IX, pp. 236–276. Idea Group Publishing (2005)Google Scholar
  23. 23.
    Pokahr, A., Braubach, L., Lamersdorf, W.: Jadex: A BDI reasoning engine. In: Bordini, R., Dastani, M., Dix, J., El Fallah Seghrouchni, A. (eds.) Multi-Agent Programming, pp. 149–174. Springer Science+Business Media Inc., USA (2005)CrossRefGoogle Scholar
  24. 24.
    Rao, A.S.: AgentSpeak(L): BDI agents speak out in a logical computable language. In: Van de Velde, W., Perrame, J. (eds.) MAAMAW 1996. LNCS (LNAI), vol. 1038, pp. 42–55. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  25. 25.
    Sardina, S., de Silva, L., Padgham, L.: Hierarchical planning in bdi agent programming languages: a formal approach. In: Proceedings of the Fifth International Joint Conference on Autonomous Agents and Multiagent Systems, AAMAS 2006, pp. 1001–1008 (2006)Google Scholar
  26. 26.
    Sardina, S., Padgham, L.: A BDI agent programming language with failure recovery, declarative goals, and planning. Autonomous Agents and Multi-Agent Systems 23(1), 18–70 (2011)CrossRefGoogle Scholar
  27. 27.
    Thangarajah, J., Sardina, S., Padgham, L.: Measuring plan coverage and overlap for agent reasoning. In: Proceedings of the 11th International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS 2012), Valencia, Spain, pp. 1049–1056 (June 2012)Google Scholar
  28. 28.
    Tiryaki, A.M., Ekinci, E.E., Dikenelli, O.: Refactoring in multi agent system development. In: Bergmann, R., Lindemann, G., Kirn, S., Pěchouček, M. (eds.) MATES 2008. LNCS (LNAI), vol. 5244, pp. 183–194. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  29. 29.
    Winikoff, M., Padgham, L., Harland, J., Thangarajah, J.: Declarative & procedural goals in intelligent agent systems. In: Proceedings of the Eighth International Conference on Principles of Knowledge Representation and Reasoning (KR 2002), Toulouse, France, pp. 470–481 (2002)Google Scholar
  30. 30.
    Wooldridge, M.: An Introduction to MultiAgent Systems. John Wiley & Sons, Chichester (2002) ISBN 0 47149691XGoogle Scholar
  31. 31.
    Zambonelli, F., Jennings, N.R., Wooldridge, M.: Developing multiagent systems: The Gaia methodology. ACM Transactions on Software Engineering and Methodology 12(3), 317–370 (2003)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Hoa Khanh Dam
    • 1
  • Tiancheng Zhang
    • 1
  • Aditya Ghose
    • 1
  1. 1.School of Computer Science and Software EngineeringUniversity of WollongongAustralia

Personalised recommendations