Abstract
In this article, max–min ant colony optimization algorithm is proposed to determine how to allocate jobs and schedule tools with the objective of minimizing the makespan of processing plans in flexible manufacturing system. To expand the application range of max–min ant colony optimization algorithm, tool movement policy is selected as the running mode of flexible manufacturing system, which assumes that tools are shared among work centers and each operation is allowed to be machined by different kinds of tools. In the process of converting this scheduling problem into traveling salesman problem, disjunctive graph is modified to possess more than one path between each neighbor node. Besides providing practical methods of initializing pheromone, selecting node and calculating pheromone increment, max–min ant colony optimization algorithm employs the pheromone updating rule in max–min ant system to limit pheromone amount in a range, of which the upper and lower boundaries are updated after each iteration by formulations involving the current optimal makespan, the average number of optional tools and parameters. Finally, different sizes of processing plans are randomly generated, through which max–min ant colony optimization algorithm is proved effectively to tackle early stagnation and local convergence and thus obtains better solution than ant colony optimization algorithm and bidirectional convergence ant colony optimization algorithm.
Keywords
Introduction
Flexible manufacturing system (FMS) is an integrated production system that consists of multifunctional numerically controlled machines connected to an automated handling system. 1
As batch size is gradually decreasing, the demands to meet specific customer requirements call for considerable flexibility in manufacturing field. FMS has emerged as a highly competitive manufacturing strategy to satisfy these requirements, which is capable of machining a wider range of product types, from small- to medium-sized batches, and also has higher production efficiency than traditional assembly lines which are designed for high-volume and low-variety manufacture.
To improve the efficiency in FMS, various decisions should be made. One of these decisions is job allocating and tool scheduling, which focuses on how to arrange jobs and tools to each available work center to finish processing plans as quickly as possible.
Related work
Two policies are proposed to describe the running mode of FMS. These two policies are job movement policy and tool movement policy.
Job movement policy assumes that jobs move among work centers, while tools remain on initial work centers during the machining process. However, the ability of versatile machines is often constrained by the availability of tools since the capacity of tool magazines cannot be extended beyond their design limit. In this running mode, the common approaches of coping with the demands of diverse products are increasing the capacity of tool magazines and allocating as many tools as possible to tool magazines, which require very high tool inventories.
Tool movement policy assumes that each job remains on the initial work center until all operations are completed, whereas tools are transferred among work centers by tool delivery devices, such as motor-driven vehicles, automated guided vehicles (AGVs) and overhead gantry robots. 2 The developments of technologies in transport devices and shop floor information system have achieved the tool sharing. EIMaraghy 3 described the basic modules of automated tool management in FMS, including tool transfer, tool control system and tool storage. Hammer 4 designed an AGV to deliver a set of eight tools among tool magazines or between tool magazines and the central tool magazine. Besides, AGV can also be used to load and unload jobs in this research. Kumar et al. 5 dealt with unforeseen situations in the shop floor by assuming that AGVs can deliver any job to any machine in the shortest possible time and regarding the routing, loading and unloading of AGVs as certainties in the FMS scenario. The tool movement policy has remarkable advantages over the job movement policy 6 since the tool sharing makes it possible to require a smaller number of tools and there is no need to reset jobs, which also contributes to improving cutting precision. 7
Some researches that were based on tool movement policy have been carried out in recent years. In order to minimize the total tool waiting time, Lee et al. 8 focused on an integrated model that considered operation sequence and tool selection simultaneously. Suresh Kumar and Sridharan 9 built a simulation-based model to solve tool sharing problem in single-stage FMS and identified the best possible scheduling combinations for part launching and tool request selection. Udhaya Kumar and Kumanan 10 and Prabaharan et al. 11 generated active schedule and the optimal sequence of jobs and tools to shorten the makespan for FMS.
However, they both assumed that the kinds of tools for each operation were pre-specified, which limited the diversity of processing plans and may not satisfy the actual demands of FMS. Zeballos 12 made a progress which allowed each kind of tools to own several copies, but processing time among copies was uniform.
In this research, there are several optional tools for each operation and each tool may consume different processing time.
The job allocating and tool scheduling problem is one of the strongly nondeterministic polynomial-time hard (NP-hard) combinatorial optimization problems which are difficult to find optimal solutions. In practical researches, genetic algorithm (GA) is able to find acceptable solutions in a large scale. Rossi and Dini 13 presented GA for generalized job shop problem. Choudhary et al. 14 then proposed a new version of GA to solve job-type selection and operation allocation on machines by chromosome differentiation. Wang and Brumn 15 embedded a simple heuristic rule to GA to avoid the production of unfeasible solutions. Qudeiri 16 introduced GAs combined with production simulator system to find the appropriate order of a set of operations for jobs that need to be operated on available machine tools in FMSs. However, the search abilities of GA are limited, which may consume a lot of time and probably fall into local convergence. In addition, the performances of GA are greatly affected by initial population, coding method and genetic operators.
In recent years, ant colony optimization (ACO) algorithm is receiving more and more attention in solving NP-hard problems, which is not only a new heuristic bio-mimetic algorithm that imitates the foraging behavior of ant colony through the shorter path but also a directed parallel probabilistic searching technique that can be used to find near-optimal solutions in complex searching spaces.
17
Ying and Liao
18
applied ACO algorithm to the n/m/p
However, in terms of solving NP-hard problems, ACO algorithm may not be comparable to its improved versions, such as bidirectional convergence ant colony optimization (BCACO) algorithm and max–min ant system. According to the pheromone updating rule of BCACO algorithm, the pheromone amount is reduced once the performance of the finished route is worse than the average level. Wang et al. 21 designed BCACO algorithm with a different evaporating method to promote efficiency and usability of original ACO. Dridi 22 proposed a hybrid BCACO algorithm which included a solution construction developed for more complicated problems with a Pareto-guided local search engine. Rui 23 presented a developed BCACO algorithm to solve the integrated job shop scheduling problem in FMS with consideration of the waiting time for tools. By reinforcing the influence of previously generated solutions, BCACO algorithm is able to increase search speed and save calculating time, but modifying the pheromone updating rule in this way may lead ants trapped in repeated routes early. Max–min ant system is put forward by Stützlea and Hoos, 24 which prescribed limits to pheromone increment after each iteration and has been proved dramatically to avoid early stagnation and local convergence.
In this research, max–min ant colony optimization (MMACO) algorithm is designed to solve the local convergence in scheduling problem, which is an integrated algorithm that combines the basic procedures of ACO algorithm with pheromone updating rules in max–min ant system.
The details of this research are presented in following sections. Section “Problem description” gives definitions of the mathematical model. In section “Proposed methodologies,” ACO, MMACO and BCACO algorithms are formulated to solve scheduling problem. Besides, steps of MMACO algorithm are illustrated by flowchart. The simulation results obtained by ACO, BCACO and MMACO algorithms are presented and discussed in section “Performance comparison and analysis.” Section “Conclusion” summarizes the consequences of different algorithms and gives explanations to the assumptions.
Problem description
The processing plans
The processing plans in this research are made up of some jobs, each of which is supposed to have the same number of operations. The operation sequence is fixed, so an operation is not permitted to be machined until its former operations are finished.
When work centers are sufficient, all jobs can be allocated to work centers synchronously and only tool scheduling is involved. However, in most cases, work centers are limited, which means some jobs have to wait for machining. Due to the fact that different solutions of job scheduling will lead to different tool scheduling, the job scheduling should be determined in the first place. In this research, the possible solutions of job allocating are enumerable. When allocating m jobs on c work centers, the number of possible solutions is
The running mode of FMS
The proposed job allocating and tool scheduling problem is implemented under the FMS that consists of a center tool magazine (CTM), work centers
Each work center is capable of fixing any tool and machining any job.
Two AGVs are used to convey tools and jobs to work centers. Each AGV is fitted with a manipulator arm which is designed to load and unload tools or jobs. The route of AGVs and action of manipulator arms are decided by the central control system that monitors the location and condition of all tools and jobs.
Once an operation is completed, the tool is delivered to CTM or other required work centers immediately, which means the delivery time is negligible.

The layout of FMS.
Definitions
The following notations are used for the description of the scheduling problem and ACO algorithm:
x sequence number of work centers,
m sequence number of jobs,
n sequence number of operations,
w sequence number of tools,
A number of ants in simulation experiments
a sequence number of ants,
PT three-order matrix to store processing time
OT matrix used to record stare time and end time of jobs
TT matrix used to store occupation status of tools
F terminal number of iterations in simulation experiments
f sequence number of iteration,
Objectives
In this research, makespan is selected as the unique parameter to compare the performance of FMS. After all operations are completed, the latest end time is the makespan. It should be noted that the nodes
Proposed methodologies
The transition to traveling salesman problem
Colorni et al. 25 put forward a graph-based method to solve job shop scheduling problems in FMS. The disjunctive graph is modified to convert the job allocating and tool scheduling problem into traveling salesman problem (TSP), represented by equation (1)
where N is the set of nodes which represent all operations and available tools for each operation, plus the dummy start and end nodes coded by the symbols * and #, respectively. If the operation

The disjunctive graph of 3*6 example problem.
Considering constraints of procedures and optional tools synthetically, the movement of ants obeys the following principles:
Ants cannot move to a node until its all former operations are finished.
If a node has been selected, the other nodes belonging to the same operation are turned to be forbidden.
The basic procedures of ACO algorithm
It is well known that real ants leave substance (pheromone) in the nest-food path. The pheromone has a function to attract other ants to move along it. Ants construct candidate solutions by starting with an empty collection and then adding nodes into the collection until a complete solution is generated. 26 When finishing the construction, each ant gives feedback to the just constructed route by depositing pheromone. 27 The less time the ants take, the more the pheromone will be left. Meanwhile, the pheromone slowly evaporates to prevent ants falling into local optimal solution in early period.
Initialization of heuristic desirability
The heuristic desirability
where C is a positive constant.
Initialization of pheromone amount
The pheromone amount
The method of node selection
Ants are more likely to choose the path with higher pheromone amount or the heuristic desirability. The transition probability of moving from node u to node v in iteration no. f is given in equation (4)
where
When ants arrive at a node, they use roulette wheel to choose the path. Every feasible path has its own transition probability in the roulette wheel, and after spinning the roulette wheel, a path is chosen.
Pheromone updating rule of ACO algorithm
In ACO algorithm, there are two methods of updating pheromone amount, global updating rule and local updating rule.
In global updating rule, pheromone amount on a path is dynamically updated only after an ant has finished the route. The pheromone increment
where Q is a positive value associated with the number of operations and constant C.
In local updating rule, ants leave a certain amount of pheromone immediately as long as they go through a path. The local updating rule is closer to the real world, but leaving pheromone neglecting the differences among candidate solutions greatly increases the number of iterations, which is less efficient than global updating rule. In this research, only global updating rule is chosen to update pheromone amount.
Pheromone updating rule of MMACO algorithm
Adopting global updating rule probably generates large increment differences among ants, which makes pheromone amount significantly high in some paths. According to the node selection method in this research, ants tend to choose paths with higher pheromone amount, so the pheromone gaps among paths will be aggravated during later iterations. Once trapped in this situation, ants construct the same solution over and over again and the exploration will fall into stagnation.
To overcome the drawbacks of global updating rule, one of the most efficient methods is to narrow the pheromone gaps. Since the heuristic desirability is typically problem-dependent and static throughout the algorithm, limiting the pheromone amount on all paths in a certain range is adopted to achieve this goal. After obtaining
The update of pheromone limits
A modified approach to determine the upper and lower boundaries of pheromone amount is introduced in this section. We say MMACO algorithm is globally convergent if at each choice node, one of the alternative paths has maximum pheromone amount
The maximum possible pheromone increment in any iteration is
During the process of iterations, pheromone is greatly accumulated, so it has more influence on node selection than heuristic desirability. Neglecting the influence of heuristic desirability, the transition probability
where avg is the average number of available paths at each node, and
The initialization of pheromone limits
To initialize the range of pheromone amount, it is necessary to find an appropriate method to generate initial feasible solutions. Udhaya Kumar and Kumanan 10 developed an enumerative procedure to generate all feasible schedules for general scheduling problem. It is a numerical version by drawing Gantt chart. Whenever two or more jobs require the same tool at one time, the selection is made arbitrarily, and by enumerating all possible choices which occur at different stages one by one, the entire set of active feasible schedules can be obtained, including the optimal one. This algorithm is very simple and fast to be implemented, which is proper to initialize the range of pheromone amount.
Pheromone updating rule of BCACO algorithm
The pheromone updating rule of BCACO algorithm which is applicable to this built model is shown in equation (13)
where
Steps to obtain optimal solution of MMACO algorithm
The methods of optimizing solutions of job allocating and tool scheduling through MMACO algorithm are given and illustrated by flowchart in Figure 3.

Flowchart of MMACO algorithm.
Step 1: Input information of the scheduling problem and basic parameters of MMACO algorithm, including
Step 2: Initialize pheromone amount and heuristic desirability.
Step 3: Generates a new solution of job allocating according to section “The processing plans.”
Step 4: Obtain a feasible sequence to initialize the range of pheromone amount by the enumerative procedure mentioned in section “The initialization of pheromone limits.”
Step 5: Empty matrix
Step 6: Select one from feasible paths by means of roulette wheel selection and record the end node of the selected path in matrix
Step 7: If all operations are finished, go to Step 8. Otherwise, return to Step 6.
Step 8: Calculate makespan
Step 9: If the number of completed iterations is equal to the terminal number F, go to Step 11. Otherwise, go to Step 10.
Step 10: Update the pheromone amount and its boundaries, and return to Step 5.
The pheromone amount between the first node
The pheromone amount between neighbor nodes, denoted as
Step 11: If all possible job allocating plans are included, go to Step 12. Otherwise, generate a new job allocating plan and go to Step 3.
Step 12: Output the solution of job allocating and tool scheduling that has the minimum makespan as final consequence.
Performance comparison and analysis
In this section, the results of MMACO algorithm are compared with those obtained by ACO and BCACO algorithm.
Due to the fact that in the open literature there are few simulation models that provide each operation various tools, the data employed in the computation are originally generated. The available tools and their corresponding processing time are presented in Table 1 as the data pool, from which 11 test problems are constructed and each problem has 3–10 jobs and three to five operations, as shown in Table 2.
The basic information of 16 jobs.
Details of test problems.
X: number of available work centers; M: number of jobs in corresponding problem; N: number of operations in each job.
The simulation process is implemented by MATLAB 2011a on a 3.60-GHz Intel i5 personal computer. It would be the case that only one set of parameters used throughout the process is more favorable for verification. The parameters are given as follows:
The detailed solution of test problem no. 11 is described in Table 3 and illustrated by Gantt chart in Figure 4. The columns “Job no.” and “Tool no.,” respectively, show how jobs and tools are allocated to each work center. The makespan obtained by ACO, BCACO and MMACO algorithm is 81, 79 and 76, respectively, among which MMACO possesses the best one. Besides, tool utilization variance, represented by the standard deviation of tool processing time, is introduced to indicate the tool utilization status. A solution with lower tool utilization variance means more balanced tool utilization, which contributes to reducing tool modification time and cost. According to the consequence of tool scheduling in Table 3, tool utilization variance of ACO, BCACO and MMACO algorithm is 2.09, 1.80 and 1.54, respectively, which indicates that the tool utilization status can be improved by MMACO algorithm.
The detailed solution of problem no. 11.
ACO: ant colony optimization; BCACO; bidirectional convergence ant colony optimization; MMACO: max–min ant colony optimization.

The Gantt chart of problem no. 11.
To verify the effectiveness of the proposed algorithm, 20 trials of simulation experiment are carried out for each test problem. The average results of objective value (makespan) and reference value (processing time) are presented in Table 4. It can be seen from Table 4 that for problems whose job number is fewer than four, there are no makespan differences among MMACO, BCACO and ACO algorithms. It can be explained that there are rare tool conflicts among jobs. So just arranging tools with minimum machining time can approach the optimal solution. However, for more complicated problems, if adopting the same strategy, some operations will wait for longer time due to the high frequency of tool conflicts.
The average result of test problems.
ACO: ant colony optimization; BCACO; bidirectional convergence ant colony optimization; MMACO: max–min ant colony optimization.
Figures 5 and 6, respectively, show the makespan and processing time differences in Table 4 among ACO, BCACO and MMACO algorithms. It can be observed from Figure 5 that MMACO algorithm performs better than ACO and BCACO algorithms except the first two, and the performance of BCACO algorithm exceeds ACO algorithm from test problem no. 6. This makes it evident that MMACO algorithm is an excellent method to solve NP-hard problems in FMS. Compared to ACO algorithm, BCACO algorithm is preferable to solve large-sized processing plan. The feature that the trend of makespan is not coincident with that of processing time demonstrates that pheromone trail has the function to make ants select paths from a global perspective.

The comparison graph of makespan.

The comparison graph of processing time.
Such a superior performance of MMACO algorithm can be explained by the differential pheromone updating rule which not only considers the effect of better solutions obtained during the process of iterations but also provides ants more opportunities to try new routes. Figure 7 presents the comparison of mean makespan obtained by all ants in each iteration. Figure 8 presents the comparison of the optimal makespan obtained by the current iteration. The proposed reason can be strongly verified by the feature in Figures 7 and 8 that when iteration reaches the distinct number, the mean and optimal makespan obtained by BCACO algorithm tends to be fixed, while those obtained by MMACO algorithm are still being updated.

The convergence graph of the mean makespan.

The convergence graph of the optimal makespan.
Conclusion
MMACO algorithm is developed as an extended version of ACO algorithm. By imposing limits to the pheromone amount, MMACO algorithm reduces the differences between different paths, thus avoiding ants trapped in repeated route. To improve the performance of the algorithm, more effective tuning of the parameters is necessary.
In addition to describing a processing plan more conveniently, assuming that all jobs have the same number of operations will generate more tool conflicts which are essential to compare the performance of involved algorithms.
Footnotes
Acknowledgements
The authors would like to express their great appreciation to the reviewers for their constructive comments and suggestions.
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This research work was supported by National Key Technology Research and Development Program of the Ministry of Science and Technology of China (No. 2015BAF02B02) and Foundation for Science and Technology Research Project of Chongqing (No. cstc2013gg-yyjsB70001).
