This Article 
 Bibliographic References 
 Add to: 
On Load Balancing for Distributed Multiagent Computing
August 2002 (vol. 13 no. 8)
pp. 787-801

Abstract—Multiagent computing on a cluster of workstations is widely envisioned to be a powerful paradigm for building useful distributed applications. The agents of the system span across all the machines of a cluster. Just like the case of traditional distributed systems, load balancing becomes an area of concern. With different characteristics between ordinary processes and agents, it is both interesting and useful to investigate whether conventional load-balancing strategies are also applicable and sufficient to cope with the newly emerging needs, such as coping with temporally continuous agents, devising a performance metric for multiagent systems, and taking into account the vast amount of communication and interaction among agent. This paper discusses the above issues with reference to agent properties and load balancing techniques and outlines the space of load-balancing design choices in the arena of multiagent computing. In view of the special agent characteristics, a novel communication-based load-balancing algorithm is proposed, implemented, and evaluated. The proposed algorithm works by associating a credit value with each agent. The credit of an agent depends on its affinity to a machine, its current workload, its communication behavior, and mobility, etc. When a load imbalance occurs, the credits of all agents are examined and an agent with a lower credit value is migrated to relatively lightly loaded machine in the system. Quasi-simulated experiments of this algorithm show load-balancing improvement compared with conventional workload-oriented load-balancing schemes.

[1] I. Ahmad and A. Ghafoor, “Semi-Distributed Load Balancing for Massively Parallel Multicomputer Systems,” IEEE Trans. Software Eng., vol. 17, no. 10, pp. 987-1004, Oct. 1991.
[2] I. Ahmad, A. Ghafoor, and K. Mehrotra, “Performance Prediction and Distributed Load Balancing on Multicomputer Systems,” Proc. Supercomputing '91, Nov. 1991.
[3] R.M. Bryant and R.A. Finkel, “A Stable Distributed Scheduling Algorithm,” Proc. Second Int'l Conf. Distributed Computing Systems, Apr. 1981.
[4] T.L. Casavant and J.G. Kuhl,“A taxonomy of scheduling in general-purpose distributed computing systems,” IEEE Trans. on Software Engineering, vol. 14, no. 2. Feb. 1988.
[5] S. Franklin and A. Graesser, “Is it an Agent, or just a Program?: A Taxonomy for Autonomous Agents,” Proc. Third Int'l Workshop Agent Theories, Architecture, and Languages, 1996.
[6] S. Fricke, K. Bsufka, J. Keiser, T. Schmidt, R. Sesseler, and S. Albayrak, “Agent-Based Telematic Services and Telecom Applications,” Comm. ACM, vol. 44, no. 4, pp. 43-48, Apr. 2001.
[7] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness.New York: W.H. Freeman, 1979.
[8] M.L. Griss and G. Pour, “Accelerating Development with Agent Components,” Computer, vol. 34, no. 5, pp. 37-43, May 2001.
[9] T.E. Senator, H.G. Goldberg, J. Wooton, M.A. Cottini, A.F.U. Khan, C.D. Klinger, W.M. Llamas, M.P. Marrone, and R.W.H. Wong, “The FinCEN Artificial Intelligence System: Identifying Potential Money Laundering from Reports of Large Cash Transactions,” AI Magazine, vol. 16, no. 4, pp. 21-39, 1995.
[10] M.N. Huhns and M.P. Singh, “Distributed Artificial Intelligence for Information Systems,” CKBS-94 Tutorial, Univ. of Keele, UK, June 1994.
[11] K. Hwang and Z.W. Xu, Scalable Parallel Computing: Technology, Architecture, Programming. McGraw-Hill, 1998.
[12] N.R. Jennings, P. Faratin, M.J. Johnson, T.J. Norman, P. O' Brien, and M.E. Wiegand, “Agent-Based Business Process Management,” Int'l J. Cooperative Information Systems, vol. 5, nos. 2/3, pp. 105-130, 1996.
[13] N.R. Jennings and M.J. Wooldridge, Agent Technology: Foundations, Applications, and Markets, Berlin, Germany: Springer-Verlag, 1998.
[14] JATLite Web Site,http:/, 2002.
[15] M. Kafeel and I. Ahmad, “Optimal Task Assignment in Heterogeneous Distributed Computing Systems,” IEEE Concurrency, vol. 6, no. 3, pp. 42-51, July 1998.
[16] P. Krueger and M. Livny, “A Comparison of Preemptive and Non-Preemptive Load Distributing,” Proc. IEEE Int'l Conf. Distributed Computing Systems, pp. 123-130, 1988.
[17] T. Kunz, “The Influence of Different Workload Descriptions on a Heuristic Load Balancing Scheme,” IEEE Trans. Software Engineering, vol. 17, no. 7, pp. 725-730, July 1991.
[18] Y.-K. Kwok and I. Ahmad, “Static Scheduling Algorithms for Allocating Directed Task Graphs to Multiprocessors,” ACM Computing Surveys, vol. 31, no. 4, pp. 406-471, Dec. 1999.
[19] M. Ljunberg and A. Lucas, “The OASIS Air Traffic Management System,” Proc. Second Pacific Rim Int'l Conf. AI (PRICAI-92), 1992.
[20] S.A. Moore, “KQML and FLBC: Contrasting Agent Communication Languages,” Proc. 32nd Ann. Hawaii Int'l Conf. Systems Sciences, p. 10, 1999.
[21] M.P. Nuttall, “Cluster Load Balancing using Process Migration,” PhD thesis, Department of Computing, Univ. of London, June 1997.
[22] L.M. Ni, C. Xu, and T.B. Gendreau, “A Distributed Drafting Algorithm for Load Balancing,” IEEE Trans. Software Eng., vol. 11, no. 10, pp. 1153-1161, Oct. 1985.
[23] M.P. Papazoglou, “Agent-Oriented Technology in Support of E-Business,” Comm. ACM, vol. 44, no. 4, pp. 71-78, Apr. 2001.
[24] G.F. Pfister, In Search of Clusters, second ed. New Jersey: Prentice Hall, 1998.
[25] The Pleiades Project, theo-5/wwwpleiades.html, 2002.
[26] K. Ramamritham and J.A. Stonkovic, “Dynamic Task Scheduling in Hard Real-Time Distributed Systems,” IEEE Software, vol. 1, no. 3, pp. 65-75, July 1984.
[27] B.A. Shirazi, A.R. Hurson, and K.M. Kavi, Scheduling and Load Balancing in Parallel and Distributed Systems. Los Alamitos, Cailf.: IEEE Computer Soc. Press, 1995.
[28] N.G. Shivaratri, P. Krueger, and M. Singhal, “Load Distributing for Locally Distributed Systems,” Computer, vol. 25, no. 12, pp. 33-44, Dec. 1992.
[29] A. Schaerf, Y. Shoham, and M. Tennenholtz, “Adaptive Load Balancing: A Study in Multi-Agent Learning,” J. Artificial Intelligence Research, 1995.
[30] J.A. Stankovic, “Simulations of Three Adaptive, Decentralized Controlled, Job Scheduling Algorithms,” Computer Networks, vol. 8, pp. 199-217, 1984.
[31] L.G. Valiant, “A Bridging Model for Parallel Computation,” Comm. ACM, vol. 33, no. 8, pp. 103-111, Aug. 1990.
[32] P. Williams, “Dynamic Load Sharing within Workstation Clusters,” honors dissertation in Information Technology, Univ. of Western Australia, Oct. 1994.
[33] C. Xu and F.C.M. Lau, Load Balancing in Parallel Computers: Theory and Practice. Boston: Kluwer Academic, 1997.
[34] S. Zhou, “Performance Studies of Dynamic Load Balancing in Distributed Systems,” Tech. Report UCB/CSD 87/376, EECS, Univ. California, Berkeley, Oct. 1987.

Index Terms:
Load balancing, distributed systems, cluster computing, multiagent computing, object-based systems, communication.
Ka-Po Chow, Yu-Kwong Kwok, "On Load Balancing for Distributed Multiagent Computing," IEEE Transactions on Parallel and Distributed Systems, vol. 13, no. 8, pp. 787-801, Aug. 2002, doi:10.1109/TPDS.2002.1028436
Usage of this product signifies your acceptance of the Terms of Use.