6
A Solvable Cyclic Scheduling Problem with Serial Precedence Structure Author(s): R. S. Garfinkel and W. J. Plotnicki Source: Operations Research, Vol. 28, No. 5 (Sep. - Oct., 1980), pp. 1236-1240 Published by: INFORMS Stable URL: http://www.jstor.org/stable/170159 . Accessed: 08/05/2014 16:08 Your use of the JSTOR archive indicates your acceptance of the Terms & Conditions of Use, available at . http://www.jstor.org/page/info/about/policies/terms.jsp . JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range of content in a trusted digital archive. We use information technology and tools to increase productivity and facilitate new forms of scholarship. For more information about JSTOR, please contact [email protected]. . INFORMS is collaborating with JSTOR to digitize, preserve and extend access to Operations Research. http://www.jstor.org This content downloaded from 169.229.32.137 on Thu, 8 May 2014 16:08:18 PM All use subject to JSTOR Terms and Conditions

A Solvable Cyclic Scheduling Problem with Serial Precedence Structure

Embed Size (px)

Citation preview

A Solvable Cyclic Scheduling Problem with Serial Precedence StructureAuthor(s): R. S. Garfinkel and W. J. PlotnickiSource: Operations Research, Vol. 28, No. 5 (Sep. - Oct., 1980), pp. 1236-1240Published by: INFORMSStable URL: http://www.jstor.org/stable/170159 .

Accessed: 08/05/2014 16:08

Your use of the JSTOR archive indicates your acceptance of the Terms & Conditions of Use, available at .http://www.jstor.org/page/info/about/policies/terms.jsp

.JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range ofcontent in a trusted digital archive. We use information technology and tools to increase productivity and facilitate new formsof scholarship. For more information about JSTOR, please contact [email protected].

.

INFORMS is collaborating with JSTOR to digitize, preserve and extend access to Operations Research.

http://www.jstor.org

This content downloaded from 169.229.32.137 on Thu, 8 May 2014 16:08:18 PMAll use subject to JSTOR Terms and Conditions

1236 Technical Notes

5. D. GROSS AND C. HARRIS, Fundamentals of Queueing Theory, John Wiley & Sons, New York, 1974.

6. D. HEYMAN, "Optimal Operating Policies for M/G/1 Queueing Systems," Opns. Res. 16, 362-382 (1968).

7. P. M. MORSE, Queues, Inventories and Maintenance, John Wiley & Sons, New York, 1958.

8. P. ORKENYI, "Optimal Control of the M/G/1 Queueing System with Remov- able Server-Linear and Non-linear Holding Cost Function," Technical Report No. 65, Stanford 0. R. Dept., August 1976.

9. M. J. SOBEL, "Optimal Average Cost Policy for a Queue with Start-up and Shut-down Costs," Opns. Res. 17, 145-162 (1969).

10. S. STIDHAM, JR., "Regenerative Processes in the Theory of Queues with Applications to the Alternating Priority Queue," Adv. Appi. Prob. 4, 542- 577 (1972).

11. H. ZIMMERMAN AND M. G. SOVEREIGN, Quantitative Models for Production Management, Prentice-Hall, Inc., Englewood Cliffs, N. J., 1974.

A Solvable Cyclic Scheduling Problem with Serial Precedence Structure

R. S. GARFINKEL University of Tennessee, Knoxville, Tennessee

W. J. PLOTNICKI Colorado State University, Fort Collins, Colorado

(Received August 1978; accepted September 1979)

Jobs arrive at a facility in a periodic way, each requiring the same set of tasks with a serial precedence structure. Only a fixed number of tasks can be performed in any period. The number of periods is also given so that jobs not completed in the final period are continued in the first. The problem of minimizing total delay is shown to be solvable analytically. The model is motivated by the application of scheduling courses to quarters to minimize student delay in an academic program.

W E CONSIDER a class of scheduling problems in which tasks are 'VI Tperformed in a cyclic nature. To be precise, if Sk is the set of tasks performed in period k, k E {0, 1, 2, }, then there exists a positive integer n such that

Sk = S[k]( 1

where [k]n is k modulo n.

Operations Research 0030-364X/80/2805-1236 $01.25 Vol. 28, No. 5, September-October 1980 ? 1980 Operations Research Society of America

This content downloaded from 169.229.32.137 on Thu, 8 May 2014 16:08:18 PMAll use subject to JSTOR Terms and Conditions

Garfinkel and Plotnicki 1237

Our research was motivated by the question of how to schedule courses in a university so as to minimize the total delay time of a fixed number of students entering in each quarter. In this situation it is reasonable to assume that there is some period, often one or two years, in which the schedule repeats itself. The model also applies to industrial situations in which jobs arrive on a periodic basis.

We will be interested in problems for which n is fixed and is small enough to make the cyclic property important. That is, certain jobs will not be complete at time n - 1 (the last time period) and will continue being processed at time zero. Clearly as n -m oo this property becomes irrelevant and the class of cyclic scheduling problems is the same as the classical scheduling problems described, for example in [1].

One such cyclic scheduling problem is presented and solved below.

1. PROBLEM STATEMENT

Assume that one job (or equivalently an equal number of jobs) is to arrive at each time period over an infinite horizon. (Extensions to an unequal number of arrivals are addressed in [2].) Each job requires the same 1 tasks which have a series precedence relationship. That is, task i + 1 cannot be performed on a job unless task i was performed in an earlier period. Also, any tasks can be performed on all jobs needing it in the time period in which it is scheduled. The final parameter is a limit, p, on the number of tasks which can be performed in each period, where p < 1. The objective is to minimize the total delay time, where the delay dj of the job arriving in period j is the number of time periods in which none of its tasks is performed. Thus the total delay time is D = Xj=01 dj.

In the course scheduling environment, p represents the number of courses which can be offered in a semester (quarter). Of course the simple curriculum represented by one string of courses is far removed from real university curricula. Results for more complex curricula, based on the results of this paper, will appear in later works.

As an example of the serial cyclic scheduling problem (SCSP) consider a case with n = 8, p = 2 and 1 = 5. If the tasks are denoted by A, B, C, D, E a nonoptimal solution is shown in Figure 1. The delays in this example are given by (do, ..* ,d7) = (0, 5, 4, 3, 2, 1, 0, 1) and D = 16.

2. THE CLOCK PROBLEM

In order to develop some theory for the solution of SCSP (as well as for other cyclic scheduling problems), we consider the following simple problem denoted by the Clock Problem (CP). The CP is a special case of SCSP, with I = p = 1 except for the further restriction that only m tasks can be scheduled in n time periods.

This content downloaded from 169.229.32.137 on Thu, 8 May 2014 16:08:18 PMAll use subject to JSTOR Terms and Conditions

1238 Technical Notes

The CP can be formulated as an integer linear program. Since m tasks are to be scheduled, there must be m gaps (possibly of length zero) between tasks. If dk is the number of periods in the kth gap, the total delay caused by a gap of length dk is tk t. Then the CP can be written as

minimize Ek=i t (2)

s.t. Xk=1 dk = b (3)

dk ' O, integer (4)

AC

AB v BD

AD

CE~~~~~~~~~~C

g ~~BD

Figure 1

where b = n - m. Now since tkj t = dk(dk + 1)/2, (2) can be written as Ek=l dk(dk + 1)/2, which from (3) is 1/2 Zkm.= dk2 + b/2. Let [b/m] denote the integer part of b/m and let Xk = dk- [b/m]. From (3), the CP can be relaxed as

minimize Ekm=1 Xk2 + Q, s.t. Em Xk (5) = b - m [b/m], and xk integer

where Q is the constant 2b[b/m] - m[b/M]2 + b. The model (5) is equivalent to (2)-(4) except for a relaxation of the requirement dk ' 0.

The solution to (5) is obvious and is to let exactly b - m[b/m]x's equal

This content downloaded from 169.229.32.137 on Thu, 8 May 2014 16:08:18 PMAll use subject to JSTOR Terms and Conditions

Garfinkel and Plotnicki 1239

1 and all other x's equal 0. Consequently if Xk = 1, then dk = [b/m] + 1 and if xk = 0, then dk = [b/m], so that this solution satisfies dk ! 0 and is an optimal solution to CP. The property that an optimal solution to CP contains gaps of at most two different lengths will prove to be important.

3. THE SCSP: PRIME AND CONTIGUOUS SCHEDULES

Define a prime schedule to be a schedule such that the removal of any task from the schedule causes an increase in D. Clearly it suffices to consider only prime schedules in searching for a solution to the SCSP.

THEOREM 1. In a prime schedule for the SCSP each task is performed the same number of times.

Proof Let the set of time periods in which the first task is performed be T1, and denote the other periods by T1. We will show that the schedule contains exactly I T1 j sequences, each containing all I tasks, where j denotes cardinality.

Consider task k which is performed in time period ik. Associated with k there must be a unique element of T1, say T1(k), which is the last time period in which a job can start and still have task k performed in period ik. Uniqueness of T1(k) follows immediately from the requirement that the schedule be prime, otherwise some element of T1 would contain an extraneous task.

Similarly, there is a unique earliest finishing time it associated with each element t of T1. A unique sequence of I tasks achieves it, for if more than one sequence did so, then some tasks would be extraneous.

Thus we have shown a unique starting time associated with each task and a unique sequence for each starting time and the theorem is estab- lished.

Given that each task is performed j TI I times, jT IN may be made as large as possible. Clearly an upper bound on j TI j is np/l, and we take TI j to be [np/ll and denote that quantity by c.

A sequence of length I is contiguous if task i performed in period j implies that task i + 1 is performed in period [j + 1]n for i = 1, 2, *- ,

I - 1. We restrict ourselves to contiguous sequences, which aliows a schedule to be completely characterized by the period in which each sequence begins. It will be shown later that this restriction causes no difficulty since there is always an optimal schedule consisting only of contiguous sequences.

4. AN OPTIMAL SOLUTION TO SCSP

In this section we will demonstrate the existence of a feasible contig- uous schedule, the c starting periods of which solve the associated CP.

This content downloaded from 169.229.32.137 on Thu, 8 May 2014 16:08:18 PMAll use subject to JSTOR Terms and Conditions

1240 Technical Notes

Such a solution is clearly optimal to SCSP, since its only delay occurs in waiting for the starting point of each sequence and since a solution to the CP yields a lower bound for this delay.

Before demonstrating this optimal solution we note that it does not suffice to find any optimal solution to the CP and then to begin the c sequences at these points, since the resulting schedule is likely to be infeasible. For instance, if n = 10, 1 = 5, p = 2, then c = 4. An optimal solution to CP is (0, 2, 4, 7), which is infeasible to SCSP, since three jobs are scheduled in period 4.

THEOREM 2. The schedule S = (O, [n/c], [2n/c], *. , [(c - 1)n/c]} is optimal to SCSP.

Proof. The proof is in two parts. We first show that S is feasible and then that it solves the associated CP.

1. (S is feasible.) Note the p < 1 c np (if 1 > np, there is no feasible schedule). It suffices to show for any value of k - 0 that the kth and (k + p)th occurrences of the fiLrst task are separated by a length of time no less than 1. This is easily demonstrated as follows:

[(k + p)n/c] - [kn/c] - [kn/c] + [pn/c] - [kn/c]

= [pn/[np/l]] - [pn/(np/l)] = 1

where the first inequality follows from the general result that [x + y]- [x] + [y].

2. (S solves CP.) An arbitrary gap between consecutive elements of S is given by g = [(i + 1)n/c] - [in/c] - 1 where i E {0, 1, * *,c - 1).

If in/c is integer, then g = [n/c] - 1. If in/c is noninteger, then either [(i + 1)n/c] = [in/c] + [n/c] so that g = [n/c] - 1 or [(i + 1)n/c] =

[in/c] + [n/c] + 1 and g = [n/c]. Since gaps are of only two lengths which differ by one, S solves CP and

the theorem is proved. Note that S yields a delay of seven for the example of Figure 1.

ACKNOWLEDGMENT

The authors are grateful to two anonymous referees for their excellent comments.

REFERENCES

1. K. R. BAKER, Introduction to Sequencing and Scheduling, John Wiley & Sons, New York, 1974.

2. W. J. PLOTNICKI, "Course Scheduling to Minimize Student Delay," doctoral dissertation, University of Tennessee, 1980.

This content downloaded from 169.229.32.137 on Thu, 8 May 2014 16:08:18 PMAll use subject to JSTOR Terms and Conditions