Non-Systematic Backtracking for Mixed Integer Programs
Total Page:16
File Type:pdf, Size:1020Kb
From: AAAI Technical Report WS-02-14. Compilation copyright © 2002, AAAI (www.aaai.org). All rights reserved. Non-Systematic Backtracking for Mixed Integer Programs Steven Prestwich Armagan Tarim Cork Constraint Computation Centre Artificial Intelligence Group University College, Cork, Ireland Department of Computer Science [email protected] University of York,York, U.K. [email protected] Abstract The aim is to solve large MIPs that combine hard optimisa- tion with few feasible solutions. The remainder of this sec- Avariety of hybrids of Constraint Programming, Arti- tion provides background material. ficial Intelligence and Operations Research techniques have given impressive results. Three recent approaches are (i) the use of relaxations in constraint systems, (ii) Propagation and relaxation non-systematic backtracking to boost the scalability of Constraint programming systems use constraint propagation constraint solvers, and (iii) non-systematic backtrack- to eliminate infeasible variable assignments, and is the tool ing to boost the scalability of branch-and-bound search. of choice for combinatorial problems in which feasible so- This paper describes a hybrid of all three approaches lutions are hard to find. Operations Research, on the other that combines non-systematic backtracking, SAT-based hand, uses more sophisticated cost reasoning to prune search inference and linear relaxation. It is intended for large MIPs that are hard for reasons of both optimisation and spaces, and to locate high-quality solutions. The two disci- feasibility. Such problems are of practical as well as plines have complementary strengths and weaknesses, and theoretical interest and we expect the hybrid to find their combination can yield results that are superior to either many applications. It is currently under development alone. Many papers have been written in the last few years and results will be reported at the workshop. on this type of hybrid approach, and here we mention just a few. Linear relaxations and propagation are combined in Introduction (Gomes & Shmoys 2002); scalability is improved by restart- Mixed integer programs (MIPs) have many practical ap- ing the search at intervals, randomised rounding is used as plications yet are among the hardest problems to solve. avalue ordering heuristic, and relaxation overheads are re- The usual approach to such problems is to apply classical duced by applying Simplex only at selected search nodes. Operations Research algorithm such as branch-and-bound, Relaxations and propagation are also combined in (Bosch & branch-and-cut and branch-and-price (Nemhauser & Wolsey Trick 2002), and relaxation overheads reduced by comput- 1988), but local search algorithms have also been used ing them only on the most important constraints. (Bokmayr (Brockmann & Decker 2000). & Kasper 1998) introduces a unifying framework, branch Avariety of CP, AI and OR techniques have recently been and infer, to describe and compare the languages of integer integrated into hybrid algorithms, sometimes with impres- linear programming and finite domain constraint program- sive results. (Gomes 2000) discusses the rich set of connec- ming, both from the viewpoint of model building and model tions between Constraint Programming (CP), Artificial In- solving. Their framework shows how integer linear pro- telligence (AI) and Operational Research (OR), focusing on gramming can be extended with symbolic constraints and approaches for dealing with hard combinatorial problems, how algorithmic techniques from integer programming can and highlighted the potential synergistic benefits. This pa- be used in combination with finite domain methods. Branch- per describes a new hybrid for MIP that combines several and-check (Thorsteinsson 2001) integrates mixed integer features: the Simplex algorithm to handle real variables, programming and constraint logic programming, encapsu- to detect inconsistency earlier, and to guide variable as- lating the traditional Bender’s decomposition and branch- signment; constraint propagation to locate feasible solutions and-bound as special cases, and utilising nogood learning. quickly; and non-systematic backtracking to boost scalabil- (Caseau & Laburthe 1995) compares propagation to integer ity to that of local search. All pairs of these features have programming, and they explain why propagation works bet- previously been combined successfully; though combining ter than integer programming on disjunctive problems. (Ro- good heuristics does not always work well, this leads us to dosek, Wallace, & Hajian 1999) presents (i) an automatic believe that a meta-hybrid of all three will also perform well. transformation of CLP programs, (ii) improvements on such transformations, and (iii) a hybrid algorithm which reduces Copyright c 2002, American Association for Artificial Intelli- the solution space of the problem by using finite domain gence (www.aaai.org). All rights reserved. propagation and a dual simplex algorithm. In (Hajian et al. 1998) a finite domain solver is used to compute a feasible chronological backtracking with random restarts. (Gomes, solution as a starting point for Simplex. In (Do & Kamb- Selman, & Kautz 1998) periodically restart chronological hampati 2000) LP relaxations are used to detect infeasibil- or intelligent backtracking with slightly randomised heuris- ity in SAT problems, and to provide seed solutions for SAT tics. Limited Discrepancy Search (Harvey 1995; Harvey & solvers. SAT propagation methods are interleaved with an Ginsberg 1995) searches the neighbourhood of a consistent incremental Simplex algorithm in (Wolfman & Weld 1999) partial assignment, trying neighbours in increasing order of to solve SAT problems with metrics. In (Focacci, Lodi, distance from the partial assignment. & Milano 1999) non-linear constraints can be used to pro- In the hybrid approach taken in this paper, a backtrack- vide lower cost bounds. A survey of combinations of con- based constraint algorithm is modified so that it is non- straint programming and optimisation techniques is given in systematic. This can be viewed as local search in a space (Hooker 2000). of consistent partial variable assignments, and demonstrably This work shows that constraint propagation and cost rea- scales like more standard local search approaches (Prest- soning can be profitably combined. Cost reasoning plays wich 2000). So far this approach has only been applied the part of a global constraint, guiding the search to useful to relatively simple propagation: forward checking on bi- regions of the search space. Constraint handling performs nary constraints (Prestwich 2002a), unit propagation for efficient local reasoning to eliminate infeasible variable as- SAT problems (Prestwich 2002c; 2000), and a generalisa- signments. tion of unit propagation to 0/1 integer programs (Prestwich 2002b). However, its integration with more powerful propa- Propagation and local search gation algorithms and other constraints is being investigated. The complementary strengths of constraint programming Other researchers have applied randomised versions of back- and local search have also been noted in many papers. Con- tracking, but unlike our approach have also aimed to pre- straint programming uses powerful propagation techniques serve completeness (Lhomme 2002; Lynce & Marques-Silva to prune search spaces, while local search uses constraints in 2002). Improved scalability is reported for these algorithms, a relatively naive way. Nevertheless, local search can often butitisunclear whether local search-like scalability can be solve much larger problems than backtrack-based constraint combined with completeness (except by using exponential systems. This has led to a variety of hybrids, and we briefly memory). survey some of these. Ahybrid of the GSAT local search algorithm and the Dynamic Backtracking algorithm (Ginsberg & McAllester Relaxation and local search 1994) increases the flexibility in choice of backtracking variable. Local Changes (Verfaillie & Schiex 1994) is a complete backtracking algorithm that uses conflict analy- As in constraint programming, the surprisingly good scal- sis to unassign variables leading to constraint violation, and ability of local search has been noted in operations re- a heuristic similar to VH that restores assignments after search. It has been successfully applied to many OR prob- backtracking. The timetabling algorithm of (Schaerf 1997) lems, but hybrids seem to be relatively rare. (Pesant & searches the space of all partial assignments. The Path- Gendreau 1996) use branch-and-bound to efficiently ex- Repair Algorithm (Jussien & Lhomme 1999) is a generalisa- plore local search neighbourhoods. (Meyer 2000) inte- tion of this approach that includes learning, allowing com- grates branch-and-bound into local search. (Meyer 1998) plete versions to be devised. The two-phase algorithm of presents an approach that relies on repair-based search and (Zhang & Zhang 1996) searches a space of partial assign- a generic method for an exhaustive enumeration of repair ments, alternating backtracking search with local search. It steps, for solving partial constraint satisfaction problems ex- can be tuned to different problems by spending more time haustively; this combines advantages of local search and ex- in either phase. (Backer et al. 1997) generate partial assign- tended branch-and-bound algorithms. ments to key variables by local search, then pass them to a Non-systematic backtracking has also been applied to constraint solver