This chapter focuses on the recent improvements in solution search that are based on learning. We will describe some learning methods applied in areas such as mixed-integer programming, constraint programming, and those used for satisfaction problems. Instead of being exhaustive, we will concentrate on some of the most exciting advances. In particular, we will focus on pseudo-cost strategies used in general-purpose mixed-integer programming solvers, on the strategy learning used for automatic search in constraint programming, and on no-good generation in SAT solvers. Several examples are given to illustrate the effectiveness of learning in these areas. Some practical results are also given using the integration of different learning techniques.
We present a simple modification to the idea of impact-based search which has proven highly effective for several applications. Impacts measure the average reduction in search space due to propagation after a variable assignment has been committed. Rather than considering the mean reduction only, we consider the idea of incorporating the variance in reduction. Experimental results show that using variance can result in improved search performance.
The steel mill slab design problem from the CSPLIB is reallife problem from the steel industry. Finding optimal solutions to this problem is difficult. Existing constraint programming approaches can solve problems up to 30 orders. We propose a strong constraint programming model based on logical and global constraints. By designing a specific strategy for variable and value selection, we are able to solve instances having more than 70 orders to optimality using depth-first search. Injecting this strategy into a large neighborhood search, we are able to solve the real-life instance of the CSPLIB having 111 orders in just 3 seconds.
A key feature of constraint programming is the ability to design specific search strategies to solve problems. On the contrary, integer programming solvers have used efficient general-purpose strategies since their earliest implementations. We present a new general purpose search strategy for constraint programming inspired from integer programming techniques and based on the concept of the impact of a variable. The impact measures the importance of a variable for the reduction of the search space. Impacts are learned from the observation of domain reduction during search and we show how restarting search can dramatically improve performance. Using impacts for solving multiknapsack, magic square, and Latin square completion problems shows that this new criteria for choosing variables and values can outperform classical general-purpose strategies.
A hybrid technique using constraint programming and linear programming is applied to the problem of scheduling with earliness and tardiness costs. The linear model maintains a set of relaxed optimal start times which are used to guide the constraint programming search heuristic. In addition, the constraint programming problem model employs the strong constraint propagation techniques responsible for many of the advances in constraint programming for scheduling in the past few years. Empirical results validate our approach and show, in particular, that creating and solving a subproblem containing only the activities with direct impact on the cost function and then using this solution in the main search, significantly increases the number of problems that can be solved to optimality while significantly decreasing the search time.
Efforts aimed at combining operations research and constraint programming have become increasingly prominent and successful in the last few years. It is now widely recognized that integration, e.g., inference in the form of constraint propagation and relaxation in the form of linear programming, can yield substantial results. In this paper, we argue the benefits of constraint programming's global constraints as a basis for such an integration and discuss the advantages along with some examples. We illustrate the integration on the global cardinality structure, on piecewise linear functions, on variable subscripts, on the cycle structure and on resource constraints. Each example is completed with a case study.
this paper we argue the benets of global constraintsas a basis for such an integration. We demonstrate the advantages of modellingwith global constraints, explain their operational benets and illustrate thiswith a series of case studies.(Integer Programming, Constraint Programming, Global Constraints, Integration,Hybrid Methods)1 IntroductionSince its origins, Constraint Programming (CP) has integrated algorithms fromdierent areas [25] such as Mathematical Programming, Networks...
Constraint programming offers a variety of modeling objects such as logical and global constraints, that lead to concise and clear models for expressing combinatorial optimization problems. We propose a way to provide a linear formulation of such a model and detail, in particular, the transformation of some global constraints. An automatic procedure for producing and updating formulations has been implemented and we illustrate it on combinatorial optimization problems.
Efforts aimed at combining Operations Research and Constraint Programming have become increasingly prominent and successful in the last few years. It is now widely recognized that integrating inference in the form of constraint propagation and relaxation in the form of linear programming can yield substantial results. In this paper we argue the benefits of global constraints as a basis for such an integration. We demonstrate the advantages of modeling with global constraints, explain their operational benefits and illustrate this with a series of case studies.
Many cooperative systems merge a linear constraint solver and a domain reduction solver over finite domains or intervals. The latter handles a high level formulation of the problem and passes domain variable information. The former handles a linear formulation of the problem and computes a relaxed optimal solution. This paper proposes an extension to this framework called tight cooperation where the linear formulation of a high level constraint is restated in a way, as domains are reduced. This approach is illustrated on piecewise linear optimization. Experimental results are given. These show that tight cooperation can give better results than classical. cooperation and mixed-integer programming techniques.
This article introduces meta linear constraints in constraint logic programming and addresses the related problem of incremental entailment of linear constraint. We present first the syntax and semantics of our meta-constraints. After a brief overview of linear constraint solving, two forms for ask constraints are introduced that simplify the entailment test. Some properties and entailment algorithms are then described. Meta linear constraints have been integrated to the CLP language Athena. Practical experiments with optimization problems show a substantial reduction of the search tree and of the computation time.
This article presents a novel implementation of constraint logic programming language over linear real constraints. Contrary to most existing implementations winch use the tableau method and trailing, the new system, called Athena, is based on a revised simplex algorithm over bounded variables supporting both constraint addition and constraint removal. Athena is the first, implementation of CLP(Rlin) whose space requirement for the numerical solver is independent of the number of choice points. In addition, on standard CLP(Rlin) benchmarks, Athena produces significant time speed-ups (up to a factor of 7) and memory reduction (up to a factor of 23) compared to existing implementations. These speed-ups can be even more substantial on large sparse problems. The main technical contributions underlying these results are a number of implementation techniques to obtain an efficient dynamic revised simplex method.
This article presents a novel implementation of constraint logic programming language over linear real constraints. Contrary to most existing implementations which use the tableau method and trailing, the new system, called Athena, is based on a revised simplex algorithm over bounded variables supporting both constraint addition and constraint removal. Athena is the first implementation of CLP (7£|, n) whose space requirement for the numerical solver is independent of the number of choice points. In addition, on standard CLP (7Ziin) benchmarks, Athena produces significant time speed-ups (up to a factor of 7) and memory reduction (up to a factor of 23) compared to existing implementations. These speed-ups can be even more substantial on large sparse problems. The main technical contributions underlying these results are a number of implementation techniques to obtain an efficient dynamic revised simplex method.
This paper deals with the incremental detection of implicit equalities using the revised simplex method. This algorithm is more efficient and more suitable to practical problems than the tableau method usually applied in constraint logic programming. We describe and discuss the adaptation to the revised simplex of three approaches: the CLP (R), the Prolog III, and the quasi-dual one. All of these have been integrated into the constraint logic programming language Athena based on a revised simplex method over exact-precision rationals. This system is used to compare these methods on a set of typical CLP problems over linear constraints.