IE324 Lecture Week13 Scheduling III

download IE324 Lecture Week13 Scheduling III

of 14

Transcript of IE324 Lecture Week13 Scheduling III

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    1/14

    Operations Scheduling

    part 3

    Source: Sipper and Bulfin, Production Planning, Control and Integration,

    McGrawHill.

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    2/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling2

    o The bottleneck machine should drive the schedule forthe whole shop.

    oWe study one simple method for bottleneck

    scheduling.

    1. Find the bottleneck machine.

    2. Schedule the bottleneck machine effectively.

    3. The other machines are made to comply to this schedule.

    o Machines after the bottleneck (downstream) are forward scheduled

    by the dispatching rules.

    o Machines before the bottleneck (upstream) are backward scheduled

    using due dates (as in MRP).

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    3/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling3

    o Finding the bottleneck machine

    o By observation: piles of WIP in front of the bottleneck.

    o Estimate the workload on each machineo Processing times of jobs on the machine / scheduling horizon.

    (34 hours of processing time / 40 hours in a week) x 100=85%.

    o The machine with the highest workload % would likely be the bottleneck.

    o Scheduling the bottleneck machine

    o Let

    o i: job

    o b: bottleneck machine (j=b)

    o p i j: processing time of job ion machine j

    o

    ri: ready time of job iat the shopo di: due date of job i

    o rbi: bottleneck release time for job i(time job iarrives at b)

    o dbi: bottleneck due date for job i(time when job ishould leave b)

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    4/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling4

    o Assuming that there is no waiting, release time of job iat the

    bottleneck machine b:

    and due date for the operation of job ion the bottleneck machineb:

    o Now schedule the bottleneck machine b as a single machine with

    nonzero release times. 1 I ri I Cmax or 1 I ri I Tmax or 1 I ri I F

    1b

    1l

    liibi prr

    m

    1bl

    liibi pdd

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    5/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling5

    o 1 I ri I ... is a hard problem. B & B algorithm or dispatching rule is

    used that depends on the performance measure for the job shop.o Using a dispatching rule for 1 I ri I ... :

    Step 0. Set U={1,2,...,n} and

    Step 1. Let S={iI rbi t, i U} be the available jobs. Schedule job i* on

    b among jobs in S, where i* has the best priority.Step 2. Set UU {i*}. IfU=, stop; all jobs have been scheduled.

    Otherwise set t=max { miniU rb

    i, t + pi* b } and go to Step 1.

    o Dispatching rules to use:

    o most work remaining, if the measure is Cmax

    .

    o least work remaining, if the measure is flow time.

    o smallest due date on the bottleneck, if the measure is Tmax.

    o Others..

    biUi rmint

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    6/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling6

    o Upstream and downstream schedules

    o The completion time of a job on the bottleneck = arrival time for

    its operation immediately after the bottleneck.o The start time of a job on the bottleneck = due date for the

    operation immediately preceding the bottleneck.

    o Release times and due dates are determined for jobs on aparticular machine from the bottleneck schedule.

    o Then each machine is scheduled as a single machine problem.

    o Consider a particular machine. If an operation of a job precedesthe bottleneck, complete the operation by its due date so that itwill arrive at the bottleneck before the scheduled start time there.Since the job may have other operations preceding this one,

    schedule it as late as possible: complete it at its due date.backward scheduling.

    o Operations after the bottleneck may have other operationsfollowing: start them as soon as possible.forward scheduling.

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    7/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling7

    o A feasible job shop schedule

    o

    When all machines have been scheduled independently, asequence of jobs on each machine results.

    o How to get a feasible job shop schedule then?

    o Do not not allow a job to enter the available set until both itspredecessor operations and all jobs preceding it in the machinesequence have been completed.

    o Example:6 jobs, 4 machines.

    o From the job workloads:

    minimum makespan=34 min.

    o From the machine sums: machine 3

    must process for at least 44 min.

    a better lower bound for makespan

    is 44 min. Machine 3 is the bottleneck.

    Machine

    job 1 2 3 4 sum

    1 6 8 13 5 32

    2 4 1 4 3 12

    3 6 8 4 3 214 10 5 15 4 34

    5 3 4 4 6 17

    6 2 4 4 5 15

    sum 31 30 44 26

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    8/14

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    9/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling9

    o Example (contd):For bottleneck machine 3

    Job i 1 2 3 4 5 6

    r3i 14 5 17 15 13 0d3i 39 41 44 40 44 33

    pi3 13 4 4 15 4 4

    t S [start, complete]0 6 [0,4]

    5 2 [5,9]

    13 5 [13,17]

    17 1,3,4 [17,30]

    30 3,4 [30,45]

    45 3 [45,49]

    Select the job in S with EDD. Then the sequence for the bottleneck:

    6 - 2 - 5 - 1 - 4 - 3. Cmax=49

    Machine

    job 1 2 3 4 sum

    1 6 8 13 5 32

    2 4 1 4 3 12

    3 6 8 4 3 21

    4 10 5 15 4 34

    5 3 4 4 6 17

    6 2 4 4 5 15sum 31 30 44 26

    6 2 5 1 4 30 4 5 9 13 17 30 45 49

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    10/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling10

    o Example (contd):

    o Now schedule the other machines.

    jobs routing1 1-2-3-4

    2 1-2-3-4

    3 4-2-1-3

    4 2-1-3-4

    5 1-2-4-3

    6 3-1-2-4

    Machine 1:

    r13 =p34+ p32= 3+8=11, d1

    3 =45 (from the schedule of bottleneck machine 3)

    d11 =17- p12= 17-8=9 for job 6f: r16 =4 and d

    16 =49- p62 - p64= 49-4-5=40

    Job i 1 b 2 b 3 b 4 b 5 b 6 f

    r1i 0 0 11 5 0 4

    d1i 9 4 45 30 3 40

    pi1 6 4 6 10 3 2

    Machine

    job 1 2 3 4 sum

    1 6 8 13 5 32

    2 4 1 4 3 12

    3 6 8 4 3 21

    4 10 5 15 4 34

    5 3 4 4 6 17

    6 2 4 4 5 15

    sum 31 30 44 26

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    11/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling11

    o Example (contd):now schedule machine 1.

    o Scheduling machine 1:

    - Choose the job in S with the EDD. Backward schedule any job with anoperation on machine 1 that comes before its operation on bottleneck

    machine 3 and forward schedule the others.

    - To backward schedule a job, schedule it to complete as late as possible

    and be on time, since there may be other operations of the same job tobe done before it.

    But if there is no idle period, the job must be scheduled elsewhere: first

    try to create enough idle time by starting previously scheduled jobs earlier

    without violating their release times, or by delaying the start of a

    previously scheduled job without violating its due date.

    If successful, an idle period is created where the current job can be

    scheduled. If not, schedule the job with minimum tardiness possible.

    In the case of tardiness: increase in makespan.

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    12/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling12

    o Example (contd):Scheduling machine 1:

    - Toforward schedule a job, start the job as soon as possible. If possible,

    start it at its release date; if not, it must be delayed.- Jobs 1, 2, 5 have release times of 0. Since job 5 has the earliest due

    date, it is chosen. It should be backward scheduled schedule it to

    complete at its due date (time 3), so it will start at time 0. Advance time

    to 3, and job 2 is scheduled next. Machine 1 schedule:

    t S [start, complete]

    0 1,2,5 [0,3]

    3 1,2 [3,7]

    7 1,4,6 [7,13]

    13 3,4,6 [20,30]

    13 3,6 [13,15]

    15 3 [39,45] sequence: 5-2-1-6-4-3

    Repeat this procedure for machines 2 and 4.

    5 2 1 6 4 3

    0 3 7 13 15 20 30 39 45

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    13/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling13

    o Example (contd):

    To get the job shop schedule, use a dispatch procedure that maintains the

    sequence of jobs on all machines.

    No priority is needed, since

    an operation will not be ready to schedule until its previous operation

    has completed on another machine

    and the operation of the job immediately preceding it on this

    machine has completed.

    The Gantt chart for the final schedule:

    Cmax=53

  • 7/31/2019 IE324 Lecture Week13 Scheduling III

    14/14

    Job shops - Bottleneck Scheduling

    18/5/2011IE324-Week 13 Operations Scheduling14

    o Example (contd):

    Another machine could be selected as the bottleneck machine or wait times

    included in the release times and due dates of machine 3; and the procedurerepeated.

    The solution seems good enough, so we stop.