Improving the performance of the ATC dispatch rule by using workload data to determine the lookahead parameter value

Improving the performance of the ATC dispatch rule by using workload data to determine the lookahead parameter value

ARTICLE IN PRESS Int. J. Production Economics 106 (2007) 563–573 www.elsevier.com/locate/ijpe Improving the performance of the ATC dispatch rule by ...

179KB Sizes 0 Downloads 29 Views

ARTICLE IN PRESS

Int. J. Production Economics 106 (2007) 563–573 www.elsevier.com/locate/ijpe

Improving the performance of the ATC dispatch rule by using workload data to determine the lookahead parameter value Jorge M.S. Valente LIACC/NIAAD, Faculdade de Economia, Universidade do Porto, Rua Dr. Roberto Frias, 4200-464 Porto, Portugal Received 26 September 2003; accepted 28 June 2006 Available online 26 September 2006

Abstract The apparent tardiness cost heuristic is one of the best performing dispatch rules for the weighted tardiness scheduling problem. This heuristic uses a lookahead parameter that has previously been set at a fixed value. We propose two different approaches for determining an appropriate value for this parameter. In the first approach, a function is used to map several instance statistics into an adequate value. The second method uses the characteristics of the current workload to determine an appropriate value each time a scheduling decision is to be made. The computational results show that the new procedures outperform the fixed value approach over a wide range of test instances and workload characteristics. The new versions are therefore suited for application in scheduling systems, since they are capable of adjusting themselves to changes in the workload, and provide important savings over the current fixed value implementations. r 2006 Elsevier B.V. All rights reserved. Keywords: Scheduling; Weighted tardiness; Dispatch rules; Instance statistics; Type of load

1. Introduction In this paper, we consider the single machine total weighted tardiness scheduling problem. This problem can be stated as follows. A set of n independent jobs fJ 1 ; J 2 ; . . . ; J n g has to be scheduled without preemptions on a single machine that can handle only one job at a time. The machine and the jobs are assumed to be continuously available from time zero onwards. Job J j ; j ¼ 1; 2; . . . ; n, requires a processing time pj and has a due date d j and a positive weight or penalty wj . For any given schedule, the tardiness of J j can be defined as Tel.: +351 22 557 11 00; fax: +351 22 550 50 50.

E-mail address: [email protected].

T j ¼ maxf0; C j  d j g, where C j is the completion time of J j . The objective is then to find a schedule that Pn minimizes the total weighted tardiness j¼1 wj T j . The total weighted tardiness problem is strongly NP-hard, as shown by Lenstra et al. (1977). Dominance rules that can be used to restrict the search for an optimal solution were presented by Rinnooy Kan et al. (1975) and Rachamadugu (1987). Several exact approaches, based on dynamic programming or branch-and-bound algorithms, have been proposed. These exact algorithms were surveyed and tested by Abdul-Razaq et al. (1990). The best results were provided by the branch-andbound algorithm of Potts and van Wassenhove (1985), which uses a linear lower bound obtained

0925-5273/$ - see front matter r 2006 Elsevier B.V. All rights reserved. doi:10.1016/j.ijpe.2006.06.017

ARTICLE IN PRESS 564

J.M.S. Valente / Int. J. Production Economics 106 (2007) 563–573

from a Lagrangean relaxation of the machine capacity constraints. Improved lagrangean lower bounds were obtained by Hoogeveen and Van de Velde (1995), who reformulated the problem using slack variables. A new dominance rule that can be used to eliminate nodes in an exact procedure, as well as to improve both lower and upper bounding schemes, was presented by Akturk and Yildirim (1998). Several heuristics and dispatch rules have also been proposed. The apparent tardiness cost (ATC) heuristic is one of the several dispatch rules presented in Vepsalainen and Morton (1987), and various computational studies have shown that it is one of the best construction heuristics available for the weighted tardiness problem (see, Vepsalainen and Morton, 1987; Potts and Van Wassenhove, 1991; Chambers et al., 1991; Volgenant and Teerhuis, 1999). A dominance and decomposition heuristic was presented by Chambers et al. (1991), while Holsenback et al. (1999) developed a procedure that uses due date modification. These two heuristics provide results that are closer to the optimum, but require much higher computational times. A recent survey of the state of the art in weighted and unweighted tardiness scheduling can be found in Sen et al. (2003). The effectiveness of the ATC dispatch rule depends on the value of a lookahead parameter which, in previous studies, has been set at a fixed value. In this paper, we propose two different approaches for determining an appropriate value for this lookahead parameter. In the first approach, certain instance statistics are calculated, and a formula is then used to map those statistics into an adequate value for the lookahead parameter. In the second method, the parameter is calculated each time a job is to be scheduled, and the characteristics of the current workload are used to determine an appropriate value. The set of test problems includes instances with much larger sizes than those previously considered. The range of fixed values used for comparison purposes is also much wider than in previous studies. The remainder of the paper is organized as follows. In Section 2, we describe the ATC heuristic. The instance statistics and the experiments performed to determine a function that maps those statistics into a value for the lookahead parameter are described in Section 3. In Section 4, we present three methods that set the value of the lookahead parameter using the characteristics of the current

job load. The computational results are reported in Section 5, and some concluding remarks are given in Section 6. 2. The ATC heuristic The ATC heuristic calculates a priority index for each remaining job every time the machine becomes available, and the job with the highest priority is then selected to be processed next. The priority index of job J j at time t, denoted by I j ðtÞ, is defined as   wj maxðsj ; 0Þ I j ðtÞ ¼ exp  , kp pj where sj ¼ d j  t  pj is the slack of job J j at time t, p is the average of the processing times of the remaining jobs and k is the lookahead parameter. The ATC is a composite dispatch rule that combines the weighted shortest processing time (WSPT) rule and the minimum slack (MS) rule. The WSPT rule is optimal when all jobs are tardy, while the MS rule is optimal when all due dates are sufficiently loose and spread out. When the lookahead parameter k is quite large, the ATC heuristic reduces to the WSPT rule. If k is very small and there are no tardy jobs, the ATC reduces to the MS rule. If k is very small but there are tardy jobs, the ATC heuristic reduces to the WSPT rule applied to the tardy jobs. The effectiveness of the ATC heuristic depends on the value of the lookahead parameter. This parameter is related to the number of competing critical jobs. Previously, k has been set at a fixed value (the only exception is Potts and Van Wassenhove, 1991, where three different values of k are used). These previous studies have usually recommended using a value of k between 0.5 and 2.0 (see, Morton and Rachamadugu, 1982; Holsenback et al., 1999). In the case of extremely slack or congested shops, Vepsalainen and Morton (1987) pointed out that k should be between 1.5 and 4.5. 3. A function for determining the lookahead parameter value In this section, we describe the experiments that were performed to determine a function that maps certain instance statistics into a value for the lookahead parameter. First, we mention the factors or statistics that characterize an instance and may

ARTICLE IN PRESS J.M.S. Valente / Int. J. Production Economics 106 (2007) 563–573

influence the heuristic performance and the most appropriate value of k (see, Chambers et al., 1991). The instance size n and variability of the processing times pj and the penalties wj may influence the most effective value of k. The remaining two factors, which are associated with the due dates, are the tardiness factor T and the range of due  dates R. The factor T can be defined as T ¼ 1  d=C max ,P where d is the average of the due dates and C max ¼ pj is the makespan. If the tardiness factor is high, the average due date will be low, and most jobs will likely be tardy. Conversely, when T is low, most jobs should be completed on time. The factor R, which is a measure of the due dates dispersion around their average, is defined as ðd max  d min Þ=C max , where d max and d min are, respectively, the maximum and the minimum value of the due dates. The experiments performed to determine the function that maps the instance factors into an adequate value for the lookahead parameter will now be described. These experiments were similar to those used by Lee et al. (1997) for the weighted tardiness problem with sequence-dependent setups. A set of problems with 25, 50, 100, 250, 500 and 1000 jobs was randomly generated as follows. For each job J j , an integer processing time pj and an integer penalty wj were generated from one of the two uniform distributions ½1; 10 and ½1; 100, to create low and high variability, respectively. For each job J j , an integer due date d j is generated from the uniform distribution ½C max ð1  T R=2Þ; C max ð1  T þ R=2Þ, where T was set at 0.0, 0.2, 0.4, 0.6, 0.8 and 1.0, and R was set at 0.2, 0.4, 0.6 and 0.8. The values of the factors involved in the instance generation process are summarized in Table 1. For each combination of instance size, processing time and penalty variability, T and R, 50 instances were randomly generated. This set of test problems includes instances with much larger sizes than those that have been used before, since

Table 1 Experimental design Factors

Settings

Number of jobs Processing time and penalty variability Tardiness factor Range of due dates

25, 50, 100, 250, 500, 1000 ½1; 10, ½1; 100 0.0, 0.2, 0.4, 0.6, 0.8, 1.0 0.2, 0.4, 0.6, 0.8

565

previous studies have usually only considered instances with up to 50 jobs. An initial test was first performed to determine, for each factor combination, the range where the best values of k were concentrated. A more detailed test was then performed on these ranges. In this test, we considered values of the lookahead parameter ranging from the lower to the upper limit of the range, with 0:2 increments, and computed the total weighted tardiness for each instance and each value of the lookahead parameter. For each instance, we then identified all values of the parameter k which led to objective function values which were less than or equal to ð1 þ aÞZ, where Z is the minimum of the computed objective function values and a40. The a is introduced so that a certain proportion of the lookahead parameter values that lead to an objective function value near the minimum are considered, instead of only the value (or values) that lead to the best schedule. The value of a was selected so that, for each factor combination, an average of three values of k were selected per instance. The method chosen for determining the value of a automatically compensates for the different variability the objective function value may exhibit for different factor combinations. The average of the lookahead parameter values selected for each instance is taken as the best estimate of k for that instance. The best estimate of the parameter k for a given factor combination is then given by the average of the best estimates for all 50 instances sharing that factor combination. From a thorough analysis of the results of these experiments we could conclude the following. The processing time and penalty variability does not have a significant impact on k. The lookahead parameter was sensitive to the remaining instance factors (instance size, T and R). The value of k was non-decreasing in the instance size, non-increasing in R and symmetric around T ¼ 0:5. These factors, however, are interrelated, since their effect on k depends on the values of the other factors. A simple formula would then fail to capture the variety of effects and interactions among the factors, and we therefore decided to develop separate formulas for different T values. This approach yields a mapping function that is more accurate, even though it is also somewhat more cumbersome. Separate formulas were derived for T values of 0.0, 0.2 and 0.4. Given the previously mentioned symmetry in the lookahead parameter values, any T40:5 is converted to an equivalent

ARTICLE IN PRESS J.M.S. Valente / Int. J. Production Economics 106 (2007) 563–573

566

value of 1  T. Linear interpolation is then used to determine k for other T values. A visual analysis of the best estimates was first conducted to identify an appropriate functional form. We then determined values for the parameters of the chosen function by performing numerical tests and choosing the values that provided the most adequate fit. The formulas are presented in Table 2 and determine the value of k as a function of n and R. When the tardiness factor is equal to 0.2 or 0.4, we present the formulas for selected R values. The lookahead parameter is linear (or piecewise linear) in the R factor for these two T values, but the straight line expression is unwieldy, so we chose to present these simpler expressions. The experiments also showed that the best values of k are rarely below 0.6. Therefore, if the function ever returns a value lower than 0.6, k is set to 0.6 instead. In the following, the version of the ATC heuristic that uses the proposed function to determine the value of k will be denoted as AATC. When the AATC heuristic is applied to a given instance, the factor values for T and R used in the mapping function are calculated using the actual instance data and the expressions T ¼ 1  ðd=C max Þ and R ¼ ðd max  d min Þ=C max . In the experimental tests performed to determine the mapping function, however, each instance provided a k estimate for its corresponding prespecified parameter values (T ¼ 0:0; 0:2; 0:4; 0:6; 0:8; 1:0 and R ¼ 0:2; 0:4; 0:6; 0:8). Also, we remark that negative due dates may be generated when 1  T  R=2o0. These negative values are not truncated to zero, since that could generate a biased sampling. The negative values are kept in the instance data, and are also used in the calculation of the actual T and R values, in order to avoid the significant differences between the actual and prespecified parameter values that could otherwise occur. Preliminary tests showed that, even with an instance size as low as 25, the actual and prespecified values are indeed quite close, and no Table 2 Mapping function T

R

k

0:0 0:2

All 0:2 X0:4

0:6 0:115n0:8 ð0:2220:175ðR  0:4ÞÞ ln ðnÞ

0.4

0:2

0:07n

0:8

0:31n0:35

major differences arise. In the experimental tests conducted to determine the mapping function, it is therefore appropriate to use an instance to estimate k for its prespecified parameter values. 4. Using workload characteristics to determine the lookahead parameter value In this section, we describe three procedures that use the characteristics of the current workload to determine an appropriate value for the lookahead parameter. In the AATC heuristic presented in the previous section, several instance statistics are calculated and mapped by a function into an appropriate value for k, and this value is then used throughout the heuristic procedure. Therefore, a scheduling system that uses the AATC heuristic should perform periodic recalculations of the instance statistics, in order to update the lookahead parameter value when the job load changes significantly. The approach described in this section, on the other hand, calculates the value of k each time a job is to be scheduled. Whenever a scheduling decision must be made, the characteristics of the current workload are used to determine an appropriate value for the lookahead parameter. This approach is therefore particularly suited for application in scheduling systems or online settings. The workload for a weighted tardiness scheduling problem can be classified into one of the three major categories. When most jobs have large slacks, the current workload can be described as early. Conversely, a late load consists mainly of jobs with negative slack, i.e., jobs that are already late. Finally, we say the load is critical when several jobs have relatively low slacks and are at risk of becoming late. When most jobs are quite early or tardy, the problem is easy, and the early and late loads can therefore be jointly described as non-critical. In this case, a low value of k is appropriate. In fact, the experiments conducted for the AATC heuristic, as well as the results of the fixed values we considered, showed that low values of k perform well for instances with mostly early ðT ¼ 0:0Þ or late ðT ¼ 1:0Þ jobs. When the load is critical, several jobs have a low slack and will soon become late, hence the problem is harder. The number of competing critical jobs is higher, and a higher value of k, denoted as kH , is then adequate. The AATC experiments and the fixed value results once again showed that a high value of k leads to improved

ARTICLE IN PRESS J.M.S. Valente / Int. J. Production Economics 106 (2007) 563–573

performance in situations where the number of competing critical jobs is higher (e.g., instances with T ¼ 0:4 or 0:6). The procedures presented in this section share this basic framework, and differ mainly in the criterion used to classify a load as critical. All three versions first calculate a critical interval of slack values ½min _crit; max _crit. A job J j is then said to be critical if sj 2 ½min _crit; max _crit, and noncritical otherwise. Let nU represent the number of unscheduled jobs P and let s ¼ ð j2U sj Þ=nU be the average slack over the set of all currently unscheduled jobs U. In the version denoted by ATC_vk1, the load is considered critical when s 2 ½min _crit; max _crit, and the lookahead parameter is then set at a high value kH . If s lies outside the critical interval, the load is non-critical, and k is set to a low value of 0.6. The ATC_vk2 version instead calculates the proportion of critical jobs prop_crit, where prop_crit is the number of critical jobs divided by the number of unscheduled jobs. If the proportion

567

of critical jobs is below a given threshold parameter thresh, the load is considered as non-critical, and again k is set at 0.6. When prop_critXthresh, the load is critical, and kH is then used. The last version, denoted by ATC_vk3, also calculates the proportion of critical jobs prop_crit. The value of the lookahead parameter is then set at prop_crit  kH þ ð1  prop_critÞ  0:6. In this case, the value of k is a weighted average of kH and 0.6, with the weights given by the proportions of critical and non-critical jobs, respectively. Computational experiments were performed in order to determine appropriate values for the parameters min _crit, max _crit, thresh and kH . For min _crit, we tested the values 0 and p, since preliminary experiments showed that higher values did not lead to better results. The max _crit parameter was set at a multiple of the average processing time p. For this multiple, we tested values ranging from 0.2nU to 0.8nU , as well as kH . The values considered for the parameter thresh varied from 0.2 to 0.8. The value of kH was set as a

Table 3 Relative improvement in the objective function value n

Heur.

Low var

High var

k0.5

k2.0

kbest

EDD

WSPT

k0.5

k2.0

kbest

EDD

WSPT

25

AATC ATC_vk1 ATC_vk2 ATC_vk3

2.92 2.72 2.60 2.75

0.60 0.40 0.27 0.43

0.33 0.13 0.01 0.16

45.57 45.46 45.39 45.47

14.16 13.99 13.88 14.02

2.83 2.64 2.55 2.71

0.69 0.49 0.40 0.56

0.31 0.11 0.01 0.18

51.02 50.92 50.87 50.96

15.15 14.99 14.90 15.05

50

AATC ATC_vk1 ATC_vk2 ATC_vk3

3.26 2.94 3.02 3.03

0.84 0.51 0.58 0.60

0.74 0.41 0.48 0.50

47.84 47.67 47.71 47.72

15.81 15.53 15.59 15.60

3.96 3.70 3.69 3.83

0.64 0.37 0.36 0.50

0.64 0.37 0.36 0.50

52.58 52.45 52.45 52.52

16.34 16.11 16.11 16.22

100

AATC ATC_vk1 ATC_vk2 ATC_vk3

3.39 2.92 3.11 2.98

1.62 1.15 1.34 1.21

1.08 0.60 0.80 0.67

49.16 48.91 49.01 48.94

16.54 16.14 16.30 16.19

4.02 3.52 3.65 3.62

1.72 1.21 1.34 1.32

1.04 0.53 0.66 0.63

53.52 53.28 53.34 53.33

17.24 16.82 16.93 16.91

250

AATC ATC_vk1 ATC_vk2 ATC_vk3

3.14 2.47 2.75 2.49

2.37 1.70 1.98 1.72

1.41 0.74 1.02 0.76

49.61 49.27 49.41 49.28

17.14 16.57 16.81 16.59

4.05 3.36 3.61 3.37

2.89 2.19 2.45 2.20

1.47 0.75 1.02 0.76

54.61 54.28 54.40 54.28

18.28 17.69 17.91 17.70

500

AATC ATC_vk1 ATC_vk2 ATC_vk3

3.15 2.28 2.58 2.26

2.74 1.86 2.17 1.84

1.66 0.77 1.08 0.75

50.09 49.64 49.80 49.63

17.41 16.66 16.93 16.65

3.89 2.98 3.29 2.94

3.32 2.41 2.72 2.37

1.69 0.76 1.07 0.72

54.69 54.27 54.41 54.25

18.36 17.59 17.85 17.55

1000

AATC ATC_vk1 ATC_vk2 ATC_vk3

3.10 2.06 2.34 2.02

2.85 1.81 2.10 1.77

1.89 0.84 1.13 0.80

50.24 49.70 49.85 49.68

17.48 16.59 16.84 16.56

3.94 2.84 3.13 2.76

3.59 2.48 2.77 2.40

2.00 0.87 1.17 0.80

54.96 54.45 54.58 54.41

18.47 17.53 17.78 17.47

ARTICLE IN PRESS 568

J.M.S. Valente / Int. J. Production Economics 106 (2007) 563–573

function of the number of unscheduled jobs. The experiments performed for the AATC heuristic, as well as the results of the fixed values we considered, were first used to determine an appropriate functional form. We then tested several alternative functions for calculating the value of kH . For the ATC_vk1 and ATC_vk2 versions, we also considered three different strategies for calculating the lookahead parameter value for a critical workload. The first strategy consists in using kH whenever the load is classified as critical. The other two strategies use a linearly or exponentially increasing value for k. In the ATC_vk1 heuristic, k is set equal to 0.6 at the critical interval limits, and then increases linearly (exponentially) until it reaches kH when the average slack is equal to the critical interval’s middle point. In the ATC_vk2 version, the lookahead parameter is equal to 0.6 when prop_crit ¼ thresh, and then increases linearly (exponentially) until it becomes equal to kH when all unscheduled jobs are critical (i.e., when prop_crit ¼ 1). These parameters were then set at the values that provided the best performance in the computational tests. For all three versions, min _crit and max _crit were set at 0 and 0:6nU p, respectively. A value of 0.75 was selected for the parameter thresh. For all versions, the value of kH is given by the expression kH ¼ 0:2n0:75 U . Finally, the strategy that sets k ¼ k H whenever the load is critical was chosen for both ATC_vk1 and ATC_vk2 versions. 5. Computational results In this section, we present the results from the computational tests. The set of test problems was generated as described in Section 3. The algorithms were coded in Visual C++ 6.0 and executed on a Pentium IV—1700 MHz personal computer. Several heuristic procedures were used for comparison purposes. The EDD and WSPT heuristics were included in order to illustrate the superiority of the ATC procedure when compared with other simple constructive heuristics. The new versions were also compared with the ATC heuristic with a fixed value of 0.5 (identified as k0.5) and 2.0 (k2.0). These are two of the most frequently used fixed values, and will therefore provide an idea of the improvement that the new versions can achieve over current implementations of the ATC rule. Since some of the test instances are larger than those considered in previous studies, we also

decided to analyze a wider range of fixed k values. The ATC heuristic was then executed with the fixed values 0:5; 1:0; 1:5; . . . ; 20:0. The best fixed values were indeed between 0.5 and 2.0 for instances with up to 50 jobs, but fell outside this range for larger instances. For instances with 100 and 250 jobs, the best fixed values were in the vicinity of 4.0 and 8.0, respectively. For instances with 500 jobs, the best fixed values were close to 15.0, while for 1000 jobs the best results were obtained with a k value near the top of the considered range. We also tried some values of k larger than 20 for the 1000 job instances, but no significant improvements were obtained. The new versions were also compared with the results of the best fixed value (identified as kbest) for each combination of instance size and processing time and penalty variability (var). Throughout this section, and in order to avoid excessively large tables, we will sometimes present results only for some representative cases. Computational times will not be presented, since the increase in computational effort required by the Table 4 Comparison of heuristic results with kbest n

Heur.

Low var

High var

o

¼

4

o

¼

4

25

AATC ATC_vk1 ATC_vk2 ATC_vk3

455 489 504 507

615 403 377 455

130 308 319 238

493 558 579 574

563 344 328 401

144 298 293 225

50

AATC ATC_vk1 ATC_vk2 ATC_vk3

629 641 666 721

407 305 302 314

164 254 232 165

607 569 602 668

355 296 291 304

238 335 307 228

100

AATC ATC_vk1 ATC_vk2 ATC_vk3

729 704 710 747

311 298 298 298

160 198 192 155

730 662 679 751

301 277 277 278

169 261 244 171

250

AATC ATC_vk1 ATC_vk2 ATC_vk3

793 747 745 748

308 300 300 300

99 153 155 152

811 764 749 768

278 274 274 274

111 162 177 158

500

AATC ATC_vk1 ATC_vk2 ATC_vk3

812 734 738 724

301 300 300 300

87 166 162 176

838 738 731 722

278 278 278 278

84 184 191 200

1000

AATC ATC_vk1 ATC_vk2 ATC_vk3

849 762 781 775

300 300 300 300

51 138 119 125

859 741 761 758

300 300 300 300

41 159 139 142

ARTICLE IN PRESS J.M.S. Valente / Int. J. Production Economics 106 (2007) 563–573

new versions is negligible, even for the largest instances. In Table 3, we present the relative improvement in the average objective function value provided by the new versions, calculated as ðcomp  newÞ= comp  100, where comp and new are the average objective function values of the appropriate comparison heuristics and the new versions, respectively. In addition to the objective function values, we also calculated the normalized weighted tardiness. The relative improvement given by the new heuristics is virtually identical for both the objective function and normalized tardiness measures, so we only present results for the objective function values. Table 4 gives the number of instances for which the new versions perform better ðoÞ, equal ð¼Þ or worse ð4Þ than the ATC heuristic with the best fixed value. We also performed a test to determine if the difference between the new versions and the k0.5, k2.0 and kbest implementations of the ATC rule is statistically significant. Given that the heuristics were used on exactly the same problems, a paired-

569

samples test is appropriate. Since not all the hypotheses of the paired-samples t-test were met, the non-parametric Wilcoxon test was selected. The significance values of this test, i.e., the confidence level values above which the equal distribution hypotheses is to be rejected, were always equal to 0.000. From the results presented in these two tables, we can conclude that the new versions outperform all the heuristics used for comparison, since the objective function value is lower and they provide better results for most of the test instances. The results once again show that the ATC dispatch rule is far superior to other simple constructive heuristics, since the improvement over the EDD and WSPT rules is around 50% and 17%, respectively. The new versions provide a significant improvement over the frequently used fixed values of 0.5 and 2.0. The AATC heuristic gives an improvement of about 3–4% over a fixed value of 0.5, while the ATC_vk versions provide a decrease in the average weighted tardiness that usually lies between 2.5% and 3.5%. The improvement provided by the new versions

Table 5 Relative improvement vs kbest for instances with 100 jobs Heur.

T

Low var

High var

R ¼ 0:2

R ¼ 0:4

R ¼ 0:6

R ¼ 0:8

R ¼ 0:2

R ¼ 0:4

R ¼ 0:6

R ¼ 0:8

AATC

0.0 0.2 0.4 0.6 0.8 1.0

– 2.07 6.56 4.49 0.06 0.22

– 81.78 3.11 2.12 1.49 0.43

– 100.00 1.11 0.05 2.13 0.52

– – 53.49 4.42 2.08 0.61

100.00 3.75 10.02 6.23 0.11 0.23

– 64.44 9.07 3.09 1.28 0.39

– 100.00 0.22 0.06 1.85 0.47

– 100.00 41.53 1.39 1.81 0.49

ATC_vk1

0.0 0.2 0.4 0.6 0.8 1.0

– 25.36 7.35 2.13 0.79 0.22

– 86.71 2.71 3.66 0.08 0.42

– 100.00 6.77 3.89 0.54 0.50

– – 49.49 0.12 0.71 0.58

100.00 49.78 3.83 4.23 0.70 0.23

– 65.20 0.09 4.82 0.38 0.37

– 100.00 6.14 3.60 0.08 0.44

– 100.00 38.81 2.01 0.33 0.45

ATC_vk2

0.0 0.2 0.4 0.6 0.8 1.0

– 26.99 8.78 1.86 0.94 0.22

– 85.12 3.49 3.70 0.56 0.42

– 100.00 1.14 3.85 1.34 0.52

– – 52.80 3.60 1.63 0.61

100.00 56.64 6.35 3.36 0.95 0.23

– 62.46 2.24 5.00 0.14 0.39

– 100.00 13.02 3.64 0.80 0.47

– 100.00 32.24 0.14 1.35 0.49

ATC_vk3

0.0 0.2 0.4 0.6 0.8 1.0

– 26.12 8.30 1.72 1.01 0.14

– 86.77 2.38 3.60 0.46 0.28

– 100.00 4.37 4.21 0.93 0.34

– – 59.07 3.97 1.02 0.42

100.00 39.50 4.71 3.65 1.02 0.12

– 63.15 0.13 4.97 0.11 0.22

– 100.00 1.18 5.73 0.43 0.28

– 100.00 46.75 2.50 0.68 0.29

ARTICLE IN PRESS 570

J.M.S. Valente / Int. J. Production Economics 106 (2007) 563–573

over a fixed value of 2.0 is below 1% for instances with 25 or 50 jobs. The relative improvement, however, is higher for larger problems, particularly for instances with more than 100 jobs. For these instances, the improvement given by the AATC heuristic is between 2.5% and 3.5%, while the ATC_vk versions are better by around 2–2.5%. The new versions therefore provide a considerable improvement over current implementations of the ATC heuristic. The proposed versions also outperform the kbest results, even though the relative improvement is smaller in this case. However, this is a rather demanding comparison, since the best fixed value is used for each combination of instance size and variability, instead of a single value for all such combinations. Nevertheless, the new versions still provide better results, particularly for instances with 100 or more jobs. For these instances, the AATC heuristic gives an improvement that ranges from 1% to 2%, while the ATC_vk versions are better by close to 1%. Furthermore, the results in Table 4 show that the new versions provide better results for most of the test instances. The Wilcoxon test values also indicate that the difference between the new versions and kbest (as well as k0.5 and k2.0) is statistically significant. The relative improvement usually increases with the instance size, with the k0.5 results being the only exception. The improvement is also generally higher for the instances with a high variability. The kbest results, however, present an exception, since they do not appear to be noticeably affected by the variability of the processing times and penalties. The AATC provides the best performance among all the new versions. The ATC_vk1 and ATC_vk3 heuristics are quite close, while the ATC_vk2 version usually provides somewhat better results. In Table 5, we present the effect of T and R on the relative improvement in objective function value over the kbest results for instances with 100 jobs. Table 6 gives the number of times the new versions perform better, equal or worse than kbest, for each combination of the tardiness factor and the range of due dates. This table gives results for instances with 100 jobs and low variability. Some of the relative improvement values are somewhat misleading. When To0:5, most jobs will be early, and the average weighted tardiness is low, for both the new versions and kbest. Therefore, the high (positive or negative) relative improvement values that are given for these parameter combina-

Table 6 Comparison of heuristic results with kbest for instances with 100 jobs and low variability Heur

T

R ¼ 0:2 o ¼

R ¼ 0:4 4

o ¼

4

R ¼ 0:6 o ¼

4

R ¼ 0:8 o ¼

4

AATC

0.0 0.2 0.4 0.6 0.8 1.0

0 50 0 10 7 33 42 0 8 47 0 3 20 1 29 50 0 0

0 50 0 50 0 0 23 0 27 30 0 20 47 0 3 50 0 0

0 50 0 2 48 0 34 4 12 35 1 14 50 0 0 50 0 0

0 50 0 0 50 0 50 0 0 39 0 11 50 0 0 50 0 0

ATC_vk1

0.0 0.2 0.4 0.6 0.8 1.0

0 50 0 10 0 40 7 0 43 46 0 4 44 0 6 50 0 0

0 50 0 50 0 0 20 0 30 49 0 1 28 0 22 50 0 0

0 50 0 2 48 0 35 0 15 40 0 10 46 0 4 50 0 0

0 50 0 0 50 0 50 0 0 27 0 23 50 0 0 50 0 0

ATC_vk2

0.0 0 50 0 0.2 7 0 43 0.4 3 0 47 0.6 44 0 6 0.8 42 0 8 1.0 50 0 0

0 50 0 50 0 0 16 0 34 45 0 5 45 0 5 50 0 0

0 50 0 2 48 0 26 0 24 42 0 8 50 0 0 50 0 0

0 50 0 0 50 0 49 0 1 39 0 11 50 0 0 50 0 0

ATC_vk3

0.0 0 50 0 0.2 7 0 43 0.4 5 0 45 0.6 48 0 2 0.8 48 0 2 1.0 50 0 0

0 50 0 50 0 0 20 0 30 48 0 2 43 0 7 50 0 0

0 50 0 2 48 0 31 0 19 47 0 3 49 0 1 50 0 0

0 50 0 50 50 0 49 0 50 0 50 0

0 0 0 1 0 0

tions are deceptive, since they correspond to situations where the variation in the average weighted tardiness values is small when measured in absolute terms. For some parameter combinations, the average weighted tardiness is actually 0 for both the new versions and kbest, thus making the calculation of the relative improvement impossible. A – sign is used to identify those parameter combinations in Table 5. When T40:5, most jobs will be tardy, and the average weighted tardiness is high. A positive relative improvement then represents a significant absolute reduction in the objective function value. The new versions improve on the kbest results for nearly all the parameter combinations with T40:5. The relative improvement is higher when T ¼ 0:6, and decreases as the tardiness factor increases to 1:0. This is to be expected, since when T ¼ 1:0 nearly all jobs are tardy, and the weighted tardiness problem becomes easier. For these instances, there is usually little room for a large relative improvement. Nevertheless, since nearly all jobs are tardy and the weighted tardiness is high, even a modest

ARTICLE IN PRESS J.M.S. Valente / Int. J. Production Economics 106 (2007) 563–573

relative improvement leads to a significant absolute reduction in the total cost. The results in Table 6 also show that the new versions outperform kbest in nearly all situations. We also performed computational tests on instances with T and R values of 0.1, 0.3, 0.5, 0.7 and 0.9. The results for these instances are presented in Tables 7 and 8. The new versions once again clearly outperform the comparison heuristics, and the relative improvement is indeed higher for this second set of instances, particularly for the fixed values of 0.5 and 2.0. In fact, for instances with more than 100 jobs, the proposed heuristics now give an improvement of about 6–7% and 4–6% over the usual k0.5 and k2.0 implementations, respectively. These results confirm the superior performance of the proposed versions. They also validate the linear behavior between T values that is assumed by the mapping function in the AATC procedure. The new versions therefore improve on the current imple-

571

mentations of the ATC dispatch rule over a wide range of test instances and workload characteristics. 6. Conclusion The ATC dispatch rule is one of the best constructive heuristics available for the single machine weighted tardiness scheduling problem, as several studies have shown. The effectiveness of this heuristic depends on the value of a lookahead parameter. In previous studies, this parameter has been set at a fixed value. In this paper, we proposed two different approaches for determining an appropriate value for the lookahead parameter. In the first approach, a function is used to map several instance statistics into an adequate value for the lookahead parameter. In the second method, the characteristics of the current workload are used to determine an appropriate value each time a scheduling decision is to be made. The set of problems used in the

Table 7 Relative improvement in the objective function value (second set of instances) n

Heur.

Low var

High var

k0.5

k2.0

kbest

EDD

WSPT

k0.5

k2.0

kbest

EDD

WSPT

25

AATC ATC_vk1 ATC_vk2 ATC_vk3

4.73 4.55 4.51 4.70

0.81 0.62 0.58 0.78

0.46 0.26 0.22 0.42

48.44 48.34 48.32 48.42

19.21 19.05 19.02 19.18

5.37 5.14 5.08 5.40

0.86 0.62 0.56 0.90

0.25 0.01 0.05 0.29

54.50 54.39 54.36 54.51

19.98 19.78 19.73 20.01

50

AATC ATC_vk1 ATC_vk2 ATC_vk3

5.70 5.19 5.35 5.44

0.91 0.36 0.54 0.62

0.86 0.32 0.50 0.58

51.71 51.45 51.53 51.57

21.20 20.77 20.91 20.98

6.37 6.05 6.00 6.33

0.79 0.46 0.40 0.75

0.79 0.46 0.40 0.75

56.60 56.46 56.43 56.59

22.53 22.27 22.23 22.50

100

AATC ATC_vk1 ATC_vk2 ATC_vk3

5.86 5.23 5.56 5.46

2.19 1.54 1.88 1.77

1.18 0.52 0.86 0.75

53.21 52.90 53.06 53.01

22.44 21.93 22.20 22.11

7.09 6.33 6.57 6.65

2.24 1.44 1.69 1.78

1.17 0.36 0.62 0.71

58.06 57.72 57.83 57.87

24.01 23.39 23.59 23.66

250

AATC ATC_vk1 ATC_vk2 ATC_vk3

6.15 5.26 5.72 5.38

4.21 3.30 3.78 3.43

1.65 0.71 1.20 0.84

54.15 53.71 53.94 53.77

23.49 22.76 23.14 22.86

7.41 6.50 6.90 6.66

4.83 3.90 4.31 4.07

1.67 0.71 1.13 0.88

58.97 58.57 58.75 58.64

24.82 24.09 24.41 24.22

500

AATC ATC_vk1 ATC_vk2 ATC_vk3

6.13 5.03 5.55 5.07

5.08 3.96 4.49 4.00

1.90 0.74 1.29 0.79

54.46 53.92 54.18 53.94

23.73 22.83 23.26 22.87

7.35 6.32 6.76 6.35

5.90 4.86 5.31 4.89

1.87 0.78 1.25 0.82

59.31 58.86 59.05 58.87

25.22 24.39 24.74 24.41

1000

AATC ATC_vk1 ATC_vk2 ATC_vk3

6.14 4.68 5.19 4.70

5.52 4.05 4.57 4.07

2.37 0.86 1.39 0.87

54.64 53.93 54.18 53.94

23.81 22.63 23.05 22.65

7.53 6.04 6.52 6.03

6.73 5.23 5.71 5.22

2.44 0.87 1.37 0.86

59.52 58.86 59.07 58.86

25.36 24.16 24.54 24.15

ARTICLE IN PRESS J.M.S. Valente / Int. J. Production Economics 106 (2007) 563–573

572

Table 8 Comparison of heuristic results with kbest (second set of instances) n

Heur.

Low var

High var

o

¼

4

o

¼

4

25

AATC ATC_vk1 ATC_vk2 ATC_vk3

525 552 589 604

545 361 328 418

180 337 333 228

538 559 592 616

508 305 271 362

204 386 387 272

50

AATC ATC_vk1 ATC_vk2 ATC_vk3

652 669 681 766

391 259 244 260

207 322 325 224

611 590 638 723

372 242 229 242

267 418 383 285

100

AATC ATC_vk1 ATC_vk2 ATC_vk3

720 644 691 772

360 261 260 260

170 345 299 218

718 631 652 783

308 220 219 218

224 399 379 249

250

AATC ATC_vk1 ATC_vk2 ATC_vk3

823 759 765 787

281 269 270 268

146 222 215 195

826 757 740 800

254 218 218 218

170 275 292 232

500

AATC ATC_vk1 ATC_vk2 ATC_vk3

891 754 754 750

274 273 273 273

85 223 223 227

905 787 750 764

201 197 197 197

144 266 303 289

1000

AATC ATC_vk1 ATC_vk2 ATC_vk3

786 751 746 736

312 300 300 300

152 199 204 214

885 802 780 808

222 214 214 214

143 234 256 228

computational tests included instances with much larger sizes than those previously considered, and the range of fixed values used for comparison purposes was also wider than in previous studies. The computational tests indicated that the best fixed values for the larger instances are higher than the ones previously recommended for smaller size problems. The proposed versions of the ATC dispatch rule outperformed all the heuristics used for comparison purposes, over a wide range of test instances and workload characteristics. For instances with 100 or more jobs, the new versions give a decrease in the average weighted tardiness of about 2–7% when compared with the frequently used fixed values of 0.5 and 2.0. Therefore, the new versions provide a considerable improvement over current implementations of the ATC heuristic. The new versions also outperform the results given by the best fixed value for each combination of instance size and processing time and penalty variability. The best performance is provided by the AATC

procedure, which uses a mapping function to calculate the lookahead parameter value. Among the versions that use the type of workload to determine the value of k, the ATC_vk1 and ATC_vk3 heuristics are quite close, while the ATC_vk2 version usually provides somewhat better results. The new versions, and particularly the ATC_vk procedures, are suited for application in scheduling systems or online settings. Indeed, the ATC_vk heuristics use the characteristics of the current workload to determine an appropriate value for the lookahead parameter whenever a scheduling decision must be made. In the AATC version, several instance statistics are calculated and mapped by a function into an appropriate value for k. This value is then used throughout the heuristic procedure. Therefore, a scheduling system that uses the AATC heuristic should perform periodic recalculations of the instance statistics, in order to update the lookahead parameter value when the job load changes significantly. The new versions are then capable of adjusting themselves to changes in the workload, and provide significant savings over the current fixed value implementations. The improved performance of the proposed versions can also be helpful in other settings. Local search algorithms for the weighted tardiness problem typically use the ATC heuristic to provide an initial sequence (some examples are Crauwels et al., 1998; Congram et al., 2002; Avci et al., 2003). Avci et al. (2003) show that the solution quality of their problem space genetic algorithm is in fact quite sensitive to the quality of the base heuristic, so the new versions could indeed be useful in local search algorithms. Similarly, Akturk and Yildirim (1998) showed that a lower bound for the weighted tardiness problem is sensitive to the choice of an initial sequence. Again, the proposed versions can improve the performance of this lower bounding procedure. Acknowledgements The author would like to thank the anonymous referees for several, and quite useful, comments and suggestions that were used to improve this paper.

References Abdul-Razaq, T.S., Potts, C.N., Van Wassenhove, L.N., 1990. A survey of algorithms for the single machine total weighted

ARTICLE IN PRESS J.M.S. Valente / Int. J. Production Economics 106 (2007) 563–573 tardiness scheduling problem. Discrete Applied Mathematics 26, 235–253. Akturk, M.S., Yildirim, M.B., 1998. A new lower bounding scheme for the total weighted tardiness problem. Computers and Operations Research 25, 265–278. Avci, S., Akturk, M.S., Storer, R.H., 2003. A problem space algorithm for single machine weighted tardiness problems. IIE Transactions 35, 479–486. Chambers, R.J., Carraway, R.L., Lowe, T.J., Morin, T.L., 1991. Dominance and decomposition heuristics for single machine scheduling. Operations Research 39, 639–647. Congram, R.K., Potts, C.N., van de Velde, S.L., 2002. An iterated dynasearch algorithm for the single-machine total weighted tardiness scheduling problem. INFORMS Journal on Computing 14, 52–67. Crauwels, H.A.J., Potts, C.N., van Wassenhove, L.N., 1998. Local search heuristics for the single machine total weighted tardiness scheduling problem. INFORMS Journal on Computing 10, 341–350. Holsenback, J.E., Russell, R.M., Markland, R.E., Philipoom, P.R., 1999. An improved heuristic for the single-machine, weighted-tardiness problem. Omega 27, 485–495. Hoogeveen, J.A., Van de Velde, S.L., 1995. Stronger lagrangian bounds by use of slack variables: applications to machine scheduling problems. Mathematical Programming 70, 173–190. Lee, Y.H., Bhaskaran, K., Pinedo, M., 1997. A heuristic to minimize the total weighted tardiness with sequence-dependent setups. IIE Transactions 29, 45–52.

573

Lenstra, J.K., Rinnooy Kan, A.H.G., Brucker, P., 1977. Complexity of machine scheduling problems. Annals of Discrete Mathematics 1, 343–362. Morton, T.E., Rachamadugu, R.M.U., 1982. Myopic heuristics for the single machine weighted tardiness problem. Working Paper 30-82-83, Graduate School of Industrial Administration, Carnegie Mellon University, Pittsburgh. Potts, C.N., van Wassenhove, L.N., 1985. A branch-and-bound algorithm for the total weighted tardiness problem. Operations Research 33, 363–377. Potts, C.N., Van Wassenhove, L.N., 1991. Single machine tardiness sequencing heuristics. IIE Transactions 23, 346–354. Rachamadugu, R.M.V., 1987. A note on the weighted tardiness problem. Operations Research 35, 450–452. Rinnooy Kan, A.H.G., Lageweg, B.J., Lenstra, J.K., 1975. Minimizing total costs in one-machine scheduling. Operations Research 23, 908–927. Sen, T., Sulek, J.M., Dileepan, P., 2003. Static scheduling research to minimize weighted and unweighted tardiness: a state-of-the-art survey. International Journal of Production Economics 83, 1–12. Vepsalainen, A.P.J., Morton, T.E., 1987. Priority rules for job shops with weighted tardiness costs. Management Science 33, 1035–1047. Volgenant, A., Teerhuis, E., 1999. Improved heuristics for the n-job single-machine weighted tardiness problem. Computers and Operations Research 26, 35–44.