Adaptive Agent Allocation for Massively Multi-agent Applications

Although distributed computing is necessary to execute massively multi-agent applications, the distribution of agents is challenging especially when the communication patterns among agents are continuously changing. This paper proposes two adaptive agent allocation mechanisms for massively multi-agent applications: one mechanism aims at minimizing agent communication cost, while the other mechanism attempts to prevent overloaded computer nodes from negatively affecting overall performance. We synthesize these two mechanisms in a multi-agent framework called Adaptive Actor Architecture (AAA). In AAA, each agent platform monitors the workload of its computer node and the communication patterns of agents executing on it. An agent platform periodically reallocates agents according to their communication localities. When an agent platform is overloaded, the platform migrates a set of agents, which have more intra-group communication than inter-group or inter-node communication, to a lightly loaded agent platform. These adaptive agent allocation mechanisms are developed as fully distributed algorithms, and they move the selected agents as a group. In order to evaluate these mechanisms, preliminary experimental results with large-scale micro UAV (Unmanned Aerial Vehicle) simulations are described.

[1]  François Charpillet,et al.  Parallel simulation of a stochastic agent/environment interaction model , 2001, Integr. Comput. Aided Eng..

[2]  Yannis Smaragdakis,et al.  J-Orchestra: Automatic Java Application Partitioning , 2002, ECOOP.

[3]  Vladimir Vlassov,et al.  Parallel Agent-Based Simulation on a Cluster of Workstations , 2003, Euro-Par.

[4]  Les Gasser,et al.  MACE3J: fast flexible distributed simulation of large, large-grain multi-agent systems , 2002, AAMAS '02.

[5]  Shigeru Chiba,et al.  A Bytecode Translator for Distributed Execution of "Legacy" Java Software , 2001, ECOOP.

[6]  Gul A. Agha,et al.  ACTORS - a model of concurrent computation in distributed systems , 1985, MIT Press series in artificial intelligence.

[7]  Michael Philippsen,et al.  JavaParty – transparent remote objects in Java , 1997 .

[8]  Myeong-Wuk Jang,et al.  Efficient Agent Communication in Multi-agent Systems , 2004, SELMAS.

[9]  Myeong-Wuk Jang On efficient communication and service agent discovery in multi-agent systems , 2004, ICSE 2004.

[10]  Courtenay T. Vaughan,et al.  Design of dynamic load-balancing tools for parallel applications , 2000, ICS '00.

[11]  Yu-Kwong Kwok,et al.  On Load Balancing for Distributed Multiagent Computing , 2002, IEEE Trans. Parallel Distributed Syst..

[12]  Gul Agha,et al.  ATSpace: a middle agent to support application oriented matchmaking and brokering services , 2004 .

[13]  Keshav Pingali,et al.  A load balancing framework for adaptive and asynchronous applications , 2004, IEEE Transactions on Parallel and Distributed Systems.

[14]  Carlos A. Varela,et al.  Load Balancing of Autonomous Actors over Dynamic Networks , 2004, HICSS.

[15]  R.K. Brunner,et al.  Adapting to load on workstation clusters , 1999, Proceedings. Frontiers '99. Seventh Symposium on the Frontiers of Massively Parallel Computation.