chapter 2: model of scheduling problem components of any model: decision variables –what we can...
Post on 20-Dec-2015
216 views
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