Flow Shop Scheduling with Late Work Criterion

3 downloads 0 Views 39KB Size Report
Jacek Blazewicz 1, Erwin Pesch 2, Malgorzata Sterna1, Frank Werner 3. 1 Institute of ... 3 Faculty of Mathematics, Otto-von-Guericke-University, PSF 4120,.
Flow Shop Scheduling with Late Work Criterion – Choosing the Best Solving Strategy Jacek Blazewicz 1, Erwin Pesch 2, Malgorzata Sterna1, Frank Werner 3 1

Institute of Computing Science, Poznan University of Technology, Piotrowo 3A, 60-965 Poznan, Poland [email protected] [email protected] 2 Institute of Information Systems, FB 5 - Faculty of Economics, University of Siegen, Hoelderlinstr. 3, 57068 Siegen, Germany [email protected] 3 Faculty of Mathematics, Otto-von-Guericke-University, PSF 4120, 39016 Magdeburg, Germany [email protected]

Abstract. In the paper, we analyze different solving methods for the two-machine flow shop scheduling problem with a common due date with the weighted late work criterion, i.e. F2 | di = d | Yw, which is known to be NP-hard. In computational experiments, we compared the practical efficiency of a dynamic programming approach, an enumerative method and heuristic procedures. Test results showed that each solving method has its advantages and it cannot be rejected from the consideration a priori.

1 Introduction The late work objective function is a due date involving criterion, which was proposed in the context of parallel machines [1], [2] and then applied to the one-machine scheduling problem [9], [10]. Recently, this performance measure has been analyzed for the shop environments [3], [4], [5], [6], [11]. Minimizing the amount of the late work finds many practical applications, e.g. in control systems [1], agriculture technologies [9] or designing production plans in flexible manufacturing systems [11]. In the paper, we present a comparison of different solving methods for a nonpreemptive scheduling problem with the total weighted late work criterion and a common due date in the two-machine flow-shop environment, F2 | di =d | Yw. In this problem, we have to find an optimal schedule for a set of jobs J={J1, …, Ji, …, Jn} on two dedicated machines M1, M2. Each job Ji∈J consists of two tasks T1i and T2i, executed on machines M1, M2, for p1i, p2i time units, respectively. Particular jobs have to be performed, without preemptions, first on M1 then on M2. Moreover, each job can be processed on at most one machine at the same time and each machine can perform at most one task at the same time. Solving the problem, we are looking for a schedule minimizing the total weighted late work in the system (Yw), where the late work (Yi) for a particular job Ji∈J is determined as the sum of late parts

of its tasks executed after a common due date d. Denoting with Cki the completion time of task Tki, Yi for job Ji∈J equals to min{max{0,C ki - d}, p ki } .



k =1, 2

Within our earlier research, we have proved the binary NP-hardness of problem F2 | di =d | Yw proposing a dynamic programming approach [5] of O(n2d4) complexity. In the presented paper, we compare the performance of three solving methods for this scheduling case: a dynamic programming approach (DP), an enumerative method (EM) and a heuristic one. Results of computational experiments summarized in the paper, made it possible to verify the correctness of DP and to validate the efficiency of particular approaches implemented.

2 Solving Methods Problem F2 | di =d | Yw, as a binary NP-hard case, can be solved optimally by a dynamic programming approach [5] in pseudo-polynomial time O(n2d4). According to the special feature of the problem analyzed [5] all early jobs have to be scheduled, in an optimal solution, by Johnson’s algorithm [7] (designed for F2 | | Cmax). Thus, the implemented DP method determines the first late job in the system and, then, it divides the set of the remaining jobs into two subsets containing activities being totally early and partially or totally late. To check the correctness of this quite complicated method, we have designed an enumerative approach too, which finds an optimal solution by systematic exploring the solution space. This algorithm checks all possible subsets of early jobs, executing them in Johnson’s order, and, then, it completes such partial schedules with all permutations of partially late jobs properly chosen. In consequence, not all possible permutations of jobs are explicitly checked by the method, which, despite this fact, is obviously an exponential one. In practice, the methods mentioned above make it possible to find an optimal solution of the problem for small instances only. To obtain feasible solutions for bigger instances, heuristic algorithms have to be applied. Within our research, we compared the exact methods with Johnson’s algorithm (JA) and a list scheduling method. Johnson’s algorithm designed for problem F2 | |Cmax can be used as a fast heuristic for the problem under consideration (O(nlogn)), especially with regard to the fact that early jobs are sequenced in Johnson’s order in an optimal solution for F2 | di =d | Yw. The list scheduling approach is a technique commonly used in the field, especially for practical applications. The constructive procedure proposed adds particular jobs, one by one, to a set of executed jobs (E). All jobs from this set are scheduled on machines according to Johnson’s algorithm. At each step of the method, a new job is selected from the set of the remaining (available) jobs A = J\E according to a certain priority dispatching rule (PDR). We have proposed 15 rules (cf. Table 1). Some of them determine the sequence of jobs at the beginning of the algorithm (static rules), while others arrange jobs from set A at each step of the method with regard to the length of a partial schedule obtained so far (dynamic rules). The final solution is the best solution obtained for all sets of jobs E for which the schedule length exceeds the common due date d. For static rules the algorithm runs in O(n2logn) time, while for dynamic rules the complexity is bounded with O(n3logn).

Table 1. The definitions of static (S) and dynamic (D) priority dispatching rules

Notation S1 S2 S3 S4 S5 S6 S7 S8 S9 D1 D2 D3 D4 D5 D6

Priority dispatching rule max{wi} for Ji∈A, where wi denotes the job weight max{wi(p1i+p2i)} for Ji∈A min{p1i} for Ji∈A max{p1i} for Ji∈A min{p1i+p2i} for Ji∈A max{wip1i} for Ji∈A max{wip2i} for Ji∈A selecting jobs in Johnson’s order selecting jobs randomly min{xi} for Ji∈A, where xi=p1i/(d-T1)+ p2i/(d-T2) and Tk denotes a partial schedule length on machine Mk min{wixi} for Ji∈A max{xi} for Ji∈A max{wixi} for Ji∈A max{zi} for Ji∈A, where zi = max{0, d-T1-p1i} + max{0, d-T2- p2i} min{zi} for Ji∈A

3 Computational Experiments Within computational experiments, we have checked the time efficiency of particular methods and the quality of heuristic solutions obtained. All algorithms proposed have been implemented in ANSI C++ and run on AMD Duron Morgan 1GHz PC [8]. The selected summarized results of the extended tests are presented below. For small instances, with the number of jobs not exceeding 20, all implemented methods were analyzed (cf. Table 2, Columns 1-3). Obviously, the dynamic programming (DP) and enumerative (EM) methods gave the same optimal solutions, that practically confirmed the correctness of the DP algorithm [5]. The simplest method, Johnson’s algorithm (JA), constructed solutions of the poorest quality: 69% of the optimum, on average (to simplify the analysis, we compare results based on the weighted early work, so JA found schedules with only 69% of the weighted early work obtained by DP and EM). The efficiency of the list algorithm strictly depended on a priority dispatching rule applied and fluctuated from about 73% to almost 98% of the optimum. As one could predict, the best rules are static rules preferring jobs with the biggest weight or the biggest weighted processing time on single or both machines. On the other hand, the dynamic selection rules ensured also quite good quality (more than 80% of the optimum). Moreover, the most efficient rules appeared to be the most stable ones (with the smallest standard deviation of the solution quality). The ranking of the priority dispatching rules for big instances, with the number of jobs n ≤ 250, is similar (cf. Table 2, Columns 4-6). In this case, the solution quality was compared to the best heuristic schedule, because the optimal one cannot be obtained due to the unacceptably long runtimes of the exact approaches.

Table 2. The ranking of priority dispatching rules based on the solution quality compared to the optimal criterion value for small instances (Columns 1-3) and to the best heuristic solution for big instances (Columns 4-6)

PDR ranking I 1 S1 S2 S6 S7 D4 D2 D1 D6 S5 D5 D3 S4 S9 S3 S8 JA

Average Standard perform.[%] deviation 2 3 97,66 0,028 92,40 0,054 91,55 0,058 91,03 0,051 85,15 0,067 83,25 0,081 83,23 0,077 81,85 0,081 81,64 0,081 81,25 0,088 80,44 0,068 78,68 0,091 78,41 0,068 76,17 0,083 73,87 0,069 69,57 0,084

PDR ranking II 4 S1 S2 S6 S7 D2 D6 D1 D4 D3 S5 D5 S4 S3 S9 S8 JA

Average perform.[%] 5 100,0 93,98 92,19 88,36 75,23 73,89 73,64 73,45 73,37 72,84 72,76 72,63 71,44 71,18 70,43 70,06

Standard deviation 6 0,000 0,018 0,021 0,027 0,043 0,044 0,040 0,043 0,043 0,037 0,032 0,051 0,037 0,043 0,039 0,039

The runtimes of the dynamic programming (DP) and enumerative (EM) methods reflect their exponential complexities (cf. Table 3, Columns 2 and 3). Johnson’s algorithm (JA) required neglectedly short runtime (cf. Table 3, Column 4) – from this point of view its solution quality (about 70% of the optimum) can be treated as a big advantage. On the other hand, a bit bigger time requirements of the list algorithm are compensated by the higher (nearly optimal) quality of schedules constructed. (In Table 3, Columns 5 and 8, runtimes for the best selection rule, S1, are presented.) To analyze the time efficiency of heuristic approaches more carefully, they were applied also for bigger problem instances (cf. Table 3, Columns 6-8). The runtimes of JA and S1 obviously increase with the number of jobs, reflecting methods’ complexities, i.e. O(nlogn) and O(n2logn), respectively. The experiments confirmed that heuristic approaches are only possible solving methods for big instances of hard problems. In the tests reported in Table 3, the due date value was quite strict; it was settled to 30% of the half of the total processing time of all jobs. For such problem instances, DP appeared to be less efficient than the enumerative method, despite the much lower pseudo-polynomial complexity. The DP method is insensitive to problem data and its complexity strictly depends on two problem parameters – d and n. To investigate this issue more carefully, we tested both exact methods for the same job set changing only the due date value from 10% to 90% of the half of the total processing time of all jobs (cf. Table 4). Surprisingly, the enumerative method appeared to be more efficient than the pseudo-polynomial algorithm in general.

Table 3. The average runtimes for small (Columns 1-5) and big (Columns 6-8) instances for different numbers of jobs (n)

n 1 10 12 14 16 18

DP [µs] EM [µs] JA [µs] 2 3 4 451 782 1 939 11 1 081 864 20 357 11 2 821 465 127 221 13 4 101 604 7 928 479 14 12 445 751 6 205 041 15

S1 [µs] 5 323 448 614 758 1039

n 6 50 100 150 200 250

JA [µs] 7 36 72 100 132 165

S1 [µs] 8 7331 29275 100422 180624 289967

For strict due date values, the enumerative method cuts many partial solutions from the further analysis increasing its efficiency. On the other hand, for big due date values a set of early jobs, scheduled by Johnson’s rule, is numerous. In consequence, checking all possible solutions can be done in relatively short time. This observation is confirmed by the results obtained for EM (cf. Table 4) – the runtime increases with d to a certain maximum value and, then, it decreases. Moreover, the computational experiments showed that taking into account problem constraints, the enumerative method constructs only a small part of all possible permutations for n jobs (the percentage of explicitly checked permutations is given in the last column of Table 4). Similar experiments, with a variable due date value, were performed for the heuristic method as well. Changing d for a certain set of jobs does not influence the runtime of the heuristic (whose complexity does not depend on d). However, one could notice the solution quality improvement with the increase of d. For the big value of d, almost all jobs are executed early and their order is strictly determined by Johnson’s rule. For such instances, a heuristic solution cannot differ too much from the optimal one. Table 4. The runtimes for different due date values d and the part of the solution space explored by EM

d [%] 10 20 30 40 50 60 70 80 90

DP [µs] 31 580 238 335 648 829 1 791 391 3 490 018 5 512 625 8 790 002 14 079 739 20 049 948

EM [µs] 63 138 547 3 654 7 289 8 845 9 311 4 841 1 991

Space checked [%] 0,001 0,005 0,029 0,200 0,380 0,444 0,440 0,196 0,059

4 Conclusions In the paper, we have compared different solving methods for problem F2 | di =d | Yw, which is known to be binary NP-hard. The computational experiments showed that the

dynamic programming method, despite its pseudopolynomial time complexity, is less efficient than the enumerative one. It is important from the theoretical point of view, because its existence made it possible to classify the problem as binary NP-hard. But, for determining optimal solutions, the enumerative method is a better choice in this case. Moreover, we have proposed the list scheduling method with a few static and dynamic selection rules. The experiments showed that the heuristic constructs solutions of a good quality in the reasonable runtime. Within the future research, we are designing metaheuristic approaches for the problem F2 | di =d | Yw. The exact methods presented in this work will be used for validating the quality of solutions, while the list heuristic can be applied as a method of generating initial schedules and a source of reference solutions for validating the metehuristic’s performance for big problem instances. Acknowledgment We would like to express our appreciation to Krzysztof Kowalski for implementing methods proposed and performing computational experiments designed within the presented research.

References 1. Blazewicz, J.: Scheduling Preemptible Tasks on Parallel Processors with Information Loss. Recherche Technique et Science Informatiques 3/6 (1984) 415-420 2. Blazewicz, J., Finke, G.: Minimizing Mean Weighted Execution Time Loss on Identical and Uniform Processors. Information Processing Letters 24 (1987) 259-263 3. Blazewicz, J., Pesch, E., Sterna, M., Werner, F.: Total Late Work Criteria for Shop Scheduling Problems. In: Inderfurth, K., Schwoediauer, G., Domschke, W., Juhnke, F., Kleinschmidt, P., Waescher G. (eds.): Operations Research Proceedings 1999. Springer-Verlag, Berlin (2000) 354-359 4. Blazewicz, J., Pesch, E., Sterna, M., Werner, F.: Open Shop Scheduling Problems with Late Work Criteria. Discrete Applied Mathematics 134 (2004) 1-24 5. Blazewicz, J., Pesch, E., Sterna, M., Werner, F.: The Two-Machine Flow-Shop Problem with Weighted Late Work Criterion and Common Due Date. European Journal of Operational Research (2004) to appear 6. Blazewicz, J., Pesch, E., Sterna, M., Werner, F.: Revenue Management in a Job-Shop: a Dynamic Programming Approach. Preprint Nr. 40/03, Otto-von-Guericke-University Magdeburg (2003) 7. Johnson S.M.: Optimal Two- and Three-Stage Production Schedules. Naval Research Logistics Quarterly 1 (1954) 61-68 8. Kowalski, K.: Scheduling Algorithms for the Shop Scheduling Problems with the Late Work Criteria, Master Thesis, Poznan University of Technology, in Polish (2003) 9. Potts, C.N., van Wassenhove, L.N.: Single Machine Scheduling to Minimize Total Late Work. Operations Research 40/3 (1991) 586-595 10.Potts, C.N., van Wassenhove, L.N.: Approximation Algorithms for Scheduling a Single Machine to Minimize Total Late Work. Operations Research Letters 11 (1991) 261-266 11.Sterna, M.: Problems and Algorithms in Non-Classical Shop Scheduling. Scientific Publishers of the Polish Academy of Sciences, Poznan (2000)