Journal of Systems Engineering and Electronics Vol. 22, No. 3, June 2011, pp.462–467 Available online at www.jseepub.com
Heuristic algorithms for scheduling on uniform parallel machines with heads and tails Kai Li1,2,* and Shanlin Yang1,2 1. School of Management, Hefei University of Technology, Hefei 230009, P. R. China; 2. Key Laboratory of Process Optimization and Intelligent Decision-making, Ministry of Education, Hefei University of Technology, Hefei 230009, P. R. China
Abstract: This paper considers the uniform parallel machine scheduling problem with unequal release dates and delivery times to minimize the maximum completion time. For this NP-hard problem, the largest sum of release date, processing time and delivery time first rule is designed to determine a certain machine for each job, and the largest difference between delivery time and release date first rule is designed to sequence the jobs scheduled on the same machine, and then a novel algorithm for the scheduling problem is built. To evaluate the performance of the proposed algorithm, a lower bound for the problem is proposed. The accuracy of the proposed algorithm is tested based on the data with problem size varying from 200 jobs to 600 jobs. The computational results indicate that the average relative error between the proposed algorithm and the lower bound is only 0.667%, therefore the solutions obtained by the proposed algorithm are very accurate. Keywords: scheduling, parallel machine, uniform, release date/head, delivery time/tail.
DOI: 10.3969/j.issn.1004-4132.2011.03.014
1. Introduction In lots of practical scheduling problems, the jobs must undergo the course of pre-processing to become available for processing, while before they exit from the scheduling system, the delivery times are must elapse after the jobs processed finished on the machine. Take the three level pull supply chain as an example, as shown in Fig. 1. The customers order some products; the manufacturer orders some raw materials and organizes production; and then, the manufacturer delivers the products to the customers. Here, the job release dates may be the times that the customers make the orders or the time that the row materials are obtained from the Manuscript received June 2, 2009. *Corresponding author. This work was supported by the National Natural Science Foundation of China (70871032; 90924021; 70971035), the National High Technology Research and Development Program of China (863 Program) (2008AA042901) and Anhui Provincial Natural Science Foundation (11040606Q27).
suppliers; the delivery times are brought by the products real delivery time or the need of some special products, e.g., the course of cooling for the steel and iron or the course of drying for the painted products. We consider the problem of processing a set of independent jobs, in which the jobs have unequal release dates (heads) and delivery times (tails). When the manufacturer owns several product lines with different production capacities, the problem can be viewed as the uniform parallel machine scheduling problem with different heads and tails, and can be described as Qm |rj , qj |Cmax according to the standard three-field notation α|β|γ. The first field “Qm ” specifies the machine configuration as the uniform parallel machine case. In the second field, rj and qj denote the jobs with unequal heads and tails, respectively. The third field “Cmax ” states the objective is to minimize the maximum completion time. This problem is NP-hard, even when there is only one single machine [1].
Fig. 1
Three level pull supply chain
The scheduling problems with heads and tails have been received attention in recent years. However, the existing literature mainly focused on the identical parallel machine case, i.e. Pm |rj , qj |Cmax problem. For example, [2,3] developed some exact branch-and-bound algorithms for the problem; [4,5] considered the developments of heuristics; [6,7] proposed some approximation algorithms. Dessouky [8] considered Qm |rj , qj , pj = 1|Cmax problem, in which the job processing times are identical. He proposesd six simple heuristics, and then developed a branch-and-bound procedure for the problems within 5 machines and 80 jobs. When the jobs have the same delivery time, the Qm |rj , qj |Cmax problems degenerates to Qm |rj |Cmax problems. Koulamas and Kyparisis [9] were elicited by the
Kai Li et al.: Heuristic algorithms for scheduling on uniform parallel machines with heads and tails
earliest due date first (EDD) rule, and proposed a heuristic largest release date first (LRD) for Qm |rj |Cmax problems. Li and Zhang [10] proposed a longest processing time first (LPT-LRD) heuristic algorithm to solve this problem. Their computational results show that LPT-LRD outperform and largest delivery time first (LDT) algorithm. When the release dates are identical, the Qm |rj , qj |Cmax problem degenerates to Qm |qj |Cmax problems. Koulamas and Kyparisis [11] showed that the m LDT heuristic is a (m − 1)s1 / si + 1 -approximation i=1
algorithm, where m is the number of the machines, si is the speed of the ith machine, and s1 is the maximum speed. In one of our previous papers [12], we propose a new heuristic algorithm for the problem and build a variable neighborhood search approach to improve the quality of the solutions. Considering the NP-hardness of Qm |rj , qj |Cmax problems, we develop an accurate heuristic algorithm.
2. Problem description Given a set of n jobs Jj (j = 1, 2, . . . , n), each job Jj corresponds to a positive processing length pj (pj > 0), a release date (head) rj (rj 0) and a delivery time (tail) qj (qj 0). There are m uniform parallel machines Mi (i = 1, 2, . . . , m). The speed of Mi is si (si > 0; i = 1, 2, . . . , m). Without loss of generality, we assume s1 s2 · · · sm . When the job Jj is processed on machine Mi , it will take a positive processing time pij = pj /si . A machine can process at most one job at a time, and a job can be processed on only one machine at a time. The machines are available at time 0. Let Π denote the universe set of the schedules. Let π (π ∈ Π ) denote an individual schedule, which can be described as π = {π1 , π2 , . . . , πm }, where πi is the sub-schedule on the machine Mi . Let ni (ni 0) be m the job number in the sub-schedule πi , then ni = i=1
n. Let πij be the jth job in the sub-schedule πi , then m π = {{πi1 , πi2 , . . . , πini }|i = 1, 2, . . . , m}, and i=1
{πi1 , πi2 , . . . , πini } = {Jj |j = 1, 2, . . . , n}. For a fixed schedule π, the processing finished time j j of job πij is cij (π) = maxk=1 {rik + pil }, then for l=k
the customers, its effective completion time Cij (π) = j pil } + qij . Therefore, cij (π) + qij = maxjk=1 {rik + l=k
in the sub-schedule πi , the maximum completion time i i i Cmax (π) = maxnj=1 {Cij (π)} = maxnj=1 {maxjk=1 {rik +
j
463
pil } + qij }.
l=k
In the schedule π, the maximum completion ni time is Cmax (π) = maxm = i=1 maxj=1 {Cij (π)} j j ni pil } + qij }. maxm i=1 maxj=1 {maxk=1 {rik + l=k
The goal of this problem is to find the optimal sequence π ∗ to minimize the maximum completion time, i.e. Cmax (π ∗ ) = minπ∈Π Cmax (π).
3. The proposed algorithm In this section, we design two heuristic rules to obtain the local optimal solutions only considering the problem with two jobs, and then propose an algorithm named RPDH according to the proposed heuristic rules. Theorem 1 Given only two jobs J1 and J2 (r1 + p1 + q1 r2 +p2 +q2 ), and two machines M1 and M2 (s2 = 1, s1 = v 1). If one machine only processes one job, then we should assign job J1 to the faster machine M1 . Proof When we assign two jobs J1 and J2 to two different machines, there are two schedule schemes π1 = {{J1 }, {J2 }} and π2 = {{J2 }, {J1 }}, then we can calculate the corresponding maximum completion time: Cmax (π1 ) = max{r1 + p1 /v + q1 , r2 + p2 + q2 } Cmax (π2 ) = max{r1 + p1 + q1 , r2 + p2 /v + q2 }. Because r1 + p1 + q1 r2 + p2 + q2 , and r1 + p1 + q1 r1 + p1 /v + q1 , therefore Cmax (π1 ) Cmax (π2 ), i.e. we should assign job J1 to the faster machine M1 . Theorem 2 Given only two jobs J1 and J2 (q1 − r1 q2 − r2 ), when assign the two jobs on the same machine (suppose the speed is 1), then the job J1 should be processed first. Proof When we assign two jobs J1 and J2 to the same machine, there are two schedule schemes π1 = {J1 , J2 } and π2 = {J2 , J1 }. Then the corresponding maximum completion time can be calculated as follows: Cmax (π1 ) = max{r1+p1+q1 , max{r1+p1 , r2 }+p2+q2 } = max{r1 + p1 + q1 , r1 + p1 + p2 + q2 , r2 + p2 + q2 } Cmax (π2 ) = max{r2+p2+q2 , max{r2+p2 , r1 }+p1+q1 } = max{r2 + p2 + q2 , r2 + p2 + p1 + q1 , r1 + p1 + q1 }. Because q1 − r1 q2 − r2 , then r2 + q1 r1 + q2 , and hence r2 + p1 + p2 + q1 r1 + p1 + p2 + q2 , therefore Cmax (π1 ) Cmax (π2 ), i.e. the job J1 should be processed first. Here, we can name Theorem 1 as the largest sum of release date, processing time and delivery time first (LRPD) rule, and theorem 2 as the largest difference between delivery time and release date first (LDDR) rule. Theorem 1
464
Journal of Systems Engineering and Electronics Vol. 22, No. 3, June 2011
shows that we should assign the jobs with a larger sum of release date, processing time and delivery time to the faster machines as far as possible. Theorem 2 shows that the jobs with larger difference between delivery time and release date should be processed first . Apparently, when the jobs have the same release date, LDDR degenerates to LDT rule for Qm |qj |Cmax problem; when the jobs have the same delivery time, LDDR degenerates to earliest release date first (ERD) rule for Qm |rj |Cmax problem; and when the jobs release dates and delivery times are all identical respectively, LRPD degenerates to LPT rule for Qm ||Cmax problem. We develop the following heuristic algorithm the heuristic algorithm according to LRPD rule (LRPDH) for Qm |rj , qj |Cmax problem according to Theorem 1 and Theorem 2. Steps of the algorithm LRPDH for Qm |rj , qj |Cmax problem is as follows: Step 1 Sequence all jobs according to the RPD rule and obtain the job list σ. Set the sub-schedules on each machine to null. Step 2 Pre-insert the head job in σ to each subschedule according to the DR rule. Choose the machine with the least Cmax to process the head job (if the number of the machine that the least Cmax corresponds to is greater than 1, then we choose the slowest one). Delete the head job from the job list σ. Step 3 to Step 2.
If the job list σ is null, then stop; otherwise, go
4. Lower bound Problem Qm |rj , qj |Cmax is NP-hard, and there is no polynomial optimal algorithm to solve it. In this section, we design a lower bound for the problem, which can be used to evaluate the accuracy of the algorithms. Some times, lower bounds can also be used to develop branch-and-bound or other meta-heuristic algorithms. Let P denote the original Qm |rj , qj |Cmax problem, then LB1 = maxnj=1 {rj + pj /s1 + qj } is a lower bound for the P problem. We relax the constraint of unequal release dates and suppose all the jobs release at the minimal release date, and denote the relaxed Qm |rj = rmin , qj |Cmax problem as P1, where rmin = minnj=1 rj . In the P1 problem, it would hold that for each i = 1, 2, . . . , m, s = si . If we relax the condition, then we can obtain the corresponding relaxed single machine problem P2: 1|rj = rmin , qj |Cmax , subject to m s= si . Obviously, the P2 problem is a surrogate relaxi=1
ation form for the P1 problem, and can be solved by LDT
heuristic. We denote the optimal value of the P2 problem as LB2 , therefore LB2 is a lower bound for the original P problem. Similarly, we can also relax the constraint of unequal delivery times and denote the relaxed problem Qm |rj , qj = qmin |Cmax as P3, where qmin = minnj=1 qj . Let P4 denote its corresponding surrogate relaxed single machine probm lem 1|rj , qj = qmin |Cmax , where s = si , then it can i=1
be solved by EDD heuristic and the optimal value LB3 can be obtained, and hence LB3 is a lower bound for the P problem. We use P5 to denote the relaxed problem of the P problem when the unequal release dates and delivery times are all relaxed at the same time, i.e. Qm |rj = rmin , qj = P5 problem, let LB4 = qmin |Cmax . Thus, forthe n m n pj / si + minnj=1 qj , and minj=1 rj + j=1
i=1
LB4 is also a lower bound for the P problem. Here, we get the lower bound LB = max4d=1 LBd for the original Qm |rj , qj |Cmax problem.
5. Computational experiments To analyze and test the accuracy of the RPDH algorithm, we compare it with the traditional heuristic algorithms such as ERD-earliest started time (EST) and ERD-earliest completion time (ECT) (i.e. sequence the jobs according to ERD rule, and then assign the jobs to the machine with the EST or ECT, respectively) and the lower bound proposed in the fourth section. We consider Qm |rj , qj |Cmax problems with 2, 4, 6, 8 machines and 200, 300, 400, 500, 600 jobs. All the algorithms mentioned above are implemented in C++ code using Dev-C++ 4.9.9.2 complier. The environment of our experiments is CPU: Pentium IV 2.93 GHz, memory: 480 MB, operating system: Microsoft Windows XP SP1. The machine speed is randomly generated from the uniform distribution between 1 and 10. The job processing length is randomly generated from the uniform distribution between 1 and 100, and the release dates and delivery times are randomly generated from 0 to 20 or 0 to 50. For each problem size, we do the experiment 100 times with different data and observe the average, the minimum and the maximum values. Therefore, the algorithms are used to solve 5 × 4 × 4 × 100 = 8 000 random problems. Let Cmax (H) be the objective value obtained by algorithm H, and thus the gap percentage between Cmax (H) and the lower bound LB can be calculated Cmax (H) − LB × 100. So the relaas Gap(H) = LB tive error between Cmax (H) and the optimal value is always lower than the corresponding Gap(H)%. Let Cˆ =
Kai Li et al.: Heuristic algorithms for scheduling on uniform parallel machines with heads and tails
min {Cmax (ΔERD − ΔEST ), Cmax (ΔERD − ΔECT )}, Cˆ − Cmax (ΔRPDH ) × 100, then Gap(1)% and Gap(1) = Cˆ represents the gap of heuristic LRPDH and the less value between ERD-EST and ERD-ECT. The computational results of heuristics are given in Tables 1−4. Table 1 gives the experiment results for the problem Table 1 m
n
200 300 2 400 500 600 200 300 4 400 500 600 200 300 6 400 500 600 200 300 8 400 500 600 Statistic
m
n
200 300 2 400 500 600 200 300 4 400 500 600 200 300 6 400 500 600 200 300 8 400 500 600 Statistic
with r ∼U[0,50] and q ∼U[0,50]. It shows that for the data when both the head and tail are large, the average relative error of LRPDH heuristic is 1.173%, and the worst error arrives at 14.390%. However, the LRPDH algorithm distinctly excels ERD-EST and ERD-ECT. Compared with the better values that ERD-EST and ERD-ECT obtained, LRPDH can improve their quality with an average gap 5.269%.
Experiment results for the problems with r ∼U[0,50] and q ∼U[0,50]
Gap(ERD-EST) Average Minimum Maximum 4.486 0.664 8.713 2.726 0.270 7.209 2.276 0.251 4.814 1.878 0.342 4.079 1.327 0.172 3.558 10.490 3.733 29.356 7.287 1.828 19.393 5.426 2.000 10.380 4.343 1.360 10.168 3.253 0.921 7.990 16.511 6.517 44.731 12.263 4.801 23.560 8.612 3.462 18.326 7.439 2.186 17.201 5.973 2.177 11.852 24.897 10.102 52.446 16.292 6.713 32.623 12.394 6.855 25.334 10.008 4.695 21.320 8.313 3.904 18.690 8.310 0.172 52.446 Table 2
465
Gap(ERD-ECT) Average Minimum Maximum 4.338 0.750 8.670 2.460 0.270 5.440 2.114 0.318 4.854 1.730 0.342 3.670 1.228 0.047 2.953 9.068 2.531 16.409 6.104 1.815 11.973 4.598 1.307 8.831 3.913 1.171 7.022 2.879 1.056 5.170 13.912 5.270 28.672 9.788 5.310 18.105 7.305 3.513 11.914 5.902 1.933 10.056 4.916 1.697 8.559 20.727 6.640 31.736 12.939 6.837 20.221 10.141 4.391 16.452 8.111 3.834 11.165 6.683 3.109 10.598 6.943 0.047 31.736
Gap(LRPDH) Average Minimum Maximum 0.586 0.073 1.846 0.283 0.050 1.041 0.188 0.007 0.548 0.148 0.006 0.526 0.095 0.001 0.285 1.579 0.506 4.286 0.867 0.327 3.044 0.515 0.075 2.268 0.355 0.079 1.006 0.238 0.054 0.774 3.013 0.879 6.150 1.615 0.386 4.834 0.948 0.271 2.455 0.673 0.249 1.659 0.453 0.181 1.669 5.925 1.835 14.390 2.816 1.073 7.061 1.436 0.544 3.863 1.030 0.436 2.420 0.704 0.301 1.356 1.173 0.001 14.390
Gap(1) Average Minimum Maximum 3.596 0.587 6.280 2.124 0.219 4.172 1.887 0.243 4.070 1.555 0.334 3.032 1.120 0.046 2.591 6.866 1.975 10.414 4.936 1.462 7.974 3.904 1.216 6.030 3.423 1.080 5.621 2.567 0.859 4.180 9.568 4.172 17.503 7.444 4.213 11.236 5.924 3.084 8.452 4.937 1.652 7.630 4.254 1.491 6.348 12.261 4.506 13.167 8.963 5.285 10.946 7.903 3.685 10.810 6.549 3.272 7.867 5.604 2.724 8.356 5.269 0.046 17.503
Experiment results for the problems with r ∼U[0,50] and q ∼U[0,20]
Gap(ERD-EST) Average Minimum Maximum 1.851 0.350 6.947 1.229 0.244 5.849 0.903 0.160 3.005 0.801 0.105 2.833 0.665 0.087 3.241 5.886 2.068 16.808 3.708 1.159 9.310 3.207 0.880 10.399 2.348 0.751 6.023 1.805 0.265 7.292 10.034 3.312 23.335 7.309 2.030 28.313 5.077 1.143 13.239 4.064 1.410 11.295 3.431 0.966 10.873 14.628 5.343 38.759 10.756 3.358 33.502 7.724 3.147 20.896 6.366 1.633 17.281 5.644 2.254 12.611 4.872 0.087 38.759
Gap(ERD-ECT) Average Minimum Maximum 1.544 0.235 3.363 0.993 0.244 2.052 0.796 0.060 2.019 0.633 0.111 1.550 0.516 0.080 1.357 3.550 1.401 6.825 2.501 0.935 5.110 1.889 0.317 3.400 1.541 0.473 2.850 1.184 3.190 2.259 5.986 2.756 12.945 4.149 1.985 7.449 3.057 1.108 5.984 2.354 0.793 4.475 2.014 0.906 3.717 8.833 3.995 14.626 5.626 2.788 9.224 4.300 2.246 6.819 3.426 1.551 5.480 2.880 1.638 4.750 2.889 0.060 14.626
Gap(LRPDH) Average Minimum Maximum 0.344 0.024 1.077 0.169 0.013 0.687 0.101 0.001 0.300 0.074 0.008 0.226 0.048 0.002 0.137 0.903 0.177 2.769 0.430 0.069 1.172 0.290 0.026 0.638 0.215 0.062 0.748 0.147 0.032 0.379 1.591 0.452 5.078 0.846 0.216 1.961 0.515 0.217 1.233 0.357 0.103 0.743 0.261 0.089 0.714 2.557 0.813 6.392 1.319 0.508 3.229 0.783 0.352 1.535 0.563 0.157 1.424 0.405 0.160 0.958 0.596 0.001 6.392
Gap(1) Average Minimum Maximum 1.182 0.210 2.212 0.817 0.230 1.338 0.689 0.060 1.685 0.555 0.097 1.304 0.466 0.079 1.203 2.557 1.208 3.796 2.021 0.858 3.747 1.570 0.290 2.671 1.306 0.409 2.044 1.025 0.232 1.839 4.146 2.242 6.965 3.172 1.734 5.107 2.466 0.881 4.483 1.951 0.685 3.572 1.718 0.810 2.895 5.766 3.060 7.183 4.077 2.218 5.489 3.373 1.852 4.947 2.768 1.372 3.845 2.406 1.455 3.620 2.202 0.060 7.183
466
Journal of Systems Engineering and Electronics Vol. 22, No. 3, June 2011 Table 3 m
n
200 300 2 400 500 600 200 300 4 400 500 600 200 300 6 400 500 600 200 300 8 400 500 600 Statistic
Gap(ERD-EST) Average Minimum Maximum 4.413 0.236 9.932 2.647 0.283 6.599 2.304 0.396 5.237 1.986 0.399 4.793 1.341 0.085 3.728 10.323 4.705 20.564 7.504 2.765 16.032 5.626 2.050 12.729 4.244 1.235 10.610 3.439 0.943 6.115 16.740 7.465 33.777 12.058 5.539 23.714 8.830 2.634 22.521 7.377 2.137 19.046 5.676 1.374 10.996 24.664 10.547 49.272 16.134 6.895 32.473 12.578 6.698 25.396 10.135 4.708 20.409 8.848 4.141 21.346 8.343 0.085 49.272 Table 3
m
n
200 300 2 400 500 600 200 300 4 400 500 600 200 300 6 400 500 600 200 300 8 400 500 600 Statistic
Experiment results for the problems with r ∼U[0,20]and q ∼U[0,50]] Gap(ERD-ECT) Average Minimum Maximum 4.152 0.553 9.119 2.465 0.283 7.003 2.175 0.220 4.646 1.770 0.192 3.369 1.224 0.081 2.991 8.981 3.850 15.779 5.949 2.335 11.662 4.590 1.110 8.567 3.813 1.330 6.652 2.821 0.630 5.303 13.578 2.904 25.143 9.705 4.558 16.225 7.211 2.879 11.780 5.836 2.446 10.041 4.846 1.665 8.909 20.306 7.664 30.760 12.884 6.380 20.813 9.992 4.484 14.545 8.111 3.849 11.816 6.754 3.307 10.358 6.858 0.081 30.760
Gap(LRPDH) Average Minimum Maximum 0.333 0.041 1.098 0.164 0.002 0.642 0.112 0.000 0.355 0.074 0.001 0.186 0.048 0.000 0.198 0.844 0.213 1.791 0.469 0.176 1.704 0.282 0.096 0.609 0.209 0.039 0.595 0.147 0.033 0.420 1.475 0.542 2.822 0.881 0.260 3.085 0.541 0.180 1.540 0.356 0.123 0.962 0.280 0.095 0.721 2.486 1.004 5.566 1.333 0.576 2.870 0.783 0.362 1.994 0.540 0.200 1.677 0.424 0.139 1.101 0.589 0.000 5.566
Gap(1) Average Minimum Maximum 3.667 0.195 7.350 2.246 0.280 5.588 2.019 0.219 4.100 1.666 0.190 3.080 1.162 0.081 2.713 7.467 3.502 12.082 5.173 2.110 8.918 4.120 1.002 7.329 3.471 1.181 5.679 2.601 0.593 4.637 10.656 2.295 17.836 8.043 4.110 11.306 6.222 2.391 9.160 5.178 1.972 8.250 4.355 1.262 7.518 14.811 6.185 19.268 10.232 5.456 14.852 8.372 3.945 10.958 7.003 3.514 9.067 5.930 3.066 8.388 5.720 0.081 19.268
Experiment results for the problems with r ∼U[0,20] and q ∼U[0,20]
Gap(ERD-EST) Average Minimum Maximum 2.012 0.198 5.944 1.296 0.188 4.886 0.989 0.156 3.494 0.786 0.139 2.282 0.615 0.085 2.441 6.022 2.146 20.558 4.210 1.101 16.213 3.154 0.927 11.436 2.106 0.430 6.928 2.046 0.774 5.275 11.007 3.299 32.529 6.904 2.842 26.575 6.011 1.817 18.258 4.715 1.326 18.329 3.347 1.060 10.780 15.523 6.514 40.724 10.351 3.995 29.882 7.723 2.934 18.916 3.572 1.780 5.554 4.700 1.902 15.394 4.854 0.085 40.724
Gap(ERD-ECT) Average Minimum Maximum 1.624 0.334 3.996 0.962 0.174 2.319 0.818 0.137 1.944 0.675 0.046 1.639 0.492 0.101 1.058 3.880 1.236 7.392 2.513 0.889 4.645 1.876 0.536 3.486 1.549 0.582 2.981 1.210 0.364 2.448 5.751 2.589 11.180 4.106 1.865 6.767 3.076 1.086 5.931 2.464 0.881 4.691 2.024 0.751 3.667 8.931 4.638 14.457 5.642 2.977 9.385 4.171 1.887 6.849 3.572 1.780 5.554 2.936 1.451 5.272 2.914 0.046 14.457
In Table 2, we give the experiment detail for the problem with r∼U[0,50] and q∼U[0,20]. For the data with large heads and little tails, three heuristics are all improved in different degree compared with the data in Table 1. The average relative error of LRPDH is 0.596%, and the worst error is 6.392%. However, the average gap that LRPDH im-
Gap(LRPDH) Average Minimum Maximum 0.179 0.000 0.712 0.083 0.000 0.250 0.049 0.000 0.175 0.037 0.000 0.160 0.024 0.000 0.102 0.440 0.124 1.083 0.234 0.047 0.586 0.149 0.020 0.504 0.109 0.013 0.335 0.072 0.007 0.220 0.847 0.269 1.926 0.453 0.160 1.367 0.290 0.086 1.007 0.202 0.048 0.536 0.141 0.028 0.354 1.264 0.471 3.439 0.688 0.258 1.737 0.425 0.088 0.967 0.293 0.089 0.744 0.224 0.076 0.602 0.310 0.000 3.439
Gap(1) Average Minimum Maximum 1.422 0.198 3.158 0.870 0.173 2.023 0.763 0.137 1.735 0.634 0.046 1.455 0.466 0.085 0.946 3.311 1.098 5.875 2.222 0.835 3.879 1.696 0.514 2.881 1.418 0.414 2.570 1.124 0.356 2.175 4.638 2.262 8.323 3.510 1.674 5.058 2.703 0.989 4.648 2.207 0.825 3.968 1.846 0.718 3.195 7.038 3.982 9.626 4.690 2.640 6.992 3.596 1.766 5.505 3.166 1.662 4.557 2.634 1.355 4.436 2.498 0.046 9.626
proves the better solutions between ERD-EST and ERDECT is only 2.202%, and is lower than the corresponding value in Table 1. The data in Table 3 are obtained with the setting r∼U[0,20] and q∼U[0,50]. When the heads are little while the tails are large, the relative error of LRPDH is 0.589%, which is better slightly than the value in Table 2. However,
Kai Li et al.: Heuristic algorithms for scheduling on uniform parallel machines with heads and tails
the quality of the values that ERD-EST and ERD-ECT obtained are more inferior than those in Table 2, therefore LRPDH can improve them in a large degree. The average gap that LRPDH improves the better solutions between ERD-EST and ERD-ECT is 5.720%, and the maximal gap arrives at 19.268%. Table 4 gives the experiment results for the problem with r∼U[0,20] and q∼U[0,20]. When the heads and the tails are all little, the average relative error of LRPDH is only 0.310%, and the worst relative error is only 3.439%. Overall, from all the data in Tables 1–4, we can find: (i) In each table, if the job number is larger or the machine number is less, then the solutions obtained by the same algorithm are better. We analyze the reason comes from the lower bound. Because we relax the uniform parallel machine problem to single machine problem, the quality of the lower bounds deteriorate if the machine number is large. If the job number is large enough, then each subschedule can get a balance, the quality of lower bounds can be improved. (ii) The accuracy of the LRPDH algorithm is dependent on the settings of a certain problem. When the release dates and delivery times are all large, the average relative error of LRPDH is 1.173%. When one of the heads and the tails is little while the other one is large, the average relative error of LRPDH is 0.596% in Table 2 and 0.589% in Table 3 respectively. When the head and the tail are both little, the solutions obtained by LRPDH are very accurate, the average relative error is only 0.310%. (iii) The minimal values of Gap(1) in all the four tables are all larger than 0, therefore the solutions obtained by LRPDH are always superior to that of ERD-EST an ERDECT for all 8 000 instances. (iv) For all 8 000 instances with different settings, the average relative error of LRPDH is only 0.667%. It shows that LRPDH is very accuracy and its solutions are very close to the optimal solutions.
6. Conclusions In this paper, we propose a new heuristic algorithm LRPDH for a uniform parallel machine problem with heads and tails so as to minimize the maximal completion time. We also develop a lower bound for the problem to evaluate the accuracy of the proposed algorithm. The performance of LRPDH is also tested with traditional heuristics ERD-EST and ERD-ECT. As shown in the computational results, the solutions obtained by LRPDH have the best quality among the heuristics and are close to the optimal solutions. We are attempting to introduce meta-heuristic algorithms, such as simulated annealing, genetic algorithm,
467
particle swarm optimization method and so on, to improve the quality of LRPDH solutions.
Referenceies [1] [2] [3] [4] [5] [6] [7] [8]
[9] [10]
[11] [12]
L. A. Hall, D. B. Shmoys. Jackson’s rule for single-machine scheduling: making a good heuristic better. Mathematics of Operations Research, 1992, 17(1): 22–35. J. Carlier. Scheduling jobs with release dates and tails on identical parallel machines to minimize the makespan. European Journal of Operational Research, 1987, 29: 298–306. E. N´eron, F. Tercinet, F. Sourd. Search tree based approaches for parallel machine scheduling. Computers & Operations Research, 2008, 35(4): 1127–1137. N. Vakhania. Single-machine scheduling with release times and tails. Annals of Operations Research, 2004, 129(1-4): 253–271. A. Gharbi, M. Haouari. An approximate decomposition algorithm for scheduling on parallel machines with heads and tails. Computers & Operations Research, 2007, 34(3): 868–883. M. Mastrolilli. Efficient approximation schemes for scheduling problems with release dates and delivery times. Journal of Scheduling, 2003, 6(6): 521–531. J. Carlier, E. Pinson. Jackson’s pseudo preemptive schedule for the Pm |ri , qi |Cmax scheduling problem. Annals of Operations Research, 1998, 83: 41–58. M. M. Dessouky. Scheduling identical jobs with unequal ready times on uniform parallel machines to minimize the maximum lateness. Computers & Industrial Engineering, 1998, 34(4): 793–806. C. Koulamas, G. L. Kyparisis. Makespan minimization on uniform parallel machines with release times. European Journal of Operational Research, 2004, 157(1): 262–266. K. Li, S. C. Zhang. Heuristics for uniform parallel machine scheduling problem with minimizing makespan. Proc. of the IEEE International Conference on Automation and Logistics, 2008: 273–278. C. Koulamas, G. J. Kyparisis. Scheduling on uniform parallel machines to minimize maximum lateness. Operations Research Letters, 2000, 26(4): 175–179. K. Li, M. L. Ren, S. C. Zhang. Variable neighborhood search algorithm for uniform parallel machine scheduling with delivery times. Journal of Systems & Management, 2009, 18(2): 206–210. (in Chinese)
Biographies Kai Li was born in 1977. He received his Ph.D. degree in management science and engineering from Hefei University of Technology in 2009. He is currently a lecturer in School of Management of Hefei University of Technology. His research interests include scheduling and optimization algorithm. E-mail:
[email protected]
Shanlin Yang was born in 1948. He is a professor and Ph.D. advisor of Management Science and Engineering at Hefei University of Technology. His research interests include the use of information technology and optimization technology to support decision making. E-mail:
[email protected]