On solving the classic job shop makespan problem ... - Semantic Scholar

0 downloads 0 Views 43KB Size Report
The job shop problem is to schedule a set of N jobs on M machines. ..... J. Muth, G. Thompson (Eds.), Industrial Scheduling, (Prentice-Hall), Englewood Cliffs, NJ.
On solving the classic job shop makespan problem by minimizing Lmax Scott R. Schultz Thom J. Hodgson Russell E. King Department of Industrial Engineering North Carolina State University Raleigh, NC 27695-7906 Abstract In this paper, the classic job shop scheduling problem of minimizing makespan, J//Cmax, is studied. A heuristic approach is presented for solving the J//Lmax problem using an iterative deterministic simulation technique combined with simulated annealing. A simple transformation is provided for converting a J//Cmax problem to an equivalent J//Lmax problem. The approach is tested on some well-known job shop benchmark problems and is shown to perform well compared to other approaches. Several new upper bounds are obtained for these benchmark problems.

Keywords job shop: scheduling: makespan: benchmark: simulated annealing

1. Introduction The classic job shop scheduling problem of minimizing makespan, J//Cmax, was first presented by Fischer and Thompson [8] in 1963. Since then, this problem has become a standard topic in scheduling textbooks (e.g. see Baker [3]; Morton and Pentico [12]). Rinnooy Kan [14] proved this problem to be NP-Hard. One classic 10x10 job shop problem formulated by Muth and Thompson in 1963 was not solved until 1989 by Carlier and Pinson [6]. Recently however, heuristics have been very successful in solving many of the early benchmark problems. Several authors [1,2,7,8,11,18,19,22] established additional benchmark problems as the heuristic approaches improved. A listing of 159 of these benchmark problems is located on J. Beasley’s OR-Library website (http://mscmga.ms.ic.ac.uk/info.html). Authors commonly use a subset of these 159 benchmark problems for testing their job shop heuristics. The following is a sample of recent work that uses the benchmark problems. Pezzella and Merelli [13] approach the job shop problem by first obtaining a good initial solution using a shifting bottleneck procedure [1]. They then apply a tabu search method as a process improvement. Pezzalla and Merelli emphasize the importance of obtaining a good initial solution before applying a search heuristic. They test their results on a wide selection of the benchmark problems. Steinhofel, Albrecht and Wong [16] use a simulated annealing approach for the job shop problem. They apply their heuristic on 8 unsolved benchmark problems and identify new upper bounds on 5 of these problems. In a second paper [17] they note an additional new upper bound that is also optimal. Wang and Zheng [21] combine a genetic algorithm with simulated annealing to solve the job shop problem. Their approach is shown to be effective and robust on a small selection of benchmark problems.

2. Problem Description The job shop problem is to schedule a set of N jobs on M machines. Each job i has a process route of machines consisting of Ji operations, and sequence independent process times pi,m for each job i and operation m. In the classic problem, and for the benchmark problems, it is assumed all jobs visit all machines, thus Ji = M. The value Ci is the completion time for the last operation of job i. Constraints of the problem include (1) a machine can only process one job at a time; (2) an operation of a job cannot start until the job’s previous operation is complete; and (3) no pre-emption is allowed. The objective is to sequence the machines such that the maximum completion time is minimized. The sequencing of all machines in the shop is referred to as a multi-permutation sequence. If a feasible schedule exists, then there are

an infinite number of feasible schedules. However, because minimizing makespan is the objective, only semi-active schedules are of interest, i.e., schedules where no operation can be scheduled earlier without violating the problem constraints. Morton and Pentico [12] point out that for problems with a regular objective such as the makespan problem, there is only one semi-active schedule for a given sequence, at least one semi-active schedule is optimal, and there are a finite number of semi-active schedules. Therefore an approach to solving the job shop problem is to define a heuristic that searches the neighborhood of semi-active schedules.

3. Solution Approach In this paper, the job shop makespan problem is first transformed to a J//Lmax problem and is then solved using an efficient and effective heuristic for the J//Lmax problem. In Schultz, et al. [15], the J//Lmax problem is solved using a combination iterative deterministic simulation with a simulated annealing post processor. This heuristic is hereafter referred to as the SHKT heuristic. The iterative deterministic simulation, developed by Hodgson, et al.[9], uses a revised slack-based dispatching rule to solve the job shop problem. In practice, after a small number of iterations, the Lmax value generated by the deterministic simulation rapidly descends and then often begins oscillating. The process terminates after a determined number of iterations and returns the schedule with the lowest Lmax value. This schedule is used as the initial solution for the simulated annealing. An effective simulated annealing procedure requires a “sufficient” neighborhood generation scheme, a “fast” method of evaluating neighboring solutions, and an “effective” cooling algorithm. The neighborhood generation scheme is a variant of a neighborhood defined by Van Laarhoven et al. [20] of switching pairs of successive jobs on the critical path. The critical path is found by starting at the last operation of the job with the largest lateness value and backtracking along the path of operations that constrain any left shift. The constraint can come from either a preceding operation from the same job, or an operation on the same machine (see Figure 1) so that more than one critical path may exist. The neighborhood scheme used in the SHKT heuristic allows for the probabilistic switching of more than one pair of jobs, both on and off the critical path. The pairs of jobs to switch are randomly generated according to a parameter-driven scheme. The parameters consist of the maximum number of switches, the expected number of switches, and the expected number of switches on the critical path.

Mach 1

1

2 3

Mach 1

3

2

1

4

3

2 3

3

2

1

2

1

3

2 3

4

4

2

1 2

4

3 1

4

4

Figure 1 – operations on the critical path highlighted, two critical paths exist for this schedule To evaluate a neighboring solution, Schultz et al. developed a constructive algorithm that rapidly creates the semiactive schedule or concludes the schedule is infeasible. The order of the algorithm is at best O(N x M ), and at worst O(N x M2) and on average tends much closer to O(N x M ). In the SHKT heuristic, the cooling schedule differs somewhat from the classic approach of Johnson et al.[10]. The cooling schedule in the classic approach steadily reduces the temperature until the process is frozen, at which time the algorithm terminates. Schultz et al.[15] utilizes this classic approach, however once the process becomes frozen, the temperature is reset to the initial temperature and the current solution is set to the best solution found thus far.

This freezing and re-heating of the process continues for a set number of iterations (see Figure 2). This approach has the effect of allowing the annealing process to explore wide areas around the current solution, but moves the process back to the best found solution if it tends to drift away. Schultz et al. [15] evaluate the SHKT heuristic on benchmark problems posted by Demirkol, et al. [7]. The results are compared to upper bounds established by Balas et al.[5]. The SHKT heuristic obtains new or equivalent upper bounds on 159 of the 160 Lmax problems. Given the effective method of solving the Lmax job shop problem, the issue is how to transform a makespan problem to a Lmax problem. Using a little insight, if the due date for all jobs is set to a constant (K), then the lateness of each job (Li) is the completion time of each job minus the constant, Li = C i − K . Since K is a constant then the largest lateness value occurs for the job with the largest completion time, i.e., Lmax = C max − K . Furthermore, if the due date K is set to 0, then Lmax = C max . Therefore to transform a makespan problem to a Lmax problem simply add a due date of 0 for all jobs. The resulting maximum lateness of the schedule is also the makespan. Thus, an algorithm that attempts to minimize Lmax on the transformed problem minimizes makespan for the original problem.

1. Get an initial solution S. 2. Get an initial temperature T >0. 3. Perform the following loop K times 3.1. While not yet frozen do the following. 3.1.1. Perform the following loop L times. 3.1.1.1. Pick a runadom neighbor S’ of S 3.1.1.2. Let ∆ = cost(S’) – cost (S). 3.1.1.3. If ∆ < 0 (downhill move). Set S = S’. 3.1.1.4. If ∆ > 0 (uphill move), Set S = S’ with probability e-∆/T 3.1.2. Set T = rT (reduce temperature). 3.2. Set T = initial temperature Set S =best solution thus far 4. Return S. Figure 2. SHKT algorithm and cooling schedule

4. Computational Results Two studies were performed using the SHKT heuristic described above on 147 of the 159 OR-Library benchmark problems. In order to demonstrate the heuristic is robust, only a single run of the heuristic was made using the same neighborhood generation scheme for all the problem instances. Values of 4, 1.5, and 0.8 were used for the maximum number of switches, average number of switches, and average number of switches on the critical path respectively. This parameter set was chosen because it had been effective in solving the Lmax problems. The runs were made on a 1.4GHz PC running Microsoft Windows NT 4.0. The first study is modeled after Pezzela and Merelli [13]. They present a heuristic (TSSB) that obtains an initial solution using a shifting bottleneck procedure that is then followed by a tabu search. Pezzela and Merelli test their heuristic on 133 benchmark problems (ORB1 - ORB5, FT6, FT10, FT20, ABZ5 - ABZ9, LA01 – LA40, TA01TA80). For a performance measure, they calculate a relative error that is the percentage by which the solution obtained is above the optimum value or the best known lower bound: RE =

100 * (UB − Opt ) , or Opt

RE =

100 * (UB − LB) . LB

(1)

This relative error is reported as a mean relative error (MRE) for all problem instances in a table. Tables 1, 2 and 3 compare results obtained from TSSB and the SHKT heuristic along with the optimum solution, or the best known lower and upper bounds. For the sake of brevity representative problems from each experimentation are displayed. However, the MRE value displayed at the end of each table summarizes performance over all problems in the group. The SHKT heuristic ran for 720 minutes, with results displayed at various points in time. Table 3 also reports results obtained by Balas and Vazacopoulus [4] using their heuristic SB-GLS1 and the best from among all their algorithms (BV-best). Note the SHKT heuristic finds the previously unknown optimal solution for problem TA67, and a new upper bound for TA62. Table 1 Problem

NxM

ORB1 ORB2 ORB3 ORB4 ORB5 FT06 FT10 FT20 ABZ5 ABZ6 ABZ7 ABZ8 ABZ9 MRE

10x10 10x10 10x10 10x10 10x10 6x6 10x10 20x5 10x10 10x10 20x15 20x15 20x15

Opt (LB UB) 1059 888 1005 1005 887 55 930 1165 1234 943 656 (645 669) (661 679)

TSSB 1064 890 1013 1013 887 55 930 1165 1234 943 666 678 693 1.06%

SHKT5min 1077 889 1024 1013 890 55 930 1165 1236 943 670 675 696 1.31%

SHKT30min 1059 888 1022 1005 889 55 930 1165 1234 943 668 674 696 1.04%

SHKT60min 1059 888 1005 1005 889 55 930 1165 1234 943 668 674 694 0.89%

SHKT120min 1059 888 1005 1005 889 55 930 1165 1234 943 668 674 689 0.83%

SHKT180min 1059 888 1005 1005 887 55 930 1165 1234 943 668 673 689 0.80%

SHKT720min 1059 888 1005 1005 887 55 930 1165 1234 943 661 672 687 0.68%

Table 2 Problem

NxM

LA24 LA25 LA26 LA27 LA28 LA29 LA30 LA31 LA32 LA33 LA34 LA35 LA36 LA37 LA38 LA39 LA40 MRE

15x10 15x10 20x10 20x10 20x10 20x10 20x10 30x10 30x10 30x10 30x10 30x10 15x15 15x15 15x15 15x15 15x15

Opt (LB UB) 935 977 1218 1235 1216 (1142 1153) 1355 1784 1850 1719 1721 1888 1268 1397 1196 1233 1222

TSSB 938 979 1218 1235 1216 1168 1355 1784 1850 1719 1721 1888 1268 1411 1201 1240 1233 0.14%

SHKT5min 950 984 1218 1260 1216 1167 1355 1784 1850 1719 1721 1888 1291 1425 1212 1245 1243 0.38%

SHKT30min 938 977 1218 1245 1216 1164 1355 1784 1850 1719 1721 1888 1278 1397 1209 1240 1234 0.16%

SHKT60min 938 977 1218 1240 1216 1164 1355 1784 1850 1719 1721 1888 1278 1397 1202 1240 1233 0.14%

SHKT120min 938 977 1218 1240 1216 1161 1355 1784 1850 1719 1721 1888 1278 1397 1202 1238 1226 0.11%

SHKT180min 938 977 1218 1240 1216 1161 1355 1784 1850 1719 1721 1888 1269 1397 1196 1238 1225 0.08%

SHKT720min 938 977 1218 1238 1216 1161 1355 1784 1850 1719 1721 1888 1268 1397 1196 1233 1224 0.06%

Table 3 – new upper bounds highlighted Problem N x M TA1 TA2 TA3 TA4 TA5 TA11 TA12 TA13 TA14 TA15 TA21 TA22 TA23 TA24 TA25 TA31 TA32 TA33 TA34 TA35 TA41 TA42 TA43 TA44 TA45 TA51 TA52 TA53 TA54 TA55 TA61 TA62 TA63 TA64 TA65 TA66 TA67 TA68 TA69 TA70 MRE

15x15 15x15 15x15 15x15 15x15 20x15 20x15 20x15 20x15 20x15 20x20 20x20 20x20 20x20 20x20 30x15 30x15 30x15 30x15 30x15 30x20 30x20 30x20 30x20 30x20 50x15 50x15 50x15 50x15 50x15 50x20 50x20 50x20 50x20 50x20 50x20 50x20 50x20 50x20 50x20

Opt (LB UB) TSSB SBGLS1 1231 1241 1244 1244 1244 1255 (1206 1218) 1222 1225 (1170 1175) 1175 1191 (1210 1228) 1229 1256 (1321 1364) 1371 1402 (1321 1367) 1379 1416 (1271 1350) 1362 1377 1345 1345 1361 (1293 1342) 1360 1383 (1539 1647) 1659 1692 (1511 1601) 1623 1638 (1472 1558) 1573 1594 (1602 1651) 1659 1714 (1504 1598) 1606 1631 (1764 1766) 1771 1809 (1774 1803) 1840 1840 (1778 1796) 1833 1844 (1828 1832) 1846 1898 2007 2007 2010 (1859 2023) 2045 2106 (1867 1961) 1979 2018 (1809 1879) 1898 1946 (1927 2003) 2036 2069 (1997 2005) 2021 2049 2760 2760 2760 2756 2756 2756 2717 2717 2717 2839 2839 2839 2679 2684 2683 2868 2868 2891 (2869 2895) 2924 2962 2755 2755 2796 2702 2702 2726 2725 2725 2751 2845 2845 2845 (2825 2826) 2865 2841 2784 2784 2785 3071 3071 3071 2995 2995 3004 2.55% 3.68%

BVbest 1231 1244 1218 1181 1233 1392 1367 1350 1345 1353 1659 1603 1558 1659 1615 1766 1803 1796 1832 2007 2026 1967 1881 2004 2008 2760 2756 2717 2839 2679 2868 2900 2755 2702 2725 2845 2826 2784 3071 2995 2.13%

SHKT5min 1255 1248 1227 1191 1242 1399 1406 1362 1364 1385 1718 1637 1622 1712 1641 1806 1884 1853 1900 2048 2135 2068 1964 2110 2081 2760 2756 2717 2839 2679 2872 2919 2817 2702 2737 2856 2858 2784 3071 3045 3.97%

SHKT30min 1237 1244 1221 1181 1233 1386 1382 1362 1352 1359 1687 1626 1597 1687 1641 1773 1853 1842 1884 2007 2076 2029 1951 2051 2076 2760 2756 2717 2839 2679 2868 2896 2755 2702 2725 2845 2826 2784 3071 2995 3.04%

SHKT60min 1231 1244 1221 1175 1233 1380 1382 1361 1352 1359 1662 1624 1574 1675 1632 1773 1846 1842 1861 2007 2062 2029 1926 2051 2062 2760 2756 2717 2839 2679 2868 2896 2755 2702 2725 2845 2826 2784 3071 2995 2.83%

SHKT120min 1231 1244 1218 1175 1233 1374 1382 1359 1351 1359 1662 1624 1574 1675 1629 1768 1836 1828 1847 2007 2060 2018 1915 2044 2050 2760 2756 2717 2839 2679 2868 2896 2755 2702 2725 2845 2825 2784 3071 2995 2.68%

SHKT720min 1231 1244 1218 1175 1230 1373 1379 1353 1349 1359 1662 1615 1568 1671 1616 1766 1828 1824 1844 2007 2060 1976 1888 2044 2021 2760 2756 2717 2839 2679 2868 2883 2755 2702 2725 2845 2825 2784 3071 2995 2.43%

The second study is modeled after Steinhofel et al. [16] using the more recent Yamada and Nakano [22], and the Storer et al. [18] benchmark problems. Steinhofel et al. [16] uses a simulated annealing approach and reports the performance of a time bound heuristic and a heuristic with no time bound. Evaluating 14 of these 24 benchmark problems, the SHKT heuristic outperforms Steinhofel’s time-bounded heuristic and is comparable to the unbounded approach. SHKT obtains an MRE of 2.57% for the 720 minute run.

5. Conclusions The SHKT heuristic, originally designed to solve the Lmax job shop problem, was used to solve the classic job shop makespan problem. Even when applying a single parameter set, the SHKT heuristic is shown to be effective in solving well-known job shop benchmark problems, equaling or improving on 81 out of 147 problems, with an overall MRE of 1.64%. Of these benchmark problems, new upper bounds are found for TA62, and TA67, with TA67 shown to be optimal.

References 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.

Adams J., E. Balas, D. Zawack, (1988). “The shifting bottleneck procedure for job shop scheduling,” Management Science, 34, 391-401. Applegate D., W. Cook, (1991). “A computational study of the job shop scheduling problem,” ORSA Journal on Computing, 3, 149-156. Baker K.R., (1974). Introduction to Sequencing and Scheduling, (John Wiley and Sons), New York. Balas, E., A. Vazacopoulos, (1994). “Guided local search with shifting bottleneck for job shop scheduling,” Tech Rep., Management Science Research Report MSRR-609, GSIA Carnegie Mellon University, Pittsburg. Balas, E., G. Lancia, P. Serafini, and A. Vazacopoulos, (1998). “Job Shop Scheduling With Deadlines,” Journal of Combinatorial Optimization, 1, 329-353. Carlier J., and E. Pinson, (1989). “An algorithm for solving the job shop problem,” Management Science, 35, 164-176. Demirkol E., S. Mehta. and R. Uzsoy, (1998). “Benchmarks for shop scheduling problems,” European Journal of Operational Research, 109, 137-141. Fischer H., G. Thompson, (1963). “Probabilistic learning combinations of local job-shop scheduling rules,” in: J. Muth, G. Thompson (Eds.), Industrial Scheduling, (Prentice-Hall), Englewood Cliffs, NJ. Hodgson T.J., R.E. King, K. Thoney, N. Stanislaw, A.J. Weintraub and A. Zozom Jr., (2000). “Technical Note: On satisfying due-dates in large job shops: idle time insertion,” IIE Transactions, 32, 177-180. Johnson D.S., C.R. Aragon, L.A. McGeoch, C. Schevon, (1989). "Optimization By Simulated Annealing: An Experimental Evaluation; Part 1, Graph Partitioning," Operations Research, 37, (6), 865-892. Lawrence S., (1984). Supplement to, “Resource constrained project scheduling: an experimental investigation of heuristic scheduling techniques,” Tech. Rep., GSIA, Carnegie Mellon University. Morton T.E., and D.W. Pentico, (1993). Heuristic scheduling systems with applications to production systems and project management, (John Wiley and Sons), New York. Pezzella F., E. Merelli, (2000). “A tabu search method guided by shifting bottleneck for the job shop scheduling problem,” European Journal of Operational Research, 120, 297-310. Rinnooy Kan A.H.G., (1976). Machine Scheduling Problems: Classification, Complexity and Computations, (Nijhoff), The Hauge. Schultz S., T.J. Hodgson, R.E. King, K. Thoney. “On minimizing Lmax for the job shop scheduling problem,” Working Paper. Steinhofel K., A. Albrecht, and C.K. Wong, (1999). “Two simulated annealing-based heuristics for the job shop scheduling problem,” European Journal of Operational Research, 118, 524-548. Steinhofel K., A. Albrecht, and C.K. Wong, (2002). “Fast parallel heuristics for the job shop scheduling problem,” Computers and Operations Research, 29, 151-169. Storer R.H., S.D. Wu, and R. Vaccari, (1992). “New search spaces for sequencing problems with application to job shop scheduling,” Management Science, 38, 1495-1509. Talliard E., (1993). “Benchmarks for basic scheduling problems,” European Journal of Operational Research, 64, 278-285. Van Laarhoven P.J.M., E.H.L. Aarts, and J.K. Lenstra, (1992). “Job shop scheduling by simulated annealing,” Operations Research, 40, 113-125. Wang L., D.Z. Zheng, (2001). “An effective hybrid optimization strategy for job-shop scheduling problems,” Computers and Operations Research, 28, 585-596. Yamada T., R. Nakano, (1992). “A genetic algorithm applicable to large-scale job shop problems,” in: R. Manner, B. Manderick (Eds.), Parallel Problem Solving from Nature 2, (North Holland), Amsterdam, 281290.