In many real-life optimisation problems, there are multiple interacting components in a solution. For example, different components might specify assignments to different kinds of resource. Often, each component is associated with different sets of soft constraints, and so with different measures of soft constraint violation. The goal is then to minimise a linear combination of such measures. This paper studies an approach to such problems, which can be thought of as multiphase exploitation of multiple objective-/value-restricted submodels. In this approach, only one computationally difficult component of a problem and the associated subset of objectives is considered at first. This produces partial solutions, which define interesting neighbourhoods in the search space of the complete problem. Often, it is possible to pick the initial component so that variable aggregation can be performed at the first stage, and the neighbourhoods to be explored next are guaranteed to contain feasible solutions. Using integer programming, it is then easy to implement heuristics producing solutions with bounds on their quality. Our study is performed on a university course timetabling problem used in the 2007 International Timetabling Competition, also known as the Udine Course Timetabling Problem. In the proposed heuristic, an objective-restricted neighbourhood generator produces assignments of periods to events, with decreasing numbers of violations of two period-related soft constraints. Those are relaxed into assignments of events to days, which define neighbourhoods that are easier to search with respect to all four soft constraints. Integer programming formulations for all subproblems are given and evaluated using ILOG CPLEX 11. The wider applicability of this approach is analysed and discussed.
Deep Dive into Decomposition, Reformulation, and Diving in University Course Timetabling.
In many real-life optimisation problems, there are multiple interacting components in a solution. For example, different components might specify assignments to different kinds of resource. Often, each component is associated with different sets of soft constraints, and so with different measures of soft constraint violation. The goal is then to minimise a linear combination of such measures. This paper studies an approach to such problems, which can be thought of as multiphase exploitation of multiple objective-/value-restricted submodels. In this approach, only one computationally difficult component of a problem and the associated subset of objectives is considered at first. This produces partial solutions, which define interesting neighbourhoods in the search space of the complete problem. Often, it is possible to pick the initial component so that variable aggregation can be performed at the first stage, and the neighbourhoods to be explored next are guaranteed to contain feasible
There has recently been considerable progress in the development of mixed integer programming solvers (Nemhauser and Wolsey, 1988;Johnson et al., 2000;Bixby et al., 2004). To a considerable extent, this progress is due to the introduction of new primal and improvement heuristics (Fischetti and Lodi, 2003;Fischetti et al., 2005;Danna et al., 2005;Berthold, 2007a). These methods can be said to "dive" into a particular region of the search space in order to explore it intensely. This is intended to restrict and simplify the search space so that the sub-instance is easier to solve. Currently, diving heuristics are run only once the initial linear programming relaxation is solved: Polynomial-time reduction strategies (Lin, 1965) use the relaxed solution to identify a subset of variables whose values should be fixed. Typically, and inevitably, the dive will remove the optimal solutions; the optimum of the reduced instance is not necessarily optimal in the original instance. It is hoped, nevertheless, that improving integer feasible solutions can still be extracted from solutions of the modified instance. Despite substantial recent progress, we believe that there is still considerable scope for further work in this general direction.
The approach we propose is based on the observation that there is a complex structure to many real-world problems. The objective function is usually highly structured in itself, and hence not best thought of as the generic c T x form, which is the usual starting point of theoretical analyses. In many instances, the overall objective function is a linear combination of many disparate terms with each term representing a total penalty for some unwanted structure within a possibly small part of a solution, or profit from some desirable structure. Furthermore, the different terms in the objective are rarely equally hard to handle. Some can be relatively easy, but some terms can be troublesome; representing them can require a large number of auxiliary variables. For example, some term might well contain a penalty that uses a “sum of absolute values” or “max of a max” structure that can require many extra variables to compute. Hence, the first ingredient of our approach is to generate sub-instances by selectively keeping some terms in the objective. Which terms should be kept in the objective, will become clearer once we sketch out the rest of our approach.
The second ingredient is the aggregation of variables: Defining a new variable to be some linear or simple non-linear function of existing variables, such as the maximum of a small subset. In many cases, a human expert inspecting the sub-instance would suggest that particular aggregations of variables would allow it to be rewritten into a form that is much easier to solve. Current diving heuristics, however, do not perform any aggregations that are specific to the diving, despite the potential to greatly reduce the number of variables and, furthermore, to do so in a manner that is quite different than reductions by means of fixing values of variables. We distinguish different potential intended usages of aggregation as follows:
• Equivalence-based. The new variable is ’logically equivalent to the old variables’ in the sense that it can be used to replace them, and still preserve optimality and validity. This is the type of aggregation that is performed in preprocessing.
• Validity-based. The new aggregate variable is not intended to replace the old variables fully: They either supplement the original ones, or can be used to provide valid cuts and valid lower bounds.
• Solution-based. The new aggregate variable is not intended to replace the old variables fully: They either supplement the original ones, or can be used to provide valid solutions (upper bounds). This, in a certain sense, can be thought of as the dual of validity-based aggregation.
This concept of validity-based aggregation underlies many of the constructions in this paper.
Finally, current diving heuristics seem to have linear programming relaxation as the input and (possibly) an integer feasible solution as the output.
We suggest a different approach, (possibly) producing integer feasible solutions together with lower bounds for the original instance, without utilising its linear programming relaxation. This makes it possible to run the diving heuristic prior to computing the first linear programming relaxation of the original instance and improve the performance of subsequent cut generation. In step one of our approach, a much smaller (“surface”) instance of integer programming is derived by picking suitable components of the original instance and applying the validity-based aggregation introduced above. By solving this instance, we obtain a valid lower bound for the original instance, in addition to a feasible input to the second step. In step two, we dive into a neighbourhood obtained by reducing the feasible solution of step one. Notice that the (“dive”) neighbo
…(Full text truncated)…
This content is AI-processed based on ArXiv data.