You are on page 1of 4

Chinese Journal of Electronics Vol.19, No.1, Jan.

2010

Particle Swarm Optimization for Parallel Machine Scheduling Problem with Machine Eligibility Constraints
HAO Jinghua, LIU Min and WU Cheng
(Department of Automation, Tsinghua University and TNLIST, Beijing 100084, China)
Abstract Particle swarm optimization is a popular global optimization technology in continuous and discrete optimization elds in recent years. This paper presents a particle swarm optimization-based scheduling algorithm for large-scale parallel machine scheduling problem with machine eligibility constraints and the objective of minimizing the total weighted tardiness. In the proposed method, we rst design a Machine assignment heuristic (MAH) which is used to assign a processing machine of each job based on the dynamic load-balancing mechanism, and then we propose a particle swarm optimization algorithm to optimize the sequence of all jobs in which MAH is used in the decoding process of each particle, also, the mechanisms of particle-moving and velocity-updating are devised based on the problem characteristics. Numerical computational results show that the proposed algorithm is eective for large-scale parallel machine scheduling problems with machine eligibility constraints. Key words Particle swarm optimization, Parallel machine, Scheduling, Machine eligibility

I. Introduction
Parallel machine scheduling problem, which involves both machine assignment and job sequencing decisions, are one of the dicult combinatorial optimization problems. some ecient scheduling algorithms for solving the dierent kinds of parallel machine scheduling problems have been presented[14] . Among these problems, parallel machine scheduling problem with machine eligibility constraints (ECPMS in short) is more general in practical manufacturing environments due to the diversity of machine characteristics, thus has received much attention over the last decade. Liu Min et al. has proposed several ecient genetic algorithms for solving EC-PMSs with dierent performance objectives[57] . Centeno et al. studied the EC-PMS in which jobs have dierent release times[8] . Liao et al. provided a binary search algorithm for the EC-PMS with machine availability constraints[9] . In general, one needs to determine both machine assignment policy and job sequencing policy when solving EC-PMSs.

Some researchers take the above two procedures together and search for a better combination of them in the solution space using population-based methods such as genetic algorithm, while others adopt some simple dispatching rules, e.g. the Least exible machine (LFM) rule, to determine the machine assignment policy. However, since the scales of EC-PMSs in practical manufacturing environments are very large (the number of waiting jobs may be more than 1000 and the number of total machines may be more than 50), the performance of the above population-based algorithms and dispatching rules are not satisfactory when solving such large-scale EC-PMSs. Particle swarm optimization (PSO), which was rst introduced by Eberhart and Kennedy[10] , has been successfully applied to solve continuous and discrete optimization problems[11,12] . In this paper, aiming at solving large-scale EC-PMSs with the objective of minimizing the total weighted tardiness (noted as P |j | i Ti in literature), we rstly present a Machine assignment heuristic (MAH) which is used to assign a processing machine for each job after the processing sequence is determined based on the dynamic loadbalancing mechanism, so that the solution space can be greatly reduced without deteriorating the corresponding performance, and then we propose a particle swarm optimization-based algorithm to optimize the processing sequence of all jobs in which MAH is used in the decoding process of each particle, also, the mechanisms of particle-moving and velocity-updating are devised based on the problem characteristics. Comparing to other meta-heuristics such as genetic algorithms and ant colony optimization generally, PSO has a higher convergence speed, but PSO is easy to get trapped into local optimum. Therefore, based on the analysis of the studied problem, we redesigned the particle-moving mechanism and velocityupdating mechanism in the proposed PSO algorithm to eciently balancing the exploration and exploitation of PSO on the large-scale search space. Also, the MAH procedure is used in the decoding process for each particle. We make numerical computations on randomly generated dierent-scale EC-PMSs and the practical production data

Manuscript Received Jan. 2008; Accepted Jan. 2009. This work is supported by the National 973 Basic Research Program of China (No.2002CB312202, No.2009CB320602), the National 863 High-Tech Program of China (No.2006AA04Z163), the National Natural Science Foundation of China (No.60834004, No.60721003) and Program for New Century Excellent Talents in University.

104

Chinese Journal of Electronics

2010

from a large color-weaving enterprise. Numerical computational results show that the proposed hybrid algorithm is effective for large-scale EC-PMSs. This paper is organized as follows: in Section II, we formulate the EC-PMS. Then, in Section III we propose the MAH procedure and the particle swarm optimization scheduling algorithms. Furthermore, in Section IV we compare the performances of the proposed algorithm with the genetic algorithm. Finally, some conclusions are given in Section V.

II. Problem Formulation


Let n be the total number of jobs, m be the total number of machines. We assume that each job has one operation, and a machine can process at most one job at a time. We further assume that only a subset of machines can process a particular job, that is, there exist machine eligibility constraints in the discussed scheduling problem, and we denote the above subset as j for job Ji (i = 1, 2, , n). Let pi be the processing time of job Ji , di be the due date of job Ji , i be the weight of job Ji , Ci be the completion time of job Ji and Ti be the tardiness of job Ji , where Ti = max(0, Ci di ). Then the scheduling objective is to determine the machine assignment policy and the job-sequencing policy so that the total tardiness n i Ti i=1 can be minimized.

III. Algorithm
We propose the Machine assignment heuristic (MAH) to assign a processing machine for each job and propose an particle swarm optimization algorithm for the job sequencing subproblem, which is detailed as below. 1. Machine assignment heuristic Without loss of generosity, we assume that the priority sequence of jobs has been determined at time t, denoted as Jt,1 , Jt,2 , , Jt,n(t) , where n(t) is the number of unscheduled jobs, and job Jt,1 is with the highest priority. The principle idea of MAH is to rstly calculate the dynamic weighted load for each machine and then assign for each job a processing machine with the lowest value of weighted load according jobs priority order. The MAH procedure is detailed as follows. Procedure MAH: (1) For each machine in the set i of unscheduled job Jt,i , i = 1, 2, , n(t), calculate the corresponding weighted load i mlj caused by Jt,j using:
i mlj = i pi /|i |

where Cj (t) is the release time of machine Mj . If machine Mj is busy at time t, then let Cj (t) be the completion time of the current operation on Mj , else Cj (t) = t. (4) Update the total weighted load for each machine by step (1) and (2) and assign jobs to machines by (3) till all of the jobs are assigned. By procedure MAH, we can assign jobs to machines with an ecient weighted load-balancing mechanism such that machines can be allocated for better utilization. Based on the above MAH procedure, only the job sequence need to be optimized in the particle swarm optimization algorithm, so the solution space is greatly reduced, and the scheduling performance can be well improved. 2. PSO algorithm for the job sequencing subproblem Particle swarm optimization is a population-based global optimization technology, and has been successfully applied to solve continuous and discrete optimization problems[11,12] . Generally, the traditional PSO algorithm includes the following steps: solution representation and decoding procedure; Initialization of particles, particle velocities and inertia weight; updating particle velocities and inertia weight; global move and local move for each particle; and update global best particle and local best particle. In order to suit the traditional PSO algorithm to the discussed EC-PMS, we modied the traditional PSO in three aspects in this paper: solution representation and decoding procedure; particle moving mechanism; and velocity updating mechanism, which is detailed as below. (1) Solution representation and decoding In the proposed PSO algorithm, since the machine assignment policy is to be made by procedure MAH, each particle consists of only the information of job priorities, denoted as: [a1 , a2 , , an ] where ai Iai [1, n]) is the priority index of job Ji . In the process of decoding for the particle, we select jobs one by one from the set of unscheduled jobs according to the non-decreasing order of job priority values. Then, we adopt the above MAH procedure to assign a processing machine for each job till all the jobs are scheduled, then the total weighted tardiness corresponding to the particle can be calculated, which is used to evaluate the performance of each particle in step (3). (2) Initialization In order to improve the performance of the initial swarm, we propose a probability based heuristic to generate particles with high performance while maintaining the diversity of particles. These particles are grouped into the initial swarm. In this method, considering that in the problem of P |j | i Ti , job duedate di , job weight i and job processing time pi are the most important scheduling characteristics for sequencing jobs, we rstly normalize the above parameters as di , pi and i according to their individual actual range, and then use the following formula to calculate the priority value pri for job Ji (i = 1, 2, , n): pri = r1 di + r2 pi r3 i where r1 , r2 , r3 are uniformly distributed real numbers between 0 and 1.

where |i | is the number of elements in the set i , and j is the machine index. (2) For each machine Mj (j = 1, 2, , m), calculate its total weighted load mlj (t) at time t by:
n(t)

mlj (t) =
i=1

i mlj

(3) For job Ji , choose the machine with the least Cj (t) + mlj (t) from the set i as the processing machine of job Ji ,

Particle Swarm Optimization for Parallel Machine Scheduling Problem with Machine Eligibility Constraints When generating each particle in the initialization process, we rstly generate three random real numbers r1 , r2 , r3 , then, we use the above formula to calculate each jobs priority value, nally we sequence all the jobs by the non-decreasing order of their corresponding priority values to formulate the initial priority sequence in the particle. By the above method, we can obtain diversied initial solutions with good performance for 0 0 0 the discussed problem, which are noted as X1 , X2 , , XN , k where Xi is the i-th particle of the k-th iteration of PSO, and N is the total number of particles. In the proposed PSO, the particle velocity vk is a uniform random integer ranging in [vmin , vmax ], and the inertia weight is a given constant. (3) Updating personal best and global best We evaluate each particle by its corresponding objective value (total weighted tardiness) which is obtained by the decoding process incorporating the proposed MAH procedure. pbest k k k Then we update the personal best Xi for X1 , X2 , , XN gbest and the global best X . (4) Global move and local move for each particle k We denote the current to-be-moved particle as Xi and best the global best or the local best as X . Since in the traditional PSO algorithm particles move to their global best k and local best separately with given particle velocities vi (i = 1, 2, , N ) in a continuous manner, we redesign the particle moving mechanism to be adapted to the discrete scheduling problem. In our new scheme for discrete representation case, the velocity of the current particle means the number of elements to be swapped with the target particle X best (global best or local best). The redesigned particle moving mechanism k is executed by the following steps (take Xi as an example). k k Randomly select vi elements (corresponding vi jobs) k from Xi and record their relative priority sequence; Find the corresponding elements from X best and record their relative priority sequence; k Swap some of the selected elements in Xi such that their relative priority sequence between the selected elements are the same with those selected elements from X best . In order to clearly demonstrate the swap operator, we given an example as follows. k Given: Xi : 2 7 6 4 3 5 1 X best : 3 5 7 1 6 2 4 Select elements: k Xi : 2 7 6 4 3 5 1 X best : 3 5 7 1 6 2 4 Swapped results: k Xi : 5 7 6 2 3 4 1 X best : 3 5 7 1 6 2 4 (5) Updating particle velocities and inertia weight We propose an adaptive adjusting method for updating particle velocities by incorporating the information of objective value changes. Considering that if the corresponding objective value of the current particle is greatly improved by the global move and the local move, then we can probably nd an even better solution around the current particle, so in this case we should decrease the corresponding particle velocity, and vice versa. Based on this idea, we update the particle k velocities vi by:
k+1 k vi = vi wk + c r, k+1 k vi = vi wk + c r (fik , fik1 ),

105

where c is a constant real number, r is a random variable between 0 and 1, K is the total iteration number, (fik , fik1 ) is an indication function, that is, (fik , fik1 ) equals 1 when fik is larger (worse) than fik1 , 1 when fik is smaller (better) than fik1 . The inertia weight is updated by: wk+1 = wk where is the decrement factor. (6) Stopping criterion If the iteration number exceeds the maximum iteration number, then stops, otherwise go to step (3).

IV. Numerical Computation


We make numerical computations based on the randomly generated EC-PMS instances and the production data from the practical dyeing process in one of the largest color-weaving enterprises in China to test the performance of the proposed algorithm. In the dyeing process, each dyeing job can be processed by only a subset of the dyeing machines. The above problem belongs to the typical parallel machine scheduling problems with machine eligibility constraints discussed in this paper.
Table 1. Performance comparison between MAH-PSO and EOX-GA Problem EOX-GA MAH-PSO Improvescale i Ti CPU i Ti CPU ment (n m) time (s) time (s) (%) 10 5 37.5 3.4 35.3 3.2 5.9% 20 5 81.3 5 75.9 4.1 6.6% 50 5 210.5 7.3 193.5 6.5 8.1% 50 10 604.2 13.6 576.2 12 4.6% 100 10 2145.1 22.5 2014.1 21.3 6.1% 200 10 4985.3 33.1 4667.4 32.2 6.4% 200 20 5718.5 31.8 5421.2 30.1 5.2% 400 10 8456.4 67.3 8119 65.9 4.0% 400 20 7879.8 67.7 7298.1 66.1 7.4% 600 20 9842.5 86 9268 87.4 5.8% 800 20 11275.1 109.2 10394.3 111 7.8% 1000 20 13203.5 139.1 12174.5 142.8 7.8% 1000 50 13983.1 145.6 13117.8 144 6.2%

k=1 k = 2, 3, , K

When generating random EC-PMS instances, for job Ji (i = 1, 2, , n), we randomly select bi (1 bi m) machines as the elements in i , bi U (1, m). All the jobs are released initially. The processing time and weight are generated with the following distribution: pi U (1, 10), i U (0, 1). The duedate for each job is generated by: di U (pi , n pk /m) where n pk is the sum of prok=1 k=1 cessing time of all the jobs and is duedate tightness, in this paper we set = 1.5. We compare the performance of the proposed algorithm (denoted as MAH-PSO) with the EOX-based genetic algorithm proposed in Ref.[6] (denoted as EOX-GA). The parameters of the proposed algorithm are set as follows: the population N = 100, the iteration number K = 50, vmin = 0, vmax = n 0.1, c = 4, = 0.99, w0 = 1. In EOX-GA, the number of population is 100 and the iteration number is 50. Parameters of EOX-GA are set according to Ref.[6]. We make numerical computations on randomly generated dierent-scale EC-PMSs, and the results are shown in Table 1, in which

106

Chinese Journal of Electronics

2010

each row is the average computational results on 5 problem instances. From the results listed in Table 1, we can observe that although their CPU time is similar for each class of problem instances, MAH-PSO performs better than EOX-GA in most cases, this can be explained that by incorporating the MAH procedure, we only need to search dierent job sequencing solutions in MAH-PSO, thus the solution space is reduced and better solving performance can be obtained.

V. Conclusions
This paper presents a particle swarm optimization based scheduling algorithm for large-scale parallel EC-PMSs with the objective of minimizing total weighted tardiness. In the proposed method, we rst present a machine assignment heuristic which is used to assign a processing machine for each job based on the dynamic load-balancing mechanism, and then we propose a particle swarm optimization algorithm to optimize the sequence of all jobs in which MAH is used in the decoding process of each particle. Numerical computational results on randomly generated problem instances and practical production data show that the proposed algorithm is eective for large-scale EC-PMSs. References
[1] Gursel, Suerand E B, Minimizing the number of tardy jobs in identical machine scheduling, Computers and Industrial Engineering, Vol.25, No.4, pp.243246, 1993. [2] Liu M, Wu C, Scheduling algorithm based on evolutionary computing in identical parallel machine production line, Robotics and Computer-Integrated Manufacturing, Vol.19, No.5, pp.401407, 2003. [3] H.G. Kahlbacher, T.C.E. Cheng, Parallel machine scheduling to minimize costs for earliness and number of tardy jobs, Discrete Applied Mathematics, Vol.45, No.2, pp.139164, 1993. [4] Suer G.A., Pico F., Santiago A., Identical machine scheduling to minimize the number of tardy jobs when lot-splitting is allowed, Computers and Industrial Engineering, Vol.33, No.1, pp.277280, 1997 [5] Liu Min, Wu Cheng and Yin Wenjun, Solving identical parallel machine production line scheduling problem with special procedure constraint by genetic algorithm, Acta Automatica Sinica, Vol.27, No.3, pp.381386, 2001. (in Chinese) [6] Yin, Wenjun, Liu Min, Wu Cheng, A new genetic algorithm for parallel machine scheduling with process constraint, Acta Electronica Sinica, Vol.29, No.11, pp.14821485, 2001. (in Chinese)

[7] Liu Min, Hao Jinghua, Wu Cheng, A genetic algorithm for parallel machine scheduling problems with procedure constraint and its applications, Chinese Journal of Electronics, Vol.15, No.3, pp.463466, 2006. [8] Centeno G., Armacost R.L., Minimizing makespan on parallel machines with release time and machine eligibility restrictions, International Journal of Production Research, Vol.42, No.6, pp.12431256, 2004. [9] Liao L.W., Sheen G.J., Parallel machine scheduling with machine availability and eligibility constraints, European Journal of Operational Research, Vol.184, No.2, pp.458467, 2008. [10] Kennedy J, Eberhart R, Particle swarm optimization, Proceeding of the 1995 IEEE International Conference on Neural Network, pp.19421948, 1995. [11] Abido M.A., Optimal power ow using particle swarm optimization, International Journal of Electrical Power and Energy Systems, Vol.24, No.7, pp.563571, 2002. [12] Hong Zhang, Xiaodong Li, Heng Li, Fulai Huang, Particle swarm optimization based schemes for resource-constrained project scheduling, Automation in Construction, Vol.14, pp.393-404, 2005. HAO Jinghua was born in 1980. In 2007, he received Ph.D. degree in control science and engineering from Tsinghua University. His research interests include modelling and scheduling methods of complex manufacturing process.

LIU Min was born in 1965, Professor of Department of Automation, Tsinghua University. He is a member of the editorial board of academic journal Chinese Science Bulletin, Information and Control, Control Engineering. His research interest covers optimization scheduling of complex manufacturing process, intelligent operational optimization of complex manufacturing process or equipment, intelligent optimization methods and their applications to the modelling, scheduling and optimization of complex manufacturing systems. WU Cheng was born in 1940, Professor of Department of Automation, Tsinghua University. He is a member of the Chinese Academy of Engineering, director of the National CIMS Engineering Research Center in China. His major research interests include modeling, intelligent scheduling and optimization of complex manufacturing systems, etc.