Abstract
Keywords
Introduction
As an important part of kinematics, path planning is widely used in unmanned aerial vehicle (UAV), 1 robot, 2 and automated guided vehicle (AGV). 3 Path planning for mobile robots refers to planning a path from starting node to the target node. It requires the path to be safe, collision-free, and the comprehensive indicators such as distance, time, and energy consumption are optimal. 4
Currently, a lot of scholars have done much research on the path planning problem and proposed a wide variety of algorithms, such as A* algorithm, 5 ant colony optimization 6 (ACO) algorithm, genetic algorithm 7 (GA), particle swarm optimization algorithm, 8 artificial potential field method 9 (APF), fireworks algorithm 10 (FA), and so on.
ACO algorithm is a heuristic algorithm first proposed by Dorigo and Maniezzo in the 1990s, 11 and it imitates the foraging behavior of ant colonies in nature. It’s widely used in path planning because of its strong robustness, positive feedback enhancement of optimal path, and ease of combination with other algorithms. However, there are some problems, such as slow convergence speed, easy trap into a locally optimal solution. To address these problems, plenty of scholars have conducted in-depth research. Sun et al. 12 greatly improved the survival number of ants in the algorithm and accelerated the convergence rate of the algorithm by adopting different strategies for deadlock problems in the algorithm. Zhang et al. 13 improved the ability of search space by using information entropy to describe the ant colony and construct a nonuniform distribution of pheromone concentration and renewal mechanism. Zhang et al. 14 accelerated the convergence rate of the algorithm and operating efficiency by dividing the ant colony into guide layer ant colony and common layer ant colony to search path. Khaled and Farid 15 accelerated the algorithm’s convergence rate and increased the search scope by using a new pheromone updating rule and dynamic evaporation rate. Luo et al. 16 made the initial pheromone uneven distribution to avoid the early blind search of the algorithm, speed up the convergence of the algorithm, and used the dynamic punishment method to reduce the number of ants trapped in a deadlock. Meng et al. 17 proposed a multi-ant colony cooperative optimization algorithm based on a cooperative game mechanism to accelerate the convergence speed of the algorithm. Tao et al. 18 used fuzzy control to change the value of the pheromone heuristic factor and expectation heuristic factor and adjusted the evaporation rate in stages, which ensured the global search ability of the algorithm.
With the development of algorithms, the ACO algorithm gradually began to combine with other algorithms to achieve the purpose of an optimization algorithm. Ma et al. 19 used the improved FA to generate the initial pheromone concentration values to distribute them on the map and then search for a globally optimal path through the ACO algorithm. This algorithm can find the optimal path in the case of fewer iterations. Dai et al. 20 accelerated the algorithm’s convergence rate and improved the path’s smoothness by adding evaluation functional and bending inhibitors of the A* algorithm. Zhu et al. 21 improved the fitness function of the ant colony algorithm by using the APF algorithm, and the adjustment of negative feedback and self-fitness function was taken into account at the same time. Therefore, this method can greatly accelerate the convergence rate of the algorithm. Yu 22 gave the concept of an ant colony particle and fused the particle swarm algorithm with the ACO algorithm to improve the convergence speed of the algorithm. Lei et al. 23 used the GA to generate the initial path and took the better path as the reference information of the ant colony algorithm pheromone initialization to reduce the blindness of the initial search of the ant colony algorithm. Then, the ant colony algorithm was used to further optimize the initial path and accelerate the convergence speed of the algorithm. Saenphon et al. 24 used the fast reverse gradient method to obtain the possible optimal solution and then used the ACO algorithm to further improve the quality of the solution. Li et al. 25 proposed optimization ants and reconnaissance ants combined with the artificial bee colony algorithm and assigned different pheromone updating weights, respectively. The convergence speed of the algorithm is improved to avoid the algorithm falling into local optimum and ensure the diversity of solutions.
Based on the above literature research, the JPIACO algorithm is proposed in this article. The main contributions of this work are as follows: The initial pheromone concentration distribution obtained from the jump point search (JPS) algorithm is designed to accelerate the early iteration speed. A new heuristic function is designed to improve the smoothness of the path. A new adaptive reward and punishment factor is designed to improve the iterative speed. The Max–Min ant system has been introduced to improve the global search ability.
The framework of the article is as follows. The second section describes the map establishment method. The third section mainly describes the JPS algorithm. The fourth section mainly describes the JPIACO algorithm. The fifth section describes the experiments and results. The sixth section summarizes the thesis.
Environment model
In the path planning of mobile robots, we should establish a 2D model of the robot movement environment firstly, and the modeling methods include the free space method, grid method, topology method, and so on. Simple, effective, easy to implement, and can clearly express obstacles are considered, the grid method to model is used in this article. An example of the grid map is shown in Figure 1.

Schematic diagram of grid map encoding.
In the grid map, white grids are free spaces that robots can move and black grids are obstacle spaces that robots can’t move. To save the path and pheromone concentration easily, numbered the grid map by the way from left to right and top to bottom. As the numbers show in Figure 1, from left to right and top to bottom, the map numbers the grid starting at 1 until it is added to the 100th grid in the lower right corner.
The relationship between its coordinates and the number
where
Initial path planning based on the JPS algorithm
The JPS algorithm is the optimization of the A* algorithm. In the traditional A* algorithm, path analysis of each step needs to calculate the value of the eight direction nodes around, it generates a lot of unnecessary calculation steps which reduces the efficiency of the algorithm. While the JPS algorithm discards unnecessary nodes, leaving only representative nodes in the path search (these nodes are called jump points), it greatly improves the running efficiency of the algorithm.
Jump point screening
In the grid map, use each grid as a node, define eight grids adjacent to the current node grid as “around the current node,” the current node position is the parent node
In Figure 2(a), when searching from point
where

Pathfinding process of obstacle-free nodes around the node
In Figure 2(b), when searching from point
As shown in Figure 3, there is an obstacle node (2 in Figure 3(a) and 4 in Figure 3(b)) around node

Pathfinding process of obstacle nodes around the node

JPS algorithm pathfinding process. JPS: jump point search.
In summary, a jump point is defined as meeting at least one of the following three conditions: Node Node When node
Path generation
After jump point screening, the obtained jump points are added to the Openlist table of the A* algorithm for evaluation, and the evaluation function is shown in equation (4)
where
Select the target node with the lowest cost value and add it to the Closelist table of the A* algorithm, then connect the nodes in the Closelist table and we can get the path.
The A* algorithm can only select eight adjacent directions for calculation in the next node selection, but the JPS algorithm can choose from jump points, and achieve movement across multiple node distances, which greatly improved the operating efficiency.
As shown in Figure 4, S is the start point and G is the target point. Firstly, record start point S as the jump point according to the jump point rule, search in the horizontal and vertical directions, and the search stops when encountering a map boundary or obstacle, after searching in horizontal and vertical directions, move a grid diagonally to continue the horizontal and vertical search. Repeat the above operation, when moving to point A find mandatory neighbor point B, and record the start point A and B as the jump point according to the jump point rule. Point B search down and find the goal point G, record the goal point G as a jump point, and stop the search. Finally, we can get the path through the relationship between the parent node and the child node.
JPIACO algorithm
ACO algorithm
ACO algorithm is to imitate the foraging behavior of ant colonies in nature. It obtains the optimal path by continuously updating the pheromone between colony and environment. The shorter path that the ant walks, the more concentration of pheromones left, the ant has a higher probability to choose the path, so there will be more and more pheromones on the path, thus forming an optimal path positive feedback strengthening mechanism.
In the ACO algorithm, roulette is generally used to select the next node, as shown in equation (5)
where
When the ACO algorithm completes a loop search, the pheromone on the path is updated globally, the calculation formula is shown in equations (6) and (7)
where
Improvement of ACO algorithm
For the shortcomings of the ACO algorithm such as slow iteration speed and unsmooth path, modify the heuristic function of the ACO algorithm, introduce the reward and punishment factor from the Wolf pack colony algorithm, and limit the maximum and minimum ant pheromone concentration.
Design of heuristic function
The heuristic function of the ACO algorithm is reciprocal to the Euclidean distance from the current node to the target node, but in fact, the mobile robot will generate extra time when turning in motion, so the path will be selected with fewer turns when the path length is equal. Based on this, the cost of turns is added to the heuristic function to make the generate path smoother, heuristic function is shown in equations (8) and (9)
where
Improvement of initial pheromone
The pheromone concentration of each node in the early stage of the ACO algorithm is the same, which leads to the problem of blind path search, poor convergence, and long search time. To address this problem, this algorithm first finds a series of jump points by the JPS algorithm, and these jump points produce a guiding effect in the early stage, which speeds up the previous iteration, the initial concentration value is shown in equation (10)
where Gau is the initial pheromone concentration value at each jump point,
Improvement in pheromone update
For the shortcomings of the ACO algorithm in convergence speed slow, introduce reward and punishment factors in the Wolf pack algorithm. 26 After each iteration, pheromone reward for the optimal path and penalty for the worst path. Furthermore, aim at the difference between pathfinding in early and later stages of iteration, conduct dynamic adjustment of pheromone concentration by increasing the reward and punishment factors in early iteration and decreasing the factors in the late iteration, because it’s necessary to quickly find a relative path in the early stage and increase the search range in the later stage. The formula is defined as follows
where Pau is the reward and punishment factor,
In the ACO algorithm, the pheromone concentration on one path is much higher than on other paths after multiple iterations, which may trap into the local optimum and lose the global optimum solution. To avoid it, introduce the Max and Min system to limit it 27 , the formula is shown in equation (12)
where
As shown in Algorithm 1, this is the pseudo-code of the JPIACO algorithm.
JPIACO algorithm.
Simulation
So as to verify the effectiveness of the proposed algorithm in path planning, compare it with the ACO algorithm through path length, iteration times, and number of turns. Experiments were run on an Intel i7-4720HQ cpu with 8G of RAM, and the programming language is MATLAB(R2018b). The ACO algorithm parameters are set according to the literature, 10,12,28 set according to the original parameters, and the parameters set in this article are shown in Table 1.
The parameter setting.
As shown in Figure 5, use map 1 (15*15), map 2 (30*30), and map 3 (50*50) in the literature 7 as the environment for simulation experiments.

Three kinds of maps.
Figures 6(a), 7(a) and 8(a) are the optimal paths of the ACO algorithm under three maps; Figures 6(b), 7(b), and 8(b) are the optimal paths of JPIACO algorithm; Figures 6(c), 7(c), and 8(c) are the optimal path length iteration curve comparison of two algorithms.

Comparison of map 1. (a) ACO optimal path in map 1; (b) JPIACO optimal path in map 1; (c) iterations comparison of ACO and JPIACO in map 1.

Comparison of map 2. (a) ACO optimal path in map 2; (b) JPIACO optimal path in map 2; (c) iterations comparison of ACO and JPIACO in map 2.

Comparison of map 3. (a) ACO optimal path in map 3; (b) JPIACO optimal path in map 3; (c) iterations comparison of ACO and JPIACO in map 3.
As seen from Figures 6 to 8, the ACO algorithm finds the relatively optimal shortest path in the small environmental scale map, but with the increase of environmental scale, there are a lot of twists and turns in the path. However, the JPIACO algorithm can always find the relatively better shortest path. Moreover, the ACO algorithm finds the relative shortest path after 13 times in the environment of map 1, with the increase of the environment scale, the iterative process has not stabilized and the path is not optimal as we can see. But the JPIACO algorithm can find the relative optimal path in few times, it stabilized after 2 iterations in map 1, stabilized after 6 iterations in map 2, and stabilized after 22 iterations in map 3. It further confirms the effectiveness of the JPIACO algorithm.
To verify the performance advantages of the JPIACO algorithm in path planning, compare it with the ACO algorithm and algorithm of literature 10,12 to obtain the number of turns, minimum iteration, and optimal path length in three maps environments, as shown in Table 2.
Simulation experiment results.
As seen from Table 2, with the increase in the complexity of the environment, the ACO algorithm finds a larger and larger gap in the length of the path compared to the JPIACO algorithm, from a difference of 4 in map 2 to a difference of 48.14 in map 3, the number of turns and minimum iteration are the largest among the four algorithms in three maps expect in map 1. The algorithm proposed in the literature 10 can find the optimal solution in a few iterations, with the increase of environmental complexity, the optimal path length found in the environment of map 3 is 77.15, which is still insufficient compared with 71.64 found by the JPIACO algorithm, the number of turns is deficiency compare with this article, but for the minimum number of iterations, literature 10 found the minimum iteration in map 3. The algorithm proposed in the literature 12 can deal with deadlock better, but the path found in map 2 and map 3 is inferior to the JPIACO algorithm, the number of turns and minimum iteration among the four algorithms are inferior to this article. In terms of path accuracy and the number of turns, the algorithms proposed in this article find the best path and the least turns among the four algorithms, for the minimum number of iterations, this article is optimal between map 1 and map 2, and second only to the literature 10 in map 3. What’s more, in terms of turning angle, the algorithm in this article is 45° turning angle, compared with 90° turning angle and 135° turning angle existing in other algorithms, the cost of turning is smaller and more in line with the actual path planning application, which has a great practical value.
Conclusion
This article presents the JPIACO algorithm. Aiming at the problems of the ACO algorithm, such as slow early convergence speed and an excessive number of turning points, the JPS algorithm is added to obtain jump points by guiding a pathfinding function to distribute initial pheromone concentration values in the map. The turn cost factor, additional reward and punishment factors, and Max–Min ant system are added, and these improve the shortcomings of slow convergence speed and a lot of turns of the ACO algorithm. JPIACO algorithm is simulated under three kinds of maps and compared with the algorithm in literature, 10,12 and the results show that the JPIACO algorithm has an improved effect, which can quickly find an effective path with high precision, few turning points, and small turning angles. Moreover, it is still effective in complex environments. The simulation results of different map sizes show that the JPIACO algorithm is generally adaptable to map scale and obstacle distribution structure.
Although JPIACO is a promising algorithm, the kinematic constraints must be considered if applied to robots. In addition, the performance of the algorithm in the dynamic environment should also be verified, and that’s what we’re going to do in the future.
