• Tidak ada hasil yang ditemukan

Heuristic Methods for the Single-machine Problem

4.9 Summary

task pane reporting that Solver cannot improve the current solution. If the Con- vergence condition prevails, the message in the task pane reports that Solver has converged.

In general, the time limits can be adjusted according to the user’s patience, but we have found that runs of roughly 15–30 seconds produce good results for sequencing problems up to 20 jobs. In fact, optimal or near-optimal solutions are usually found in far less time. In our five-job example, the Evolutionary Solver converges rapidly to a total tardiness value of 7, obtained by the sequence 3-5-2-1-4. For the set of 20-job problems in Table 4.8, the Evolutionary Solver (running with a 30-second time limit) produced optimal solutions in 10 out of the 12 problems, with an average ratio of 1.00008 and a maximum ratio of 1.0006. These results do not take advantage of the fact that the user can always rerun the Evolutionary Solver starting with the best solution found in the pre- vious run. The user can also repeat the run after enlarging the population size or increasing the mutation rate if a run terminates with convergence or lack of improvement. Because the Evolutionary Solver contains random elements, it is usually desirable to make several runs under the same parametric settings to see whether improvements can be made.

many different types of problems, and their tactical choices can be refined for the situation at hand.

The neighborhood search procedure embodies a simple but effective concept for solving sequencing problems. Its primary tactical options include the initi- alizing phase (to obtain the first seed), the choice of a mechanism for generating neighborhoods, and a rule for determining the new seed. With a certain amount of“fine-tuning”for these options, neighborhood search procedures can be rea- sonably effective at finding near-optimal solutions, as our brief experiments with theTw-problem suggest. In addition, the neighborhood search approach is flexible and can be adapted to a variety of problem structures.

The neighborhood search procedure also provides a framework for more sophisticated search algorithms – such as tabu search, simulated annealing, and GAs–that overcome the local optimality trap. These other heuristic pro- cedures have their own tactical options, and much remains to be learned about how those options should be chosen.

In general, implementing neighborhood search procedures requires special- ized code. However, the Evolutionary Solver is a more recent innovation that provides an off-the-shelf implementation of a GA. That is, without having to write specialized code, we can invoke a sophisticated heuristic procedure that happens to be especially well suited to the problem of finding the best sequence.

As a result, it provides users with an accessible and practical tool for finding solutions to the single-machine sequencing problem.

We draw attention to the options in each of these techniques for two reasons.

First, in the gap between the concept of a solution methodology and its imple- mentation, many important details need to be specified, even for the basic sin- gle-machine problem. Moreover, these details can influence performance in a significant way. Second, the treatment of more complicated models often includes a suggestion that a particular optimization technique or a particular heuristic strategy is suitable for a given scheduling problem. On these occasions, we should be sensitive to the fact that implementation itself may involve a host of tactical questions, even after the general methodology is selected, and resol- ving those questions is a computational art.

Various combinations of procedures sometimes work effectively. For exam- ple, when we studied the insertion procedure, we assumed the jobs were ordered arbitrarily, but they might as well have been ordered by a sorting or dispatching heuristic, such as MDD. The result is a combined heuristic that usually works better than the insertion heuristic alone. The idea of run- ning several heuristics and selecting the best outcome is also used frequently and becomes especially attractive in a parallel-processor computing environment.

Now, armed with a variety of both heuristic and optimizing capabilities, we can proceed to more complex problems in sequencing and scheduling.

4.9 Summary 97

Table 4.8 Twelve test problems for theTw-problem.

pi 90 91 92 94 95 95 96 97 98 99

99 99 100 101 102 103 104 104 104 105

di 657 754 940 289 204 941 686 509 621 103

356 462 909 790 290 26 7 540 680 0

wi 8 13 15 8 5 7 12 15 8 8

11 5 14 13 15 6 7 14 12 13

90 94 94 94 96 97 97 98 99 100

101 102 102 103 103 104 104 105 106 107

107 195 673 921 0 298 430 500 697 256

513 478 644 0 0 267 622 859 60 271

7 11 15 14 15 9 12 15 10 14

8 12 12 6 14 8 12 13 10 11

89 91 93 94 94 95 95 96 97 97

97 98 98 99 99 100 100 101 101 112

40 171 9 368 464 68 441 867 0 521

978 639 740 14 976 730 959 811 908 20

9 9 7 6 10 6 10 13 8 5

14 6 8 15 14 6 10 10 5 8

87 90 92 93 98 98 98 98 99 99

99 100 100 101 101 102 102 103 106 113

969 1041 363 258 415 494 1340 1366 242 986

1139 215 736 270 714 593 1350 619 1263 976

10 13 6 6 6 12 13 6 5 5

10 12 12 6 9 7 14 12 5 12

93 96 98 98 99 101 101 101 102 102

102 104 104 104 105 105 106 107 109 109

1365 1076 1269 1324 1334 387 496 1100 279 351

755 376 1068 1349 444 1380 457 380 871 1138

13 5 5 12 10 6 8 12 10 8

15 8 6 8 11 10 14 11 9 10

86 93 93 94 96 97 98 99 100 100

101 101 102 102 103 103 104 104 110 113

544 1193 1304 940 1207 407 721 318 220 873

223 889 236 1185 465 1392 691 932 364 774

14 11 8 6 12 14 12 13 13 15

4 Heuristic Methods for the Single-machine Problem 98

Table 4.8 (Continued)

7 12 14 10 10 5 8 11 10 8

55 68 70 73 77 78 85 86 89 89

92 93 94 94 98 108 126 138 143 170

109 169 1039 1158 1107 0 767 993 643 667

75 612 780 816 721 555 1166 529 0 1237

10 9 7 6 13 9 12 15 14 10

6 8 12 13 12 5 13 8 8 6

51 71 71 76 81 81 81 90 94 98

107 107 110 112 115 116 117 119 142 148

0 0 365 646 516 873 932 326 87 0

254 613 783 0 0 1169 326 0 382 1150

15 11 7 11 9 10 14 6 10 8

6 10 9 6 14 14 9 11 9 13

74 74 82 85 86 96 99 103 108 110

112 115 119 123 124 126 127 129 139 142

290 595 415 0 0 555 894 1183 80 362

229 0 232 0 231 864 785 0 0 1001

7 5 10 14 11 8 13 6 9 13

12 6 5 9 13 10 9 5 10 11

60 71 71 76 81 82 93 104 108 108

108 109 113 115 116 118 118 120 122 145

404 394 534 308 778 917 482 472 702 803

1142 1115 811 1191 672 1139 1329 710 534 591

7 13 15 11 15 7 13 10 15 8

5 7 15 7 5 5 11 8 12 13

53 58 69 75 75 83 89 91 93 97

97 99 105 114 117 123 123 133 137 138

508 740 663 1097 1194 764 663 711 831 543

815 511 1032 424 786 816 823 489 587 521

9 7 8 12 9 7 14 9 15 14

10 15 14 10 14 14 8 7 5 8

68 79 80 86 89 94 96 97 100 105

106 109 109 112 118 119 120 124 127 135

(Continued) 4.9 Summary 99

Exercises

4.1 Solve the following 10-jobT-problem using heuristic procedures.

Jobj 1 2 3 4 5 6 7 8 9 10

pj 32 26 7 55 98 80 41 23 24 100

dj 162 168 153 234 230 184 212 172 156 164

a) Find a solution using the best dispatching rule among SPT, EDD, and MDD.

b) Find a solution using the greedy heuristic procedure.

c) Find a solution using the insertion procedure.

d) Find a solution using a neighborhood search procedure (adjacent pair- wise interchanges), initialized by a sequence that takes the jobs in EDD order.

e) Find a solution using a neighborhood search procedure (last-insertion neighborhoods), initialized by a sequence that takes the jobs in EDD order.

4.2 Computer-based approach to Problem 4.1. Solve the following 10-jobT- problem using heuristic procedures.

Jobj 1 2 3 4 5 6 7 8 9 10

pj 32 26 7 55 98 80 41 23 24 100

dj 162 168 153 234 230 184 212 172 156 164

a) Find a solution using a neighborhood search procedure (adjacent pair- wise interchanges), initialized by a sequence that takes the jobs in EDD order.

Table 4.8 (Continued)

437 521 678 841 746 520 610 1112 772 566

928 472 910 499 498 1084 617 1153 1120 974

7 5 13 7 6 7 12 12 12 8

8 8 12 9 15 6 12 5 14 10

4 Heuristic Methods for the Single-machine Problem 100

b) Find a solution using a neighborhood search procedure (all-insertion neighborhoods), initialized by a sequence that takes the jobs in EDD order.

c) Find a solution using a neighborhood search procedure (all pairwise interchanges), initialized by a sequence that takes the jobs in EDD order.

d) Find a solution using a tabu search procedure, initialized by a sequence that takes the jobs in EDD order.

e) Find a solution using a simulated annealing procedure, initialized by a sequence that takes the jobs in EDD order.

f) Find a solution using random sampling, initialized by a sequence that takes the jobs in EDD order and terminated so that the computational effort is roughly equal to the average computational effort in part (c).

4.3 Software-based approach to Problem 4.1. Solve the following 10-job T-problem using the Evolutionary Solver.

Jobj 1 2 3 4 5 6 7 8 9 10

pj 32 26 7 55 98 80 41 23 24 100

dj 162 168 153 234 230 184 212 172 156 164

4.4 Solve the following 10-jobUw-problem using heuristic procedures.

Jobj 1 2 3 4 5 6 7 8 9 10

pj 58 49 90 38 44 42 68 61 10 4

dj 88 175 197 115 109 152 128 135 155 105

wj 3 7 9 4 5 6 7 1 3 8

a) Find a solution using the best dispatching rule among SWPT, EDD, and WMDD.

b) Find a solution using the greedy heuristic procedure.

c) Find a solution using the insertion procedure.

d) Find a solution using a neighborhood search procedure (adjacent pair- wise interchanges), initialized by a sequence that takes the jobs in EDD order.

4.5 Software-based approach to Problem 4.4. Solve the following 10-jobUw- problem using the Evolutionary Solver.

Exercises 101

Jobj 1 2 3 4 5 6 7 8 9 10

pj 58 49 90 38 44 42 68 61 10 4

dj 88 175 197 115 109 152 128 135 155 105

wj 3 7 9 4 5 6 7 1 3 8

4.6 Solve the following 10-jobTw-problem using heuristic procedures.

Jobj 1 2 3 4 5 6 7 8 9 10

pj 58 49 90 38 44 42 68 61 10 4

dj 88 175 197 115 109 152 128 135 155 105

wj 3 7 9 4 5 6 7 1 3 8

a) Find a solution using the best dispatching rule among SWPT, EDD, and WMDD.

b) Find a solution using the greedy heuristic procedure.

c) Find a solution using the insertion procedure.

d) Find a solution using a neighborhood search procedure (adjacent pair- wise interchanges), initialized by a sequence that takes the jobs in EDD order.

4.7 Software-based approach to Problem 4.4. Solve the following 10-jobTw- problem using the Evolutionary Solver.

Jobj 1 2 3 4 5 6 7 8 9 10

pj 58 49 90 38 44 42 68 61 10 4

dj 88 175 197 115 109 152 128 135 155 105

wj 3 7 9 4 5 6 7 1 3 8

4.8 Suppose that an equally likely mechanism is used for generating a ran- dom sample of sequences when there are eight jobs. How many sequences must be evaluated in order to yield a probability of 1/2 that an optimum will be found in the sample (assuming that a unique opti- mum exists)? How many sequences must be evaluated in complete enumeration?

4 Heuristic Methods for the Single-machine Problem 102

Bibliography

Baker, K.R. (2011). Solving sequencing problems in spreadsheets.International Journal of Planning and Scheduling1: 3–18.

Baker, K.R. and Bertrand, J.W.M. (1982). A dynamic priority rule for scheduling against due-dates.Journal of Operations Management3: 37–42.

Glover, F. (1989). Tabu search: Part I.ORSA Journal on Computing1: 190–203.

Kanet, J.J. and Li, X. (2004). A weighted modified due date rule for sequencing to minimize weighted tardiness.Journal of Scheduling7: 261–276.

Kirkpatrick, S., Gelatt, C.D., and Vecchi, M.P. (1983). Optimization by simulated annealing.Science220: 671–680.

Morton, T.E. and Pentico, D.W. (1993).Heuristic Scheduling Systems. New York: Wiley.

Potts, C.N. and Van Wassenhove, L.N. (1991). Single machine tardiness sequencing heuristics.IIE Transactions23: 346–354.

Rachamadugu, R.M.V. (1987). A note on the weighted tardiness problem.

Operations Research35: 450–452.

Rinnooy Kan, A.H.G., Lenstra, J.K., and Lageweg, B.J. (1975). Minimizing total costs in one machine scheduling.Operations Research23: 908–927.

Van Laarhoven, P.J.M. and Aarts, E.H.L. (1987).Simulated Annealing: Theory and Applications. Dordrecht: Reidel.

Bibliography 103

5