Using the Analytic Hierarchy Process for Evaluating Multi-Agent System Architecture Candidates

  • Paul Davidsson
  • Stefan Johansson
  • Mikael Svahnberg
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3950)


Although much effort has been spent on suggesting and implementing new architectures of Multi-Agent Systems (MAS), the evaluation and comparison of these has often been done in a rather ad-hoc fashion. We believe that the time has come to start doing this in a more systematic way using established methods. For instance, we argue that it is important to evaluate the architecture candidates for a particular application according to several quality attributes relevant to that application. The architecture that provides the most appropriate balance between these attributes should then be selected. As a case study we investigate the problem of load balancing and overload control of Intelligent Networks and present four MAS architectures that can be used to handle this task. We instantiate each of these and define metrics for the selected quality attributes. The instantiations are studied in simulation experiments and measurements of the metrics are recorded. The measurements are then analyzed using the Analytic Hierarchy Process, which is a basic approach to select the most suitable alternative from a number of alternatives evaluated with respect to several criteria. We illustrate how such analyzes can be used for deciding which architecture candidate is the most appropriate in different situations.


Analytic Hierarchy Process Quality Attribute Communication Overhead Analytic Hierarchy Process Method Architectural Style 
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.
    Anderson, D.R., Sweeney, D.J., Williams, T.A.: An Introduction to Management Science: Quantitative Approaches to Decision Making. South Western College Publishing, Cincinnati Ohio (2000)Google Scholar
  2. 2.
    Arvidsson, A., Jennings, B., Angelin, L., Svensson, M.: On the use of agent technology for in load control. In: Proceedings of the 16th International Teletraffic Congress, Elsevier Science, Amsterdam (1999)Google Scholar
  3. 3.
    Berger, A.: Comparison of call gapping and percent blocking for overload control in distributed switching systems and telecommunication networks. IEEE Trans. Commun. 39, 574–580 (1991)CrossRefGoogle Scholar
  4. 4.
    Bodanese, E., Cuthbert, L.: An intelligent channel allocation scheme for mobile networks: An application of agent technology. In: Proceedings of the 2nd International Conference on Intelligent Agent Technology, pp. 322–333. World Scientific, Singapore (2001)Google Scholar
  5. 5.
    Clearwater, S. (ed.): Market-Based Control: Some early lessons. World Scientific, Singapore (1996)Google Scholar
  6. 6.
    Clements, P., Kazman, R., Klein, M.: Evaluating Software Architectures. Addison-Wesley, Reading (2002)Google Scholar
  7. 7.
    Cohen, P.R.: Empirical Methods for Artificial Intelligence. MIT Press, Cambridge MA (1995)MATHGoogle Scholar
  8. 8.
    Davidsson, P., Johansson, S., Svahnberg, M.: Characterization and Evaluation of Multi-agent System Architectural Styles. In: Garcia, A., Choren, R., Lucena, C., Giorgini, P., Holvoet, T., Romanovsky, A. (eds.) SELMAS 2005. LNCS, vol. 3914, pp. 179–188. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  9. 9.
    Johansson, S., Davidsson, P., Kristell, M.: Four architectures for dynamic resource allocation. In: Karmouch, A., Magedanz, T., Delgado, J. (eds.) MATA 2002. LNCS, vol. 2521, pp. 239–248. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  10. 10.
    Karlsson, J., Ryan, K.: A cost-value approach for prioritizing requirements. IEEE Software 14(5), 67–74 (1997)CrossRefGoogle Scholar
  11. 11.
    Karlsson, J., Wohlin, C., Regnell, B.: An evaluation of methods for prioritizing software requirements. Information and Software Technology 39(14-15), 938–947 (1998)CrossRefGoogle Scholar
  12. 12.
    Magedanz, T., Popescu-Zeletin, R.: Intelligent Networks. International Thomson Computer Press (1996)Google Scholar
  13. 13.
    McCall, J.: Encyclopedia of Software Engineering. In: Quality Factors, pp. 959–969. John Wiley & Sons Inc., Chichester (1994)Google Scholar
  14. 14.
    Saaty, T.L.: The Analytic Hierarchy Process. McGraw Hill, Inc., New York (1980)MATHGoogle Scholar
  15. 15.
    Saaty, T.L., Vargas, L.G.: Models, Methods, Concepts & Applications of the Analytic Hierarchy Process. Kluwer Academic Publisher, Dordrecht (2001)CrossRefMATHGoogle Scholar
  16. 16.
    Shaw, M., Garlan, D.: Software Architecture - Perspectives on an Emergin Discipline. Prentice Hall, Upper Saddle River (1996)MATHGoogle Scholar
  17. 17.
    Shepperd, M., Barker, S., Aylett, M.: The analytic hierarchy process and almost dataless prediction. In: Kuster, R.J., Cowderoy, A., Heemstra, F., van Veenendaal, E.P. (eds.) Project Control for Software Quality - Proceedings of ESCOM-SCOPE 1999, Shaker Publishing BV, Maastricht the Netherlands (1999)Google Scholar
  18. 18.
    Svahnberg, M.: An industrial study on building consensus around software architectures and quality attributes. Journal of Information and Software Technology 46(12), 805–818 (2004)CrossRefGoogle Scholar
  19. 19.
    Ygge, F.: Market-Oriented Programming and its Application to Power Load Management. PhD thesis, Lund University, Sweden (1998)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Paul Davidsson
    • 1
  • Stefan Johansson
    • 1
  • Mikael Svahnberg
    • 1
  1. 1.Department of Systems and Software EngineeringBlekinge Institute of TechnologyRonnebySweden

Personalised recommendations