Conference PaperPDF Available

An Improved Genetic Algorithm for Flexible Job Shop Scheduling Problem with Buffer Constraints

Authors:
An Improved Genetic Algorithm for Flexible Job
Shop Scheduling Problem with Buffer Constraints
Mingzhu Hu1,Haojie Chen1,Huan Luo1, Jian Zhang1*,Shuying Wang1
1Institute of Advanced Design and Manufacturing
School of Mechanical Engineering Southwest Jiaotong University
Sichuan Chengdu, China
jerrysmail@263.net
Abstract—To address the situation that the existing flexible
job shop scheduling problem does not consider the influence
of buffer constraints on job scheduling, which leads to the
inapplicability of the scheduling scheme in the actual
scheduling operation, this paper proposes a flexible job shop
scheduling problem that considers buffer constraints and
designs an improved genetic algorithm to solve the problem
model. A reasonable coding and decoding method is
designed according to the model and algorithm
characteristics, as well as a reasonable operation conflict
adjustment method for the operation conflict situation
brought about by the buffer constraint. Since there are
problems of insufficient initial population diversity, low
quality and low genetic operator search ability with the
genetic algorithm, we propose the improve initial population
of genetic algorithm, and finally verify the effectiveness and
superiority of the proposed improvement mechanism by
experiments in solving this problem.
Keywords-buffer constraints;flexible job shop scheduling;
improved genetic algorithm
I. INTRODUCTION
The Flexible Job Shop Scheduling Problem (FJSP) is
an extension of the JSP(Job-shop Scheduling Problem),
FJSP is based on the JSP problem to remove the constraint
that the operation corresponds to the unique machinable
machine, allowing one operation to be processed on
multiple machines and one machine to operation many
different types of jobs, making it closer to the actual
processing situation in a flexible manufacturing plant.
FJSP problems are a more complex class of NP-hard
problems[1].
Although many scholars have conducted research on
flexible job shop scheduling for many years and have
made a lot of achievements, there is still a large gap
between theoretical achievements and practical
applications[2]. The main reason is that current research
often sets the machine buffer capacity to infinity when
building flexible job shop scheduling models, ignoring the
impact of buffer capacity on job scheduling[3]. And in the
actual production operation, the buffer between machines
can hold the machined work-in-progress or supply the
equipment unit for the next operation [4].
In the literature on job shop scheduling problems
with buffer constraints, the initial research work dealt
with a Flow-shop Scheduling Problem(FSSP), the
simplest type of job shop scheduling. The FSSP problem
is a given batch of jobs that must be machined on a set of
machines, each consisting of multiple operations, but
each with the same operation route and all needing to be
machined in the same one-way sequence on a specified
set of machines. Compared to the FSSP problem, the JSP
problem has a fixed operation route for each job, but the
difference lies in the fact that the machining operation
route may be different for each job. In the literature of
FSSP studies considering FSSP with buffer constraints:
Ronconi[5] analyzes the FSSP problem with blocking
constraints and proposes a two-stage hybrid heuristic
algorithm to solve the problem based on the NEH (Nawaz,
Enscore and Ham) algorithm framework. Zhang et al.
combined greedy heuristics and hybrid differential
evolutionary algorithms for solving FSSP problems with
batch processors and finite buffers[6]. Han et al. proposed
an improved fruit fly optimization algorithm to solve the
FSSP problem with blocking, and proved the
effectiveness of the algorithm based on benchmark
examples[7].
The job scheduling problem with buffer constraints
can be divided into the job shop scheduling problem with
blocking job shop scheduling(BJSS) and the job shop
scheduling problem with limited-buffer job shop
scheduling(LBJSS). In the former study, Zeng et al.
proposed an integer nonlinear mathematical programming
model to describe the job shop scheduling problem with
output buffers, and proposed a two-stage algorithm for
solving the problem with feasible solutions and local
search[8]. Pranzo et al. investigate two extensions of the
blocking job scheduling problem, blocking job shop
scheduling that allowed swapping and blocking job shop
scheduling that did not allowed swapping, and propose an
iterative greedy algorithm for solving the problem[9].
Louaqad et al. studied the no-wait blocking transportation
job shop scheduling problem and developed a mixed
integer linear programming model and proposed a
constructive heuristic algorithm based on priority rules
for solving the problem[10]. In a study on job shop
scheduling with finite buffer constraints, Liu et al.
investigate the job shop scheduling problem with four
buffer constraints (no wait, no buffer, finite buffer, and
infinite buffer) more generally, provide an in-depth
analysis of the key problem properties, develop an
applicable mixed-integer model, and propose an efficient
heuristic algorithm for solving the problem[11].
Based on the above existing problems, this paper
extends the buffer constraint to the flexible job shop
scheduling problem based on the existing study of the job
shop scheduling problem with buffer constraint. In this
paper, we propose to use genetic algorithm to solve the
Proceedings of the 26
th
International Conference on
Automation & Computing, University of Portsmouth,
Portsmouth, UK, 2-4 September 2021
Authorized licensed use limited to: SOUTHWEST JIAOTONG UNIVERSITY. Downloaded on June 13,2022 at 06:45:03 UTC from IEEE Xplore. Restrictions apply.
problem, and also design a reasonable coding and
decoding method for the characteristics of the problem, as
well as a reasonable operation conflict adjustment method
for the operation conflict situation brought about by the
buffer constraint. Since the genetic algorithm has the
problems of insufficient initial population diversity and
low quality in solving this problem, and the genetic
operator search ability is not strong, the improvement of
the initial population of the algorithm and the genetic
algorithm is proposed. Finally, the effectiveness of the
algorithm and the superiority of the solution results are
verified experimentally.
II. FLEXIBLE JOB SHOP SCHEDULING MODEL WITH
BUFFER CONSTRAINT
A. Description of the problem
The flexible job shop scheduling problem with
buffer constraints can be described as: There are m
machines and n independent, no preemptive jobs to be
processed each of which has the same or different number
of operation, and the number of operation for a single job
The operation sequence has been determined, but there
are one or more processing machines available for each
operation, and the processing time is determined by the
processing machine capacity. In this paper, considering
the impact of the output buffer capacity of the machine
on the flexible job scheduling, select the appropriate
processing machine for each operation of the job and
determine the processing sequence of the job on each
machine, so that the maximum completion time of all
jobs is minimized, and the job is in the scheduling
operation needs to meet the limitation of the
corresponding output buffer capacity of the machine. In
order to model this type of problem in actual production,
the following assumptions are proposed:
(1) Each machine can only process one job at the
same time.
(2) An operation can only be processed by one
machine at the same time.
(3) The operation cannot be interrupted during
processing.
(4) Each machine has the same output buffer
capacity.
(5) The transfer time of job between machine is
negligible.
(6) There is no priority relationship between jobs
and jobs;
(7) All jobs and machines to be processed can be
processed and used at the beginning of the scheduling
period.
(8) The machine output buffer can only be used to
store the finished job on the machine.
B. Mathematical model
1
( ( ))
j
j n
minC min max C
≤ ≤
= (1)
0
ijk
P
,
1,2, ,
j
i p
= ,
1,2, ,
j n
= …
,
1,2 , ,
k
m
= …
(2)
( 1)
1 1
( 1)
m
ijk i jk i jk
i k
k
m
j
k
h C h S
+
=
+
=
,
1,2, ,
j
i p
= ,
1,2, ,
j n
= …
(3)
1
1
m
ijk
k
h
=
=
,
1,2, ,
j
i p
= ,
1,2, ,
j n
= …
(4)
1
1
n
ijk
j
h
=
1,2, ,
j
i p
= ,
1,2 , ,
k
m
= …
(5)
1, , +1, ,
1 1
( )
m m
ijk ijk ijk ijk ijk ijk i j k i j k
k k
h S P B ST h S
β
+
= =
+ + + =
 
,
1,2, ,
j
i p
= ,
1,2, ,
j n
= …
(6)
1, , 1, ,
1 1
( + )
m m
k ijk ijk ijk ijk i j k i j k
k k
h S P B h S
α
+ +
= =
+ =
 
1,2, ,
j
i p
= ,
1,2, ,
j n
= …
(7)
= ( )
j ijk
C C
max
1,2, ,
j
i p
= (8)
TABLE I. SYMBOLS AND VARIABLES
Symbols Implication
n total number of jobs
m total number of machines
j index of jobsj=1,2,…,n
Jj job jJj
J
k index of machinesk=1,2,…,m.
Mk machine kMk
M.
p
j
total number of operations belonging to J
j
.
O
ij
the ith operation of job J
j
P
ijk
Processing time of Oij on M
k.
l
k
the capacity of buffer corresponding to M
k
S
ijk
the start processing time of Oij on M
k
Cijk the processing completion time of Oij on Mk, Cijk=
S
ijk
+ P
ijk
.
B
ijk
the blocking time on M
k
after O
ij
is processed.
Dijk
the time to leave the Mk after Oij is processed, Dijk=
Cijk+ Bijk
STijk the storage time in machine buffer after Oij is
processed
Lijk
the time
Oij
leave the machine buffer
,
L
ijk
= ST
ijk
+
Dijk
Among them: Equation (2) represents the non-
negative constraint on the processing time of each
operation of the job ; Equation (3) represents that there is
no priority relationship between the operations of
different jobs, and the same job must meet the operation
relationship between the processes; Equation (4)
represents the job it can only be processed on one
machine at the same time; Equation (5) represents that
one machine can only process one job at the same time;
Equation (6) represents the limited buffer constraint,
excluding the last operation in the operation route of each
job , The completion of the last operation of the job is
regarded as leaving the production system and no longer
Authorized licensed use limited to: SOUTHWEST JIAOTONG UNIVERSITY. Downloaded on June 13,2022 at 06:45:03 UTC from IEEE Xplore. Restrictions apply.
occupying resources. In this case, after Oij is completed,
its departure time in the buffer area bk must be equal to
the start time of the subsequent operation Oi+1,j of the
same job Equation (7) represents the blocking
constraint, where an insufficient buffer causes the
machine to block, excluding the last operation in the
operation route of each job. In this case, after the
completion of Oij, machine k may be blocked due to the
corresponding buffer being full; Equation (8) represents
that the completion time of a job is equal to the maximum
of the completion times of all operations of the job, i.e.
the completion time of the last operation of the job.
III. IMPROVED GENETIC ALGORITHM
Fig1: Improved genetic algorithm flow chart
Genetic algorithm is a stochastic global search
algorithm for solving complex problems, which has the
advantages of simple search method, robustness and
global parallel search. However, there are disadvantages
such as slow convergence, high number of iterations, and
local optimal solutions. Several academic studies have
demonstrated that traditional genetic algorithms
sometimes fail to achieve a globally optimal state of
convergence.
To address the shortcomings of the above genetic
algorithm in solving the FJSP problem with output buffer
constraint, this paper adopts the traditional double-layer
real number encoding based on operation and machine
according to the characteristics of the problem, and
designs a reasonable operation adjustment operation for
decoding to ensure the legitimacy of the solution. The
proposed algorithm improves both the initial population
and the genetic operator, which can improve the quality
and diversity of the initial population on the one hand,
enhance the global search ability and local search ability
of the algorithm on the other hand, and adopt the elite
retention strategy to retain the elite individuals in each
generation so as to avoid the loss of good individuals.
The algorithm flow is shown in Figure 1.
A. Coding design
Among the various genetic algorithms for solving the
FJSP problem, the MSOS coding method proposed by Ho
and Tay has been most widely used [12]. The MSOS code
divides the chromosome into two parts, machine selection
(MS) and operation sequencing (OS), which are used to
solve the machine assignment problem and the job
machining sequence subproblem. The MS coding of the
first part can be divided into two forms. The first coding
method is based on operation sequencing and machine
coding, and each operation code corresponds to the
machine code, which will reduce the computation time of
the algorithm. The second coding method differs from the
first one in that the machine coding part and the operation
sorting part are not mapped to each other, but are
correlated with the natural sorting of the job,, which
makes the machine coding part not illegal in genetic
operation and allows cross-operation of the machine
coding. The MS coding method based on the natural
ordering of jobs is shown in Figure 2.
1OS 3 1 2 2 3 2
1211221
MS
O11 O12 O2 1 O22 O23 O31 O32
M1
M3
M4
M2
M3
M4
M1
M3
M5
M2
M3
M2
M4
M5
M2
M4
M5
M1
M3
M5
M1 M4 M1 M2 M3 M3 M2
Fig2: MS Coding Based on Natural Ordering of Artifacts
To avoid the problem of generating illegal solutions
requiring correction of chromosomes in subsequent
genetic operations, a second OSMS coding approach
based on natural ordering of job. To avoid the problem of
increasing the computation time of the algorithm, an
operation sequence based on the natural ordering of job
and the number of operations for each job is generated
when generating the OS code so that the machine part
codes correspond to it to save the time of finding the
machine corresponding to the operation.
B. Decoding Design
The decoding method of the FJSP problem with
output buffer constraint is also based on operation
ordering, but the difference is that in addition to
determining the completion time of the previous
operation of the current decoded operation, instead of
comparing the completion time of the last operation on
the machine corresponding to the current operation, it is
necessary to find the earliest time when the job can enter
the machine during the idle time of the machine, and it is
also necessary to determine whether the completion time
of the previous operation to the start of the current
operation satisfies the buffer constraint. If it does not
meet the buffer constraint, it is necessary to adjust the
scheduling operation of the job.
Beginning
Initializing Parameters
Generating initial
populations(Random
process sequencing)
Calculating Fitness
Select
Does it satisfy
the maximum number
of iterations
Crossover
Mutation
Populations of
Merger
N
end
Y
Randomly generated machine
allocation scheme(80%)
Roulette
OS uses PPOC crossover
MS uses the crossover of two-point
Os uses t
he mutation of the swap
MS uses the mutation of single point
Rule-based generation of
machine assignment schemes
Minimum processing machine
time(10%)
Minimum processing time for
machinable machines(10%)
Improving the quality of the initial
population
Improving the global search
capability of Algorithm
Improving the local search
capability of algorithm
Elite Retention Strategy
Authorized licensed use limited to: SOUTHWEST JIAOTONG UNIVERSITY. Downloaded on June 13,2022 at 06:45:03 UTC from IEEE Xplore. Restrictions apply.
The decoding method with buffer constraints as
proposed in this paper is shown in Figure 3. According to
the current operation 402 to be decoded, the completion
time of the previous operation 401 is also determined first,
and the completion time of operation 401 is used as the
premise to find the earliest time when job 4 can enter
machine 2 for processing on the corresponding
processing machine 402.
203
401
M3
M2
Machine
Processing Time
0
101
402
Fig3: The Decoding Method for Constraint of Buffer
In the FJSP problem with buffer constraints, if the
start time of operation 402 is not equal to the completion
time of operation 401, it is also necessary to consider
whether the buffer constraints are satisfied within the
period from the completion time of operation 401 to the
start time of operation 402. Therefore, the following
situations will occur under the job shop scheduling
decoding method with buffer constraints.
When the machine output buffer capacity is
sufficient, it is necessary to consider whether the output
buffer of machine 3 is sufficient when arranging the
second operation 402 of job 4. If the output of machine 3
is sufficient, the decoding Gantt chart obtained is shown
in Figure 4.
203
401
402
M3
M2
Processing Time
0
Machine
B
3
_O 401
Buffer
Fig 4: Sufficient Capacity of Buffer
When the machine output buffer is undersized, it
blocks the machine. Two different scenarios can occur
under this condition, one in which the machine output
buffer is partially available until the next operation is
started, and the other in which the machine output buffer
remains unavailable until the next operation is started.
203
401
402
M3
M2
Processing Time
0
Machine
401
401
B
3
_O
Block
Buffer
203
401
402
M3
M2
Processing Time
0
Machine
401
B
3
_O
Fig 5-a: before Fig 5-b: after
The specific decoding operation steps for the flexible
job shop scheduling problem with output buffer
constraints are as follows:
Step1: Decode according to the operation ordering and
find the earliest start time Sijk of the current decoding Oij
on the machine Mk.
Step2: If Oij is the first operation of the job (i = 1),
return to step 1 to continue decoding the next operation,
otherwise go to step 3 (i 1).
Step3: Judgment based on the start time Sijk of
operation Oij and the end time Ci-1,j,k' of the previous
operation Oi-1,j, if Ci-1,j,k' = Sijk go to step 4, otherwise go to
step 5.
Step4: Update machine processing time, buffer time,
blocking time, determine whether operation Oij is the last
operation of the job, if yes (i = pj) go to step 6, otherwise
go to step 1 (i pj).
Step5: determine whether the output buffer
corresponding to the previous operation Oi-1,j processing
machine Mk' within the time period [Ci-1,j,k', Sijk] is
available, and if so, go to step four, otherwise go to step
seven.
Step6: Determine whether all jobs have been
decoded, if yes, end, otherwise go to step 1.
Step7: If the buffer is not available, determine
whether other job have been scheduled for machining on
the machine Mk' corresponding to the previous operation
Oi-1,j in time slot [Ci-1,j,k', Sijk], and if no other operation
have been scheduled go to step 4, otherwise go to step 8.
Step8: Find the time period [Ci-1,j,k', Sijk] in which the
buffer of machine Mk' is available, determine whether
there are other scheduled operation on the machine from
the time the previous operation is completed to the time
the buffer is available and the buffer can be satisfied from
the time the buffer is available to the time the operation
starts, if there are no other scheduled operations in the
blocking time period and the buffer if there is no other
scheduled operation in the blocking time period and the
buffer is available in the time period, then go to step 4,
otherwise go to step 9.
Step9: Adjust the previous operation Oi-1,j according
to the conflict points of the time period [Ci-1,j,k', Sijk] until
there is no conflict between all decoded operations of the
job and go to step 4.
The specific operation adjustment deconfliction
operation in Step 9 is as follows:
(1) Finding the conflict point of operation Oi-1,j
within the blocking time period or buffer time period of
the machine, and readjusting the earliest start time and end
time of operation Oi-1,j according to the conflict point.
(2) Determine the relationship between the adjusted
Ci-1,j,k' and the start processing time Sijk of Oij, go to (3) if
Ci-1,j,k' = Sijk, go to (4) if Ci-1,j,k' < Sijk, go to (4) if Ci-1,j,k >Sijk
then go to (5).
(3) Determine whether there is a pre-operation in
operation Oi-1,j, if not, end the adjustment, otherwise go to
(6).
Authorized licensed use limited to: SOUTHWEST JIAOTONG UNIVERSITY. Downloaded on June 13,2022 at 06:45:03 UTC from IEEE Xplore. Restrictions apply.
(4) Use steps one through nine to determine if there
is a conflict between Oij and Oi-1,j, and if so return to (1) to
continue adjusting Oi-1,j, otherwise go to (3).
(5) According to the adjusted Ci-1,j,k' readjust the start
processing time Sijk of operation Oij, and then use steps
one to nine to determine whether there is a conflict
between Oij and Oi-1,j, if there is then return (1) to continue
adjusting Oi-1,j, otherwise determine whether there is a
decoded post- operation for Oij, if so go to (7), otherwise
go to (3).
(6) Use steps one through nine to determine whether
there is a conflict between operation Oi-2,j and Oi-1,j, and if
so, make i=i-l return (1), otherwise end the adjustment.
(7) Use steps one to nine to determine whether there
is a conflict between operation Oij and Oi+,j. If so, make
i=i+1 return (1), otherwise go to (3).
C. Improving the initial population
Since genetic algorithms are strongly dependent on
the initial population, The machine assignment scheme
for the initial population in this paper is generated in
three different ways, the first one is to randomly generate
machine serial numbers based on operation selectable
machines, the second one is based on the shortest
machinable machine time of a single job from the first
operation, and the third one is based on random sorting of
job and selecting the machine with the shortest machining
time from the first operation of the first job according to
job sorting.
D. Improved genetic manipulation
1) Improved crossover operations:
In order to effectively avoid the illegal solution and the
correction operation of the illegal solution after the
crossover, this paper adopts the PPOC crossover
(Precedence Preserving Order-based Crossover, PPOC),
the crossover operator can ensure that all artifacts appear
in the same number of times in the parent and child
generations. And to maintain the order constraint
relationship between the operation of any job.
The specific schematic diagram of PPOC cross is
shown in Figure 6.
2P1 1 3 1 3 2 2
2313122O1
J1={2}
J2={1,3}
3P2 123221
1321223O2
2P1 1 3 1 3 2 2
Fig 6: The Crossed Schematic of PPOC
The coding of the bed part is generated according to
the natural sequence of the jobs. This coding method can
effectively avoid the problem of illegal solutions after
crossover. Two-point crossover is one of the classic
crossover operators [18], and the specific operation
operation is shown in Figure 7.
1P1-MS 3 1 2 2 3 2
1211221
P2-MS
1O1-MS 3 1 1 2 3 2
1212221
O2-MS
POS1 POS2
Fig7:The Crossed Schematic of Two-Point
2) Improve mutation operation
For the mutation mode of the coding of the operation
part, interchange mutation or insertion mutation is usually
used [13]. This article adopts the interchange mutation
method, by randomly selecting two different gene loci on
the chromosome, if the genes on the two gene loci are the
same, then reselect two different gene loci until the two
gene loci correspond to each other. When the genes are
different, the genes at the two gene loci are exchanged
again, and the exchange mutation operation is shown in
Figure 8.
1P-OS 3 1 2 2 3 2
1212332
O-OS
POS1 POS2
Fig8: The Mutation of The Swap
For the variation method of the machine part code,
single point mutation is usually used. The single point
mutation operation is shown in Figure 9.
1 2 1 1 2 2 1
P-MS
O11 O12 O21 O22 O23 O31 O32
M2M4M5
1 2 3
111 1 2 2 1
O-MS
(Machine 13 Optinal)
POS1
Selecting Machine 2
Fig9:The Mutation of MS Single Point
IV. EXPERIMENTAL VERIFICATION
In this paper, we choose the standard flexible job
shop scheduling benchmark example to test the
performance of the algorithm. Based on the benchmark
MK01~MK10 from literature [13] and KM01~KM05
from literature [14] and [15] and, the percentage of
machine output capacity of buffer to the number of
machined jobs is constructed with reference to literature
[8].
A. Setting Experimental Parameter
TABLE II. THE PARAMETERS OF IMPROVED GENETIC ALGORITHM
Parameter Implication Initial Value
OPT Generation Gap 0.9
Pc1 The Probability of 0.9
Pm2 The Probability of Mutation 0.1
When the population size PopSize=200 and the
number of iterations Gmax=100, the convergence of the
algorithm is better. The population sizes corresponding to
the three machine allocation scenarios were 80% of the
population size for the first machine allocation scenario,
10% for each of the second and third machine allocation
Authorized licensed use limited to: SOUTHWEST JIAOTONG UNIVERSITY. Downloaded on June 13,2022 at 06:45:03 UTC from IEEE Xplore. Restrictions apply.
scenarios. The specific parameters of the improved
genetic algorithm are assigned as shown in Table Ⅱ.
B. The Analysis of Experimental Results
The constructed benchmark is solved by improved
genetic algorithm (IGA) proposed in this paper, and
MATLAB R2014a software programming is applied to
implement the problem model algorithm, running on an
Intel(R) Core(TM) i5-9400 CPU @ 2.90GHz with
memory 8G.
1) The Verification of Algorithm Improvement
Mechanism.
This paper first validates the effectiveness of several
proposed algorithm improvement mechanisms, which
include the improvement of the initial population and the
improvement of the cross-mutation operation. From the
calculation results in Table Ⅲ, it can be seen that the
improved genetic algorithm proposed in this paper has
the best calculation results, and it can also be seen that
improving the initial population and improving the
genetic operator have improved the solution effect of the
algorithm, among which improving the initial population
has the best effect on the solution result of the algorithm,
so it can be proved that the improved mechanism
proposed in this paper is effective.
TABLE III. THE COMPARISON OF SOLUTION RESULTS UNDER DIFFERENT ALGORITHM IMPROVEMENT MECHANISMS
Bench Mark Scale GA GAin GAopr IGA
Best Avg Best Avg Best Avg Best Avg
MK01 10×6 54 57.2 42 43.6 42 45.4 41 41.8
MK02 10×6 46 48.9 33 35.2 38 43.7 33 34.8
MK03 15×8 246 264.6 204 204.9 216 230.1 204 204.6
MK04 15×8 80 85.1 67 69.1 69 73.8 67 67.8
MK05 15×4 213 221.2 201 207.4 207 217.2 196 212.6
MK06 10×15 126 131.6 75 80.4 106 108.8 74 78.4
MK07 20×5 226 240.6 175 187.9 214 222.1 171 181.2
MK08 20×10 556 580.1 526 533.1 535 565 523 530.6
MK09 20×10 434 453.2 349 363.8 387 422.3 343 359.8
MK10 20×15 361 377 272 279 324 343.1 269 278.8
KM01 4×5 14 16.4 11 11.1 11 11.1 11 11
KM02 8×8 30 33.8 16 16 19 22.3 14 15.3
KM03 10×7 24 29.5 12 13.3 15 17.6 11 12.9
KM04 10×10 20 24.1 7 7.9 10 12.5 7 7.9
KM05 15×10 35 39.9 12 13.5 22 25.5 12 14.5
2) The verification of Improved Genetic Algorithm
for Solving FJSP with different output buffer capacities.
V. This paper validates the effectiveness of the
improved genetic algorithm proposed in this paper in
solving the flexible job shop scheduling problem under
different output capacity of buffer and job number
percentage cases based on the validation of the
effectiveness of the improved algorithm mechanism. The
calculation results are shown in Table Ⅴ, where GAP
represents the percentage difference between the machine
output capacity of buffer and the optimal solution at 100%
of the number of jobs and the existing infinite capacity of
buffer.
1) The Verification of Superiority of Improved
Genetic Algorithm.
TABLE IV. RESULTS OF IMPROVED GENETIC ALGORITHM
Bench Mark Scale The Ratio of machine output Buffer's capacity to number of jobs/% BKS GAP
0 10 20 30 50 100
MK01 10×6 53 41 41 40 40 40 40 0
MK02 10×6 46 33 31 30 29 27 26 3.85
MK03 15×8 319 204 204 204 204 204 204 0
MK04 15×8 96 67 66 66 66 66 65 1.54
MK05 15×4 320 196 184 178 178 171 171 0
MK06 10×15 121 74 71 69 68 62 61 1.64
MK07 20×5 264 171 151 148 149 145 145 0
MK08 20×10 658 523 523 523 523 523 523 0
MK09 20×10 744 343 327 321 319 310 307 0.98
MK10 20×15 555 269 255 254 252 245 242 1.24
KM01 4×5 11 11 11 11 11 11 11 0
KM02 8×8 23 14 14 14 14 14 14 0
KM03 10×7 17 12 11 11 11 11 11 0
KM04 10×10 13 7 7 7 7 7 7 0
KM05 15×10 33 12 12 12 12 12 12 0
VI. CONCLUSION
This paper studies the flexible job shop scheduling
problem with buffer constraints and its solution method,
proposes an improved genetic algorithm to solve the
problem, verifies the effectiveness and feasibility of the
algorithm improvement mechanism through a calculation
example, and compares other solving algorithms in The
solution results under the same machine buffer capacity
and the percentage of the number of jobs prove that the
improved genetic algorithm proposed can obtain higher-
precision solutions, thus verifying the effectiveness and
superiority of the algorithm.
Authorized licensed use limited to: SOUTHWEST JIAOTONG UNIVERSITY. Downloaded on June 13,2022 at 06:45:03 UTC from IEEE Xplore. Restrictions apply.
TABLE V. THE PERCENTAGE OF DIFFERENCE BETWEEN THE
OPTIMAL SOLUTION OF VARIOUS ALGORITHMS AND THE EXISTING
OPTIMAL SOLUTION (%)
Bench Mark Scale TS HGWO GA IGA
MK01 10×6 5.00 0 5.00 0
MK02 10×6 23.08 11.54 23.08 3.85
MK03 15×8 3.43 0 3.43 0
MK04 15×8 24.62 0 24.62 1.54
MK05 15×4 8.77 2.34 8.77 0
MK06 10×15 40.98 29.51 40.98 1.64
MK07 20×5 8.28 2.76 8.28 0
MK08 20×10 0 0 0 0
MK09 20×10 20.20 5.86 20.20 0.98
MK10 20×15 22.31 4.55 22.31 1.24
KM01 5 9.09 0 0 0
KM02 8 7.14 0 7.14 0
KM03 10×7 18.18 0 18.18 0
KM04 10×10 14.29 0 0 0
KM05 15×10 16.67 8.33 91.67 0
average value 14.80 4.33 18.24 0.62
REFERENCES
[1] Błażewicz J,Finke G,Haupt R,Schmidt G. New trends in
machine scheduling[J]. North-Holland,1988,37(3).
[2] Scheduling: Theory, Algorithms, and Systems[J]. Taylor &
Francis,2016,28(8).
[3] Philippe L,Mohand L,Nikolay T. Job-shop based
framework for simultaneous scheduling of machines and
automated guided vehicles[J]. International Journal of
Production Economics,2013,143(1).
[4] Toba H. A tight flow control for job-shop fabrication lines
with finite buffers[C]// Semiconductor Manufacturing
Conference Proceedings,1997 IEEE International
Symposium on. IEEE,1997.
[5] Débora P R. A note on constructive heuristics for the
flowshop problem with blocking[J]. International Journal
of Production Economics,2004,87(1).
[6] Zhang C,Shi Z S,Huang Z W,Wu Y F,Shi L Y. Flow shop
scheduling with a batch processor and limited buffer[J].
International Journal of Production Research,2016,55(11).
[7] Han Y Y,Gong D W,Li J Q,Zhang Y. Solving the blocking
flow shop scheduling problem with makespan using a
modified fruit fly optimisation algorithm[J]. Taylor &
Francis,2016,54(22).
[8] Zeng C K,Tang J F,Fan Z P,Yan C J. Scheduling of a job-
shop problem with limited output buffers[J]. Engineering
Optimization,2020,52(1).
[9] Marco P,Dario P. An iterated greedy metaheuristic for the
blocking job shop scheduling problem[J]. Journal of
Heuristics,2016,22(4).
[10] Louaqad S ,Kamach O. Mixed Integer Linear Programs for
Blocking and No Wait Job Shop Scheduling Problems in
Robotic cells[J]. International Journal of Computer
Applications,2016, 153(10):1-7.
[11] Liu S Q,Kozan E,Masoud M,Zhang Y,Felix T,Chan S. Job
shop scheduling with a combination of four buffering
constraints[J]. International Journal of Production
Research,2018,56(9).
[12] Jiae Z,Jian J Y. Flexible job-shop scheduling with flexible
workdays, preemption, overlapping in operations and
satisfaction criteria: an industrial application[J].
International Journal of Production Research,2016,54(16).
[13] Paolo B. Routing and scheduling in a flexible job shop by
tabu search[J]. Annals of Operations Research,1993,41(3).
[14] Imed K,Slim Ha,Pierre B. Pareto-optimality approach for
flexible job-shop scheduling problems: hybridization of
evolutionary algorithms and fuzzy logic[J]. Mathematics
and Computers in Simulation,2002,60(3).
[15] Imed K,Slim H,Pierre B. Approach by localization and
multiobjective evolutionary optimization for flexible job-
shop scheduling problems.[J]. IEEE
Trans.Systems,Man,and Cybernetics,Part C,2002,32(1).
Authorized licensed use limited to: SOUTHWEST JIAOTONG UNIVERSITY. Downloaded on June 13,2022 at 06:45:03 UTC from IEEE Xplore. Restrictions apply.
Article
Full-text available
In this paper, a new scheduling problem is investigated in order to optimise a more generalised Job Shop Scheduling system with a Combination of four Buffering constraints (i.e. no-wait, no-buffer, limited-buffer and infinite-buffer) called CBJSS. In practice, the CBJSS is significant in modelling and analysing many real-world scheduling systems in chemical, food, manufacturing, railway, health care and aviation industries. Critical problem properties are thoroughly analysed in terms of the Gantt charts. Based on these properties, an applicable mixed integer programming model is formulated and an efficient heuristic algorithm is developed. Computational experiments show that the proposed heuristic algorithm is satisfactory for solving the CBJSS in real time.
Article
This article addresses a job-shop problem with limited output buffers (JS-LOB) with the objective of minimizing the process makespan. An integer nonlinear mathematical programming model is proposed to describe this problem. Based on the model, a two-stage algorithm consisting of obtaining feasible solutions and a local search is proposed to solve the JS-LOB problem. The local search has two operators: the first is a neighbourhood structure based on a disjunctive graph model, and the second is similar to crossover in the genetic algorithm to avoid falling into local optima. Computational results are presented for a set of benchmark tests. The results show the effectiveness of the proposed algorithm and indicate whether the processing time of the job conforms to a uniform distribution. When the proportion between the capacity of the buffer and the number of jobs is larger than 20%, the influence of the buffer becomes very small.
Article
This paper addresses flow shop scheduling problem with a batch processor followed by a discrete processor. Incompatible job families and limited buffer size are considered, and the objective is to determine a schedule such that the total completion time is minimised. Flexible buffer service policy is designed, and a greedy heuristic together with the worst-case analysis is developed. We also propose a hybrid method involving a Differential Evolution algorithm. Moreover, two tight lower bounds are provided to measure the performances of the proposed algorithms. Numerical results demonstrate that the proposed algorithms are capable of providing high-quality solutions for large-scale problems within a reasonable computational time.
Article
The flow shop scheduling problem with blocking has important applications in a variety of industrial systems but is under-represented in the research literature. In this paper, a modified fruit fly optimisation (MFFO) algorithm is proposed to solve the above scheduling problem for makespan minimisation. The MFFO algorithm mainly contains three key operators. One is related to the initialisation scheme in which a problem-specific heuristic is adopted to generate an initial fruit fly swarm location with high quality. The second is concerned with the smell-based search in which a neighbourhood strategy is designed to generate a new location. To further enhance the exploitation of the proposed algorithm considered, a speed-up insert-neighbourhood-based local search is applied with a probability. Finally, the last is for the vision-based search in which an update criterion is proposed to induce the fruit fly into a better searching space. The simulation experimental results demonstrated the efficiency of the proposed algorithm, in spite of its simple structure, in comparison with a state-of-the-art algorithm. Moreover, new best solutions for Taillard’s instances are reported for this problem, which can be used as a basis of comparison in future studies.
Article
This paper addresses a real scheduling problem, namely, a complex flexible job-shop scheduling problem (FJSP) with special characteristics (flexible workdays, preemption and overlapping in operations), where the objective is to maximise a satisfaction criterion defined through goal programming. To allow for flexible workdays, the solution representation of the classical FJSP is extended to consider overtime decisions and a sequence of time-cell states, which is used to model resource capability. A new temporal-constraint-handling method is proposed to solve the problem of overlapping in operations in a flexible-workday environment. Three solution methods are proposed to solve this scheduling problem: a heuristic method based on priority rules, a goal-guided tabu search (GGTS) and an extended genetic algorithm (EGA). In the GGTS, the neighbourhood functions are defined based on elimination approaches, and five possible neighbourhood functions (N0 ⊇ N1 ⊇ N2 ⊇ N3 ⊇ N4) are presented. The effectiveness and efficiency of the three solution methods are verified using dedicated benchmark instances. Computational simulations and comparisons indicate that the proposed N4-based GGTS demonstrates performance competitive with that of the EGA and the GGTSs based on the other neighbourhood functions (N0, N1, N2 and N3) for solving the scheduling problem.
Article
In this paper we consider a job shop scheduling problem with blocking (BJSS) constraints. Blocking constraints model the absence of buffers (zero buffer), whereas in the traditional job shop scheduling model buffers have infinite capacity. There are two known variants of this problem, namely the blocking job shop scheduling with swap allowed (BWS) and the one with no swap allowed (BNS). This scheduling problem is receiving an increasing interest in the recent literature, and we propose an Iterated Greedy (IG) algorithm to solve both variants of the problem. IG is a metaheuristic based on the repetition of a destruction phase, which removes part of the solution, and a construction phase, in which a new solution is obtained by applying an underlying greedy algorithm starting from the partial solution. A comparison with recent published results shows that the iterated greedy algorithm outperforms other state-of-the-art algorithms on benchmark instances. Moreover it is conceptually easy to implement and has a broad applicability to other constrained scheduling problems.
Article
Most scheduling problems are complex combinatorial problems and very difficult to solve [Manage. Sci. 35 (1989) 164; F.S. Hillier, G.J. Lieberman, Introduction to Operations Research, Holden-Day, San Francisco, CA, 1967]. That is why, lots of methods focus on the optimization according to a single criterion (makespan, workloads of machines, waiting times, etc.). The combining of several criteria induces additional complexity and new problems. In this paper, we propose a Pareto approach based on the hybridization of fuzzy logic (FL) and evolutionary algorithms (EAs) to solve the flexible job-shop scheduling problem (FJSP). This hybrid approach exploits the knowledge representation capabilities of FL [Fuzzy Sets Syst. 1 (1989)] and the adaptive capabilities of EAs. The integration of these two methodologies for the multi-objective optimization has become an increasing interest. The objective considered is to minimize the overall completion time (makespan), the total workload of machines and the workload of the most loaded machine. Many examples are presented to illustrate some theoretical considerations and to show the efficiency of the suggested methodology.
Article
This paper deals with the problem of simultaneous scheduling of machines and identical automated guided vehicles (AGVs) which are well known difficult to solve problems. The studied problem can be modelled as a job shop where the jobs have to be transported between machines by AGVs. This article introduces a framework based on a disjunctive graph to modelize the joint scheduling problem and on a memetic algorithm for machines and AGVs scheduling. The objective is to minimize the makespan. Computational results are presented for a benchmark literature instances. New upper bounds are found, showing the effectiveness of the presented approach.
Article
A hierarchical algorithm for the flexible job shop scheduling problem is described, based on the tabu search metaheuristic. Hierarchical strategies have been proposed in the literature for complex scheduling problems, and the tabu search metaheuristic, being able to cope with different memory levels, provides a natural background for the development of a hierarchical algorithm. For the case considered, a two level approach has been devised, based on the decomposition in a routing and a job shop scheduling subproblem, which is obtained by assigning each operation of each job to one among the equivalent machines. Both problems are tackled by tabu search. Coordination issues between the two hierarchical levels are considered. Unlike other hierarchical schemes, which are based on a one-way information flow, the one proposed here is based on a two-way information flow. This characteristic, together with the flexibility of local search strategies like tabu search, allows to adapt the same basic algorithm to different objective functions. Preliminary computational experience is reported.