A Constraint Optimization path planning for Dynamic Environment

. Optimal path planning is a major challenge for the operation of autonomous unmanned ground vehicles. In dynamic mobile path planning, the goal is to find a collision-free path for a robot from an initial position to a goal position in an environment with obstacles. However, in a dynamic environment, the challenge is bigger than static. In this paper, a modified ABC and an adaptive constraint PSO algorithm are proposed to deal with the dynamic environment; the algorithms were chosen to have a good balance between exploration and exploitation, with a penalty function used to have a collision-free path.


Introduction
Mobile robots are widely employed in many fields, including medicine, space exploration, emergency circumstances like fire hazards, etc.The robot should complete the tasks efficiently and effectively without any human interruption.The "Path Planning" concept has been proposed to address such a circumstance.In path planning, the robot must navigate a particular route in a given environment according to criteria such as distance, time, or energy, whether the environment is familiar to the robot.The robot must safely navigate these barriers without colliding with them to identify the best route from its starting point to its destination during navigation, for that path planning involves pre-calculating an obstacle-free route in which the controller guides the vehicle [1,2].Path planning aims to find the optimum, collision-free route between two points in a given environment.In general, there are several factors to consider while choosing the shortest, smoothest, least energy-consuming, or time-consuming path for the mobile robot to take to reach the target.Its goal is to find the path based on the shortest distance, path planning can be considered an optimization problem that can be solved without turning to a better solution since it is a multi-objective function.Much research has been introduced to solve the path planning problem [3,4].There are many path-planning algorithms.However, these algorithms succeed, but every algorithm has a point where it fails in some cases, so algorithms cannot reach an ideal solution individually, especially in complex dynamic environments.There are four steps to navigate a mobile robot [5]; 1) Perception: Using sensors, the robot generates information about the environment.2) Localisation: Each iteration reminds the robot of its position and orientation in the environment.3) Cognition and Path planning: To reach at the goal point, the robot determines the path.4) Motion control: The robot tracks its path by controlling the motion.[1,5] .Mohamed [6] suggested using an enhanced genetic algorithm (EGA) to determine the best route for a mobile robot.Auxiliary operations were developed to reduce the number of generations needed.The proposed method was better because it found a shorter path with less generations.Wang [7] introduced an adaptive learning-based hybrid PSO technique to prevent the early convergence of PSO on a variety of challenging problems.Abdulkareem [8] proposed using a combination of probabilistic roadmap (PRM), ACO, and third-order Bspline curve to solve path-planning.The outcomes of the suggested method guarantee a viable route in a complex and extremely complex environment.Li [9] developed a better PSO integration strategy based on better details that incorporates the learning factor, cubic spline interpolation, exponential attenuation inertia weight, and uniform distribution; it was improved from uniform initialization strategy to improve the later searchability and prevented the algorithm from falling into the local optimal solutions can control the independent variable as the inertia weight.Kamil [10] suggested a modified version of the artificial Bee Colony Algorithm (ABC), namely the Adaptive Dimension Limit-Artificial Bee Colony Algorithm (ADL-ABC), to determine the optimum global path for the mobile robot algorithm, which had a great potential to solve the proposed problem, the proposed algorithm performed better than the ABC algorithm.Mahmood [11] illustrated a creative method for path planning.The improved approach is created using the glowworm swarm optimization technique and adaptive dimensionality representation.The enhancement required adjusting the number of the current node's neighbors from which one will be chosen as the next current node in which the robot will move.Abhishek [12] proposed two hybrid meta-heuristic algorithms, one based on PSO with HSA and another based on PSO with GA for UAV three-dimension path planning in complicated obstacle-filled environments.The proposed hybrid algorithms gave a better-optimized path.Cheng [13] contributed significantly to the acceleration of convergence and acquisition of the shortest path of the PSO algorithm for robot path planning.Utilizing a new adaptive inertia weight, the GWO, chaos, and the conventional PSO.

Constraint Optimization
Constraint optimization issues involve a variety of design aspects.Constraints are crucial to engineering design since they are frequently imposed in problem statements and can be challenging to satisfy, making search efforts laborious and ineffective.Any stochastic search algorithm's freshly generated solution might not meet the restrictions of the problem after optimization.The penalty method, which penalizes impractical solutions in order to ensure feasible ones, is now the most widely used method for addressing the limitations of a problem.A bracket operator penalty term can be added to the objective function based on the constraint violation, and a penalized function is created.Due to their straightforward structure and implementation, evolutionary algorithms (EAs) have been developed to handle constraint optimization and are having increasing interest.Due to the fact that the initial EAs are essentially unconstrained optimization techniques when managing constraint optimization, they are required to have an additional mechanism to deal with constraints.Several constraint-handling strategies have been proposed, one of them is the penalty function which is used in this reseaech.

The Objective Function
Since the task here is path planning, finding a path that is free of any obstacles is required.First, the robot is considered at the start point with coordinate (x s , y s ) and the target point with coordinate (x t , y t ); the algorithm is responsible for finding the line joining the two points with obstacle free.The constraint here is the minimization of the total path without any touch of any obstacle.The Euclidean distance is used to calculate the path length, so the minimum path should approach this distance so the path found should be compared with this distance:  = ( −  ) + ( −  ) (1) Where,  is the path length between the source and the target.The path length between the robot and the obstacle is found since it should take care of this distance and not to exceed it when going toward the obstacle. = ( −  ) + ( −  ) (2) Where,  is the path length between the source and the robot. ,  are the obstacle coordinates and  ,  are the robot coordinates; this distance should be calculated in every iteration.
For a robot to move from its position point to the target point in the existence of an obstacle in this path, it should pass in an intermediate point, which is away from the obstacle, as shown in The original objective function deals just with static obstacles.To deal with static and dynamic obstacles, the function should be changed to handle moving obstacles and not collide with the robot.Thus, a penalty function is added to the objective function, and the optimization is changed to the constraint optimization shown in Equation 4: Usually, the penalty function is taken as a positive value.The penalty function here depends on the obstacle that lies in the path, and the size and shape of the obstacle should be taken into consideration then; choosing the penalty value is chosen so that the penalty value is added to the circumference of the obstacle so that the robot can avoid the obstacle.The robot may come closer to the obstacle but does not collide.

The Proposed Algorithms
In order to have an algorithm that deals with dynamic environments, constraint optimization is used with two different algorithms first one is the modified ABC algorithm, and the second is the Adaptive Constraint PSO

Modified ABC algorithm
The ABC algorithm was created for unconstrained optimization problems.Since ABC is expanded to find the practical ideal answer to an issue, it should address two difficulties, which are the balance between infeasible and feasible solutions and the balance between diversity and convergence.
We modified the initialization and scout phases in the Modified ABC algorithm.Only the first initialization of food sources is entirely random during the startup phase.Other startup phases start with the food source from the previous algorithm run with the highest fitness value as the first new food source.So that the algorithm runs are not entirely independent from one another.Therefore, exploitation of the good sources can be increased, which makes the values closer to the good or efficient solutions.In order to increase the exploitation, the scout bee's phase was changed.In the scouting phase, the algorithm checks every possible solution.If the solution is not feasible, the food source is replaced with a new randomly produced solution (the random values).A penalty function for constraint optimization is used, enabling the algorithm to deal with moving obstacles.

Adaptive Constraint PSO
The PSO is a population-based algorithm.In the original PSO, at each iteration, the swarm of particles enters the objective function, and personal and social characteristics are compared to the fitness function to achieve a high convergence rate.Each iteration updates the velocity of each particle.The velocity and position of each particle are updated according to the equations ( 5) and (6).
[v(i, j)] = [w * v(i, j) + c * rand( ) * (partb(i, j) − x(i, j) … +c * rand( ) globb(i, j)x(i, j) ] (5) Adaptive means that the algorithm can accept the change for any parameter in the velocity of Equation ( 5), such as the inertia weight or the acceleration parameters.Our modification is based on changing the velocity continuously in each iteration, and the position is changed accordingly since the inertia weight's big value influences the c2 term.In contrast, the c1 term is affected by the inertia weight's small value.The PSO algorithm's search capabilities are automatically increased by continuously changing the inertia weight.The inertia controls the velocity and balances the global and local search.It can be varied in many ways, but generally, the inertia value needs to be large at the beginning to enhance the global search and then decrease to enhance the local search.In particular, many ways to change the inertia exist, a linearly decreasing equation as follows : () =  − *  (7) Where w(t) is the inertia according to the iteration reached, wmax is the maximum value of inertia chosen, wmin is the minimum value of inertia chosen, itmax is the maximum number of iterations, and (it) is the value of iterations reached.The flowchart of the algorithm is shown below.The penalty function here is a positive integer; since the objective function is a distance, the penalty function is a distance.This distance is added in both algorithms to make the path safer for the robot so that it does not collide with any obstacle.

Results
In order to deal with a constraint problem, the modified ABC is used since the problem here is a constraint one.ABC has a slow range of convergence since ABC's dependency on random values, even when it gets into the iteration, makes it far from the sufficient solutions and needs more time to reach the sufficient one, that the position used inside the iteration is altered in order to converge the algorithm.To make a step of convergence for the algorithm, the scout bees' position is initialized as the position of the last run inside the iteration.
The PSO algorithm's search capabilities are automatically increased for the adaptive constraint PSO by continuously changing the inertia weight.The inertia controls the velocity and balances the global and local search; it can be varied in many ways.In general, the inertia value needs to be large at the beginning to enhance the global search and needs to be decreased to enhance the local search.
The two algorithms were successful in path planning in all cases looking.The results in Table (1) show that the modified ABC has a standard deviation value that can't be dismissed, which means the algorithm solution is ranging during the iteration in a big space of solutions, even if it was successful but still have a slow convergence compared to PSO.
The cost for the adaptive constraint PSO was less than the modified ABC.The PSO could deal better with the environment; it gave a path length between 1 and 3 segments in all cases.Figure (5) shows the average cost for both algorithms; the first row is for the modified ABC, the second one is for adaptive constraint PSO, the first column is for one obstacle, the second one is for two obstacles, and the third is for five, From results the modified ABC needs a high iteration to reach the optimal path.It still has a slow range of convergence.In order to find the velocity that the algorithm can deal with, the size of the obstacle should be considered.The obstacle radius  with the distance moved in a certain time  , the ratio of the distance moved to the radius of the obstacle is taken as a reference.∆ = (8) Where ∆ is the distance factor, it is the distance moved relative to the radius of the obstacle; this factor is unitless, it indicates the change of obstacle position in a certain time.The algorithms can succeed in dynamic environments with obstacles with a limited velocity since the two algorithms deal with static cases, but the modification improved the algorithms, and the penalty function gave them the ability to deal with moving obstacles.

Conclusions
Path planning in a dynamic environment needs a suitable path planner to determine how to move with no collision; it needs a special optimization to have the shortest possible safe path length in a short time.This paper proposes constraint optimization for path planning in dynamic environments.ABC and PSO are designed to deal with static environments where a modification was done.For ABC, the exploitation of the sound sources was increased to decrease the time needed, but for PSO, an adaptive version was used, and a penalty function was used to make the algorithms able not to collide with obstacles.The results show that the two algorithms succeed in path planning but differ.The path was shorter in PSO, with a time needed for processing almost convergent to that for ABC, but the number of iterations needed to reach the optimized solution is less for PSO.Finally, both algorithms have a limit for the velocity of obstacles that they can deal with.

Figure ( 4 )Fig. 4 .
Figure(4) shows the paths taken by the algorithms in all cases; it can be noticed from the figure that the modified ABC took longer paths in all cases.modifiedABC

Table 1 .
modified ABC and adaptive constraint PSO results.

Table 2 .
Results of proposed path planning methods.