Abstract

This paper considers the multiobjective scheduling of flexible manufacturing systems (FMSs). Due to high degrees of route flexibility and resource sharing, deadlocks often exhibit in FMSs. Manufacturing tasks cannot be finished if any deadlock appears. For solving such problem, this work develops a deadlock-free multiobjective evolutionary algorithm based on decomposition (DMOEA/D). It intends to minimize three objective functions, i.e., makespan, mean flow time, and mean tardiness time. The proposed algorithm can decompose a multiobjective scheduling problem into a certain number of scalar subproblems and solves all the subproblems in a single run. A type of a discrete differential evolution (DDE) algorithm is also developed for solving each subproblem. The mutation operator of the proposed DDE is based on the hamming distance of two randomly selected solutions, while the crossover operator is based on Generalization of Order Crossover. Experimental results demonstrate that the proposed DMOEA/D can significantly outperform a Pareto domination-based algorithm DNSGA-II for both 2-objective and 3-objective problems on the studied FMSs.

1. Introduction

The multiobjective optimization problem (MOP, the abbreviations and their meanings are given in Table 1) is an optimization problem that may have a number of conflicting objectives to be considered, and decision-makers need to determine an optimal trade-off among the objectives. This problem presents in many real-life applications [14]. A Pareto optimal solution to an MOP is a candidate for the optimal trade-off [5]. Most MOPs have a lot of or even an infinite number of Pareto optimal solutions, and the set of all the Pareto optimal solutions in the objective space is called as Pareto front (PF). The decision-makers desire a fair approximation to the PF to make final decisions. Multiobjective evolutionary algorithms (MOEAs) work with populations of candidate solutions to MOPs and therefore are able to find good approximations to the PF in a single run.

To produce Pareto optimal vectors that are distributed evenly along the PF and therefore can approximate the PF, many MOEAs evaluate the solutions based on Pareto domination like SPEA2 [6] and NSGA-II [7]. Multiobjective evolutionary algorithm based on decomposition (MOEA/D) [8], which decomposes an MOP into a number of single-objective subproblems, is another effective MOEA framework. In an MOEA/D, the objective to each subproblem is a weighted aggregation of some individual objectives. Based on the distances between the weighted aggregation vectors, the neighborhood relationships among the subproblems can be found out. Each subproblem is then solved according to the information mainly from the neighboring subproblems. There are a few significant studies that apply it in dealing with multiobjective problems in different areas. Chen et al. [9] proposed a multiobjective discrete method called MODTLBO/D for solving the community detection problem of complex networks. They adopted a multiobjective decomposition method and introduced a neighbor-based mutation. For multiobjective job shop scheduling problem, Zhao et al. [10] developed an improved multiobjective evolutionary algorithm based on decomposition (IMOEA/D). Experimental results demonstrate that their IMOEA/D can converge better than Pareto dominance-based MOEAs.

A flexible manufacturing system (FMS) is a computer-controlled manufacturing system that is comprised of finite resources and can process multitypes of jobs. Different from the traditional production environments such as job shops and flow shops, FMSs often encounter deadlock problems due to high degrees of route flexibility and resource sharing. Once a deadlock appears, the whole or partial system will be indefinitely blocked and cannot finish manufacturing tasks. Developing effective control and scheduling approaches to avoid deadlocks while optimizing the performance of the system is of paramount importance in practice.

Scheduling of FMSs contains both deadlock control and optimization of objectives and therefore is more difficult. A few works have been published on this area [4, 1123]. Most of them involve deadlock problems and some also concerns different optimization objectives such as the back-tracking and distance travel of AGVs [4], AGV’s fleet size [11], and total energy consumption [21, 22]. However, none of them takes multiobjective optimization into consideration.

This work addresses the multiobjective scheduling problem of deadlock-prone FMSs for the first time and proposes a deadlock-free multiobjective evolutionary algorithm based on decomposition (DMOEA/D) and Petri net (PN) models. Our DMOEA/D can decompose a multiobjective FMS scheduling problem into several single-objective subproblems and optimizes all the subproblems in a single run by evolving a population of solutions. In each generation, a solution for solving a subproblem is reproduced by a new proposed discrete differential evolution (DDE) algorithm. In DDE, the mutation operator is based on the hamming distance between two randomly selected solutions. The Generalization of Order Crossover (GOX) [24] is used as the crossover operator. Two illustrated examples are used to demonstrate the efficiency of the proposed algorithm. Since there is no work reported for the multiobjective scheduling of FMSs considering deadlock situations, we just compare our proposed DMOEA/D with a NSGA-II based MOEA on these examples.

This work presents an effective approach for organizations and production managers to enhance their competitiveness in manufacturing versatile, route-flexible, and time-critical productions concerning two or more different scheduling objectives.

The rest of the paper is organized as follows. Section 2 introduces the FMSs studied in the paper and their Petri net models and defines the considered multiobjective scheduling problem. Section 3 introduces some basics of MOEA/D and DDE and develops a multiobjective scheduling algorithm based on them. A performance comparison between two developed scheduling algorithms is made, and the experimental results are show in Section 4. Section 5 concludes the paper.

2. PN Models of FMSs

PN is a widely used mathematical tool for modeling the dynamic behaviors of FMSs and many other manufacturing systems [1517, 2527]. This section briefly introduces some basics of PNs first and then the PN models of FMSs for multiobjective scheduling. For more details of PNs, readers may refer to [28].

2.1. Definitions of Petri Nets

Let and . A marked PN is a 4-tuple , where P is a finite set of places, T is a finite set of transitions, is the set of directed arcs, and is the initial marking of N. For a given node , its preset is defined as and postset . Given a marking M and a place , denote M(p) as the number of tokens in p at M. A string is called a path in the PN, where and , .

A transition is enabled at M if , , denoted as . An enabled transition t can fire at M, yielding , denoted as , where , , , , and otherwise . A sequence of transitions is feasible from M if holds for , where .

2.2. Placed Timed PN Models of FMSs

An FMS studied in our work is comprised of m types of resources, denoted as , and is capable to process n types of jobs, denoted as . More definitions and constraints are described as follows:(1)The number of type-qj jobs to be processed is , and the total number of jobs is .(2)The capacity of type-ri resources is denoted as C(ri), which is a positive integer and marks the maximum jobs that type ri resources can handle simultaneously.(3)A processing route of a type-qj job, , is a predefined sequence of operations, where l() is the total number of operations in route and okl is the lth operation in . A job may be processed on more than one route and can choose its routes while processing. Let be the set of all processing routes and be the set of routes for type-qj jobs, respectively.(4)Each operation needs one unit resource, and any two consecutive operations of a job need different resource types. For operation okl, let R(okl) denote the resource needed for processing okl.(5)The processing time d(okl) for operation okl is predefined. Let c(okl) denote the completion time of okl.(6)No pre-emption is allowed.

Now we can establish a PN model for FMS considered in this paper.

For type-qj jobs, let ojs and oje be two virtual operations representing the storages of raw and processed type-qj jobs, respectively. Operations ojs and oje do not need any resource. Then, route with these two fictitious operations for type-qj jobs can be defined as . Identical operations shared by different routes are merged as one operation.

A processing route in the PN model is modelled as a path of places and transitions , where pjs and pje represent operations ojs and oje, respectively, and pkl is an operation place that represents operation okl; tkl is a transition that indicates the start of okl and the completion of . A token in operation place pkl means that operation okl of a job is being processed. In these ways, the marked PN model of processing routes for type-qj jobs is defined aswhere , , and , ,, , , . Mj0 is the initial marking, where and , . In Nj, , . An operation place p is a split place if , . At a split place, a job is able to choose the processing routes.

For type-ri resources, assign a resource place denoted also by ri. Tokens in ri represent the number of available type-ri resources. Let C(ri) denote the initial marking of ri.

Denote R(p) and PR as the resource needed by operation place p and the set of all resource places, respectively. Then, in our PN model, add arcs from R(p) to each transition in denoting the occupation of R(p), and add arcs from each transition in to R(p) denoting the releasing of R(p). The set of all arcs related to resource places is denoted as FR. Then, the marked PN model of our studied FMS can be defined aswhere , , , , , and . The initial marking M0 is defined as , ; , ; and , .

In this paper, processing times needed by operations are described by a place-timed PN. Each operation place p is assigned with a time delay d(p), denoting its processing time, , . Such PN model for an FMS is called PNS [17].

Example 1. Consider an FMS shown in Figure 1. It contains four machines r1, r2, r3, and r4. Machines r1, r2, and r4 can hold one job at the same time while machine r3 can hold two. Then the resource set is , with initial markings , and . This FMS is able to process two types of jobs, q1 and q2. Type-q1 jobs can be processed sequentially on r1, r2, and r4, or on r1, r3, and r4; while type-q2 jobs are processed on r4, r3, and r1. Thus, there are two processing routes for type-q1 jobs, and , while type-q2 jobs are processed on one route, . Note that and are processed on machines r1 and r4, respectively. Then routes and can be modelled as and , respectively, while route is modelled as . Figure 2(a) shows the PN model of this system, in which the jobs of types q1 and q2 are to be processed are 2 and 1, respectively.

When all operations of all jobs are completed, the system reaches its final marking, denoted as Mf, where and ; , ; and , . A sequence of transitions α is complete and feasible if . Such a sequence in the PNS is a feasible schedule to the considered FMS.

Note that an improper schedule of a PNS may lead to deadlock situations, and the system can thus never reach its final marking. Consider a reachable marking in Figure 2(b). It is clear that a circular wait for resources r3 and r4 arises and no transition can be fired.

3. DMOEA/D for the Scheduling of FMSs

A multiobjective optimization problem (MOP) is formally stated as follows:where is the decision (variable) space and fi(x) is the objective functions, . A feasible solution to MOP can be interpreted into a feasible schedule. Then, the multiobjective scheduling problem studied in this paper is to find a feasible solution so that F() is as small as possible.

MOEA/D solves an MOP problem by decomposing it into several single-objective optimization subproblems and then solves all the subproblems in a single run by evolving a population of solutions [8]. The population in each generation is composed of best found solutions for these subproblems. The neighbourhood relations among the subproblems are calculated according to the distances between their coefficient vectors. In MOEA/D, each subproblem is then solved based on the information of its neighbouring subproblems.

There are a few studies using MOEA/D in different areas recently [5, 810, 2931]. In this work, we focus on the multiobjective scheduling of FMSs and propose a novel DMOEA/D by combining MOEA/D and DDE. PNSs are used to model the systems and deadlock controllers are embedded to avoid deadlocks. The varieties of DMOEA/D are described as follows.

3.1. Representation, Interpretation, and Reparation

In this paper, a solution x in DMOEA/D consists of two sections , where Sr stores the route information and So is a permutation with repetition of all jobs. Let l() denote the length of route . Then, each job Ji appears l(Ji) times in So, where l(Ji) = . The jth operation of Ji is represented as the jth Ji in So, and So is uniquely interpreted as a sequence of operations . Then x is rewritten as . By associating each operation to its corresponding transition, a sequence of transitions , which is taken as a schedule in PNS, can be interpreted from solution x.

Example 2. Reconsider the PNS in Figure 1(a). There are three jobs to be processed: two type-q1 jobs, J1 and J2, and one type-q2 job, J3. The type-q1 jobs have two routes, and , while type-q2 job has only one, . Suppose that J1 and J2 are processed by routes and , respectively. Then, can be taken as the first section of a solution x1. Note that the route lengths l(Ji) are 5, 5, and 4, respectively. Thus, we can represent section So as a permutation with repetition that consists of five J1’s, five J2’s, and four J3’s, for example, .Then x1 is represented as , So1 is interpreted as a sequence of operations , , and x1 is interpreted as a sequence of transitions , or for more details, , , , , .

The sequence of transitions interpreted from a solution may be infeasible and contain deadlock situations. The feasibility of each solution must be examined and the infeasible ones are repaired. There are some works addressing the deadlock problem of FMSs [3236], and deadlock-free operations of FMSs can thus be guaranteed. In this work, an Amending Algorithm proposed by [17] is used to obtain a feasible sequence of transitions from M0 to Mf. This Amending Algorithm is based on the deadlock avoidance policy (DAP) proposed by [34]. An optimal polynomial complexity DAP for S3PRs without -resources is developed by a one-step look-ahead approach; for S3PRs with -resources, a suboptimal DAP is also derived by reducing the net. A deadlock search algorithm is then proposed for prohibiting deadlock situations.

3.2. Objective Functions

Three objective functions are used in the work, makespan, mean completion time, and mean tardiness time.

For a given solution x, let be its corresponding sequence of transitions. Let be the firing time of transition tk and Ci be the completion time of the last operation of job Ji. Note that is also the start time of operation Oij. According to the predefined operation sequence and the order in a schedule (sequence of transitions), transition can be fired only after transition is fired and operation is completed. Assume that corresponds to operation Ouv and tu corresponds to operation . We have , and the completion time of job Ji can be calculated as , where is the last processed operation of job Ji and tv corresponds to .

The makespan is the completion time of the last job that leaves the system. A minimum implies a good utilization of machines. It can be defined asThe mean completion time is the average completion time of all the jobs, and its definition isTardiness time of a job is a time delay after the predefined due time. Jobs completed after the due time may cause compensation for customers and loss of goodwill. Let Di and Ti be the due time and the tardiness time of job Ji, respectively. In this paper, Di is defined as and Ti is defined as . The mean tardiness time is the average tardiness time of all the jobs, and it can be expressed as

3.3. Decomposition of Multiobjective Optimization

A general MOEA/D must decompose an MOP into K single-objective optimization problems, where K is the population size. Several approaches have been proposed for this task and this paper uses the Tchebycheff approach.

Given a weight vector , , , and . Then, in the Tchebycheff approach, the optimal solution to the single-objective optimization problem belowis a Pareto optimal solution to (3), where is the reference point, i.e., . For each optimal solution of (7), there exists a corresponding Pareto optimal solution of (3). Hence, we can obtain different Pareto optimal solutions by setting different weight vectors.

3.4. Discrete Differential Evolution Algorithm

Differential evolution (DE) [37] generally works on a population of candidate solutions, which are represented by floating point numbers. DE generates a mutated solution by adding a weighted difference between two randomly selected solutions to a third one. A trial solution is then generated by crossing the mutated and target solutions. The selection operator in DE determines whether the target solution can be retained in the next generation or not.

From the description above, it can be known that the traditional DE cannot be directly used in the multiobjective scheduling of FMSs, since it is originally designed for solving continuous optimization problems and can only generate solutions of floating point numbers [38]. In this subsection, we propose a novel discrete DE (DDE) for generating the solutions to the single-objective optimization problems in our DMOEA/D.

The mutated solution at the kth generation is constructed based on 3 randomly selected solutions, , , and . Let D denote the hamming distance between solutions and . In our DDE, the mutation operator is defined as follows:where Muti is the mutation with i iterations and pm is the mutation probability. At each iteration of , the algorithm generates a random number . If , select one job in randomly and insert it to another position in ; otherwise, remains unchanged. Note that the mutation operator is iterated at least once, even if there is no difference between and .

The trial solution in DDE algorithm is generated by crossing the target solution and the mutated solution . GOX is used for achieving this. In our DDE, GOX is only applied in the second section of the solution, i.e., So. The length of the crossover string is chosen randomly between and .

Example 3. Assume that is a target solution and is a mutated solution. Then, according to Section 3.1, their corresponding sequences of operations are , and , , , respectively. Let the length of a crossover string be 7 and the crossover starts at operation O31. So the crossover string in is and the corresponding operations are O31, O13, O23, O32, O24, O14, and O33. Then, delete the jobs that correspond to these operations from and insert into . The so obtained is . The first section of the trial solution is inherited directly from x1. Then, we have the trial solution . Note that the obtained trial solution is infeasible and hence should be repaired by Amending Algorithm.
The selection operator in DDE decides whether a trial solution should be a member of the population in the next generation. It is stated as follows:where and zi is the best objective fi found so far.

3.5. Framework of DMOEA/D

Let be a set of uniform spread weight vectors. DMOEA/D decomposes MOP into K single-objective subproblems with the Tchebycheff approach, and the jth subproblem iswhere . Given a weight vector , define the neighbourhood of as a set of its closest weight vectors in . Then, all the subproblems that correspond to these weight vectors in the neighbourhood of constitute the neighbourhood of the jth subproblem. The population contains the best found solutions for all the subproblems. While DMOEA/D optimizes a subproblem, it only exploits the current solutions to the neighbourhood of the subproblem.

In each generation, our proposed DMOEA/D using a Tchebycheff approach contains a population of K solutions , where xj is the current solution to the jth subproblem and an external population (EP) for storing nondominated solutions found in DMOEA/D. Then, our proposed DMOEA/D can be stated as in Algorithm 1.

Input
: the number of sub-problems used in DMOEA/D;
: the set of uniform spread weight vectors;
H: the size of neighborhood of each weight vector;
Initialize
Set , initialize population ;
Set , , initialize , where ;
Compute the Euclidean distances between any two weight vectors and figure out the H closest ones of each weight vector;
Set , where are the H closest weight vectors to .
While(the stopping criterion is not met)
For   
  Randomly select three different neighbors xa, xb, and xc from E(j);
  Generate the mutated solution xv from xa, xb, and xc;
  Generate the trial solution xu from xj and xv; Amend xu;
  For
   If
    Set ;
   // End For
  For (each index )
   If()
    Set ; ;
   // End For
  Remove all the vectors dominated by F(xu) from EP;
  If(there is no vector dominates F(xu) and F(xu) do not exist in EP)
   Add F(xu) into EP;
// End For
// End While
Output EP

From the algorithm, it can be known that E(j) contains the indexes of H closest vectors of . This paper uses the Euclidean distance to evaluate how close any two weight vectors are. Hence, itself is its closest vector, . The kth subproblem is in the neighbourhood of the jth subproblem if . While considering the jth subproblem in DMOEA/D, since xa, xb, and xc are the best found solutions to the respective neighbours of the jth subproblem, the reproduced solution xu based on them should be a promising one to the jth subproblem. Then, amend xu by using Amending Algorithm [17]. The so-obtained solution xu is therefore feasible and probably better for the neighbours of the jth subproblem. Then, for each neighbour jh of the jth subproblem, replace with xu if xu is better for the jth subproblem. The external population EP is also updated based on the new solutions.

Since obtaining the accurate reference point is usually very time-consuming, we use z as a substitute of in . z is initialized by a problem-specific method and updated according to the quality of generated trial solutions.

4. Illustrative Examples

To the authors’ knowledge, there is still no work reported for the multiobjective scheduling of deadlock-prone FMSs. Thus, to demonstrate the effectiveness of DMOEA/D, we compare it with a NSGA-II (one of the best known MOEAs) based MOEA. Since the DAP used in Section III-A is also embedded, we rename the compared algorithm as DNSGA-II.

The stop criteria of two tested algorithms are all set as 1000 generations. The population size is set as . For DMOEA/D, the weight vectors are determined by a parameter I. Each weight vector chooses a value from and the number of the weight vectors is . For problems with 2-objective, I is set to 99 since ; for problems with 3-objective, I is set to 13 since and DMOEA/D randomly chooses 100 values out of 105. The number of neighbourhoods is . The cross rate pc and the mutation rate pm are set as 0.8 and 0.2, respectively. All the algorithms are coded by C++ and simulated on a desktop PC with 3.2 GHz processor and 8 GB memory.

4.1. Performance Metrics

The number of Pareto solutions (NPS) obtained in a run is an important metric for MOEA. More Pareto solutions mean more candidate schedules for decision makers and therefore have better performance.

Mean ideal distance (MID) evaluates how close the solutions on a PF to the ideal point (often referred to point (0, 0)). It can be defined aswhere and fji is the ith objective of the jth Pareto solution. Less value of MID indicates better performance.

The rate of achievement to objectives simultaneously (RAS) evaluates the closeness of objectives. It can be represented asThe lower RAS value there is, the better solution quality we have.

4.2. Case 1

In this subsection, the FMS example in Example 1 is used to test the performance of the algorithms. The processing time of operations is listed in Table 2. 20 instances (FMS01- FMS20) designed by [39] are tested.

Firstly, we study the 2-objective problem with respect to makespan and mean completion time. The scheduling results of FMS01- FMS20 are shown in Table 3. The algorithms make 10 independent runs for each instance, and the metrics are averaged.

From Table 3, it can be seen that DMOEA/D outperforms DNSGA-II on all 3 metrics for the 2-objective problem. DMOEA/D achieves more NPS in 16 instances out of 20. This means that DMOEA/D can obtain more Pareto solutions than DNSGA-II for the studied problem. For the metric MID, DMOEA/D significantly outperforms DNSGA-II since it obtains less MID values for all 20 instances. This indicates that DMOEA/D gets a better convergence than DNSGA-II. For the metric RAS, it seems that the solutions of DMOEA/D have better closeness of objectives as it obtains lower RAS values than DNSGA-II in 17 instances out of 20.

Figure 3 shows a part of nondominated solutions of 2-objective on FMS02-FMS05. We can see that most solutions found by DMOEA/D dominate the ones found by DNSGA-II. DMOEA/D achieves a better approximation to PF than DNSGA-II does.

Then, the 3-objective problem is studied. The scheduling results are listed in Table 4. Each instance makes 10 independent runs and the metrics are averaged.

As seen in Table 4, the results for the 3-objective problem seem in accordance with the conclusions for 2-objective problem. DMOEA/D generally obtains more Pareto solutions (higher NPS values in 18 of 20 instances) than DNSGA-II for the studied problem. DMOEA/D also has a better convergence than DNSGA-II, since it obtains lower MID values in all 20 instances. The solutions obtained by DMOEA/D have better closeness of objectives as it obtains lower RAS values in 19 instances out of 20.

Note that the RAS values of instances with very few jobs (FMS01, FMS06, FMS11, and FMS16) are much higher than the ones of other instances. This is due to the fact that a schedule with very few jobs usually has very little tardiness time, and the objective function mean tardiness time is thus much smaller than the other two.

The computational times of DNSGA-II and DMOEA/D on FMS01-FMS20 are almost at the same level. For the 2-objectives problem, the computational times for instances with 10, 20, 40, 60, and 100 jobs are around 5s, 10s, 25s, 40s, and 60s, respectively. For the 3-objectives problem, the computational times for instances with 10, 20, 40, 60, and 100 jobs are around 8s, 15s, 30s, 40s, and 65s, respectively.

4.3. Case 2

In this subsection, we use a widely researched FMS example to test the performance of our algorithms. This FMS consists of 3 robots r1-r3, 4 machines m1-m4, and can process 3 types of jobs q1-q3. Its PNS with the initial marking of In01 is shown in Figure 4 and the processing time of operations is listed in Table 5. 16 instances (In01-In16) designed by [18] are tested.

The 2-objective problem is studied first. The scheduling results of 16 instances are shown in Table 6. The algorithms make 10 independent runs for each instance and the metrics are averaged.

From Table 6, we can see that DMOEA/D outperforms DNSGA-II on all 3 metrics. It can obtain more Pareto solutions than DNSGA-II in 15 instances out of 16. DMOEA/D also gets a better convergence than DNSGA-II since it obtains less MID values in 15 instances out of 16. Moreover, the solutions of DMOEA/D have better closeness of objectives than DNSGA-II, since DMOEA/D obtains lower RAS values in 14 instances out of 16.

Figure 5 shows a part of nondominated solutions of 2-objective on instances In01-In04. From Figure 5, we can see that the solutions found by DMOEA/D can dominate the ones obtained by DNSGA-II.

For the 3-objective problem, the scheduling results of In01-In16 are listed in Table 7. Each instance makes 10 independent runs and the metrics are averaged.

As seen in Table 7, DMOEA/D obtains more Pareto solutions than DNSGA-II in 11 of 16 instances. DMOEA/D also has a better convergence than DNSGA-II, since it obtains lower MID values in all 16 instances. The solutions obtained by DMOEA/D have better closeness of objectives since it obtains lower RAS values in all 16 instances.

The computational times of DNSGA-II and DMOEA/D on In01-In16 are almost at the same level. For the 2-objectives problem, the computational times for instances with 28, 40, 50, and 60 jobs are around 20s, 55s, 90s, and 120s, respectively. For the 3-objective problem, the computational times for instances with 28, 40, 50, and 60 jobs are around 25s, 65s, 95s, and 130s, respectively.

5. Conclusions

This paper studies the multiobjective scheduling problem of deadlock-prone FMSs. Combining decomposition approaches and DDE, a novel scheduling algorithm called DMOEA/D is proposed based on the PN model of the studied system. DMOEA/D can decompose a multiobjective scheduling problem into a certain number of single-objective subproblems and solves all the subproblems in a single run. The solutions of the subproblems are reproduced by a new proposed DDE algorithm. The mutation operator of DDE is based on the hamming distance between two selected solutions. GOX is used as the crossover operator. Two benchmark examples are used to test the DMOEA/D. Computational results demonstrate that our proposed DMOEA/D can outperform DNSGA-II for both 2-objective and 3-objective problems on the studied FMSs.

The advantage of DMOEA/D over DNSGA-II may attribute to the following: DMOEA/D optimizes several single-objective optimization problems rather than directly solving the MOP, and hence the diversity of the population is easier to maintain, and more evenly distributed Pareto solutions can thus be obtained; and coevolution mechanism between subproblems is used in DMOEA/D, and, hence, DMOEA/D can converge faster and obtain better Pareto solutions than DNSGA-II.

For the future work, one research direction is to introduce other efficient local optimization strategies or heuristics to improve the search capability of the proposed algorithm. Another direction is to extend the proposed method to solve the scheduling problem of FMSs with other objectives or constraints, such as energy consumptions, unreliable resources, and maintenance activities, which may be proved both interesting and useful.

Data Availability

. All data generated by the simulation in this study are included within the article in Tables 3, 4, 6, and 7. . Previously reported data in [17, 39] are used to support our study, and they are included in Tables 2 and 5. . No data were used to support this study.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

This work was supported by the National Science Foundation of PR China grant number 61573278.