Pseudo-Boolean Heuristics for 0-1 Integer Linear Programming

Many Integer Linear Programming (ILP) problems contain significant subproblems exclusively composed of 0-1 (binary) variables. Much effort has gone in to special solvers for 0-1 ILP, as well as specialized versions of 0-1 ILP. The boolean satisfiability problem (SAT), is fundamental to many fields, including Artificial Intelligence, Formal Verification, and Computer Aided Design, and can be viewed as a specialized 0-1 ILP problem. Recent developments in cutting plane generation for the SAT problem has resulted in large performance improvements, which has resulted in the SAT problem being much more widely applied. One such area is Pseudo-Boolean Programming (PBP), which is a somewhat less restricted variant of 0-1 ILP. Recent PBP solvers have found SAT based techniques to be of use, which is interesting, given the very restricted form of the SAT problem. However, not enough attention has been paid to how SAT based techniques for PseudoBoolean Programming complement ILP solvers such as CPLEX. In this work, we explore the use of a modern PBP solver, Minisat+, integrated as a heuristic into CPLEX. Although some papers on PBP solvers do compare thmeselves against modern ILP solvers like CPLEX and Xpress-MP, overall there is a paucity of comparison between ILP and PBP solvers in the literature. This is likely due to the relative isolation between the SAT community, which evolved out of Computer Science theory and Artificial Intelligence, and the Operations Research community, which views ILP problems as a complication of Linear Programming. The work on SAT based PBP solvers recently has been connected with the SAT community, for example, the 2005 PB Competition was held as a track of the 2005 SAT Competition [1]. The 2005 PB Competition did not even include any ILP solvers, since it was focused on SAT-based solvers. This is strange, since ILP solvers do very well when directly benchmarked against PBP solvers, for example [2], [3], [4].

[1]  Karem A. Sakallah,et al.  Pueblo: A Hybrid Pseudo-Boolean SAT Solver , 2006, J. Satisf. Boolean Model. Comput..

[2]  Lintao Zhang,et al.  Searching for truth: techniques for satisfiability of boolean formulas , 2003 .

[3]  Niklas Sörensson,et al.  Translating Pseudo-Boolean Constraints into SAT , 2006, J. Satisf. Boolean Model. Comput..

[4]  Olivier Roussel,et al.  A Translation of Pseudo Boolean Constraints to SAT , 2006, J. Satisf. Boolean Model. Comput..

[5]  Vasco M. Manquinho,et al.  The First Evaluation of Pseudo-Boolean Solvers (PB'05) , 2006, J. Satisf. Boolean Model. Comput..

[6]  Celso C. Ribeiro,et al.  Multiprocessor scheduling under precedence constraints: Polyhedral results , 2006, Discret. Appl. Math..

[7]  J. P. Marques,et al.  GRASP : A Search Algorithm for Propositional Satisfiability , 1999 .

[8]  K. Sakallah,et al.  Generic ILP versus specialized 0-1 ILP: an update , 2002, ICCAD 2002.

[9]  Vasco M. Manquinho,et al.  Effective lower bounding techniques for pseudo-Boolean optimization [EDA applications] , 2005, Design, Automation and Test in Europe.

[10]  A. Kuehlmann,et al.  A fast pseudo-Boolean constraint solver , 2005, Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451).

[11]  Niklas Sörensson,et al.  An Extensible SAT-solver , 2003, SAT.