ug[SCIP,*] Library : A Software Library for General Purpose Parallel Branch-and-Bound Algorithms

Yuji Shinano
Seminar

SCIP is a framework to solve constraint integer programs (CIPs) and can be used as a plugin based branch-and-cut framework. Through the addition of plugins a user of SCIP can develop a customized SCIP solver to solve a specific problem with a branch-and-bound algorithm. Ubiquity Generator framework (UG) is a framework to parallelize branch-and-bound based solvers on a variety of computing environments. It is a set of C++ base classes and an instantiated parallel solver by UG is named as ug[solver name, parallelization library name]. ug[SCIP, Phreads] is known as FiberSCIP, which can run on shared memory computing environments, ug[SCIP, MIP] is known as ParaSCIP, which can run on distributed memory computing environments. ug[SCIP,*] library is a software library to parallelize customized SCIP solvers. Using the ug[SCIP,*] library SCIP users can parallelize their customized SCIP solvers with little effort and can expect the parallelized solvers run on over 80,000 cores. In this talk, we introduce SCIP and UG briefly and provide examples showing how to easily parallelize customized SCIP solvers with ug[SCIP,*] library.