Local Probing Applied to Scheduling Olli Kamarainen and Hani El Sakkout IC-Parc Imperial College of Science, Technology and Medicine, London SW7 2AZ, UK {ok1,hhe}@icparc.ic.ac.uk Abstract. This paper describes local probing, an algorithm hybridiza- tion form that combines backtrack search enhanced with local consistency techniques (BT+CS) with local search (LS) via probe backtracking. Generally BT+CS can be eective at nding solutions for (or proving the infeasibility of) tightly constrained problems with complex and overlapping constraints, but lacks good optimization characteristics. By contrast, LS can be superior at optimizing problems that are loosely constrained, or that have constraints which are satisable by simple neighbourhood procedures, but it also has several weaknesses of its own. It is weaker on problems with a complex constraint satisfaction element, and cannot prove problem infeasibility, causing prolonged execution times and ambiguous search outcomes for even trivially infeasible problems. We show these divergent characteristics on a general resource constrained scheduling problem class, extended with a widely applicable objective function. We then detail a local probing hybrid that marries the strengths of constraint satisfaction techniques, including good satisfaction characteristics and proofs of problem infeasibility, with the superior optimization characteristics of LS. This local probing hybrid achieves satcompleteness, without incorporating all the constraints into the LS neighbourhood function. Finally, we discuss the principal questions that must be answered in creating local probing hybrids for other problems. 1 Introduction 1.1 Paper Overview The paper is structured as follows. This section motivates the paper, and introduces the hybrization form and the application domain. Section 2 details local probing's application to scheduling. Experimental results and comparisons to other algorithms are described in Sect. 3. In Sect. 4, the key questions that must be answered in creating a new local probing hybrid are listed and discussed. Lastly, Sect. 5 gives the conclusions of this study. 1.2 Motivation Backtrack search supported by local consistency techniques (BT+CS) is often good at solving tight problems with complex constraints. However, it is generally less suitable for optimization. In this paper, local search (LS) is hybridized with BT+CS. In LS, typically one or more complete but partially consistent or sub-optimal assignments are improved at each search step. This gives rise to LS's strengths vis-a-vis conventional constraint satisfaction methods. Firstly, its search moves are more informed than those of backtrack search, since the quality of a complete assignment is more easily measurable, by comparison with the quality of BT+CS's partial assignments.1 This is particularly valid when assessing the quality of the assignment w.r.t. a global optimization function. Secondly, the absence of systematicity allows assignments to be modied in any order, and so early search moves do not necessarily skew search to focus only on particular sub-spaces. This avoids a principal pitfall of BT+CS, where early search moves can skew the search by restricting it to particular sub-spaces, until they are exhaustively investigated.2 However, a traditional LS algorithm suers from a number of drawbacks. Firstly, its lack of search memory can mean that it constantly returns to the same search sub-spaces, causing it to get trapped in local optima.3 Secondly, it lacks a natural way in which the eective local consistency procedures of constraint satisfaction can be easily integrated, since these work best in combination with hard search decisions (such as variable assignments) that lead to further local-consistency deductions. This is a disadvantage when solving complex constraints, i.e. ones that cannot be adequately captured by simple LS neighbourhood procedures, nor adequately dealt with by LS violation-minimization optimization criteria. Thirdly, when the problem is infeasible, it cannot prove infeasibility, and continues to search unsuccessfully for a solution, eventually timing-out or giving up without informing the user whether the problem is infeasible or not, even when infeasibility is trivial to determine. This characteristic is unacceptable when, for instance, the algorithm must be applied to a large batch of problems in a reasonable amount of time, or if proofs of infeasibility are valuable to the user. The above considerations lead many researchers to conclude that the dierent characteristics of conventional LS and BT+CS algorithms are complementary. It is reasonable to assume that the hybridization of these methods can be fruitful for certain problems. 1.3 Hybridization Form: Probe Backtracking In the literature, various approaches to hybridizing BT+CS and LS, have been investigated (e.g. [2, 4, 17, 2325, 27, 28]).4 Here the focus is the hybridization of the two by means of probe backtrack search [7, 9]. Probe backtracking (PBT) is a general hybridization form that has been shown to yield ecient hybrid algorithms for problem classes similar to the one investigated here. Previously Informedness was discussed in [21]. Moreover, if we consider as a measure of search move informedness the length of the partial assignment undergoing extension, early BT+CS search decisions are even less informed than decisions deeper in the search tree, greatly increasing the chance that search is skewed to unproductive areas. 3 Many variations of basic LS strategies have tried to tackle this defect (e.g. tabu search [11] and guided local search [26]). 4 See [10] for a general survey. 1 2 6ROYHVXESUREOHP 3 ZLWKWKH SUREHU 3UREHD D YLRODWHVUHOD[HG ´KDUGµ FRQVWUDLQWV +&V (& &UHDWHFKRLFHSRLQW (& 25 (& (& 3 3 3 D 3UREHU (& (& 3 Fig. 1. An illustration of probe backtrack search though probe backtracking was used to hybridize BT+CS with linear and mixed integer solvers, rather than with LS [1, 9].5 In probe backtracking, a constraint satisfaction and optimization problem is solved by a high-level BT+CS algorithm that hybridizes another algorithm. All the problem constraints are classied into two sets: easy and hard. The easy constraints are those constraints that are easily solved by the hybridized algorithm, known as the prober. At any search node, the backtrack search applies the prober to a sub-problem consisting of the easy constraints and an objective function. The prober will generate a complete assignment that satises all the easy constraints, and is good (and, for some probers, super-optimal) with respect to the objective function.6 If the assignment also happens to satisfy all the hard constraints, a solution has been generated, and the search may terminate, or continue with a tighter cost bound if better solutions are sought as part of the branch and bound process. If the assignment has been found to violate one or more hard constraints, then a new easy constraint is identied and posted to the prober. This easy constraint is chosen to force the prober to generate a dierent assignment that reduces the violation of one of the violated hard constraints. The posting of this constraint moves the backtrack search to a new node, and the process repeats. On backtracking, the negation of this easy constraint is posted (the negation must also be an easy constraint). Figure 1 illustrates the behaviour of probe backtracking when the prober returns an assignment that violates one or more hard constraints. A pseudo-code description can be found in [9]. 1.4 Application to Scheduling Dierent versions of probe backtrack search have been applied to commercial dynamic scheduling problems [9], to earliness/tardiness scheduling problems [3], and to a generic scheduling problem extended with a piecewise linear objective function [1]. The latter is selected here as a testbed for the technique that is developed, because it generalizes the rst two. A similar evolution from integrating LP-based methods towards other solvers has been discussed in [15]. 6 A super-optimal assignment is a complete, partially consistent assignment that is no worse w.r.t. the objective function than any optimal solution. 5 The selected problem is a scheduling problem that is based on the kernel resource feasibility problem (KRFP) [6, 9]. The KRFP generalizes most scheduling benchmarks, including job shop scheduling, ship loading, bridge building, and resource constrained project scheduling. In the KRFP, we have several types of resources and a given quantity of each. We have also a xed number of non-preemptive activities. Each activity requires a quantity of a specic resource type during its execution. An arbitrary set of metric temporal constraints relate the start and end times of activities. The aim is to schedule activities so that all the temporal constraints are satised, and the demand on any resource does not exceed its resource quantity at any time on the scheduling horizon. While the KRFP itself represents only a constraint satisfaction problem, an objective function is often needed. Many real world optimization criteria such as revenue and cost optimization in transportation can be approximated by a piecewise linear function. In the problem we investigate, a piecewise linear function maps the start time (or end) of each of the activities of the KRFP to an activity cost. The objective function is then a minimization of the sum of the values of these functions. The kernel resource feasibility problem with a piecewise linear objective function is abbreviated by PL-KRFP. Like many large scale combinatorial optimization problems (LSCO's), the PLKRFP can be clearly divided into dierent sub-problems. The probe backtrack approach presented in [9] keeps temporal constraints within the sub-problem addressed by the prober, while relaxing the resource constraints and handling them at the backtrack search level. If the solution to the sub-problem does not satisfy the relaxed resource constraints, additional temporal precedence constraints are added to the sub-problem in order to relieve violations. This approach was also used in several algorithms described in [1]. In all these algorithms, the probers are based on linear programming (LP) or mixed-integer programming (MIP). 1.5 Overview of Approach In local probing, an LS algorithm is used as the prober instead. Here, simulated annealing (SA, [19]) is the LS algorithm that is hybridized to illustrate the potential of this form.7 By comparison with the earlier probe backtracking hybrids based on LP and MIP, which rely on the prober solving a sub-problem that is linear, or highly linear, local probing hybrids are widely applicable, because the prober can solve sub-problems with arbitrary objective functions and arbitrary easy constraints. However, one disadvantage of local probing hybrids is that, because an LS prober is normally incomplete, the overall algorithm loses completeness. We distinguish though two levels of completeness for constraint satisfaction and optimization problems: 7 Note that most other LS algorithms including hill climbing, tabu search ([11]), guided local search ([26]), and genetic algorithms ([12, 14]) could have been hybridized in an analogous fashion. SA is selected for this preliminary study because of its simplicity. Arguably, the results of SA are representative since a more sophisticated LS algorithm would also lead to a better hybrid. sat-completeness, where the algorithm returns a solution, or proves no solution exists, in a nite number of steps; and opt-completeness, where the algorithm returns an optimal solution, or proves no solution exists, in a nite number of steps. We show how sat-complete local probing hybrids can be constructed. The local probing algorithm that is presented here solves the PL-KRFP, and uses an LS prober that utilizes a generic neighbourhood operator. The operator is capable of satisfying an arbitrary set of easy temporal constraints. It needs to do so because neighbourhood is dynamic, i.e. the set of temporal constraints that must be satised by LS changes from one backtrack search node to the next. This neighbourhood operator has been found to be much more eective than other tested alternatives [18]. It uses a linear solver to nd temporally feasible neighbours in the proximity of the current node by solving an LP problem with a linear minimal perturbation objective function. Our local probing hybrid is compared with (1) a dierent, LP-based, probe backtracking hybrid previously specialized for the PL-KRFP, and (2) a pure SA algorithm tuned for the same problem. The results show that applying local probing can lead to better overall algorithm performance by comparison with the other hybrid algorithm. They also show that local probing improves the SA algorithm by addressing its weaknesses: it forces SA to escape from infeasible local optima by dynamically reshaping its neighbourhood function; it supports it by applying local consistency methods where they are more eective; and it restores algorithm sat-completeness. Finally, the paper discusses the broader potential of local probing. 2 Local Probing for Scheduling 2.1 Overview The constraints of the PL-KRFP consist of three classes: resource constraints, temporal constraints and constraints linking the objective function to the temporal decision variables. The neighbourhood operator of the LS algorithm can be designed such that it satises certain constraint classes, thereby guaranteeing that the probes never violate these classes. It is possible to take any subset of the problem constraints into the neighbourhood operator, and thus, ensure probe feasibility with respect to that subset. The question is which kind of sub-problem is easy for the neighbourhood operator to satisfy and makes the overall algorithm ecient at the same time. This is important since the class of constraints satised by the neighbourhood operator includes the ones that will be posted by probe backtracking as it drives the search towards globally feasible solutions. In this paper, the temporal constraints are dealt with by the neighbourhood operator while the LS objective function aims to minimize the overall cost, and penalizes the violation of the hard resource constraints. The local probing procedure is summarized in Fig. 2. If the algorithm returns a solution, a cost bound constraint is posted and the algorithm is repeated. The cost bound is not dealt with in the neighbourhood operator; rather, before returning a probe, LS prober checks that the cost bound is satised (and fails if it is not). 1. begin local_probing 2. if not(solve temporal sub-problem by LS prober) 3. then return FALSE 4. else if not(nd violated resource constraints) 5. then return TRUE 6. else begin 7. select violated resource constraint HC; 8. select temporal constraint EC that reduces violation of HC; 9. post EC; 10. if local_probing 11. then return TRUE; 12. remove EC; 13. post not(EC); 14. if local_probing 15. then return TRUE; 16. remove not(EC); 17. return FALSE; 18. end; 19. end local_probing Fig. 2. Local probing algorithm. In probe backtracking, dierent types of constraint propagation and search ordering heuristics can be applied. When making the decision on which constraint to post to the sub-problem in order to repair the violations, we select rst the resource constraint that is violated the most, then we select a temporal constraint that would reduce violation (by reducing resource overlap), but which would cause minimal change to the proposed schedule. On backtracking, the negation of this constraint is posted instead. Posting the temporal constraint triggers local consistency procedures which reduce the domains of the variables further. The details are described in [9]. The implementation relies on the hybridization facilities of the ECLiPSe constraint logic programming platform, e.g. attributed variables, tentative values and waking priorities [16]. 2.2 Simulated Annealing as an LS Prober As an LS strategy, we use simulated annealing (SA) [19], which is easy to implement and may avoid local minima. It starts from an initial assignment8, and, at each search step, the neighbourhood operator suggests for the sub-problem a candidate solution that satises all the temporal sub-problem constraints. Search continues until a termination condition is satised. In SA, a worse neighbour may be accepted. The acceptance is randomized and depends on the quality of a neighbour and a temperature parameter, which is decreased during the search depending on the selected cooling strategy. The probability of moving to worse neighbours decreases with the temperature parameter. Hard resource constraints are treated as soft constraints by adding a penalty component to the objective function, namely, the resource utilization area that exceeds the resource limit over the time horizon, multiplied by a constant. The results presented suggest that this approach works well together with the repairbased search capability of probe backtracking. 2.3 Minimal Perturbation Neighbourhood Operator We require an ecient neigbourhood operator, which nds feasible neighbour solutions. It should be generic and capable of satisfying dierent classes of con8 The initial assignment in the very beginning is the initial schedule. Subsequently, the previously generated probe is used. straints, especially temporal constraints in our scope. In order to utilize the eciency benets of LP within the neighbourhood operator of local probing, an operator based on minimal perturbation search [7, 9] is introduced. First, it assigns a value to only one randomly selected variable9. This value selection is backtrackable and all the feasible values in the domain of the selected variable can be explored. Once the variable has been instantiated, the remaining variables are solved as a minimal perturbation problem by LP. In a minimal perturbation problem the aim is to nd the temporally feasible solution which minimizes the changes to the previous assignment. The objective function and the minimal perturbation constraints are modelled as follows: min XN x i=1 d i; s.t. i? i i? i (1) =1 (2) =1 (3) The absolute change between variable and its initial value is a non-linear expression. It is represented by a new variable x = j ? j, and the total change over all the non-instantiated variables can be minimized by adding linear constraints (2) and (3). The objective function (1) of the minimal perturbation problem is linear and the solution can be produced by a Simplex-based LP solver extremely quickly. x x d i d i x c ; i ;:::;N c x ; i ;:::;N x c d x c N 2.4 Sat-completeness Probe backtrack search will guarantee to satisfy any constraints that are monitored for violation and repaired within its backtrack procedure, provided that a number of conditions are met. Specically: (1) if a constraint is violated, it must be detected and scheduled for repair by probe backtracking within a nite number of steps; (2) the probe backtrack procedure must identify all easy constraints whose satisability will determine whether the hard constraint can be satised; (3) it must systematically post these easy constraints (and on backtracking, their negations, to fully partition the search space) to the prober until either the constraint is satised, or it is proved impossible to satisfy; and (4) the prober must guarantee to satisfy the posted easy constraints if this is possible. We do not refer to the rst three conditions in the context of the KRFP resource constraints and their relationship with temporal precedence constraints, since they have been fully described in the context of previous complete probe backtracking hybrids [9]. Condition (4) is satised because the neighbourhood operator will always nd a temporally feasible assignment if one exists. The neighbourhood operator will select a variable and systematically attempt each of its values. If a temporally feasible solution exists with the variable set to a particular value, the LP solver 9 The domain of the selected variable is divided into two sets, by randomly selecting a value x and placing values better than x in the better set S1 and worse (or equal) values in the worse set S2 . S1 is explored rst by using random value selection, before exploring S2 . will nd one. Thus the neighbourhood operator ensures that the LS prober guarantees to satisfy the set of easy constraints if they are satisable. Thus local probing is sat-complete: it nds a solution if one exists, and proves infeasibility if no solutions exist. However, the algorithm is not opt-complete since the assignments it returns are not super-optimal. 3 Empirical Study 3.1 Algorithms used for comparison We compared a tuned local probing hybrid (denoted Probe(Loc)) with two other algorithms: an LP-based probe backtracking hybrid from [1] (Probe(LP)), and a pure SA algorithm (SA). Probe(LP). The best performing LP-based probe backtracking algorithm from [1] was chosen (we refer you to this paper for a full algorithm description). The algorithm is similar to our local probing instance in that it is a probe backtracking hybrid specialized for solving the PL-KRFP, but diers in that its prober is LP-based and opt-complete. The prober of Probe(LP) applies an LP solver to a linear relaxation of the piecewise linear objective function. Possible discrepancies between the linearly relaxed objective and the allowed values of the true piecewise linear function are resolved by a small search procedure which branches over the temporal variables' domains, until this discrepancy has been eliminated. This allows the prober to return assignments that satisfy all the easy temporal constraints, and are super-optimal. Note that Probe(LP) does not include any resource constraint violation penalties within the prober's objective function, resulting in a prober that has a greedy characteristic: it nds the best quality prober solution from the cost point of view, independent of how many hard resource constraints it violates.10 SA. SA was selected to represent pure LS because SA is used as our local probing prober, allowing fair comparisons of performance: the SA implementation utilizes precisely the same neighbourhood operator and objective function that are used in the prober. A manual tuning process was applied to rene SA's parameters until it produced good quality results: the parameters applied in SA were those that produced the best results on a representative sample of PL-KRFP instances, w.r.t. both the number of solved problems, and the quality of the generated solutions. SA starts with the initial temperature of 100000, and after every 10000 neighbour candidate evaluations the temperature is lowered by multiplying it with constant 0.85 (geometric reduction).11 This search continues until it times-out. There are no easy ways to penalize resource violation in an LP objective function, due to the limited constraint and objective function classes it can deal with. Therefore, in the hybrids of [1], resource constraint satisfaction was handled completely at the probe backtracking level. 11 A neighbour candidate is accepted if it is better than the current assignment or p < exp(Ccurr ?Cnew )=T where: p is a random number between 0 and 1; Cnew is the cost of the neighbour candidate; Ccurr is the cost of the current assignment; and T is the temperature. 10 Probe(Loc). The SA prober of Probe(Loc) was tuned in a similar fashion, but the best parameters in this case were dierent because resource satisfaction is supported by the backtrack search component. The best combination are used in Probe(Loc), and they comprise: a cooling factor of 0.9; a cooling step every 10 neighbour candidate evaluations; and an SA procedure that terminates after 100 cooling steps. 3.2 Test Problems The tests were carried out on 1200 PL-KRFP benchmark problems. Each instance contains an initial schedule, comprising scheduled activities which all use the same type of resource. The initial schedule needs to be changed because (a) it is made infeasible by a reducing the number of available resources, and (b) it needs to be optimized with respect to a piecewise linear objective function. The problem instances contain randomly-generated temporal constraints between arbitrary activity start and end points. The temporal constraints are always satised by the initial schedule, but must continue to be enforced as the schedule changes. A temporal constraint density parameter controls their density, and is proportional to the probability of a temporal constraint existing between any pair of start/end time variables.12 Each activity is associated with a piecewise linear function containing at least ve local minima. The function represents the varying cost of the activity as its start time takes dierent values. The objective is to minimize the sum of the activity costs. The tests were run over 300 dierent schedule and temporal constraint density combinations. The number of activities varied over {50, 100}, and the temporal constraint densities over {0.3, 0.6, 0.9}. Each combination was the basis for four problem instances: dierent time window constraints were used for the activities, allowing them to change by no more than {10, 20, 50, 100} time units from their initial position. The number of available resources was 40 per cent lower than the number used by the input schedule. The scheduling horizon was limited to 200 time units.13 The test were run on Pentium II 450 MHz PCs, and the algorithms timedout after 1800 seconds of CPU time. The three algorithms were implemented on ECLiPSe 5.3, and the LP sub-problems were solved using the default settings of CPLEX 6.5. 3.3 Results Any algorithm run on a problem instance results in one of the following outcomes: search completion with an infeasibility proof; search completion with a solution, or a time-out with a solution; or, nally, a time-out without a solution. Table 1 presents, for each algorithm, the number of instances (out of 1200) for which it (a) obtained an infeasibility proof; (b) found a solution (whether or not the search completed); or (c) timed-out without a solution. The results for proofs of infeasibility show the trivial result that SA is not able to prove that a solution cannot be found, while the other two algorithms 12 The probability is equal to density=(2N ? 1), where N is the number of activities. 13 See http://www.icparc.ic.ac.uk/~ok1/pl-krfp_benchmarks.html for the benchmarks. Table 1. Results over all instances. Method SA Probe(LP) Probe(Loc) Proved infeasible Solution found Timeout w/o solution 0 (0.0%) 417 (34.8%) 783 (65.3%) 299 (24.9%) 313 (26.1%) 588 (49.0%) 285 (23.8%) 429 (35.8%) 486 (40.5%) do. Interestingly though, they also seem to indicate that Probe(LP) is slightly better at proving infeasibility than Probe(Loc) within the selected time limit. This must be due to the fact that the LP-based prober of Probe(LP) is faster at generating probes than the SA prober of Probe(Loc). Nevertheless, the two algorithms remain comparable overall, because the former's prober returns assignments that generally violate more hard resource constraints (its objective function is unable to penalize resource constraint violation). By the solutions found measure, the results show that Probe(Loc) slightly outperforms SA and is clearly better than Probe(LP). For SA and Probe(Loc), the resource-violation penalty term seems to work well on solvable problems, giving them a clear advantage over Probe(LP), whose prober is unable to recognize resource violations and does not incrementally improve a partially consistent solution. The greater exibity of LS over linear programming when modelling disjunctive constraints and objective criteria is the source of this advantage. The third measure, timeout w/o solution, seems to be one of the best overall indicators of algorithm performance, since it quanties the problem instances where the algorithm was unable to generate a meaningful answer. By this measure Probe(Loc) is the best of the three algorithms (40.5% by comparison with 49.0% for Probe(LP), and 65.3% for SA). A dierent measure of performance is solution quality. Probe(Loc) or Probe(LP) proved that no solution exists for 356 instances out of the 1200, and in 399 cases, all three algorithms timed-out without a solution. However, at least one algorithm found a solution for the remaining 445 cases, and of these, 300 were solved by all three. These 300 instances, even though they represent only 25 per cent of the whole problem set, provide us with a vehicle to compare fairly the cost minimization abilities of the three algorithms. Table 2 shows the average cost improvement relative to the cost of the initial (input) schedule, expressed as a percentage change.14 Even though the dierences between algorithms are not great, by this measure Probe(LP) clearly outperforms both Probe(Loc) and SA. Of course, the 300 instances that were solved by each algorithm represent the easiest part of the problem set, where the hard resource constraints are less relevant, and Probe(LP)'s greedy, super-optimal probes are most eective. This advantage though must be weighed against the fact that Probe(LP) solves by far the fewest problems (out of the 445 problems solved by at least one algorithm, it fails to solve 132, versus 28 for SA, and 16 for Probe(Loc)). 14 Recall that the initial input schedule is infeasible due to the imposed 40% resource utilization reduction, and so some returned solutions are associated with a rise in cost. Table 2. Average cost improvement relative to initial schedule cost, for problem instances solved by all three algorithms. Method Improvement (%) -21.31 -24.57 -22.81 Table 3. Average CPU time in secs. needed to get a rst solution over all instances (CPU-all), and over the instances solved by all three algorithms (CPU-easy). SA Probe(LP) Probe(Loc) Method SA Probe(LP) Probe(Loc) CPU-all CPU-easy 1228 70 924 43 839 35 Table 3 presents the average CPU times needed to get a rst solution or prove infeasibility. Where an algorithm timed-out, the time-out period was used instead.15 For each algorithm, the rst column covers all 1200 instances. The second column covers just the easy 300 instances that were solved by all three algorithms. It seems that Probe(Loc) not only nds solutions more often, but is faster at doing so than Probe(LP) and SA. Finally, Fig. 3 shows how the algorithm performance measures vary as the problem tightness varies.16 Problem tightness is inversely proportional to timewindow size, and directly proportional to temporal constraint density. It is clear from these gures that Probe(Loc) shadows the performance of SA on feasible, loose problems and that of Probe(LP) on tight and infeasible problems, leading to better overall performance. 4 Discussion 4.1 Discussion on Experimental Results Constraint satisfaction characteristic The results demonstrate that local probing can improve SA's performance by addressing its three principal weaknesses: it forces SA to escape from infeasible local optima by dynamically reshaping its neighbourhood function; it supports it by applying local consistency methods where they are more eective; and it restores algorithm sat-completeness. Addressing the rst two weaknesses leads to improved performance on medium tightness problems (e.g. in the tests, instances where density=0.6). Addressing the last enables proofs of infeasibility, and eliminates SA's needless timeouts on infeasible problems (e.g. where density=0.9). The results also show the benets of LS's exibility by comparison with LPbased probers the ability to easily penalize violations of hard constraints in the objective function means that local probing is able to capitalize on SA's ability to solve relatively loosely-constrained problems more often (e.g. where 15 16 We preferred to use the time-out period rather than some arbitrary penalty. Please note that the directions of the axes have been changed for dierent measures to improve the observation angle. 6$ 7LPHZLQGRZ VL]H 3UREH/3 3URYHG LQIHDVLEOH 7HPSRUDOFRQVWUDLQW GHQVLW\ 7LPHZLQGRZ VL]H 6$ 3UREH/RF 3URYHG LQIHDVLEOH 7HPSRUDOFRQVWUDLQW GHQVLW\ 3UREH/3 6ROXWLRQV IRXQG 7LPHZLQGRZ VL]H 6$ 7LPHZLQGRZ VL]H 7HPSRUDOFRQVWUDLQW GHQVLW\ 7HPSRUDOFRQVWUDLQW GHQVLW\ 7LPHZLQGRZ VL]H 3URYHG LQIHDVLEOH 7HPSRUDOFRQVWUDLQW GHQVLW\ 3UREH/RF 6ROXWLRQV IRXQG 7LPHZLQGRZ VL]H 7LPHRXW ZR VROXWLRQ 7LPHZLQGRZ VL]H 7HPSRUDOFRQVWUDLQW GHQVLW\ 7LPHZLQGRZ VL]H 3UREH/3 7HPSRUDOFRQVWUDLQW GHQVLW\ 7LPHRXW ZR VROXWLRQ 7LPHZLQGRZ VL]H 6ROXWLRQV IRXQG 7HPSRUDOFRQVWUDLQW GHQVLW\ 3UREH/RF 7HPSRUDOFRQVWUDLQW GHQVLW\ 7LPHRXW ZR VROXWLRQ Fig. 3. Infeasibility proofs, solutions found, and time-outs without a solution over temporal constraint density and time-window size. density=0.3). This results in a large increase in the number of solutions found within the timeout, and a shorter time to the rst solution. Nevertheless the LP-based prober's speed enabled it to prove infeasibility slightly more often. Optimization characteristic Although LP-based probers are not as widely applicable as LS probers, when they are applicable their ability to quickly generate super-optimal assigments can enable a high-quality optimization characteristic. The results support this statement, showing that the LP-based prober returned better quality solutions for those problems that it was able to solve. For such loosely-constrained problems, the time spent in each call of the prober of Probe(Loc) is too short to enable it to nd the best quality solutions. However, it cannot be increased dramatically though without impacting the performance on more tightly-constrained problems. This trade-o indicates that a dynamic prober termination condition, that varies the time spent in the LS prober according to the number of violated hard constraints, might prove very eective. This is also true when comparing Probe(Loc) to SA. While the results show that the local probing hybrid is on average slightly better at optimization, for problems where constraint satisfaction is less of an issue, it makes sense to fully utilize the computation time for optimization, by allowing the prober to take more time. 4.2 Building other local probing algorithms Given the performance improvements obtained on the PL-KRFP, it is likely that other problems could also be solved better by applying a local probing hybrid. However, in building a local probing hybrid, the algorithm creator faces many design dimensions. As for other probe backtracking approaches these include the backtrack search heuristics, the local consistency techniques, and the branch and bound procedure that is applied at the backtrack search level of probe backtracking. The creator of local probing hybrids faces many other choices though. Such choices mostly relate to the LS strategy, and include the basic algorithm type, e.g. hill climbing, tabu search [11], or genetic algorithm [12, 14]; its initialization procedure, e.g. heuristic or randomized; and the applied neighbourhood operator, e.g. rst improvement, steepest descent.17 The operator might also be expanded systematically in order to nd feasible neighbours, e.g. variable neighbourhood search in [22], large neighbourhood search in [25] and the neighbourhood operators in [18]. Other algorithmic dimensions include learning: e.g. the tabu lists of tabu search, or the penalty terms of guided local search (GLS, [26]); the iteration structure, e.g. SA's temperature schedules, and the selection processes of genetic algorithms; and lastly the termination condition: perhaps a maximum run-time; a best solution quality (optimal, gap-to-lowerbound, improvement-too-slow); or a maximum number of neighbour candidate evaluations. However, among the most critical choices in a local probing hybrid are the constraint classes that must be satised by the neighbourhood operator, and those classes modelled by the LS prober's objective function. These choices distribute the responsibility for solving the problem constraints, sharing them between the LS prober, and the higher level BT+CS algorithm. Recall that in probe backtracking, the problem constraints are divided into easy and hard constraint sets, as explained in the introduction. Here LS is the prober that solves easy sub-problem. Thus it must be capable of: (1) satisfying the easy constraints, while seeking to (2) optimize the objective function, and possibly (3) minimize the violation of hard constraints. Achieving (1) depends on nding neighbourhood operators that can satisfy the easy constraints, since these are normally the only constraints that an LS algorithm guarantees to satisfy. Achieving (2) is possible by including the problem's objective criteria in the LS objective function. To achieve (3), it is necessary to extend the objective function to penalize hard constraint violation. This reduces the risk of hard constraint violation, but clearly the probe backtracking procedure must still monitor and repair such constraints to remain sat-complete, as there is no guarantee that they will all be satised by the LS prober. 4.3 Related Work In this paper, the resource constraints of the scheduling problem are relaxed, and a temporal sub-problem which is easy to satisfy is solved separately. The approach was used in [8], and elsewhere (e.g. [5]). Here, the neighbourhood 17 N.B. the genetic algorithm cross-over and mutation operators can be viewed as specialized neighbourhood operators. operator of LS satises the temporal constraints, and the cost function and the resource constraints are modelled in an extended objective function. In [18], the LS probers did not penalize hard constraint violation, but some were able to satisfy the cost bound constraint. Local probing belongs to the class of LS/BT+CS hybridizations where LS is performed in search nodes of the global search tree. In [24], a constructive approach continues until a dead-end is reached, then an LS algorithm modies the current partial solution passing it back to the construction routine. In [4], a vehicle routing problem with side constraints is solved by performing LS after each insertion of a customer during the construction process (Incremental Local Optimization). In [28], a two-phase algorithm applies LS to generate a partial solution and uses BT to extend it to a complete one, repeating this process until a solution is found. In one approach presented in [27], an LS procedure, utilizing special constraints based on invariants of Localizer [20], is run at each node in the constructive search tree to select the next variable to be instantiated. The minimal perturbation neighbourhood operator used to satisfy the temporal constraints in the LS prober of Probe(Loc) is related to a hybridization class where BT+CS is used in neighbourhood exploration. For instance, in [25], limited discrepancy search ([13]) is applied to incrementally explore the neighbourhood. In the genetic algorithm approach presented in [2], instead of values, sub-domains of original variables are used as meta-variables, which are evaluated by solving the corresponding sub-CSPs by BT+CS. In [23], obtaining a neighbour is a constrained optimization problem that is solved by a branch and bound algorithm. In [17], a complete solution is constructed by tabu search using BT+CS to choose neighbours from sets of alternative partial assignments. 5 Conclusion This paper demonstrated that local probing hybrids can marry the strengths of constraint satisfaction techniques, including good satisfaction characteristics and proofs of problem infeasibility, with the superior optimization characteristics of local search. The paper detailed a local probing algorithm that solved a highly generic scheduling problem class, and showed it to be more eective than an LP-based hybrid, and a traditional pure local search algorithm, both of which were specialized for this class. Acknowledgements. The authors would like to thank Farid Ajili and Neil Yorke-Smith for their help and valuable feedback on this work. References 1. F. Ajili and H. El Sakkout. LP probing for piecewise linear optimization in scheduling. In Proc. of CP-AI-OR'01, pages 189203, 2001. 2. N. Barnier and P. Brisset. Combine & conquer: Genetic algorithm and CP for optimization. In Proc. of CP98, page 436, 1998. 3. C. Beck and P. Refalo. A hybrid approach to scheduling with earliness and tardiness costs. In Proc. of CP-AI-OR'01, pages 175188, 2001. 4. Y. Caseau and F. Laburthe. Heuristics for large constrained vehicle routing problems. Journal of Heuristics, 5(3):281303, 1999. 5. A. Cesta, A. Oddi, and S. Smith. A constraint-based method for project scheduling with time windows. Journal of Heuristics, 8(1):109136, 2002. 6. A. El-Kholy and B. Richards. Temporal and resource reasoning in planning: The parc PLAN approach. In Proc. of ECAI96, pages 614618, 1996. 7. H. El Sakkout. Improving Backtrack Search: Three Case Studies of Localized Dynamic Hybridization. PhD Thesis, Imperial College, London, 1999. 8. H. El Sakkout, T. Richards, and M. Wallace. Minimal perturbation in dynamic scheduling. In Proc. of ECAI98, pages 504508, 1998. 9. H. El Sakkout and M. Wallace. Probe backtrack search for minimal perturbation in dynamic scheduling. Constraints, 5(4):359388, 2000. 10. F. Focacci, F. Laburthe, and A. Lodi. Local search and constraint programming. In Handbook on Metaheuristics, Kluwer, 2002. To be published. 11. F. Glover. Future paths for integer programming and links to articial intelligence. Computers & Operations Research, 5:533549, 1986. 12. D.E. Goldberg. Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley, 1989. 13. W.D. Harvey and M.L. Ginsberg. Limited discrepancy search. In Proc. of IJCAI95, pages 607615, 1995. 14. J.H. Holland. Adaptation in Natural and Articial Systems. University of Michigan Press, Ann Arbor, 1975. 15. J.N. Hooker, Hak-Jin Kim, and G. Ottosson. A declarative modeling framework that integrates solution methods. Annals of Operations Res., 104:141161, 2001. 16. IC-Parc. ECLiPSe User manual. http://www.icparc.ic.ac.uk/eclipse/, 2001. 17. N. Jussien and O. Lhomme. Local search with constraint propagation and conictbased heuristics. In Proc. of AAAI-00, pages 169174, 2000. 18. O. Kamarainen, H. El Sakkout, and J. Lever. Local probing for resource constrained scheduling. In Proc. of the CP01 Workshop on Cooperative Solvers, 2001. 19. S. Kirkpatrick, C. Gelatt Jr., and M. Vecchi. Optimization by simulated annealing. Science, 220:671680, 1983. 20. L. Michel and P. Van Hentenryck. Localizer: A modeling language for local search. In Proc. of CP97, pages 237251, 1997. 21. S. Minton, M.D. Johnston, A.B. Philips, and P. Laird. Minimizing conicts: a heuristic repair method for constraint satisfaction and scheduling problems. Articial Intelligence, 58:161205, 1992. 22. N. Mladenovic and P. Hansen. Variable neighbourhood search. Computers & Operations Research, 24:10971100, 1997. 23. G. Pesant and M. Gendreau. A constraint programming framework for local search methods. Journal of Heuristics, 5(3):255279, 1999. 24. A. Schaerf. Combining local search and look-ahead for scheduling and constraint satisfaction problems. In Proc. of IJCAI97, pages 12541259, 1997. 25. P. Shaw. Using constraint programming and local search methods to solve vehicle routing problems. In Proc. of CP98, pages 417431, 1998. 26. C. Voudouris and E. Tsang. Partial constraint satisfaction problems and guided local search. In Proc. of PACT96, pages 337356, 1996. 27. M. Wallace and J. Schimpf. Finding the right hybrid algorithm - a combinatorial meta-problem. Annals of Math. and Articial Intelligence, 34(4):259269, 2002. 28. J. Zhang and H. Zhang. Combining local search and backtracking techniques for constraint satisfaction. In Proc. of AAAI96, pages 369374, 1996.
© Copyright 2024