# Parallel-Machine Models - PowerPoint PPT Presentation

PPT – Parallel-Machine Models PowerPoint presentation | free to download - id: 511561-OTRmO

The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
Title:

## Parallel-Machine Models

Description:

### Parallel-Machine Models Chapter 7 Elements of Sequencing and Scheduling by Kenneth R. Baker Byung-Hyun Ha R1 Outline Introduction Minimizing the makespan ... – PowerPoint PPT presentation

Number of Views:85
Avg rating:3.0/5.0
Slides: 16
Provided by: ikeIePus
Category:
Tags:
Transcript and Presenter's Notes

Title: Parallel-Machine Models

1
Parallel-Machine Models
• Chapter 7
• Elements of Sequencing and Schedulingby Kenneth
R. Baker
• Byung-Hyun Ha

R1
2
Outline
• Introduction
• Minimizing the makespan
• Nonpreemptable jobs
• Dependent nonpreemptable jobs
• Preemptable jobs
• Minimizing total flowtime
• Summary

3
Introduction
• Beyond single machine
• Some types
• Parallel systems, serial systems (flow shop),
hybrid systems (job shop)
• Sequencing resource allocation
• Parallel machines
• Basic model (Pm)
• n jobs independent and simultaneously available
at time zero
• m identical parallel machines
• A job can be processed by at most one machine at
a time
• e.g., Pm ?Cj
• More general models
• Parallel machines with different speeds, or
uniform machines (Qm)
• Speed of machine i -- vi
• Processing time of job j on machine i -- pij pj
/vi
• Unrelated machines in parallel (Rm)
• Speed of machine i on job j -- vij
• pij pj / vij

4
Minimizing the Makespan
• Makespan problem for parallel machines
• Resource allocation problem
• ? Sequence is not important
• Preemptable jobs -- Pm prmp Cmax
• Optimal makespan (McNaughton, 1959)
• M max?j1..n pj /m, maxpj
• ALGORITHM 1 -- Minimizing M with m parallel,
identical machines
• 1. Select some job to begin on machine 1 at time
zero.
• 2. Choose any unscheduled job and schedule it as
early as possible on the same machine. Repeat
this step until the machine is occupied beyond
time M (or until all jobs are scheduled).
• 3. Reassign the processing scheduled beyond M to
the next machine instead, starting at time zero.
• Exercise
• Three machines, jobs with processing times of 1,
2, 3, 4, 5, 6, 7, 8
• M ? Optimal schedule?

5
Minimizing the Makespan
• Nonpreemptable jobs -- Pm Cmax
• NP-hard
• PARTITION reduces to Pm Cmax
• ? PARTITION -- NP-hard in ordinary sense
• Given positive integers a1, ..., at , is there a
subset X ? 1, ..., t such that 2??i?X ai a1
... at ?
• Branch and bound? Not easy to obtain good lower
bound
• Dynamic programming? Extremely large number of
states, commonly
• List scheduling -- a plausible way
• Procedure
• 1. Construct a list of jobs.
• 2. Remove the first job from the list and place
it in the schedule as early as possible.
• 3. Repeat Step 2 without changing the existing
partial schedule.
• Dispatching mechanism for real-time decision,
possibly
• Optimal schedule can always be produced by some
list scheduling! (why?)
• Search space reduction to n!

6
Minimizing the Makespan
• Nonpreemptable jobs (contd)
• Performance guarantee
• A (worst-case) bound on the performance of a
particular solution procedure
• General form with error bound r
• z ? r?z
• where z -- objective from heuristic, z -- that
of optimal solution
• Theorem 1
• List scheduling for independent, nonpreemptable
jobs yields a makespan satisfying M /M ? 2
1/m.
• Proof of Theorem 1
• Consider a schedule by a list scheduling with
makespan M.
• Let k be a job that finishes at time M (start
time of the job M pk).
• At time (M pk), all m machines must have been
occupied since time zero.
• Hence, m(M pk) ? ?j1..n pj pk ? M ?
?j1..n pj /m pk(m 1)/m.
• ?j1..n pj /m ? M (from results on preemptable
case)
• pk ? M
• Therefore, M ? ?j1..n pj /m pk(m 1)/m ? M
/m M(m 1)/m.

7
Minimizing the Makespan
• Nonpreemptable jobs (contd)
• LPT list scheduling
• List scheduling by longest processing time (LPT)
• Theorem 2 (Graham, 1969)
• LPT list scheduling for independent,
nonpreemptable jobs yields a makespan satisfying
M /M ? 4/3 1/3m.
• Proof of Theorem 2 (adopted from Pinedo, 2008)
• Suppose there exist counterexamples such that 4/3
1/3m ? M /M.
• Then, there must exist an example with the
smallest number of jobs.
• Consider this smallest one and assume it has n
jobs and job 1 is shortest.
• Then, C1 M. Otherwise, a counterexample with
fewer jobs exists. (why?)
• Since all other machines are busy at start of job
1, C1 p1 M p1 ? ?j2..n pj /m.
• Hence, M ? p1 ?j2..n pj /m p1(1 1/m)
?j1..n pj /m.
• Since M ? ?j1..n pj /m,4/3 1/3m ? M /M ?
p1(1 1/m)/M ?j1..n pj /mM ? p1(1 1/m)/M
1.
• It leads to M ? 3p1 , which implies that the
optimal schedule may results in at most two jobs
on each machine. (why?)
• However, LPT scheduling is optimal in that case

8
Minimizing the Makespan
• Nonpreemptable jobs (contd)
• First-fit decreasing (FFD)
• To check whether makespan M is possible or not
• Procedure
• 1. Order the jobs according to LPT
• 2. Attempt to assign the first job on the list to
the first machine on which the job will fit
(i.e., it completes on or before M). If no such
machine exists, report FAIL.
• 3. Repeat Step 2 until all jobs have been
scheduled.
• Sometimes it fails, when a feasible schedule
actually exists.
• ? Determining whether M is valid is no easier
than solving the makespan problem itself
• ? It is from bin packing problem
• ? Best-fit decreasing ? LPT list scheduling
• Exercise
• 2 parallel machines, jobs with processing times
3, 3, 2, 2, 2, 2
• M by LPT list scheduling? Result of FFD using
that M?

9
Minimizing the Makespan
• Nonpreemptable jobs (contd)
• Multifit algorithm
• Determining schedule by searching for the
smallest feasible value of M, using FFD
• Min. trial M -- LB from preemptable case
• Max. trial M -- max2?j1..n pj /m, maxpj, or
makespan of any feasible schedule
• Theorem 3
• The multifit algorithm for independent,
nonpreemptable jobs yields a makespan satisfying
M /M ? 72/61, or about 1.18.

10
Minimizing the Makespan
• Dependent nonpreemptable jobs -- Pm prec Cmax
• Complexity
• Strongly NP-hard, generally
• Special cases
• P1 prec Cmax
• Easy (why?)
• P? prec Cmax
• Project scheduling, polynomially solvable by CPM
(critical path method)
• Pm pj1, intree Cmax , Pm pj1, outtree
Cmax
• P2 pj1, prec Cmax

intree (assembly tree)
outtree
11
Minimizing the Makespan
• Dependent nonpreemptable jobs (contd)
• Intree and unit-length jobs -- Pm pj1, intree
Cmax
• Critical path (CP) rule gives optimal schedule
• To give highest priority to the job at the head
of the longest string of jobs in the precedence
graph (ties may be broken arbitrarily)
• A.k.a. highest level first rule
• ? Equivalent to ALGORITHM 2 scheduling phase
• Proof of optimality -- see p. 120 of Pinedo
(2008)
• ? Analogous to LPT list scheduling
• Exercise
• Three parallel machines, following intree jobs
with unit processing time

12
17
13
8
5
2
14
9
6
3
1
15
10
7
4
16
11
12
Minimizing the Makespan
• Dependent nonpreemptable jobs (contd)
• Arbitrary precedence with two machines -- P2
pj1, prec Cmax
• Critical path (CP) rule using labels of direct
successors
• To give priority to the job with the
lexicographically smallest sequence of direct
successors labels in nonincreasing order
• ? Equivalent to ALGORITHM 3 scheduling phase
• Exercise
• Three parallel machines, unit-length jobs with
following precedence

6
5
3
0
4
7
2
1
13
Minimizing the Makespan
• Preemptable jobs
• Arbitrary precedence with two machines -- P2
prmp, prec Cmax
• A possible approach
• Transforming to P2 pj1, prec Cmax with
chains
• Example
• Guarantee optimal?
• No! The jobs must be divided into
half-unit-length jobs.

6
5
7
1
1
1
2
2
2
6
5
7
6
5
7
1
1
1
4
4
1
1
2
1
3
2
1
3
1
1
1
1
1
1
14
Minimizing Total Flowtime
• Minimizing F -- Pm ?Cj
• Notation
• pij -- processing time of the jth job in
sequence on the ith machine
• Fij -- flowtime of the jth job in sequence on
the ith machine
• nj -- number of jobs processed by the ith machine
• Objective function
• F ?i1..m ?j1..ni Fij ?i1..m ?j1..ni (ni
j 1)pij
• Solution approach
• F as scalar product of two vectors
• Matching integer coefficients (ni j 1) with
processing times pij
• F cannot be minimized unless ni differ by at most
one. (why?)
• SPT list scheduling
• Dispatching procedure and adaptable dynamic job
arrivals
• Exercise
• Two parallel machines and six jobs with
processing times of 1, 2, 3, 4, 5, 6
• Minimizing Fw -- Pm ?wjCj
• NP-hard

15
Summary
• More than one machine
• Allocation and sequencing
• In case of makespan problems, allocation may be
enough
• Two-phase method, commonly, because of complexity
• Allocation first, sequencing next considering as
single machine
• LPT list scheduling
• Applicable to some situations
• No precedence, intree, critical path
• Flowtime measures
• Total tardiness problems
• Very limited optimization approaches