chapter 2: model of scheduling problem components of any model: decision variables –what we can...

23
Chapter 2 : Model of scheduling problem Components of any model: Decision variables What we can change to optimize the system, i.e., model output • Parameters model input values, i.e., values that cannot be changed Objective function e.g. profit, quality to be maximized e.g. costs, time to be minimized • Constraints determine which decision variable values are allowed

Post on 20-Dec-2015

216 views

Category:

Documents


2 download

TRANSCRIPT

Chapter 2: Model of scheduling problemComponents of any model:

• Decision variables– What we can change to optimize the system, i.e., model output

• Parameters– model input values, i.e., values that cannot be changed

• Objective function– e.g. profit, quality to be maximized

– e.g. costs, time to be minimized

• Constraints– determine which decision variable values are allowed

Modeling: Decision variablesThree basic types of decision variables:• Sequence

– permutation of the jobs

• Schedule– allocation of the jobs in a more complex environment

• Scheduling policy– determines the next job, given the current state of the system

Other variables are regarded as dynamic data, or as auxiliary variables:– Completion time (Cij)

– Lateness (Lj)– Tardiness (Tj)

– Makespan (Mj)

Modeling: ParametersTypical scheduling parameters:

• Number of resources (m machines, operators)• Configuration and layout• Resource capabilities• Number of jobs (n)

• Job processing times (pij)

• Job release and due dates (resp. rij and dij )

• Job weight (wij ) or priority

• Setup times

Modeling: Objective functionObjectives and performance measures:

• Throughput, makespan (Cmax, weighted sum)

• Due date related objectives (Lmax, Tmax, ΣwjTj)

• Work-in-process (WIP), lead time (response time), finished inventory

• Total setup time

• Penalties due to lateness (ΣwjLj)

• Idle time• Yield

Multiple objectives may be used with weights

Modeling: Constraints• Precedence constraints (linear vs. network)• Routing constraints• Material handling constraints• (Sequence dependent) Setup times• Transport times• Preemption• Machine eligibility• Tooling/resource constraints• Personnel (capability) scheduling constraints• Storage/waiting constraints• Resource capacity constraints

prec

sjk

prmp

Mj

Machine configurations:• Single-machine vs. parallel-machine

• Flow shop vs. job shop

Processing characteristics:• Sequence dependent setup times and costs

– length of setup depends on jobs

– sijk: setup time for processing job j after k on machine i

– costs: waste of material, labor

• Preemptions

– interrupt the processing of one job to process another with a higher priority

Generic notation of scheduling problem

Machine Job Objective

characteristics characteristics function

for example:

Pm | rj, prmp | ΣwjCj (parallel machines)

1 | sjk | Cmax (sequence dependent

setup / traveling salesman)

Q2 | prec | ΣwjTj (2 machines w. different speed, precedence rel., weighted tardiness)

Scheduling models

Deterministic models– input matches realization

vs.

Stochastic models– distributions of processing times, release and due dates,

etc. known in advance– outcome/realization of distribution known at

completion

Chapter 3: general-purpose scheduling procedures

• Dispatching rules• Composite dispatching rules• Adaptive search (Handouts)• Mathematical programming (Appendices A3, A4)• Branch-and-bound• Beam-Search

Dispatching rules

Static rules– not time-dependent– are function of job and/or machine data

vs.

Dynamic rules– time-dependent– e.g.: “minimum slack first”-priority rule

Dispatching rules

Local rules– e.g. only consider current job, machine

vs.

Global rules– “look ahead”-strategy

Dispatching rulesSchedule generation scheme:

mechanism by which schedule is constructed

• serial scheme

schedule job-for-job (n stages)

vs. • parallel scheme (at most T stages)

– decision set (all candidates to be scheduled at stage t)

– completed set of jobs (jobs that are completed at stage t)

– remaining set of jobs (not allowed to be scheduled at t)

– active set of jobs (scheduled, but not completed at stage t)

Dispatching rules

• Service in random order (SIRO)

• Earliest release date (ERD)

• Earliest due date (EDD)

• Minimum slack (MS)

• Weighted shortest processing time (WSPT)Note: WSPT is optimal in single-machine setting (Smith’s rule)

• Longest processing time (LPT)

Dispatching rules, cont.

• Shortest setup time (SST)

• Least flexible job (LFJ)

• Greatest resource demand (GRD)

• Critical path rule (CP)

• Largest number of successors (LNS)

• Shortest queue at the next operation (SQNO)

Dispatching rules, overview

• Dependent on release and due dates:

ERD, EDD, MS

• Dependent on processing times:

LPT, SPT, WSPT, CP, LNS

• Miscellaneous:

SST, LFJ, SQNO

Dispatching in more complicated situations

• Dispatching+routing over non-identical machines

• Batch and dispatch

• Dispatching with preemption

• Dispatching with setups

More advanced dispatching rules

• Look-ahead with multiple job planning (e.g. including jobs with future release dates, dispatching with a waiting option, worst case slack rule)

• Adaptive search techniques

• Composite rules

Composite priority rule that is mixture of 3 basic priority rules:

ATC ( apparent tardiness rule ) is comb. of:

1. Weighted Shortest Processing Time First

2. Earliest Due Date First

3. Minimal slack

ATCS ( ATC with setups )

4. Shortest Setup Time First

Composite dispatching: Apparent Tardiness Cost (ATC)

ATC combines MS rule and WSPT rule

k1=due date scaling par.

(look-ahead parameter)

k1 function of Due Date Range factor:

)pk

)0,tpdmax((

j

jj

1

jj

ep

w)t(I

max

minmaxC

)dd(R

5.0Rfor,R26k

5.0Rfor,R5.4k

1

1

average pj of the remaining jobs

Composite dispatching: Apparent Tardiness Cost with Setups (ATCS)

ATCS combines MS rule, WSPT rule and SST rule:

k1=due date scaling par.

k2=setup time scaling par.

k1 and k2 functions of:• Due Date tightness

• Due Date Range

• Setup Time Severity

)sk

s()

pk

)0,tpdmax((

j

jj

2

lj

1

jj

eep

w)t(I

maxCd1

max

minmaxC

)dd(R

ps

)2/(k

5.0Rfor,R26k

5.0Rfor,R5.4k

2

1

1

Dispatching rules: multiple passes

drawback of priority rules:

may yield bad solutions

SOLUTION: Use multiple passes

Multi-pass priority rule based methods:1. Multi-priority rule procedures (repeat dispatching

procedure with different disp. rules)

2. Sampling procedures (each job has a probability to be dispatched)

Dispatching rules: samplingRandom sampling (each job has the same probability):

Pj=1/n

Biased random sampling (based on priority of job):

first sort jobs on non-increasing priority vj

[j] is the position of job j in the list

Probability that job is selected:

Parameterized regret-based random sampling: accounts for relative difference in priorities of jobs

factor) (bias 10

1C:where

,CP

i

i

jj

:1 random sampling

deterministic:0

Dispatching rules: sampling (cont.)Parameterized regret-based random sampling:

regret factor (vj=priority):

probability:

=0: random sampling

=: deterministic activity selection

Kolisch and Drexl:• the more passes, the higher should be taken• this method is called the “Adaptive Search”-method

iDijj vminvw

Dij

jj

1w

1wP

normalization