Abstract
In this chapter, a complex approach to testing of multi-agent systems is presented. Multi-agent testing should be divided into three layers. On the first layer, the individual agents should be tested. A stochastic approach to unit testing and the use of “stages” can be adopted. A stage is a perceptible segment of a virtual world where an agent is placed that is projected for agent unit testing. On the second layer, deadlocks and similar flaws of agent interaction should be fought. Our method of deadlock detection is based on monitoring recurring agent interactions. On the third layer, the behavior of the entire system is evaluated. Bottlenecks and “hot spots” of the system could cause serious performance problems. Stability of multi-agent systems in case of mass collapse of many agents should be tested using stress tests.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Beck, K. (2003) Test Driven Development: By Example. Addison-Wesley, Boston.
Bellifemine, F., Poggi, A. and Rimassa, G. (2001) Developing multi-agent systems with JADE. In: Castelfranchi, C. and Lespérance, Y. (eds.), Proceedings of the 7th International Workshop on Intelligent Agents VII. Agent Theories Architectures and Languages, LNAI, Springer Verlag, London, pp. 89–103.
Bresciani, P., Giorgini, P., Giunchiglia, F., Mylopoulos, J. and Perini, A. (2002) Tropos: An agent-oriented software development methodology. Autonomous Agents and Multi-Agent Systems 8, pp. 203–236.
Burkhard, H. (1993) Liveness and fairness properties in multi-agent systems. In: Bajcsy, R. (ed.), Proceedings of the 13th International Joint Conference on Artificial Intelligence (IJCAI 93), Morgan Kaufmann Publ., pp. 325–330.
Coelho, R., Kulesza, U., Staa, A. and Lucena, C. (2006) Unit testing in multi-agent systems using mock agents and aspects. In: Proceedings of the 2006 International Workshop on Software Engineering for Large-Scale Multi-Agent Systems, ACM, New York, pp. 83–90.
Coffman, E.G., Elphick, M. and Shoshani, A. (1971) System deadlocks. Computing Surveys 2, pp. 67–78.
Dresner, K. and Stone, P. (2006) Multiagent traffic management: Opportunities for multi-agent learning. In: Tuyls, K. (ed.), LAMAS 2005, LNAI, Springer Verlag, Berlin, pp. 129–138.
Gatti, M.A.C. and Staa, A.V. (2006) Testing & debugging multi-agent systems: a state of the art report. Departamento de Informática, PUC-Rio, Rio de Janeiro.
Jonker, C.M. and Treur, J. (1998) Compositional verification of multi-agent systems: A formal analysis of pro-activeness and reactiveness. In: Langmaack, H., Pnueli, A. and De Roever, W.P. (eds.), Proceedings of the International Workshop on Compositionality, COMPOS'97, LNCS, Springer Verlag, Berlin, pp. 350–380.
Liedekerke, M. and Avouris, N. (1995) Debugging multi-agent systems. Information and Software Technology 37(2), pp. 103–112.
Mackinnon, T., Freeman, S. and Craig, P. (2000) EndoTesting: Unit testing with mock objects. In: Extreme Programming and Flexible Processes in Software Engineering – XP2000, May 2000.
Ndumu, D., Nwana, H., Lee, L. and Collins, J. (1999) Visualising and debugging distributed multi-agent systems. In: Proceedings of the Third Annual Conference on Autonomous Agents, pp. 326–333.
Omicini, A. (2000) SODA: Societies and infrastructures in the analysis and design of agent-based systems. In: First International Workshop, AOSE 2000 on Agent-Oriented Software Engineering, Springer-Verlag, New York, pp. 185–193.
Padgham, L. and Winikoff, M. (2002) Prometheus: A methodology for developing intelligent agents. In: Proceedings of the First International Joint Conference on Autonomous Agents and Multiagent Systems: Part 1, July, pp. 15–19, 2002, Bologna, Italy.
Poutakidis, D., Padgham, L. and Winikoff, M. (2002) Debugging multi-agent systems using design artifacts: The case of interaction protocols. In: Proceedings of the First International Joint Conference on Autonomous Agents and Multi Agent Systems, AAMAS'02. July 15–19, 2002, Bologna, Italy.
Salamon, T. (2008) Dealing with complexity in a multiagent system (in Czech). In: Fi-scher, J. (ed.), Proceedings of 12th Annual Workshop, University of Economics, Prague, pp. 60–68.
Sycara, K. (1998) Multiagent systems. AI Magazine 19(2): Summer, pp. 79–92.
Tesfatsion, L. (2002) Agent-based computational economics: Growing economies from the bot-tom up. ISU Economics Working Paper No. 1, Iowa State University, Ames, IA.
Tiryaki, A.M., Oztuna, S., Dikenelli, O. and Erdur, R.C. (2006) SUNIT: A unit testing framework for test driven development of MASs. In: Padgham, L. and Zambonelli, F. (eds.), AOSE 2006, LNCS, Springer Verlag, Berlin, pp. 156–173.
Wooldridge, M. (2002) An introduction to multiagent systems. John Wiley & Sons, Chichester.
Wooldridge, M., Jennings, N. and Kinny, D. (2000) The Gaia methodology for agent-oriented analysis and design. Journal of Autonomous Agents and Multi-Agent Systems 3, 285–312.
Acknowledgments
This chapter is supported by the European Union in the frame of Unified Program Document 3 under the European Social Fund together with the Czech Republic and the City of Prague.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer Science+Business Media, LLC
About this chapter
Cite this chapter
Salamon, T. (2009). A Three-Layer Approach to Testing of Multi-agent Systems. In: Papadopoulos, G., Wojtkowski, W., Wojtkowski, G., Wrycza, S., Zupancic, J. (eds) Information Systems Development. Springer, Boston, MA. https://doi.org/10.1007/b137171_41
Download citation
DOI: https://doi.org/10.1007/b137171_41
Published:
Publisher Name: Springer, Boston, MA
Print ISBN: 978-0-387-84809-9
Online ISBN: 978-0-387-84810-5
eBook Packages: Computer ScienceComputer Science (R0)