This paper presents a development of a novel path planning algorithm, called Generalized Laser simulator (GLS), for solving the mobile robot path planning problem in a two-dimensional map with the presence of constraints. This approach gives the possibility to find the path for a wheel mobile robot considering some constraints during the robot movement in both known and unknown environments. The feasible path is determined between the start and goal positions by generating wave of points in all direction towards the goal point with adhering to constraints. In simulation, the proposed method has been tested in several working environments with different degrees of complexity. The results demonstrated that the proposed method is able to generate efficiently an optimal collision-free path. Moreover, the performance of the proposed method was compared with the A-star and laser simulator (LS) algorithms in terms of path length, computational time and path smoothness. The results revealed that the proposed method has shortest path length, less computational time and the best smooth path. As an average, GLS is faster than A* and LS by 7.8 and 5.5 times, respectively and presents a path shorter than A* and LS by 1.2 and 1.5 times. In order to verify the performance of the developed method in dealing with constraints, an experimental study was carried out using a Wheeled Mobile Robot (WMR) platform in labs and roads. The experimental work investigates a complete autonomous WMR path planning in the lab and road environments using a live video streaming. Local maps were built using data from a live video streaming with real-time image processing to detect segments of the analogous-road in lab or real-road environments. The study shows that the proposed method is able to generate shortest path and best smooth trajectory from start to goal points in comparison with laser simulator.

An essential feature of intelligent vehicles is the capability of autonomous navigation from a start to a certain goal position without human interference. The proficiency in navigating through and carrying out assignments in an unpredictable as well as different environment is an important attribute required from of autonomous robots. Autonomous robot navigation is a process designed with the ability to avoid any hitch or obstacle while searching for a certain goal position which consist of four processes namely: mapping, localization, path planning and control as shown in

The environmental map involving the current and past environmental information interpreted by a global path planner was generally used in generating a low-resolution high-level path. Despite being an effective technique in finding an optimal path, it has some deficiencies when subjected to dynamic or hidden obstacles [

In local path planning algorithm, prior knowledge of the environment is not necessary. It solely provides from the onboard sensors a high-resolution low path in a fraction of global path information while working excellently in dynamic environments. In a tangled or long-distance environment, this method becomes ineffective [

Robot navigation is a process designed with the ability to avoid any hitch or obstacle to reach a certain position [

Based on the reaction of the obstacles in the environment, it can further be classified as either offline or static and online or dynamic motion planning [

Optimal solutions are achieved in complex working environment with or without accurate information of the robot in some existed works. There have been numerous achievements in the area of robot path planning [

The main contribution of this research is to propose a new path planning algorithm for robot navigation in both global and local environment to find the smoothest path within the shortest time from start to goal positions within a constrained environment. An additional optimization algorithm has been applied to find the most-optimum collision-free path by reducing the number of random points and the overall path length.

The current paper is organized as follows. Section 2 introduces some of the related works presented by researchers in the field of path planning. The methodologies proposed for mobile robot global and local path planning in this work are introduced in Section 3 while Section 4 demonstrates the effectiveness of the algorithm through a set of simulations in both local and global maps. Results were compared with two other previous works (A* and Laser simulator algorithm). Finally, Section 5 presents the conclusion of the obtained results.

Suppose the Mobile Robot (MR) moves from the Start Position (SP) to the Goal Position (GP) in an environment with static and dynamic obstacles to obtain certain performance criteria. The objective of a path planner is to find the optimal/near-optimal path for the mobile robot without any collision with obstacles exist within the environment.

There have been a lot of path planning methods (in both static and dynamic environments) proposed by researchers. Classical and heuristic approaches are the two major classes of path planning based on algorithmic classification [

Studies by Stentz et al. [

When there are lots of paths to get to the goal from the start point in a global and local environment, all previous methods will certainly attempt to stay clear of barriers and also look for the fastest path between the start and goal points [

A suitable path planning approach should determine the optimal path within the shortest period of time in the presence of obstacles. Optimal solutions are achieved in complex with/without accurate information of the robot's workspace environment. The path planning algorithms should address some challenges to overcome all conditions and uncertainties in real environments. These challenges can be summarized as follows:

It must follow the constraints and rules in the environments (increase intelligence)

It has a low computational cost (time consuming)

It has a low path cost (shortest path)

It finds an optimum path to reach the goal (one out of many paths to reach goal)

It is able to avoid collisions avoidance (obstacles)

However, none of the aforementioned approaches in section 2 except LS can deal effectively with challenge 1 (constrained environments such as roads and factories settings), where there are some rules and constraints that must be strictly adhered with. LS method presents a simulation and experimental evidence to drive robot in constrained environments. However it generates a zigzag path planning which is not suitable to be performed by mobile robot control system. Thus, a Generalized Laser Simulator is introduced in this paper to generate a smooth path in constrained environments with optimum, less computational, low path cost and avoiding obstacles. This paper will discuss in details the challenges 1–4, focusing on developing a novel algorithm for dealing with constraints in both local and global path planning. The algorithm can deal well with challenge 5, but it is out of scope of this paper and will be discussed in another paper.

The main objective of a path planner is to find the most optimum path for the mobile robot from start to goal positions by following the rules, adhering with constraints and performing obstacles avoidance during autonomous navigation within the environment.

This section describes a novel method, called generalized laser simulator, to find the optimal or near optimal collision-free path. It is an improved method based on Laser Simulator method which has been successfully applied in many works [

Create a 2D grid map of the robot's workspace environment.

Develop a mathematical model for wave generation at GLS-first stage that produces the suitable candidate points for the path of the mobile robot in a constraint environment.

Develop an additional optimization technique at GLS-second stage that selects the best suited points in step 2 and construct an optimal path (as the obtained path is not optimal path in terms of the total path length, time and smoothness).

The first step of path planning is to model the workspace environment into suitable map representation. In GLS method, the environment is modelled into an image-based map with geometrical polygons shapes. In the global path planning, it is required to obtain the map information of the workspace environment before robot path planning, and then plan an optimal path from the start to the goal positions. The map is represented in two-dimensional (x, y) image, where x and y are coordinates in the map plane. The concept of GLS path determination involves the use of the following specifications and assumptions in regards with workspace modelling:

The search environment is modelled in two dimensional state space X (x, y) and the surrounding environments borders are represented as polygons.

The robot's Cartesian coordinate system of the initial position S (

The robot can relocate to a free space in any direction in a time.

There are no other effects acting on the robot except the obstacles and constraints

The GLS method depends on generating a series of points as waves, starting from an initial position to target point, to detect the border of the environment and find the new position of the robot path. The waves will spread out until it hit the borders of the environment, i.e., the generations of waves will not be stopped until detecting the map borders as shown in

The wave must detect at least two borders to determine the robot path. However if the wave detects only one border of the environment (denoted A in

In order to generate the waves in effective way, 8 points (45 degrees apart) that form the wave circumference in four directions, namely; Top Row, Left Column, Right Column and Bottom Row as shown in _{r}^{0} between each two points).

To find the best candidate of the points, two concepts have been implemented:

The concept of minimum distance to the goal point

The maximum distance from to the nearest boundary.

The algorithm keeps generating waves when flag is less than two until it reaches a value of two (i.e., out of the four boarders it reaches two borders at least).

This minimum distance method checks the candidate points and finds out whichever amongst of them has the lowest distance to the goal position as shown in

As the points are not correlated with each other, the probability of each point is calculated using

It is also required to use another criterion before selection of the right path of the robot which is based on the index distance from a boundary. From start point, one can determine how much is the distance from the nearest boundaries in the right, left, top and bottom direction to the path's candidate point as shown in

To calculate the distance between the 8^{th} points and border in all directions,

Similar to the previous case, the points are not correlated with each other, thus the probability of each point is calculated using

It has minimum distance to the goal point

It has maximum distance from to the nearest boundary.

The best suited candidate point for the path is calculated based on the summation of probability in

This section introduces the path candidate selection and optimization method used to generate the shortest path from the whole candidate points that have been determined in the first stage. The optimized GLS is used to reduce the number of path points of the GLS between the start and goal points to obtain an optimal path. As shown in

In the optimization stage, it is aimed to find out the minimum distance the robot can move without colliding with any obstacle.

The optimization process starts by identifying the position of the current and chosen points. This is followed by arranging of all x values of the chosen points as a vector X based on ascending procedure. The same goes to y values, which are arranged as vector Y that contain the ascending values in y direction. The distance of all other points to the goal point are calculated in order to determine the minimum distance amongst all of them, taking note of the goal position with respect to the start point. If the goal is above to the start position, then they are in an incremental order. Otherwise, if the goal is below the start point then they are in a decrement order. So, by this way, the coordinate values in x and y directions are sorted for the selected points from start position with either increment or decrement to reach the goal position. Next, the current point is compared to the new chosen point to find if these points are matched which would result in ignoring to move to that point. In the case of mismatch, then the possibility of moving to next chosen point is checked without crossing a border or boundary. If there is no border, the robot will move to next chosen point, taking note that if there is an obstacle, the next chosen point is removed. In the case that there are obstacles between current and all next chosen points, one can just choose the 1st chosen point.

The constraints are used to describe the rules that are needed to be followed during the path finding process. If there are multiple paths in which the proposed algorithm could pass through to reach the target, the GLS will evaluate all the paths based on three criteria, namely; constraints function

The constraint function is activated if the flag value after twenty wave generation is less than two as is illustrated using the corridor environment in

The constraint function F(CR) is given by

F(CR2) is a function related to non-visited points. It can be given value 1 if the point is not previously visited as in

F(CR3) is a function related to the minimum distance to reach the goal. It can detect the direction of constraints in the left, right, up and down sides as in _{min}

The practical and simulation implementation of the proposed algorithm in both indoor and outdoor 2D-maps environments is presented in this section. It is implemented in two types of environments, namely; global and local environments. In the global environment, the map is completely known and the robot must move towards its goal within shortest path, smoothness path and adhering with constraints. In the local path planning, the mobile robot is supposed to navigate on the environment in real-time and reach the pre-determined goal while discovering and detecting the boundaries, constraints and finding the shortest path.

In this study, the proposed method has been tested under a series of simulations in 2D maps to exhibit its effectiveness. The resolution of maps is 500 × 500 pixels and all simulations were coded and run on MATLAB R2014b (64-bit win64) on a laptop with Intel(R) core (TM) i5 − 2450 M. The performances of the developed method have been tested on many different workspace scenarios with the presence of constraints. The starting and the goal points have been positioned in different locations within the map's free space.

The red and green points signify the start (S) and goal positions (G), respectively. The algorithm was simulated in each environment 30 times. The simulation results of GLS and optimized GLS are presented in the next subsections. Additionally, the performance of the proposed method is compared with the other paths algorithms.

It includes the result of GLS in the first (wave generations) and second stages (optimization process) as follows:

This sub-section presents the results of the proposed algorithm for generating feasible path between start and the goal points for all the workspace scenarios in 20 different environments (A-T) shown in

From

The previous generated paths in

In order to validate the efficiency of the proposed algorithm, the proposed algorithm performance was compared with LS and A* method which are closely related to the proposed study in many aspects. To assess the performance of the proposed algorithm, five different scenarios of 2D environments are used, in which each scenario is planned using the three algorithms and the results of them are then compared.

Total time (s) | Total distance (cell units) | Total steps | ||||
---|---|---|---|---|---|---|

Environment | Average mean | Standard deviation | Average mean | Standard deviation | Average mean | Standard deviation |

A | 3.49 | 2.16 | 16028.01 | 11485.61 | 687.85 | 493.23 |

B | 7.397883 | 2.499654 | 17426.66 | 6916.98 | 829.5 | 329.7491 |

C | 1.51513 | 0.904543 | 5183.811 | 3371.587 | 210.65 | 148.229 |

D | 4.856527 | 2.319019 | 12324.47 | 6300.236 | 534.8 | 291.6189 |

E | 3.128158 | 2.285607 | 4171.88 | 2383.552 | 177.5 | 116.2026 |

F | 1.098047 | 0.563622 | 4746.87 | 2535.354 | 185.35 | 106.643 |

G | 1.448327 | 0.427101 | 4220.996 | 1232.789 | 157.05 | 51.85313 |

H | 1.159161 | 0.327829 | 4224.931 | 1271.357 | 157.95 | 52.03314 |

I | 2.585672 | 1.324588 | 6788.883 | 3125.374 | 284.7 | 151.6295 |

J | 670.6869 | 49.00776 | 5288.626 | 4149.17 | 230.471 | 174.8259 |

K | 3.389841 | 1.543377 | 10103.01 | 4970.52 | 461.4 | 239.2546 |

L | 1.843801 | 0.607786 | 4622.6 | 1879.171 | 188.65 | 80.00767 |

M | 6.703311 | 2.781019 | 9358.801 | 3631.902 | 398.85 | 166.6218 |

N | 5.05459 | 2.087241 | 604.4122 | 56.18258 | 229.6 | 94.98442 |

O | 6.693598 | 5.861961 | 5746.415 | 4099.637 | 249.5 | 194.5072 |

P | 2.057467 | 0.699667 | 3786.218 | 1463.246 | 144.2 | 60.2616 |

Q | 2.796143 | 1.120419 | 7202.55 | 2923.673 | 286.25 | 124.1664 |

R | 1.969028 | 1.005467 | 5506.677 | 2321.088 | 212 | 99.21391 |

S | 2.762527 | 1.158696 | 4598.878 | 1637.503 | 179.95 | 71.72829 |

T | 1.714695 | 1.194143 | 6323.987 | 4965.695 | 266.9 | 224.3267 |

The specific quantitative analysis comparison between the algorithms in terms of computational time is illustrated in

It can be clearly concluded that the GLS has the best performance in both path length and computational time over all algorithms. In addition, the path of GLS is much smoother in comparison with A* and LS as shown in

Environment | LS | GLS | A* |
---|---|---|---|

A | 12.16 | 1.45 | 42.22 |

B | 27.55 | 7.14 | 15.16 |

C | 10.44 | 2.47 | 25.53 |

D | 35.22 | 3.60 | 33.10 |

E | 21.39 | 4.95 | 34.34 |

Environment | LS | GLS | A* |
---|---|---|---|

A | 725.21 | 435.17 | 821.22 |

B | 1100.14 | 762.02 | 1029.63 |

C | 862.90 | 589.53 | 746.41 |

D | 827.50 | 568.42 | 44.10 |

E | 967.63 | 642.89 | 553.49 |

The GLS and A* algorithms were both simulated in 2D-maps as shown in

The GLS approach was used for road environments detection within the indoor and outside environments to generate the path of the robot and localize it within its terrain. The local maps were built using camera to estimate the road border parameters such as road width and curbs in 2D. A Wheel Mobile Robot as shown in

Robot is able to find the path starting from the pre-defined start pose until it reaches the pre-goal position using the GLS approach for the local map that was identified by the camera.

The pre-processing and processing operations are applied to prepare the images for LS and GLS path planning as shown in

The GLS algorithm was applied to a real road roundabout in Universiti Malaysia Pahang (UMP) campus. The robot or autonomous vehicle has to adhere to the rules of the roundabout and chooses the right outlet of the roundabout according to the goal position. Thus, it needs a high evidence path planning algorithm to navigate the robot through the roundabout by following the required constraints.

In this paper, a novel algorithm, called Generalized Laser simulator, has been developed for solving path planning problem of a mobile robot in a two-dimensional constrained working environment under the presence of constraints. GLS algorithm is guaranteed to find an optimal path for a mobile robot through a sequence of waves that enable the robot to move in a known or unknown environment from the starting point to the goal point by adhering to any constraint. For this purpose, the proposed GLS builds all feasible paths between any arbitrarily selected start and goal locations in a discrete gridded environment within the first stage. It follows by an optimal collision-free path determination stage through reducing the number of path points and selecting the optimum path. In order to validate the performance of the developed method in comparison with existing path planning methods, a comparative study between the proposed algorithm, LS and A* in several different environmental scenarios with different complexity have been performed. Path length, smoothness, constraints, and time were considered as comparison parameters to evaluate the quality of the obtained paths. The comparison reveals that the proposed method can solve the path planning problem effectively and efficiently in terms of the computational times and the path length with smoothness path. In comparison to deterministic path planning algorithms like Laser simulator and A∗, it can be said that the proposed algorithm is able to find the best piecewise linear path. The two advantages of the proposed algorithm in comparison to the compared algorithms are time efficiency and the ability to find optimal path in any complex environment. As such, the proposed algorithm can be considered as a significant contribution to the field of expert and intelligent systems for mobile robot path planning. As a future work, the proposed algorithm should be extended to solve the multi-robot path planning problem in both 2D and 3D environments.