session 10 university of southern california ise514 september 24, 2015 geza p. bottlik page 1...
TRANSCRIPT
![Page 1: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/1.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 1
Outline• Questions? Comments?
• Quiz
• Introduction to scheduling
• Notation
• Measures
• Optimality
• Equivalency
• Formal routine for active and non-delay schedules
• Next quiz on 10/1
• First midterm on 10/8, review on 10/6, covers everything up to and including material covered on 10/1
![Page 2: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/2.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 2
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
![Page 3: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/3.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 3
Notations and definitionsdi - 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)
m
kiki WW
1
![Page 4: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/4.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 4
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
m
kkijikii pWrC
1)( )( )( )(kijikii pWrC
![Page 5: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/5.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 5
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
i
![Page 6: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/6.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 6
Notations and definitions (continued)
Scheduling - the ordering of operations subject to restrictions and providing start and finishing times for each operation
Closed Shop - serves customers from inventory (make to stock)
Open shops - Jobs are made to order
![Page 7: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/7.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 7
Wi m
Oi j(2)
Wi 2
Notations and definitions (continued)- Schematic
M1
M2
Mm
Processing Order - Mm-1, Mj, Mm …..M1, M2
Mj
Mm-1Oi m-1(1)
Oi2(m)
Oi1(m-1)
Ciri
Oi m(3)
pi m-1(1)
![Page 8: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/8.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 8
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
![Page 9: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/9.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 9
Measures (continued)
Based on completion Time
Maximum Flow time
Maximum Completion time
Average Flow time
Average Completion time
Weighted Average Completion time
![Page 10: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/10.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 10
Measures (continued)
Based on due dates
Average Lateness
Maximum Lateness
Average Tardiness
Maximum Tardiness
Number of tardy jobs
![Page 11: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/11.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 11
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
![Page 12: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/12.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 12
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
![Page 13: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/13.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 13
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
![Page 14: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/14.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 14
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.
![Page 15: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/15.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 15
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
![Page 16: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/16.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 16
Some further definitions
Jobs and ready times fixed = Static
Parameters known and fixed = Deterministic
Random arrival of jobs = Dynamic
Uncertain processing times = stochastic
![Page 17: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/17.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 17
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:
![Page 18: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/18.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 18
Optimality (continued)
Optimal
all possible
feasible
semi active
Active
non - delay
![Page 19: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/19.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 19
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
![Page 20: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/20.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 20
Schedule Generation
As a start, we will define a routine that will generate an active schedule
A semiactive schedule is one that starts every job as soon as it can, while obeying the technological and scheduling sequences. Also, the set of all semiactive schedules for a problem contains the optimal schedule
Fortunately, the set of active schedules also contains the optimum and is a smaller set.
We can forget about generating semiactive schedules
![Page 21: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/21.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 21
Active scheduling
For a given problem there will be many active schedules
The routine we will use generates only one and we will have to make frequent choices. Were we to follow each of these decision paths, we would generate all the active schedules and find the optimum
However, our purpose here is to make those choices as intelligently as possible, even though it is difficult to foresee their eventual consequence
An active schedule is one in which no operation could be started earlier without delaying another operation or violating the technological constraints
![Page 22: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/22.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 22
Definitions
First we will define some terminology useful for our routine:
Class of problems - n/m/G/B with no restrictions
Stage - step in the routine that places an operation into the schedule - there are therefore nm stages
t - counter for stages
Pt - partial schedule at stage t
Schedulable operation - an operation with all its predecessors in Pt
St - set of schedulable operations at stage t
![Page 23: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/23.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 23
Definitions (continued)
sigmak - the earliest time an operation ok in St could be started
phik - the earliest time that ok in St could be finished
phik = sigmak + pk
![Page 24: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/24.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 24
Routine by Giffler and Thompson1. t = 1, S1 is the set of first operations in all jobs
2. Find min{phik in St} and designate it phi*
Designate M on which phi* occurs as M* (could be arbitrary)
3. Choose oj in St such that it satisfies these conditions:
a. It uses M*
b. sigmaj < phi*
4. a. Add oj to Pt, which now becomes Pt+1
b. Delete oj from St which now becomes St+1
c. Add the operation that follows oj in the same job to St+1
d. Increment t by 1
![Page 25: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/25.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 25
Routine by Giffler and Thompson (continued)
5. If there are operations left to schedule, go to step 2, else stop
Note well that at step 3b. sigmaj < phi*, we will often have several choices. We always have at least one, namely, phi*
These choices are an extensive topic that we will cover later
Follow the example I have taken from French
Generating these schedules is tedious work, so leave yourselves some extra time for that homework.
![Page 26: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/26.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 26
Non-delay schedules
Non-delay schedules are a smaller set than the active schedules and therefore are a tempting set to explore
Unfortunately, they do not always contain the optimum
We will not let that deter us, because non-delay schedules have been found to be usually very good, if not optimal
A non-delay schedule is one where every operation is started as soon as it can be
![Page 27: Session 10 University of Southern California ISE514 September 24, 2015 Geza P. Bottlik Page 1 Outline Questions? Comments? Quiz Introduction to scheduling](https://reader035.vdocuments.net/reader035/viewer/2022062519/5697c00e1a28abf838cc9d8e/html5/thumbnails/27.jpg)
Session 10University of Southern California
ISE514 September 24, 2015
Geza P. Bottlik Page 27
Non-delay schedules (continued)
We change two steps in the procedure for active schedules to obtain a non-delay procedure:
Step 2. instead of phi, we select sigma
Find min{sigmak in St} and designate it sigma*
Designate M on which sigma* occurs as M* (could be arbitrary)
Step 3 b. sigmaj = sigma*