Next Article in Journal
The Effect of Low Positive Temperatures on the Formation of Secondary Metabolites in Rhodiola quadrifida (Pall.) Fisch. et C.A. Mey. In Vitro Cultures
Previous Article in Journal
Encapsulation of Formosa Papaya (Carica papaya L.) Seed Extract: Physicochemical Characteristics of Particles, and Study of Stability and Release of Encapsulated Phenolic Compounds
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Path Planning of Mobile Robots Based on an Improved Particle Swarm Optimization Algorithm

Key Laboratory of Advanced Manufacturing Technology of the Ministry of Education, Guizhou University, Guiyang 550025, China
*
Author to whom correspondence should be addressed.
Processes 2023, 11(1), 26; https://doi.org/10.3390/pr11010026
Submission received: 14 November 2022 / Revised: 17 December 2022 / Accepted: 19 December 2022 / Published: 23 December 2022
(This article belongs to the Topic Modern Technologies and Manufacturing Systems, 2nd Volume)

Abstract

:
Aiming at disadvantages of particle swarm optimization in the path planning of mobile robots, such as low convergence accuracy and easy maturity, this paper proposes an improved particle swarm optimization algorithm based on differential evolution. First, the concept of corporate governance is introduced, adding adaptive adjustment weights and acceleration coefficients to improve the traditional particle swarm optimization and increase the algorithm convergence speed. Then, in order to improve the performance of the differential evolution algorithm, the size of the mutation is controlled by adding adaptive parameters. Moreover, a “high-intensity training” mode is developed to use the improved differential evolution algorithm to intensively train the global optimal position of the particle swarm optimization, which can improve the search precision of the algorithm. Finally, the mathematical model for robot path planning is devised as a two-objective optimization with two indices, i.e., the path length and the degree of danger to optimize the path planning. The proposed algorithm is applied to different experiments for path planning simulation tests. The results demonstrate the feasibility and effectiveness of it in solving a mobile robot path-planning problem.

1. Introduction

Path planning is one of the important research directions in mobile robot technology. The path planning of a mobile robot refers to planning a collision-free path that meets certain conditions (usually the optimal) in a static or dynamic environment to reach a target point [1,2]. People can apply good path planning technology for mobile robots to robots to explore harsh environments that humans cannot reach [3], replace humans in high-risk rescues such as fire rescue [4], help visually impaired people with path guidance, and provide reliability for delicate surgery [5]. It can also be applied by people to the field of intelligent warehousing, improving material transportation efficiency and reducing manpower and material resources, which is a very meaningful research topic [6].
The traditional particle swarm optimization (PSO) was proposed by Kennedy in 1995 to search the global optimal value of objective function by imitating the foraging behavior of birds. It has the characteristics of simple structure, easy implementation, and wide application [7]. Its improved algorithms are widely used in path planning [8,9]. However, the PSO algorithm has shortcomings such as slow convergence speed, and it is easy to fall into local optimum.
This paper proposed an improved particle swarm optimization based on differential evolution (IPSO-IDE) for path planning in mobile robots. The IPSO-IDE is based on optimized differential evolution (IDE) and enhanced with improved particle swarm optimization (IPSO) to solve the limitations of the traditional particle swarm optimization. The main contributions of the text are as follows:
(1) The improved IPSO algorithm combines improved inertia weight ω*, adaptive parameter β, and the concept of corporate governance to improve the traditional particle swarm optimization and increase the algorithm convergence speed.
(2) Aiming at the shortcomings of the traditional DE algorithm, the scaling factor F and the cross-probability factor CR are adaptively optimized, so that the algorithm can adaptively control the search accuracy and the degree of mutation to improve the optimization accuracy of the algorithm.
(3) It proposes a new objective function applied to path planning, which is composed of a path length function and a penalty function, simplifying the path planning problem of mobile robots into an objective function optimization problem.
The remainder of this paper is arranged as follows. Section 2 describes a bibliographic review of related work that includes classical heuristic algorithms and provides the application of improved algorithms in path planning problem. Section 3 describes principles of PSO and DE. Section 4 describes the proposed improved particle swarm optimization based on differential evolution (IPSO-IDE). Section 5 describes its application to the path-planning problem and introduces experiments and result analysis. In the last section, conclusions are drawn.

2. Related Work

The path-planning algorithm of mobile robots has been deeply studied at home and abroad, and the results are remarkable. Traditional path planning algorithms mainly include artificial potential field method [10], element decomposition method [11], graph search algorithm [12], etc., but when the obstacles are complex, there are many disadvantages, such as a large amount of calculation, easy to fall into local optimum, and the obtained path is not smooth, easy to appear sharp points, which is not in line with the actual situation, increasing the workload of mobile robots [13,14]. At present, many experts use heuristic algorithms to optimize path planning [15], including genetic algorithm (GA) [16], particle swarm optimization (PSO) [17], artificial bee colony algorithm (ABC) [18], grey wolf algorithm (GWO) [19], ant colony algorithm (ACO) [20], differential evolution algorithm (DE) [21], etc., and obtain good results.
GA is an intelligent bionic algorithm proposed earlier, which is the theoretical basis of many algorithms. It simulates the calculation model of Darwinian biological evolution theory, mainly including the steps of establishing the initial population, calculating the individual fitness of the population, and iterating out the optimal individual through cross-mutation and other operations [22]. Since the mutation operation of GA is not targeted, the probability of forming a better offspring population is not high. As a classical algorithm, GA is often mixed with heuristic algorithms to solve problems, such as ant colony algorithm (ACO). Kamel et al. combined PSO and GA to improve the prediction performance of the model [23]. Memon et al. proposed a hybrid optimization algorithm based on GA and APSO [24]. However, the improved GA is still inefficient in solving the problem [25].
Among the heuristic algorithms, PSO and DE are simpler in structure and easier to implement, so they are widely used [26]. The improvement of PSO generally focuses on the adjustment of population structure and the optimization of update formulas of speed and position [27]. Burman R et al. proposed the democracy-inspired particle swarm optimizer with the concept of peer groups to increase the speed of convergence [28]. Zhao et al., in order to avoid falling into local optimal solutions and increase the diversity of particles, introduced a nonlinear recursive function to adjust the inertia weight [29]. Yu et al. proposed a novel hybrid particle swarm optimization (PSO) algorithm, namely SDPSO [30]. Pozna et al. proposed a hybrid metaheuristic optimization algorithm that combines Particle Filter (PF) and Particle Swarm Optimization (PSO) algorithms [31]. Mohammed Hussein et al. proposed a modified Particle Swarm Optimization (PSO), which is named MPSO [25]. Liu et al. proposed a hybrid path planning algorithm based on optimized reinforcement learning (RL) and improved particle swarm optimization (PSO) [32]. However, the improved algorithm still has some limitations, such as low convergence accuracy, easy precocity, and so on.
The differential evolution algorithm (DE) was proposed by R. Storn et al. in 1997. It inherits the evolutionary ideas of genetic algorithms and is more concise and effective. Due to its outstanding optimization effect, it is widely developed and used by experts. The DE is also used to optimize other algorithms to achieve a more ideal effect of optimization [33]. R. Chai et al. used the theory of game theory to optimize the DE algorithm, combined with adaptive parameter adjustment to improve the convergence accuracy [34]. Lin C et al. introduced the concept of grouping into the DE to improve its local search ability [35]. Wang et al. proposed a distributed differential evolution (DDE) algorithm, which is called AED-DDE, for solving MMOPs [36]. Liu et al. proposed a hybrid DE algorithm based on the lion swarm optimization [37]. Xu M and Wang Y proposed a time series prediction study based on improved differential evolution and echo state network to optimize the echo state network [38].
In general, in view of the shortcomings of PSO, this paper makes the following improvements to PSO: introducing the concept of corporate governance, adding a leader particle to lead the population to the optimal position. In addition, to strengthen the convergence speed of the algorithm, the paper introduces the new update formulas of speed and position by proposing a kind of adaptive operator and introducing the adaptive parameters that can control the size of the degree of mutation to improve the DE. The improved DE algorithm is used to optimize the PSO model and improve the defect that PSO is easy to fall into local optimum. Finally, the improved algorithm is applied to solve the problem of path planning. The objective function is constructed in this paper to optimize the path planning, which is composed of path length function and penalty function, and the cubic spline interpolation method is used to smooth the path. The proposed algorithm can effectively improve the path planning ability of mobile robots in static and complex environment models, improve planning efficiency, and generate a collision-free path with the shortest path length to the target point.

3. Principles of PSO and DE

This section may be divided by subheadings. It should provide a concise and precise description of the experimental results, their interpretation, as well as the experimental conclusions that can be drawn. This section introduces the traditional particle swarm optimization (PSO) [17] and differential evolution algorithm (DE) [21], which form the basis of the proposed algorithm.

3.1. Particle Swarm Optimization (PSO)

In the target search space of dimension D, the number of particles in the population is set to N. The ith (i = 1, 2, …, N) particle contains two attributes, namely position Xi = (xi1, xi2, …, xiD) and velocity Vi = (vi1, vi2, …, viD), and the individual optimal position experienced is Pi = (pi1, pi2, …, piD). The global optimal position obtained after judging the entire particle swarm G = (g1, g2, …, gD). The update of velocity and position can be expressed as the following mathematical formulas:
V i t + 1 = ω V i t + c 1 r 1 ( P i t X i t ) + c 2 r 2 ( G t X i t )
X i t + 1 = X i t + V i t + 1 , i = 1 , , N
where ω represents the inertia weight to suppress the inertial speed of the previous iteration, which enables the algorithm to adaptively adjust the inertial speed during the iteration process. As the number of iterations increases, ω decreases accordingly, which makes the algorithm have a larger search speed at the early stages of iterations to improve the ability of search and ensure the efficiency of operation. Then, at the later stages of iterations, the search speed is decreased to improve the accuracy of search. The specific formula is as follows:
ω = ω max ( ω max ω min ) t T
where ωmax and ωmin represent the maximum and minimum values of ω, t is the number of iterations, and T is the maximum number of iterations.
In addition, r1 and r2 are random numbers in the range of [0,1], the purpose is to increase search range of the algorithm. c1 and c2 are learning factors, which are values greater than or equal to zero, where c1 represents the cognition factor, which refers to the cognition of each particle to control the influence of ith particle in the local range. c2 represents the social factor, which refers to the influence ability of social level to control the influence of the optimal particle in the particle swarm on the entire area. The two learning factors work together to promote the particles to continuously move closer to the optimal position.
P i t is the individual optimal position of the ith particle in iteration t, G i t is the global optimal position of the particle swarm in iteration t. The individual optimal position and the global optimal position can be expressed as the following mathematical formulas:
P i t + 1 = { P i t ,                     i f             F i t ( X i t + 1 ) > F i t ( P i t ) X i t + 1 ,                   i f                 F i t ( X i t + 1 ) < F i t ( P i t )  
G i t = min { F i t ( P 1 t ) ,   F i t ( P 2 t ) ,   ,   F i t ( P N t ) }

3.2. Differential Evolution Algorithm (DE)

The principle of DE algorithm is similar to that of GA [16]. It also includes three operations: “mutation”, “crossover” and “selection”, but there are differences in mutation and crossover operations. Among them, GA adheres to the principle of “survival of the fittest” and directly compares the parents and offspring to select the individuals with higher fitness, while the DE algorithm introduces difference vector to mutate, which has better structure and higher efficiency.
The specific implementation steps of DE are as follows:
  • Establish the initial population and initialize the parameters:
Randomly generate N individuals uniformly in the solution space {xj_min, xj_max}, j = 1, 2, 3, …, D. The individual is the candidate solution vector. The dimension is set to D. The expression of the ith candidate solution vector of the initial population is as follows:
X i ( 0 ) = ( x i 1 ( 0 ) , x i 2 ( 0 ) , , x i D ( 0 ) ) ,       i     =       1 ,       2 ,       ,     N
The numerical initialization formula for the ith individual in dimension j is as follows:
x i j ( 0 ) = x j _ min + r a n d ( 0 , 1 ) ( x j _ max x j _ min )  
2.
Mutation operation:
The DE algorithm randomly selects individuals for differential mutation based on the parent individuals xi(t), i = 1, 2, …, M. The mutation strategy is as follows:
h i ( t ) = x p 1 ( t ) + F ( x p 2 ( t ) x p 3 ( t ) )
where hi(t) is the generated variation vector, xp1(t), xp2(t), xp3(t) are solution vectors numbered p1, p2, p3 of the population in iteration t, the numbers are randomly selected and are different from i. F is the scaling factor to appropriately scale the difference vector, and the value range is generally controlled at (0, 1.2].
3.
Cross operation:
The parent vector xi(t), i = 1, 2, ..., M (M represents the dimension of the parent vector) crosses the mutation vector hi(t) with the crossover probability CR to generate a new individual vector that is the test vector vij(t), and the test vector in dimension j (j = 1, 2, ..., D) is selected from the parent and the mutation vector according to CR; the formula is as follows:
v i j ( t + 1 ) = { h i j ( t ) ,                   i f         r a n d C R           o r         j = j r a n d x i j ( t ) ,                   e l s e                                                                                                                                                                  
where rand is a uniform random number in the range of [0,1]. CR is crossover probability factor, CR ∈ [0,1]. jrand is a random positive integer in the range of [0,1], so that at least one component is produced by the mutation vector, thereby ensuring that a new vector is generated.
4.
Select operation.
The vector generated after cross mutation operation vi(t + 1) is compared with the parent vector xi(t), and the vector with better fitness value (fit(u)) is retained. The formula is as follows:
x i ( t + 1 ) = { v i ( t + 1 )     ,       i f         f i t ( v i ( t + 1 )   ) f i t ( x i ( t )     ) v i ( t )                             ,     e l s e

4. Algorithm Improvement

4.1. Improved Particle Swarm Optimization Based on Corporate Governance Idea (IPSO)

The traditional PSO [17] contains the idea of leadership: an optimal particle is selected from the particle swarm, representing the global optimal solution G, which is the only leader to lead the particle swarm to the optimal position. However, the thought of single leadership has its limitations and cannot guarantee that the direction of leader guidance will always be correct, which causes the premature convergence and fall into a local optimum. In response to this problem, this paper adds the idea of corporate governance into the particle swarm optimization and optimizes its parameters.
In economics, the idea of corporate governance [39] means that there are two rights in an enterprise, namely, Ownership and Management rights. Good owners and operators are administrators with strong ability. The owner gives the operator the right to manage a company and lead the company’s employees to develop in a better direction. If the company’s profits are not good under the management of the operator, the owner will come forward to make decisions and deprive the operator of the management right. Two rights check and balance to promote enterprise development. Based on the above concepts, this paper improves the algorithm. The particles temporarily occupying the management position are named as the administrator particle (Adm). The two possible administrator particles, the Operator particle and the Owner particle, are elected through the voting mechanism. The Owner particle does not often come forward to make decisions. It plays a role of supervision and control, checking whether the Operator particle has always led the particle swarm to the optimal position. In addition, based on the corporate culture that a good working atmosphere can improve the work efficiency of employees, and the behavior of employees affects each other, the concept of peer group is proposed. The neighboring particles are regarded as a peer group, and their optimal positions influence each other. The local optimal value (Lbest) is selected in the peer group.
In this paper, the traditional PSO is improved by introducing the concept of corporate governance and adding adaptive parameters and acceleration coefficients. The update of particle positions in two successive iterations can be shown in Figure 1, and the specific update formulas of velocity and position are as follows:
V i t + 1 = ω * V i t + c 1 r 1 ( P i t X i t ) + c 2 r 2 ( Lbes t i t X i t ) + β c 3 r 3 ψ ( Ad m t X i t )
X i t + 1 = X i t + c 4 r 4 V i t + 1
1.
ω * V i t
The first term of (9) is the factor of inertia, which is the product of an adaptive inertia weight the paper proposed ω* and the velocity of the previous iteration t. The adaptive inertia weight ω* is based on the original inertia weight ω, adding a trigonometric function. This is because, after adding the trigonometric function, the step size can be adjusted to increase and the speed can be accelerated to avoid the precocious search and enter the local optimal state, thus improving the accuracy, which is expressed by following formula:
ω * = ω * max ( ω * max ω * min ) sin ( π t 2 T )
where ω*max and ω*min represent the maximum and minimum values of ω.
2.
c 1 r 1 ( P i t X i t )
The second term of (9) calculates the distance between the current position Xit of ith particle iterating to the iteration t and the individual best position of the particle Pit, multiplied by the acceleration factor c1 and the random number r1 ∈ [0, 1].
3.
c 2 r 2 ( L b e s t i t X i t )
The third term of (9) calculates the distance between the current position Xit and the best position of ith particle in the peer ring or peer group area Lbestit when it is iterated to the iteration t, multiplied by the acceleration factor c2 and random number r2 ∈ [0, 1].
4.
β c 3 r 3 ψ ( A d m t X i t )
The fourth term of (9) calculates the distance between the Xit and the global best position of the particle swarm Admt when it is iterated to the iteration t and multiplied by the acceleration factor c3 and the random number r3 ∈ [0, 1]. In addition, in order to better control the influence of Admt on the particle swarm, this paper introduces a trigonometric function and proposes an adaptive parameter β to speed up the algorithm’s convergence speed. The parameter ψ means administrator regulatory factor.
Since the speed of the traditional particle swarm optimization algorithm is fixed when searching on a path, the adaptive parameter β can be adjusted adaptively to accelerate the speed and avoid falling into the local optimal. The formula of β is as follows:
β = β min + ( β max β min ) cos ( π t 2 T )
where βmin and βmax are the maximum and minimum values of β.
Adm is generated based on the concept of voting [40], and particles follow the leader elected by voting. Opvote is the number of votes cast by Operator, and Owvote is the number of votes cast by Owner.
As the iteration progresses, the leadership of the Operator gradually increases, i.e., Opvote increases and Owvote decreases, so that the influence of the Owner weakens and the convergence speed increases. However, if the Operator cannot lead the particles to the optimum, the Owner needs to control the power. In this case, even if the number of Owvote is small, the influence of the Owner must be increased, so the Administrator regulatory factor ψ = e ( 1 vote Adm ) is introduced.
The initial population is randomly generated, so it is necessary to artificially impose a preference first by asymmetric processing of the initial voting range of two candidates of administrator particles. The asymmetric range is controlled within [0, 1] by standardization. Therefore, in the initial iteration, the particles choose the Operator as Adm with a greater probability, and the Owner is their second choice that plays a supervisory role. The initial value of Opvote is set to φ, and Owvote is 1-φ, which makes the number of votes biased, where φ ∈[0, 1].
The voting mechanism is realized by roulette algorithm [16]. Each particle votes to select a leader voteid that is a random number within the range of [0,1]. The selection of Adm can be expressed as follows:
Adm i d = { Operator d ,             i f   vote i d Opvote Owner d ,                       e l s e
The number of votes is accumulated and updated to record the influence of Operator and Owner. The expressions are as follows:
i f             v o t e i d < O p v o t e :                                 O p v o t e = O p v o t e + 1 M N e l s e :           O w v o t e = O w v o t e + 1 M N
where M represents the number of votes that particles cast to the corresponding candidate leader in a given dimension. The cumulative value of support votes is the total number of support votes, which can intuitively indicate which candidate can be elected as the Adm. In order to facilitate further calculations, the voting should be standardized after each iteration. The expressions used for standardization are as follows:
O p v o t e = O p v o t e O p v o t e + O w v o t e ,           O w v o t e = O w v o t e O p v o t e + O w v o t e
i f             O p v o t e = φ :   O w v o t e = 1 φ
voteAdm refers to the standardized number of votes obtained by a specific administrator (Operator or Owner). The factor e ( 1 vote Adm ) is calculated as follows:
Case 1 Adm i d = Operator d , vote Adm = Opvote 1 e ( 1 vote Adm ) e 0 = 1 Case 2 Adm i d = Owner d , vote Adm = Owvote 0 e ( 1 vote Adm ) e 1 2.3
The update formulas of Operator and Owner are as follows:
O w n e r d = { ϕ ( X max X min ) + X min ,         i f     r a n d d < p r o O p e r a t o r d ,                                                             e l s e
O p e r a t o r d = g b e s t d
where the parameters of ϕ and randd are uniform random numbers in the range [0,1], pro = 1/N, d ∈ {1, 2, 3, …, D}. See Algorithm 1 at the end of the article.
5.
The improved mathematical formula of pos.ition update formula
In (10), the particle position Xit+1 in iteration t + 1 is equal to the sum of the historical position Xit and the velocity Vit+1 multiplied by the acceleration factor c4 and the random number r4 ∈ [0, 1].
In addition, since particles search in the solution space at velocity v, if the particle velocity exceeds the range and flies out of the solution space, it affects the algorithm solution. In order to solve the above problem, this paper performs boundary treatment on the velocity vdi, which can quickly absorb the particle whose velocity exceeds the velocity boundary:
i f             v d i > v max : v d i = v max ; i f             v d i < v min : v d i = v min      
where vdi is the component of the vit of generation t in dimension d, and vmin and vmax are the minimum and maximum values of velocity.

4.2. Improved Differential Evolution Algorithm Based on Adaptive Parameters

The DE [21] has a simple structure and fast convergence speed. The algorithm has two main parameters, namely the scaling factor F and the probability factor of cross CR. In the standard DE, these two parameters are fixed values. In order to improve the convergence performance and iterative accuracy of the algorithm, these parameters can be adjusted to adaptive parameters.
  • Adaptive optimization of scaling factor F
F can control the degree of variation. A larger value of F represents a larger degree of mutation, which can expand the search range of the algorithm to be conducive to the overall progress, but it may be premature in the later stage of the iteration. A smaller value of F represents a smaller degree of variation, which is conducive to the local search to improve the search accuracy, but it is easy to fall into the local optimal solution.
Therefore, F is adaptively improved in this paper, and the expression is as follows:
F i = F min + ( F max F min )   f i t ( x p 2 ( t ) ) f i t ( x p 1 ( t ) ) f i t ( x p 3 ( t ) ) f i t ( x p 1 ( t ) )
where Fi represents the scaling factor of the ith vector of the population. fit(xp1(t)), fit(xp2(t)), fit(xp3(t)) represent the fitness values of the vectors xp1, xp2, xp3. Fmin, Fmax are the minimum and maximum values of the scaling factors. If the difference between the fitness values of xp2 and xp3 is too large, it expands the search range of the algorithm, which is not conducive to the improvement of search accuracy, so let the algorithm have a smaller Fi. On the contrary, the two vectors with similar fitness values are easy to fall into the local optimal solution, so Fi is needed to expand to improve the degree of variation.
2.
Adaptive optimization of cross probability factor CR
In order to improve the convergence speed of the algorithm, the crossover probability factor is improved. CR is a factor that affects the degree of crossover between the parent vector and the mutation vector. If CR is too large, the degree of crossover is increased, but it may make the individuals with better fitness suffer from damage due to a too-large mutation degree. If CR is too small, the degree of cross-mutation is not enough, which may fall into local convergence and reduce the search efficiency. This paper proposes to compare the fitness of a specified individual with the average of the population fitness values. If it is smaller than the average, it means that the individual is better, and then its cross-variation is reduced. If it is larger than the average, it means that the individual needs to be further optimized, i.e., to increase its variation degree and to promote the search for the optimal individual. The specific expression is as follows:
C R i = { i f           f i t ( x i ) f i t m e a n :                   C R min + ( C R max C R min ) f i t ( x i ) f i t min f i t max f i t min e l s e : C R min
where CRi is the cross-probability factor corresponding to the ith vector of the population, CRmin and CRmax are the minimum and maximum values of CR. fit(xi) is the fitness value of the vector xi, fitmin and fitmax are the minimum and maximum values obtained after comparison of fitness values. fitmean is the average of fitness values.

4.3. Hybrid IPSO with IDE (IPSO-IDE)

4.3.1. The Principle of IPSO-IDE Algorithm

In order to improve the optimization ability of PSO, this paper combines the concepts of corporate governance and voting and introduces adaptive factors to optimize the convergence speed. However, the principle of PSO is to update the velocity and position of the particles through continuous iterations to move closer to the optimal position, and the movement of the particles is simple and easily affected by other particles, i.e., the properties of the algorithm itself make it possible for PSO to converge in a non-optimal position when solving the optimization problem. In addition, DE compares the parent vector with the target vector generated by mutation and crossover in the early stage, so that it has high convergence speed and can be used to optimize PSO.
In summary, the paper improves traditional PSO and DE and integrates them. The DE is used to break the limitation of PSO and propose a new hybrid PSO-DE optimization mechanism, which includes the idea of “mutual benefit and win-win”, i.e., the two algorithms are cooperative partnerships, which means that after one party optimizes its own capabilities through the partner, in turn, it provides greater benefits to the partner to achieve mutual benefit results for the two algorithms. Based on this idea, this paper proposes an improved IPSO-IDE algorithm, i.e., an improved particle swarm algorithm based on differential evolution. Both IPSO and IDE are in cooperative modes. IDE is used to optimize the Adm of IPSO to make the Adm position closer to the optimal position and improve its ability to guide particles to the optimal position. In this way, the performance of the population after iteration is better. This kind of population is called “elite population”, and it can obtain better results by using elite population to train IDE algorithm.
The implementation steps of proposed IPSO-IDE are as follows:
step1:
Initialization parameters, including acceleration factor, number of support votes Opvote, and number of negative votes Owvote, etc.
step2:
Initialize the particle swarm randomly, including dimension D, number of population particle N, position X, velocity V, etc.
step3:
Calculate the particle fitness value Fit according to the set objective function.
step4:
Based on the fitness value Fit, calculate the individual best position Pit, the local best position Lbestit, and elect Adm according to (12) to obtain the global best position.
step5:
Update position X and velocity V according to the improved (9) (10) to generate the elite population with high quality.
step6:
Use (13) to process the boundary.
step7:
Use the elite population as the initial population of IDE, combine the adaptive parameters (14) (15), and use (6) (7) (8) to perform “high intensity” iterative optimization.
step8:
Apply the optimized result of IDE algorithm to Leader of the updated particle swarm.
step9:
If the termination condition is met, stop the algorithm and output the optimal results. Otherwise, go to Step2.
See Algorithm 2 at the end of the article.
Among them, the proposed algorithm is divided into two parts, which are cooperated by IPSO and IDE. DE has the advantage of fast convergence in the early stage. Updating the particle position by the elite population optimized by IDE can make the algorithm have faster optimization speed and reduce the overall influence of IPSO. In addition, because the algorithm has two possible administrator particles, the selected Adm can better lead the particles to the optimal position. Therefore, the paper increases the influence of Adm, and sets up the following parameters: c1 = 0.5, c2 = 0.5, c3 = 1.2, c4 = 1, ϕ = 0.7.

4.3.2. Experimental Verification of IPSO-IDE Model

In order to prove the performance superiority of IPSO-IDE proposed, the paper selects nine classical test functions for verification. The specific form of the function is given in Table 1, including the name of test function, expression, value range of independent variables, the minimum value (min) in the interval, and the dimension of function (Dim).
The algorithm is tested on each test function, and it makes a comparison with other representative algorithms such as traditional particle swarm optimization (PSO) [17], democracy-inspired particle swarm optimizer with the concept of peer groups (DPG-PSO) [37], hybrid algorithm based on PSO and ABC (PSO-ABC) [9], and improved differential evolution algorithm (IDE). The parameters are shown in Table 2. The initial parameters for all competitor algorithms are set the same as the proposed algorithm. The maximum number of iterations is 2000, and the population size is set to 20. In order to ensure the validity of the algorithm results, each test function is independently tested 20 times. The experimental results are shown in Table 3, where Mean denotes the average of output results from 20 tests, Best represents the best value in the results of 20 tests, Miter denotes the number of iterations used for the best value, and Std denotes the standard deviation, which can determine the stability of the algorithms. Figure 2 shows the relationship between the optimal fitness of the test functions and the number of iterations.

5. Path Planning Based on IPSO-IDE Algorithm

Through functional tests, the new IPSO-IDE optimization algorithm proposed in this paper has good performance. In order to verify the practicability of the algorithm, different scenarios are set to carry out the path-planning simulation experiment of the algorithm.

5.1. Design of Fitness Function

Fitness function has an important impact on the function of evolutionary algorithms. According to the actual needs of the path-planning problem, the evaluation index mainly includes two factors: path length and degree of risk. The fitness function needs to be constructed based on the evaluation index, so the objective function of this paper is composed of path length function and penalty function. The paper sets the coordinate of starting point as Start (x0, y0) and the coordinate of target point as Goal (x0, y0). Each particle in the particle swarm represents a set of node coordinates along a path, denoted by H = {Start, (x1, y1), (x2, y2), …, (xn, yn), Goal}.
  • Path length function
The path length function fL is used to calculate the path length of the mobile robot from the start pointing Start to the target pointing Goal, which can be expressed by the following formula:
C R i = { i f           f i t ( x i ) f i t m e a n :                 C R min + ( C R max C R min ) f i t ( x i ) f i t min f i t max f i t min e l s e : C R min
2.
Penalty function
The path planning of the mobile robot must ensure the safety of the generated path. The more times a path intersects an obstacle, the higher the degree of risk. The degree of risk is used to set a penalty function to punish the path nodes that intersect with obstacles.
To facilitate the calculation, the obstacles in the environment model are regarded as circles, denoted as Ck. The center is Ok, and c is the number of obstacles. For irregular obstacles, the method of circular approximation is used to simplify them. The obstacle radius is set as the safety threshold, expressed as R = {r0, r1, …, rc}. In order to obtain a collision-free path, it is necessary to ensure that the distance between the path node and the obstacle is greater than the safety threshold, and the line of adjacent path nodes does not intersect the obstacles. Based on this requirement, the concept of mid-node is introduced: take m points on the connecting line of two adjacent path nodes, and this kind of path point is called mid-node. The paper uses the mid-nodes to judge whether the path intersects with obstacles, as Figure 3 shows. The Euclidean distance Disk (k = 1, 2, ..., c) between each node (i.e., mid-node and path node) and the obstacle center is calculated, and the calculation method of penalty degree between node i and node i−1 is expressed by the following formulas:
D i s k = ( x i O k x ) 2 + ( y i O k y ) 2
r i s k k = { 0             , 1               ,             D i s k r k                 D i s k > r k ,         R i s k ( x i , y i ) = k = 1 c r i s k k
where riskk represents the penalty factor under the Ck, which is set to two values of 0 and 1. If distance between the node (i.e., mid-node and path node) is less than the safety threshold rk, the node is punished by setting the riskk to 1. Otherwise, the riskk is set to 0. Then, the formula of penalty function fP is as follows:
f P = η j = 1 n + 1 i = 1 m + 2 R i s k ( x i , y i )
where n is the number of path nodes, m is the number of mid-nodes, and η is the weight coefficient, indicating the degree of influence of the penalty degree Risk (xi, yi) on the path nodes.
In summary, the fitness function of IPSO-IDE is expressed by the following formula:
F i t = f L + f P

5.2. Path Smoothing

Combined with the analysis of the actual situation of the mobile robot operation, the path turning cannot be too sharp, and the generated path needs to be smoothed. In this paper, cubic spline interpolation [41] is added to IPSO-IDE for path planning to obtain a smooth path.
  • Basic principle of cubic spline interpolation
Cubic spline interpolation is abbreviated as Spline interpolation, which is an effective piecewise interpolation method to obtain smooth curves. A set of points is assumed to be: { X = { x 0 , x 1 , x n } Y = { y 0 , y 1 , y n } , where X and Y correspond one to one.
The interval of the spline curve is set to [xmin, xmax]. The n + 1 data points are taken in the interval to generate n subintervals. S(x) as cubic spline interpolation function needs to meet the following stipulations:
  • In n subintervals [xi, xi+1] (i = 0, 1, …, n − 1), S(x) is a cubic polynomial.
  • S(xi) = yi (i = 0, 1, 2, …, n − 1).
  • The first derivative and the second derivative of S(x) in the interval [xmin, xmax] are continuous.
2.
Determine the equation of Spline Interpolation
Based on the stipulations that the cubic spline interpolation function must meet, the calculation method is proposed as follows:
  • According to S(x), which is composed of n cubic polynomials, the polynomial expression can be obtained as:
S i ( x ) = a i + b i ( x x i ) + c i ( x x i ) 2 + d i ( x x i ) 3
where ai, bi, ci, di (i = 0, 1, 2, …, n−1) are undetermined coefficients, so S(x) has 4n undetermined coefficients in total.
  • According to S ( x i ) = y i ( i = 0 , 1 , 2 , , n 1 ) , it can be concluded that:
S ( x i + 1 ) = y i + 1 ,           ( i = 0 , 1 , 2 , , n 1 ) ,   a i = y i
Determine step size: h i = x i + 1 x i , i = 0 , 1 , , n 2
a i + b i h i + c i h i 2 + d i h i 3 = y i + 1
  • According to the continuity of the differential, it can be concluded that:
S i ( x i + 1 ) = S i + 1 ( x i + 1 ) , ( i = 0 , 1 , 2 , , n 1 )
S i ( x i + 1 ) = S i + 1 ( x i + 1 ) , ( i = 0 , 1 , 2 , , n 1 )
To sum up, according to the differential continuity, 2(n−1) conditions can be obtained. In addition, according to the free boundary condition, the second derivatives of the two endpoints of interval are 0, so S(x) can be determined. Figure 4 shows the trajectory with spline through n points.
3.
Smoothing by spline interpolation
Since the path generated by IPSO-IDE is represented by H = {Start, (x1, y1), (x2, y2), …, (xn, yn), Goal}, i.e., there are n + 2 path nodes including the starting point and the target point. The calculation is performed by cubic spline interpolation on the intervals (x0, x1, …, xn + 2) and (y0, y1, …, yn + 2). The path is obtained by the connecting lines of the adjacent nodes (i.e., path nodes, interpolation points, starting point and target point).
The paper carries out a path-planning experiment based on the IPSO-IDE fused with cubic spline interpolation, which is conducted by PYTHON 3.7.5 (Beijing, China) software. The path is planned in a simple environment model, and it is smoothed using cubic spline interpolation to obtain the final optimal path that is shown in Figure 5, where the green curve is the original path before smoothing, and the red line is the final path after smoothing. It can be seen that the final path has no sharp points and is smoother, which meets the requirement of dynamics and kinematics, and fits the actual situation better. The direction and shape of the final path are roughly consistent with the original path, and almost no change.
Figure 6 is a detailed flowchart of the improved IPSO-IDE fused with cubic spline interpolation applied to path planning. The improved algorithm can efficiently find the optimal position and improve the path-planning ability.
In order to verify the practicability of the algorithm, different scenarios are set to carry out the path-planning simulation experiment of the algorithm, so that the path planning algorithm can be applied to the mobile robots in the future. The mobile robot uses the path-planning algorithm package Move_base delivered with ROS to complete the path-planning task based on its dynamic model, which mainly includes global path planning and local path planning and design. Global path planning constructs the shortest distance from the start to the end based on global map information.

6. Simulation Experiments and Analysis

In order to validate the algorithm proposed in this paper in solving the path planning and analyze the influence of the number of path nodes on the performance of the algorithm, the simulation experiments are conducted by PYTHON 3.7.5 (Beijing, China) software. The performances of the proposed algorithm are compared with those of PSO [17], DE [21], ABC [18], PSO-ABC [9], DPG-PSO [28], hybrid algorithm based on PSO and DE (PSO-DE) [42,43], and IDE.

6.1. The Number of Path Nodes Experiment

The purpose of this experiment is to analyze the influence of the number of path nodes on the performance of path planning. The paper selects environment 1 for experiment, where the domains of x and y were between 0 and 10, the starting point coordinate is (0,0), which is represented by a red square, the end point coordinates are (10,10), which is represented by a red “X”, the path node is represented by a blue circle, and the red line represents the final path. In this experiment, the population size is set to 15, the number of path nodes is 1 to 10, the maximum number of iterations is 100, and the output result is shown in Figure 7. Figure 8 shows the convergence curve of path length based on IPSO-IDE when the number of path nodes ranged from 1 to 10.

6.2. Path Planning Experiment

The path planning experiments are conducted based on IPSO-IDE in different environments, and the results are compared with other algorithms. In the experiments, the parameters of the Table 4 are used to test.

6.2.1. First Experiment: Compared with Different Traditional Heuristic Algorithms

This experiment aims to analyze the path planning results of the proposed algorithm and compare with the traditional heuristic algorithms of PSO, DE, and ABC in environment 2. The environment 2 is a mixed map of square and circular obstacles, with a total of 10 obstacles, where the domains of x and y were between 0 and 10, and the red square and red “X” represent the start and end points. Since the obstacles are dense, the number of path nodes is selected as 5. The population size of all algorithms is 15, and the maximum number of iterations is 100. For each algorithm, each experiment is performed 20 times.
Figure 9 shows the optimal path in environment 2 generated by the different algorithms during 20 tests, and Figure 10 shows the convergence curves of optimal fitness values based on different algorithms during the 20 times. Based on four indicators of Mean, Best, Worst, Std, and Time, the algorithms are compared. Among them, Mean represents the average of the average of output results from 20 tests, Best and Worst represent the best value and the worst value in the results, respectively, Time represents the average of running time from 20 tests, and Std denotes the standard deviation. The experimental results including the above indicators are shown in Table 5. As can be seen from Figure 10, in the simple mixed scenario, DE and ABC algorithms fall into local optimal before iteration of the 20th generation, while the IPSO-IDE algorithm proposed in this paper converges only after iteration of the 40th generation. Compared with DE and ABC algorithms, IPSO-IDE algorithm has the advantage of not being precocious. As can be seen from the path planning results in Table 5, the experimental operation result of IPSO-IDE algorithm proposed in this paper is the smallest, indicating that the convergence accuracy of the algorithm proposed in this paper is higher than that of DE, ABC, and ABC algorithms.

6.2.2. Second Experiment: Compared with Different Improved Algorithms

This experiment aims to analyze the path-planning results of the proposed algorithm and compare with the improved algorithms of PSO-ABC, DPG-PSO, and ABC in environment 3. Compared with environment 2, the types of obstacles in environment 3 are increased, which is a more complex map, as shown in Figure 11. In here, the domains of x and y were between 0 and 10, and the red square and red “X” represent the start and end points, respectively. The algorithm parameters and the number of path nodes are the same as the first experiment. Figure 12 shows the convergence curves of optimal fitness values based on different algorithms during the 20 times. Based on four indicators of Mean, Best, Worst, and Std, the algorithms are compared, and the experimental results including the above indicators are shown in Table 6. As can be seen from Figure 11 and Figure 12, in complex mixed scenarios, although IPSO-IDE algorithm proposed in this paper also falls into local optimal earlier, compared with PSO-ABC, DPGPSO, PSO-DE, and IDE algorithm, IPSO-IDE algorithm can find a better path. In addition, we can see from the path planning results in Table 6 that the proposed algorithm has higher convergence accuracy than other algorithms.

6.2.3. Third Experiment: Verification of Big Map

This experiment aims to analyze the path-planning results of the proposed algorithm and compare with the of the improved algorithms of PSO-ABC, DPG-PSO, and ABC in environment 4. Environment 4 is a map of dense obstacles, and the map range is expanded, as shown in Figure 13. In here, the domains of x and y were between 0 and 100, and the red square and red “X” represent the start and end points, respectively. The algorithm parameters and the number of path nodes are the same as the first experiment. Figure 14 shows the convergence curves of optimal fitness values based on different algorithms during the 20 times. Based on five indicators of Mean, Best, Worst, Std, and Time, where Time means the average of running time from 20 tests, the algorithms are compared, and the experimental results including the above indicators are shown in Table 7. It can be seen from Figure 13 and Figure 14, in a scenario with dense obstacles, although the IPSO-IDE algorithm proposed in this paper also falls into local optimal earlier, compared with PSO-ABC, DPGPSO, PSO-DE, and IDE algorithms, IPSO-IDE can find a better path. In addition, we can see from the path planning results in Table 7 that the proposed algorithm has higher convergence accuracy than other algorithms.

7. Conclusions

This paper studies the application of the PSO algorithm in the path planning of mobile robots and proposes an IPSO-IDE algorithm based on cubic spline interpolation. The proposed algorithm is mainly based on the traditional PSO algorithm to make the improvements. It combines improved inertia weight ω*, adaptive parameter β, and the concept of corporate governance. Aiming at the shortcomings of the traditional DE algorithm, the scaling factor F and the cross-probability factor CR are adaptively optimized, so that the algorithm can adaptively control the search accuracy and the degree of mutation to improve the optimization accuracy of the algorithm. Then, the improved IDE algorithm is used to improve the global optimal position of the IPSO algorithm to prevent the IPSO algorithm from falling into the local optimal solution. A new objective function applied to path planning, which is composed of a path length function and a penalty function, simplifying the path planning problem of mobile robots into an objective function optimization problem.
The proposed algorithm is tested on nine classical test functions. The results show that the proposed algorithm has high optimization capabilities and search efficiency without requiring a large amount of sample data, and in addition to the f 9 test functions, the results of this algorithm have reached the optimum. Although the results of the f 9 test function have not reached the optimum, the accuracy of the worst results has also reached the 10−6 overall level, it shows superiority compared with comparison algorithms such as PSO, DPG-PSO, PSO-ABC, IDE, etc. Then, the algorithm is applied to various experimental environments for path-planning experiments. The experimental results show that, compared with the traditional path-planning algorithm, the proposed IPSO-IDE algorithm not only has higher convergence accuracy, but also has the advantages of not being precocious. At the same time, compared with the other two improved particle swarm optimization algorithms, although the IPSO-IDE algorithm proposed in this paper is also prone to fall into the precocious state, compared with other algorithms, the algorithm can find a better path and the final convergence accuracy is higher. The results show that the algorithm improves the global search ability and has certain practical value. However, this algorithm is only applicable to the path planning problem of mobile robots with complex static maps. In the subsequent research, this paper plans to use the proposed algorithm to solve the path planning problem under the dynamic scene model, increase the real-time scene acquisition and processing functions, and improve the effect of path planning.

Author Contributions

Q.Y. carried out the data curation and writing—original draft. R.S. carried out the conceptualization and methodology. X.D. carried out the validation and visualization. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China (Project No.52065010 and No.52165063), Department of Science and Technology of Guizhou Province (Project No. [2022] G140 and No. [2022]K024), Graduate Innovative Talents Program of Guizhou University (2021), Research on Industrial Robot Technology based on Patent Analysis (K19-0204-001).

Institutional Review Board Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

Thanks for the computing support of the State Key Laboratory of Public Big Data, Guizhou University.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

Abbreviationmeaning
PSOparticle swarm optimization
IPSOimproved particle swarm optimization
DEdifferential evolution
IDEoptimized differential evolution
IPSO- IDEimproved particle swarm optimization based on differential evolution
GAgenetic algorithm
CRcrossover probability factor
DPG-PSOdemocracy-inspired particle swarm optimizer with the concept of peer groups
ABC artificial bee colony
PSO-ABChybrid algorithm based on PSO and ABC
The pseudo code of manager selects.
Algorithm 1: Code for manager selects
//Initialize operator, Owner, operator vote, manager vote, administrator particle.
Initialize :   Opvote : = ϕ ,   ovote : = 1 ϕ   ,   Operator ,   Owner , Adm , Adm i d ,voteid: [0,1].
1.While (fit > fitmin)
2.   For t = 1 to T //T is the number of iterations.
3.     For i = 1 to N //N is the number of particles in the population.
4.       For d = 1 to D //D for dimension.
5.          If (voteid < Opvote)
6.           Adm i d     O p e r a t o r d   //If the particles vote for the operator.
7.          Opvote ← Opvote + 1/(M.N) //Add up the votes.
8.          Opvote ← Opvote/(Opvote+Owvote) //Standardize voting.
9.       Else
10.             Adm i d   O w n e r d   //If the particle votes for the owner.
11.          Owvote ← Owvote + 1/(M.N) //Add up the votes.
12.          Owvote←Owvote/(Opvote+Owvote) //Standardize voting.
13.       End if
14.          / / The   e ( 1 v o t e A d m ) expressed as follows.
15.          If   ( Adm i d = O p e r a t o r d   )
16.              e ( 1 v o t e A d m )   ←1
17.       End if
18.          If   ( Adm i d = O w n e r d   )
19.              e ( 1 v o t e A d m )   ←2.3
20.       End if
21.           Update   O p e r a t o r d   and Vt
22.       End for
23.  End for
24.End while
The pseudo code of IPSO-IDE.
Algorithm2: Code for IPSO-IDE
Initialize: pro = 1/N, ϕ ← 0.7, Opvote: = ϕ, ovote: = 1− ϕ,
c1 ← 0.5, c2 ← 0.5, c3 ← 1.2, c4 ← 1, X, V, Operator, Owner, Leader, Lbest, P.
1.  While (fit > fitmin)
2.    For t = 1 to T //T is the number of iterations.
3.      For i = 1 to N //N is the number of particles in the population.
4.        For d = 1 to D //D for dimension.
//The following is the calculation of the optimal position of an individual based on the fitness value fit.
5.          If (fit (Xi(t)) ≤ fit (Pi(t)))
6.            Pi(t) ← Xi(t)
7.           Else
8.            Pi(t) ← Xi(t)
9.          End if
//The following is the calculation of the local optimal position based on the fitness value fit.
10.          If (fit(Xi(t)) ≤ fit(Lbesti(t)))
11.            Lbesti(t) ← Xi(t)
12.          Else
13.            Lbesti(t) ←Lbesti(t − 1)
14.           End if
//The following is the calculation of the global optimal position based on the fitness value fit.
15.        If (fit(Xi(t)) ≤ fit(Lbesti±1(t)) or (fit(Xi(t)) ≤ fit(Lbesti±2(t)))
16.          Lbesti±1 (t) ← Lbesti(t)
//Elect an Adm according to the expression (3-15)
17.        Leader, Leader_fit, Opvote, OwvoteChoose_Leader (Operator, Owner)
        //Update position X and speed V to generate a better elite group, and take the elite group as the initial group of IDE algorithm.
18.        DE_listX
19.        h(t) ← Mutation (DE_list(t), fit(DE_list(t))) //variation.
20.        v(t) ← Crossover (DE_list(t), h(t), fit(DE_list(t))) //cross.
//Selection.
21.        DE_list(t) ← Selection (v(t), DE_list(t)) (Mutation, Crossover, and Selection:
respectively refer to the mutation, crossover, and selection operations in the DE algorithm)
     //Apply the optimized result of IDE algorithm to Leader of the updated particle swarm.
22.        DE_fitnessfit (DE_list(t))
23.        min_f ← Minimum DE_fitness
24.        min_position ← Minimum DE_fitness position
25.        If (min_fLeader_fit)
26.          Leader ← min_position
27.        End if
28.        Normalize Opvote and Owvote
29.        If (Leaderd(t) = Opvoteid(t))
30.           e ( 1 v o t e l e a d e r ) ← 1
31.        Else
32.             e ( 1 v o t e l e a d e r ) ← 2.3
33.        End if
34.        Update Xt and Vt //Update the position and velocity of the particle.
35.      End for
36.    End for
37.  End while

References

  1. Chipade, V.S.; Panagou, D. Multiagent Planning and Control for Swarm Herding in 2-D Obstacle Environments Under Bounded Inputs. IEEE Trans. Robot. 2021, 37, 1956–1972. [Google Scholar] [CrossRef]
  2. Ren, Z.; Rathinam, S.; Likhachev, M.; Choset, H. Multi-Objective Safe-Interval Path Planning With Dynamic Obstacles. IEEE Robot. Autom. Lett. 2022, 7, 8154–8161. [Google Scholar] [CrossRef]
  3. Pei, M.; An, H.; Liu, B.; Wang, C. An Improved Dyna-Q Algorithm for Mobile Robot Path Planning in Unknown Dynamic Environment. IEEE Trans. Syst. Man, Cybern. Syst. 2022, 52, 4415–4425. [Google Scholar] [CrossRef]
  4. Nguyen, V.-L.; Hwang, R.-H.; Lin, P.-C. Controllable Path Planning and Traffic Scheduling for Emergency Services in the Internet of Vehicles. IEEE Trans. Intell. Transp. Syst. 2022, 23, 12399–12413. [Google Scholar] [CrossRef]
  5. Favaro, A.; Segato, A.; Muretti, F.; De Momi, E. An Evolutionary-Optimized Surgical Path Planner for a Programmable Bevel-Tip Needle. IEEE Trans. Robot. 2021, 37, 1039–1050. [Google Scholar] [CrossRef]
  6. Vagale, A.; Oucheikh, R.; Bye, R.T.; Osen, O.L.; Fossen, T.I. Path planning and collision avoidance for autonomous surface vehicles I: A review. J. Mar. Sci. Technol. 2021, 26, 1292–1306. [Google Scholar] [CrossRef]
  7. Chen, P.; Li, Q.; Zhang, C.; Cui, J.; Zhou, H. Hybrid chaos-based particle swarm optimization-ant colony optimization algorithm with asynchro-nous pheromone updating strategy for path planning of landfill inspection robots. Int. J. Adv. Robot. Syst. 2019, 16, 255795084. [Google Scholar] [CrossRef] [Green Version]
  8. Li, G.; Chou, W. Path planning for mobile robot using self-adaptive learning particle swarm optimization. Sci. China Inf. Sci. 2018, 61, 052204. [Google Scholar] [CrossRef] [Green Version]
  9. Gul, F.; Rahiman, W.; Alhady, S.S.N.; Ali, A.; Mir, I.; Jalil, A. Meta-heuristic approach for solving multi-objective path planning for autonomous guided robot using PSO–GWO optimization algorithm with evolutionary programming. J. Ambient. Intell. Humaniz. Comput. 2021, 12, 7873–7890. [Google Scholar] [CrossRef]
  10. Xie, S.; Hu, J.; Bhowmick, P.; Ding, Z.; Arvin, F. Distributed Motion Planning for Safe Autonomous Vehicle Overtaking via Artificial Poten-tial Field. IEEE Trans. Intell. Transp. Syst. 2022, 23, 21531–21547. [Google Scholar] [CrossRef]
  11. Gul, F.; Mir, I.; Abualigah, L.; Sumari, P.; Forestiero, A. A Consolidated Review of Path Planning and Optimization Techniques: Technical Per-spectives and Future Directions. Electronics 2021, 10, 2250. [Google Scholar] [CrossRef]
  12. Jian, Z.; Zhang, S.; Chen, S.; Nan, Z.; Zheng, N. A Global-Local Coupling Two-Stage Path Planning Method for Mobile Robots. IEEE Robot. Autom. Lett. 2021, 6, 5349–5356. [Google Scholar] [CrossRef]
  13. Qi, Z.; Wang, T.; Chen, J.; Narang, D.; Wang, Y.; Yang, H. Learning-based Path Planning and Predictive Control for Autonomous Vehicles With Low-Cost Positioning. IEEE Trans. Intell. Veh. 2021, early access. [Google Scholar] [CrossRef]
  14. Zhang, Z.; Wu, R.; Pan, Y.; Wang, Y.; Wang, Y.; Guan, X.; Hao, J.; Zhang, J.; Li, G. A Robust Reference Path Selection Method for Path Planning Algorithm. IEEE Robot. Autom. Lett. 2022, 7, 4837–4844. [Google Scholar] [CrossRef]
  15. Wen, J.; Yang, J.; Wang, T. Path Planning for Autonomous Underwater Vehicles Under the Influence of Ocean Currents Based on a Fusion Heuristic Algorithm. IEEE Trans. Veh. Technol. 2021, 70, 8529–8544. [Google Scholar] [CrossRef]
  16. Awad, A.; Hawash, A.; Abdalhaq, B. A Genetic Algorithm (GA) and Swarm Based Binary Decision Diagram (BDD) Reordering Optimizer Reinforced with Recent Operators. IEEE Trans. Evol. Comput. 2021, early access. [Google Scholar] [CrossRef]
  17. Kennedy, J.; Eberhart, R. Particle swarm optimization. In Proceedings of the ICNN’95-international conference on neural networks, Perth, WA, Australia, 27 November–1 December 1995; Volume 4, pp. 1942–1948. [Google Scholar]
  18. Karaboga, D.; Gorkemli, B.; Ozturk, C.; Karaboga, N. A comprehensive survey: Artificial bee colony (ABC) algorithm and applications. Artif. Intell. Rev. 2014, 42, 21–57. [Google Scholar] [CrossRef]
  19. Liu, E.; Yao, X.; Liu, M.; Jin, H. AGV path planning based on improved grey wolf optimization algorithm and its implementation prototype platform. Comput. Integr. Manuf. Syst. 2018, 24, 2779–2791. [Google Scholar]
  20. Tang, J.; Liu, G.; Pan, Q. A Review on Representative Swarm Intelligence Algorithms for Solving Optimization Problems: Applications and Trends. IEEE/CAA J. Autom. Sin. 2021, 8, 1627–1643. [Google Scholar] [CrossRef]
  21. Storn, R.; Price, K. Differential evolution—A simple and efficient heuristic for global optimization over continuous spaces. J. Glob. Optim. 1997, 11, 341–359. [Google Scholar] [CrossRef]
  22. Zhang, H.-Y.; Lin, W.-M.; Chen, A.-X. Path Planning for the Mobile Robot: A Review. Symmetry 2018, 10, 450. [Google Scholar] [CrossRef]
  23. Kamel, M.A.; Yu, X.; Zhang, Y. Real-Time Fault-Tolerant Formation Control of Multiple WMRs Based on Hybrid GA–PSO Algorithm. IEEE Trans. Autom. Sci. Eng. 2021, 18, 1263–1276. [Google Scholar] [CrossRef]
  24. Memon, M.A.; Siddique, M.D.; Mekhilef, S.; Mubin, M. Asynchronous Particle Swarm Optimization-Genetic Algorithm (APSO-GA) Based Selective Harmonic Elimination in a Cascaded H-Bridge Multilevel Inverter. IEEE Trans. Ind. Electron. 2022, 69, 1477–1487. [Google Scholar] [CrossRef]
  25. Mohammed Hussein, H.; Katzis, K.; Mfupe, L.P.; Bekele, E.T. Performance Optimization of High-Altitude Platform Wireless Communication Network Exploiting TVWS Spectrums Based on Modified PSO. IEEE Open J. Veh. Technol. 2022, 3, 356–366. [Google Scholar] [CrossRef]
  26. Fan, Q.; Zhang, Y.; Li, N. An Autoselection Strategy of Multiobjective Evolutionary Algorithms Based on Performance Indicator and its Ap-plication. IEEE Trans. Autom. Sci. Eng. 2022, 19, 2422–2436. [Google Scholar] [CrossRef]
  27. Patle, B.K.; Ganesh Babu, L.; Anish, P.; Parhi, D.R.K. A review: On path planning strategies for navigation of mobile robot. Def. Technol. 2019, 4, 582–606. [Google Scholar] [CrossRef]
  28. Burman, R.; Chakrabarti, S.; Das, S. Democracy-inspired particle swarm optimizer with the concept of peer groups. Soft Comput. 2017, 21, 3267–3286. [Google Scholar] [CrossRef]
  29. Zhao, C.; Guo, D. Particle Swarm Optimization Algorithm With Self-Organizing Mapping for Nash Equilibrium Strategy in Application of Multiobjective Optimization. IEEE Trans. Neural Networks Learn. Syst. 2021, 32, 5179–5193. [Google Scholar] [CrossRef]
  30. Yu, Z.; Si, Z.; Li, X.; Wang, D.; Song, H. A Novel Hybrid Particle Swarm Optimization Algorithm for Path Planning of UAVs. IEEE Internet Things J. 2022, 9, 22547–22558. [Google Scholar] [CrossRef]
  31. Pozna, C.; Precup, R.; Horvath, E.; Petriu, E.M. Hybrid Particle Filter-Particle Swarm Optimization Algorithm and Application to Fuzzy Con-trolled Servo Systems. IEEE Trans. Fuzzy Syst. 2022, 30, 4286–4297. [Google Scholar] [CrossRef]
  32. Liu, X.; Zhang, D.; Zhang, T.; Zhang, J.; Wang, J. A new path plan method based on hybrid algorithm of reinforcement learning and particle swarm optimization. Eng. Comput. 2021, ahead of print. [Google Scholar] [CrossRef]
  33. Zhou, S.; Xing, L.; Zheng, X.; Du, N.; Wang, L.; Zhang, Q. A Self-Adaptive Differential Evolution Algorithm for Scheduling a Single Batch-Processing Machine With Arbitrary Job Sizes and Release Times. IEEE Trans. Cybern. 2021, 51, 1430–1442. [Google Scholar] [CrossRef] [PubMed]
  34. Chai, R.; Savvaris, A.; Tsourdos, A.; Chai, S. Multi-objective trajectory optimization of Space Manoeuvre Vehicle using adaptive differential evolution and modified game theory. Acta Astronaut. 2017, 136, 273–280. [Google Scholar] [CrossRef]
  35. Lin, C. An adaptive-group-based differential evolution algorithm for inspecting machined workpiece path planning. Int. J. Adv. Manuf. Technol. 2019, 105, 2647–2657. [Google Scholar] [CrossRef]
  36. Wang, Z.-J.; Zhou, Y.-R.; Zhang, J. Adaptive Estimation Distribution Distributed Differential Evolution for Multimodal Optimization Problems. IEEE Trans. Cybern. 2022, 52, 6059–6070. [Google Scholar] [CrossRef]
  37. Liu, H.; Chen, Q.; Pan, N.; Sun, Y.; An, Y.; Pan, D. UAV Stocktaking Task-Planning for Industrial Warehouses Based on the Improved Hybrid Differential Evolution Algorithm. IEEE Trans. Ind. Informatics 2022, 18, 582–591. [Google Scholar] [CrossRef]
  38. Xu, M.; Wang, Y. Time Series Prediction Based on Improved Differential Evolution and Echo State Network. Acta Autom. Sin. 2019, 45, 1–9. [Google Scholar]
  39. Zhang, B.; Lei, T. The Relationship between Corporate Governance and Corporate Performance in China’s Civilian-Owned Listed En-terprise. In Proceedings of the 2009 International Conference on Business Intelligence and Financial Engineering, Beijing, China, 24–26 July 2009; pp. 782–785. [Google Scholar]
  40. Kashyap, S.; Jeyasekar, A. A Competent and Accurate BlockChain based E-Voting System on Liquid Democracy. In Proceedings of the 2020 2nd Conference on Blockchain Research & Applications for Innovative Networks and Services (BRAINS), Paris, France, 28–30 September 2020; pp. 202–203. [Google Scholar]
  41. Sadikin, R.; Swardiana, I.W.A.; Wirahman, T. Cubic spline interpolation for large regular 3D grid in cylindrical coordinate: (Invited pa-per). In Proceedings of the 2017 International Conference on Computer, Control, Informatics and its Applications (IC3INA), Jakarta, Indonesia, 23–26 October 2017; pp. 1–6. [Google Scholar]
  42. Bogdanov, V.V.; Volkov, Y.S. Near-optimal tension parameters in convexity preserving interpolation by generalized cubic splines. Numer. Algorithms 2021, 86, 833–861. [Google Scholar] [CrossRef]
  43. Tang, B.; Xiang, K.; Pang, M. An integrated particle swarm optimization approach hybridizing a new self-adaptive particle swarm optimization with a modified differential evolution. Neural Comput. Appl. 2020, 32, 4849–4883. [Google Scholar] [CrossRef]
Figure 1. The update of particle positions in two successive iterations (i.e., t to t + 1).
Figure 1. The update of particle positions in two successive iterations (i.e., t to t + 1).
Processes 11 00026 g001
Figure 2. The optimal fitness curves obtained based on test functions f1−f9 by five algorithms.
Figure 2. The optimal fitness curves obtained based on test functions f1−f9 by five algorithms.
Processes 11 00026 g002aProcesses 11 00026 g002b
Figure 3. The concept of mid-node introduced to avoid obstacles.
Figure 3. The concept of mid-node introduced to avoid obstacles.
Processes 11 00026 g003
Figure 4. Trajectory with spline through n points.
Figure 4. Trajectory with spline through n points.
Processes 11 00026 g004
Figure 5. Trajectory with spline through n points. Comparison of generated paths before and after path smoothing.
Figure 5. Trajectory with spline through n points. Comparison of generated paths before and after path smoothing.
Processes 11 00026 g005
Figure 6. Flowchart of robot path planning based on the proposed algorithm.
Figure 6. Flowchart of robot path planning based on the proposed algorithm.
Processes 11 00026 g006
Figure 7. Flowchart of robot path planning based on the proposed algorithm.
Figure 7. Flowchart of robot path planning based on the proposed algorithm.
Processes 11 00026 g007
Figure 8. Convergence curves of optimal fitness values based on IPSO-IDE with n (n = 1–10) path nodes under the environment 1.
Figure 8. Convergence curves of optimal fitness values based on IPSO-IDE with n (n = 1–10) path nodes under the environment 1.
Processes 11 00026 g008
Figure 9. Optimal path results based on different algorithms in environment 2.
Figure 9. Optimal path results based on different algorithms in environment 2.
Processes 11 00026 g009
Figure 10. Convergence curves of optimal fitness values based on different algorithms in environment 2.
Figure 10. Convergence curves of optimal fitness values based on different algorithms in environment 2.
Processes 11 00026 g010
Figure 11. Optimal path results based on different algorithms in environment 3.
Figure 11. Optimal path results based on different algorithms in environment 3.
Processes 11 00026 g011
Figure 12. Convergence curves of optimal fitness values based on different algorithms in environment 3.
Figure 12. Convergence curves of optimal fitness values based on different algorithms in environment 3.
Processes 11 00026 g012
Figure 13. Optimal path results based on different algorithms in environment 4.
Figure 13. Optimal path results based on different algorithms in environment 4.
Processes 11 00026 g013
Figure 14. Convergence curves of optimal fitness values based on different algorithms in environment 4.
Figure 14. Convergence curves of optimal fitness values based on different algorithms in environment 4.
Processes 11 00026 g014
Table 1. Performance of IPSO-IDE with other algorithms based on test functions.
Table 1. Performance of IPSO-IDE with other algorithms based on test functions.
Test FunctionExpressionValue RangeMinDim
Sphere f 1 = i = 1 D x i 2 [−100,100]030
Step f 2 = i = 1 D ( f l o o r ( x i + 0.5 ) ) 2 [−10,10]030
H14 f 3 = exp ( 0.5 i = 1 D x i 2 ) 1 [−1.28,1.28]030
Schwefel’s P2.22 f 4 = i = 1 D | x i | + i = 1 D | x i | [−10,10]030
Alpine f 5 = i = 1 D | x i sin x i | + 0.1 | x i | [−10,10]030
Quadric f 6 = j = 1 D ( i j x i ) 2 [−100,100]030
Rastrigin f 7 = i = 1 D [ x i 2 10 cos 2 π x i + 10 ] [−5.12,5.12]030
Ackley f 8 = 20 exp ( 0.2 1 D i = 1 D x i 2 ) exp ( 1 D i = 1 D cos 2 π x i ) + 20 + e [−32,32]030
Griewank f 9 = 1 4000 i = 1 D x i D i = 1 D cos ( x i i ) + 1 [−600,600]030
Table 2. Parameter settings of the different test algorithms (meaning of the symbols are provided in the respective literates).
Table 2. Parameter settings of the different test algorithms (meaning of the symbols are provided in the respective literates).
AlgorithmParameter
IPSO-IDEc1 = 0.5, c2 = 0.5, c3 = 1.2, c4 = 1; ω = 0.4–0.2; ϕ = 0.7; β = 1–1.5; Vmax = 0.6 × Range; F = 0.6; CR = 0.9–0.1
PSOc1 = 2; c2 = 2; ω = 1; Vmax = 0.5 × Range; Vmax = 0.1 × Range
DPG-PSOc1 = 2, c2 = 1.5, c3 = 0.5, c4 = 0.8; ω = 0.2; ϕ = 0.7; Vmax = 0.5 × Range
PSO-ABCc1 = 2, c2 = 2; ω = 0.95–0.4; Vmax = Range
IDEF = 0.6; CR = 0.9–0.1; Vmax = Range
Table 3. Test function.
Table 3. Test function.
AlgorithmEvaluation IndexIPSO-IDEPSODPG-PSOPSO-ABCIDE
f1Mean01.5390.0752.9 × 10−51.7 × 10−27
Best01.3300.0022.83 × 10−51.12 × 10−30
Worst01.860.2363.0 × 10−51.6 × 10−26
Std00.18090.05734.29 × 10−73.93 × 10−27
M-iters33211802144251993
f2Mean00000
Best00000
Worst00000
Std00000
M-iters15111821100384
f3Mean01.10452.79 × 10−65.36 × 10−60
Best00.881.36 × 10−83.82 × 10−60
Worst01.151.21 × 10−56.84 × 10−60
Std00.10674.06 × 10−69.82 × 10−70
M-iters1628627910651173
f4Mean05.360.3620.0291.01 × 10−21
Best05.040.190.0291.94 × 10−22
Worst05.830.70.0292.04 × 10−21
Std00.28920.19683.88 × 10−187.3 × 10−22
M-iters1912481351861997
f5Mean03.60450.01161.74352.88 × 10-19
Best01.990.0020.0398.01 × 10−28
Worst04.80.042.416.73 × 10−19
Std01.18450.01231.12656.73 × 10−19
M-iters1833512620002000
f6Mean09.5820.9234.11 × 10−43.98 × 10−29
Best07.50.1054 × 10−43.14 × 10−29
Worst010.272.564.2 × 10−44.76 × 10−29
Std01.02781.24211.15 × 10−51.13 × 10−29
M-iters40014324637652000
f7Mean038.06626.6290.005115.17
Best027.9819.140.00410.94
Worst059.3435.630.005819.9
Std012.18527.52750.0014.4048
M-iters25503208665738
f8Mean3.09 × 10−168.4329 × 10−40.0040.4575
Best4.4 × 10−177.186.58 × 10−50.0047.55 × 10−15
Worst4.44 × 10−169.511.8 × 10−30.0041.34
Std2.31 × 10−160.84228.26 × 10−400.6338
M-iters514301825481831
GradeN----
f9Mean035.960.06642.01 × 10−60.0147
Best031.050.0372.01 × 10−60
Worst041.020.1472.01 × 10−60.0172
Std03.970.049500.0218
M-iters2120003411121222
Table 4. Parameter settings of the different test algorithms (meaning of the symbols are provided in the respective literatures.
Table 4. Parameter settings of the different test algorithms (meaning of the symbols are provided in the respective literatures.
AlgorithmParameter
IPSO-IDEc1 = 0.5, c2 = 0.5, c3 = 1.2, c4 = 1; ω = 0.4–0.2; ϕ = 0.7; β = 1–1.5; Vmax = 0.6 × Range; F = 0.9–0.1; CR = 0.9–0.1
DEF = 0.6; CR = 0.7; Vmax = Range
PSOc1 = 2, c2= 2; ω = 1; Vmax = 0.5 × Range;Vmax = 0.1 × Range
ABCnOnLooker = 10; φ = 1.2; P = 0.5; Vmax = Range
PSO-ABCc1 = 2, c2 = 2; ω = 0.95–0.4; Vmax = Range
DPG-PSOc1 = 2, c2 = 1.5, c3 = 0.5, c4 = 0.8; ω = 0.2; ϕ = 0.7; Vmax = 0.5 × Range
PSO-DEc1 = 2, c2 = 2; F = 0.7; CR = 0.7; Vmax = 0.6 × Range
IDEF = 0.9–0.1; CR = 0.9–0.1; Vmax = Range
Table 5. Path-planning results of different algorithms in environment 2.
Table 5. Path-planning results of different algorithms in environment 2.
AlgorithmMeanBestWorstStdTime
IPSO-IDE15.27314.56218.3111.2555.83
DE16.46115.51418.3171.3597.52
PSO22.73518.91933.4894.8336.53
ABC16.86515.55718.3561.3307.90
Table 6. Path planning results of different algorithms in environment 3.
Table 6. Path planning results of different algorithms in environment 3.
AlgorithmMeanBestWorstStdTime
IPSO-IDE14.65614.37415.4870.3767.08
PSO-ABC15.89615.25716.3640.4639.13
DPG-PSO17.63616.32518.6890.9717.52
PSO-DE15.14714.57215.7930.54711.13
IDE14.84314.53415.6350.4269.74
Table 7. Path planning results of different algorithms in environment 4.
Table 7. Path planning results of different algorithms in environment 4.
AlgorithmMeanBestWorstStdTime
IPSO-IDE143.982143.362144.5270.73816.51
PSO-ABC158.504157.924151.4571.12043.02
DPG-PSO157.771157.158159.0900.81935.21
PSO-DE145.137144.443146.4810.78143.12
IDE145.703145.180147.5041.02145.34
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Yuan, Q.; Sun, R.; Du, X. Path Planning of Mobile Robots Based on an Improved Particle Swarm Optimization Algorithm. Processes 2023, 11, 26. https://doi.org/10.3390/pr11010026

AMA Style

Yuan Q, Sun R, Du X. Path Planning of Mobile Robots Based on an Improved Particle Swarm Optimization Algorithm. Processes. 2023; 11(1):26. https://doi.org/10.3390/pr11010026

Chicago/Turabian Style

Yuan, Qingni, Ruitong Sun, and Xiaoying Du. 2023. "Path Planning of Mobile Robots Based on an Improved Particle Swarm Optimization Algorithm" Processes 11, no. 1: 26. https://doi.org/10.3390/pr11010026

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop