270 likes | 373 Views
OUTLINE. Questions? Did you hear or notice anything since last class that has to do something with this class? New Homework The basics of scheduling Quiz next Monday. Basics of scheduling. Definitions Creating a schedule Difference between optimum and good Do optima exist?
E N D
OUTLINE • Questions? • Did you hear or notice anything since last class that has to do something with this class? • New Homework • The basics of scheduling • Quiz next Monday
Basics of scheduling • Definitions • Creating a schedule • Difference between optimum and good • Do optima exist? • Performance objectives • Basic rules • SPT • EDD, Moore • Lawler • Johnson • Heuristics
Introduction to Scheduling • The general job shop problem • All problems are subsets or relaxations of basic assumptions • Organized research and study of this area followed W.W.II • n jobs {J1, J2, ….Jn} • a job is a task or lot or batch that is to processed as a unit. If it is broken into several jobs, we restart the problem with each part a new job • m machines {M1, M2, ….Mm} • a machine is a processor or resource that performs a specific function required by a job
Introduction to Scheduling (continued) • Processing of a job on a machine is called an operation • nm operations oij is the ith job on the jth machine • Each job passes through each machine once and only once (Real jobs may repeat or skip) • Each job has a prescribed order in which it is processed by the machines - This is called its Technological Constraint (TC). Other names are processing order, routing, process plan. • General Job Shop - each job has its own processing order • Flow Shop - all jobs have the same processing order • Permutation Shop - all machines see the jobs in the same order
Introduction to Scheduling (continued) • A production line with all machines tied together is an example of a permutation shop • If all jobs have the same processing order, but the machines are not tied together, we have a Flow shop, because some machines may not see all jobs in the same order. (They may pass each other between machines – think of cars and successive toll booths)
M1 J1 J2 J3 M2 J1 J2 J3 M1 J1 J2 J3 J1 J2 J1 J2 J1 M2 J3 J2 M1 J1 J2 M2 J2 J1 Examples – Gantt charts Flow Permutation Flow non-Permutation General
Assumptions • 1. No two operations of a job may be processed simultaneously • 2. Once an operation is started, it must be finished (no preemption) • 3. Jobs may not be cancelled • 4. Each job has m operations, one on each machine • 5. Processing time pij is independent of the schedule (no set - up dependency) • 6. In process inventory is allowed • 7. There is only one of each machine
Assumptions (continued) • 8. Machines may be idle • 9. No machine may process more than one operation at a time • 10. Machines are always available (no breakdowns) • 11. All parameters are known and are deterministic - no randomness - no changes in the technological constraints • We relax these as required by our situation and solve a different problem
Notations and definitions • di - due date of Job i • ri - ready time of Job i • ai - allowance = di - ri • si - slack = di - remaining operations • pij - the time required to process oij • Wik - the waiting time of Job i preceding its kth operation (not the work on Mk): • J1’s time = W11+p11+W12 +p13+W13 +p12+W14+p1 17, if the TC is M1 to M3 to M2 to M17 • We designate the kth operation as oij(k)
Notations and definitions (continued) • Ci is the completion time of Job i • Fi is the flow time of Job i = Ci - ri • Even though the English words have an identical meaning, we distinguish between Lateness and Tardiness • Lateness Li =Ci - di, therefore maybe positive or negative depending on whether we complete a job before or after its due date
Notations and definitions (continued) • Tardiness is non- zero only if the job is completed after its due date: • Ti = max{Li, 0} • We also define Earliness as Ei = Max{-Li, 0} • The weight or importance of a job is indicated either by wi or • Some of our definitions refer to instants in time • Completion, readiness • Others refer to elapsed time • Processing, Waiting, Flow
Notations and definitions (continued) • Scheduling - the ordering of operations subject to restrictions and providing start and finishing times for each operation
M1 Oi1(m-1) Oi2(m) M2 Wi m Mj Oi j(2) Wi 2 Mm-1 Oi m-1(1) pi m-1(1) Oi m(3) ri Ci Notations and definitions (continued)- Schematic • Processing Order - Mm-1, Mj, Mm …..M1, M2 Mm
Measures • Optimality or goodness of schedules only makes sense if we define the measure under which we are considering optimality or goodness. • There are three broad categories of measures: • Completion time • Due dates • Inventory or utilization • We also define a general class of measures called regular measures
Measures (continued) • Based on completion Time • Maximum Flow time • Maximum Completion time • Average Flow time • Average Completion time • Weighted Average Completion time
Measures (continued) • Based on due dates • Average Lateness • Maximum Lateness • Average Tardiness • Maximum Tardiness • Number of tardy jobs
Measures (continued) • Based on Inventory or Utilization • Average number of waiting jobs • Average number of unfinished jobs (WIP) • Average number of completed jobs (finished goods) • Average Idle time • Maximum Idle time
Measures (continued) • Regular measures • Always are minimized • Are non decreasing in completion times • Examples • Average and maximum completion time • Average and maximum flow time • Average and maximum lateness • Average and maximum tardiness • Number of tardy jobs
Measures (continued) • Given two sets of completions times obtained under two schedules generated for the same problem: • C and C’ • if Ci <= Ci’ implies that R(C)<=R(C’) then R is regular
Inventory • Inventory can exist in many places • Transit • Raw material • Work in Process (WIP) • Finished Goods (FG) • Distribution • Retail Location • Spares
Classification notation • All problems can be classified as n/m/A/B where • n - number of jobs • m - number of machines • A - pattern • F - Flow Shop • P - Permutation • G - General Job Shop • B - Measure • Cmax, Fmax etc.
Classification notation (continued) • for example n/3/F/Fbar means • any number of jobs on three machines in a flow shop being measured on the basis of average flow time
Some further definitions • Jobs and ready times fixed = Static • Parameters known and fixed = Deterministic • Random arrival of jobs = Dynamic • Uncertain processing times = stochastic
Kinds of scheduling • Taking sequences and placing them in a schedule is called time tabling (creating a Gantt chart) • Semiactive - process each job as soon as it can be (slide to the left on the chart) • Active - No operation can be started earlier without delaying some other operation • Non-delay - no machine is kept idle • Non-feasible - does not meet Technological Constraints • Number of possible schedules (including non-feasible ones) = (n!)m
Optimality • Since for any given problem there are a countable number of possible schedules (as long as we do not allow preemption or unnecessary delays) there must be an optimum (or optima) because we can (theoretically) compare all possible schedules and select the best one • If we look at the space that contains our schedules and attempt to locate the optimum we find that:
Optimality (continued) • Optimal all possible feasible Active semi active non - delay
Equivalent measures • Two measures are equivalent if a schedule optimal with respect to one is also optimal with respect to the other and vice versa. • Cbar, Fbar, Wbar, Lbar are equivalent • Note that a schedule optimal to Lmax is optimal with Tmax, but not vice versa • Cmax, Nbarp and I bar are also equivalent • Cbar, Fbar, Lbar, Nbaru, Nbarw are equivalent for one machine • The choice of measure depends on the circumstances