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

Authors: Yong-feng Dong; Hong-mei Xia; Yan-cong Zhou
Journal: Journal of Electrical and Computer Engineering
 (2016)

---

## Abstract

In the smart home environment, aiming at the disordered and multiple destinations path planning, the sequencing rule is proposed to determine the order of destinations. Within each branching process, the initial feasible path set is generated according to the law of attractive destination. A sinusoidal adaptive genetic algorithm is adopted. It can calculate the crossover probability and mutation probability adaptively changing with environment at any time. According to the cultural-genetic algorithm, it introduces the concept of reducing turns by parallelogram and reducing length by triangle in the belief space, which can improve the quality of population. And the fallback strategy can help to jump out of the “U” trap effectively. The algorithm analyses the virtual collision in dynamic environment with obstacles. According to the different collision types, different strategies are executed to avoid obstacles. The experimental results show that cultural-genetic algorithm can overcome the problems of premature and convergence of original algorithm effectively. It can avoid getting into the local optimum. And it is more effective for mobile robot path planning. Even in complex environment with static and dynamic obstacles, it can avoid collision safely and plan an optimal path rapidly at the same time.


---

## Body

## 1. 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 U-shaped 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.


## 2. 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 isx-axis, and the left border is y-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.


### 2.2. 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(1)Ci=Onum∗wnum+Lpre∗wpre+Lnext∗wnext.C
i is the fitness value of the disordered destination Di. Onum 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 Di. Lpre is the length from the destination Di to the former destination (or starting point). Lnext is the length from the destination Di to the next destination (or goal point). wnum, wpre, and wnext are the weight coefficients, and wnum+wpre+wnext=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 (wnum=0.6, wpre=0.2, and wnext=0.2). If the value of Ci is smaller, Di 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.


### 2.3. 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 Figure1. 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. R represents the robot and D 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.Figure 1
Schematic diagram of direction selection priority.
(a)
(b)
(c)
(d)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.


### 2.4. 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:(2)F=1001+1/1+n×D×wd+curve×wc,where n is the number of all grids in the path, 1/1+n is a correction item, D is the length of path, and curve is the total number of turns. wd and wc are the weights, and wd+wc=1. According to the requirement about these three standards, the weight coefficient is customized. This paper sets wd=0.8, wc=0.2. We define the path length by Euclidean distance, so the length of an edge with the points pi(xi,yi) and pi+1(xi+1,yi+1) is given as follows: d=xi+1-xi2+yi+1-yi2. So the total length is D=∑i=1n-1xi+1-xi2+yi+1-yi2.


### 2.5. Design of Genetic Operator

#### 2.5.1. 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.


#### 2.5.2. 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:(3)pc=pc1+pc22+pc1-pc22∗sin⁡f′-favgfmax-favg∗π2f′≥fmaxpc1f′<favgpm=pm1+pm22+pm1-pm22∗sin⁡f′-favgfmax-favgπ2f′≥fmaxpm1f′>favg,where pc and pm represent the mutation probability value and mutation probability value, respectively, fmax represents the maximum fitness value in the population, favg represents the average fitness value in the population, f′ represents the larger values between the two crossed individuals, pc1 and pc2 are the maximum and minimum crossover probability values, respectively, and pm1 and pm2 are the maximum and minimum mutation probability values, respectively. The single-point 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 throughAccept() 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.Figure 2
Basic framework of cultural algorithm.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.Figure 3
Original path diagram.Figure 4
Path diagram after reducing the break points.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 Figures5 and 6. The whole flow chart is as shown in Figure 7.Figure 5
Original path diagram.Figure 6
Path diagram after optimization.Figure 7
Flow chart of right angled triangle optimization strategy.In order to improve the convergence speed, we adopt the population replacement strategy from literature [17]. Replacement rate is p(0<p<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 p from 0.3 to 0.6, as in the literature.


## 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 isx-axis, and the left border is y-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.


## 2.2. 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(1)Ci=Onum∗wnum+Lpre∗wpre+Lnext∗wnext.C
i is the fitness value of the disordered destination Di. Onum 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 Di. Lpre is the length from the destination Di to the former destination (or starting point). Lnext is the length from the destination Di to the next destination (or goal point). wnum, wpre, and wnext are the weight coefficients, and wnum+wpre+wnext=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 (wnum=0.6, wpre=0.2, and wnext=0.2). If the value of Ci is smaller, Di 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.


## 2.3. 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 Figure1. 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. R represents the robot and D 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.Figure 1
Schematic diagram of direction selection priority.
(a)
(b)
(c)
(d)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.


## 2.4. 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:(2)F=1001+1/1+n×D×wd+curve×wc,where n is the number of all grids in the path, 1/1+n is a correction item, D is the length of path, and curve is the total number of turns. wd and wc are the weights, and wd+wc=1. According to the requirement about these three standards, the weight coefficient is customized. This paper sets wd=0.8, wc=0.2. We define the path length by Euclidean distance, so the length of an edge with the points pi(xi,yi) and pi+1(xi+1,yi+1) is given as follows: d=xi+1-xi2+yi+1-yi2. So the total length is D=∑i=1n-1xi+1-xi2+yi+1-yi2.


## 2.5. Design of Genetic Operator

### 2.5.1. 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.


### 2.5.2. 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:(3)pc=pc1+pc22+pc1-pc22∗sin⁡f′-favgfmax-favg∗π2f′≥fmaxpc1f′<favgpm=pm1+pm22+pm1-pm22∗sin⁡f′-favgfmax-favgπ2f′≥fmaxpm1f′>favg,where pc and pm represent the mutation probability value and mutation probability value, respectively, fmax represents the maximum fitness value in the population, favg represents the average fitness value in the population, f′ represents the larger values between the two crossed individuals, pc1 and pc2 are the maximum and minimum crossover probability values, respectively, and pm1 and pm2 are the maximum and minimum mutation probability values, respectively. The single-point 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.5.1. 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.


## 2.5.2. 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:(3)pc=pc1+pc22+pc1-pc22∗sin⁡f′-favgfmax-favg∗π2f′≥fmaxpc1f′<favgpm=pm1+pm22+pm1-pm22∗sin⁡f′-favgfmax-favgπ2f′≥fmaxpm1f′>favg,where pc and pm represent the mutation probability value and mutation probability value, respectively, fmax represents the maximum fitness value in the population, favg represents the average fitness value in the population, f′ represents the larger values between the two crossed individuals, pc1 and pc2 are the maximum and minimum crossover probability values, respectively, and pm1 and pm2 are the maximum and minimum mutation probability values, respectively. The single-point 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 throughAccept() 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.Figure 2
Basic framework of cultural algorithm.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.Figure 3
Original path diagram.Figure 4
Path diagram after reducing the break points.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 Figures5 and 6. The whole flow chart is as shown in Figure 7.Figure 5
Original path diagram.Figure 6
Path diagram after optimization.Figure 7
Flow chart of right angled triangle optimization strategy.In order to improve the convergence speed, we adopt the population replacement strategy from literature [17]. Replacement rate is p(0<p<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 p from 0.3 to 0.6, as in the literature.


## 3. 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 fitness function. (3) Adopt adaptive genetic algorithm and get different crossover probability and mutation probability for different population. (4) Enhance the quality of path by reducing turns by parallelogram and reducing length by triangle in the belief space. The whole algorithm flow chart is as shown in Figure 8.Figure 8
Flow chart of improved genetic algorithm.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 destinationsgoal_num=1.(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 iterationst=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 theAccept() function, the new population is passed to the belief space.(7)
According to the function ofInfluence() 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). Otherwise, continue to optimize the operation.(9)
Set iterationt=t+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 iterationgoal_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.


## 4. 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.(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 areRdir and Rv. Visual domain radius is r unit grid. Through the simulation of virtual collision, we can predict the collision point and the speed of dynamic obstacle (Dv) and the direction of dynamic obstacle (Ddir). 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 Table1.Table 1
Collision avoidance strategy.
Type of collision
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.


## 5. Simulation

### 5.1. Simulation Environment and Parameter Settings

All parameters are shown in Table2.Table 2
Parameters.
Population size
Number of iterations
P
c
1
P
c
2
P
m
1
P
m
2
p
150
150
0.75
0.25
0.2
0.01
0.3


### 5.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 Figure3. 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 Figure9 and Table 3.Table 3
Performance comparison.
Planning algorithm
Average fitness
Optimal fitness
The percentage of the optimal path
EGA
6.1634
6.1843
95%
BMFGA
5.9974
6.1843
12%
SAGA
5.9880
6.1843
18%Figure 9
Convergence curves about the optimal fitness running 50 times.Randomly select one result from the 50 running times; the optimal fitness convergence results are shown in Figure10. From the figures, we can conclude that the EGA has better convergence than others.Figure 10
Convergence curves about the optimal fitness.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 Figure11, where S and G are the starting point and final destination, respectively, D1 and D2 are disordered destinations, and D3, D4, and D5 are destinations of determined sequence. According to (1), we can determine the running order, which is (S,D1,D2,D3,D4,D5,andG). By using this algorithm, we get the optimal path as shown in Figure 11.Figure 11
Ptimal path in the disordered and multiple destinations.


### 5.3. Simulation Results in Dynamic Environment

Robot avoids dynamic obstacles in the dynamic environment as shown in Figure12. The robot walks along the optimal path, 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.Figure 12
Arrival at the final destination.


## 5.1. Simulation Environment and Parameter Settings

All parameters are shown in Table2.Table 2
Parameters.
Population size
Number of iterations
P
c
1
P
c
2
P
m
1
P
m
2
p
150
150
0.75
0.25
0.2
0.01
0.3


## 5.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 Figure3. 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 Figure9 and Table 3.Table 3
Performance comparison.
Planning algorithm
Average fitness
Optimal fitness
The percentage of the optimal path
EGA
6.1634
6.1843
95%
BMFGA
5.9974
6.1843
12%
SAGA
5.9880
6.1843
18%Figure 9
Convergence curves about the optimal fitness running 50 times.Randomly select one result from the 50 running times; the optimal fitness convergence results are shown in Figure10. From the figures, we can conclude that the EGA has better convergence than others.Figure 10
Convergence curves about the optimal fitness.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 Figure11, where S and G are the starting point and final destination, respectively, D1 and D2 are disordered destinations, and D3, D4, and D5 are destinations of determined sequence. According to (1), we can determine the running order, which is (S,D1,D2,D3,D4,D5,andG). By using this algorithm, we get the optimal path as shown in Figure 11.Figure 11
Ptimal path in the disordered and multiple destinations.


## 5.3. Simulation Results in Dynamic Environment

Robot avoids dynamic obstacles in the dynamic environment as shown in Figure12. The robot walks along the optimal path, 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.Figure 12
Arrival at the final destination.


## 6. 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.



---

*Source: 3620895-2016-06-01.xml*