• Tidak ada hasil yang ditemukan

Minimizing Total Completion Time with Deadlines) Step 1

Dalam dokumen Scheduling (Halaman 93-96)

Advanced Single Machine Models (Deterministic)

Algorithm 4.2.2 Minimizing Total Completion Time with Deadlines) Step 1

processed one after another; but, they may be done in any order. The decision- maker now must find among all the schedules that minimize the total completion time the one that minimizesLmax. So, in an optimal schedule a set of jobs with identical processing times has to be sequenced according to the EDD rule. The decision-maker has to do so for each set of jobs with identical processing times.

This rule may be referred to as SPT/EDD, since the jobs are first scheduled according to SPT and ties are broken according to EDD (see Exercise 4.16 for a generalization of this rule).

Consider now the same two objectives with reversed priorities, that is, 1||

L(1)max,

Cj(2). In Chapter 3 it was shown that the EDD rule minimizesLmax. Applying the EDD rule yields also the value of the minimumLmax. Assume that the value of this minimumLmaxisz. The original problemcan be transformed into another problemthat is equivalent. Create a new set of due dates ¯dj = dj+z. These new due dates are now deadlines. The problemis to find a schedule that minimizes

Cjsubject to the constraint that every job must be completed by its deadline, i.e., the maximum lateness with respect to the new due dates has to be zero or, equivalently, all the jobs have to be completed on time.

The algorithmfor finding the optimal schedule is based on the following result.

Lemma 4.2.1. For the single machine problem with n jobs subject to the constraint that all due dates have to be met, there exists a schedule that minimizes

Cj in which job k is scheduled last, if and only if (i)d¯k n

j=1pj,

(ii) pk≥p, for all ,such that d¯n j=1pj.

Proof. By contradiction. Suppose that jobkis not scheduled last. There is a set of jobs that is scheduled after jobkand job,is the one scheduled last. Condition (i) m ust hold for job , otherwise job , would not meet its due date. Assume that condition (ii) does not hold and thatp < pk. Performa (nonadjacent) pairwise interchange between jobsk and,. Clearly, the sumof the completion times of jobskand,decreases and the sum of the completion times of all jobs scheduled in between jobsk and, goes down as well. So the original schedule that positioned job,last could not have minimized

Cj.

In the next algorithmJcdenotes the set of jobs that remain to be scheduled.

Algorithm 4.2.2 (Minimizing Total Completion Time with Deadlines)

80 4 Advanced Single Machine Models (Deterministic) Step 3.

Decreasek by 1.

Decreaseτ bypk. Delete jobk from Jc. Step 4.

Ifk≥1 go to Step 2, otherwise STOP. ||

This algorithm, similar to the algorithms in Sections 3.2 and 3.6, is a back- ward algorithm. The following example illustrates the use of this algorithm.

Example 4.2.3 (Minimizing the Total Completion Time with Deadlines)

Consider the following instance with 5 jobs.

jobs 1 2 3 4 5

pj 4 6 2 4 2

d¯j 10 12 14 18 18

Starting out, τ = 18. Two jobs have a deadline larger than or equal to τ, namely jobs 4 and 5. Job 4 has the longer processing time and should therefore go last. For the second iteration the value of τ is reduced to 14.

There are two jobs that have a deadline greater than or equal to 14, namely 3 and 5. So either job can occupy the second last position. For the third iteration the value ofτ is reduced further down to 12. Again, there are two jobs that have a deadline greater than or equal to 12; either jobs 2 and 3 or jobs 2 and 5. Clearly, job 2 (with a processing time of 6) should go in the third position. Proceeding in this manner yields two optimal schedules, namely schedules 5,1,2,3,4 and 3,1,2,5,4. ||

It can be shown that even when preemptions are allowed, the optimal sched- ules are nonpreemptive.

A fairly large number of problems of the type 1 | β | γ1(1), γ2(2) have been studied in the literature. Very few can be solved in polynomial time. However, problems of the type 1 |

wjCj(1), γ2(2) tend to be easy (see Exercises 4.16 and 4.17).

4.3Multiple Objectives: A Parametric Analysis

Suppose there are two objectivesγ1andγ2. If the overall objective isθ1γ1+θ2γ2, whereθ1andθ2are the weights of the two objectives, then a scheduling problem can be denoted by 1| β 1γ1+θ2γ2. Since multiplying both weights by the

Cj

Lmax(EDD) Lmax(SPT/EDD) Lmax Fig. 4.3Trade-offs between total completion time and maximum

lateness

same constant does not change the problem, it is in what follows assumed that the weights add up to 1, i.e., θ1+θ2 = 1. The remaining part of this section focuses on a specific class of schedules.

Definition 4.3.1 (Pareto-Optimal Schedule). A schedule is called Pareto-optimal if it is not possible to decrease the value of one objective without increasing the value of the other.

All Pareto-optimal solutions can be represented by a set of points in the (γ1, γ2) plane. This set of points illustrates the trade-offs between the two ob- jectives. Consider the two objectives analyzed in the previous section, i.e.,

Cj

andLmax. The two cases considered in the previous section are the two extreme points of the trade-off curve. Ifθ10 andθ21, then

1|β|θ1γ1+θ2γ2 1 2(1), γ1(2). Ifθ20 andθ11, then

1|β|θ1γ1+θ2γ2 1 1(1), γ2(2).

So the two extreme points of the trade-off curve in Figure 4.3 correspond to the problems discussed in the previous section. At one of the extreme points the total completion time is minimized by the SPT rule and ties are broken according to EDD; the Lmax of this schedule can be computed easily and is denoted byLmax(SP T /EDD). At the other extreme point the schedule is gen- erated according to a more complicated backward procedure. TheLmaxis equal toLmax(EDD) and the total completion time of this schedule can be computed also. Clearly,

Lmax(EDD)≤Lmax(SP T /EDD).

The algorithmthat generates all Pareto-optimal solutions in the trade-off curve contains two loops. One series of steps in the algorithm(the inner loop) is an adaptation of Algorithm4.2.2. These steps determine, in addition to the

82 4 Advanced Single Machine Models (Deterministic) optimal schedule with a maximum allowable Lmax, also the minimum incre- mentδin theLmaxthat would allow for a decrease in the minimum

Cj. The second (outer) loop of the algorithmcontains the structure that generates all the Pareto optimal points. The outer loop calls the inner loop at each Pareto- optimal point to generate a schedule at that point and also to determine how to move to the next efficient point. The algorithm starts out with the EDD schedule that generates the first Pareto-optimal point in the upper left part of the trade-off curve. It determines the minimum increment in theLmax needed to achieve a reduction in

Cj. Given this new value ofLmax, it uses the algo- rithm in the previous section to determine the schedule that minimizes

Cj, and proceeds to determine the next increment. This goes on until the algorithm reachesLmax(SP T /EDD).

Algorithm 4.3.2 (Determining Trade-Offs between Total Completion

Dalam dokumen Scheduling (Halaman 93-96)