Chapter 2 Preliminaries: an overview of optimisation techniques
2.9 The integration of CP and OR with LS
2.9.1 Integration of two exact methods
The combination of two exact methods, e.g. OR and CP, is a natural idea, because both methods can be used to solve the same problems, and they have complementary strengths and weaknesses [5]. Many different combinations have been studied in the past. They range from the specialized hybrid algorithms for specific problems up to the general integration in the two fields. The successful results have led to an annual international workshop on “The Integration of Artificial Intelligence and Operations Research Techniques in Constraint Programming for Combinatorial Optimisation Problems” (CP-AI-OR), started in 1999, and became a conference in 2004. We refer to [5, 60, 61] for a collection of successful combinations.
OR techniques consist of a large set of methods and solution techniques for combinatorial problems. This set includes for example the techniques graph theory, (Integer) Linear Programming and semi-definite programming, etc. In this thesis, we focus on combining CP and IP/LP, one of the most efficient combinations in hybrid optimisation.
The first form of the combination of CP with IP is CP based column generation or Branch-and-Price, where the subproblem is solved with CP. We refer this combination as CP-CG.
The CP-CG framework has been independently introduced by Junker et al. [42] and Yunes et al. [43] in two research groups both working on the crew management problems. In the last decade, the CP-CG framework has been applied to several different applications, such as crew assignment, bin packing, and graph coloring, etc. Here we generally categorise the application of it in two groups: basic approaches and enhanced methods. The basic approaches mainly are concerned with the modeling aspect of the problem while the enhanced methods are concerned with more advanced issues such as accelerated techniques and convergence issue of column generation.
Basic CP-CG
The pricing subproblem can be modeled in CP paradigm and the CP techniques can be used as a black box solver to solve the pricing subproblem.
In Yunes et al. [43], for the crew management problem, the master problem is formulated as a set partition problem, where each column of matrix A in (2-12) represents a roster of a crew member over a given planning horizon. The pricing subproblem is formulated as a constrained shortest path problem. The subproblem is usually solved by dynamic programming which is quite time consuming for the auxiliary graph model [43]. The CP techniques as an alternative are used to model and solve the pricing subproblem with finite domain integer variables and two global constraints: element and atmost. The first fail variable selection heuristic is the most effective method for this problem.
In Gabteni & Gronkvist [62], the problem is to find the minimum cost assignment of each aircraft to a set of flights. The master problem is formulated as a set partition
problem, where each column of matrixAin (2-12) represents an admissible sequence of flights. The partitioning constraints force each flight to be assigned to a unique aircraft. The pricing subproblem is defined over an acyclic connection network, where each possible flight to flight connection is an arc between two flights. The pricing subproblem is efficiently solved as a standard resource constrained shortest path problem. CP is used as a preprocessing algorithm to eliminate the infeasible arcs of the network to reduce the size of feasible solution.
In Easton et al. [63] for the traveling tournament problem (i.e. scheduling of games that involves the minimum traveled distances among team venues), a parallel solving procedure is proposed. The master problem is formulated as a set partition problem to force each team to be assigned to a single tour. The pricing subproblem consists of generating tours for each team that satisfy the sequencing constraint over home and away games. The parallel algorithm is used to check a pool of columns if the negative reduced cost columns are present. If they are present, a fixed number of columns are selected and added to the restricted master problem. Otherwise, the pool is refilled by CP column generator.
Table 2.2 Summarizing other applications which apply basic CP based CG in the literature [64]
Application References
Urban Transit Crew Management Yunes et al.[43, 65]
Airline Planning Gronkvist [66, 67]
Gabtebi and Gronkvist [62] Traveling Tournament Problems Easton et al. [63]
Two Dimensional Bin Packing Pisinger and Sigurd [68] Airline Crew Assignment Junker et al. [42]
Fahle et al. [45] Sellmann et al. [69] Hansen and Tomas [70] Vehicle Routing Problem with Time Windows Rousseau et al. [71] Employee Timetabling Demassey et al. [44]
Enhanced CP-CG
The bottleneck of the column generation algorithm is usually the solution to the pricing subproblem. A common technique to speed up the solution to the CP pricing subproblem is to use optimisation constraints that reduce the domain of each variable by both feasibility and optimality reasoning.
In Fahle et al. [45], the CP-CG is applied to solve an airline crew assignment problem (i.e. assigning each crew member of an airline to a set of activities). The pricing subproblem consists of generating rosters that satisfy a set of complex rules and regulations. The pricing subproblem is formulated as a CP model and solved by a CP solver. The authors propose a new global constraint with cost, called path-constraint to improve the efficiency of the subproblem solving. The effects of an incremental implementation of filtering algorithms developed for path-constraint are significant. The path-constraint is used together with other constraints to guarantee the feasibility of the generated rosters.
In Demassey et al. [44], the CP-CG approach is applied to an employee timetabling problem. The problem assigns a given set of tasks to a number of employees and minimizes the number of working employees. The master problem is formulated as a set partition problem, where the columns of matrixAin (2-12) represent feasible employee timetables. The pricing subproblem generates the minimum reduced cost timetable, defended as a sequence of activities satisfying ordering and cardinality constraints. The CP use cost-regular global constraint to model the pricing subproblem and a cost based domain filtering algorithm is designed to update both the upper bound and lower bound of the cost variables.
In solving large-scale IP problems by column generation, it becomes a critical issue to balance the computation time required to solve the LP relaxation with that required to compute an integer solution. In the context of CP-CG, this trade-off can be achieved by using special heuristics for solving the pricing subproblem.
The Lowest Reduced-Cost First (LRF) is a heuristic introduced by Fahle et al. [45] that consists of ordering the variables by decreasing reduced cost. The purpose of this strategy is to speed up the solution to the LP relaxation of the master problem by trying to generate columns that are good in terms of reduced cost. Unfortunately, this strategy is effective only during the first iterations of column generation, and becomes time consuming when the restricted master problem approaches its optimal value.
Other two labeling heuristics are introduced by Gendron et al.[72], the so-called dual strategy and the master strategy. The first strategy, dual strategy is similar to the LRF heuristic; it also sorts the variables by their reduced cost. Different from LRF, it considers the fact that CP-CG tends to generate similar columns. So it introduces randomization by a pseudo-random numberito choose not the smallest variable but the variable having the ith smallest reduced cost. This approach is concerned with the diversity of the columns. The master strategy is a heuristic that takes into account the constraints of the master problem to select the next variable to be assigned. The intuition is to generate columns that shall positively contribute to the solution to the integer master problem. For instance, when the master problem is a set partition problem, it is advantageous to generate columns that have nonzero coefficients uniformly distributed over each row. To achieve this aim, the master strategy first enumerates how many columns cover each row, and then it generates a column that considers the less covered rows. The computational results show that both the dual and the master strategy are useful. However, a combination of the two strategies could be even more effective and is worth investigating in future as suggested by the authors.
In CP-CG approach, slow convergence is another important issue affecting the performance of the approach. The slow convergence is partially due to the generation of the similar columns, particularly frequent in CP rather than other techniques [64]. The generation of very similar columns is mainly related with the standard CP search strategy, that is, depth first search.
In Sellmann et al. [69], to obtain diverse column, the problem dependent "diversity constraints" are added. These constraints are used to limit the times that a row is covered by every column. This idea is similar to the master strategy introduced above [72]. Limited discrepancy search is used as tree traverse strategy in a pure CP model to obtaindiversesolution to the pricing subproblem.
In Rousseau et al. [73], a preliminary computational study on the vehicle routing problem with time windows showed that indeed the limited discrepancy search has an effect on the generation ofdiversesolution to the problem.
In Gualandi [74], the author proposes a shuffled static order of the decision variables to generate diversecolumns: at each iteration of column generation, before the constraint solver begins the tree search, the vector of the decision variables is shuffled. This shuffled static order can be viewed as an implicit random breaking-ties strategy. The effect of shuffling is shown that it can dramatically reduces the number of iterations, since it produces distinct columns as the consequence of the constraint propagations.