Alps: A Framework for Implementing Parallel Tree Search Algorithms

ALPS is a framework for implementing and parallelizing tree search algorithms. It employs a number of features to improve scalability and is designed specifically to support the implementation of data intensive algorithms, in which large amounts of knowledge are generated and must be maintained and shared during the search. Implementing such algorithms in a scalable manner is challenging both because of storage requirements and because of communications overhead incurred in the sharing of data. In this abstract, we describe the design of ALPS and how the design addresses these challenges. We present two sample applications built with ALPS and preliminary computational results.

[1]  A. Land,et al.  An Automatic Method for Solving Discrete Programming Problems , 1960, 50 Years of Integer Programming.

[2]  Paolo Toth,et al.  Knapsack Problems: Algorithms and Computer Implementations , 1990 .

[3]  Arie de Bruin,et al.  Towards a taxonomy of parallel branch and bound algorithms , 1992 .

[4]  Vipin Kumar,et al.  Parallel search algorithms for discrete optimization problems , 1993, System Modelling and Optimization.

[5]  Dominik Henrich,et al.  Initialization of Parallel Branch-and-bound Algorithms , 1993 .

[6]  Laxmikant V. Kalé,et al.  A load balancing strategy for prioritized execution of tasks , 1993, [1993] Proceedings Seventh International Parallel Processing Symposium.

[7]  Vipin Kumar,et al.  Scalable Load Balancing Techniques for Parallel Computers , 1994, J. Parallel Distributed Comput..

[8]  Per S. Laursen Can Parallel Branch and Bound without Communication Be Effective? , 1994, SIAM J. Optim..

[9]  Vijay P. Kumar,et al.  Analyzing Scalability of Parallel Algorithms and Architectures , 1994, J. Parallel Distributed Comput..

[10]  Martin W. P. Savelsbergh,et al.  MINTO, a mixed INTeger optimizer , 1994, Oper. Res. Lett..

[11]  Marc Feeley,et al.  Using Multilisp for solving constraint satisfaction problems: An application to nucleic acid 3D structure determination , 1994, LISP Symb. Comput..

[12]  Bernard Gendron,et al.  Parallel Branch-and-Branch Algorithms: Survey and Synthesis , 1994, Oper. Res..

[13]  Yuji Shinano,et al.  A generalized utility for parallel branch and bound algorithms , 1995, Proceedings.Seventh IEEE Symposium on Parallel and Distributed Processing.

[14]  E. Balas,et al.  Mixed 0-1 Programming by Lift-and-Project in a Branch-and-Cut Framework , 1996 .

[15]  Salah Dowaji,et al.  Building a parallel branch and bound library , 1996, Solving Combinatorial Optimization Problems in Parallel.

[16]  Afonso Ferreira,et al.  Parallel best-first branch-and-bound in discrete optimization: a framework , 1995, Solving Combinatorial Optimization Problems in Parallel.

[17]  Panos M. Pardalos,et al.  SCOOP: Solving Combinatorial Optimization Problems in Parallel , 1996, Solving Combinatorial Optimization Problems in Parallel.

[18]  G. Mitra,et al.  A Distributed Processing Algorithm for Solving Integer Programs Using a Cluster of Workstations , 1997, Parallel Comput..

[19]  Jeff Linderoth,et al.  Topics in parallel integer optimization , 1998 .

[20]  Martin W. P. Savelsbergh,et al.  An Updated Mixed Integer Programming Library: MIPLIB 3.0 , 1998 .

[21]  Marco Platzner,et al.  Design and Implementation of a Parallel Constraint Satisfaction Algorithm , 1998 .

[22]  Peter Sanders Tree Shaped Computations as a Model for Parallel Applications , 1998 .

[23]  Cyril Fonlupt,et al.  Data-Parallel Load Balancing Strategies , 1998, Parallel Comput..

[24]  Alexander Martin Integer Programs with Block Structure , 1999 .

[25]  Laurence A. Wolsey,et al.  bc–opt: a branch-and-cut code for mixed integer programs , 1999, Math. Program..

[26]  W. Gropp,et al.  Using MPI-2nd Edition , 1999 .

[27]  Cynthia A. Phillips,et al.  PICO: An Object-Oriented Framework for Branch and Bound , 2000 .

[28]  Michael Jünger,et al.  The ABACUS system for branch‐and‐cut‐and‐price algorithms in integer programming and combinatorial optimization , 2000, Softw. Pract. Exp..

[29]  Teodor Gabriel Crainic,et al.  Branch-and-bound parallelization strategies applied to a depot location and container fleet management problem , 2000, Parallel Comput..

[30]  Qun Chen,et al.  FATCOP: A Fault Tolerant Condor-PVM Mixed Integer Programming Solver , 2000, SIAM J. Optim..

[31]  Qun Chen,et al.  FATCOP 2.0: Advanced Features in an Opportunistic Mixed Integer Programming Solver , 2001, Ann. Oper. Res..

[32]  Cynthia A. Phillips,et al.  Pico: An Object-Oriented Framework for Parallel Branch and Bound * , 2001 .

[33]  Matthew J. Saltzman,et al.  Parallel branch, cut, and price for large-scale discrete optimization , 2003, Math. Program..

[34]  R. Lougee-Heimer,et al.  The Common Optimization INterface for Operations Research: Promoting open-source software in the operations research community , 2003 .

[35]  Matthew J. Saltzman,et al.  A Library Hierarchy for Implementing Scalable Parallel Search Algorithms , 2004, The Journal of Supercomputing.