A Mobile Service Robot Global Path Planning Method Based on Ant Colony Optimization and Fuzzy Control

: A global path planning method is proposed based on improved ant colony optimization according to the slow convergence speed in mobile service robot path planning. The distribution of initial pheromone is determined by the critical obstacle inﬂuence factor. The inﬂuence factor is introduced into the heuristic information to improve the convergence speed of the algorithm at an early stage. A new pheromone update rule is presented using fuzzy control to change the value of pheromone heuristic factor and expectation heuristic factor, adjusting the evaporation rate in stages. The method achieves fast convergence and guarantees global search capability. Finally, the simulation results show that the improved algorithm not only shortens the running time of global path planning, but also has a higher probability of obtaining a global optimal solution. The convergence speed of the algorithm is better than the traditional ant colony algorithm.


Introduction
Mobile robots have received widespread attention because of their great potential and research value in industrial applications, manufacturing, search and rescue, medical service, and intelligent transportation system [1]. Navigation is a key technology of mobile robot researches because it defines how mobile robots perceive, locate, and plan paths in an environment [2]. Path planning is an important part of robot navigation research. The main purpose is to find a collision-free optimal path from a starting point to final point for the mobile robot in a known environment [3].
The path planning of mobile service robots generally considers both static and dynamic environments [4]. The static environment refers to the location of a starting and ending point is known, and obstacles are also stationary. However, the location of obstacles changes with time in a dynamic environment. A mobile robots need to make corresponding decisions based on sensor information. According to the robot's perception of the environment, path planning can be divided into two types. One is the robot plans route offline with the known map information, which is called global path planning [5]. In another type, the robot does not input environmental information in advance. It is necessary to use the sensor to establish an environmental map in real time, avoid obstacles, and find a suitable path. This kind of path planning is called local path planning [6]. The global path planning method is applied to a static environment in the paper.
In recent years, many researchers have carried out significant research on the path planning of mobile service robots and proposed relevant control methods. The methods include artificial potential field method [7], fuzzy algorithm [8], A-Star algorithm [9], DWA algorithm [10], genetic algorithm [11], immune algorithm [12] and neural network algorithm [13]. The genetic algorithm and neural network algorithm are studied in these papers. They are belonging to the metaheuristic algorithm and the same as the ant colony algorithm. Milad et al. [14] fused the artificial potential field algorithm with the genetic algorithm and proposed a hybrid approach for path planning of multiple mobile robots in continuous environments. Luo et al. [15] combined the Dijkstra algorithm with the bioinspired neural network. It reduced the accuracy requirement of the robot path planning on the environment model and saved the time costs. The combination of heuristic algorithms and intelligent control methods to maintain strengths and make up for shortcomings has become a research hotspot in related algorithm research.
In 1992, Marco Dorigo proposed ant colony algorithm [16] from the foraging behavior of real ants in nature, which is a meta-heuristic algorithm. The ant colony algorithm has been gradually applied to the field of mobile service robot path planning [17] because of its parallel processing, distributed computing and strong robustness. Although the ant colony algorithm has shown good performance in the field of path planning, it still cannot solve the shortcomings of long search time, easy stagnation, slow convergence speed and local optimization. In order to improve the performance of the algorithm, many scientists have done relevant research. Yen and Cheng [18] proposed a fuzzy ant colony algorithm to minimize the iterative learning error of ant colony algorithm under the fuzzy control. Imen et al. [19] combined advantages of ant colony algorithm and genetic algorithm and proposed a new hybrid GA-ACO algorithm. Cheng et al. [20] verified the efficiency of the ant colony algorithm based on the TSP model. Wu et al. [21] improved its performance by applying a rollback strategy to basic ant colony algorithm. Rajput and Kumari [22] combined a directional motion and a vector motion of mobile robot in a grid map to propose a quick ant colony algorithm. Li et al. [23] proposed an improved ant colony algorithm based on dynamic parameters and pheromone update mechanism. Khaled and Farid [24] introduced an ant colony algorithm based on infinite step. Gan et al. [25] proposed a planning method based on ant colony extended path optimization. Chen et al. [26] proposed a fast two-stage ant colony algorithm based on the principle of odor diffusion. This overcomes the problems of the traditional ant colony algorithm. Aiming at the characteristics of three-dimensional path problem for anti-riot mobile robot and the shortcomings of traditional ant colony algorithm in path planning, Che et al. [27] proposed an improved ant colony optimization algorithm. According to the turning characteristics of mobile robots, Gigras et al. [28] used a hybrid ACO-PSO algorithm to greatly reduce the collision with obstacles. To satisfy the actual requirements of different working areas, Uriol et al. [29] analyzed and adjusted the parameters of ACO algorithm. They finally proved that the ACO algorithm can be applied to the path planning of mobile robots in complex environments. Jiao et al. [30] proposed a smart wheelchair path planning method based on the adaptive polymorphic ant colony algorithm; its multi-colony division and cooperation mechanism was able to improve the algorithm search speed. Zhao et al. [31] used nonuniform distribution of initial pheromone and the directional selection strategy to improve the ant colony algorithm and obtained good results in the path planning of an omnidirectional moving vehicle. Zeng et al. [32] introduced the unlimited step length method into the ACO algorithm. The method improved the diversity of choosing the path of ants and ultimately optimized the results. Rashid et al. [33] proved the effectiveness of the ACO algorithm in solving the MRPP problems with several different cost maps. Joshy et al. [34] applied the ACO algorithm to iRobot Create and carried out experiments in the real world. The results show that the mobile robot can find the shortest path without any collision in most of the situations. Based on the improved grid method, Xu et al. [35] used the particle swarm optimization algorithm on the global path roughly, and then combined the ant colony algorithm to optimize the path. To solve the 3D path planning problem, Wang et al. [36] proposed a safety value to improve the pheromone update and heuristic function in ant colony algorithm, and then provided two methods to calculate safe values. Hsu et al. [37] adopted a new mechanism for updating opposite pheromones; it solved the problem of that the traditional ACO algorithm is easy to fall into local minima and verified the practicability of the algorithm on a FPGA chip. Sun et al. [38] proposed an improved ant colony algorithm, which is combined with the genetic algorithm. It reduced the iterations and calculation time cost to obtain the optimal solution. Dai et al. [39] proposed a novel hybrid optimization algorithm-based biogeography-based optimization and ant colony optimization. It has a better performance than the traditional ACO algorithm. Most methods mentioned above focus on a certain problem of the traditional ant colony algorithm. The tradeoff between the efficiency of the ant colony algorithm and path optimization is still a difficulty.
With the advancement of the unmanned factory project, various mobile robots are gradually adapting to the operating environment. The convergence speed and path length of path planning affect the operating efficiency of the robot system and the effect of autonomous navigation. The traditional ant colony algorithm has obvious advantages and is widely used, but usually needs to adjust the main parameters manually. It limits its adaptability to different maps. The setting of fixed pheromone volatilization coefficient also increases the risk of the algorithm falling into a local optimum. As a commonly used nonlinear control method, the fuzzy control is robust and adaptable. It is adept in using fuzzy rules and reasoning to adjust parameters.
A global path planning method is proposed based on the improved ant colony algorithm and fuzzy control. Firstly, the robot environment map is established through the grid method. The fuzzy algorithm is given to control key parameters. The critical obstacle influence factor adopts new pheromone distribution and updating strategy. It adjusts the evaporation rate in stages. Finally, the simulation experiments are carried out in various complex environments. The experimental results show that the algorithm is feasible and effective.

Environment Modeling
The grid method is a common method for mobile robot environment modeling. It divides the workspace of the mobile service robot into grid cells, as shown in Figure 1. In the grid map, the moving direction of the robot is no longer arbitrary, but rather in eight directions represented by octree. There are only two states in the grid map, occupied or free. The black grids in the Figure 1 represent the obstacle information. The white grids are the robot movable area. The blue grid is the starting point of the robot. The red grid is the ending point of the robot. Assuming that the coordinates of the robot are (x g , y g ), the sequence encoding of the robot in the map can be calculated as follows: where Num is the grid number, N x is the total number of columns in the grid map, N y is the total number of rows in the grid map, and mod and int are computer operations. The 0.5 value means that the coordinates of the robot are located in the center of the grid, where the unit of each grid is 1 m.

Ant Colony Optimization
ACO is a typical heuristic intelligent search algorithm. It imitates the foraging behavior of an ant colony and finds the optimal path in an unknown environment. Existing research results show that the cooperative communication between ants is based on pheromones. The concentration of pheromone is inversely proportional to the path length. While searching for food in a random environment, ants tend to move to the path with a higher pheromone concentration. As the number of ants walking on the same path increases, the pheromone concentration on the path increases and more ants are attracted to the path. This behavior shows the principle that ants use to choose the optimal path. In order to improve the efficiency of path planning, the concept of heuristic function η and tabu list tabu k are proposed into the artificial ant colony model. In the random search algorithm, the heuristic function can improve the search efficiency. The tabu list is used to record the nodes that the ants have traveled to ensure they do not return to the previous node.
At time t, the ant k moves from current node i to an unvisited node j according to the distance information from the ending point and the pheromone intensity on the path. If there are more than one unvisited node, the ant k will determine the transition probability P k ij between nodes according to the following formula: where U is the next optional node set of ant k, α is the pheromone heuristic factor, β is the expectation heuristic factor, τ ij (t) is the pheromone concentration on the path ij at time t, η ij (t) is the expected heuristic function, defined as the reciprocal of the Euclidean distance between node i and node j, and s is any node in the set U.
denote the sum of the product of the pheromone concentration and the heuristic function from node i to each node s.
where d ij is the Euclidean Distance between two adjacent nodes. When all ants complete the path search, the pheromone will evaporate over time. At the same time, the pheromone on the path will increase. The pheromone left on each path will, thus, be updated. The update formula is as follows: where ρ is the pheromone evaporation rate, in order to avoid excessive accumulation of pheromone, ρ∈(0, 1), ∆τ ij (t) presents the pheromone added on the path ij at time t, and ∆τ k ij (t) stands for the pheromone added by ant k after passing path ij at time t. This is defined as: where Q is a constant representing the pheromone intensity and L k is the total length of path that ant k walked through in a cycle.

Fuzzy Control of α and β
In ACO, the α and β have a great influence on the performance of the algorithm. The value of α indicates the degree to which the pheromone remaining on each node is valued. The larger value of α, the easier it is for ants to choose a path traveled before. A larger α keeps ants away from local optimality but reduces the search randomness. The value of β indicates the degree to which the heuristic function is valued. The larger the value of β, the easier it is for ants to choose a closer node. If the values of α and β are not obtained properly, the result will be poor. This section will use fuzzy control to dynamically adjust the values of α and β.
The fuzzy control is a digital control system based on the fuzzy set theory, the fuzzy language variables and the fuzzy logic inference. The fuzzy controller consists of four parts:

1.
Fuzzification. The main function is to select the input quantity of the fuzzy controller and convert it into the fuzzy quantity that the system can recognize. The input quantity is processed to meet the requirements of fuzzy control. The input quantity is scaled to determine the fuzzy language value of each input quantity and the corresponding membership function.

2.
Rule base. The fuzzy rule base is established based on the experience of human experts. The fuzzy rule library contains many control rules. It is a key step in the transition from actual control experience to fuzzy controller.

3.
Fuzzy reasoning. This part mainly implements knowledge-based reasoning decision.

4.
Defuzzification. The main function of this part is to convert the control quantity obtained by reasoning into control output.
To satisfy the fuzzy control algorithm, the following variables are defined: Definition 1. Quality of paths solved by ant colony.
Definition 2. Evolution of ant colony.
where L best is the best path in contemporary ant colony, n is the current iteration times, and N is the total iteration times. In Equation (7), Value ∈ [−6, 6] is derived from a large number of experimental effect comparisons and selections. In this paper, the fuzzy controller contains two input variables and two output variables. The input variables are Value and Iter. The output variables are α and β. The values of α and β are controlled by the convergence state of ant colony in different stages. It can improve the pre-convergence speed and avoid falling into local solution of the algorithm.
The whole fuzzy control algorithm includes three stages. In the early stage of the algorithm, pheromone accumulates insufficiently on each path. At this time, the ant colony for selecting the route is related to the expectation heuristic factor β. Then, β should be larger and α should be smaller. With the iteration, the pheromone concentration on the shortest path is gradually higher than other paths. In this case, α should increase and β should decrease accordingly to enhance the positive feedback effect of pheromone. In the later stage of the algorithm, the pheromone concentration in some paths is much higher than in other paths. The algorithm has the highest risk trapped in the local optimum. In order to increase the randomness of the algorithm, the influence of the pheromone for selecting a path should be reduced. The value of α decreases and the value of β should further decrease. In the fuzzy algorithm, the value shows the ant colony's searchability. It can accurately control the parameters according to each optimal path.
The values of α and β are usually taken from [1,9] in traditional ACO. The condensation of value domain is studied in the paper. As shown in Figure 2a, when α equals to 1 and 3, ACO can not only get shorter path length, but also ensure a fast convergence speed. In order to further enhance dynamic performance, the value range of α is set to [1,4]. The experimental results in Figure 2b show that the performance of ACO has been improved with the increase of β. When β equals to 7 and 9, ACO finally shows stable convergence and can obtain the shortest path length. The value range of β selected in this paper follows references [7,9]. The fuzzy controller uses the Mamdani inference method. The fuzzy inference flow chart is shown in Figure 3. The function of the fuzzy input and output variable is shown in Figure 4.  If Iter is A AND Value is B THEN α/β is C. The fuzzy rules are shown in Table 1. Figure 5 shows the graphical form of the fuzzy rules.

Initial Pheromone and Exprectation Heuristic Function
The reasonable distribution of the initial pheromone is beneficial to speed up the search efficiency in the early stages of the ACO algorithm. The goal of this paper is to determine the initial pheromone based on the obstacle information of the starting to the ending point. Without an obstacle, the optimal path is the line connecting from the starting to the ending point. In case of obstacles, the optimal path is when the mobile service robot walks along the line and avoids obstacles. Therefore, in the initial state, the grids that are on the line and close to obstacles should be given more pheromone than other grids. This can greatly accelerate the searchability of the algorithm in the early stage. Figure 6 illustrates how to distribute the initial pheromone with different grid maps. In the map, 1 and 2 represent the values of the critical obstacle influence factor. A large value will lead to densely distributed initial pheromones. Two-point connection and the surrounding of obstacles crossed by the line produce the critical obstacle influence factors. The grids on the line are more important than around the obstacles. Consequently, it takes a larger value. The expectation heuristic function indicates that ants tend to move towards grids that are close to the ending point. The new heuristic function introduces the critical obstacle influence factor, as shown in Equation (9): In Equation (9), g i is the critical obstacle influence factor at grid i and A is a constant.

Improved Phermone Update Mechanism
In a traditional ACO, pheromones on each path are updated after all the ants finish searching. At the end of the algorithm, the optimal path has accumulated a lot of pheromones. The ants can choose the feasible path stably. If some unnecessary pheromones are still updated on all paths, it will reduce the stability of the optimal value and influence the convergence speed of the algorithm. The constant B is proposed. When iteration times n < B, the average value L of the feasible path solutions is obtained from all ants in a cycle and the pheromones on the paths are updated. The solution is smaller than the average value L . When n ≥ B, the pheromone is updated only on the optimal path. The improved mechanism mentioned above is shown in the Equations (10) and (11). In those equations, the value of B is a constant related to the total number of iterations N. The m is the total number of ants. The L k is the total length of the path that ant k walked through in a cycle. The L best is the best path of the contemporary ant colony.
It can be seen in Equation (11) that the new update mechanism updates the pheromone of ants. They obtain a short path at an early stage of the algorithm and only update the pheromone of the optimal path at the end of the algorithm. The improvements can accelerate the algorithm's convergence speed and searchability, while avoiding premature phenomenon.

Dynamic Adjustment of the Pheromone Evaporation Rate
A local optimum means that the ant loses the ability to select the optimal path due to the interference of the pheromone on the suboptimal path. If the optimal solution is not found for several generations, the algorithm stalls. If the optimal solution is not found in several iterations, algorithm stagnation occurs. The ACO algorithm is easily trapped in a local optimal solution at a later stage. In order to strengthen the global searchability in a later stage of the algorithm, the paper dynamically adjusts the pheromone evaporation rate ρ.
When the algorithm is tripped in local optimum, ρ decreases correspondingly. It can reduce the positive feedback effect of pheromone concentration and increase the randomness of the algorithm. As shown in Equation (12), where C is a constant from 0 to 1:

Improved ACO Algorithm Flow
An improvement to the ACO is proposed. The computational complexity of the improved algorithm is O(n 2 ). The flow chart of the improved ACO is shown in Figure 7. The improved algorithm steps are as follows: Step 1: Establishing a grid map based on the surrounding environment and initializing parameters of the algorithm. Set the number of ants m, number of iterations N, current iteration n, information heuristic factor α, expectation heuristic factor β, initial pheromone, pheromone evaporation rate ρ, pheromone intensity coefficient Q, starting point, and ending point.
Step 2: Place ants at the starting point and add the starting point to the Tabu list. According to (1), calculate the transition probability between nodes ij, select the next node j by the roulette method, and add the current node to the Tabu list.
Step 3: Determine whether the ant reaches the ending point. If it is, calculate the length by path nodes recorded in the Tabu list. If it is not, continue to search for the next node until it reaches the ending point. Loop all the ants in this generation until travel fin-ished and go to step 4.
Step 4: Calculate the Iter and Value of the ant colony according to the Equations (6) and (7).
They are used to adjust α and β in the fuzzy algorithm. Determine whether the algorithm falls into the local optimum. If it does, change ρ by using Equation (12).
If it does not, do not change ρ. Update the pheromone in stages according to the strategy of Equation (11).
Step 5: Determine whether the iteration number of the algorithm satisfies n ≥ N. If it does, go to Step 6; otherwise, go to step 2. Let the ants start the cycle again from the starting point.
Step 6: The outcome is the optimal path, the iterative convergence curve, and the length of the shortest path. End the algorithm. Figure 6 shows a flow chart of the improved ACO algorithm.

Simulation Results
To verify the validity of the improved algorithm, this paper uses MATLAB to build three kinds of 20 × 20 m grid maps with different complexity. The test is to observe whether the robot could find a feasible optimal path in an environment with static obstacles. The results of the improved ant colony optimization (IACO) and basic ant colony optimization (ACO) are compared and analyzed. The main parameters of the algorithm are shown in Table 2. The two algorithms are compared and tested with the same parameters and environment in the experiments. Due to that the algorithm convergence time is positively correlated with the convergence iteration times, the experiments use the best path and convergence iteration times to measure the performance of the algorithm. Figure 8 shows the optimal path of the mobile service robot. The left picture is the result of basic ACO. The right picture is the result of IACO, proposed in this paper. Figure 9 is a comparison of the convergence curves between the two algorithms.  In Map 1, there is little difference in the iteration times when finding the optimal path between ACO and IACO. The optimal path by IACO is shorter than ACO, and the convergence speed of IACO is faster. IACO optimizes the pheromone mechanism. First, the IACO determines the initial pheromone according to the distribution of obstacles on the map. It can greatly accelerate the searchability of the algorithm in the early stage. Then, IACO takes a subsection method to update the pheromone. It only updates the pheromone on the optimal path in the later stage of the algorithm. It can be seen from Figure 8a that the optimal path solution of ACO is unstable at the end of the iterations. IACO can keep the optimal path solution due to the new pheromone mechanism.
IACO introduces the fuzzy algorithm to dynamically adjust the key parameters α and β of ACO. α and β can be adaptively adjusted by the quality of the path solution after each iteration. The dynamic adjustment of the parameter ρ increases the randomness of the algorithm. IACO finds the shortest path earlier than ACO algorithm in Map 2. In the later stage of the map 2 experiment, the sub-best solution quickly takes advantage based on the high pheromone concentration of the sub-best path. The ACO falls into the local optimal problem, which is difficult to escape. The IACO algorithm reduces the dependence on the pheromone concentration by dynamically adjusting the parameters α and β. This avoids the local optimal problem and obtains the best path solution.
In Map 3, the basic ACO finds the optimal path and remains stable, but IACO uses fewer iterations. The iteration times are reduced, and the algorithm runtime is shortened. Map 4 is randomly generated by the mapping algorithm. The data shows that IACO finds the shortest path after 13 iterations, which verifies that the algorithm has stronger stability and adaptability than the traditional ACO algorithm.
The experimental results are shown in Table 3. In the three maps, the IACO algorithm can get a better optimal path solution and has a faster convergence speed than the ACO algorithm. There are some limitations in the IACO algorithm. The fusion of the fuzzy algorithm in IACO needs to determine a suitable fuzzy rule. This point increases the computational complexity of the algorithm and requires higher hardware performance. The simulation results verify the effectiveness of the algorithm. The performance of the algorithm is better than basic ACO.

Conclusions
The fuzzy algorithm is proposed to control information heuristic factor α and expectation heuristic factor β. The critical obstacle influence factor is proposed for the initial pheromone distribution. The influence factor is combined with expectation heuristic function. The pheromone update strategy is improved. The pheromone evaporation rate is improved. The simulation results show that the improved ant colony algorithm can obtain an optimal path solution in a short time in the 20 × 20 m grid maps. It is better than the basic ant colony algorithm in terms of path length and convergence speed.
In future research, we will continue to optimize the above-described algorithm and attempt to apply the algorithm to three-dimensional space in more complex environments. A full SLAM system will be used for mapping instead of map modeling artificially. Funding: This research was funded by Beijing Advanced Innovation Center for Biomedical Engineering, and was funded by the project of intelligent layer control system of intelligent inspection robot for outer surface of box girder.