2017 2nd International Conference on Artificial Intelligence: Techniques and Applications (AITA 2017) ISBN: 978-1-60595-491-2
A Multiple-objective Particle Swarm Optimization for Flexible
Job Shop Scheduling Problem
Jing ZHANG
Department of Computer and Information Technology, Zhejiang Police College, Hangzhou 310023, PRC
Keywords: Maximin fitness, Multi-objective optimization, Particle swarm optimization, Flexible
job-shop scheduling, Variable neighborhood search.
Abstract. In this paper, a hybrid particle-swarm optimization algorithm is proposed for the flexible job shop scheduling problem with multiple objectives. The optimization objectives are considered to be the production cycle time, total machine load and the maximal single machine load, respectively. A discrete particle swarm combined with variable neighborhood search is proposed to solve the problem based on Maximin fitness. The main benefits of the method are the improvements of both global and local searching ability. Compared to other algorithms on benchmark problems, the simulation results show the effectiveness of the algorithm.
Introduction
Since modern product manufacturing industry is the primal foundation of national economy, the research on improving manufacturing efficiency is a hot research area in the fields of computer integrated manufacturing systems in recent decades [1]. Moreover, "Made in China 2025" clearly points out that promote intelligent manufacturing as the main direction, integrate informatization and industrialization, and focus on the development of fully-automated "smart" factories. Flexible job shop scheduling (FJSP) is one of the cores in intelligent production planning management [2]. For example, when an emergency occurs, such as a machine failure or a temporary express duty, flexible production will help to make a timely response to these emergencies. Flexibility provides the possibility of Manufacturing Intelligence. The flexibility of job shop scheduling includes resource flexibility and sequence scheduling flexibility. Resource flexibility refers to resources can be used for multiple operations of jobs. And sequence scheduling flexibility refers to processing route of the jobs is not given in advance; an alternative route can be used to process a job by arranging alternative resources.
Various intelligent optimization methods have been presented to solve FJSP, such as genetic algorithm[3][4], particle swarm algorithm[5], ant colony algorithm[6] and so on. But based on the theory of "no free lunch"[7], there is no algorithm that is optimal on all issues. Therefore the combination of the advantages of various algorithms has been the focus of optimization strategy. A genetic algorithm with priority-based representation is proposed in[4], and iterated local search is applied to the chromosomes. Liouane represented FJSP by a bipartite graph with two categories of nodes, then combine the ant system optimization meta-heuristic with local search methods to solve FJSP[6].
Standard Particle Swarm Optimization (PSO)
The original version of PSO was proposed in 1995 by Kennedy and Eberhart [8], which has attracted a great deal attention of scholars from various research backgrounds around the world. The thought of PSO originated in the simulation of birds flocks, and adopts the same population-based searching mechanism as evolutionary algorithms. For an optimization problem, a swarm of particles is defined to represent the potential solutions in PSO. Then each particle begins with an initial position randomly and flies through the D-dimensional solution space, the objective is to search an optimum. The flying behavior of each particle can be described by its velocity and position. The update equations about the velocity and position are formulated as the follows [8]:
1 1 2 2
( 1) ( ) ( ( ) ( )) ( ( ) ( ))
id id id id gd id
v t+ =wv t +c r p t −x t +c r p t −x t (1)
( 1) ( ) ( 1)
id id id
x t+ =x t +v t+ (2) where irepresents the ith particle, d represents the dth dimension of the ith particle, t represents the iteration number, w is inertia weight, c1,c2are learning factor, r1,r2 are two random numbers in the
range[0,1], Xi={xi1,xi2,...xid,...,xiD}and Vi={ ,v vi1 i2,...vid,...,viD}represent the position vector and
velocity vector of the ith particle respectively. Pi={pi1,pi2,...pid,...,piD} is the personal best position
of Xi, Pg ={pg1,pg2,...pgd,...,pgD} stands for the global best position.
The Proposed Algorithm MPSO for FJSP
The MPSO algorithm is presented in this section, which includes global search and local search. An encoding scheme and a mixed particle initialization way are given first. Then global search updates particles in discrete domain directly. Finally, a VNS with variable neighborhood is introduced to improve the local search ability.
Encoding Scheme
To solve FJSP, we need to encode it at first. A two-dimension chromosome encoding scheme is used for ith particleXi,i={1, 2,..., }P , P is particle’s population size. The first chromosome (Xiprocess)
represents the operation sequence, and the second chromosome (Xmachinei ) denotes machine allocation.
Based on the above encoding scheme, a particleXi for a n m× FJSP (n denotes job number, m is
machine number) include two vector ( Xiprocess,
i machine
X ), the length of two vectors is the same,
1
n
p p
L s
=
=
∑
,spis total operation number of job p, p={1, 2,..., }n ,and the elements of (Xiprocess, i machineX )
all are integer.
Particles Initialization
For the initialization of i process
X , 60% particles adopt random rule, and the rest 40% adopt the most
number of operations remaining rule[3]. For the initialization of i machine
X , random rule is adopted.
External achieves based on Maximin fitness
Three conflict objectives have to optimize simultaneously in this paper. Due to the optimal solution of a multi-objective optimization problem is not only the one, but a set of non-dominated solutions. An external achieve is introduced to maintain the global best particles Pg and the length is EL. As for the
{
}
{
1,2, ,}
1,2, , ,
(
)
max
min
(
)
(
)
mf i k i k j
k M
j N j i
F
X
F X
F X
= = ≠
=
−
… … (3)while Fmf (Xi)< 0 and Fmf (Xi) > 0, represent that Xi is a non-dominated and dominated solution.
Global Search Structure
A discrete DPSO is presented as a global search structure, which makes particles updated directly in the discrete domain. The position updating equation is given as follows:
2 3 1 2 1
( 1) {[ ( ( ( )), ( ))], ( )}
i i i g
X t+ =c ⊗f c ⊗f w⊗f X t P t P t (4)
where f1, f2 and f3 are operators, the updating process containsE ti( +1), F ti( +1) andX ti( +1),
and they are formulated as follows:
1 1
( ( ));
( 1) ( ( ))
( );
i
i i
i
f X t r w
E t w f X t
X t otherwise
<
+ = ⊗ =
(5)
where r is a uniform random number between [0,1]. If r < w, then f X t1( i( )) is carried out. There
are two mutation randomly choosen for f X t1( i( )):
(a) Insertion operation: Randomly generate two integer a, bbetween[1, L], then insret the ath element of particle i
process
X to the bth positon. And the Xm achinei is ajusted with i process
X .
(b) Inversion operation: For i process
X , randomly generate two integer a, bbetween[1, L], then
interchange the elements of the two positions. Then the i machine
X is ajusted with i process
X .
2 1
1 2
( ( 1), ( )); ( 1) ( ( 1), ( ))
( 1);
i i
i i i
i
f E t pB t r c
F t c f E t pB t
E t otherwise
+ <
+ = ⊗ + =
+
(6)
2
f is the crossover operation for E ti( +1)and pB ti( ), which has a Precedence Preservation
Crossover (PPX) operation[10] for i process
X and Xm achinei . First the offspring chromosome F ti( +1) is
initialized empty. Then a vector of length L is randomly filled with elements of the set {1, 0}. This vector defines the order in which genes are drawn from E ti( +1)and pB ti( ), respectively. After a
[image:3.612.206.402.536.640.2]gene is drawn from one parent and deleted from the other one, it is appended to the offspring chromosome. This step is repeated until both parent chromosomes become empty and the offspring contains all genes involved. For a particle, the PPX is depicts in Figure 1:
Figure 1. Precedence Preservation Crossover (PPX).
3 2
2 3
( ( 1), ( )); ( 1) ( ( 1), ( ))
( 1);
i
i i
i
f F t gB t r c
X t c f F t gB t
F t otherwise
+ <
+ = ⊗ + =
+
(7)
3
Local Search for MPSO
A variable neighborhood search method (VNS) is proposed for FJSP as the local search of MPSO. There are two main ways to change neighborhood for FJSP: one is changing the processing route of the job, the other is changing the selected machine for operation. To enhance the exploiting ability of MPSO, randomly choose one of four adjacent solutions introduced for non-dominated in this part:
(a) S1for i process
X : The neighborhood structure based on critical path has been introduced, randomly
change the position of two operation on critical path. (b) S2for i
process
X : Randomly adjust the order of operation processing on a machine.
(c) S3for Xmachinei : Assign the operation on the machine with the maximum load to the machine
with the least load.
(d) S4 for Xmachinei : Randomly change the chosen machine for an operation.
For a solution E0 from external achive, if the adjacent solution E1is better than E0, then put E1to
external achive, and delete E0.
Procedure for MPSO
Step 1. Set parameters swarm size P, maximum of generation G, w, c1, c2, EL. Step 2. Set k=0. Generate initial particle swarm, initialize gB(0) and pBi(0).
Step 3. Let k=k+1, then update the current particle swarm by DPSO. Update k
gB and k i
pB . Step 4. Executing VNS for external achive. Update external achive.
Step 5. If k<G, then turn to Step 3, otherwise stop the loop and output the solutions
Simulation Results
[image:4.612.96.520.455.706.2]In this subsection, a set of benchmark examples[11] are employed to compare the proposed MPSO with other five algorithms. Parameter settings are as follows: G=500, w=0.1, c1= c2=0.9, EL=10.
Table 1. Experimental results of four algorithms about Cases 1–5. Method
Objects Size(n m× )
MOPSO+LS P-DABC
MPSO
1 2 3 4 5 1 2 3 1 2 3 4
4 5× Makespan - - - 11 12 13 11 12 - -
Total workload - - - 32 32 33 32 32 - -
Max workload - - - 10 8 7 10 8 - -
8 8× Makespan 15 16 14 16 17 14 15 16 14 15 16 16
Total workload 75 73 77 78 77 77 75 73 77 75 73 78 Max workload 12 13 12 11 11 12 12 13 12 12 14 11
10 7× Makespan - - - 12 11 12 12 11 11 -
Total workload - - - 61 63 62 60 61 62 -
Max workload - - - 11 11 10 12 11 10 -
10 10× Makespan 8 8 7 7 - 8 7 8 8 8 7 7 Total workload 41 42 43 42 - 41 43 42 41 42 43 42
Max workload 7 5 5 6 - 7 5 5 7 5 5 6
15 10× Makespan 12 11 - - - 12 11 - 12 11 11 -
Total workload 93 91 - - - 91 93 - 93 95 91 -
Max workload 10 11 - - - 11 11 - 10 10 11 -
So the proposed approach is also effective to solve single-resource constraint job scheduling problems.
Figure 2. Optimization solution of problem 15 10× (11, 91,11).
Figure 2 give the Gantt chart of the optimal solution for instance 15 10× obtained by MPSO. M stands for machine. The number following M is the index of the machine number. The 2-digit numbers in the blocks are job number and operation number respectively. “A-E” stands for the number “10-15”.
Summary
In this paper, a MPSO was proposed to solve a FJSP. A two dimension coding scheme was used for the representation of particles. Then an improved MPSO was presented to enhance the search ability. As for the local search one, a VNS strategy was designed for the local exploiting ability. Although some progress has been made in the research of FJSP, it is difficult to obtain satisfactory results for the higher dimensional problems. Moreover how to choose more appropriate parameters is also helpful in improving the performance.These will be the work of the future we should consider.
Acknowledgement
This project is supported by National Natural Science Foundation of China (NSFC Grant No. 61379123) and National Natural Science Foundation of China (Grant No. 61572438).
References
[1]L. Wang, D.Z. Zheng. Advances in Job Shop Scheduling Based on Genetic Algorithm. Control. Decis, 16.11(2001): 641-646.
[2]S.S. OuYang, L.F. Huang. Flexible Job-shop Scheduling Study Based on Multi-swarm Cooperative Hybrid Algorithm. Modular Machine Tool & Automatic Manufacturing Technique, 1(2017), 23-27.
[3]F. Pezzella, G. Morganti, and G. Ciaschetti. A genetic algorithm for the Flexible Job-shop Scheduling Problem. Computers & Operations Research, 35.10(2008):3202-3212.
[4]D. Cinar, J.A. Oliveira, et al. A priority-based genetic algorithm for a flexible job shop scheduling problem. Journal of Industrial & Management Optimization, 12.4(2016):1391-1415.
[6]N. Liouane, I. S. S. Hammadi. Ant systems & local search optimization for flexible job shop schedule production. International Journal of Computers, Communications & Control, 2.2 (2007): 174-184.
[7]D. H. Wolpert, W. G. Macready. No free lunch theorems for optimization. IEEE Transactions on Evolutionary Computation, 1.1 (1997): 67-82.
[8]J. Kennedy, R. Eberhart. Particle swarm optimization. IEEE International Conference on Neural Networks, 4(2002):1942-1948.
[9]R. Balling. The Maximin fitness function: multi- objective city and regional planning, Lecture Notes in Computer Science, 2632(2003): 1-15.
[10]C. Bierwirth. A generalized permutation approach to job shop scheduling with genetic algorithms. Operations-Research-Spektrum, 17.2-3(1995):87-92.
[11]I. Kacem, S. Hammadi, and P. Borne. Approach by localization and multiobjective evolutionary optimization for flexible job-shop scheduling problems. IEEE Transactions on Systems Man & Cybernetics Part C, 32.1(2002):1-13.