Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.
-
date post
21-Dec-2015 -
Category
Documents
-
view
220 -
download
0
Transcript of Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.
![Page 1: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/1.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Scheduling: The State of the Art
Integrating Planning & Scheduling Subbarao Kambhampati
Overview
Why integrate planning and scheduling?
Planning: The state of the art
Scheduling: The state of the art
Integrating Planning and Scheduling
![Page 2: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/2.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Planning
– Initial state & a set of Goals,
– A library of actions
» Preconditions/effects Discrete/Continuous
» Resource requirementsSynthesize a sequence of actions capable
of satisfying goals
I = initial state G = goal state Oi(prec) (effects)
[ I ] Oi Oj Ok Om [ G ]
Planning vs. Scheduling
Scheduling
– Set of jobs (may have of tasks in some (partial) order)
– Temporal constraints on jobs
» EST, LFT, Duration– Contention constraints
» Each task can be done on a subset of machines
Find start times for jobs that are optimal (wrt make-spans, resource consumption etc)
T2
T1
EST
LFTDur
A Continuum
--Research into planning and scheduling methods has largely been de-coupled
Resource Reasoning
Causal Reasoning
![Page 3: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/3.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Why separate scheduling from planning?
Clearly, Scheduling can be seen as a sub-problem of temporal planning (unlike scheduling, planning also contains action selection). So, why separate it?
– Reasons from automated planning point of view» If multiple agents make their plans and execute them on central
resources, separating resource scheduling from individual agent planning makes sense
» Even if a single agent is doing planning, it may be worth separating causal reasoning and resource reasoning
Such “de-coupling” improves efficiency, but at the expense of global optimality guarantees
– Reasons from “real world practice” point of view» Historically, in many domains, action selection and automated causal
reasoning was out of question (either because it couldn’t be modeled and solved or because the humans didn’t want to delegate it to automated methods
» So, the only computer support for planning activity was given for resource scheduling (humans make plans, and schedulers do resource allocation)
![Page 4: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/4.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Simple job-shop Scheduling: Brief Overview
Jobshop scheduling– Set of jobs
» Each job consists of tasks in some (partial) order
– Temporal constraints on jobs» Sequencing constraints» Release times, deadlines,
durations EST, LFT, Duration
– Contention/capacity constraints» Each task can be done on a
subset of machines
CSP Models– Time point model
» Tasks as variables, Time points as values
» EST, LFT, Machine contention as constraints
– Inter-task precedences as variables (PCP model)
CSP Techniques– Customized consistency
enforcement techniques» ARC-B consistency» Edge-finding
– Customized variable/value ordering heuristics
» Contention-based» Slack-based
– MaxCSP; B&B searches
T2
M
EST
LFTP1,P2
st2
st1
![Page 5: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/5.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Connections…
Scheduling seems to be “bounded length planning” where actions are already given to you!– The CSP encoding for scheduling will be a special case of the CSP
encoding for bounded length planning!
» The main difference is that in planning “steps” can correspond to one of many different actions, while in scheduling each step corresponds to a single action
“disjunctive scheduling” allows disjunction of jobs
– Schedule optimality criteria are similar to “temporal plan” optimality criteria (makespan, tardiness, slack etc based)
» The action cost doesn’t enter the picture since we don’t have any action choice..
Scheduling (at least in the unary capacity resource case) is equivalent to solving disjunctive temporal networks!
![Page 6: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/6.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
11/3:
Scheduling continued
Incompleteness and uncertainty (start)
![Page 7: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/7.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Minimizing Schedule “Makespan”
Approach:– Establish lower and upper bounds on overall schedule end.– Repeatedly apply PCP to find the best solution within these
bounds.
Details:– Generate schedule ignoring resource constraints to provide
determine lower bound.– Apply one or more dispatch scheduling procedures to
provide upper bound.– Apply PCP k times with “common deadlines” evenly
distributed between these bounds.
![Page 8: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/8.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Job Shop Scheduling as a CSP
PrecedenceConstraints
CapacityConstraints
Variables: Start time stil
Domain: [estil….lsti
l] Precedence constraints: sti
l + pil stj
l
Release times/deadlines: R sti
1 ; sti1 + pi
1 D
Capacity Constraints:sti
l + pil stj
l stjl + pj
l stil
Start Point Representation
PCP RepresentationVariables: Ordering(i,j) for each task i and jDomain: {i-before-j, j-before-I,*} * means don’t careDependent Var: StiConstraints:Sequencing constraints: O(i,j)=i-bef-j Capacity constraints: O(i,j)=i-bef-j OR O(I,j,R)=j-bef-I {So, * is not a possibility}Release times, deadlines: R sti1 ; sti1 +dui1 DInter-variable constraints: O(i,j)=i-bef-j => sti +pi <= stj
Disjunction typically comes through capacity constraints
O12R1 O2
2R2
O13R3 O2
3R1 O33R2
O11R1 O2
1R2 O31R3O1
1R1 O21R2 O3
1R3
Jobs
J1
J2
J3
Making the problem harder: --Multi-capacity resources >> a machine that can handle 4 jobs at a time --Disjunctive activities >>schedule at least one of the following tasks --Setup constraints >>if you schedule task1, you need to schedule 3 and 4
![Page 9: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/9.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
The Choice Spectrum
planningjob-shopscheduling
![Page 10: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/10.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
The Choice Spectrum
planningjob-shopscheduling
Job1task1 < task2 < task3 < …
Job2
Job3…
R3 R7 R1
Ordering choices only
![Page 11: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/11.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
The Choice Spectrum
cascading levels of choice
planningjob-shopscheduling
…
…… … …
… …
![Page 12: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/12.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
The Choice Spectrum
job-shopscheduling
planningresourcechoices(RCSP)
umfagogginclavitracle
fernambulator5 11
Task1
Task2
Task3
Task4
Task5
Task6
Task8
Task7
[8,17]
Ordering choicesResource choices
![Page 13: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/13.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
The Choice Spectrum
job-shopscheduling
planning
resourcechoices(RCSP)
alternativeprocesses
process3 process7process8
Task1
Task2
Task3
Task4
Task5
Task6
Task8
Task7
Ordering choicesResource choicesProcess choices
![Page 14: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/14.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
The Choice Spectrum
planningambitious spacecraftjob-shop
scheduling
resourcechoices(RCSP)
alternativeprocesses
Observation choices
Instrument choices
Calibration target choices
Ordering choices
Communication choices
Instrument status choices
![Page 15: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/15.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
The Choice Spectrum
planning
Subset Selectionambitious spacecraftobservation schedulingprocess planning
job-shopscheduling
resourcechoices(RCSP)
alternativeprocesses
![Page 16: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/16.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Start point vs. PCP(not all that unlike State-space vs. PO)
Solution to the Start point encoding is a single feasible schedule
Handling of multi-capacity resources easy..
Solution to the PCP encoding is a simple temporal network, all of whose dispatches are feasible schedules– Sort of like PO planning—
which gives a PO plan, all of whose linearizations are valid plans
Conventional wisdom is that PCP does not scale well to multi-capacity resource scenarios
![Page 17: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/17.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Contention-based Ordering Heuristics
time
demandIndividual Demand of O1 for Rj
time
demandAggregate Demand (of all O) for Rj
time
Individual Demand of O2 for Rjdemand
3 6 90
0 3 6
630
9
Most critical region
Operation O1 Start Time Distributionprobability
Start time0 3 6
Contention: Aggregated curves found for each resource Critical Region: Where a resource is contended the mostMost Critical Unassigned Operation: Contributes the largest area in critical regionVariable Ordering Heuristic:Choose the most critical unassigned operation
[Sadeh, 1991]
![Page 18: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/18.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Other Constraint Propagation Ideas
Through Precedence Relations:
O11R1 O2
1R2 O31R3
[0,12] [0,12] [0,12]
O11R1 O2
1R2 O31R3
[0,6] [3,9] [6,12]
Forward Propagation
Backward Propagation
- S is a set of operations competing for resource R.- O is an operation not in S also requiring R.
((LFT(S) - EST(S) < Dur(O) + Dur(S))) (LFT(S) – EST()) < Dur(O) + EST(O)) EST(O) EST(S) + Dur(S)
O1
O2
O3
10 20
S = {O2,O3}; O = O1 Start Time O1 = 25
Through Resource constraints
Arc-Bounds
Edge-Finding
Many other ideas: --Energy-based propagation --Time-table propagation etc. See Laborie, AIJ 2002
Arc-bounds is related to 2-consistencyWhile edge-finding is related to k-consistency
![Page 19: Integrating Planning & Scheduling Subbarao Kambhampati Scheduling: The State of the Art.](https://reader030.fdocuments.us/reader030/viewer/2022020106/56649d575503460f94a3657d/html5/thumbnails/19.jpg)
Integrating Planning & Scheduling Subbarao Kambhampati
Current State of Scheduling as CSP
Constraint-based scheduling techniques are an integral part of the scheduling suites by ILOG/I2 – Optimization results comparable to best approximation
algorithms currently known on standard benchmark problems.
– Best known solutions to more idiosyncratic, “multi-product hoist scheduling” application (PCB electroplating).
Better in most large-scale problems than IP formulations