CP 2004 presentation
Download
Report
Transcript CP 2004 presentation
Analysis of a Benchmark Generator for the
Reactive Scheduling Problem
Amedeo Cesta1, Nicola Policella2, and Riccardo Rasconi1
1ISTC-cnr,
Institute for Cognitive Science and Technology
2ESA/ESOC, European Space Agency
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
Introduction
•
Q8: Should the competition include benchmarks for dynamic scheduling
problems, such as on-line scheduling and scheduling execution
monitoring?
– Reactive Scheduling Test-sets Generator (this talk)
•
Our goal is to produce a General Framework for Project Scheduling
Problems
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
2
Project Scheduling
•
We focus our attention on Project Scheduling
•
Scheduling is primarily concerned with figuring out WHEN
tasks/activities should be executed so that the final solution guarantees
“good performance”
– Management of space missions
– Transportation scheduling
– Production chains in a factory
•
Different techniques have been studied by many scientific communities,
such as the Artificial Intelligence, Management Science and Operations
Research
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
3
Project Scheduling Problems [RCPSP/max]
4
5
0
[2, 5]
1
1
Project
Activity
Network
18
5
1
4
0
12
6
max separation
r1
r2
temporal constraints
resource
constraints
c1=2
t
c2=3
resources
t
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
4
Schedule’s life is short!
•
Unfortunately the synthesis of initially feasible solutions is hardly ever
sufficient!
– In real working environments, unforeseen events tend to quickly
invalidate the schedules predictive assumptions
•
Approaching a scheduling problem requires the coupling of
– a predictive scheduling engine, able to propose a possible
solution in a compact representation, and
– a reactive scheduling engine, able to manage the current solution
and to adjust the schedule at execution time
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
5
Broadening Project Scheduling Definition
•
A broader definition of project scheduling problem, consists in the
following two components:
– the static sub-problem (or Predictive Scheduling): given a
set ofpredictive
activities (or
tasks) and
a sethave
of constraints
(time and/or
scheduling
solvers
been thoroughly
resource),
it consists
in computing
a feasible
assignment of start
evaluated
through
the production
of several
and end
times fordata
eachsets
activity.
benchmark
and metrics
– the dynamic sub-problem (or Reactive Scheduling): it
consists
monitoring
execution
of the
theinaspect
relatedthe
to actual
reactive
scheduling
hasschedule
not yet and
repairing
the current
solution
(orattention
producing brand new solutions),
received
the same
level of
every time it is necessary.
HERE we define a benchmark generator!
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
6
Empirical Framework
Testsets
Generator
Project
Scheduling
Problem
Predictive
Scheduler
Set of
Exogenous
Events
Initial
Schedule
Reactive
Scheduler
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
------------------------------------2
{eventDelay a6 7 2}
{eventDuration a2 5 4}
-------------------------------------
Final
Solution
7
Project Scheduling with Uncertainty
Activities last longer than
expected or they can be
postponed
temporal uncertainty
Resource availability
resource uncertainty
causal uncertainty
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
Difference between nominal (left)
and actual (right) resource
availability.
Reduction of resource availability
blocks the execution of some
activities
an their consequent delay
A new precedence relation
between a pair of activities
requires a revision of
previous choices
8
Benchmark ingredients
•
Activity delay
∆st
ai
taware
This element specifies
the instant where the
specific event is
supposed to happen.
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
9
Benchmark ingredients
•
Activity duration
∆dur
ai
taware
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
10
Benchmark ingredients
•
Change of resource availability
rj
∆cap
taware
stev
etev
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
11
Benchmark ingredients
•
Change of activities set
r1
ak
μa= add
taware
reqk= {1,2}
r2
ak
taware
estk
durk
letk
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
12
Benchmark ingredients
•
Insertion/removal constraint
[dmin, dmax]
μc= add
asucc
aprec
taware
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
13
Benchmark ingredients
1. Activity delay,
temporal
2. Activity duration
3. Change of resource availability,
resource
4. Change of activities set,
5. Insertion/removal constraint
causal
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
14
Instant Modifier
•
To formally model an execution event we introduce the concept of
Instant Modifier:
– An Instant Modifier is an operator defined by a set of modifications
Z and a time of execution tE, and whose application on the
problem P produces a change of the problem at time tE.
– Given a problem P the reactive scheduling problem is:
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
15
Testsets generator
•
INPUT:
– The scheduling problem
– Number of events to generate
– Probability of occurrence for each single type of event
– The minimum and maximum magnitude of each type of event.
•
OUTPUT:
– Set of exogenous events SPACED in time
• Definition of consistent taware,
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
------------------------------------2
{eventDelay a6 7 2}
{eventDuration a2 5 4}
-------------------------------------
16
Timing the Exogenous Events consistently
•
taware values determine the instants where each specific event is
supposed to happen.
– How to find consistent values for all possible executions?
•
FIRST STEP: we add a set of simplifying assumptions on the events
that have to be generated:
–
–
–
•
activities cannot be anticipated,
activity durations can only increase
there are only reduction of resource availability
SECOND STEP: we used a relaxed version of the scheduling problem in
which resource constraints are not taken into account.
–
–
This relaxed problem consists in a Simple Temporal Problem (STP)
This allows to compute the lower and the upper bound for the start and
the end time of each activity
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
17
Timing the Exogenous Events consistently
The assumptions guarantee the monotonic increase condition in the
case of constrainedness.
Limitation: it is not possible to model situations like activity
anticipations or processing time reductions which entail constraints
retractions.
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
18
Producing consistent taware values
•
in the case of a delay of activity ai (edelay),
taware<= lb(sti)
•
in the case of change of duration of the activity ai (edur),
taware<= lb(eti)
•
in the case of adding/removing activity ak (eact),
taware<= lb(stk)
taware<= estk
•
if ak is removed
otherwise;
in the case of adding/removing a constraint between aprec and asucc (econstr),
taware<= lb(stprec)
if the constraint is removed
taware<= min(lb(stprec), lb(stsucc))
otherwise.
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
19
Further constraints
•
the width of the delay on activity ai (edelay),
∆st <= ub(sti) - lb(sti)
•
the change of activity duration (edur),
∆dur <= ub(eti) - lb(sti) - pi
•
the change of resource availability (eres),
0 <= ∆cap <= capj
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
20
Tuning the Instances Difficulty
•
•
It is fundamental to control the difficulty related to each generated
event
Use well known metrics to measure the structural properties of a
problem before and after the insertion on an event
e1
e2
e3
e4
t
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
21
Possible metrics
•
Temporal Metrics
(Mastor 1970)
(Cesta et al. 1998)
•
Resource Metrics
(Schwindt 1998)
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
22
Example
•
•
•
•
•
8 activities
2 resources both with capacity 2
oddly numbered activities require
one instance of r1 while evenly
numbered activities require one
instance of r2
all the oddly numbered activities
have a start-time of at least 3
D= {4, 7, 4, 7, 3, 5, 3, 5}
2 resources
both with
capacity 2
------------------------------------2
{eventDelay a6 7 2}
{eventDuration a2 5 4}
------------------------------------Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
23
Conclusions
•
The benchmark generator represents a fundamental means to foster:
– Significant experimental analysis
– Scheduling competition
•
Benchmarks consist of a set of modification events
– Type of modifications that can affect a schedule
– To simulate the environmental uncertainty events are time spaced
– It is worth to asses the difficulty of the instances
•
Next step consists in the introduction of a “General Scheduling
Execution framework”
– Different combinations of proactive and reactive scheduling
techniques can be evaluated
Analysis of a Benchmark Generator for the Reactive Scheduling Problem – Cesta, Policella, & Rasconi
Scheduling a Scheduling Competition - ICAPS07 workshop, September 22, 2007
24