2.1. General Overview
Scheduling plays a very important role in the decision-making process to be carried out in different decision-making environments, from manufacturing to information processing, transportation, and distribution, among other kinds of services [
2]. In manufacturing, scheduling problems vary from single-stage or operations problems, occurring in single or parallel machine environments, up to multi-stage or operation ones, typically occurring in flow shop (FSP), job shop (JSP), or open shop scheduling problems (OSPs), to mention some of the most well-known [
2]. The multi-stage scheduling problems tend to be more complex than the single-stage ones; for instance, FSPs have some complicated variants, namely, considering energy issues and material handling assumptions or stochastic data [
14,
15].
Manufacturing scheduling implies the allocation of jobs or tasks to resources or vice versa, its sequencing or order in time for being processed, along with the definition of the initial and final processing times for each job or task in a given resource, made available through a given manufacturing environment [
16].
In [
17], Brucker points out that the scheduling of a production system is dependent on several factors, such as manufacturing orders, available resources, available machines, and the operations to be performed by each one, and there may be processing times that are different from one machine to another one while satisfying and/or optimizing a single or complex performance measure or criteria.
The programming of parallel machines has been a growing research area since the first works carried out in the early 20th century [
18]. This type of problem has, since then, received continuous interest from researchers due to its relevance to manufacturing environments [
3,
7,
8,
9].
Manufacturing scheduling to optimize configurations, either directly or indirectly, has been an important issue for different types of industries, including plastic, textile, and chemical industries, as well as for some service areas [
3,
7,
9,
19,
20,
21,
22,
23,
24,
25].
Allahverdi, in [
26], presents a review of scheduling problems. In his work, the scheduling problems are further classified based on the underlying production environment as a single machine, parallel machines, flow shop, job shop, or open shop. It also classifies them according to the consideration and processing of information regarding their inclusion in family sets, besides the characterization of sequence-dependent jobs/tasks or machine configurations, which also affects production times and/or costs, among other characterization parameters that are also further explored in other publications, such as [
3,
21,
22].
Thus, scheduling requires decisions about jobs/tasks and processing resources. The sequencing corresponds to a permutation of jobs/tasks or the order in which they might be processed on each resource or machine. On the other hand, the allocation of resources or machines refers to the choice of which one will process each job or task [
27]. The scheduling problem aims to assign tasks to machines and define the periods that each task is processed on each machine in order to minimize and/or maximize an optimization criterion, usually expressed in the form of an objective function intended to be optimized [
11].
The Brucker classification system, in [
17], uses the nomenclature
|
|
, initially introduced by [
28]. In this nomenclature, the
represents the scheduling classification factors related to the manufacturing environment, which usually include the type of manufacturing system and the number of machines. The manufacturing environment can range from a simple one, such as a single machine, up to more complex ones, occurring in flow shop, job shop, and open shop environments or flexible manufacturing environments, besides other kinds of manufacturing systems, for instance, taking place in different types of parallel machine environments. These manufacturing environments can have different complexity levels, not just according to the nature of the manufacturing systems’ configuration and the underlying production flows themselves but further to other, additional characteristics, about a more or less widened set of conditions and constraints imposed in the scheduling problem, expressed by a corresponding
set of factors in the problem classification nomenclature. Moreover, a simple or combined set of performance measures can also be considered and expressed through the
factor. Since its introduction, this notation has been used and reformulated by several authors, and many classifications have been added as other problems arise [
22].
2.2. Scheduling Assumptions
The scheduling problem studied in this work occurs in a parallel-machines scheduling environment, where the processing times of the task are expressed through a task-machine tuple, which varies from one machine to another for processing a given task [
29,
30].
In scheduling problems arising in manufacturing environments, frequently, multiple machines are available for processing a set of tasks, and the processing times are often even more dependent on task sequences. Thus, there is a sequence-dependent setup time (
) whenever, after processing task
, preparation time
is required before processing task
. Moreover, when these times are also dependent on the machines, index
is added [
31,
32,
33].
The scheduling problem considers a set of tasks with setup times that are dependent on the machine used and sequence-dependent on the unrelated parallel machines set, with the goal of minimizing the maximum completion time or makespan. In scheduling theory, the makespan () is defined as the completion time of the final task of a job to be processed (when the job leaves the system). The scheduling problem is thus based on a set of tasks that must be processed on a machine from a set of unrelated parallel machines (). The processing time of the tasks depends on the assigned machine, and there is no relationship between these machines as they are unrelated. The setup times are machine- and task-sequence-dependent (). Each machine has its setup time matrix, and each matrix is different from the others for the remaining unrelated parallel machines.
The problem studied in this work is classified in the literature as ||. Minimizing the makespan of a scheduling problem with identical parallel machines and sequence-dependent setup times is categorized as NP-hard. Therefore, the most complex problem of unrelated parallel machines is also considered NP-hard.
2.3. Review about Scheduling Sequence-Dependent Setups in Unrelated Parallel Machines
The scheduling problem occurring in unrelated parallel machines for processing sequence-dependent setup times is quite important as it can be found in several areas such as the electronics, steel, and textile industries [
34,
35,
36,
37].
Kim et al. [
35] used the simulated annealing (SA) algorithm to solve a scheduling problem in the electronics industry. In their work, it was possible to conclude that the proposed SA method significantly outperformed a neighborhood search method regarding the total delay of jobs or tasks.
Tang and Wang [
36] formulated a scheduling problem for the steel industry as a mixed nonlinear program and proposed the Tabu search (TS) heuristic to obtain satisfactory solutions. The results showed that their model and heuristic performed more efficiently and effectively than other manual planning approaches.
In the textile industry, Gendreau, Laporte, and Guimarães [
34] applied a heuristic to the multiprocessor scheduling problem with sequence-dependent setup times; their results showed that their heuristic was faster than a TS-based one but, at the same time, provided solutions of almost similar quality.
Thus, the complexity of the scheduling problem of unrelated parallel machines has led to increased interest in heuristic procedures to find solutions in a reasonable time interval. Kim and Chen [
38] proposed four research heuristics for the aforementioned problem. According to the authors, these heuristics can be easily applied to obtain practical production scheduling solutions. Ghirardi and Potts [
39] also studied the problem of unrelated parallel machines for minimizing the makespan; the underlying heuristic used was an application of the recovering beam search technique. The computational results allowed them to generate approximate solutions for large instances of problems (up to 50 machines and 1000 jobs) in just a few minutes.
Another heuristic, called Meta-RaPS, was introduced by Rabadi, Moraga, and Al-Salem [
7] to minimize the makespan in unrelated parallel machine problems with sequence-dependent setup times. The performance of the proposed heuristic was evaluated by comparing its solutions with those obtained by other existing heuristics for the same problem. The results showed that the Meta-RaPS found optimal solutions for small problems and performed better than other existing heuristics for larger problems.
For the same problem and makespan objective function, Arnaout et al. [
8] introduced the ant colony optimization (ACO) approach. To evaluate the performance of the ACO, the authors compared their solutions with the ones obtained by other heuristics, for example, solutions based on Tabu search and a partitioning heuristic with those obtained by Meta-RaPS [
7]. They concluded that the ACO outperformed the other algorithms.
Arnaout et al. [
9] also proposed an improved ACO algorithm (ACOII) and mentioned achieving better performance than the previous version; further, the algorithm had the ability to solve more difficult combinatorial optimization problems by partitioning them into subproblems.
The minimization of the makespan is one of the most studied criterion in the production scheduling literature, whether in parallel or single machines. For example, Woo, Jung, and Kim, in [
23], developed a mixed-integer linear programming (MILP) model to find the optimal solution to the scheduling problem in unrelated parallel machines with the aim of minimizing the makespan. They proposed a new rule based on a genetic algorithm with a chromosome that represents the sequence of assignment of jobs or tasks to a machine, with the scheduling of jobs/tasks for each machine being determined by a heuristic based on completion time during the chromosome decoding process.
Considering that the setup times are dependent on the work sequence, the authors of [
6] presented a GA for minimizing the makespan when solving scheduling problems in unrelated parallel machines. Their GA algorithm was further compared with other algorithms found in the literature, and they concluded that their proposed GA outperformed existing ones.
More recently, the scheduling of unrelated parallel machines for green manufacturing purposes, with resource constraints, was proposed by Zheng and Wang [
40]. This work aimed at minimizing the makespan and total carbon emissions; to solve the problem, a collaborative multi-objective fruit fly optimization algorithm (CMFOA) was proposed. The results showed that their multi-objective algorithm was able to obtain more and better non-dominated solutions than other existing algorithms in comparison.
Aydilek et al. [
41] addressed a scheduling problem to minimize order delays, in which the setup times were independent of the processing times, through the application of algorithms of self-adaptive differential evolution and hybrid and simulated insertion algorithms. A scheduling problem with different approaches to setup times, aiming to minimize the makespan with the application of an enhanced version of the ACO algorithm, was studied in [
24,
25].
Abreu and Prata [
42] presented a hybrid GA for solving the unrelated parallel machine scheduling problem with sequence-dependent setup times. A case study on the granite industry is presented, and the proposed approach outperformed three traditional dispatch rules presented in the current literature. Gedik et al. in [
43] studied the non-preemptive unrelated parallel machine scheduling problem with job/task-sequence- and machine-dependent setup times in order to minimize the makespan. Their study provided a novel constraint programming (CP) model with two customized branching strategies that used CP’s global constraints, interval decision variables, and domain filtering algorithms. According to the authors, in terms of average solution quality, the computational results indicated that their CP model slightly outperformed their analyzed contributions from state-of-art algorithms in solving small problem instances and was able to prove the optimality of 283 currently best-known solutions. It is also mentioned to be effective in finding good quality feasible solutions for larger problem instances. Fanjul-Peyro et al. in [
44] studied the same problem with the same objective function, but they modeled the problem by means of two integer linear programming problems. One was based on a model previously proposed in the literature, and the other was based on packing problems. According to the authors, since their models were unable to solve medium-sized instances to optimality, they proposed three other metaheuristics for each of these two models. Their results showed that the proposed metaheuristics significantly outperformed the mathematical models. Recently, in [
45], Arnaout addressed the unrelated parallel machine scheduling problem with setup times when minimizing the makespan through a worm optimization (WO) algorithm. The performance of the WO algorithm was evaluated by comparing its solutions to solutions of six other known metaheuristics.
Considering the previously presented literature review, most of the research addressed the scheduling problem with different objective functions and algorithm applications in different contexts and industrial environments.
The work underlying this paper was motivated by the work carried out by Arnaout et al. [
9], where a comparison was made with the solutions obtained by the Meta-RaPS metaheuristic [
46]. Based on data for small and large problem instances, this paper aims to propose a genetic algorithm for solving unrelated parallel machine scheduling problems with setup times for minimizing the makespan,
. Moreover, in this study, we intend to present an extended evaluation of the behavior of the GA when solving different types of case studies (small and large instances) of unrelated parallel machine scheduling problems with setup times.