sequencing or1

Upload: anika-relan

Post on 04-Apr-2018

229 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/29/2019 Sequencing OR1

    1/51

    Sequencing

  • 7/29/2019 Sequencing OR1

    2/51

    Sequencing

    Sequencing problems are of common occurrence in ourdaily ordering of jobs for processing in a manufacturing plant waiting aircrafts for landing clearance programmes to be run in a sequence at a computer centre

    Such problems exist whenever there is a alternativechoice as to the orderin which a number of jobs can bedone.

    The selection of an appropriate order or sequence inwhich to receive waiting customers (or jobs) is calledsequencing.

    the objective is to optimize the use of available facilitiesto effectively process the items or the jobs.

  • 7/29/2019 Sequencing OR1

    3/51

    Scheduling Models

    Flow-Shop Scheduling model :

    In this model we have m machines and njobs. Any given job requires anexecution on each machine. The ordering of processing on the variousmachines is same for all jobs ; also the sequence in which the jobs gothrough the first machine has to be the same as the sequence in whichthe jobs go through any of the subsequent machine, i.e. a job may not`Pass' another job while waiting for processing on a machine. A flow-shop with this restriction is often called apermutation flow-shop.

    J ob-Shop Scheduling Model :

    In this model we have njobs and m machines and each job has its ownmachine order specified.

  • 7/29/2019 Sequencing OR1

    4/51

    Scheduling Models

    Open shop scheduling model :

    In this model we have m machines and n jobs. Any given jobrequires an execution on each of the m machines. The order in

    which a job passes through the machines is immaterial.

    Project Scheduling :

    It is one of a type project where all the resources are brought to

    the job.

  • 7/29/2019 Sequencing OR1

    5/51

    FLOW SHOP SCHEDULING

    (n JOBS, m MACHINES)

    n JOBS BANK OF m MACHINES (SERIES)

    1

    2

    3

    4 n

    M1 M2 Mm

    Complete enumeration

    n! possible sequence for each machine (m

    machine)

  • 7/29/2019 Sequencing OR1

    6/51

    N= Set of 1, 2, 3,... .., n jobs

    M= Set of m machines M1,M2,......,Mm

    tij=Processing time of i-th job on j-th machine Mj

    Total idle time of last machine for n jobs in a

    sequence S

    n

    i

    iX1

    n )D(Sor

    Notations

  • 7/29/2019 Sequencing OR1

    7/51

    Various Performance Measures

    In each one of the models it is assumed that the decision maker wishes to

    minimize a given objective function. Some of the objectives are listedbelow :

    Minimum Make-span : It is defined as total completion time in which theset of all jobs finish processing on all the machines. This is also called asTotal Elapsed Time or minimum flow time.

    Minimum Mean Flow Time : It is defined as the average completion timeof any job. It is the average time a job spends in the Shop.

    Minimum In-Process Inventory Time : It is defined as minimization oftotal in-process inventory waiting time for all jobs.

    Minimum Penalty Cost : It is defined as the total penalty paid by virtue ofjobs being late in completion by their due dates.

    Minimum Total Production Cost : It is defined as the total production costfor the production of a set of products on machines.

  • 7/29/2019 Sequencing OR1

    8/51

    Scheduling ProblemThe general scheduling problem is described

    below

    Determine the sequence and schedule forprocessing a specified number of jobs on agiven number of machines that minimizes awell-defined measure of performance. It may

    be noted that the technological orders inwhich the jobs are processed on variousmachines, due dates of jobs, and the job andmachine availabilities are to be considered

    while determining the sequence.

  • 7/29/2019 Sequencing OR1

    9/51

    Difference between

    Sequencing and Scheduling

    Sequencing simply refers to thedetermination of ORDER in which the jobs

    are to be processed on various machines.

    Scheduling refers to the time-table thatincludes the start time and completion

    time of-jobs on machines etc.

  • 7/29/2019 Sequencing OR1

    10/51

    Flow-shop

    (Assumptions)

    Regarding Machines : No machine processes more than one operation at, a time.

    Each operation on a machine, once started, must be performed to its

    completion.

    Each operation takes finite time and it must be completed before any

    other operation begins. The given operation time includes set-up time.

    Each machine is initially idle at the beginning of the scheduling period.

    There is only one machine of each type. Machines never break down and man-power of uniform ability is always

    available.

    Each machine operates independently of the other.

  • 7/29/2019 Sequencing OR1

    11/51

    Flow-shop

    (Assumptions)

    Regarding J obs :

    All jobs are available for processing at time zero

    All jobs allow the same sequence of operations.

    Jobs are independent of each other. No job is processed more than once on any machine.

    Each job consists of a specified number of operations and each

    operation is performed by only one-machine.

    The processing times of the jobs are independent of the order in

    which the jobs are performed.

    Each job, once started, must be processed to completion.

  • 7/29/2019 Sequencing OR1

    12/51

    Flow-shop

    (Assumptions)

    Regarding Operating Policies:

    Each job is processed as early as possible.

    Each job is considered as indivisible entity even though it may be

    composed of a number of individual units. Each machine is provided with sufficient waiting space for

    allowing jobs to wait before starting their processing.

    Each machine processes jobs in the same sequence, i.e., no

    passing or overtaking of jobs is permitted.

    Transportation time of a job between machines is negligible.

    Set up times are sequenceindependent.

  • 7/29/2019 Sequencing OR1

    13/51

    Sequencing

    (n J obs and one machine Flow shop Problem)

    Priority rules: Simple heuristicsused to select the order inwhich jobs will be processed.

    Job time: Time needed forsetup and processing of a job.

    It includes set up time unless setup timesare sequence dependent

  • 7/29/2019 Sequencing OR1

    14/51

    Priority Rules

    FCFS - first come, first served

    SPT - shortest processing time

    EDD - earliest due date

    CR - critical ratio

    =time remaining / processing time

    S/O - slack per operation

    =slack remaining / # of operations remaining

    Rush - emergency

  • 7/29/2019 Sequencing OR1

    15/51

    First Come, First Served Rule

    Process first job to arrive at a work center

    first

    Average performance on most scheduling

    criteria

    Appears fair & reasonable to customers

    Important for service organizations

    Example: Restaurants

  • 7/29/2019 Sequencing OR1

    16/51

    Shortest Processing Time Rule

    Process job with shortest processing time

    first.

    Usually best at minimizing job flow and

    minimizing the number of jobs in thesystem

    Major disadvantage is that long jobs may

    be continuously pushed back in the queue.

  • 7/29/2019 Sequencing OR1

    17/51

    Earliest Due Date Rule

    Process job with earliest due date first

    Widely used by many companies

    If due dates important

    Performs poorly on many scheduling

    criteria

  • 7/29/2019 Sequencing OR1

    18/51

    Critical Ratio (CR)

    Ratio of time remaining to work time

    remaining

    CR Time remainingWork days remaining

    Due date - Today's date

    Work (lead) time remaining

    Process job with smallest CR first

    Performs well on average lateness

    4 2 Ad t f th C iti l R ti

  • 7/29/2019 Sequencing OR1

    19/51

    4.2 Advantages of the Critical Ratio

    Scheduling Rule

    Use of the critical ratio can help to:

    determine the status of a specific job

    establish a relative priority among jobs on

    a common basis

    relate both stock and make-to-order jobs

    on a common basis

    adjust priorities and revise schedulesautomatically for changes in both demand

    and job progress

    dynamically track job progress and

    location

  • 7/29/2019 Sequencing OR1

    20/51

    Performance measures

    Flow time of a job: Duration of time from ajob enters into the system until it leaves

    Lateness of a job: Amount by which

    completion date exceeds due date. Couldbe negative.

    Tardiness=max(lateness,0)

    Makespan: total time needed to finish agroup of jobs

    Average number of jobs until the last isfinished:

    =Total flow time / Makes an

  • 7/29/2019 Sequencing OR1

    21/51

    Criteria to Evaluate Priority Rules

    Jobs#

    timesFlowtimecompletionAverage

    timesFlow

    timesProcessnUtilizatio

    timesProcess

    timesFlowsystemtheinjobsofnumberAverage

    jobsofNumber

    timesLatelatenessjobAverage

  • 7/29/2019 Sequencing OR1

    22/51

    Example: Average number of jobs

    Jobs: A and B with processing times 10 each

    A finishes at 10

    Number of jobs

    1

    2

    B finishes at 20 Time

    Process Time=20, Total Flow time=10+20

    Average number of jobs=30/20

    Average number of jobs

  • 7/29/2019 Sequencing OR1

    23/51

    Example: Sequencing rules

    Jobs Processing time DD=Due date

    A 11 61

    B 29 45

    C 31 31

    D 1 33

    E 2 32

  • 7/29/2019 Sequencing OR1

    24/51

    Ex: FCFS

    Jobs Proc.time Flow time DD Late Tardy

    A 11 11 61 -50 0

    B 29 40 45 -5 0C 31 71 31 40 40

    D 1 72 33 39 39

    E 2 74 32 42 42

    Total 268 202 66 121

    Aver. 53.6 40.4 13.2 24.2

  • 7/29/2019 Sequencing OR1

    25/51

    Ex: SPT to minimize the total flow time

    Jobs Proc.time Flow time DD Late Tardy

    D 1 1 33 -32 0

    E 2 3 32 -29 0A 11 14 61 -47 0

    B 29 43 45 -2 0

    C 31 74 31 43 43

    Total 135 202 -67 43

    Aver. 27.0 40.4 -13.4 8.6

  • 7/29/2019 Sequencing OR1

    26/51

    Ex: EDD to minimize the maximum lateness

    Jobs Proc.time Flow time DD Late Tardy

    C 31 31 31 0 0

    E 2 33 32 1 1D 1 34 33 1 1

    B 29 63 45 18 18

    A 11 74 61 13 13

    Total 235 202 33 33

    Aver. 47.0 40.4 6.6 6.6

  • 7/29/2019 Sequencing OR1

    27/51

    235/74=3.176.647EDD

    135/74=1.828.627SPT

    268/74=3.6224.253.6FCFS

    Average

    Number of

    Jobs at theWork Center

    Average

    Tardiness(days)

    Average

    Flow Time(days)Rule

    Example summary

  • 7/29/2019 Sequencing OR1

    28/51

    CR: This is an Iterative Process using this

    model:

    Set Current Time (sum of time of allscheduled jobs so far)

    Compute:

    Model Starts with current time = 0

    Current time updates after eachselection by adding scheduledProcess Time to current time

    _ _

    Pr._ _Re

    Due Date Cur TimeCR

    Work maining

  • 7/29/2019 Sequencing OR1

    29/51

    Try it:

    JOBPr.

    Time

    D.

    DateCR

    Current Time = 0

    1 11 615.54

    6

    2 29 451.55

    2

    3 31 31 1.00

    4 1 33 33

    5 2 32 16

    JOBPr.Time

    D.Date

    CR

    Current Time = 31

    1 11 61 2.7272 29 45 .483

    4 1 33 2

    5 2 32 0.5

  • 7/29/2019 Sequencing OR1

    30/51

    Continuing (CR)

    JOBPr.Time

    D.Date

    CR

    Current Time = 60

    1 11 610.091do

    last

    4 1 33 -27*

    5 2 32 -14**

    JOBFlow

    Time

    D.

    DateTardy

    Summary

    3 31 31 0

    2 60 45 15

    4 61 33 28

    5 63 32 31

    1 74 61 13

    Total: 289 87

  • 7/29/2019 Sequencing OR1

    31/51

    Summarizing from CR analysis:

    Mean F. Time: (289)/5 = 57.8

    Mean Tardiness: (87)/5 = 17.4

  • 7/29/2019 Sequencing OR1

    32/51

    Used to sequence N jobs through 2

    machines in the same order

    1995 Corel Corp.

    1995 Corel

    Corp.

    Saw Drill

    Job A

    Job B

    Job C

    Jobs (N = 3)

    Johnsons Rule

  • 7/29/2019 Sequencing OR1

    33/51

    Johnson's Rule - Scheduling N Jobs onTwo Machines

    All jobs are to be listed, and the time eachrequires on a machine shown.

    Select the job with the shortest activity

    time. If the shortest time lies with the firstmachine, the job is scheduled first; if withthe second machine, the job is scheduledlast.

    Once a job is scheduled, eliminate it.

    Apply steps 2-3 to the remaining jobs,working toward the center of the

    sequence.

  • 7/29/2019 Sequencing OR1

    34/51

    List jobs &activity times

    Select job with

    shortest time

    Machine?

    Schedule

    FIRST

    ScheduleLAST

    Eliminate job

    from list

    Jobs left?Break

    arbitrarily

    Ties?

    Yes

    1

    2

    Yes

    StopNo

    No

    Johnsons Rule Steps

    Fl h

  • 7/29/2019 Sequencing OR1

    35/51

    Flow-shop

    (n Jobs and two machine Flow shop Problem)

    J ohnson's Rule : J ob i precedes job j in an

    optimal sequence with regard to minimumtotal elapsed time if

    min (ti1, tj2)min (ti2, tj1)

    Fl h

  • 7/29/2019 Sequencing OR1

    36/51

    Flow-shop

    (n Jobs and two machine Flow shop Problem)

    J ohnson's Optimal Sequence Algorithm

    Step 1 : Examine the processing times of n jobs on both machines andfind min [(min (ti1, ti2) where i=1, 2,...., n.]

    Step 2 : (i) If the minimum tk1 is obtained in the column of firstmachine A for job k, schedule the k-th job in the first availableposition in sequence from the beginning, i.e., from left end. (ties maybe broken arbitrarily). Go to step 3.

    (ii) If the minimum tr2 is obtained in the column of second machine Bfor job r, place the r-th job in the last available position in thesequence from the last i.e., from right end. (ties may be brokenarbitrarily). Go to step 3.

    Step 3: Remove the assigned job from further considerationand return to step 1 until all the job are assigned.

  • 7/29/2019 Sequencing OR1

    37/51

    Eliminate M3 from consideration. The next shortest time

    is M2 at Workstation 1, so schedule M2 first.Eliminate M5 from consideration. The next shortest time is

    M1 at workstation #1, so schedule M1 next.

    Eliminate M1 and the only job remaining to be

    scheduled is M4.

    Example Johnsons Ruleat theMorris Machine Co.

    Time (hr)

    Motor Workstation 1 Workstation 2

    M1 12 22

    M2 4 5M3 5 3

    M4 15 16

    M5 10 8

    Sequence = M1M2 M3M4 M5

    Shortest time is 3 hours at workstation 2, so

    schedule job M3 last.

    Eliminate M2 from consideration. The next shortest time is

    M5 at workstation #2, so schedule M5 next to last.

  • 7/29/2019 Sequencing OR1

    38/51

    Workstation

    M2(4)

    M1(12)

    M4(15)

    M5(10)

    M3(5)

    Idleavailablefor further work

    0 5 10 15 20 25 30Day

    35 40 45 50 55 60 65

    Idle2 M2(5)M1(22)

    M4(16)

    M5(8)

    M3(3)Idle

    1

    Gantt Chart for the Morris Machine Company Repair Schedule

    The schedule minimizes the idle time of workstation 2

    and gives the fastest repair time for all five motors.

    No other sequence will produce a lower makespan.

    Example Johnsons Ruleat theMorris Machine Co.

    J h R l

  • 7/29/2019 Sequencing OR1

    39/51

    Johnsons Rule -Example

    Job Work Center 1

    (Drill Press)

    Work Center 2

    (Lathe)

    A 5 2

    B 3 6

    C 8 4

    D 10 7

    E 7 12

  • 7/29/2019 Sequencing OR1

    40/51

    Johnsons Rule - Example

    AStep 1

    B AStep 2

    B C AStep 3

    B D C AStep 4

    B E D C AStep 5

    Graphical Depiction

  • 7/29/2019 Sequencing OR1

    41/51

    Graphical Depictionof J ob Flow

    B E D C A

    B E D C A

    Work

    center 1

    Work

    center 2

    0 3 10 20 28 33

    0 3 9 10 20 22 28 29 33 35Time =>

    Time =>

    B E D C A

    = Job completed= Idle

    E l k

  • 7/29/2019 Sequencing OR1

    42/51

    Example: Two Work Center

    Job

    Lowest

    Workcenter 1

    A 5 5

    B 4 3

    C 8 9

    D 2 7

    E 6 8

    F 12 15

    Workcenter 2

    @ work center

    1

    D

  • 7/29/2019 Sequencing OR1

    43/51

    E l T W k C

  • 7/29/2019 Sequencing OR1

    44/51

    Example: Two Work Center cont.

    Job

    Lowest

    Workcenter 1

    A 5 5

    B 4 3

    C 8 9

    D 2 7

    E 6 8

    F 12 15

    Workcenter 2

    Tie: pick arbitrarily

    D BA

    E l T W k C

  • 7/29/2019 Sequencing OR1

    45/51

    Example: Two Work Center cont.

    Job

    Lowest

    Workcenter 1

    A 5 5

    B 4 3

    C 8 9

    D 2 7

    E 6 8

    F 12 15

    Workcenter 2

    @ work station

    1

    D BAE A

    E l T W k C t t

  • 7/29/2019 Sequencing OR1

    46/51

    Example: Two Work Center cont.

    Job

    Lowest

    Workcenter 1

    A 5 5

    B 4 3

    C 8 9

    D 2 7

    E 6 8

    F 12 15

    Workcenter 2

    @ work station

    1

    D BAE AC

    D BAE AC FFinalsequence

    E l T W k C t t

  • 7/29/2019 Sequencing OR1

    47/51

    Example: Two Work Center cont.

    Work station 1

    D BE AC F0 2 8 16 28 33 37

    D BE AC F2 9 17 26 28 43 48 51

    Work station 2

    Makespan = 51

  • 7/29/2019 Sequencing OR1

    48/51

    Example: Johnsons rule

    Job Processing time on 1 Processing time on 2

    A 15 25

    B 8 6

    C 12 4

    D 20 18

  • 7/29/2019 Sequencing OR1

    49/51

    The sequence that minimizes the Makespan

    A - D - B - C

    15

    25

    20

    18

    8

    6

    12

    4

    15

    15 35

    40

    43

    58

    55

    64 68

    15

    13

    Idle time = 28

    Makespan = 68

    MC1

    MC2

  • 7/29/2019 Sequencing OR1

    50/51

    Example: Johnsons rule

    Job i: 1 2 3 4 5M1 5 3 1 7 8

    M2 2 6 2 7 7

    Stage Unscheduled Minimum tim Assignment Partialjobs m= 1, 2 schedule

    1 1, 2, 3, 4, 5 t31 3=[Il 3, x, x, X, X

    2 1, 2, 4, 5 t12 1=[5] 3, x, x, x, 1

    3 2, 4, 5 t2l 2=[2] 3, 2, x, x, 1

    4 4, 5 t52 5=[4] 3, 2, 4, 5, 1

    Hence optimal sequence So=(3, 2, 4, 5, 1).

  • 7/29/2019 Sequencing OR1

    51/51

    Example: Johnsons rule

    Job i: 1 2 3 4 5M1 5 3 1 7 8

    M2 2 6 2 7 7

    The calculations of flow time of the given five jobs on both machines is, given below :

    job Machine M1 Machine M2 Xi=Idle time of job in i-th

    sequence position on 2ndmachineM2

    in out in out

    3 0 1 1 3 X1=1

    2 1 4 4 10 X2=14 4 11 11 18 X3=1

    5 11 19 19 26 X4=1

    1 19 24 26 28 X5=0