Unimodular probing for minimal perturbance in dynamic ... - CiteSeerX

2 downloads 1032 Views 229KB Size Report
established approaches: backtrack search with local consistency and spe- cialised heuristics, and ... as constraint propagation, with linear programming (LP) optimisation. It relies ... performed by the CP engine in our implementation of unimodular probing was ... not necessary for guaranteed LP solution integrality (eg. 12]).
Unimodular probing for minimal perturbance in dynamic resource feasibility problems Hani El Sakkout, Thomas Richards, Mark G. Wallace IC-Parc, Imperial College, London SW7 2AZ, United Kingdom. Email: fhhe,mgwg doc.ic.ac.uk

Abstract. This paper describes unimodular probing { a new technique

that has been used to solve a class of dynamic scheduling problems. In benchmarks a unimodular probing algorithm has outperformed two wellestablished approaches: backtrack search with local consistency and specialised heuristics, and mixed integer programming (MIP). The problems amenable to unimodular probing involve disjunctive constraints, discrete variables, and a linear optimisation function. In addition, some of the constraints should be totally unimodular { for example, temporal precedence and distance constraints. Problems in this class are dicult for CSP techniques because of the optimisation requirement, and for MIP because of the number of discrete (integer) variables. Our studies have focussed on DCSPs, with an optimisation criterion of minimal perturbance to an existing solution. Unimodular probing builds on an ordinary backtracking repair algorithm with constraint propagation. However, by contrast with previous DCSP algorithms, unimodular probing uses linear programming (LP) optimisation to guide and bound the search. Not only has unimodular probing performed well on randomly generated benchmarks, but it has also been successfully applied in a large industrial application involving hundreds of resources and thousands of tasks.

1 Introduction 1.1 Overview

In this paper we introduce a new technique, unimodular probing, that was designed for use in dynamic resource feasibility problems with a requirement for minimal perturbation. We detail the problem and the algorithm used, and report its results for a set of benchmark problems. Finally we discuss why it leads to performance improvements, and the class of problems to which it is applicable. Unimodular probing combines constraint programming (CP) techniques, such as constraint propagation, with linear programming (LP) optimisation. It relies on a constraint programming platform which can invoke an LP solver and extract information about the optimum value computed by the solver. The LP solver only handles linear constraints, and treats all its variables as continuous (relaxing any constraints that variables must take integer or boolean values). It computes the optimum value of the cost function under these constraints, and records values taken by the variables at the optimum.

As in previous intregrations of CP and LP, such as [2], the search is controlled on the CP side, using the values returned from the LP solver to help guide which variable to label next, and which value to label it to. The constraint propagation performed by the CP engine in our implementation of unimodular probing was nite domain propagation, but any other kind of constraint handling could be done. By contrast with previous algorithms combining CP and LP (such as, for example, [1, 10, 15]), the unimodular probing algorithm does not pass all linear constraints to the LP solver - it only passes constraints of a very restricted class. This restriction ensures that the LP algorithm - Primal or Dual Simplex - works on a matrix of constraints and variables which has a special property called total unimodularity. The consequence of this property is that the optimum solution is guaranteed to be integer-valued. Totally unimodular problems are well known in the mathematical programming community, and are encountered as components of real-world combinatorial optimisation problems; the constraints of many network problems have this property, such as transportation, assignment and minimum cost network ow problems. In resource scheduling, temporal precedence and distance constraints also constitute a totally unimodular set. Moreover, this property is sucient but not necessary for guaranteed LP solution integrality (eg. [12]). Applied to totally unimodular subsets of the problem constraints, LP becomes a meaningful tool for solving discrete problems. Often resource scheduling problems are discrete since real world problems have temporal granularity. For example, the aircraft utilisation problem that drove the development of the unimodular probing algorithm required ights to be xed with a 5 minute resolution. Rounding non-integer solutions is not ideal since it may lead to solution infeasibility and/or sub-optimality. Similarly, many network ow problems require discrete ows only; the Traveling Salesman Problem (TSP) is the most obvious example of a discrete ow problem. The solutions suggested by LP can guide the search using problem-speci c heuristics, which take into account the nature of the constraints and their violation. Moreover, unlike Mixed Integer Programming (MIP) the algorithm does not need to impose discreteness on non-integer variables through backtrack search. We have applied unimodular probing to dynamic constraint satisfaction problems (DCSPs) where the optimal solution to the modi ed CSP is one that deviates as little as possible from a given solution to the original CSP: we term such problems minimal perturbance problems. Whilst any CSP can give rise to a minimal perturbance problem, our work was motivated by a special class of CSPs, termed resource feasibility problems (RFPs) [6]. Informally any scheduling problem under limited resources gives rise to an RFP. The minimal perturbance RFP naturally arises as a consequence of delays, or of accidental or planned resource reductions. RFP problems involve two kinds of constraints: temporal constraints and resource constraints. The temporal constraints belong to the restricted class that can be handled by the LP solver in a unimodular probing algorithm. The resource

constraints involve disjunctions, but each disjunct is, again, a constraint of the restricted class. Thus, when unimodular probing is applied to an RFP, at each search node a resource constraint which is violated by the current suggested values is selected, reduced to one of its disjuncts, and this disjunct is passed to the LP solver. Minimal perturbance RFPs are a natural candidate for unimodular probing. Accordingly we have tested the algorithm on a set of randomly generated problems of this class. However unimodular probing is by no means restricted to problems of this class, and we envisage its application to a much broader class of discrete CSP problems, involving a linear optimization function and a totally unimodular subset of constraints.

1.2 Background Unimodular probing arose out of an attempt to improve the performance of a pure constraint programming algorithm on an airline minimal perturbation problem. The pure algorithm is described in detail in [13], and is based on a model originally proposed for solving the RFP in a planning context [6]. While the algorithm was found to achieve good quality results, it su ered from a number of diculties in development and performance:

{ A large amount of e ort and time was expended in the development of specialised search ordering heuristics; { For almost all problems there was no way of telling what the optimal was, nor how close obtained solutions were to the optimal.

The algorithm applied depth rst search in conjunction with AC-5 propagation [16]. An analysis of algorithm behaviour revealed that the propagation failed to signi cantly prune search. A particular weakness was found to be that the algorithm did not incorporate a global analysis of the best cost to be found in a search branch. Thus the implications of individual search decisions for cost were not propagated until most variables were xed. Minton et. al have suggested that a principle reason for such weak performance is the lack of informedness in backtrack tree search [11]. To improve the performance, they propose the use of a complete assignment in conjunction with the min-con icts heuristic. Other constraint programming methods also employ the notion of temporary, or tentative assignments to uninstantiated variables [17, 19]. These methods start from a partially consistent solution and reduce constraint violations until a globally feasible solution is found. Some research has used probabilistic analysis to show the utility of such a probing assignment; the probe assignment results in a set of violated constraints that are xed through backtrack search, leading to improved average case performance [14]. A good review of this and other work on repair is to be found in [18]. In line with this research, the second algorithm we developed for the airline problem used a tentative global solution to provide improved information about cost. The new algorithm recorded the old solution as an initial tentative solution.

This solution was only partially consistent with the updated problem constraints. Throughout the search, the same tentative values were maintained for the unlabelled variables, and used to guide the backtrack search. Apart from this distinction, the algorithm closely resembled the informed-backtracking search of [11]. This repair algorithm was tested, but it too produced unsatisfactory results. The principal diculty was that the tentative solution was of little relevance since it violated more and more constraints, as decisions were made during search. Though the tentative values for the remaining variables was still optimal, it violated so many constraints that it was no longer useful in providing information about the feasible optimal solution. This observation motivated a third algorithm which maintained a tentative global solution, but which continually updated this tentative solution during search. This algorithm propagated global consequences of the choices made during search by nding the LP optimum feasible with respect to a subset of the problem constraints. The variable values at this optimum were installed as the new tentative values for these variables. The inconsistencies of the partial solution would then hopefully involve only a minimal number of constraints, and always focus the repair method towards the optimum. The dynamic recon guration of the constraint sets handled by local propagation and global optimisation was a natural progression from adaptive propagation [7]. This third algorithm is, of course, unimodular probing. Since the development of the unimodular probing algorithm, we have become aware of research conducted into extending logic-based inference techniques such as those of constraint programming with LP algorithms, or vice versa. For a review of this area and a general framework for integration see [9]. Unimodular probing can be viewed as a restriction of this framework, since LP is limited only to sub-problems with total unimodularity. However, we believe the restriction leads to a very simple and natural integration. Much mathematical programming literature also exists on related techniques such as Lagrangian relaxation, which involves the partitioning of problem constraints into hard and easy sets, with the hard set represented only in the cost function. Further research is required to the exact relationships with these techniques. Notice though that, by allowing the transparent use of LP in a constraint programming context, unimodular probing permits the simultaneous application of virtually all the local consistency and heuristic techniques of constraint programming. Many of these do not have counterparts in the mathematical programming literature.

1.3 Outline of the Paper The paper is structured in two descriptive sections followed by experimental results, and a discussion. Section 2 gives initial de nitions, as well as a general model for a minimal perturbation variant of the RFP, which is used as a benchmark. Section 3 gives details of a unimodular probing algorithm for solving the RFP.

Section 4 gives preliminary results empirically comparing the unimodular probing algorithm with a traditional constraint programming algorithm, and also with a mixed integer programming search method. Finally, in Sect. 5, we discuss why unimodular probing leads to gains in performance, and suggest the class of problems to which it is most suited.

2 Initial De nitions In this section we de ne the general model for minimal perturbance problems, before describing an instance of it. The instance is a variant of the RFP. We then describe a constraint model for the RFP variant used by the algorithms compared in Sect. 4.

2.1 Minimal Perturbance Problems The basis of minimalperturbance problems is the constraint satisfaction problem:

Def. 1 : Constraint Satisfaction Problem (CSP)

A CSP  is a 3-tuple (V; D; C ) where: { V is a set of n variables fv1 ; v2; ::; vng; { D is a set of n corresponding domains fd1; d2; ::; dng; { C a set of constraints that are relations on subsets of the variables in V . A complete assignment maps each variable vi 2 V to a value in its corresponding domain di 2 D. is a solution to  if and only if all the constraints in C hold under . A dynamic CSP (DCSP) is de ned as a sequence of CSPs, where each one di ers from its predecessor by one or more constraint additions or deletions [4]. Thus a CSP i+1 in the sequence is related to its predecessor i by two sets:

{ Cdel , a set of constraints such that Cdel  C ; { Cadd , a set of constraints on V such that Cadd \ C = . Cdel and Cadd together form an update, or modi cation of the CSP, and respectively stand for the set of constraints to be removed from, and added to the constraints Ci of i . A minimal perturbance problem is a modi ed CSP with the additional requirement that the new solution sought is minimally di erent to the old solution.

Def. 2 : Minimal Perturbance Problem (MPP)

An MPP  is a 5-tuple (i ; i; Cdel ; Cadd ;  ) where: { i is a CSP; { i is a solution to i; { Cdel , Cadd are constraint removal and addition sets;

{  is a function that de nes perturbance, by providing a measure of the distance between any two complete assignments.

A complete assignment i+1 is a solution to  if and only if it is a solution to i+1 = (V; D; Ci+1) where Ci+1 = (Ci n Cdel ) [ Cadd , and  ( i+1; i) is minimal. The distance measure for a minimal perturbance problem must be linear for our algorithm to be applicable.

2.2 Resource Feasibility as a Minimal Perturbance Problem As mentioned in the introduction, the resource feasibility problem (RFP) provided the vehicle for the development of the unimodular probing algorithm, and is used here to provide a concrete example of how it works. In the RFP, the goal is to x the start and end times of activities such that resource capacities are not exceeded. For the sake of simplicity, we use a less general version of the resource feasibility problem as described in [6], with only a single resource type and unit capacity activities. The restricted problem can be proved to be NP-complete by 3-Sat transformation.

Def. 3 : Resource Feasibility Problem (RFP) In the following, let N be the set of natural numbers. An RFP is composed of: { a set A of activities; { a resource usage variable b and a resource capacity constraint b  B 2 N ; { for each activity ai 2 A, temporal start and end variables si ; ei; { a set L of linear inequalities that bound the temporal variables (in the form uRc) and impose distance constraints between them (in the form uRv  c) where:

[

(1)

u; v 2

(2) (3)

c2N  R 2 =; ; ; 

ai 2A

fsi ; ei g

A solution is a complete assignment to the temporal and resource usage variables such that:

{ the relations in L are satis ed under { the resource usage variable b is the maximum resource overlap:   , where # is set cardinality # a : ( s )  t < ( e ) b = MAX i i i t2N { the resource capacity relation b  B is satis ed

Let i be an RFP problem with activity set A, and let i be a solution to it. The minimal perturbance variant of the RFP problem that is used throughout this paper has : (4) (5)

 ( i+1; i) =

X j i+1(u) ? i(u)j S fsk ;ekg u2 ak 2A

Cdel = ; Cadd = fb  Bi+1 g, where Bi+1 < Bi

2.3 Modeling Resource Contention The resource usage variable b corresponds to the maximum number of resources required (the maximum resource overlap) at any time. However, to arrive at this gure, it is sucient to count the resource overlap at the start times of activities, since these are the points where increases in resource usage occur. For each activity ai , a variable Osi corresponds to the number of overlaping resources at its start time si . The Osi are de ned in terms of Boolean meta-variables. One is introduced for each pair of activities ai and aj as follows. (6)



s j  s i ^ si < e j 8i; j:1  i; j  jAj : Bij = 10 i i si < sj _ ej  si



Thus Bij = 1 if and only if activity aj spans the start of ai . The \if and only if" in the de nition allows the Boolean meta-variables both to control and be controlled by the three temporal variables si ; sj and ej . The Boolean variables establish a link between temporal and resource reasoning. This is used by the additional resource overlap constraint for each activity:

Osi 

(7)

X

j:1j jAj

Bij

During search, assume that Osi has been bounded by the maximum resource capacity of the RFP, but the variables of the problem have not yet been xed. Notice that right and left hand sides of constraint equation (7) yield resource con ict information:

{ whenever the upper bound of the LHS is below the lower bound of the RHS, the problem is infeasible;

{ if the LHS upper bound is lower than the RHS upper bound, there is potential resource con ict at the start of the associated activity ai ;

{ if the upper bound of the LHS is equal to or higher than the RHS upper bound, no resource con ict can exist at the start of ai .

In other words search decisions can identify a resource contention using the constraint expressions of Equation (7), and reduce it by forcing apart temporal variables (i.e. imposing a new distance constraint), setting some RHS Bij = 0 in the process. Moreover, local consistency methods propagate the consequences of this decision through interplay between the resource and temporal constraints. Forcing apart temporal variables typically results in con rmed overlaps elsewhere (Bkj = 1, for some activity ak ). The resource constraints of Equation (7) may then propagate other overlap reductions (Bkj = 0) to remain within the required resource capacity. This in turn can lead to the imposition of new distance constraints. The local consistency propagation is important since the resource bound constraints are disjunctive and do not exist in the LP sub-problem of the RFP unimodular probing algorithm.

3 The Unimodular Probing Algorithm This section gives an abstract algorithm for unimodular probing, before describing its application to a minimal perturbance RFP.

3.1 The Abstract Algorithm The unimodular probing algorithm should be considered for constraint optimisation problems with the following features:

{ An \easy" subset of the constraints with the total unimodularity property. We describe this property in more detail in Sect. 3.2.

{ A linear optimisation function on some or all of the variables in the easy subset.

{ Problem variables which are discrete. As noted in the introduction, the local consistency techniques and the repair algorithm work on all the constraints of the problem (the full set), while LP handles only an easy set. In the following, we use the term \easy constraints" for constraints that maintain the total unimodularity property in this set. At each search step the unimodular probing algorithm rst applies local consistency to the constraints of the problem and then LP to the easy set. The discrete, optimal solutions returned by LP, called unimodular probes, satisfy the constraints in the easy set. The search procedure generates the constraints in the full set violated by the unimodular probe. If there are no violated constraints then the search has found a solution. Otherwise, the algorithm selects a violated constraint, and rules out the present unimodular probe by imposing an easy constraint. Generally, a choice of possible repairs exist, and the algorithm backtracks through these choices in its search for optimality. When a repair has been selected, local consistency methods derive further easy constraints that follow

from this choice.1 In this way, easy constraints are incrementally added to the easy set, until the LP optimum satis es all the constraints in the full set. begin unimodular probe(Cnew ) if cp solve with new constrs(Cnew , then

C

cpnew )

lp obtain new constraints(Cnew [ Ccpnew ; Clpnew ) if lp solve with new constrs(Clpnew ,Slp) then

con ict constraints(Slp, Cconf ) C conf = fg then return Slp

if

else

select repair with choice point(Cconf, Slp , Crepair ) unimodular probe(Crepair ) else return fail else return fail end linear probe search

Fig. 1. Unimodular Probing Search Figure 1 gives an abstract outline of the unimodular probing search procedure. unimodular probe takes as an argument Cnew , representing the set of new constraints to be added to the local consistency propagation set. On initialisation, Cnew is the set of all the problem constraints, including the upper bound on the cost produced by branch and bound optimisation. cp solve with new constrs then performs local consistency on the extended constraint set, deriving the new constraints Ccpnew . lp obtain new constraints takes the new and derived constraints Cnew [ Ccpnew to produce a set of new easy constraints Clpnew that may be added to the set of LP constraints. lp solve with new constrs invokes the LP solver, returning the unimodular probe (Slp ). The unimodular probe is used by con ict constraints to identify the violated constraints in the full set, Cconf . select repair with choice point creates a search branching point, selecting and imposing the alternative repairs Crepair one at a time. The procedure recurses with new repair constraint. Thus LP extends the backtrack search with a propagation method (it may detect failure, usually through the cost bound), as well as the basis for variable and value selection heuristics (it suggests a solution which may need repair). The 1

Section 2.3 described how a propagation sequence may lead to further easy (binary) constraints. For some problems the ony inferred easy constraints may be unary domain bounds.

orthogonal local consistency techniques handle the disjunctive constraints that are out of LP's scope, and infer new LP constraints.

3.2 Unimodular Probing Applied to the RFP The Initial Easy Constraint Set The rst task of constructing a unimodular

probing algorithm is the identi cation of a suitable easy set with the total unimodularity property. In an LP problem, the set of constraints and variables are represented in a constraint matrix. The necessary conditions for this property to hold in a constraint matrix are rst given, before more practical sucient conditions are discussed (see [8] for more detail). A constraint matrix may be con gured in two ways. In the rst, rows represent constraints, and columns represent variables, with the element eij of the matrix denoting the coecient of a variable j in a particular constraint i. In the dual con guration, the reverse holds, with rows corresponding to variables and columns to constraints. Necessary conditions: A constraint matrix is said to be totally unimodular if and

only if all the variable coecients and constants of the problem are integer, and every square, nonsingular submatrix of the constraint matrix has a determinant of 1. Sucient conditions:

1. All the variable coecients are 0, 1, or -1, and the constants are integer. 2. No more than two nonzero coecients appear in each row (column). 3. The columns (rows) of the matrix can be partitioned into two subsets Q1 and Q2 such that (a) If a row (column) contains two nonzero coecients with the same sign, one element is in each of the subsets. (b) If a row (column) contains two nonzero elements of opposite sign, both elements are in the same subset. The temporal constraints of the RFP satisfy the sucient conditions. Recall that, in Sect. 2.2, L is de ned to be the set of linear inequalities that bound the temporal variables, and impose precedence and distance relations between them. As described, the constraints of L are in the form uRc and uRv  c.  Because we are dealing with discrete problems, all the relations in R 2 =; < ; >; ;  may be de ned in terms of the  constraints. Also, the various coecients and constants satisfy the integrality requirement. uRc are simple bounding constraints with only one unit coecient. uRv  c have two variables with unit coecients of opposite sign. Thus we can partition the variables (columns) into a subset Q1 containing all the variables, and another Q2 containing none. It follows that the temporal and distance constraints of resource problems constitute a totally unimodular problem.

The Linear Optimisation Function Equation 4 de ned a  function used to measure perturbance in terms of a sum of absolute di erences, where each di erence d = ja ? bj. The absolute di erences are simply modelled in terms of the linear constraints. For cost minimisation, these are: d a?b d b?a

(8) (9)

The Initial Full Constraint Set The full constraint set contains, in addition

to L, the resource overlap constraints used to ensure resource bound satisfaction, and the link constraints that relate the meta-Booleans Bij to the associated temporal variables si , sj and ej . Equation (7) described the constraint expressions P Osi  j:1j jAj Bij that quantify the resource overlap at the start of activity ai. These constraints are not represented at all in the easy set since they are disjunctive, and their relaxed linear form would cause the LP set to lose the total unimodularity property.

The Local Consistency The algorithm applies AC-5 on the arithmetic con-

straints of the problem.

The Search Heuristics The unimodular probes onPthe easy constraint set typically violate one or more overlap constraint Osi  j:1j jAj Bij . Constraints are ordered according to the degree to which they are violated. Assume that the temporal variables take on the values of the unimodular probe, and the corresponding value for Bij is up (Bij ). The selection key for the overlap constraint corresponding to activity ai is given by: X (10) up (Bij ) ? upperbound(Osi ) j:1j jAj

Once a constraint has been selected, a distance constraint is chosen such that its imposition would reset to 0 one of the Bij that assume the value 1 under the unimodular probe. The distance constraints are ordered according to the least tightening heuristics described in [13]. The least tightening heuristics attempt to ensure that imposing a new distance constraint will result in the fewest domain reductions on the temporal variables of the problem. This least commitment approach increases the chances of nding a good solution early. On backtracking the distance constraint is withdrawn and its logical inverse is imposed instead.

Extending the Easy Set Since search decisions are made through the imposition of a new distance constraint, we can see that this is at least one \easy" temporal constraint that may be added to the LP set. As noted in Sect. 2.3, however, other distance contraints may result from the subsequent constraint propagation sequence involving the resource constraints. These new distance constraints are added to the easy set, together with any new domain bounds.

4 Empirical Investigation The unimodular probing algorithm has lead to exciting results when compared with both a specialised constraint programming algorithm and MIP search on a set of commercial aircraft utilisation problems. However, a systematic study on randomly generated problems has not yet been completed. We aim to give here a hint of the performance of the algorithm by reporting the rst results of a systematic investigation that has started very recently. The results given are for approximately 1200 minimal perturbance RFP problems. The rst step in the generation of a problem is the production of an initial activity schedule. Schedules were randomly generated with 10, 20 and 50 activities of length 110 over a temporal horizon of 1000 time points. A distance constraint is included between the start and end variable of each activity, imposing minimum activity sizes of 100. Three other parameters were then varied to create di erent search problems from the initial schedule. The rst was the maximum allowed shift (which bounded the amount of movement allowed on any start or end time): this ranged over 20,30 and 50. The second parameter represented the required reduction in the number of resources used: the algorithms were tested on problems requiring a decrease in resource usage of 1 and 2. Finally a number of random distance constraints were imposed by generating all possible pairs of temporal variables, and placing a locally feasible distance constraint on them with probability pdensity . The pdensity values used were 0, 0.02, and 0.05. To expedite the production of results, a timeout of 2500 CPU seconds was used to limit the search, and the results described here are only for feasible problems that satis ed the timeout. The algorithms were tested on an Ultra-Sparc 20, and the programming environment used was the ECLi PSe constraint logic programming platform [5]. We compare unimodular probing with two algorithms. The rst is the pure constraint programming algorithm (detailed in [13]) which conducts the search in two phases. In phase 1, the algorithm reduces potential resource con ict by forcing apart temporal variables until no possible resource con ict could occur. In the second phase, the algorithm xes the temporal variables to the value returned by an LP solver which is optimal given the choices made in the rst phase. The second algorithm is a commercial MIP package, CPLEX [3]. The default search settings are used, with only the Booleans declared as integer. Becausew the default MIP heuristics are not tailored to the problem at hand, some expert adjustment of the search control parameters in the MIP engine could bring about an improvement in performance. We are currently investigating this line of experimentation. The preliminary results for the pure constraint programming algorithm are interesting. Most importantly, algorithm does not complete the search unless the problem is trivial. However, we note that for many problems it generates solutions close to the optimal during the search, as shown in Fig. 2. These initial results demonstrate the sophistication of the heuristics used for search ordering, but show also that the quality of the solution degrades as the number of distance constraints between tasks increases. We believe that a bigger sample set on higher

4

Percentage Drop in Solution Quality

3.5

3

2.5

Percentage Drop

2

1.5

1

0.5

0 0

0.002

0.005

Distance Constraint Density

Fig. 2. Reduction in Constraint Programming Solution Quality versus Density densities will reduce the quality of the best solution found by the algorithm even further. This would be consistent with our experience on the commercial data set. It is possible to make a deeper comparison between unimodular probing and the MIP search. In the rst place, both searches complete the search. Secondly at every search node visited, both algorithms call the LP solver once. Figure 3 shows the substantial reductions in the number of search nodes that is achieved by unimodular probing. Figure 4 shows that our relatively inecient integration, which involves traversing all the problem variables twice at each search node, still yields substantial bene ts in terms of CPU time. Note that these results are despite a \ attening e ect" that occurs for the harder problems, where MIP timeouts are far more frequently encountered.

5 Discussion The preliminary results of the previous section show that the algorithm proposed is capable of proving optimality for many problems where a pure constraint programming algorithm fails to do so. The dramatic reduction in the number of LP solver calls by unimodular probing as opposed to MIP are also very encouraging. These results correspond to our experience comparing the algorithms on a much larger scale real-world problem.

20000

18000

16000

Number of LP Nodes

14000

12000

10000

MIP Unimodular Probing

8000

6000

4000

2000

0 10

20

50

Number of Activities

Fig. 3. No. of LP Nodes versus No. of Activities The questions that arise from the results are, why the improvement over the two alternative methods arises, and, for what class of problem will this improvement hold. Unimodular probing extends constraint programming backtrack search by providing a focus on the optimisation function. Assume all n-ary constraints, n > 1, are ignored. The LP solution will give an optimal point within the space de ned by the domain bounds of the problem variables. In the case of the minimal perturbation RFP, this point is the old solution, which is now infeasible. The task then for an optimisation algorithm is to produce feasible solutions near this point. In the case where no easy constraints exist, apart from domain bounds, the LP suggested solution will only change to lie within new domain bounds imposed by the algorithm. However, if even only a few binary easy constraints are added, LP will suggest solutions that satisfy these constraints and are the closest possible to the infeasible optimal. The suggested solutions may dynamically vary, depending on the search decisions made so far, always gravitating the search towards the infeasible optimal. In an optimisation context the unimodular probes provide more useful information than a static set of tentative assignments such as those of informed backtracking or weak-commitment. This should not be surprising given that these techniques were suggested for constraint satisfaction, not optimisation. On the other hand, there are two apparent advantages over MIP search. Firstly, good heuristics are based on semantically meaningful information; when an LP solver returns to MIP a non-discrete suggested value for an discrete vari-

400

350

300

CPU Seconds

250

MIP Unimodular probing

200

150

100

50

0 10

20 Number of Activities

50

Fig.4. CPU Seconds versus No. of Activities able, it is not easy to make informed choices on the repairs required. Secondly, because MIP sees all violations in terms of the non-integrality of integer variables, it is faced with a potentially large set of violations when the LP subproblem loses the total unimodularity property. For the problems we address, unimodular probing substitutes a relatively small number of n-ary constraint violations for a host of unary discreteness violations. As noted throughout the paper, unimodular probing should be applied to discrete problems, with a linear optimisation function and a totally unimodular subset that includes the optimisation variables. A feature of minimal perturbance problems, is that the values of the infeasible optimal { the old solution { tend to satisfy a signi cant subset of the problem constraints. This additional factor may mean that minimal perturbance problems are particularly suitable. Further empirical study and deeper analysis is needed to fully answer the questions posed. We plan to conduct a more detailed exploration of the full range of problems for which unimodular probing is applicable, and test its potential as a generic tool for combining CP and LP.

References 1. Henri Beringer and Bruno de Backer. Satis ability of boolean formulas over linear constraints. In IJCAI-93, pages 296{301, Chambery, France, August 1993.

2. Henri Beringer and Bruno De Backer. Logic Programming: Formal Methods and Practical Applications, chapter Combinatorial Problem Solving in Constraint Logic Programming with Cooperating Solvers. Elsevier, 1994. 3. CPLEX Optimization Inc., NV 89451-9436, USA. Using the CPLEX(r) Callable Library, 1995. 4. R. Dechter and A. Dechter. Belief maintenance in dynamic constraint networks. In Proceedings of AAAI-88, pages 37{42, 1988. 5. ECRC. ECLi PSe User Manual. European Computer Industry Research Centre, Munich, 3.6.1 edition, 1996. 6. Amin O. El-Kholy. Resource Feasibility in Planning. PhD thesis, Imperial College, University of London, 1996. 7. Hani El Sakkout, M G Wallace, and E B Richards. An instance of adaptive constraint propagation. In Proc. of The Second International Conference on Principles and Practice of Constraint Programming (CP96), Lecture Notes in Computer Science, pages 164{178. Springer Verlag, 1996. 8. Robert S. Gar nkel and George L. Nemhauser. Integer Programming. John Wiley & Sons, 1972. 9. J. N. Hooker and M.A.Osorio. Mixed logical/linear programming. Available on http://www.gsia.cmu.edu/afs/andrew.cmu.edu/gsia/jh38/papers.html, 1996. 10. J. Ja ar and J.-L. Lassez. Constraint logic programming. In Proceedings of the 14th ACM Symposium on Principles of Progrmming Languages, pages 111{119, Munich, Germany, 1987. 11. Steven Minton, Mark D. Johnston, Andrew B. Philips, and Philip Laird. Minimizing con icts: a heuristic repair method for constraint satisfaction and scheduling problems. Arti cial Intelligence, 58:161{205, 1992. 12. Manfred W. Padberg. Perfect zero-one matrices. Mathematical Programming, 6:180{196, 1974. 13. Dionysios Pothos. A constraint-based approach to the british airways schedule re-timing problem. Technical Report 97/04-01, IC-Parc, Imperial College, 1997. 14. Paul Walton Purdom, Jr. and G. Neil Haven. Probe order backtracking. Siam Journal of Computing, 26:456{483, 1997. 15. R. Rodosek, M Wallace, and M. Hajian. A new approach to integrating mixed integer programming and clp. Annals of Operations Research. Recent advances in combinatorial optimization: Theory and applications (to appear), 1998. 16. Pascal Van Hentenryck, Yves Deville, and Choh-Man Teng. A generic arcconsistency algorithm and its specializations. Arti cial Intelligence, 57:291{321, 1992. 17. Gerard Verfaillie and Thomas Schiex. Solution reuse in dynamic constraint satisfaction problems. In AAAI-94, pages 307{312, Seattle, WA, August 1994. 18. Gerard Verfaillie and Thomas Schiex. Maintien de solution dans les problemes dynamiques de satisfaction de contraintes : bilan de quelques approches. Revue d'Intelligence Arti cielle, 1995. 19. Makoto Yokoo. Weak-commitment search for solving constraint satisfaction problems. In AAAI-94, pages 313{318, Seattle, WA, August 1994.

This article was processed using the LATEX macro package with LLNCS style

Suggest Documents