constraint-based scheduling

70
arnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008 Constraint-Based Scheduling Adapted from slides by Stephen F. Smith

Upload: lei

Post on 01-Feb-2016

37 views

Category:

Documents


0 download

DESCRIPTION

Constraint-Based Scheduling. Adapted from slides by Stephen F. Smith. Announcements. 4/21 Lecture – Prof. Eric Nyberg of LTI will presenting on the Q&A technology in WATSON. Zico will be holding his normal office hours today from 3:00 – 4:00. Outline. What is scheduling? - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Constraint-Based Scheduling

Adapted from slides by Stephen F. Smith

Page 2: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Announcements

• 4/21 Lecture – Prof. Eric Nyberg of LTI will presenting on the Q&A technology in WATSON.

• Zico will be holding his normal office hours today from 3:00 – 4:00.

Page 3: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Outline

• What is scheduling?

• Basic constraint-based scheduling models

• Managing schedule change

• Planning and Scheduling

• Coordinating Distributed Scheduling Agents

• Coordinators: A Distributed Scheduling Case Study

Page 4: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

What is Scheduling?• Given problem constraints and objective criterion, figure out how to best execute

tasks with available resources over time

OP1,1 OP1,2 OP1,3

OP2,1 OP2,2

R1 R2rd1 dd1

dd2rd2

i j

st(i) + p(i) ≤ st(j), where p(i)is the processing time of op i

st(i) + p(i) ≤ st(j) V st(j) + p(j) ≤ st(i)

rd(j) ≤ st(i) for each op i of job j

i jR

Minimize ∑ |c(j) - dd(j)|

OP1,2OP2,1

OP1,3OP2,2OP1,1R2

R1

time

Page 5: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

What is Planning and Scheduling?• Planning - Synthesis of

action sequences to achieve goals (what to do)

• Scheduling - Assignment of resources and times to actions to maximize performance (how and when)

OP1,1 OP1,2 OP1,3

OP2,1 OP2,2

R1 R2rd1 dd1

dd2rd2

st(i) + p(i) ≤ st(j), where p(i)is the processing time of op i

st(i) + p(i) ≤ st(j) ∨ st(j) + p(j) ≤ st(i)

rd(j) ≤ st(i) for each op i of job j

Minimize ∑ |c(j) - dd(j)|

i jR

i j

on(b,t)on(g,t)on(r,g)

on(b,r)on(g,r)

clear(b)clear(r)

stack(b,r)

stack(g,b)

putdown(r)

clear(g)

clear(x)clear(y)on(x,?)

preconds

¬on(x,?)on(x,y)clear(?)

postconds

stack(x,y)

clear(x)on(x,?)

preconds

¬on(x,?)on(x,t)

postconds

clear(?)

putdown(x)

Planning Scheduling

durative actions,temporal reasoning

maximizing # of goalsachieved, # of soft

constraints satisfied

resources

action selection from pre-computed resource& process alternatives

resource setup and state

constraints

In recent years, the distinction has started to blur:

OP1,1 OP2,2 OP1,

3

OP1,2

R2

R1 OP2,1

Page 6: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Relationship to Planning• Fundamentally concerned with coordinating

multiple processes/agents– efficient use of shared resources

• Processes known in advance– action selection from pre-specified alternatives

• Restricted notion of state– availability, usage of shared resources

• Determination of when and how

Page 7: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Classical Approaches from Operations Research

• Optimization– Determination of tractable problem classes– Mathematical programming models

• mixed-integer, non-linear optimization• decomposition, relaxation (bounding) techniques

– Criticism: idealized and otherwise restrictive problem formulations

• Priority dispatch rules– robust, practical decision-procedures but myopic

tendencies

Page 8: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

AI Perspective

• Symbolic representations of time, resource capacity constraints

• Heuristic (tree) search formulation• Emphasis on broader picture

– ongoing continuous process versus static optimization task

– larger problem-solving context (integration with planning

– dynamic, uncertain environment

Page 9: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Scheduling Research: The Last 15 Years

• Major advances in techniques for solving practical problems– Constraint solving frameworks– Incremental mathematical programming

models – Meta-heuristic search procedures

• Several significant success stories

• Commercial enterprises and tools

Page 10: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Outline

• What is scheduling?• Basics of constraint-based scheduling

models• Managing schedule change• Planning and Scheduling• Coordinating Distributed Scheduling Agents• Coordinators: A Distributed Scheduling

Case Study

Page 11: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Constraint-Based Search Models

Properties:– Modeling Generality/Expressiveness– Incrementality– Compositional

Current Solution

Constraint Propagation

CommitmentStrategies /Heuristics

ConflictHandling / Retraction Heuristics

Components:

Page 12: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

What is a CSP?

• Given a triple {V,D,C}, where • V = set of decision variables• D = set of domains for variables in V• C = set of constraints on the values of

variables in V

• Find a consistent assignment of values to all variables in V

Page 13: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

A Basic CSP Procedure1. [Filtering] - Propagate constraints to establish the current

set vd of feasible values for each unassigned variable d

2. If vd = Ø for any variable d , backtrack

3. If no unassigned variables or no consistent assignments for all variables, quit; Otherwise

4. [Variable Ordering] - Select an unassigned variable d to assign

5. [Value Ordering] - Select a value from vd to assign to d.

6. Go to step 1

Page 14: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Formulating Scheduling Problems as CSPs

• “Fixed times” model – Find a consistent assignment of start times to activities– Variables are activity start times

• Disjunctive graph model– Post sufficient additional precedence constraints between pairs of activities to

eliminate resource contention– Variables are ordering decisions

Page 15: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Fixed versus Flexible Times Scheduling

Some tradeoffs:– Flexibility of generated solutions– Convenience of search space

timeR1

OP2,1 OP1,2

OP2,1 OP1,2

time

OP1,2

OP2,1

R1

Page 16: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Filtering (Propagation) Algorithms

• Role– Early pruning of the search space by eliminating

infeasible assignments– Detection of constraint conflicts

• Temporal Constraints– Simple Temporal Networks (Dechter 91)

• Resource Constraints– Dominance Conditions (Erschler 80), Edge Finding

(Nuijten 94, Balance Constraint (Laborie 01), ...

Page 17: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Simple Temporal Networks• Edge-weighted graph of time points expressing constraints of the

form: atpjtpib

• The domain of each time point is a single interval (no disjunction)• Encodes broad range of constraints including

– Temporal relations:• finish-to-start <0, ∞> (precedence)• start-to-finish <t1,t2> (duration)• start-to-start <0,0> (same-start)• ...

– Metric bounds: offsets from time origin• Efficient computation of arc consistent solutions via all-pairs

shortest path algorithm

Page 18: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

STN ExampleOP1,1 OP1,2 OP1,3

OP2,1 OP2,2

R1 R2rd1 dd1

dd2rd2

OP1,1

<d11,d11> <0,∞> <d12,d12>

<rd1,∞>

CZ(0,0)

<0,dd1>

<0,∞> <d13,d13>

OP1,2 OP1,3

OP2,1

<d21,d21> <0,∞> <d22,d22>

OP2,2

<rd2,∞> <0,dd2>

Schedule Op1,2 at time t1

<t1,t1>

Schedule Op2,1 before Op1,2

<0,∞>

Page 19: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Pruning Ordering Alternatives• Let Opi and Opj be 2 unordered operations competing for R

• Then there are 4 possibilities (Erschler’s dominance conditions):

• LSTi < EFTj and LSTj ≥ EFTi -> Opi is before Opj

• LSTj < EFTi and LSTi ≥ EFTj -> Opj is before Opi

• LSTi < EFTj and LSTj < EFTi -> inconsistency

• LSTi ≥ EFTj and LSTj ≥ EFTi -> both options remain open

OPi

OPi

EarliestInterval

LatestInterval

ESTj LFTj

ESTi LFTi

Opi cannot precede OPj

R

Page 20: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Edge Finding• S - a set of operations competing for resource R• O - an operation not in S also requiring R

10 20 30

OPi

OPj

OPk

EST(O) ≥ EST(S) + Dur(S)((LFT(S) - EST(S) < Dur(O) + Dur(S)) (LST(S) - EST(O) < Dur(O) + EST(O))

S = {OP ,OP }; O = OP Start Time OP ≥ 25kki j

Page 21: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Scheduling An Activity (Fixed times schema)

Generate Possible Intervals

Generate Resources

IR1,1 IR1,2 IR2,1...

R1

AssignActivity:[Rtype1,Rtype2] [t1,t2]

R3 R4R2

...IR2,2 IR3,2... IR4,1 ...IR3,1

Acti ActkActjR2

Apply filtering techniques to start times, resource alternatives of unscheduled activities

Page 22: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Configuring A Basic Scheduling Search Model

• Couple core search procedure with variable ordering heuristic and filtering algs. to produce greedy solution generator

• Embed in larger optimizing search by

IR1,1 IR1,2 IR2,1...

R1

AssignActivity:[Rtype1,Rtype2] [t1,t2]

R3 R4R2

...IR2,2 IR3,2... IR4,1 ...IR3,1

1. Backtracking over variable/value ordering choices

2. Dynamically changing the variable ordering and iteratively re-invoking the core procedure

3. using the solution generator to seed a local search

Page 23: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Search Heuristics (Variable and Value Ordering)

• Resource Demand/Contention (Sadeh 91, Beck 97)– Identify bottleneck resource– Schedule (or sequence) those activities contributing most to demand

• Slack/Temporal Flexibility (Smith & Cheng 93)– Choose pair of activities with least sequencing flexibility– Post sequencing constraint that leaves the most slack

• Minimal critical sets (Laborie & Gallib 95)– Generalization to multi-capacity resources

• Resource Envelopes (Muscettola 04)

Page 24: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Constraint-Posting Scheduling Models

– Conduct search in the space of ordering decisions• variables - Ordering(i,j,R) for operations i

and j contending for resource R

• values - i before j, j before i

– Constraint posting and propagation in the underlying temporal constraint network (time points and distances)

Page 25: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Basic Constraint-Posting Cycle

Time feasible task network

Impose Capacity Constraint

Peak 1C

Peak 2

ResourceLeveling

Task 2

Task 1

Peak 1C

Peak2

Peak 2

ConstraintPropagation

C

Deadline 25

Task 2

Task 1 Time feasible task network

Page 26: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Scheduling Search Procedures

• Constructive procedures– greedy, backtracking, LDS, ...

• Iterative repair and local search– “commit early and often” versus “least-

commitment” winnowing of solution set– emphasis on retraction heuristics as well

as constructive heuristics– well suited for incremental change

Will show example methods later in discussing oversubscribed problems

Page 27: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Outline

• What is scheduling?• Basics of constraint-based scheduling

models• Managing schedule change• Planning and Scheduling• Coordinating Distributed Scheduling Agents• Coordinators: A Distributed Scheduling

Case Study

Page 28: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Views on Scheduling under Uncertainty

• Design and use of scheduling policies

• Establish and maintain prescriptive schedules

Scheduler

Executor

Pro-active:Generate schedulesthat anticipateUncertainty

Reactive:Manage schedule in response to unexpected events

Page 29: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Approaches to Managing Change

– Build schedules that retain flexibility

– Produce schedules that promote localized recovery (Supermodels - Ginsberg)

– Incremental re-scheduling techniques are a natural (e.g., that consider “continuity” as an objective criteria)

– Self-scheduling control systems

Page 30: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Incremental Schedule Repair• Several competing approaches to maintaining continuity

in the schedules generated over time– Minimally disruptive schedule revision (temporal delay,

resource area)– Priority-based change – Regeneration with preference for same decisions– Extended local search

• Critical issue: how to trade solution stability concerns off against (re)optimization needs and computational cost

Page 31: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Hedging Against Uncertainty• Temporal Networks with uncertainty [Vidal 96] - some

set of edges are contingent (e.g. uncertain duration)– strong controllability - analogous to conformant planning– dynamic controllability - solution can always be extracted as

uncertain arcs become known

• Contingent schedules– Disjunctive Temporal Networks [Moffit & Pollock 06]– Opportunity to make resource choices explicit; challenge is

managing combinatorics– Project likely failure points and generate explicit contingencies

[Drummond and Bresina 94, Hiatt et. al 09]

• Aversion dynamics [McKay 00]– adapt scheduling policy to minimize impact of unexpected

change

Page 32: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Outline

• What is scheduling?• Basics of constraint-based scheduling

models• Managing schedule change• Planning and Scheduling• Coordinating Distributed Scheduling Agents• Coordinators: A Distributed Scheduling

Case Study

Page 33: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Integrated Planning and Scheduling (as typically formulated)

G1G2

G3

Goals

A3 A2 A4

A5

A1R1

R2

R3

Schedule

Allocate resources (maybe) and Assign times

G1

Plan

A1 A2

A5A3

A4

G2

G3

Sequence goals and construct goal achieving action sequences

Page 34: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Resource-Driven Problems

• Principal form of goal interaction is competition for resources

• Upfront planning process is separable and limited to achievement of individual goals

• At its core, these are essentially scheduling problems

• But allocation of resources introduces planning sub-problems

Page 35: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Resource-Driven Problems

A3 A2 A4

A5

A1R1

R2

R3

Schedule

Allocate Resources and Assign times

G1G2

G3

Goals

G1

Plan

A1 A2

A5

A3

A4

G2

G3

Construct goal achieving action sequences

Page 36: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Where’s the Planning in a Scheduling Problem?

• Managing shared resources– Resource support actions are needed to

“set up” resources for use

– These support actions depend on required usage states, which are determined by the scheduler’s sequencing decisions

IR1,1 IR1,2 IR2,1...

R1

AssignActivity:[Rtype1,Rtype2] [t1,t2]

R3 R4R2

...IR2,2 IR3,2 ... IR4,1 ...IR3,1

t1

Acti ActkR1

t2

IR1,1Setup S Setup IR1,2

Page 37: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Scheduling the Hubble Space Telescope

• A complex single machine problem• Resource support actions

– Instrument reconfiguration– Pointing direction– Target lock

ObserveA Inst-1Target: X

ObserveB Inst-2Target: YSlewing(X,Y)

ChangeOver(Inst-1,Inst-2)

Setup Time IdleTime

TargetYVisibility ... ...visible not visible visible

Earliest Start Time

Page 38: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

HSTS Solution

Detailed Schedule

OBS 1

OBS 2

WF state:

PC state:

WFPC state:

pointing state:

OBS 1OBS 2

OBS 3OBS 4

OBS 5

...

Proposals

OBS 1 OBS 2Telescope state

Abstract Schedule

Setup

Subgoaling temporalplanner

Single machine scheduler

Page 39: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

What is missing?• Scheduling models gain their power by making restrictive

modeling assumptions– Resource “setup” as a sequence-dependent duration– Bounded dynamics of resource usage – Trades flexibility for scalability

• Explicit goal-directed reasoning can be used to overcome this limitation

– Extension to enable more idiosyncratic allocation options– Modular knowledge, performance requirements

• Challenge: How to effectively embed a planner within the scheduler search process?

Page 40: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Solving Oversubscribed Problems

• Basic Setting: Resource constraints restrict the ability of some system of interest to perform tasks (achieve goals), and cumulative demand exceeds its capacity

• 2 sets of interacting decisions– Which subset of tasks to perform (goals to achieve)– How to allocate tasks to system resources over time

• Objective:– Maximize number of tasks performed, maximize resource

utilization, …

Page 41: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Examples/Applications• Rover Task Planning [Smith 2004]• Telescope observation scheduling [Bresina et. al

96, Johnston and Miller 94, Muscettola and Smith 93, Giuliano et. al 08.

• Satellite observation scheduling [Barbulescu et.al 06, Frank et. al 02, Globus et. al 2003, Rabideau, Chein et. al]

• Military airlift allocation [Kramer and Smith 03]• Personal task management [Varakanthan and

Smith 08]

Page 42: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Approaches to Oversubscribed Problems

• Planning Perspective– Emphasis on resource limitations other than time

(e.g., fuel)• Orienteering-type problems [D. Smith 04]

– General formulation as partial satisfaction planning• Specify preferences over goals and combine with other

preferences

• Scheduling Perspective– Selection and allocation of tasks to resources

under temporal constraints

Page 43: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Oversubscribed Scheduling Research

• Has focused on problems where principal source of interaction between tasks (goals) is competition for resources over time

• Basic model:– Tasks (goals) have durations, resource requirements and feasible

time windows– Tasks may have priorities (indicating relative importance)– Resources may have reconfiguration (setup) constraints

• More complex settings: – High level tasks may decompose in HTN fashion into lower level

activity sequences or disjunctions (reflecting prior modeling of various process or resource choices)

Page 44: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Representational Alternatives

• Permutation Space Search – Search in the space of task permutations– Permutation specifies a scheduling order– “Schedule builder” applied to construct schedule– Examples: Squeaky Wheel Opt., Genetic Algorithms

• Schedule Space Search – Search directly in the space of possible schedules. – Initial base solution is progressively revised and

improved over time.– Examples: Iterative Repair, Task Swap

Page 45: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Basic Airlift Allocation Problem

AB

C

W1 W2

• Mission1:• pick up

cargo at A• deliver to B• then C.

Decisions:• Use resources

(e.g., aircraft) from wing W1 or W2?

• Start at what time?

• Mission2 …

• Mission-n

Requests:

Missions have priorities which must be strictly enforced

Page 46: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Task Swapping[Kramer and Smith 2003,2004,2005]

Goal: Controlled schedule revision to accommodate additional tasks without relaxing constraints

Basic Approach– Temporarily relax priority constraint– Conduct repair-based search around the “footprint” of

an unassignable task t’s feasible execution window– If all tasks displaced to accommodate t cannot be

feasibly reinserted, Undo

Page 47: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

An Example

Unassignable task, T1

T2

T5

T4

T6

T8T7

T9

T12

T10

T11

T15T13

CapR=7

T14

T3

R

T2Assigned task, T1

T5

T4

T6

T8T7

T9

T12

T10

T11

T15T13

CapR=7

T14

T3

R

Re-scheduled task T2

Un-scheduled task T2

Page 48: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Retraction Heuristics

• Max-Flexibility = task-duration/feasible-window-size• Min-Conflicts = count intervals that are at-capacity which

conflict with a task’s feasible window.• Min-Contention = conflict-count * conflict duration

Unassignable task T6

C1 C2

T1

est st ft lft

T2

T3

T4

T5

Page 49: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

General Task Swap Procedure

• Given an unassignable task t to insert into the schedule,

1. Identify where conflicts with that task exist.2. Retract 1 or more tasks in the conflicted areas to free

up capacity3. Schedule task t, and mark it as “seen.”4. Re-schedule the retracted tasks.5. If all retracted tasks cannot be re-scheduled, recurse

on them, most constrained first.6. If all tasks have been tested (seen) and some remain

unassignable, backtrack to original state.• Matched best performance on benchmark pickup-

and-delivery problems

Page 50: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

An Experiment[Kramer, Barbulescu, Smith 07]

• Question: How does a schedule-based search procedure perform relative to a permutation-based search procedure in a given domain?

• Examine performance of two representative procedures on AFSCN and AMC domains – Schedule Space: Task Swap– Permutation Space: Squeaky Wheel Optimization

(SWO)

Page 51: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

A Representative Permutation-Based Procedure: Squeaky

Wheel Optimization1. Generate a schedule with a schedule builder, based on a

task ordering (permutation).2. If all tasks are assigned, Return success, otherwise …3. If an iteration limit has been reached, re-apply the task

permutation resulting in the most assigned tasks, and stop, otherwise...

4. Analyze this schedule to identify unassigned tasks – the “squeaky wheels.”

5. Given some move operator, advance the squeaky wheel tasks a distance forward in the task ordering.

6. Repeat.

Page 52: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

SWO: An Example(Iteration Limit = 10; Move Operator = Fixed distance, 2)

• Initial task ordering (permutation): (T7 T5 T1 T2 T4 T3 T6)

• Build schedule; T1, T4, T3 not assigned (Squeaky Wheels).

• New task permutation, after moving squeaky wheels forward 2:

(T1 T7 T4 T3 T5 T2 T6)

• Build schedule; T4, T5 not assigned.

• New task permutation, after moving squeaky wheels forward 2:

(T4 T1 T5 T7 T3 T2 T6)

• Build schedule; T1 not assigned.

• New task permutation, after moving squeaky wheels forward 2:

(T1 T4 T5 T7 T3 T2 T6)

• Build schedule; All tasks assigned successfully; END.

Page 53: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Comparative Results

ICAPS 2009 Summer School

R1 58 45 49

R2 38 30 34

R3 27 18 20

R4 37 28 32

R5 19 13 15

Result: SWO outperforms TS.

Problem Initial Unassignables End SWO End TS

Ovals highlight statistically significant differences.

SWO vs. TS

0

10

20

30

40

50

60

70

80

90

100

1 2 3 4 5

Problem Set

Un

assig

nab

le T

asks

SWO

TS

SWO vs. TS

100000

1000000

1E+07

1E+08

1E+09

1E+10

1E+11

1E+12

1E+13

1 2 3 4 5

Problem Set

Av

era

ge

Sc

ore

SWO

TS

Result: TS outperforms SWO

AFSCN Domain AMC Domain

Page 54: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Domain Features

ICAPS 2009 Summer School

AFSCN AMCHard Priority Constraint? No Yes

Number of Tasks 419-483 983

Resource Capacity 1-3 4-37

Average Temporal Flexibility(task duration/window size)

(0.69968086 - 0.7595485)

0.49961752

• Most differences are a matter of degree, except for presence/absence of hard priority constraint

Page 55: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Extended analysis• Generated a continuum of abstract domains ranging

from AFSCN to AMC– 1800 problems (grouped into 18 classes), varying size, slack,

capacity and priority

• Main conclusions:– SWO dominates in domains with no priority, regardless of other

factors– In presence of priority, both procedures perform comparably at

low levels of oversubscription, but at higher contention levels, TS dominates

– New hybrid technique demonstrated to produce new best solutions for a few of the AMC reference problems

ICAPS 2009 Summer School

Page 56: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Outline

• What is scheduling?• Basics of constraint-based scheduling

models• Managing schedule change• Planning and Scheduling• Coordinating Distributed Scheduling Agents• Coordinators: A Distributed Scheduling

Case Study

Page 57: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

57

What is Distributed Planning and Scheduling?

• A planning / scheduling process that involves more than one player (agent)– Coordinated goal achievement– Coordinated action selection– Coordinated task/resource allocation over time

• Why distribute the planning / scheduling process?– Many applications are inherently distributed– There can be performance advantages to distribution

Page 58: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

58

Distributed Scheduling Problems

• Many scheduling applications are inherently distributed and mandate distributed solutions– Competing objectives (self-

interest)

– Control is already distributed

– Communication constraints and costs

– Computation constraints

– Dynamics

Page 59: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Approaches to Distributed Scheduling

Self-schedulingsystems

Management of advance schedules

- Market mechanisms- DCOP- heuristic scheduling

• high dynamics• independent jobs/goals

• optimized team behavior• coordinated action

Page 60: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Self-Scheduling SystemsMotivation: Problem too dynamic to consider use of

schedules

Basic Concept:• Distribute decision-making among individual

entities (machines, tools, parts, operators; manufacturers, suppliers)

• Specify local behaviors and protocols for interaction• Robust, emergent global behavior

Page 61: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Self-Scheduling System Design

• Analogy to natural systems– [Parunak 97,98, Bonabeau et al 97,

Cicirello & Smith 02]

• “Engineered” self-interest (referred to generally as Mechanism Design)– [Dias, Stentz 03]

Page 62: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

62

Market Mechanisms

• Self-scheduling systems can be seen as a simple form of market– core contracting protocol for bidding on and awarding tasks

• In more stable task and resource allocation domains, construction of schedules can provide leverage– more informed, state-dependent bidding– management of shared dependencies

• Combinatorial auctions support simultaneous bidding for multiple tasks/resources– communication of constraints and preferences to a centralized

optimizer (the auctioneer)– tradeoff is the computational bottleneck introduced by

centralization

Page 63: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Morley’s GM Paint Shop System

Dispatcher

PaintBooth

1

PaintBooth

2

Bid

Bid

Announcement(new truck)

Bid parameters:

- same color as last truck

- space in queue

- empty queue

“If bid for same color then award else if empty booth then award else if queue space then award”

Page 64: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

TradeoffsAdvantages:

– Complexity reduction

– Simple, configurable software systems

– Robust to component failures

– More stable computational load

Problems:– No understanding of global optima (or how to achieve

global behavior that attends to specific performance goals)

– Prediction only at aggregate level (can become unstable)

Page 65: Constraint-Based Scheduling

Coordination Example

Assessment RegionAssessment Region

Page 66: Constraint-Based Scheduling

Receives job request

Receives job request

Generates BidGenerates BidGenerates BidGenerates Bid

Generates BidGenerates Bid

Generates BidGenerates Bid

Generates BidGenerates Bid

Generates BidGenerates Bid

Generates BidGenerates Bid

Bids are sent back to

Manager

Bids are sent back to

Manager

Bids are synthesized into

assignments

Bids are synthesized into

assignments

AnnouncementFrequency-Range: [F1 ..F2]Region: [(x1,y1)…(x4,y4)]Time-Window: [t1, t1’]Capability: RF-ReceiverExpiration: t2

AnnouncementFrequency-Range: [F1 ..F2]Region: [(x1,y1)…(x4,y4)]Time-Window: [t1, t1’]Capability: RF-ReceiverExpiration: t2

Assignments are sent back to

nodes

Assignments are sent back to

nodes

BidFrequency-Range: [Fi ..Fj]Region: [(xi,yi) (xj,yj)]Time-Window: [ti, tj]Location Dist: […]Availability Dist: […]

BidFrequency-Range: [Fi ..Fj]Region: [(xi,yi) (xj,yj)]Time-Window: [ti, tj]Location Dist: […]Availability Dist: […]

Manager sends announcement

to nodes

Manager sends announcement

to nodes

Coordination Example

Page 67: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

FIRE Project: Multi-Rover Scenario[Simmons, et al. 2001-2004]

scientist

scientist

scientist

rover

rover

roverUI

UI

UI

• many scientists• many tasks/goals• relative priorities

• bandwidth• blackouts

• interface• broker• “OpTrader”

• heterogeneous• autonomous• limited resources

sim

ulat

or

... rover

......

Page 68: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Scheduler-Driven Bidding Process

RoboTrader

Scheduler

Planning

Executive

RoboTrader

Scheduler

Planning

Executive

OpTrader

• Bid requests for new tasks initiated by OpTrader

– task(s) awarded to low cost bidder

• Agent Scheduler designed to minimize travel time

– Bid requests are evaluated by rescheduling to accommodate new task(s) and determining additional cost

– Prospective schedule retained in case of subsequent award

– Local cost synergistic with global cost

• RoboTraders also issue bid requests for undesirable tasks

– task(s) awarded to low cost bidder (unless cheaper to do task itself)

T1 T2 T3 T4 T5

Page 69: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

69

Continuous Trading• Traders are continuously auctioning and bidding for tasks

– Tasks that are up for bid cannot not be executed– A Trader can simultaneously be a bidder and auctioneer only if

the tasks it is bidding for are awarded before its own auction terminates

• Quiescence when no cost reducing trades can be foundBid Award

Bid AwardTrader A

Trader B

Page 70: Constraint-Based Scheduling

Carnegie Mellon SMU/SIM-TECH Workshop on Trends in P/S – Sept 11, 2008

Market-Based Scheduling

• Literature– Economics: Auction Theory– Network Flow Problems: Auction Algorithms [Bertekas

92]– Game Theory: [Wellman et al. 02] - Auction Protocols

for Decentralized Scheduling, ...– Computer Science: [Kurose & Simha 86] - Optimal

resource allocation in distributed computer systems, ...– Manufacturing: [Baker et al. 95], market-based

material flow