SINGLE MACHINE SEQUENCING 2011 2012 Fall semestre
INTRODUCTION The pure sequencing problem is a specialized scheduling problem in which an ordering of the jobs completely determines a schedule. Moreover, the simplest pure sequencing problem is one in which there is a single resource, or machine, and all processing times are deterministic. 2
The single-machine problem illustrates a variety of scheduling topics in a tractable model. It provides a context in which to investigate many different performance measures and several solution techniques. It is therefore a building block in the development of a comprehensive understanding of scheduling concepts. 3
Single Machine Conditions In addition to the limitation to a single machine, the basic problem is characterized by these conditions: C1. There are n single-operation jobs simultaneously available for processing (at time zero). C2. Machines can process at most one job at a time. C3. Setup times for the jobs are independent of job sequence and are included in processing times. C4. Job descriptors are deterministic and known in advance. C5. Machines are continuously available (no breakdowns occur). C6. Machines are never kept idle while work is waiting. C7. Once an operation begins, it proceeds without interruption. 4
Under these conditions, there is a one-to-one correspondence between a sequence of the n jobs and a permutation of the job indices 1, 2,..., n. The total number of distinct solutions to the basic singlemachine problem is therefore n!, which is the number of different sequences of n elements. Whenever a schedule can be completely characterized by a permutation of integers, it is called a permutation schedule. In describing permutation schedules, it is helpful to use brackets to indicate position in sequence. Thus [5] = 2 means that the fifth job in sequence is job 2. Similarly, d[1] refers to the due date of the first job in sequence. 5
Prelimineries Information that is known in advance serves as input to the scheduling process. Three basic pieces of information that help to describe jobs in the single-machine case are: Processing time (p j ): The amount of processing required by job j Release date (r j ): The time at which job j is available for processing Due date (d j ): The time at which the processing of job j is due to be completed 6
Information that is generated as a result of scheduling decisions represents output from the scheduling function. Completion time (Cj) The time at which the processing of job j is finished Quantitative measures for evaluating schedules are usually functions of job completion times. 7
Two important quantities are: Flowtime (F j ): The time job j spends in the system: F j = C j r j Lateness (L j): The amount of time by which the completion time of job j exceeds its due date: L j = C j d j 8
These two quantities reflect two kinds of service. Flowtime measures the response of the system to individual demands for service and represents the interval a job waits between its arrival and its departure. (This interval is sometimes called the turnaround time.) Lateness measures the conformity of the schedule to a given due date and takes on negative values whenever a job is completed early. Negative lateness represents earlier service than requested; positive lateness represents later service than requested. In many situations, distinct penalties are associated with positive lateness, but no benefits are associated with negative lateness. 9
Therefore, it is often helpful to work with a quantity that measures only positive lateness: Tardiness (T j ): The lateness of job j if it fails to meet its due date, or zero otherwise T j = max{0, L j } 10
Performance Measures Schedules are generally evaluated by aggregate quantities that involve information about all jobs, resulting in one-dimensional performance measures. Measures of schedule performance are usually functions of the set of completion times in a schedule. 11
12
Under our basic assumptions, Cmax = Fmax = p j, This quantity is also known as the makespan. With this notation, it is convenient to refer to the minimization of total flowtime as the F-problem, and similarly for the T - problem, the Cmax-problem, and so on. 13
Total flowtime, for example, is simply the sum of each of the job flowtimes. In this type of function, each job makes a direct contribution to the performance measure, because each individual flowtime is part of the sum. Instead of total flowtime, we could just as easily take mean flowtime as a performance measure. The mean value is simply the total value divided by the number of jobs, or F/n. Similarly, total tardiness could be scaled by 1/n to yield mean tardiness, and U could be scaled to yield the proportion of jobs tardy. 14
Each of these measures is a function of the set of job completion times, so that their general form is Z = f (C1,C2,...,Cn) Furthermore, these quantities belong to an important class of performance measures called regular measures. 15
Regular Performance Measure A performance measure Z is regular if (a) the scheduling objective is to minimize Z, and (b) Z can increase only if at least one of the completion times in the schedule increases. 16
More formally, suppose that Z = f (C 1,C 2,...,C n ) is the value of the measure that characterizes schedule S and that Z = f (C 1,C 2,...,C n ) represents the value of the same measure under some different schedule S. Then Z is regular as long as the following condition holds: Z > Z implies that C j > Cj for some job j 17
Dominant Sets The definition is significant because it is usually desirable to restrict attention to a limited set of schedules called a dominant set. To verify that a set D is a dominant set of schedules for regular measures of performance, we can use the following reasoning. 1. Consider an arbitrary schedule S (which contains completion times C j ) that is excluded from D. 2. Show that there exists a schedule S in D, in which C j C j for all j. 3. Therefore Z Z for any regular measure, and so S is at least as good as S. 4. Hence, in searching for an optimal schedule, it is sufficient to consider only schedules in D. 18
Theorem 2.1 In the basic single-machine problem with a regular performance measure, schedules without inserted idle time constitute a dominant set. 19
Theorem 2.2 In the basic single-machine problem with a regular performance measure, schedules without preemption constitute a dominant set. 20
PROBLEMS WITHOUT DUE DATES: ELEMENTARY RESULTS Flowtime and Inventory Sometimes, the costs associated with scheduling decisions involve service to customers, as reflected by their time spent in the system, and the scheduling objective is rapid turnaround. In other situations, the costs involve investment in system resources, as reflected by the behavior of inprocess inventories, and the scheduling objective is to maintain low inventory levels. 21
The time spent by a job in the system is its flowtime, and the rapid turnaround objective can be interpreted as minimizing total flowtime. The low inventory objective can be interpreted as minimizing the average number of jobs in the system. 22
Let J (t ) denote the number of jobs in the system at time t, and let J be the time average of the J (t ) function. 23
24
25
Since F max is a given constant, J is directly proportional to F. As a result, the job sequence that minimizes F (total flowtime) simultaneously minimizes J (average inprocess inventory). Whether the vantage point is one of optimizing customer service or minimizing in-process inventory levels, the problem is the same: find the sequence that minimizes F. 26
Minimizing Total Flowtime Consider the J (t ) graph and the problem of minimizing total flowtime, F. An equivalent problem is that of minimizing the area under the J (t ) function. The selection of a sequence can be interpreted as the construction of a path on the J (t ) graph from the point (0, n) to the point (F max, 0). The path consists of n vectors with given slopes, 1/p j. 27
28
SPT Clearly, the area can be minimized by placing the steepest slope to the left, then the next steepest slope, and so on. This configuration amounts to sequencing the processing times in nondecreasing order. Sequencing the jobs in nondecreasing order of processing times is known as shortest processing time (SPT) sequencing. 29
Theorem 2.3 Total flowtime is minimized by shortest processing time (SPT) sequencing (p [1] p [2]... p [n] ). 30
1. Begin with any non-spt sequence. 2. Find a pair of adjacent jobs i and j, with j following i, such that p i > p j. 3. Interchange jobs i and j in sequence, thereby improving the performance measure. 4. Return to Step 2 iteratively, improving the performance measure each time, until eventually the SPT sequence is constructed. 31
Properties of Theorem 2.3 First, by virtue of the relationship between flowtime and inventory, SPT sequencing minimizes J as well as F. Second, if the waiting time of job j is defined as the time it spends in the system prior to the start of its processing, then SPT minimizes total waiting time. Third, SPT minimizes the maximum waiting time. Finally, SPT also minimizes total completion time. 32