Title: Current trends in deterministic scheduling by ChungYee Lee, Lei Lei, Michael Pinedo
1Current trends in deterministic scheduling by
Chung-Yee Lee, Lei Lei, Michael Pinedo
2Deterministic Scheduling
- Set of jobs
- Set of machines
- Certain performance measures
3Notation
- aß?
- a?machine configuration
- ß ?processing restrictions and constraints
- ? ?performance mesure to be optimized
4Notation
- Jj job j, j 1,, n
- Mj machine i, i 1,, m
- Cj the completion time for J j
- wj the weight for Jj
- dj the due date of Jj
- Lj the lateness of Jj Cj dj
- L max maximum lateness maxLj , j 1,, n
- C max makespan maxCj j 1,, n
5Complexity
- Polynomial time algorithm?A known algorithm that
is guaranteed to terminate within a number of
steps which is a polynomial function of the size
of the problem - NP?non-deterministic polynomial time, A set or
property of computational decision problems
solvable by a non-deterministic Turing Machine in
a number of steps that is a polynomial function
of the size of the input - NP-hard? if solving a problem in polynomial time
would make it possible to solve all problems in
class NP in polynomial time
6Recent Developments in Scheduling Theory
- New trend extending classical algorithms to
models related to real problems - Two popular areas
- Scheduling with a 1-job-on-r-machine pattern
- Jobs processed simultaneously on several machines
(r positive integer) - Several jobs processed by a single processor
(0ltr1) - Machine scheduling with availability constraints
- Possibility of machine unavailability due to
maintenance - Machine availability in giventime windows
7Scheduling with 1-job-on-r-machine pattern
- r positive integer
- Diagnosable microprocessor systems
- semiconductor circuit design team workforce
planning - Berth allocation (one vessel for several berths)
- 0ltr1
- Berth allocation (several vessels share one berth)
81-job-on-r-machine (r positive integer)
- multiprocessor task system
- Nonfix-fixed number of machines working
simultaneously but machines required are not
specified - Example PmnonfixC max ?an m-parallel-machine
scheduling problem where each job can be
processed simultaneouslyby a fixed number of
machines with the objective minimizing the
makespan. - Fix-fixation of the set of machines for
particular jobs - P2fixSwj Cj denotes a 2-parallel-machine
scheduling problem where each job can be
processed simultaneously by a specific set of
machines, and the objective is to minimize the
total weighted completion time.
9The machine set not fixed
- PmnonfixC max
- Pmprmp,nonfixC max (r1,2)? polynomial
algorithms (Blazewicz et al. 1984) - Pmnonfix,pj1C max (mr2)? linear integer
programming or dynamic programming polynomial in
n (Blazewicz et al. 1986) - PmnonfixC max (m2,3,4 pj is a function of
nonincreasing function of number of mehines used
and determined before)? NP-hard (Du and Leung
1989) - PmnonfixC max (r1,2 same speed processors)?
O(nm n logn) (Blazewicz et al. 1990) - PmnonfixC max (r1,k same speed processors)?
O(nm n logn) (Blazewicz et al. 1990)
10The machine set not fixed (contd)
- Pmnonfix Swj Cj
- (m2)? NP-hard (Lee and Cai 1996)
- P2nonfix SCj ? dynamic programming NP-hard
O(nP3s1) (Lee and Cai 1996) - P2nonfix SCj (pjp)? O(nlogn) (Lee and Cai
1996) - PmnonfixL max
- Pmnonfix,rj,dj,prmpL max -gt linear programmsng
to check feasibility (Plehn 1990) - P2nonfixL max (EDD rule)? dynamic programming
NP-hard O(nP3s1logP) (Plehn 1990) - P2nonfix, pj1 L max ? O(nlogn) (Plehn 1990)
11The machine set fixed
- PmfixC max
- Branch and bound algorithm (Bozoki and Richard
1970) - Pfix, pj1 C max ? Np-hard (Krawczyk and Kubale
1985) - PmfixC max (only 2-machine jobs)? NP-hard
(Kubale 1987) - P3fixC max ? NP-hard (Blazewicz et al. 1992)
- P3fixC max (block-constraints)?
pseudopolynomial O(nP) (Hoogeveen et al. 1994) - Pmfix, pj1 C max ? polynomial (Hoogeveen et
al. 1994) - P2fix, rjC max ? NP-hard (Hoogeveen et al.
1994) - PmfixC max (precedence constraints)? branch and
bound algorithms (Krämer 1995)
12The machine set fixed (contd)
- Pmfix Swj Cj
- Pmfix Swj Cj ? integer programming (Dobson and
KArmarkar 1989) - P2fix SCj ? NP-hard (Hoogeveen et al. 1994)
- Pfix, pj1 SCj ? NP-hard (Hoogeveen et al.
1994) - P2prmp, fix SCj ? O(nlogn) (Cai et al. 1996)
- Pmfix, pj1 SCj ? polynomial (Brucker 1995
13Machine Scheduling with Availability Constraints
- Mostly assumed available machines but may not be
true (e.g., machine breakdown-stochastic,
preventive maintenance-deterministic) - Assume machine i unavailable from sik until tik
(0 sik tik, 0kni) - unavailability constraints?machines are
available in time windows - Resumable (r-a)?If a job cannot be finished
before the next down period of a machine and the
job can continue after the machine has become
available again - Nonresumable (nr-a)? if the job has to restart
rather than continue
14Machine Scheduling with Availability Constraints
(Contd)
- Pmprmp feasibility (different availability
intervals) ? O(nlogm) (Schmidt 1984) - 1nr-aSCj (one unavailability period)? NP-hard
(Adiri et al. 1989) - PCmax (at most one unavailability period that
is at the beginning) ? classical LPT by tight
error bound ½, modified LPT by bound 1/3 (Lee at
al. 1991) - PSCj (at most one unavailability period that is
at the beginning) ?SPT algorithm (Kaspi and
Montreuil 1988, Liman 1991) - P2SCj (one machine always available, other
available from time zero to a fixed oint)?
NP-hard dynamic programming (Lee and Liman 1993)
15Machine Scheduling with Availability Constraints
(Contd)
- PmSCj (machine i available in a time window)?
SPT (Mosheiov 1994) - F2r-aCmax (at least one machine always
available)? NP-hard pseudopolynomial dynamic
programming algorithm (Lee 1996b) - F2nr-aCmax (at least one machine always
available)? NP-hard pseudopolynomial dynamic
programming algorithm (Lee 1996b) - 1r-aSCj ? SPT (Lee 1996a)
- 1r-aLmax ? EDD (Lee 1996a)
- 1nr-aCmax ? NP-hard (Lee 1996a)
- Pmprmp, r-aCmax ? O(n m logm) (Schmidt 1984)
16Recent developments in search algorithms
- Complexity ?not easy to formulate as mathematical
programming - Classical techniques?often not solvable in real
time - By improvement of computing technology
- Neighbourhood search technique
- Local improvement with minor changes
- Simulated annealing, tabu search, genetic
algorithms - Constraint-guided heuristic search technique
- Not to find optimal but to find good feasible
schedules - Formulationbased on list of rules and consraints
- Focus on partial solutions and extending them to
a complete feasible solution - Based on measurements of flexibility and
constraining factors - Expert systems-scheduling systems based on this
search technique
17General concepts in neighboorhood searchtechniques
- The mapping of the data in a format suitable for
the algorithm - the description of a schedule has to be both
concise and unambiguous - The neighbourhood design
- The knowledge required centers mainly on those
aspects of the schedule that have the greatest
impact on the objective - The search process within the neighbourhood
- Given all the schedules in the neighbourhood, a
search has to be conducted that leads to the next
schedule in the search process - The acceptance-rejection criterion
- Whenever a schedule within the neighbourhood is
selected, a decision has to be made whether or
not to accept the schedule
18Simulated Annealing and Tabu Search
- Very similar
- Difference in acceptance-rejection criteria
- Simulated annealing-probabilistic process
- Tabu search-deterministic process
- Simulated annealing? job shop scheduling problems
with the makespan objective - Tabu search? single machine, parallel machine,
flow shop, flexible flow shop and job shop
problems with objectives that include the
makespan, the total weighted completion time, as
well as the total weighted tardiness
19Simulated Annealing and Tabu Search (Contd)
- JmCmax ? simulated annealing (Matsuo et al.
1987) - 1 Swj Cj ? tabu search (Potts and Van
Wassenhove 1997) - 1 sjk Swj Cj ? tabu search (Laguna et al. 1991,
1993) - 1 sjk STj ? tabu search (Laguna et al. 1991,
1993) - Pm Swj Cj ? tabu searcH (Barnes and Laguna
1992, Barnes et al. 1995) - Flow shop problem ? tabu search (Adenso-Dias
1992, Nowicki and Smutnicki 1994) - JmCmax ? tabu search (DellAmico and Trubian
1993, Nowicki and Smutnicki 1993, Taillard 1994,
Dauzère-Pérès and Paulli 1997) - Job shop problem with multiple-purpose machines ?
tabu search (Hurink, Jurisch and Thole 1994)
20Genetic Algorithms
- Mimics natural evolutionary process
- Population, generation, mutation, crossover,
fitness, reproduction, chromosome - JmCmax ?genetic algorithms (Lawton 1992, Della
Croce et al. 1992, Bean 1994, Bierwirth 1995),
Herrmann et al. 1995) - Job shop with machine learning? genetic
algorithms (Lee et al. 1995) - Real life applications ? genetic algorithms (Bean
1994, Kettani and Jobin 1995, Herrmann et al.
1995)
21Constraint-guided Heuristic Search
- popularization of artificial intelligence
techniques and languages (e.g., PROLOG) - Focus on finding feasible schedules rather than
optimal ones - The most severe constraints in the beginning, the
least severe constraints for the final part - Sometimes necessary to break some constraints
- Soft constraints (constraint relaxation)
- Hard constraints
- List implied constraints as soon as possible
(constraint propagation) - Consistency checking
- Dealing with inconsistencies? conflict resolution
22Recent Developments in Scheduling Practice
- Flexible-resource scheduling (Daniels and Mazzola
1993, 1994, Ozdamar and Ulusoy 1995, Daniels et
al. 1996, 1997, Alidaee and Ahmadian 1997,
Alidaee and Kochenberger 1997, Armstrong et al.
1997a, 1997b) - Scheduling variable-speed machines (Trick 1994)
- Scheduling with finite capacity input and output
buffers (Hall et al. 1993, 1994,1997, Nawijn and
Bass 1994) - Scheduling of machine and material handling
operations (Egbelu 1987, Matsuo, Shang and
Sullivan (1991), Hall et al. 1993, Lei et al.
1993, 1995, Blazewicz et al. 1994, Hall et al.
1994, and Crama 1995) - Integrating scheduling with batching and lot
sizing (Potts and Van Wassenhove 1992)
23Machine scheduling with material handling
operations
- Resources?machines and materialhandling
transporters - Cost of material handling 80
- To reduce cost deal with the issues
- Sequencing that specifies the order in which jobs
are processed at machining centers - Scheduling that makes time-phased routing and
dispatching of transporters for job pick-up and
delivery - Facility layout and flowpath design that makes
efficient operations possible.
24Machine scheduling with material handling
operations (Contd)
- K?number of transporters in a system
- J?total number of job types
- n?total number of jobs to be processed
- nmps?the number of jobs in a minimal part set
- ?min?the objective of minimizing the production
cycle time of an MPS in a repetitive process - tw?a manufacturing environment where the starting
time of each material handling operation must be
confined within a time window - nwt? the constraint that jobs are not allowed to
wait in process
25Machine scheduling with material handling
operations (Contd)
- The problem is to find a simultaneous feasible
schedule for job sequencing and time-phased
dispatching and routing of transporters so that a
given objective is optimized - Work divided into
- Robotic cell scheduling
- has the fewest constraints, and is also the one
for which most analytical results are available - identify the optimal job input sequence and the
robot operation sequence with respect to certain
objective functions - Scheduling of Automated Guided Vehicles (AGVs)
- deals with an automated job shop with non-zero
buffers at machining centers and multiple AGVs
traveling on a shared network. - Cyclic scheduling of hoists subject to
time-window constraints - deals with the scheduling of multiple hoists in a
flexible flowshop - tw, nwt and collision-free constraints
26The robotic cell scheduling problem
- The no-buffer case
- F2(1)Jgt1?min ? polynomial (Sethi et al. 1992)
- F2(1)Jgt1?min ? O(n4mps) to optimize robot moves
and job sequence (Hall et al. 1996a) - F2(1)Jgt1Cmax ? Gilmore and Gomory algorithm
O(n3) (Kise et al. 1991) - F2(1)Jgt1Cmax (transportation between machines
job dependent)? NP-hard (Ganesharajah et al.
1995) - The finite buffer case
- F2(1)Jgt1Cmax (fixed job inputsequence)? Np-hard
branch-and-bound algorithm to determine the
sequence of robot moves (King et al. 1993)
27Scheduling of automated guided vehicles
- process of flexible manufacturing
- circulate on a network of guidepaths connecting
machine centers, and transport tools and jobs
among the centers - AGV flowpaths
- Unidirectional (?)
- Bi-directional (?)
- Netwok configurations
- Single-loop
- Multi-loop
28Analytical approaches to AGV scheduling
- Unidirected flowpath case
- Deadlines are fixed? single-loop network
determined in O(nlogn) (Blazewicz et al. 1991) - Deadlines are fixed, collision-free routing?
two-loop network determined with dynamic
programming (Blazewicz et al. 1994) - Bi-directional flowpath case
- Send an AGV from a source location to a machine
center? Dijkstras algorithm polynomial O(K4m2)
(Kim and Tanchoco 1991) - Column generation based heuristic approach
(Krishnamurthy et al. 1993) - Two-AGV scheduling problem to minimize makespan?
dynamic programming (LAngevin et al. 1994)
29Heuristic rules for AGV and machine scheduling
- AGV dispatching rules
- Work center-initiated
- Vehicle-initiated
- Pull-based-vehicle selects a work center with the
highest need for job replenishment - Push based-vehicle first selects a job to move
and then a work center to which the job should be
sent. - Plan conflict-free vehicle routes?(Taghaboni and
Tanchoco 1988) - Testing various machine and AGV scheduling rules
against different scheduling criteria via
simulation experiments?(Sabuncuoglu and
Hommertzheim 1989, 1992b) - Hierarchical approach for real-time on-line AGV
scheduling problems? (Sabuncuoglu and
Hommertzheim 1992a) - Artificial intelligence and expert systems
techniques ? review (Kusiak 1989) - Approach based on a Hopfield neural network with
simulated annealing? (Chung and Fischer 1995)
30The hoist scheduling problem
- Considered as a special class of Jm(K)Jgt1?min
problems with tw and nwt constraints. - Interval processing time? a decision variable
selected from a given range as job processing
time - A common objective of hoist scheduling in
practice? to minimize the cycle time of a
repetitive process for producing a given MPS
31The hoist scheduling problem (Contd)
- Fm(K)J1, nwt, tw?min
- Fm(1)J1, nwt, tw?min? NP-hard (Lei and Wang
1989) - Mixed integer program (Philips and Unger 1976)
- Branch-and-bound procedure that solves a large
number of LP subproblems (Shapiro and Nuttle
1988) - Branch-and-bound procedure that solves
relaxations of LPs (Armstrong et al. 1991, 1994) - Fm(K)Jgt1, nwt, tw?min
- Heuristic dispatching rules and expert systems
- Expert systems? (Yih 1990, Yih and Thesen 1991)
32Some Conclusions
- Changing r from 1 to a positive integer increases
the complexity of problem - no relationship between the complexity of the
nonfix and the fix models. - Most nonpreemptive problems are NP-hard
- For preemptive problems, most polynomial
algorithms based on linear integer programming
techniques
33Future Research Directions
- Branch-and-bound techniques, dynamic programming,
heuristic algorithms with an error bound analysis - The nonpre-emptive case with different job
release times and different machine available
time windows - semi-resumable case where some extra setup time
may be required when a job restarts. - Extension of the existing models to more
complicated job shop and open shop problems - combining machine availability constraints with
human resource constraints - comparing neighbourhood search techniques with
constraint-guided heuristic search techniques - where the optimal home position of a transporter
after a delivery is - How to coordinate the machine and material
handling operations to minimize the machine,
transporter, and job waiting time - How to con-struct collision-free schedules when
jobs arrive dynamically