Approximate procedures for minimizing total completion time in a ...

1 downloads 0 Views 46KB Size Report
Approximate procedures for minimizing total completion time in a single machine scheduling problem subject to release dates. Mohamed Ali Rakrouki1 and ...
Approximate procedures for minimizing total completion time in a single machine scheduling problem subject to release dates Mohamed Ali Rakrouki1 and Talel Ladhari1 1

Unité de recherche ROI Ecole Polytechnique de Tunisie, BP 743, 2078 La Marsa, Tunisia e-mail: [email protected], [email protected] Keywords: Single machine, flow time, release dates, local search.

1.

Introduction

In this paper we consider the problem of minimizing the sum completion times on a single subject to unequal release dates. The problem can be defined as follows. A set of n jobs (j = 1,2,…,n) are to be scheduled without preemption on a single machine. Each job has a release time rj and a processing time pj. The objective is to minimise the sum ΣCj of completion times Cj of all jobs. The 1∣rj∣∑Cj scheduling problem is known to be NP-hard in the strong sense (Rinnooy kan 1976). With equal release dates the problem is solved in polynomial time by Shortest Processing Time (SPT) priority rule (Smith 1956). The preemptive version of the problem, 1∣rj,pmtn∣∑Cj is optimally solvable in O(n log n) time with the Shortest Remaining Processing Time (SRPT) priority rule (Baker, (1974)). This rule consists of scheduling the job which has the shortest remaining processing time among the available jobs. Ahmadi and Bagchi (1990) have proven that the optimal solution of 1∣rj,pmtn∣∑Cj given by SRPT is the best available lower bound for the 1∣rj∣∑Cj. Della Croce and T’kindt (2003) have proposed an improvement on this bound by exploiting the properties of the preemptive solution. The 1∣ rj ∣∑Cj problem has been extensively studied in the literature. Several branch-andbound algorithms and/or dominance properties have been designed for the single machine total completion time subject to release dates (see Chandra (1979); Dessouky and Deogun (1981); Deogun (1983); Chu (1991); Chand et al. (1996a); Jouglet et al. (2008)). Many efforts have been developed to obtain near optimal solutions (see for instances Chu (1992a); Liu and MacCarthy (1991); Reeves (1995); Chand et al. (1996b) and (1997); Della Croce and T’kindt (2002); Jouglet et al. (2008)).

2.

Approximate algorithms

In this section, we present three constructive heuristics and three local search based procedures for the problem under consideration. 2.1. Constructive methods HC is based on the priority rule for total flow time (PRTF) described in Chu (1992a) for the 1|rj|∑Cj. The function PRTF(i,∆) of a job j at the time ∆ is PRTF(i,∆) = 2max(∆,rj)+pj. The basic idea for this heuristic is building the solution in an iterative way, adding at each iteration the job with higher priority and finding the best partial solution. We denote by σ: a partial sequence of the scheduled jobs, J': the set of unscheduled jobs, Cσ: the minimum completion time of σ. HC can be described as follows. Step 0: σ=Ø; J'=J. Step 1: Arrange the jobs in J' in nondecreasing order of Tj = 2rj+pj. Let Π=(π(1),π(2),....π(n)) denote the resulting sequence. Step 2: Among the partial sequences σ=π(1)π(2) and σ=π(2)π(1), select the one with the minimum partial total completion time. Set J'=J'\{π(1),π(2)}. Step 3: Calculate Sj=2max(Cσ,rj)+pj for each job j∈J'. Step 4: Find the job j* having the minimum Sj*. Set J'=J'\{j*}. Step 5: Select the job j* and insert it in k+1 possible positions of σ. Among k+1 sequences, select the one with the minimum partial total completion time and set it as the current σ.

Step 6: If J'=Ø then stop otherwise go to Step 3. HP consists of randomly perturbing rj and pj as follows: r'j= rj ± A×rj/100; p'j= pj ± B×rj/100. We resolve the problem using HC heuristic with the new values of r'j and p'j and we calculate the total completion time for the obtained sequence with the original values of rj and pj. We repeat this step for different values of A and B (A = B∈{3,4,5,6,7,8}) and we select the best solution. BBH is based on a branch-and-bound algorithm without backtracking. The algorithm starts with an initial infinite upper bound. At each level of search tree we choose the node having the smallest lower bound among the most recently created nodes. We stop when obtain a feasible solution. A lower bound is obtained by solving the preemptive version of the problem under consideration. 2.2. Local search methods HLS1 and HLS2 We improve HC algorithm by means of a local search procedure with different ways. We have used the following neighborhood in the local search method: Exchange(π,i,j) : Given a permutation π, with k jobs, a neighbor π′ is obtained by interchanging the jobs in positions i and j. The positions i and j are randomly selected. Local_Search_Procedure(π,k) Step 1 : π′= Exchange(π,i,j). Step 2 : If ∑Cj(π′) < ∑Cj(π) then replace π by π′. Step 3 : If the termination condition is not reached then goto Step 1; Two variants of HC are obtained using this local search procedure. HLS1: Step 1 to 5: As HC. Step 6: Call Local_Search_Procedure(σ,k). Step 7: If J'=Ø then stop otherwise go to Step 3. HLS2: Step 1 to 4: As HC. Step 5: Select the job j* and insert it in k+1 possible positions of σ. Call Local_Search_Procedure(σ,k) for the all k+1 sequences. Among the improved sequences, select the one with the minimum partial total completion time and set it as the current σ. Step 6: If J'=Ø then stop otherwise go to Step 3. Genetic Local Search We give a brief description of the main components of the a genetic local search algorithm (GLS). The initial population consists of M (M=200) permutations. M-1 chromosomes are generated randomly while a single chromosome is generated using HC heuristic. With a probability Pc=0.9, we used three different crossover operators: Two versions of the two-point crossover (used with a probability Pc1= Pc2=0.3) and the three-point crossover (used with a probability Pc3=0.4). The mutation step is used with a probability PM=0.7. Two mutation operators adopted are: The random exchange mutation and the insertion mutation (used with a probability PM1= PM2=0.5). The GLS stops either when a maximum number of 100×n generation has been surpassed or when the best solution of the population has not been improved on over 10×n consecutive generations. After the mutation step, we apply local search phase using two procedures. The first procedure generates k (k=30) neighbors for each solution in the population using random exchanging and insert the best to the population. The second procedure improves each solution in the population by means of random exchanging and adjacent swapping.

3.

Computational results

All the computational experiments were carried out on a PIV 3 GHz PC with 1GB RAM. The instances are generated using the same scheme and the same sizes (n) as the test problems of Jouglet et al., (2008). The performance analysis is based on two measures : average relative gap from the optimal solution (gapOpt) on problems with up to 100 jobs and average relative gap from the SRPT lower bound (gapLB) on problems with up to 200 jobs.

Table 1. Computational performance of the proposed algorithms n 10 20 30 40 50 gapOpt 60 70 80 90 100 Average gap 100 gapLB 150 200 Average gap

HC 0.4914 0.5498 0.5609 0.5991 0.5271 0.5379 0.4892 0.4291 0.4314 0.3918 0.5008 0.5367 0.4004 0.3282 0.4217

HP 0.3491 0.3542 0.3668 0.4106 0.2873 0.2881 0.2034 0.2468 0.2139 0.2286 0.2949 0.3732 0.2600 0.2044 0.2792

BBH 8.1951 8.8240 7.1472 6.5748 5.7248 5.1649 4.7542 4.1041 3.8258 3.6632 5.7978 3.8112 2.7991 2.2951 2.9685

HLS1 0.1654 0.0834 0.2129 0.1471 0.1731 0.1650 0.1394 0.1281 0.1411 0.1283 0.1484 0.2726 0.1815 0.1670 0.2070

HLS2 0.0123 0.0069 0.0167 0.0155 0.0209 0.0153 0.0162 0.0139 0.0121 0.0120 0.0142 0.1561 0.1048 0.0833 0.1147

GLS 0.0000 0.0000 0.0000 0.0012 0.0013 0.0012 0.0022 0.0024 0.0031 0.0029 0.0014 0.1470 0.0973 0.0763 0.1068

The results of Table 1 provide strong evidence that HLS2 and GLS are very effective and outperform all the proposed heuristics. Indeed, GLS reaches the optimum for 100% of the instances for instance sizes lower than or equal to 30.

References [1] Ahmadi, R.H. and Bagchi, U. (1990). Lower Bounds for Single-Machine Scheduling Problems, Naval Research Logistics, 37, 967-979. [2] Baker, K.R. (1974). Introduction to Sequencing and Scheduling. John Wiley. [3] Chand, S., Traub, R. and Uzsoy, R. (1996a). Single-Machine Scheduling with Dynamic Arrivals: Decomposition Results and an Improved Algorithm, Naval Research Logistics, 43, 709-716. [4] Chand, S., Traub, R. and Uzsoy, R. (1996b). An iterative heuristic for the single-machine dynamic total completion time scheduling problem, Computers and Operations Research, 23, 641-651. [5] Chand, S., Traub, R. and Uzsoy, R. (1997). Rolling horizon procedures for the single machine deterministic total completion time scheduling problem with release dates, Annals of Operations Research, 70, 115-125. [6] Chandra R. (1979). On n/1/F dynamic deterministic Systems, Naval Research Logistics, 26, 537-544. Chu, C. (1992a). Efficient Heuristics To Minimize Total Flow Time with Release dates, Operations Research Letters, 12, 321-330. [7] Chu, C. (1991). A branch and bound algorithm to minimize total flow time with unequal release dates, Naval Research Logistics 39, 859-875. [8] Chu, C. (1992a). Efficient heuristics to minimize total flow time with release dates, Operations Research Letters 12, 321-330. [9] Chu, C. (1992b). A Branch and Bound Algorithm to Minimize Total Flow Time with Unequal Release Dates, Naval Research Logistics, 39, 859-875. [10] Dessouky, M.I. and Deogun, D.S. (1981). Sequencing jobs with unequal ready times to minimize mean flow time, SIAM Journal on Computing, 10, 192-202. [11] Deogun, D.S. (1983). On scheduling with ready times to minimize mean flow time, Computer Journal, 26, 320-328. [12] Della Croce, F. and T'kindt, V. (2002). A Recovering Beam Search algorithm for the onemachine dynamic total completion time scheduling problem, Journal of the Operational Research Society, 53, 1275-1280. [13] Della Croce, F. and T'kindt, V. (2003). Improving the preemptive bound for the one-machine dynamic total completion time scheduling problem, Operations Research Letters, 31, 142148.

[14] Jouglet, A., Savourey, D., Carlier, J. and Baptiste, P. (2008). Dominance-based heuristics for one-machine total cost scheduling problems. European Journal of Operational Research, 184, 879-899. [15] Liu, J. and MacCarthy, B.L. (1991). Effective heuristics for the single machine sequencing problem with ready times. International Journal of Production Research, 29, 1521-1533. [16] Reeves, C. (1995). Heuristics for scheduling a single machine subject to unequal job release times. European Journal of Operational Research, 80, 397-403. [17] Rinnooy Kan, A.H.G. (1976). Machine sequencing problem: classification, complexity and computation, Nijhoff, The Hague. [18] Smith, W.E. (1956). Various Optimizers for Single Stage Production, Naval Research Logistics Quarterly 3, 59-66.

Suggest Documents