68
Robust and reactive scheduling Christian Artigues LAAS-CNRS, Universit´ e de Toulouse, France TU M¨ unchen- Technology-Based Services and Operations Management July 20, 2011 C. Artigues TU M¨ unchen- Technology-Based Services and Operations Management, July 20, 2011 1 / 67

Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Robust and reactive scheduling

Christian Artigues

LAAS-CNRS, Universite de Toulouse, France

TU Munchen- Technology-Based Services and Operations ManagementJuly 20, 2011

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 1 / 67

Page 2: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

1 Introduction: scheduling under uncertainty

2 Reactive scheduling: the activity insertion problem

3 Robust scheduling: project scheduling with interval dataMinimum float computationThe Robust RCPSP

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 2 / 67

Page 3: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Resource-constrained schedulingRCPSP, Resource-Constrained Project Scheduling Problem

Example: 3 resource units available

i dur . res. usage

1 2 12 2 23 2 14 1 25 2 1

Schedule

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 3 / 67

Page 4: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

DefinitionsRCPSP, Resource-Constrained Project Scheduling Problem

V = {0, 1, . . . , n, n + 1} = set of activities (project) with 0 dummmystart activity and n + 1 dummy end activity

R set of resource types

ak availability of resource type k ∈ R

rik demand of activity i for resource type k ∈ R

E ⊂ V × V : precedence constraints

pi duration of activity i

Minimize the makespan Cmax

Cmax ≥ Si + pi i ∈ V

Sj ≥ Si + pi (i , j) ∈ E∑i∈A(t)

rik ≤ ak k ∈ R with A(t) = {i ∈ V |Si ≤ t ≤ Si + pi − 1}

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 4 / 67

Page 5: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Uncertainties

Various sources of uncertaintiesUncertain durationsUncertain resource demandsUnexpected activitiesResource breakdownsOthers (due dates, costs,...)

Different uncertainty levels and modelsThe set of activities and/or resource availabilities is completely unkownin advance→ On-line schedulingProbability distributions on problem parameters are available→ Stochastic schedulingNo probability distributions on problem parameters are availablebut a set of scenarios is available→ Robust schedulingAn initial set of activities and an estimation on problemparameters are available but subject to unexpected changes→ Reactive scheduling

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 5 / 67

Page 6: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Robust Scheduling

Application to scheduling of robust discrete optimizationS denote a set of scenariosXs denote the discrete set of feasible solutions under scenario s ∈ Sf (x , s) denote the objective function value for solution x ∈ Xs underscenario s.x∗s denote an optimal solution for scenario s,The robust discrete optimization problem consists in finding a solutionx feasible for all scenarios which either minimizes the worst-caseperformance under the set of scenarios, i.e.

minx∈∩s∈SXs

maxs∈S

f (x , s)

or the maximal regret in terms of optimality loss

minx∈∩s∈SXs

maxs∈S

(f (x , s)− f (x∗s , s))

.

“Open loop” setting: all decisions are made at time zero.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 6 / 67

Page 7: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Reactive Scheduling

“Closed loop” setting: decisions are taken for a certain time periodand updated at the next time period with the newly availableinformation.

Rolling horizon procedure (time-based rescheduling)1 At each step t starting with t = 0, consider a time interval It .2 Schedule all activities available in It (such that the release date ri ∈ It).3 The activities such that ri 6∈ It are either ignored or scheduled in a

relaxed or aggrageted way (ignoring resource constraints,. . . )4 Wait till the end of It , update information, set t ← t + 1 and go to

step 1.

Schedule repairing process (event-based rescheduling)1 Initially schedule all the available activities2 Control in real time the schedule feasibility (or optimality)3 As soon as feasibility is compromised perform a repairing procedure.

Go to step 2.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 7 / 67

Page 8: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Common issues for robust and reactive scheduling

Robust vs reactive ?

The two approaches need not necessarily be opposed. Find a robustschedule and repair it as soon as it becomes infeasible or notperformant enough.

Need for flexible solutions

For robust scheduling, we must provide a solution feasible for allscenariosFor reactive scheduling, we must provide a solution easily repairable.

A flexible solution is based on the decomposition of the problemdecision variables in two subsets (stages).

First-stage variables are taken at the highest decision levelSecond-stage (recourse) variables have scenario-dependent values andshould be easily adjustable in case of data change.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 8 / 67

Page 9: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Flexible Solution

Back to the schedule example

Description of the solution as a start-time vector S1 = S2 = 0,S3 = S4 = 2 and S5 = 3 is not flexible. If the duration of 1 increasesby 1, solution becomes infeasible.

Consider the start time as second-stage recourse variables andintroduce higher level first-stage sequencing variables:→ activity list scheduling→ partial order scheduling

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 9 / 67

Page 10: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Activity list solution representation

First-stage decision: sort activities in a totally orderedprecedence-compatible list

Second-stage decision : compute start-times by taking the activitiesin the list order and scheduling them as soon as possible (serialscheduling scheme)

2-list 3-scenario example (1 precedes 3)

2  

1  

3  

4  

2  

1  

3  

4  

2  

1  

3  

4  

2  

1  

3  

4  

2  

1  

3  4  

2  

1  

3  

4  

List  1,2,3,4   List  2,4,1,3  

The activity list representation yields flexible but unstable solutions

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 10 / 67

Page 11: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Partial-order solution representation

First-stage decision: compute an activity partial order that removesall resource conflictsSecond-stage decision : compute start-times by start the activities asearly as possible (ES-policy) w.r.t. to original and partial order-basedprecedence constraints

2-list 3-scenario example (1 precedes 3)

2  

1  

3  

4  

2  

1  

3  

4  

2  

1  

3  

4  

2  

1  

3  

4  

2  

1  

3  4  

2  

1  

3  

4  

Par)al  order  (1,4)  (2,3)   Par)al  order  (2,4)  

The partial order schedule representation yields flexible and stablesolutions (removing precedence constraints, decreasing durationsand/or resource demands cannot increase the makespan)

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 11 / 67

Page 12: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

1 Introduction: scheduling under uncertainty

2 Reactive scheduling: the activity insertion problem

3 Robust scheduling: project scheduling with interval dataMinimum float computationThe Robust RCPSP

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 12 / 67

Page 13: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Insertion problems in scheduling: generalities

An insertion problem is a scheduling problem in which the set ofactivities A is partitioned into two sets

The set of already scheduled activities A \ I (forming the baselineschedule).

The set of unscheduled activities I (to be inserted in the baselineschedule).

Solving the insertion problem amounts to schedule all the (scheduledand unscheduled) activities

Subject to scheduling constraints (precedence constraints, timewindows, resource-constraints).

Optimizing a scheduling objective function (makespan,...).

Involving constraints or objective of stability: the obtained schedulemust respect in some way the baseline schedule.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 13 / 67

Page 14: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Interest of solving insertion problems

Reactive scheduling

Insertion of unexpected activities without performing a globalrescheduling.

Neighborhood search

Neighborhood defined in terms of reinsertion of (critical) activities.

Issues for designing an insertion problem

The insertion algorithm should be fast, preferably polynomial.

The search space should contain a significant number of solutions.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 14 / 67

Page 15: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

The disjunctive-graph model

Disjunctive graph G = (V ,U ,E )

n nodes V .

Precedence constraints (original and set by the baseline schedule)modeled by directed arcs U.

Each unscheduled activity is linked to any other activity requiring thesame machine through a pair of opposite (disjunctive) arcs. E is theset of all such pairs.

Each arc is valuated by the duration of the origin activity.

Dummy nodes 0 (n + 1) is a predecessor (successor) of all activities A.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 15 / 67

Page 16: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Relevant work for disjunctive insertion problems

Vaessens, R.J.M., Generalized Job Shop Scheduling: Complexity and Local Search, Ph.D.thesis, Department of Mathematics and Computing Science, Eindhoven University ofTechnology, 1995.

F. Werner and A. Winkler, Insertion techniques for the heuristic solution of the job shopproblem, Discrete Applied Mathematics 58 (1995)

P. Brucker and J. Neyer, Tabu-search for the multi-mode job-shop problem, OR Spektrum20 (1998)

Y.N. Sotskov, T. Tautenhahn and F. Werner, On the application of insertion techniquesfor job shop problems with setup times, RAIRO Operations Research. 33 (1999)

C. Artigues and F. Roubellat, An efficient algorithm for operation insertion in amulti-resource job-shop schedule with sequence-dependent setup times, ProductionPlanning and Control 2 (2002)

T. Kis and A. Hertz, A lower bound for the job insertion problem, Discrete AppliedMathematics 128 (2003)

H. Groflin and A. Klinkert, Feasible insertions in job shop scheduling, short cycles andstable sets, 177 (2007)

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 16 / 67

Page 17: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

The (single-)resource-constrained project schedulingproblem with minimum and maximum time lags(RCPSP/max)

Definition

a resource of availability B

n activities.

Each activity must be processed without interruption on biunspecified units of the resource.

The availability of the resource cannot be exceeded at any timeperiod.

Generalized Precedence constraints between activities Sj − Si ≥ lij , apositive or negative time lag.

Objective: makespan minimization.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 17 / 67

Page 18: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Insertion problem example

Data

m = 3

n = 5, I = {1}i 0 1 2 3 4 5 6pi 0 6 4 2 4 2 0bi 0 1 2 2 2 3 0

precedence constraints and baseline schedule

From

Neumann el al (2003)

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 18 / 67

Page 19: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Resource flow network

Definition

a flow fij ≥ 0 from activity i to activity j represents the number ofmachines on j is a direct successor of activity i .

Each activity has a capacity of bi units.

Activity 0 is a source of m units while Activity n + 1 is a sink.

A flow is valid for an activity set V if it satisfies the conservationproperties and the activity capacity on each resource for each activityof V

The following resource flow is valid for A \ {1}: f03 = 2, f34 = 2, f45 = 2,f05 = 2, f52 = 2, f56 = 1, f26 = 1.Fortemps and Hapke (1997), Artigues and Roubellat (2000), Neumann el al (2003)

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 19 / 67

Page 20: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Flow formulation of the insertion problem (RCPIP/max)

Baseline resource flow

A Baseline resource flow is any flow valid for A \ I such that

There is no flow involving I

Sj < Si + pi in the baseline schedule implies fijk = 0

Graph induced by a flow

The graph induced by a flow is the graph of precedence constraintsaugmented by an arc (i , j) valuated by pi for each flow fij > 0.

RCPIP/max formulation

Given a baseline flow f , find a flow f ′ valid for A such that its inducedgraph has a minimal longest path length between 0 and n + 1 withoutincreasing the flow between two scheduled activities.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 20 / 67

Page 21: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Insertion example

Remark

An insertion position can be represented by a subcut (α, β) of the graphinduced by the baseline flow such that

∑i∈α,j∈β fij ≥ bi

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 21 / 67

Page 22: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Characterization of feasible insertions for the search variantof the RCPIP/max

Search variant

To obtain the search variant of an insertion such that Cmax ≤ v , we setthe value of arc (n + 1, 0) to max(l(n+1)0,−v).

Distance matrix

δvij denotes the length of the longest path from i to j in the graphinduced by the baseline flow for a makespan of at most v .

δvij can be computed in O(n3) by the Floyd-Warshall algorithm.

Necessary condition for feasibility

There is no solution with a makespan of at most v is the problem ofcomputing Matrix δv admits no solution.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 22 / 67

Page 23: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Characterization of feasible insertions for the search variantof the RCPIP/max

Inserting x into (α, β) may generated the following cycles (a ∈ α, b ∈ β).

Insertion-induced elementary cycles

a

x

bδvbx

max(pa, δvax)

δvxa

max(px , δvxb)

δvab

δvba

Theorem

The insertion of x in an insertion position (α, β) is feasible if and only ifmax(L1, L2, L3) ≤ 0 with L1 = maxa∈α(pa + δvxa), L2 = maxb∈β(px + δvbx),L3 = max(a,b)∈α×β(pa + px + δvba).

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 23 / 67

Page 24: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Problem complexity

Theorem

The RCPIP/max is NP hard

Proof

We prove NP-completeness of the decision variant by reduction fromthe independent set problem.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 24 / 67

Page 25: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Proof (illustration)

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 25 / 67

Page 26: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

RCPSP with minimum time lags only (optimizationvariant)

insertion-induced elementary cycles and 0, n + 1 longest paths

Consider distance matrix δ∞ij , a ∈ α, b ∈ β

a x

b n+1a x0(path 3)

δ∞0a pa px δ∞b(n+1)

(cycle 3)δ∞ba

x b0 n+1

δ∞0x px δ∞b(n+1)

(cycle 2) δ∞bx

δ∞0a pa δ∞x(n+1)

0 n+1

δ∞xa(cycle 1)

(path 1) (path 2)

The expression of the longest 0, n + 1 paths allow to define dominancerelations between insertion positions.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 26 / 67

Page 27: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

A polynomial insertion algorithm InsAct

Definitions

γ0 = {i ∈ A|δ∞ix = 0 and δ∞xi = 0} is the set of activities synchronizedwith x .

α0 = {i ∈ V \ γ0|δ∞ix ≥ 0}β0 = V \ (γ0 ∪ α0)

µ(α, β) = {i ∈ α|δ∞0i + pi = maxAa∈α(δ∞0a + pa)}ν(α, β) = {i ∈ β|δ∞i(n+1) = maxb∈β(δ∞b(n+1))}ν ′(α, β) = {i ∈ ν|δ∞xi = −∞}

Algorithm O(n2m)

Set initial cut (α, β) to (α0, β0)

While there remains enough capacity in (α, β) perform evaluaterecursively all subcuts obtained by removing µ from α and set nextcut (α, β) to (α ∪ ν ′, β \ ν).

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 27 / 67

Page 28: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

RCPSP with minimum time lags only Example

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 28 / 67

Page 29: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Computational experiments: the standard RCPSP

600 Kolisch, Sprecher and Drexl instances with 120 activities

For each instance,

(Greedily) compute Initial schedule and initial flowRandomly generate an unexpected activity (3 parameters durationrange, time window tightness, resource demand level)insert the activity and compute the resulting makespan

3 compared insertion algorithm

ReschIns: proposed insertion algorithmParLft: parallel schedule generation scheme and min Latest FinishingTime priority ruleReschInsActive: proposed insertion algorithm+ 1 active schedulegeneration scheme pass

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 29 / 67

Page 30: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Computational results: the standard RCPSP

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 30 / 67

Page 31: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Conclusion

Even inserting a single activity is hard when maximum time lags areconsidered with the resource-flow model.

Can we a find polynomial insertion framework for the RCPSP/max ?

Use the polynomial algorithm without max. time lags as a heuristic ?

Good results for solving insertion problems with minimum time-lagsonly when associated with a fast active schedule generation schemeprocedure

C. Artigues and F. Roubellat, A polynomial activity insertion algorithm in a multi-resourceschedule with cumulative constraints and multiple modes, European Journal of OperationalResearch 127 (2000)C. Artigues, P. Michelon and S. Reusser, Insertion techniques for static and dynamicresource-constrained project scheduling, European Journal of Operational Research 149 (2003)

C. Artigues, C. Briand, Complexity of insertion problems for resource-constrained project

scheduling with minimum and maximum time lags, Journal of Scheduling, 12(5), pp.447-460,

2009

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 31 / 67

Page 32: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

1 Introduction: scheduling under uncertainty

2 Reactive scheduling: the activity insertion problem

3 Robust scheduling: project scheduling with interval dataMinimum float computationThe Robust RCPSP

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 32 / 67

Page 33: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Activity Network with interval data

0  

1  

2  

3  

4  

5  

[0,0]

[2,4] [3,5]

[2,2] [1,2]

[0,0]

Data

Network with n activities subject to precedence constraintsduration interval

[dmini , dmax

i

]scenario d ∈ D = Πn

i=1[dmini , dmax

i ]

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 33 / 67

Page 34: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Basic problem : computing resource-unconstrained activityfloats

Activities attributes

Best earliest/latest starting times → PWorse earliest/latest starting times → PMinimum activity slack → NP − hard

Interests

Criticity of an activity at the worst case among all scenarios

Compute the float fi of the activity i for a given scenario

fi = lsti − esti = l∗0,n+1 − (l∗0,i + l∗i,n+1)esti et lsti : earliest and latest starting timesl∗i,j : longest path from i to j

Problem

mind∈D fi (d), ∀i = 1, . . . , n

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 34 / 67

Page 35: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Float property

Dubois et al.There exists an extreme scenario d∗ such that fi (d

∗) = mind∈D fi (d)2n scenarios

For each activity i , there exists a path p and its induced extremescenario dmax(p) such that fi (d

max(p)) = mind∈D fi (d)Where dmax(p) fix all the arcs of p set to dmax and others set to dmin

The Dubois et al. Path algorithm parses all the paths and computes allthe activityJ. Fortin, P. Zielinski, D. Dubois and H. Fargier, Criticality analysis ofactivity networks under interval uncertainty Journal of Scheduling,13(6), 609-627 (2010)

RemarkIt may be costly to enumerate all the paths !

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 35 / 67

Page 36: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Path algorithm

0  

1  

2  

3  

4  

5  

[0,0]  

[2,4]   [3,5]  

[2,2]   [1,2]  

[0,0]  

0  

1  

2  

3  

4  

5  

[0]  

[4]   [3]  

[2]   [2]  

[0]  

0  

1  

2  

3  

4  

5  

[0]  

[4]   [5]  

[2]   [1]  

[0,0]  

0  

1  

2  

3  

4  

5  

[0,0]  

[2]   [3]  

[2]   [2]  

[0,0]  

0   0  

3   1  

0   0  

4  6  

0   0  

1   1  

[dura0on]   float  

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 36 / 67

Page 37: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Activities-Independent MIP

Q(k) :

min z(k) = Sn+1 −∑i

dmaxi xi (1)

subject to

z(k) ≥ z(k − 1), (2)

Sj ≥ Si + dmini + (dmax

i − dmini )xi ∀(i , j) ∈ A, (3)

xi ≤∑j∈Γ−1

i

xj ≤ 1 ∀i 6= 0, n + 1, (4)

xi ≤∑j∈Γi

xj ≤ 1 ∀i 6= 0, n + 1, (5)

x0 = xn+1 = 1, (6)∑i∈Uk

xi ≥ 1, (7)

xi ∈ {0, 1} ∀i ∈ V . (8)

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 37 / 67

Page 38: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Activities-dependent MIP

P(k) :

min fk = Sn+1 −∑i

dmaxi xi (9)

subject to

Sj ≥ Si + dmini + (dmax

i − dmini )xi ∀(i , j) ∈ A, (10)

xi ≤∑j∈Γ−1

i

xj ≤ 1 ∀i 6= 0, n + 1, (11)

xi ≤∑j∈Γi

xj ≤ 1 ∀i 6= 0, n + 1, (12)

x0 = xn+1 = 1, (13)

xk = 1, (14)

xi ∈ {0, 1} ∀i ∈ V . (15)

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 38 / 67

Page 39: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Float properties

For an extreme scenario, there are at most 2 points where the longestpath l∗0,n+1 and the longest path p traversing i diverge

There exists (a, b) ∈ p such that :

l∗0,n+1 = l∗0,a + l∗a,b + l∗b,n+1

l∗0,i = l∗0,a + l∗a,il∗i,n+1 = l∗i,b + l∗b,n+1

l∗a,b = l∗a,b(dmin) + dmaxa − dmin

a

The float is valid for all activities of p between a and b

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 39 / 67

Page 40: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

A new branch and bound algorithm

Branch and bound for each activity i

Root node: a partial path reduced to {i}Left extension of node {a, . . . , i , . . . , b} generated by inserting apredecessor of a at the beginning of the partial pathRight extension of node {a, . . . , i , . . . , b} generated by appending asuccessor of b at the end of the partial pathChild nodes are either all possible left etensions of all possible rightextensionsUse of lower bound and dominance rules based on path structures

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 40 / 67

Page 41: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Instances

Density of G = (V ,A). Order strength = |A+||V |(|V |−1)/2

120-activities PSPLIB-instances. 0, 1 ≤ OS ≥ 0, 5 anddurations ∈ [d ; 1, 2d ]

100-activities instances. 0, 1 ≤ OS ≤ 0, 9 and durations ∈ [d ; 1, 2d ]

Modified : durations ∈ [d ∈ [10; 50α]; [d ; (1 + β)d ]].α, β ∈ {0, 3; 0, 6; 0, 9}

Run on an Intel 2.6 GHz

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 41 / 67

Page 42: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Original instances

serie average time sec. maximum timePath MIPd BB Path MIPd BB

PSPLIB

OS ∈ [0.1, 0.5] < 0.005 4.55 < 0.005 0.01 23.02 0.01

RG

OS = 0.1 < 0.005 0.25 < 0.005 0.01 0.33 0.01OS = 0.2 < 0.005 0.54 < 0.005 0.01 0.69 0.01OS = 0.3 0.02 1.08 < 0.005 0.02 1.61 0.01OS = 0.4 0.04 2.29 < 0.005 0.05 3.40 0.01OS = 0.5 0.12 4.99 0.01 0.19 7.71 0.02OS = 0.6 0.43 9.22 0.01 0.62 16.51 0.02OS = 0.7 2.50 14.95 0.02 3.79 21.13 0.04OS = 0.8 33.96 23.12 0.02 55.99 98.80 0.04OS = 0.9 > 1800 17.43 0.02 > 1800 111.45 0.03

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 42 / 67

Page 43: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Modified instances

serie average time sec. maximum timePath MIPd BB Path MIPd BB

α− β = 0.3OS = 0.1 < 0.005 0.24 < 0.005 0.01 0.33 0.01OS = 0.2 < 0.005 0.51 < 0.005 0.01 0.67 0.01OS = 0.3 0.02 1.03 < 0.005 0.02 1.58 0.01OS = 0.4 0.04 2.17 < 0.005 0.06 3.6 0.01OS = 0.5 0.12 4.86 0.01 0.22 8.64 0.02OS = 0.6 0.44 9.04 0.01 0.62 14.07 0.02OS = 0.7 2.51 15.65 0.02 3.83 24.78 0.04OS = 0.8 34.37 24.62 0.02 58.01 73.29 0.06OS = 0.9 > 1800 17.12 0.02 > 1800 78.14 0.04α− β = 0.6OS = 0.1 < 0.005 0.26 < 0.005 0.01 0.35 < 0.005OS = 0.2 < 0.005 0.56 < 0.005 0.01 0.72 0.01OS = 0.3 0.02 1.15 < 0.005 0.02 1.71 0.01OS = 0.4 0.04 2.37 < 0.005 0.05 3.67 0.01OS = 0.5 0.12 5.34 0.01 0.17 8.08 0.02OS = 0.6 0.43 10.71 0.01 0.65 17.49 0.02OS = 0.7 2.5 23.43 0.02 4.03 52.17 0.04OS = 0.8 34.35 63.89 0.02 56.45 157.07 0.06OS = 0.9 > 1800 94.61 0.02 > 1800 590.17 0.04α− β = 0.9OS = 0.1 < 0.005 0.27 < 0.005 < 0.005 0.34 0.01OS = 0.2 < 0.005 0.6 < 0.005 0.01 0.82 0.01OS = 0.3 0.02 1.25 < 0.005 0.02 1.85 0.01OS = 0.4 0.04 2.55 < 0.005 0.05 3.82 0.01OS = 0.5 0.12 5.77 0.01 0.22 9.49 0.02OS = 0.6 0.43 12.12 0.01 0.66 23.89 0.02OS = 0.7 2.52 34.76 0.01 3.87 84.68 0.03OS = 0.8 34.38 124.22 0.02 57.71 267.88 0.05OS = 0.9 > 1800 338.98 0.01 > 1800 1776.73 0.08

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 43 / 67

Page 44: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

1 Introduction: scheduling under uncertainty

2 Reactive scheduling: the activity insertion problem

3 Robust scheduling: project scheduling with interval dataMinimum float computationThe Robust RCPSP

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 44 / 67

Page 45: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Project schedulingRCPSP, Res.-Constr. Project Scheduling Problem

Example: 3 resource units available

i dur . res. usage

1 2 12 2 23 2 14 1 25 2 1

Schedule

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 45 / 67

Page 46: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

ES policies

Example: 3 resource units available

i poss. durs. res. usage

1 {1, 2, 8} 12 {2, 3} 23 {2} 14 {1, 3} 25 {1, 2} 1

Possible resource allocations

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 46 / 67

Page 47: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

ES policies → resource flows

Original network

Resource flows for previous two allocations

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 47 / 67

Page 48: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Definitions

V = {0, 1, . . . , n, n + 1} = set of activities (project) with 0 dummmystart activity and n + 1 dummy end activity

R set of resource types

ak availability of resource type k ∈ R

rik demand of activity i for resource type k ∈ R

E ⊂ V × V : precedence constraints

Pi ⊂ R+: set of possible durations of activity i ∈ V , withP0 = Pn+1 = {0} (either interval or discrete set)

p = (p0, p1, . . . , pn, pn+1) with pi ∈ Pi : sample / scenario

P = P0 × P1 × . . .× Pn+1: all scenarios

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 48 / 67

Page 49: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Definitions (2)

Decision variables in RCPSP: start times

Decision variables for ES policies: selection X ⊂ V × V

Feasibility of a selection:1 G (V ,E ∪ X ) acyclic2 no more forbidden sets for E ∪ X , with a forbidden set a set of

incomparable activities whose resource consumption jointly exceed theresource availability.For the example: {1, 2, 5}, {1, 3, 4}, {2, 4}, {3, 4, 5}

When each |Pi | = 1, finding an ES policy with lowest longest pathlength in G (V ,E ∪ X ) solves the (deterministic) RCPSP(ES policies generalize the disjunctive-graph representation for jobshops)

There is a one-to-many relation between feasible selections andresource flows

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 49 / 67

Page 50: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Evaluating absolute robustness

sn+1(X ,p) =longest path length in graph G (V ,E ∪ X )

with node weights p

X =set of all feasible selections

s∗n+1(p) = minX∈X

sn+1(X ,p) (RCPSP)

regret ρ(X ,p) =sn+1(X ,p)− s∗n+1(p)

Maximum regret for feasible selection X is

ρmax(X ) = maxp∈P

ρ(X ,p) = maxp∈P

{sn+1(X ,p)− s∗n+1(p)

}Computing ρ(X ,p) and ρmax(X ) is NP-hard.

Let an extreme scenario have pi = maxPi or = minPi , ∀i ∈ V .Theorem: the max absolute regret can always be reached in an extremescenario.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 50 / 67

Page 51: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Absolute minimax regret optimization

The optimization problem AR-RCPSP that we wish to solve can now bestated as follows:

ρ∗ = minX∈X

ρmax(X ) = minX∈X

maxp∈P

ρ(X ,p)

= minX∈X

min ρsubject toρ ≥ sn+1(X ,p)− s∗n+1(p) ∀p ∈ P

This does require prior knowledge of s∗n+1(p).

Let P = {p1, . . . ,p|P|}.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 51 / 67

Page 52: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

FormulationScenario-independent constraints

∑j∈V ,j 6=i

fjik =∑

j∈V ,j 6=i

fijk = rik ∀i ∈ V \ {0, n + 1},∀k ∈ R

∑j∈V ,j 6=0

f0jk =∑

j∈V ,j 6=(n+1)

fj,n+1,k = ak ∀k ∈ R

fijk ≥ 0 ∀(i , j) ∈ V × V ,∀k ∈ R

0 ≤ fijk ≤ Mxij ∀(i , j) ∈ V × V ,∀k ∈ R

xij = 1 ∀(i , j) ∈ E

xij ∈ {0, 1} ∀(i , j) ∈ V × V

Variables:fijk = number of resources type k going directly from act i to jxij = 1 if (i , j) ∈ E ∪ X , with X the selection to be made

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 52 / 67

Page 53: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

FormulationScenario-dependent constraints

ρ∗ = min ρ

subject to

ρ ≥ Shn+1 − s∗n+1(ph) h = 1, . . . , |P|

Shj ≥ Sh

i + phi −M(1− xij)∀(i , j) ∈ V × V , i 6= j ,

h = 1, . . . , |P|Shi ≥ 0 ∀i ∈ V , h = 1, . . . , |P|

with Shj = (earliest) starting time of activity j in scenario h

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 53 / 67

Page 54: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Full formulation (“master”)

ρ∗ = min ρ

subject to

ρ ≥ Shn+1 − s∗n+1(ph) h = 1, . . . , |P|

Shj ≥ Sh

i + phi −M(1− xij)∀(i , j) ∈ V × V , i 6= j ,

h = 1, . . . , |P|Shi ≥ 0 ∀i ∈ V , h = 1, . . . , |P|∑

j∈V ,j 6=i

fjik =∑

j∈V ,j 6=i

fijk = rik ∀i ∈ V \ {0, n + 1},∀k ∈ R

∑j∈V ,j 6=0

f0jk =∑

j∈V ,j 6=(n+1)

fj,n+1,k = ak ∀k ∈ R

fijk ≥ 0 ∀(i , j) ∈ V × V ,∀k ∈ R

0 ≤ fijk ≤ Mxij ∀(i , j) ∈ V × V ,∀k ∈ R

xij = 1 ∀(i , j) ∈ E

xij ∈ {0, 1} ∀(i , j) ∈ V × V

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 54 / 67

Page 55: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Scenario relaxation1

Replace P by P; optimal objective value is ρ∗(P).

1: initialisationP1 = p1, q = 1, LB = 0, UB = +∞. Compute s∗n+1(p1).

2: master problemSolve the restricted master to obtain LB = ρ∗(Pq) and ES policy Xq. IfLB = UB then stop.

3: maximum-regret computationEvaluate the maximum regret ρmax(Xq) of policy Xq against all scenarios andobtain worst-case duration vector pq+1 and makespan s∗n+1(pq+1). SetUB = min{ρmax(Xq);UB}.

4: optimality checkIf LB = UB then stop; else set q = q + 1, Pq = Pq−1 ∪ {pq} and go to Step2.

1T. Assavapokee, M.J. Realff, and J.C. Ammons. A new min-max regret robustoptimization approach for interval data uncertainty. JOTA, 137:297–316, 2008.

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 55 / 67

Page 56: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Step 3: evaluate selection XSimultaneous computation of the maximal regret and of new scenario + RCPSP solution

ρmax(X ) = maxp∈P

(i,j)∈E∪Xpiφij

− S∗(p)

subject to ∑

(i,j)∈E∪Xφij =

∑(j,i)∈E∪X

φji ∀i ∈ V \ {0, n + 1}

∑(0,j)∈E∪X

φ0j =∑

(j,n+1)∈E∪Xφj,n+1 = 1

φij ≥ 0 ∀(i , j) ∈ E ∪ X

S∗(p) = minY∈X

Sn+1

subject to Sj ≥ Si + piS0 = 0

∀(i , j) ∈ E ∪ Y

The variables φij route a unit flow through the network G (V ,E ∪ X )

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 56 / 67

Page 57: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Step 3 (ii)integrate two levels

ρmax(X ) = maxp∈P

(i,j)∈E∪Xpiφij

− Sn+1

subject to ∑

(i,j)∈E∪Xφij =

∑(j,i)∈E∪X

φji ∀i ∈ V \ {0, n + 1}

∑(0,j)∈E∪X

φ0j =∑

(j,n+1)∈E∪Xφj,n+1 = 1

φij ≥ 0 ∀(i , j) ∈ E ∪ X

Sj ≥ Si + pi ∀(i , j) ∈ E ∪ Y

S0 = 0

Y ∈ X

For Y ∈ X : resource-flow formulation.Still non-linearity in the objective. . .

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 57 / 67

Page 58: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Step 3 (iii)remove non-linearity

We need only consider two values pmini = minPi and pmax

i = maxPi for pi(i ∈ V \ {0, n + 1}).

New variables ai (i = 1, . . . , n): replace pi by (1− ai )pmini + aip

maxi .

Replace φij in the constraints by φminij + φmax

ij , in which φminij fulfills the role

of φij when ai = 0 and φmaxij functions as φij in the cases where ai = 1. This

is achieved by adding :∑(i,j)∈E∪X

φmaxij ≤ ai ∀i ∈ V \ {0, n + 1}

∑(i,j)∈E∪X

φminij ≤ 1− ai ∀i ∈ V \ {0, n + 1}

Replace piφij by pmini φmin

ij + pmaxi φmax

ij .

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 58 / 67

Page 59: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Step 3 (iv)“bounded contribution”

Step 3 absorbs most of the running time.

Let z = obj subproblem; we look for pq+1 such that z ≥ LB + 1.

→ Replace the objective function of Step 3 by

b∗(X ) = min b

and add constraints

z + b ≥ LB + 1

z ≤

∑(i,j)∈E∪X

pmini φmin

ij + pmaxi φmax

ij

− Sn+1

z , b ≥ 0

This model has a solution b∗(X ) = 0 iff exists z ≥ LB + 1.

Drawback: value S∗n+1 may not be the optimal makespan. We need to solvea standard RCPSP instance to obtain s∗n+1(p∗) (in Step 3) before adding p∗

to P (in Step 4).C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 59 / 67

Page 60: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Heuristic

1: initialisationP1 = {p1}, q = 1 and compute s∗n+1(p1).

2: generate new solutionUse s∗n+1(pq) and Pq to produce a new approximate solution Xq.

3: generate new duration vectorsGenerate one or more new duration vectors pq+1 that represent scenariosunder which policy Xq performs badly, together with an RCPSP upper bounds∗n+1(pq+1).

4: iterateSet q = q + 1, Pq = Pq−1 ∪ {pq} and go to Step 2.

Step 2: list representation of optimal schedule for p1 and “path relinking”with current best → schedule → resource flow, and choices by computingregret only for P.

Step 3: upper bound on regret of X via maxp∈P {sn+1(X ,p)− sn+1(∅,p)}

Cycling → other scenario-generation options. . .

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 60 / 67

Page 61: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Scenario relaxation, exact algorithmn = 10, 10 instances2 per cell

parametersstandard bounded contribution

timeit

timeit

OS RF RC St 2 St 3 tot St 2 St 3 tot

.4.45

.3 0.03 0.04 0.07 2.7 0.02 0.02 0.04 2.7

.6 0.12 1.15 1.27 2.1 0.12 0.71 0.83 2.1

.9.3 11.30 15.27 26.57 9.0 10.23 9.15 19.38 15.40.6 16.48 882.59 899.07 1.6(2) 19.06 734.84 753.90 4.25(1)

.6.45

.3 0.01 0.02 0.03 2.1 0.01 0.02 0.03 2.8

.6 0.06 0.12 0.18 2.1 0.06 0.07 0.13 2.8

.9.3 0.15 0.40 0.55 3.4 0.17 0.24 0.41 4.3.6 0.20 11.17 11.37 1.2 0.22 14.77 14.99 1.7

.8.45

.3 0.01 0.02 0.03 1.2 0.01 0.00 0.01 1.2

.6 0.01 0.02 0.03 1.2 0.01 0.02 0.03 1.2

.9.3 0.03 0.05 0.08 1.8 0.03 0.04 0.07 1.8.6 0.05 0.14 0.19 1 0.05 0.14 0.19 1

2Data generated by RanGen, pmin and pmax generated randomly(E. Demeulemeester, M. Vanhoucke, and W. Herroelen. A random network generatorfor activity-on-the-node networks. JOS, 6:13–34, 2003).

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 61 / 67

Page 62: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Comparison exact / heuristicn = 10

parameters exact heuristicOS RF RC time gap∗ opt. time gap∗ opt.

0.40.45

0.3 0.04 0.00 10 2.03 17.78 50.6 0.83 0.00 10 2.53 31.37 5

0.90.3 19.38 0.00 10 3.88 44.87 40.6 753.90 0.00 9 2.58 25.00 5

0.60.45

0.3 0.03 0.00 10 1.36 28.21 70.6 0.13 0.00 10 2.44 25.00 7

0.90.3 0.41 0.00 10 2.24 30.51 40.6 14.99 0.00 10 1.86 11.90 8

0.80.45

0.3 0.01 0.00 10 0.21 0.00 100.6 0.03 0.00 10 0.00 0.00 10

0.90.3 0.07 0.00 10 1.22 17.50 70.6 0.19 0.00 10 0.73 0.00 10

“opt.” based on CPU bound of 30 min for exact algorithm

Stopping criteria heuristic: CPU time (30 min), max nr of scenarios (100)and max nr consecutive cycling occurrences (10).

gap∗ = 100× f (alg)−f (opt)δ , with δ = 1

n

∑ni=1

(pmaxi − pmin

i

).

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 62 / 67

Page 63: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Comparison exact / heuristicn = 20

parameters exact heuristicOS RF RC time opt. time opt.

0.40.45

0.3 542.31 8 2.00 10.6 1947.81 1 3.22 0

0.90.3 2247.11 0 3.59 00.6 1830.47 1 5.18 0

0.60.45

0.3 61.00 10 1.63 20.6 1559.89 0 2.57 1

0.90.3 1466.95 0 2.58 30.6 2081.57 1 1.87 0

0.80.45

0.3 0.68 10 0.84 50.6 133.15 10 1.10 4

0.90.3 177.56 10 1.41 20.6 1808.54 7 0.29 0

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 63 / 67

Page 64: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Other comparisons?n = 20

We compute

LB(X ,Y ) = maxp∈P

{sn+1

(X , p

)− sn+1

(Y , p

)},

via MIP. This is a lower bound for ρmax(X ) for any feasible Y .

parametersLB(exact, heur) LB(heur, exact)

OS RF RC

0.40.45

0.3 0.00 31.480.6 49.29 33.12

0.90.3 80.63 38.100.6 89.45 4.56

0.60.45

0.3 0.00 36.210.6 79.05 42.92

0.90.3 77.81 42.650.6 51.26 33.64

0.80.45

0.3 0.00 33.290.6 0.00 75.42

0.90.3 0.00 47.380.6 18.04 68.00

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 64 / 67

Page 65: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Other heuristics

Heuristic 2

1: determine the average duration pi = b pmini +pmax

i

2 c for each activity i2: solve the corresponding deterministic RCPSP3: impose a resource flow on this deterministic schedule4: output the solution found

Heuristic 3

1: ignore the activity durations2: find a solution (ES policy) with a transitive closure having the minimum

number of arcs via MIP

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 65 / 67

Page 66: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Comparison heuristics n = 30

parameters Scen-Rel-Heur Heuristic 2 Heuristic 3OS RF RC time opt. time opt. time opt.

0.40.45

0.3 4.99 2 0.00 0 0.27 00.6 6.89 1 0.00 0 105.54 1

0.90.3 25.79 0 0.00 0 703.85 00.6 17.59 0 0.00 0 1800.17 0

0.60.45

0.3 21.15 1 0.00 1 976.51 00.6 17.30 1 0.00 0 1800.06 0

0.90.3 52.18 0 0.01 0 1800.03 00.6 53.07 0 0.00 0 1800.04 0

0.80.45

0.3 14.74 2 0.01 0 1753.83 00.6 11.62 1 0.01 0 1800.07 0

0.90.3 31.81 1 1.19 0 1800.05 00.6 32.46 0 0.00 0 1800.02 0

parameters SRH H2 H3OS RF RC H2 H3 SRH H3 SRH H2

0.40.45

0.3 36.90 41.65 150.30 57.24 239.00 77.620.6 39.20 43.70 403.50 108.31 344.00 94.87

0.90.3 15.50 18.80 381.80 163.44 310.10 124.640.6 55.20 58.80 420.10 122.18 390.70 210.23

0.60.45

0.3 34.20 39.40 244.40 132.52 197.00 97.560.6 39.80 54.90 332.00 142.10 304.60 56.78

0.90.3 34.60 56.50 354.80 180.30 365.10 169.230.6 73.70 86.90 467.30 156.34 444.80 274.59

0.80.45

0.3 18.50 28.10 206.60 93.24 169.30 73.520.6 57.00 86.40 376.00 196.03 358.80 216.76

0.90.3 59.70 90.50 406.70 215.73 400.80 91.08

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 66 / 67

Page 67: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

Summary and conclusions

Robust ES-policies for resource-constrained project scheduling underuncertainty

Scenario-relaxation algorithm and heuristic

Only small instances. . .

Evaluation? Simulation?Number of scenarios is very high.

Dependence in durations?‘Less’ uncertainty? (e.g., Bertsimas & Sim)Is it at all appropriate to model duration uncertainty in this way?

Robustness / regret objectives for NP-hard problems? In our case,evaluation comes down to solving a multi-mode RCPSP.

Artigues, C., Leus, R. and Talla Nobibon, F. (2010). Robust optimization for

resource-constrained project scheduling with uncertain activity durations.

Research report 1034, Department of Decision Sciences and Information

Management, FBE, KULeuvenC. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 67 / 67

Page 68: Robust and reactive scheduling - LAAS · An initial set of activities and an estimation on problem parameters are available but subject to unexpected changes!Reactive scheduling C

C. Artigues TU Munchen- Technology-Based Services and Operations Management, July 20, 2011 67 / 67