Distributed Load Balancing for Parallel Agent-Based Simulations

We focus on agent-based simulations where a large number of agents move in the space, obeying to some simple rules. Since such kind of simulations are computational intensive, it is challenging, for such a contest, to let the number of agents to grow and to increase the quality of the simulation. A fascinating way to answer to this need is by exploiting parallel architectures. In this paper, we present a novel distributed load balancing schema for a parallel implementation of such simulations. The purpose of such schema is to achieve an high scalability. Our approach to load balancing is designed to be lightweight and totally distributed: the calculations for the balancing take place at each computational step, and in?uences the successive step. To the best of our knowledge, our approach is the ?rst distributed load balancing schema in this context. We present both the design and the implementation that allowed us to perform a number of experiments, with up-to 1, 000, 000 agents. Tests show that, in spite of the fact that the load balancing algorithm is local, the workload distribution is balanced while the communication overhead is negligible.

[1]  Craig W. Reynolds Flocks, herds, and schools: a distributed behavioral model , 1998 .

[2]  Gennaro Cordasco,et al.  Some considerations on the design of a P2P infrastructure for massive simulations , 2009, 2009 International Conference on Ultra Modern Telecommunications & Workshops.

[3]  Gennaro Cordasco,et al.  Experiences with Mesh-like computations using Prediction Binary Trees , 2009, Scalable Comput. Pract. Exp..

[4]  Rahul Narain,et al.  Aggregate dynamics for dense crowd simulation , 2009, SIGGRAPH 2009.

[5]  Adrien Treuille,et al.  Continuum crowds , 2006, ACM Trans. Graph..

[6]  Hideki Tai,et al.  A platform for massive agent-based simulation and its evaluation , 2007, AAMAS '07.

[7]  Bo Zhou,et al.  Parallel simulation of group behaviors , 2004, Proceedings of the 2004 Winter Simulation Conference, 2004..

[8]  Michael J. Quinn,et al.  PARALLEL IMPLEMENTATION OF THE SOCIAL FORCES MODEL , 2003 .

[9]  Frank Mueller,et al.  Large-scale multi-dimensional document clustering on GPU clusters , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing (IPDPS).

[10]  Claudia Fohry,et al.  Parallelizing a Real-Time Steering Simulation for Computer Games with OpenMP , 2007, PARCO.

[11]  Steve Plimpton,et al.  Fast parallel algorithms for short-range molecular dynamics , 1993 .

[12]  Anthony Steed,et al.  Partitioning crowded virtual environments , 2003, VRST '03.

[13]  Laxmikant V. Kalé,et al.  Hierarchical Load Balancing for Charm++ Applications on Large Supercomputers , 2010, 2010 39th International Conference on Parallel Processing Workshops.

[14]  Peter Eberhard,et al.  Load Balanced Parallel Simulation of Particle-Fluid DEM-SPH Systems with Moving Boundaries , 2007, PARCO.

[15]  Vittorio Scarano,et al.  Massive Simulation using GPU of a distributed behavioral model of a flock with obstacle avoidance , 2004, VMV.

[16]  Ümit V. Çatalyürek,et al.  Hypergraph-based Dynamic Load Balancing for Adaptive Scientific Computations , 2007, 2007 IEEE International Parallel and Distributed Processing Symposium.

[17]  Bin Cong,et al.  Scalable Parallel Computing: Technology, Architecture, Programming , 1999, Scalable Comput. Pract. Exp..

[18]  Miguel Lozano,et al.  A comparative study of partitioning methods for crowd simulations , 2010, Appl. Soft Comput..

[19]  Bernard Chazelle,et al.  Natural algorithms , 2009, SODA.

[20]  Craig W. Reynolds Steering Behaviors For Autonomous Characters , 1999 .

[21]  Craig W. Reynolds Big fast crowds on PS3 , 2006, Sandbox '06.