A simulated annealing approach for the one-machine mean tardiness scheduling problem

A simulated annealing approach for the one-machine mean tardiness scheduling problem

EUROPEAN JOURNAL OF OPERATIONAL RESEARCH ELSEVIER European Journal of Operational Research 93 (1996) 61-67 Theory and Methodology A simulated annea...

474KB Sizes 46 Downloads 67 Views

EUROPEAN JOURNAL OF OPERATIONAL RESEARCH ELSEVIER

European Journal of Operational Research 93 (1996) 61-67

Theory and Methodology

A simulated annealing approach for the one-machine mean tardiness scheduling problem M. Ben-Daya

*, M . A 1 - F a w z a n

Systems Engineering Department, King FalM University of Petroleum and Minerals, Dhahran 31261, Saudi Arabia Received October 1993; revised May 1995

Abstract

In this paper we propose a simulated annealing approach for solving the single machine mean tardiness scheduling problem. The results of a simulation experiment indicate that the proposed method provides much better solutions than two heuristics that gave good results in previous studies. More importantly, the solutions obtained are within less than 1% of optimal solutions. Keywords: Single machine scheduling; Mean tardiness; Heuristics; Simulated annealing

1. I n t r o d u c t i o n

Single machine scheduling problems are very common in practice. Besides the clear cut cases involving a single machine, there are situations where job shops with more than one machine that can be treated as a single machine problem. This is the case for example when one machine acts as a bottle-neck. It makes sense to treat the problem as a single machine problem, if only to get an approximation to the problem [6]. Consider n jobs which are simultaneously available at time zero that need to be processed on a single machine. Each job has a sequence independent processing time Pi and a due date d v The machine is available for continuous processing of the jobs. Once a job begins processing it is completed without interruption (no preemption).

* Corresponding author, e-mail: [email protected]

The problem is to determine a processing sequence which minimizes mean tardiness T given by 1 n

T=

~

max{O, C i - di} ,

ni= 1

where C i is the completion time of job i. The one-machine mean tardiness problem is NPhard [3]. Optimal solutions can only be obtained via enumeration techniques such as branch and bound [5] and dynamic programming [1]. However, these methods may take a prohibitive amount of computation even for medium-size problems and become intractable for large problems. This leads to the development of heuristic procedures. One of the earliest heuristics proposed for solving the mean tardiness problem is the Wilkerson-Irwin [12] procedure based on the methodology of Adjacent Pairwise Interchange (API) and the dominance properties developed by Emmons [4]. Better results

0377-2217/96/$15.00 Copyright © 1996 Elsevier Science B.V. All rights reserved SSDI 0 3 7 7 - 2 2 1 7 ( 9 5 ) 0 0 1 4 9 - 2

62

M. Ben-Daya, M. AI-Fawzan / European Journal of Operational Research 93 (1996) 61-67

were obtained by Fry et al. [7] who employed the best of nine API strategies. More recently Holsenback and Russel [8] presented yet another heuristic procedure which exploits the dominance theorems of Emmons. A simulated annealing approach was proposed by Potts and Van Wassenhove [11]. Simulated annealing methods have gained wide attention in recent years in solving many combinatorial optimization problems. The approach has been applied to optimization problems by Kirkpatrick et al. [9]. Applied to the one-machine mean tardiness scheduling problem, the simulated annealing approach works as follows. Given an initial sequence, a new sequence is generated by randomly interchanging two jobs. The new sequence is accepted if its mean tardiness is better than that of the original sequence, otherwise it is accepted with some probability which decreases as the process evolves. In this paper we propose a simple implementation of the simulated annealing approach for solving the one-machine mean tardiness problem. The proposed algorithm is compared to the heuristics of Fry et al. [7] and Holsenback and Russel [8] through a simulation experiment involving a set of randomly generated problems. The optimal solution of the test problems was also obtained using an optimal solution procedure developed by Potts and Van Wassenhove [10]. The proposed simulated annealing algorithm produced solutions superior to those obtained using the other two heuristics and within less than 1% of the optimal solution. This paper is organized as follows. Heuristic algorithms proposed by Fry et al. and Holsenback et al. for the one-machine mean tardiness scheduling problem are briefly described in the next section. In Section 3, we present the proposed simulated annealing approach and compare it to the implementation in [11]. The simulation experiment and its results are the object of Section 4. Finally, concluding remarks are presented in the last section.

2. Heuristic procedures In this section we briefly discuss the best heuristics available for solving the single machine mean tardiness problem.

2.1. Fry et al.'s heuristic

Fry et al. [7] proposed a heuristic based on the Adjacent Pairwise Interchange (API) methodology for solving the single machine total tardiness scheduling problem. They combined three different initial sequences with three different switching strategies. The three API strategies used are: 1. API begins at the first position in sequence and proceeds front to back. When a pair of jobs to be switched is found, the switch is made, and the search for a favorable switch begins again at the first position in sequence. When we determine that the last job pair is not to be switched, a local optimum has been found. 2. API begins at the last position in sequence mad proceeds back to front. When this strategy determines that the first pair is not switched, a local optimum has been reached. 3. API evaluates all adjacent pairs of jobs before switching. The adjacent pair that if switched would most reduce total tardiness is then identified and switched. After an adjacent pair has been switched, the procedure again considers all adjacent pairs. When no more beneficial switches exist, a local optimum has been reached. The three initial sequences that will be evaluated by each of the API strategies are the earliest due date (EDD), the shortest processing time (SPT), and the smallest slack sequences (SLK). The final solution is the best among the nine sequences obtained using the three API strategies combined with the three initial sequences. 2.2. Holsenback and Russel' s heuristic

The heuristic proposed by Holsenback and Russel [8] is based on some results due to Emmons [4]. The procedure starts with the EDD sequence based on modified due dates determined using Emmons' Theorem 1 dominance relationship. Then, the set of jobs that can occupy the last position in an optimal sequence are identified using some dominance properties. The authors developed a procedure for evaluating these jobs which are candidates for the last position. This calculation is called Net Benefit Relocation (NBR). It measures the improvement in mean

M. Ben-Daya, M. AI-Fawzan / European Journal of Operational Research 93 (1996) 61-67

tardiness obtained from job relocation within the sequence. After a relocation is carried out, the procedure is repeated for the remaining jobs until the job in position 1 has been considered. The details of their method are outlined below.

63

Step 7. Final ordering is complete. Apply the original due date if any were modified and compute the tardiness of the schedule,

3. Simulated annealing

Algorithm Step 1. Label all jobs (J1, J2 . . . . . jn). Adjust all due dates according to the following rule: A n y job Jk with a due date less than its processing time will have its due date modified to d~ = max(pk, dk). Order the jobs by non-decreasing due dates and in the case of equality, by non-decreasing processing times. Renumber the jobs so that this sequence is

(J~, J2 . . . . . L). Calculate the slack and tardiness of each job in the sequence. Step 2. Beginning with the job in the last position, Jn, and incrementally proceeding toward J l , identify the first job, Jk, with Tk > Pk. If none exists, proceed to Step 7. Step 3. Beginning with Jk-1 and continuing toward J1, identify the first preceding job, Jj, with the property pj. > PkIf none exists, proceed to Step 6. Beginning with Jj_ l and continuing toward Jl, identify the first preceding job, Jy-m, with the property pj_m > pj. Continue in this manner until J~ has been considered. Step 4. Compute the NBR i for each job, Ji, identified in Step 3, considering that it will be relocated to a position immediately following Jk" Relocate the job, Ji, yielding the greatest NBR i, subject to the constraint NBR i > 0. If no NBR i > 0, proceed to Step 6. If two or more jobs yield the same NBR i, relocate the job with the greatest processing time. Step 5. Renumber the current sequence as (J1, J2 . . . . . J~) and recompute the corresponding tardiness and slack. Step 6. Begin with the job in position k - 1 and repeat Steps 2-4, substituting k - 1 for k. Continue in this fashion until the job in position 1 has been considered.

3.1. The approach Simulated annealing methods have gained wide attention in recent years in solving many combinatoriai optimization problems. The approach has been applied to optimization problems by Kirkpatrick et al. [9]. A basic feature of this approach is its ability of avoiding getting trapped in a local optimum. This is due to 'hill climbing moves' controlled by some parameter. The method is less likely to move away from the optimal solution toward the end of the process. Applied to the mean tardiness scheduling problem, the simulated annealing approach works as follows. Given an initial sequence, a new sequence is generated by randomly interchanging two jobs. The new sequence is accepted if its mean tardiness is better than that of the original sequence, otherwise it is accepted with some probability which decreases as the process evolves. The acceptance probability is of the form

pa

e-~ At,

where a is a control parameter which is increased during the search and At is the increase in mean tardiness. If after the random pairwise interchange mean tardiness increases, the new sequence is accepted if

Pa> r, where r is a random number between 0 and 1. This process is terminated when some stopping criterion is satisfied.

3.2. Implementation details In this subsection, we describe the implementation details of the simulated annealing algorithm used in this study. The most important elements of a simulated annealing algorithm include: 1) initial sequence;

64

M. Ben-Daya, M. Al-Fawzan / European Journal of Operational Research 93 (1996) 61-67

2) pairwise interchange mechanism; 3) the way in which the parameters of the acceptance probability are changed; and 4) the stopping criterion. The implementation of each of these elements is as follows: • Several initial sequences were investigated in a preliminary experiment to justify a starting solution. This issue will be discussed in more detail in the next section. • A new neighboring sequence is generated by randomly selecting two different integers between 1 an n. Then the jobs in theses positions are interchanged. For example, if the current sequence is 1-2-3-4-5-6 and the second and fifth positions were selected, then the new sequence is 1-5-3-4-2-6. • Several methods for changing the parameter ot were investigated. A method suggested in [2] was found to give good results. According to this method, at the k-th iteration, et is given by o~ = k/(10013), where 13 is an experimental constant (e.g. 13= 0.75). Better results were obtained if a is changed as follows: cx = 10 + COUNT*STEP* 2,

where COUNT is incremented by 1 at every iteration and STEP = 2. • The algorithm is terminated after 2000 non-improving iterations. The efficiency of the proposed simulated annealing approach is measured by the percent deviation from the optimal solution.

3.3. Comparison with Potts and Van Wassenhove's implementation Another implementation of the simulated annealing approach designed for solving the mean tardiness problem was proposed by Potts and Van Wassenhove [11]. A comparison of their algorithm with our implementation is summarized in Table 1. The interweaving procedure implemented in [11] works as follows. When the annealing process hits the first decrease after accepting a certain number of increases in the objective function, the annealing process is stopped and a simple pairwise interchange search is performed. Increases in the objective function are rejected until a local minimum is reached. The annealing process is then resumed. This interweaving process was not considered in our implementation.

Table 1 Comparison of our implementation with that of Potts and Van Wassenhove Main elements of simulated annealing

Potts & Van Wassenhove

Our implementation

Neighborhood structure Neighborhood size Probability of acceptance (p.a.)

All adjacent pairwise interchanges

Interchange two randomly selected jobs 1

½n(n- 1) Let K o = 0.99 be initial p.a. K f = 10 - 4 be final p.a. L = 10 a = ( K f / K o ) I/(L- l) Ki+ l = aKi Z: best solution so far z= -0.01Z/In g i A: increase in objective function

Pa = e x p ( - o t * A) a = 10 + COUNT*STEP*2 (see description of the algorithm

Po = exp(- A/z) Interweaving procedure Number of iterations

implemented I0000 or 12500 for n = 50 20000 or 49500 for n = 100

not implemented 2000 non-improving iterations

65

M. Ben-Daya, M. A I-Fawzan/European Journal of Operational Research 93 (1996) 61-67 Table 2 Results for the set of problem taken from the literature n

#

8* 10"* 10" ** 10"**

16 1 1 1

Fry et al.

Holsenback et al.

Simulated annealing

~T

Time a

Best b

~T

Time

Best

ET

Time

Best

11 219 82 51 64

0.21 0.09 0.09 0.09

15 0 1 0

1i 370 74 51 14948

0.12 0.05 0.05 0.05

12 1 1 0

11186 74 51 57

22 2 2 2

16 1 1 1

Optimal solution 11186 74 51 57

#: Number of problems of size n. ET: Total tardiness. a CPU time in seconds. b Number of problem for which the method found the best solution. c References: * [1], * * : [12], and * * * : [8].

on a 486 PC. The optimal solutions were obtained using an IBM 3090 mainframe computer. A simulation experiment was carried out to compare these three methods for solving the single machine mean tardiness problem. Two sets of problems were used in the simulation: 1) a set of problems with known optimal solutions taken from the literature [1,8,12]; 2) a set of randomly generated problems. For the second set problems of n = 10, 20, 40, 60, 80 and 100 jobs were generated as follows.

It is clear from this comparison that the proposed implementation is much simpler and requires only one random pairwies interchange (neighborhood of size 1).

4. Comparative study The simulated annealing approach described in Section 3, Fry et ai.'s heuristic and Holsenback and Russel's heuristic were coded in FORTRAN and run

Table 3 Computational results for the second set n

RDD

10 20 40 60 80 100

0.4 0.8 0.4 0.8 0.4 0.8 0.4 0.8 0.4 0.8 0.4 0.8

Fry et al.

Holsenback et al.

Simulated annealing Time

Dev.

solution

8 7 12 12 22 25 95 103 240 232 420 410

0.00 0.00 0.00 0.00 0.02 0.24 0.40 1.20 1.15 0.10 1.49 1.43

681 570 1659 1208 9624 8346 14204 11445 25399 24966 36535 30406

F.T

Time a

Dev. b

Y'.T

Time

Dev.

ET

705 593 1659 1214 9897 8401 14264 11605 25958 24994 37624 31226

6 24 38 37 600 602 2880 2892 9600 9589 21600 21612

3.52 4.03 0.00 0.50 2.80 0.65 0.42 1.40 2.20 0.11 2.98 2.70

705 570 1659 1208 10074 8370 14948 11687 28668 25916 39795 34082

1 1 2 2 3 3 4 4 8 8 10 10

3.52 0.00 0.00 0.00 4.67 0.28 5.23 2.11 12.87 3.80 8.92 12.08

681 570 1659 1208 9626 8366 14261 11585 25692 34990 37081 30842

Average deviation ET: Total tardiness. a CPU time in seconds. b Percent deviation from optimal.

1.77

6.53

Optimal

0.75

66

M. Ben-Daya, M. Al-Fawzan / European Journal of Operational Research 93 (1996) 61-67

1. Processing times: The processing times for the n jobs are generated from a uniform distribution [1, 100]. 2. Due dates: Due dates with different levels of tightness were generated as proposed in [11]. Once the processing times of the n jobs are generated, the total processing time P = Ei~ 1Pi is computed. Then the due date for each job is generated from the uniform distribution

[P(1-

T F - ½ R D D ) , P(1 - TF + ½RDD)],

where TF is the average tardiness factor and RDD is the range of due dates. The settings for TF and RDD are as follows: TF RDD

0.6 0.4

0.6 0.8

Notice that these settings produce harder problems (problems with tighter due dates). Other settings produced problems for which all methods produced similar solutions and close to the optimal solution, in preliminary investigations. Therefore we restricted reported results to this set of difficult problems. We investigated also the effect of the initial sequence on the performance of the simulated annealing method. The initial sequences used are: 1) Earliest Due Date (EDD) sequence; 2) Smallest Processing Time (SPT) sequence; 3) Smallest Slack (SLK) sequence. The results obtained using these sequence as a seed for the simulated annealing algorithm are quite similar with a slight advantage when the EDD sequence is used. This result is expected since EDD directly considers jobs due dates. The EDD sequence will be used as the seed in the simulation experiment. The results of the comparison of the three heuristics under study are summarized in Table 2 for the problems taken from the literature and in Table 3 for the problems generated randomly as described above. The simulated annealing achieved the optimal solution for all the problems taken from the literature. For the second set, it is clear, from Table 3, that the simulated annealing approach produced much better results than the other two heuristics. More importantly the solution produced are within 0.75%

of the optimal solution on the average with a maximum deviation of 1.49%. These figures would have been even lower have we considered easier problems in the set of problems tested. Being an improvement heuristic, i.e., one that can be started with any sequence, simulated annealing has yet another advantage. It can be used to improve the results obtained using any other heuristic. Notice also that, compared to Fry et al.'s heuristic, simulated annealing is much faster, especially for larger problems.

5. Conclusion In this paper we propose a simulated annealing approach for solving the single machine mean tardiness scheduling problem and compare this approach to the best heuristics available. The results of a simulation experiment indicate that the proposed method provides much better solutions than two heuristics that gave good results in previous studies. More importantly, the solutions obtained by the proposed algorithm are within less than 1% of the optimal solution. Another advantage of the simulated annealing approach is that it can be used to improve the solution obtained using other methods.

Acknowledgements The authors are grateful to the referees for their helpful comments, and to Chris Potts for supplying the computer code for the Potts and Van Wassenhove algorithm. They would like also to acknowledge the King Fahd University of Petroleum and Minerals for excellent research facilities.

References [1] Baker, K.R., Introduction to Sequencing and Scheduling, Wiley, New York, 1974. [2] Ben-Arieh, D., and Maimon, O., "Annealing method for PCB assembly scheduling on two sequential machines", International Journal of Computer Integrated Manufacturing 5 / 6 (1992) 361-367.

M. Ben-Daya, M. Al-Fawzan / European Journal of Operational Research 93 (1996) 61-67 [3] Du, J., and Leung, J.Y.T., "Minimizing total tardiness on one machine is NP-hard", Mathematics of Operations Research 15 (1990) 483-495. [4] Emmons, H., "One machine sequencing to minimize certain functions of job tardiness", Operations Research 17 (1969) 701-715. [5] Fisher, M.I., " A dual algorithm for the one-machine scheduling problem", Mathematical Programming 11 (1976) 229251. [6] French, S., Sequencing and Scheduling: An Introduction to the Mathematics of the Job Shop, Ellis Horwood, Chichester, 1982. [7] Fry, T.D., Vicens, L., Macleod, K., and Fernandez, S., " A heuristic solution procedure to minimize T on a single machine", Journal o f the Operational Research Society 40 (1989) 293-297.

67

[8] Holsenback, J.E., and Russel, R.M., " A heuristic algorithm for sequencing on one machine to minimize total tardiness", Journal of the Operational Research Society 43 (1992) 5362. [9] Kirkpatrick, S., Gelatt, C., and Vecchi, M., "Optimization by Simulated Annealing", Science 20/4598 (1983) 671-680. [10] Potts, C.N., and Van Wassenhove, L.N., " A decomposition algorithm for the single machine total tardiness problem", Operations Research Letters 32 (1982) 177-181. [11] Potts, C.N., and Van Wassenhove, L.N., "Single machine tardiness sequencing heuristics", liE Transactions 2 3 / 4 (1991) 346-354. [12] Wilkerson, J., and Irwin, J.D., "An improved algorithm for scheduling independent tasks", AIIE Transactions 3 (1971) 239-245.