Coalition structure generation problems: optimization and parallelization of the IDP algorithm in multicore systems

The coalition structure generation problem is well known in the area of multi‐agent systems. Its goal is to establish coalitions between agents while maximizing the global welfare. Among the existing different algorithms designed to solve the coalition structure generation problem, DP and IDP are the ones with smaller temporal complexity. After analyzing the operation of the dynamic programming and improved dynamic programming algorithms, we have identified which are the most frequent operations and propose an optimized method. In addition, we study and implement a method for dividing the work into different threads. To describe incremental improvements of the algorithm design, we first compare performance of an improved single central processing unit core version where we obtain speedups ranging from 7 × to 11 × . Then, we describe the best resource use in a multi‐thread optimized version where we obtain an additional 7.5 × speedup running in a 12‐core machine.

[1]  Sarvapali D. Ramchurn,et al.  A Tutorial on Optimization for Multi-Agent Systems , 2014, Comput. J..

[2]  Nicholas R. Jennings,et al.  Coalition structure generation: A survey , 2015, Artif. Intell..

[3]  Sarvapali D. Ramchurn,et al.  An Anytime Algorithm for Optimal Coalition Structure Generation , 2014, J. Artif. Intell. Res..

[4]  Peter J. Stuckey,et al.  Lock-free parallel dynamic programming , 2010, J. Parallel Distributed Comput..

[5]  Jrg Arndt,et al.  Matters Computational: Ideas, Algorithms, Source Code , 2010 .

[6]  Nicholas R. Jennings,et al.  A distributed algorithm for anytime coalition structure generation , 2010, AAMAS.

[7]  Herb Sutter,et al.  The Free Lunch Is Over A Fundamental Turn Toward Concurrency in Software , 2013 .

[8]  Sarvapali D. Ramchurn,et al.  On coalition formation with sparse synergies , 2012, AAMAS.

[9]  Francisco Almeida,et al.  From the Theory to the Tools: Parallel Dynamic Programming , 2000, Concurr. Pract. Exp..

[10]  Sarit Kraus,et al.  Methods for Task Allocation via Agent Coalition Formation , 1998, Artif. Intell..

[11]  Sarvapali D. Ramchurn,et al.  Anytime Optimal Coalition Structure Generation , 2007, AAAI.

[12]  Frank Ruskey,et al.  Generating Combinations by Prefix Shifts , 2005, COCOON.

[13]  Sandip Sen,et al.  Searching for optimal coalition structures , 2000, Proceedings Fourth International Conference on MultiAgent Systems.

[14]  Tuomas Sandholm,et al.  Anytime coalition structure generation: an average case study , 1999, AGENTS '99.

[15]  S. Rassenti,et al.  A Combinatorial Auction Mechanism for Airport Time Slot Allocation , 1982 .

[16]  Shou-Hsuan Stephen Huang,et al.  Parallel Dynamic Programming , 1994, IEEE Trans. Parallel Distributed Syst..

[17]  Nicholas R. Jennings,et al.  Coalition Structure Generation : Dynamic Programming Meets Anytime Optimization , 2008 .

[18]  Nicholas R. Jennings,et al.  An improved dynamic programming algorithm for coalition structure generation , 2008, AAMAS.

[19]  David M. Nicol,et al.  Automated Parallelization of Discrete State-Space Generation , 1997, J. Parallel Distributed Comput..

[20]  Onn Shehory,et al.  Anytime Coalition Structure Generation with Worst Case Guarantees , 1998, AAAI/IAAI.

[21]  Victor R. Lesser,et al.  Coalitions Among Computationally Bounded Agents , 1997, Artif. Intell..

[22]  Brendan D. McKay,et al.  An Algorithm for Generating Subsets of Fixed Size With a Strong Minimal Change Property , 1984, Inf. Process. Lett..