Disordered and Multiple Destinations Path Planning Methods for Mobile Robot in Dynamic Environment

1School of Computer Science and Engineering, Big Data Computing Key Laboratory of Hebei Province, Hebei University of Technology, No. 5340 Xiping Road, Shuangkou, Beichen District, Tianjin 300401, China 2School of Computer Science and Engineering, Hebei University of Technology, No. 5340 Xiping Road, Shuangkou, Beichen District, Tianjin 300401, China 3School of Information Engineering, Tianjin University of Commerce, Tianjin, China


Introduction
The development of science and technology makes smart home concept realizable, where mobile robots play a very important role.There is a heavy need in daily life for a robot to work continuously in an environment which contains disordered and multiple destinations.Path planning for a mobile robot working in such an environment is a challenging task and has attracted more and more attention of scholars worldwide.This paper presents disordered and multiple destinations path planning methods for mobile robot in an environment with dynamic obstacles.Path planning problem can be understood as an optimization problem with constraints.It refers to how a robot searches one optimal or approximates optimal route with specific performance (such as the shortest distance, less time, or the minimum energy consumption) from starting point to target point in the environment with obstacles.
There are many studies in the literature about path planning.Depending on the methods and principles used in the path planning, the robot path planning methods are divided into two types: traditional path planning methods and intelligent path planning methods.Traditional path planning methods include visibility graph method, grid decoupling method, graph searching method, and artificial potential method [1].Intelligent path planning methods include fuzzy logic [2], ant colony algorithm [3], neural networks [4], and genetic algorithm [5].In order to solve the shortcomings of these algorithms, scholars have conducted a lot of researches.In some particular work environments, the ants will fall into traps.Yu and Shiyong [6] proposed the ant rollback strategy to solve this problem, which could reduce the operating efficiency of the algorithm.By analysing the shortcomings of the artificial potential field method, Tang et al. [7] proposed an obstacle avoidance method based on gravity chain.For solving the "dead cycle" problem in Ushaped obstacles, a systemic neural-fuzzy control algorithm was proposed by Bao et al. [8].An Obstacle Avoidance Algorithm (OAA) and Distinguish Algorithm (DA) were proposed to generate the initial population by Yun et al. [9] in order to improve the efficiency by selecting only the feasible paths during the evolution of genetic algorithm.But it inhibits the diversity of the population.To overcome the premature convergence in the traditional genetic algorithm, Hu and Feng [10] proposed a new way to generate the genetic operator, by means of modifying insert a space before (SAGA).In order to avoid infeasible path and improve the convergence speed, Tuncer and Yildirim [11] proposed a new mutation operation, which selected the mutated node with the best fitness value after being replaced with the original node (BMFGA).In dynamic uncertain environments, Wei et al. [12] proposed the incremental replanning which reused the information of previous.At the same time, it could also reduce the possibility of finding the optimal path.Zhu [13] used the virtual ants to predict the potential collision with the moving obstacles.The local motions planning for avoiding collisions were scheduled under the ACO, which can plan optimal path rapidly in cluttered environment.These algorithms solve only the problem with certain aspects, but they are not very comprehensive consideration.Some algorithms do not consider the operating efficiency, or the probability of finding the optimal path is too low, or the ability of real-time processing is poor.This paper presents a simple and effective dynamic obstacle avoidance strategy.

The Mobile Robot Path Planning Based on the Evolutionary Genetic Algorithm
2.1.Encoding Scheme.In this paper, we set the sequence number for each grid.The basic sequence is from left to right, top to bottom.The upper border is -axis, and the left border is -axis.We use grid method to model the working environment as the paper [14].Minkowski and the principle of expanding obstacles [15] are adopted to divide the work space into a number of grids.In the grid domain, a black grid denotes an obstacle and a white grid denotes free space.Robot path is indicated by the index numbers, which can save memory and express more succinctly compared with the method of coordinate.What is more important is that the genetic operations (such as the selection operator, crossover operator, and mutation operator) are simpler.

Sequencing.
There are disordered destinations in the task of robot in practical work.For example, the robot goes to the kitchen to get a cup and pour water, goes to the living room to take drug, and finally goes to the bedroom.In the workflow, the sequence of robot taking drug and taking the cup is arbitrary.But the sequence of taking cup and pouring is determined.Therefore, the robot must determine the order of each destination according to the work environment firstly.
We propose the sequencing rule to determine the order of each destination.The sequencing rule can be denoted by is the fitness value of the disordered destination   . num is the number of barrier grids in the rectangle which diagonal is the line segment from the former destination (or starting point) to the destination   . pre is the length from the destination   to the former destination (or starting point). next is the length from the destination   to the next destination (or goal point). num ,  pre , and  next are the weight coefficients, and  num + pre + next = 1.In considering the population diversity and the efficiency of finding the optimal path, through repeated testing, the best combination of weight coefficients is obtained ( num = 0.6,  pre = 0.2, and  next = 0.2).If the value of   is smaller,   has the higher priority.Robot determines the destination sequence based on this standard.Within each branching process, execute genetic operation, find the optimal path, and then get the optimal path in the static environment.

Initialization of Population.
A good initial population in the feasible region is very effective to enhance the speed of evolution.We present the law of attractive destination.According to the relative position of the starting point and destination in each branching process, we adopt different strategy to generate the set of feasible paths.We categorize the relative positions of the starting point and its associated destination into four types as shown in Figure 1. Figure 1(a) represents that the destination is in the first quadrant of the starting point.Figure 1(b) represents that the destination is in the second quadrant of the starting point.Figure 1(c) represents that the destination is in the third quadrant of the starting point.Figure 1(d) represents that the destination is in the fourth quadrant of the starting point. represents the robot and  represents the direction of destination.When the robot chooses the next grid to move, we give priority to the grid marked with "1," which is closer to the destination in the region whose diagonal is a line segment from the starting point to the destination.If the grids marked with "1" are not in the feasible region of robot, we consider the grids marked with "2."If the grids marked with "2" are also not in the feasible region of robot, we consider the grids marked with "3."At the same time, the fallback phenomenon appears.We will set the current grid as the barrier grid to enhance the speed of population initialization and avoid the circuitous path effectively.When the starting point and destination are in the same horizontal or vertical line, we use the method in Figure 1(a).Looking for the next grid, the same horizontal (or vertical) coordinate is expanded 3 units from the left and right, respectively, and forms the search rectangle.
If the robot selects the next grid all in accordance with the law of attractive destination in the process of initial population, it is easy to fall into the local optimal.Therefore, when the number of walking steps is an integer multiple of 3, the robot selects the next walking grid randomly in the feasible region, which can increase the diversity of population.After the initialization, we simplify the individuals.We will delete the path between the repeated grids, which can improve the quality of initial population.For example, the original individual is (0, 1,11,13,22,32,34,23,24,34,45,56,66,77,87,88,99); the individual is (0, 1, 11, 13, 22, 32, 34, 45, 56, 66, 77, 87, 88, 99) after being simplified.

Fitness Function.
In the process of walking, the path length and energy consumption are the two important considered factors.The energy consumption is mainly correlated with the number of turns [16].According to the above analysis, we adopt the fitness function as follows: where  is the number of all grids in the path, 1/ √ 1 +  is a correction item,  is the length of path, and curve is the total number of turns.  and   are the weights, and   +   = 1.According to the requirement about these three standards, the weight coefficient is customized.This paper sets   = 0.8,   = 0.2.We define the path length by Euclidean distance, so the length of an edge with the points   (  ,   ) and  +1 ( +1 ,  +1 ) is given as follows:

Selection Method.
The main principle of the selection method is that the best genes on the chromosome should be survived and transferred to next generation.So we use the roulette wheel method to choose the next generation population, which is good at protecting the better individuals.The better path has the higher probability to be selected as the next generation.

Crossover Operator and Mutation
Operator.In this paper, we adopt a new improved adaptive genetic algorithm, which changes the crossover probability and mutation probability adaptively, according to the population and the distribution of fitness values.Change curves of the crossover probability and mutation probability are from the oscillation to stability gradually.In the early evolution, it can generate the larger cross probability and mutation probability, which can enhance the search ability.In the later evolution, we take a relatively low crossover probability and mutation probability to make the best individual preserved, which can weaken the bad influences caused by the too larger crossover probability and mutation probability that are generated because of the fitness close to the average fitness values or maximum fitness values.At the same time it also overcomes the evolutionary stagnate and the problem of the local optimum.SAGA is expressed as follows: where   and   represent the mutation probability value and mutation probability value, respectively,  max represents the maximum fitness value in the population,  avg represents the average fitness value in the population,   represents the larger values between the two crossed individuals,  1 and  2 are the maximum and minimum crossover probability values, respectively, and  1 and  2 are the maximum and minimum mutation probability values, respectively.The singlepoint crossover is adopted in the adjacent chromosomes.The point which can make the path owing the maximum fitness value is the mutation point in the mutation points set.
2.6.The Cultural Algorithm.The main idea of the cultural algorithm is that individuals in the population space have individual experience during the evolutionary process, and the individual experience will influence the belief space through Accept( ) function.In belief space, after the formation of the group experience, the behavior of individuals in the population space will be modified by Influence( ) function, in order to enable individuals to achieve higher evolutionary efficiency [17].The basic framework of cultural algorithm is as shown in Figure 2.
In the population space, the algorithm mainly completes the selection, crossover, and mutation operations.The concepts of reducing turns by parallelogram and reducing length by triangle are adopted by the belief space.
Through reducing turns by parallelogram [18], we can reduce energy consumption in the robot walking and enhance the path fitness value, as shown in Figures 3 and 4. We select three consecutive break points.If line 1 from the first break point to the node which is in front of the first break point is parallel to line 2 from the second break point to the third break point, we make the three break points as the three points of a parallelogram.Then we add an extra edge to draw a complete parallelogram based on the three points.If the extra edge does not contain any barrier grid, we remove the original path of the parallelogram, join the extra edge, and form a new path.That will reduce the three break points to two or one.
As we all know, the hypotenuse is the shortest in the right angled triangle.We propose a right angled triangle optimization strategy using this theorem.The length of the path after optimization is shorter than the original.The central idea of the strategy is to find a right angle and two angled sides.Intuitively, this is to draw the hypotenuse as long as possible while it is feasible.The effect drawings are as shown in Figures 5 and 6.The whole flow chart is as shown in Figure 7.
In order to improve the convergence speed, we adopt the population replacement strategy from literature [17].Replacement rate is  (0 <  < 1).The offspring may destroy the excellent parent individuals, after the selection, crossover, mutation operation, and optimization in the belief space.Therefore, keeping the excellent parent individuals can accelerate the convergence speed of the algorithm.Offspring individuals with poorer fitness are replaced by the parent individuals with better fitness.In order to improve convergence speed and the global searching capability of the algorithm, we set  from 0.3 to 0.6, as in the literature.

Routing Optimization Based on the Evolutionary Genetic Algorithm in the Static Environment
To deal with the multiple destinations after the orders being determined, we take the following activities within each branching process.(1) Generate the high quality initial population, in the feasible region.
(2) Put forward the appropriate The general steps for solving the routing optimization problem by cultural-genetic algorithm are as follows.
The steps in the population space are as follows.
(1) Grid method is used to model the working environment.The sequencing rule is used to determine the order of each destination.Set the number of destinations goal num = 1.Otherwise, continue to optimize the operation.( 9) Set iteration  =  + 1 and go to step (3).(10) If it arrives at the final destination, the robot's final optimal individual is spliced by the best individual of shunt process.Otherwise, set iteration goal num = goal num + 1 and go to step (2).
The steps in the belief space are as follows.
In the belief space, we use the concept of reducing turns by parallelogram and reducing length by triangle to improve the quality of population.The strategy of population replacement is used to get the new parent population.Then, we pass the new parent populations to the population space.

Dynamic Path Planning
In a dynamic environment, the position of dynamic obstacle changes with time.In order to simplify complexity, we make the following assumptions.
(1) Simulate the size of a dynamic obstacle as a grid.Dynamic obstacle walks integral multiple of grids in a unit time.Break points of path i: curve_num, counter: New path replace the line from c i − to c i + Recalculate the break point: curve_num, c i = c i − 2 (2) The movement of the dynamic obstacles is in uniform linear motion and speed is not known.
(3) The robot can detect the movements of obstacles in the domain while walking.
The robot walks along the optimal path of static environment, which has been discussed in last section.The speed and the direction of the robot are  dir and  V .Visual domain radius is  unit grid.Through the simulation of virtual collision, we can predict the collision point and the speed of dynamic obstacle ( V ) and the direction of dynamic obstacle ( dir ).Therefore, we can choose different obstacle avoidance rules for obstacle avoidance.
We divide the collision into three types: (1) side collision: when the robot and dynamic obstacle have collision, their direction of motion is not in a straight line, (2) collision after turning: When the robot and dynamic obstacle have collision, their direction of motion is in a straight line, but the moving direction of robot last step and the moving direction of dynamic obstacle are not in a straight line, and (3) other collisions.
Different strategies have been applied for different collision types under specific conditions as shown in Table 1.

Simulation Environment and Parameter Settings.
All parameters are shown in Table 2.

Simulation Results in Static Environment.
In order to study the efficiency of the algorithm, we set one destination in the work environment firstly, as shown in Figure 3.

Adaptive mutation operator
Initialize the belief space

Reducing length by triangle
Compare with the optimal, if better, replace

Generate new population
Reach the max iteration?
Arrive at the final destination?The 0 and 99 are the starting point and the destination point, respectively.We make the comparison with three algorithms: the evolutionary genetic algorithm (EGA), the BMFGA, and the SAGA.The three algorithms are all run 50 times, where the success probability and average fitness of the three algorithms are compared.The results are shown in Figure 9 and Table 3.
Randomly select one result from the 50 running times; the optimal fitness convergence results are shown in Figure 10.From the figures, we can conclude that the EGA has better convergence than others.
What can we see from the experimental results is that EGA has the biggest probability of searching the optimal path, with fastest convergence speed.From the above results, EGA has higher success rate, and the convergence speed is also fast in the static environment, which has only one destination.
The working environment with disordered and multiple destinations is shown Figure 11, where  and  are the starting point and final destination, respectively, 1 and 2 are disordered destinations, and 3, 4, and 5 are destinations of determined sequence.According to (1), we can determine the running order, which is (, 1, 2, 3, 4, 5, and ).By using this algorithm, we get the optimal path as shown in Figure 11.

Simulation Results in Dynamic
Environment.Robot avoids dynamic obstacles in the dynamic environment as shown in Figure 12.The robot walks along the optimal path, Table 1: Collision avoidance strategy.

Side collision
Waiting strategy: the robot waits for unit time in the current position, which can avoid the collision with dynamic obstacles.

Collision after turning
Rollback strategy: because the motion direction of the robot on the last step is not on the same line with the dynamic obstacle, the robot just needs back up one step, which can avoid collision.

Other collisions
Hiding in the nearby: the robot finds a point as the collision avoidance point in the vicinity of the current location.After avoiding dynamic obstacles successfully, it goes back to the current position.which is shown in Figure 11.When the robot walks to the grid 60, it detects a dynamic obstacle in the grid 60.Through virtual collision, we get that the collision point is grid 81, and the type is side collision.According to Table 1, we choose the waiting strategy.The robot avoids collision successfully for the first time.The robot continues moving along the original path.When the robot walks to the grid 207, it detects a dynamic in the grid 201.Through virtual collision, we get that the collision point is grid 81, and the type is collision after turning.According to Table 1, we choose the rollback strategy first and then choose the waiting strategy.The robot avoids collision successfully for the second time.When moving to the grid 257, the robot detects a dynamic obstacle in the grid 297.Through virtual collision, we get that the collision point is grid 277, and the type is other collisions.According to Table 1, we choose the strategy of hiding in the nearby.The robot avoids collision successfully for the third time.The robot arrives at the final destination, as shown in Figure 12.We can see from the experimental results that the collision avoidance strategy is simple and effective.

Conclusion
Aiming at the working environment with disordered and multiple destinations in the smart home, we determine the order of destinations by the sequencing rule.Then the initial feasible path set is generated according to the law of attractive destination.We use adaptive genetic algorithm to optimize the population.The work above focuses on exploring the population space of cultural-genetic algorithm.We introduce the concept of reducing turns by parallelogram and reducing length by triangle in the belief space, which can improve the quality of population and accelerate the convergence speed.Static simulation results show that the EGA can search the optimal path quickly and accurately; it can solve the problems of local optimal and early maturing.Obstacle avoidance method in this paper is simple, efficient, and safe.

Figure 1 :
Figure 1: Schematic diagram of direction selection priority.

( 2 )
Initialize the algorithm.Generate the feasible path of robot path which is the initial population in shunt process by the law of attractive destination.Set the current experiment iterations  = 1.(3) According to the fitness function, calculate fitness of each individual in the population; then the roulette wheel selection is used to produce the new population.(4) To get new chromosomes, we use the single-point crossover in the adjacent chromosomes.(5) To produces new individuals, mutation operation is performed on the part of the individuals.(6) According to the Accept( ) function, the new population is passed to the belief space.(7) According to the function of Influence( ) in the belief space, we get the parent population for new generation.(8) If the termination condition is satisfied, output the best individual of shunt process and go to step (10).

Figure 7 :
Figure 7: Flow chart of right angled triangle optimization strategy.

Figure 8 :
Figure 8: Flow chart of improved genetic algorithm.

Figure 9 :Figure 10 :
Figure 9: Convergence curves about the optimal fitness running 50 times.

Figure 11 :
Figure 11: Ptimal path in the disordered and multiple destinations.

Figure 12 :
Figure 12: Arrival at the final destination.