advanced scheduling model for unrelated parallel machines … · the appropriate gene sequences...
Post on 12-Jul-2020
1 Views
Preview:
TRANSCRIPT
ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL.18, ISSUE 2/2020
20
ADVANCED SCHEDULING MODEL FOR UNRELATED
PARALLEL MACHINES PROBLEM WITH JOB-SEQUENCE
DEPENDENT SETUP TIMES, AVAILABILITY CONSTRAINTS
AND TIME WINDOWS
Anita AGÁRDI
1,* and Károly NEHÉZ
1
1 University of Miskolc, Institute of Informatics, Egyetemváros, 3515, Miskolc, Hungary
Corresponding author, Anita Agárdi, e-mail: agardianita@iit.uni-miskolc.hu
ABSTRACT: Production scheduling is still an important method at manufacturing companies,
providing accurate, real-time schedules and helps in decision support. This article examines
a specific production planning problem, the Advanced Scheduling Model for Unrelated
Parallel Machines Problem with Job-Sequence Dependent Setup Times, Availability
Constraints and Time Windows. In this problem, many different types of products have to be
manufactured. Each job has predefined average machining times and can have time
windows, which mean that the task can only be performed at a certain time interval. There is
also a setup time, which means the period required to prepare a machine to accept a new job
or operation. Number of machines, availability constraints (indicates how long the machine
can be used) are also known in advance and our goal is to minimize the setup time,
considering all constraints. In this paper, we present the solution of the problem with
Genetic Algorithm. We also present a permutation representation of the problem and the
evaluation of the representation. Dataset and test results are also presented. Based on the
test results Genetic Algorithm can be an effective algorithm to solve the Parallel Machines
Problem.
KEYWORDS: scheduling, parallel machines problem, setup time, time window, production,
optimization
1 INTRODUCTION
One of the most important tasks of each
manufacturing company is to strive for the cost-
efficient production. Cost-efficient production
involves making efficient use of machines. When
we set up our machines, i.e. we switch from one
product type to another, production stops, so the
machines are unused. So, one of the most important
factor is, how to minimize these setup intervals.
This paper presents an advanced scheduling model
for a specific: Unrelated Parallel Machines Problem
with Job-Sequence Dependent Setup Times,
Availability Constraints and Time Windows
problem. During the problem-solving process the
machines have different capacities. Each job has
time window, this means that each job must be
performed within an interval. Jobs and machines
have different setup times. It means, that switching
form one job to another has some time cost. The
machines are initially in the initial state and require
a predefined setup time to start each job. After
completing the jobs, machines must also be reset. In
this paper first we present a literature review on
parallel machines problem. In the next session, we
describe the details of Unrelated Parallel Machines
Problem with Job-Sequence Dependent Setup
Times, Availability Constraints and Time Windows
- problem. Our problem has been solved with a
genetic algorithm, so in Section 4 the mathematical
details of our solution - the applied crossover
(partially matched crossover, order crossover, cycle
crossover) and mutation techniques - is also
presented. For verifying the results, test dataset and
test results are also presented. In the last section,
concluding remarks have been made.
ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL.18, ISSUE 2/2020
21
Fig. 1. The characterization of Parallel Machines Problem
2 THE PARALLEL MACHINES
PROBLEM
The Parallel Machines Problem is a common
problem in manufacturing systems. The base
problem is scheduling independent jobs on
identical machines in order to minimize the
makespan (the total finishing time). Fig. 1. shows
the set of boundary conditions and their associated
types based on the literature. The boundary
conditions are: machines, jobs, time and objective
function. In Fig. 1. we summarized the most
important types of parallel machines scheduling
problems. Machine eligibility restrictions [1], which
means that a machine may be capable of processing
a job or not belongs to the machines and jobs
parameters. The identical machine parallel
scheduling [2-3] is associated with machines, jobs
and time main conditions. In our case the machines
are identical (identical capacity, energy
consumption). Processing times are machine
independent. Uniform parallel machines [3] means,
that the machines have different speeds (job
processing times are different on different
machines). This type associated with machines, jobs
and time. The job availability interval [4] also
belongs to machines, jobs and time. This constraint
means that the machine is available to process jobs
in a limited time interval. In case of machine and
sequence-dependent setup times [1] the setup time
depends on the job, the preceding job, and the
processing machine. The learning effect [5] type
means, that the actual processing time of each jobs
on a machine is the product of its basic processing
time and the so-called learning factor. This type of
parallel machines problem belongs to the machines,
jobs and time main factor. In case of fuzzy parallel
machine problem [6] jobs have fuzzy processing
time and machines have fuzzy completion time, and
fuzzy makespan. This type can belong to machines,
jobs and time main condition. Time-of-use
electricity tariffs [7] belongs to all main category. In
case of this specific problem the goal function is the
minimization of the total electricity cost. Each job
has a power consumption rate on each machine. The
jobs with priority level [1] connect with job main
condition. In this problem each job has priority,
which is considered when scheduling. It is advisable
to carry out important jobs first. The conflict
constraint [8] also only belongs to jobs main
category type. In case of this constraint the pairs of
jobs are mutually disjoint due to resource
availability. Jobs conflicting to each other cannot be
processed simultaneously. The sequence dependent
setup times [9] means that the setup times depend
on the actual job and on the preceding job. This
type of parallel machines problem can be associated
with jobs and time main category. The due date
[10], release time [11] and the time window [12]
ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL.18, ISSUE 2/2020
22
(the combination of due date and release time) are
associated with jobs and times main factor. Due
date [10] means that the jobs must be started no
later than that time. Release time [11] means that
the jobs must be started no earlier than that time.
The last two types in the image belong to the
objective function category. The minimization of
the total earliness and tardiness time [13] means,
that delayed customer orders reduce customer
satisfaction, but early completion creates inventory
storage costs, which increase the total cost. This
type also belongs to time category, but green
scheduling [14] only belongs to goal function. In
case of green scheduling the goal function takes into
account the machine processing costs alongside the
other production criteria.
Several heuristics are developed to solve the
Parallel Machines Problems, for example: Genetic
Algorithm [15-18] Simulated Annealing [19-21]
Tabu Search [22-26] Ant Colony Optimization [27-
28] Particle Swarm Optimization [29-33] Harmony
Search [34].
3 THE UNRELATED PARALLEL
MACHINES PROBLEM WITH JOB-
SEQUENCE DEPENDENT SETUP
TIMES, AVAILABILITY
CONSTRAINTS AND TIME
WINDOWS
This section presents the Unrelated Parallel
Machines Problem with Job-Sequence Dependent
Setup Times, Availability Constraints and Time
Windows. In the case of our specific problem the
number of tasks, the number of machines is given in
advance. We also know the setup times of each
jobs. The jobs also have production times, and time
windows. Time window means that a job must be
started at a certain time interval. Machines have a
capacity limit for the production time. Our goal is to
make all jobs and minimize the setup times.
In Figure 2. the Unrelated Parallel Machines
Problem with Job-Sequence Dependent Setup
Times Availability Constraints and Time Windows
is demonstrated. In this example 3 machines can be
used. 17 jobs need to be done. Each job has
duration, earliest and latest starting time. Each job
has setup times. Machines have reset state from
which after setup the first job can be done. After all
jobs have been completed, the machines must be
reset. In Figure 2. the first machine makes (after 0-
hour setup time) the Job 1, than the Job 3 (after 1
hour setup time), than Job 5, Job 8, Job 6, Job 2.
Second machine (after 0-hour setup time) does Job
4, after 1-hour setup time Job 7, then Job 10, Job
14, Job 9, Job 15. Third machine does Job 11 (after
1-hour setup time), then Job 16 (after 3 hours setup
time), then Job 12, Job 17, Job 13.
Fig. 2. The Unrelated Parallel Machines Problem with Job-Sequence Dependent Setup Times, Availability
Constraints and Time Windows
In the following we present the mathematical model
of the Unrelated Parallel Machines Problem with
Job-Sequence Dependent Setup Times, Availability
Constraints and Time Windows.
The objective function is to minimize setup time:
(1)
One job must be performed once:
ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL.18, ISSUE 2/2020
23
(2)
(3)
Continuity of production:
(4)
Time window:
(5)
(6)
The machine does not exceed the availability
constraint limit:
(7)
4 OPTIMIZATION ALGORITHM
4.1 Genetic Algorithm
Genetic Algorithm (GA) is a partial search
algorithm, which does not guarantee to find the
globally optimum solution of a problem. Compared
to other optimization algorithms and iterative
methods, GA uses sample populations, which
consists of individuals. Each individual represents a
solution. Individuals can be assigned a fitness value
based on the objective function. Generally, one of
two individuals will be the better whose fitness
value is better. [35]
BEGIN PROCEDURE
Step 1.: Initialization the population with random
individuals
Step 2.: Calculation the fitness value for each
individual
WHILE (termination criteria is not met) DO
Step 3.: Bringing certain parents to the next
generation
Step 4.: Recombination of selected parent
pairs
Step 5.: Mutation of selected new individuals
Step 6.: Evaluation of new individuals
Step 7.: Selecting individuals of the next
generation
END WHILE END PROCEDURE
Fig. 3 The pseudo code of the Genetic Algorithm
The first step is to create the initial population.
The next task is to calculate the fitness values of the
initial individuals. After calculating the fitness
values of the initial population, a loop follows. The
following population is always produced in the
loop. In the loop selecting two individuals from the
existing population, which will be the parents. The
parent individuals are crossed. The result of the
crossover is two new individuals. Mutations can
then be made on the two new individuals. Then we
calculate the fitness value of the new individuals.
The next generation is then selected. Algorithm
ends when we reach the termination criteria, in our
case reaching a given iteration count.
In the following, we present the applied
representation and evaluation technique, then the
crossover and mutation techniques.
Fig. 4 The representation of the problem
The evaluation of the permutation is the
following: each element of the permutation denotes
each job. We take each element of the permutation
in sequence until we hit the capacity limit of the
first machine or the time window of the job. If we
hit a limit, then the task will be assigned to the next
machine. If there are no more free machines or no
more jobs, the assignment ends. Calculation of
fitness is as follows: we need to take the machine's
setup time for the first task assigned to them, and
then the setup time between each task, and lastly the
last task assigned to that machine and its setup time.
The goal is the minimization of the setup time and
considering all limits (availability constraints and
time windows).
The fitness function is the following:
fitness=all_setup_time*(not_completed_job+1)
In the following we present the applied
crossover techniques, which are the follows:
Partially Matched Crossover (PMX), Cycle
Crossover (CX), Order Crossover (OX). Crossover
is the process of creating new individuals. The
procedure creates the new individuals by selecting
the appropriate gene sequences from the parents.
Partially Matched Crossover (PMX): [35,36]
First, we select two random locations on the parent
chromosomes. The fragment between the two
locations is called the fitting section. This process
can be seen in Figure 5. The genes here are paired.
Thus the following pairs of numbers are exchanged:
(8,7), (7,9), (6,8), (5,4).
Fig. 5 The Partially Matched Crossover
Order Crossover (OX): In this procedure also
two points are randomly selected, which give a
fitting section. First, the elements of the fitting
ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL.18, ISSUE 2/2020
24
section of the first individual are deleted from the
second individuals (and vice versa), so holes are
created (denoted by the letter H in Figure 6). These
holes in the offspring must be in the fitting section,
so the fitting section of the offspring must be left
blank (denoted by H in Figure 6). The first non-hole
(non-H) gene in the parent will be the first element
of the offspring. The other genes can now be
inserted so that always taken the next non-empty
(non-H letter) gene in the parent and placed in the
next free space in the offspring in the following
matter: the fitting section of the offspring must be
empty. In the offspring, we place the genes in the
fitting section of the other parent chromosome in
place of the blank space (indicated with H in Figure
6). [36]
Fig. 6 The Order Crossover
Cycle Crossover (CX): this crossover is based on
the fact, that an element is transferred from the first
or second parent to the new entity [36]. In Figure 7.
the first element of the first and second parents are
taken, so the (2,2) pair. The first child gets number
2, and the second also gets number 2. Then the (1,5)
pair is taken into account. The first child gets the
number 1, the second gets the number 5. The
second child have number 5, so the first child also
must have number 5. Therefore, we take the (5,4)
pair into account, and the first child get number 5,
the second get number 4. Then the (4,1) pair is
chosen. The circle is then closed, because the first
child has number 1. Then the first child gets the
elements of the second parent, while the second
child gets the elements of the first parent.
Fig. 7 The Cycle Crossover
Mutation: The 2-opt operator was used for
mutation. In permutation, this means selecting a
section randomly and inverting the elements in that
section. [37]
Fig. 8 The 2-opt operator
5 TEST RESULTS
Table 1. Parameters of the Genetic algorithm Number of iterations 500
Number of populations 150
Partially Matched Crossover rate 0.3
Order Crossover rate 0.3
Cycle Crossover rate 0.3
Mutation rate 0.1
In this section we present the test results. First,
we tested our algorithm with benchmark data from
Shunji Tanaka dataset [38]. Table 2 and Figure 9
indicate the results of the benchmark data. Then the
efficiency of our algorithm is tested with our
dataset. Table 3 indicates the parameters of the
machine, while table 4 shows the parameters of the
task, and table 5 indicates the setup parameters.
Table 2. Benchmark data test results Benchmark dataset Result
Name of the
dataset
Number of jobs
Number of machines
Number of created jobs
(average)
Number of machines (average)
20_02_02_06_001
20 2 18.7 2
20_06_02_08_002
20 6 20 6
Fig. 9. The test result of the 20_02_02_06_001 dataset
ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL.18, ISSUE 2/2020
25
Table 3. Machine parameters Machine Capacity
M1 5000
M2 4000
M3 5000
M4 5500
M5 4500
M6 5000
M7 5000
Table 4. Task parameters Task Start time window End time window Processing time
T1 275 3340 520
T2 362 4780 520
T3 1256 4700 84
T4 1000 3200 120
T5 452 4500 54
T6 0 5500 325
T7 1000 4300 200
T8 2563 3210 420
T9 1000 5000 810
T10 1200 5500 810
T11 3200 4500 410
T12 2300 4200 630
T13 12 4800 1200
T14 2400 5500 850
T15 3400 4200 500
T16 1122 4900 412
T17 2120 5000 560
T18 1500 5000 250
Table 5. The setup parameters T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 T11 T12 T13 T14 T15 T16 T17 T18 M1 M2 M3 M4 M5 M6 M7
T1 - 15 12 25 14 13 14 22 23 29 10 8 17 14 12 24 17 13 23 15 25 14 32 12 22
T2 12 - 11 10 14 18 25 24 27 23 11 20 22 21 23 24 22 21 25 12 12 25 20 25 22
T3 10 13 - 20 24 21 20 15 17 15 23 14 22 30 34 15 4 18 20 24 26 17 12 22 30
T4 34 31 12 - 24 20 14 15 22 27 30 21 22 18 15 10 14 18 25 34 24 25 22 22 21
T5 21 14 15 22 - 4 12 25 32 34 28 15 21 28 19 24 25 18 23 34 30 21 28 26 27
T6 27 25 23 24 35 - 32 25 24 28 27 26 35 28 29 34 26 28 34 29 28 29 24 22 29
T7 8 35 33 39 34 15 - 19 33 22 27 29 22 27 29 22 20 23 34 32 5 10 11 19 29
T8 15 22 29 28 35 15 22 - 24 29 27 25 26 24 32 25 37 24 26 28 35 22 28 24 33
T9 28 22 21 15 12 9 29 33 - 24 20 37 36 34 31 25 29 20 24 26 37 12 15 19 20
T10 35 32 26 20 18 9 17 22 25 - 38 21 15 20 15 20 16 20 22 29 36 34 35 22 25
T11 22 24 25 20 15 20 18 25 32 41 - 22 10 19 9 18 10 16 14 29 34 12 10 15 12
T12 25 12 5 16 19 20 22 24 32 12 22 - 16 20 12 22 24 26 30 34 16 22 27 29 35
T13 25 24 5 12 19 20 24 26 15 20 35 15 - 21 24 12 15 23 25 35 37 20 22 21 15
T14 21 20 13 15 25 12 16 22 25 35 33 31 21 - 22 25 26 32 34 39 16 25 22 26 22
T15 23 22 25 15 26 20 24 22 28 29 24 26 23 25 - 26 22 24 25 20 21 22 26 23 20
T16 20 21 22 24 28 26 25 24 26 22 24 25 12 12 13 - 11 10 7 9 12 22 25 23 24
T17 35 33 31 26 24 25 26 22 26 12 5 23 28 33 34 7 - 32 15 16 19 12 29 25 22
T18 15 24 25 10 12 13 19 35 34 25 26 20 24 26 24 27 22 - 24 25 20 21 23 25 22
M1 25 21 25 20 23 25 21 25 20 22 23 10 25 26 24 25 32 25 - - - - - - -
M2 22 21 25 22 23 28 35 36 33 34 26 35 32 33 39 13 15 2 - - - - - - -
M3 10 20 23 24 25 26 20 21 26 12 13 15 12 24 26 23 22 36 - - - - - - -
M4 12 20 22 23 15 10 12 14 20 26 20 23 24 25 10 5 23 24 - - - - - - -
M5 10 23 10 22 23 24 23 5 15 24 23 26 29 23 24 23 22 25 - - - - - - -
M6 10 23 20 15 26 22 23 25 22 25 27 35 34 33 26 12 25 20 - - - - - - -
M7 24 25 10 20 25 26 23 24 25 26 33 34 35 28 22 26 11 15 - - - - - - -
Fig. 10. The test result of our dataset
Based the benchmark dataset and our dataset the
presented algorithm is efficient for solving Parallel
Machines Scheduling Problem. Table 2 indicates
that, the first benchmark data set is almost perfectly
solved and the second dataset is perfectly solved.
For our test data is also proved its effectiveness.
ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL.18, ISSUE 2/2020
26
6 CONCLUSION
Parallel Machines Scheduling Problem is an
important production optimization task. Many types
have evolved over the years, which we have
presented in the study. In this paper we presented a
specific solution for the “Unrelated Parallel
Machines Problem with Job-Sequence Dependent
Setup Time, Availability Constraints and Time
Windows” type of problem. In this case machines
of different capacities are required to complete the
jobs. The job has processing times and time
windows. Moving from one task to another requires
setup times. The objective function is the
minimization of the setup time with all the
restrictions. In this article, we introduced a genetic
algorithm to solve this problem. The efficiency of
the algorithm was proved with benchmark test
results.
7 REFERENCES
[1] Rauchecker, G., & Schryen, G. (2019). Using
high performance computing for unrelated parallel
machine scheduling with sequence-dependent setup
times: Development and computational evaluation of a
parallel branch-and-price algorithm. Computers &
Operations Research, 104, 338-357.
[2] Żurowski, M., & Gawiejnowicz, S. (2019).
Scheduling preemptable position-dependent jobs on two
parallel identical machines. Computers & Industrial
Engineering, 132, 373-384.
[3] Soper, A. J., & Strusevich, V. A. (2019).
Schedules with a single preemption on uniform parallel
machines. Discrete Applied Mathematics, 261, 332-343.
[4] Wang, X., & Cheng, T. C. E. (2015). A heuristic
for scheduling jobs on two identical parallel machines
with a machine availability constraint. International
Journal of Production Economics, 161, 74-82.
[5] Przybylski, B. (2018). A new model of parallel-
machine scheduling with integral-based learning effect.
Computers & Industrial Engineering, 121, 189-194.
[6] Li, K., Chen, J., Fu, H., Jia, Z., & Fu, W.
(2019). Uniform parallel machine scheduling with fuzzy
processing times under resource consumption constraint.
Applied Soft Computing, 105585.
[7] Che, A., Zhang, S., & Wu, X. (2017). Energy-
conscious unrelated parallel machine scheduling under
time-of-use electricity tariffs. Journal of Cleaner
Production, 156, 688-697.
[8] Hong, H. C., & Lin, B. M. (2018). Parallel
dedicated machine scheduling with conflict graphs.
Computers & Industrial Engineering, 124, 316-321.
[9] Gedik, R., Rainwater, C., Nachtmann, H., &
Pohl, E. A. (2016). Analysis of a parallel machine
scheduling problem with sequence dependent setup times
and job availability intervals. European Journal of
Operational Research, 251(2), 640-650.
[10] Bank, J., & Werner, F. (2001). Heuristic
algorithms for unrelated parallel machine scheduling
with a common due date, release dates, and linear
earliness and tardiness penalties. Mathematical and
computer modelling, 33(4-5), 363-383.
[11] Centeno, G., & Armacost, R. L. (1997). Parallel
machine scheduling with release time and machine
eligibility restrictions. Computers & industrial
engineering, 33(1-2), 273-276.
[12] Gabrel, V. (1995). Scheduling jobs within time
windows on identical parallel machines: New model and
algorithms. European Journal of Operational Research,
83(2), 320-329.
[13] Cheng, C. Y., & Huang, L. W. (2017).
Minimizing total earliness and tardiness through
unrelated parallel machine scheduling using distributed
release time control. Journal of manufacturing systems,
42, 1-10.
[14] Safarzadeh, H., & Niaki, S. T. A. (2019). Bi-
objective green scheduling in uniform parallel machine
environments. Journal of cleaner production, 217, 559-
572
[15] Zhou, S., Xie, J., Du, N., & Pang, Y. (2018). A
random-keys genetic algorithm for scheduling unrelated
parallel batch processing machines with different
capacities and arbitrary job sizes. Applied Mathematics
and Computation, 334, 254-268.
[16] Sheremetov, L., Martínez-Muñoz, J., & Chi-
Chim, M. (2018). Two-stage genetic algorithm for
parallel machines scheduling problem: Cyclic steam
stimulation of high viscosity oil reservoirs. Applied Soft
Computing, 64, 317-330.
[17] Woo, Y. B., Jung, S., & Kim, B. S. (2017). A
rule-based genetic algorithm with an improvement
heuristic for unrelated parallel machine scheduling
problem with time-dependent deterioration and multiple
rate-modifying activities. Computers & Industrial
Engineering, 109, 179-190.
[18] Joo, C. M., & Kim, B. S. (2015). Hybrid genetic
algorithms with dispatching rules for unrelated parallel
machine scheduling with setup time and production
availability. Computers & Industrial Engineering, 85,
102-109.
[19] Xiao, J., Yang, H., Zhang, C., Zheng, L., &
Gupta, J. N. (2015). A hybrid Lagrangian-simulated
annealing-based heuristic for the parallel-machine
capacitated lot-sizing and scheduling problem with
sequence-dependent setup times. Computers &
Operations Research, 63, 72-82.
[20] Kim, D. W., Kim, K. H., Jang, W., & Chen, F. F.
(2002). Unrelated parallel machine scheduling with setup
times using simulated annealing. Robotics and
Computer-Integrated Manufacturing, 18(3-4), 223-231.
[21] Lo, Z. P., & Bavarian, B. (1992). Optimization
of job scheduling on parallel machines by simulated
annealing algorithms. Expert Systems with applications,
4(3), 323-328.
[22] Alharkan, I., Saleh, M., Ghaleb, M. A., Kaid, H.,
Farhan, A., & Almarfadi, A. (2019). Tabu search and
particle swarm optimization algorithms for two identical
parallel machines scheduling problem with a single
ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL.18, ISSUE 2/2020
27
server. Journal of King Saud University-Engineering
Sciences.
[23] Shahvari, O., & Logendran, R. (2017). An
enhanced tabu search algorithm to minimize a bi-criteria
objective in batching and scheduling problems on
unrelated-parallel machines with desired lower bounds
on batch sizes. Computers & Operations Research, 77,
154-176.
[24] Lara, A. F. B., Yalaoui, F., & Dugardin, F.
(2012). A tabu search algorithm to minimize the total
tardiness in the parallel machines scheduling problem.
IFAC Proceedings Volumes, 45(6), 1371-1376.
[25] Sels, V., Coelho, J., Dias, A. M., & Vanhoucke,
M. (2015). Hybrid tabu search and a truncated branch-
and-bound for the unrelated parallel machine scheduling
problem. Computers & Operations Research, 53, 107-
117.
[26] Hornyák, O., Erdélyi F., Kulcsár Gy. (2006).
Detailed Scheduling and Uncertainty Management in
Customized Mass Production, Proceedings of the 12th
International Conference on Machine Design and
Production UMTIK, pp. 423-428., 6 p.
[27] Jia, Z., Yan, J., Leung, J. Y., Li, K., & Chen, H.
(2019). Ant colony optimization algorithm for scheduling
jobs with fuzzy processing time on parallel batch
machines with different capacities. Applied Soft
Computing, 75, 548-561.
[28] Cheng, B., Wang, Q., Yang, S., & Hu, X. (2013).
An improved ant colony optimization for scheduling
identical parallel batching machines with arbitrary job
sizes. Applied Soft Computing, 13(2), 765-772.
[29] Hulett, M., Damodaran, P., & Amouie, M.
(2017). Scheduling non-identical parallel batch
processing machines to minimize total weighted
tardiness using particle swarm optimization. Computers
& Industrial Engineering, 113, 425-436.
[30] Pakzad-Moghaddam, S. H. (2016). A Lévy flight
embedded particle swarm optimization for multi-
objective parallel-machine scheduling with learning and
adapting considerations. Computers & Industrial
Engineering, 91, 109-128.
[31] Torabi, S. A., Sahebjamnia, N., Mansouri, S. A.,
& Bajestani, M. A. (2013). A particle swarm
optimization for a fuzzy multi-objective unrelated
parallel machines scheduling problem. Applied Soft
Computing, 13(12), 4750-4762.
[32] Chen, Y. Y., Cheng, C. Y., Wang, L. C., &
Chen, T. L. (2013). A hybrid approach based on the
variable neighborhood search and particle swarm
optimization for parallel machine scheduling problems—
a case study for solar cell industry. International Journal
of Production Economics, 141(1), 66-78.
[33] Kashan, A. H., & Karimi, B. (2009). A discrete
particle swarm optimization algorithm for scheduling
parallel machines. Computers & Industrial Engineering,
56(1), 216-223.
[34] Zammori, F., Braglia, M., & Castellano, D.
(2014). Harmony search algorithm for single-machine
scheduling problem with planned maintenance.
Computers & Industrial Engineering, 76, 333-346.
[35] A. S. Tasan & M. Gen, “A genetic algorithm
based approach to vehicle routing problem with
simultaneous pick-up and deliveries.” Computers &
Industrial Engineering, 62(3), 2012, pp. 755-761.
[36] V. A. Cicirello, “Non-wrapping order crossover:
An order preserving crossover operator that respects
absolute position.” In Proceedings of the 8th annual
conference on Genetic and evolutionary computation,
2006, pp. 1125-1132. ACM.
[37] K. Deep & H. Mebrahtu, “Combined mutation
operators of genetic algorithm for the travelling salesman
problem.” International Journal of Combinatorial
Optimization Problems and Informatics, 2(3) 2011
[38] Shunji Tanaka: Total Tardiness Problem on
Identical Parallel Machines
https://sites.google.com/site/shunjitanaka/pmtt
(Accessed: 2019. 11. 14.)
8 NOTATIONS
Table 6. symbols used in this paper
Symbol Explanation of the
symbol
Number of jobs
Jobs
Processing time of each
jobs
Number of machines
Machines
Production capacity of
machines
The time windows of the
jobs, where
Setup times of the jobs,
where 0 indicates the
reset state of the machine.
Decision variable.
1 if the job and job
belongs to the machine, and after the job the machine performs
the job.
0 else
Starting time of the job
top related