Litcius/Paper detail

BiqBin: A Parallel Branch-and-bound Solver for Binary Quadratic Problems with Linear Constraints

Nicolò Gusmeroli, Timotej Hrga, Borut Lužar, Janez Povh, Melanie Siebenhofer, Angelika Wiegele

2022ACM Transactions on Mathematical Software20 citationsDOIOpen Access PDF

Abstract

We present BiqBin, an exact solver for linearly constrained binary quadratic problems. Our approach is based on an exact penalty method to first efficiently transform the original problem into an instance of Max-Cut, and then to solve the Max-Cut problem by a branch-and-bound algorithm. All the main ingredients are carefully developed using new semidefinite programming relaxations obtained by strengthening the existing relaxations with a set of hypermetric inequalities, applying the bundle method as the bounding routine and using new strategies for exploring the branch-and-bound tree. Furthermore, an efficient C implementation of a sequential and a parallel branch-and-bound algorithm is presented. The latter is based on a load coordinator-worker scheme using MPI for multi-node parallelization and is evaluated on a high-performance computer. The new solver is benchmarked against BiqCrunch, GUROBI, and SCIP on four families of (linearly constrained) binary quadratic problems. Numerical results demonstrate that BiqBin is a highly competitive solver. The serial version outperforms the other three solvers on the majority of the benchmark instances. We also evaluate the parallel solver and show that it has good scaling properties. The general audience can use it as an on-line service available at http://www.biqbin.eu .

Topics & Concepts

SolverBranch and cutComputer scienceBranch and boundBenchmark (surveying)Quadratic programmingQuadratic equationParallel computingBounding overwatchUpper and lower boundsBinary numberMathematical optimizationLinear programmingAlgorithmMathematicsGeodesyGeometryMathematical analysisGeographyArithmeticArtificial intelligenceAdvanced Optimization Algorithms ResearchComplexity and Algorithms in GraphsOptimization and Search Problems