Paradigms for the Parallelization of Branch and Bound Algorithms

Branch&Bound (B&B) algorithms represent a typical example of techniques used to solve irregularly structured problems. When porting sequential B&B applications to a network of workstations, a very popular class of MIMD distributed memory machines, several issues have to be coped with, such as sharing a global computation state and balancing workload among processors. The parallel programming paradigm to adopt has to be chosen as a compromise between simplicity and efficiency. In this paper we discuss issues in the parallelization of B&B algorithms according to two paradigms: coordinator/workers and SPMD (Single Program Multiple Data). The implementation according to the message-passing mechanisms provided by the PVM parallel programming environment is presented. The two approaches are compared qualitatively, with respect to the solutions adopted for knowledge sharing, communication, load balancing, and termination condition. Comparison is also performed quantitatively, by evaluating the performances of the two algorithms on a local area network of workstations.