Abstract

Mobile robots have been widely used in various sectors in the last decade. A mobile robot could autonomously navigate in any environment, both static and dynamic. As a result, researchers in the robotics field have offered a variety of techniques. This paper reviews the mobile robot navigation approaches and obstacle avoidance used so far in various environmental conditions to recognize the improvement of path planning strategists. Taking into consideration commonly used classical approaches such as Dijkstra algorithm (DA), artificial potential field (APF), probabilistic road map (PRM), cell decomposition (CD), and meta-heuristic techniques such as fuzzy logic (FL), neutral network (NN), particle swarm optimization (PSO), genetic algorithm (GA), cuckoo search algorithm (CSO), and artificial bee colony (ABC). Classical approaches have limitations of trapping in local minima, failure to handle uncertainty, and many more. On the other hand, it is observed that heuristic approaches can solve most real-world problems and perform well after some modification and hybridization with classical techniques. As a result, many methods have been established worldwide for the path planning strategy for mobile robots. The most often utilized approaches, on the other hand, are offered below for further study.

1. Introduction

Since the last decade, mobile robots have been widely used in various industrial sectors. Not limited only to manufacturing industries, mobile robots are now expended in agriculture, space, military, medicine, education, rescue, and many more [1]. A mobile robot can navigate intelligently in any environment [2]: static, dynamic, uncluttered, uncertain, and many more. Navigation is a technique for moving a robot from one location to another in a variety of settings. Path planning entails determining the most efficient and collision-free route from the starting point to the destination. It is an essential task for mobile robot navigation [3]. Finding a safe path planning for a mobile robot that travels the shortest distance, follows the smoothest path, and consumes the least amount of energy and time is a prerequisite for developing mobile robot systems. Thus, the appropriate choice of optimization performance is a crucial phase in mobile robot path planning.

This research uncovers a literature review of alternative path planning and mobile robot navigation methodologies. The central difficulties in mobile robots are navigation and path planning, which have been the subject of decades of research. As a result, several methodologies were presented and utilized in the mobile robot path planning problem. The strategies for optimizing mobile robots may be divided into two groups: nondeterministic or classical approach and deterministic or heuristic approach. The classical techniques are Dijkstra algorithm, artificial potential field, probabilistic roadmap, and cell decomposition. The heuristic approaches are, for instance, fuzzy logic, neutral network, particle swarm optimization, cuckoo search optimization, genetic algorithm, and artificial bee colony. Figure 1 shows the overall organization of the optimization techniques used by numerous researchers.

In addition, hybridization approaches have recently been used in path planning issues for mobile robots to get better results than any other method, called evolutionary algorithms, such as hybridization of fuzzy and nondeterministic algorithms or hybridization of neural networks and nondeterministic algorithms [4].

2. Classical Approach

Classical methods were presented and established in the 1980s and 1990s. Before developing the heuristic approach, classical approaches were often used by researchers to solve path planning problems [5]. However, the main issue with this method is that it has a high processing cost and fails to adapt to the environment’s unpredictability, which is why it is rarely adopted for concurrent performance [1]. This section presents a few classical approach methods that are popular in its class such as Dijkstra algorithm, artificial potential field, probabilistic road map, and cell decomposition.

2.1. Dijkstra’s Algorithm

Edsger Wybe Dijkstra introduced Dijkstra’s algorithm (DA), the Dutch scientist, back in 1956 and published in 1959 [6]. The shortest path issue between one node and another in a directed graph is solved using this method, one of the most commonly used techniques [7], representing discretized workspace roadmaps [7]. This algorithm is regularly applied in path planning. DA is a well-known strategy; however, it is less valuable when the starting and goal sites are far apart [8]. Nevertheless, Nato and Sato [9] devise an expanded DA to counter the disadvantage. This method is also used in an algorithm to find the shortest evacuation path. It works by finding the maximum value. The weight of each edge in the graph, the distance between points, must have a positive value (weight more and equal to zero). Below are the following steps:(1)Set all distances to infinity and space to zero (0) except for the beginning point.(2)Make all nodes, including the initial point, nonvisited.(3)Assign the current node “C” to the nonvisited node with the shortest current distance.(4)For each of the current node’s neighbours “N,” multiply the current distance of “C” by the weight of the edges linking “C” and “N”. Set it as the new current distance of “N” if it is less than the current distance of “N”.(5)Check the box next to the current node “C” to indicate that it has been visited.(6)Repeat steps 3–6 until the desired point has been reached.

Kirono [10] used DA to determine the vehicle routes on toll roads. The pseudocode used in [10] is as in Figure 2.

Amaliyah et al. [11] use the DA to determine the shortest distance between cities on the island of Java. In Broumi et al. [12], this method has been redesigned to deal with the situation when most network parameters are unknown and expressed as neutrosophic values. Fuhou and Jiping [13] presented a shortest path algorithm for massive data based on DA. They proved that DA could save much memory and be suitable for use in a network with massive nodes. An improvement of this method and its application in path planning have been presented in Fan and Shi [14], and it has been shown that the upgrades are reasonable and practical. Finally, in [15], the path planning problem in rectangular mesh networks was addressed by finding the shortest link between each pair of sites using a Dijkstra-based greedy algorithm.

2.2. Artificial Potential Field

Khatib [16] introduced the artificial potential field (APF) method for the mobile robotics problem by believing the divergences between attraction and repulsion forces help robot movement inside the environment. The idea of the APF is that the mobile robot movements are within the field of forces. The attractive force attracts the robots to reach the goal position and repulsive force keeps them away from each obstacle [17], as shown in Figure 3.

One drawback of this APF method is that local minima are present in the field, so the planner might get trapped in local minima. Thus, to keep the robot from being stuck in local minima, Cheng and Zelinsky [18] used high-magnitude attraction forces for brief periods of time at random places. A multipoint APF has been utilized in [19] to solve obstacle avoidance problems. The use of potential fields has been performed out by Luis and Tanner [20] for obstacle avoidance as well as motion planning in a nonholonomic mobile robot. The author in [21] suggested using repulsing force to lessen the oscillations and reduce a collision when the obstacles are too close to the target. The APF was used in [22] to offer a chain of communication relays in a dynamically changing environment with obstacles present between unmanned aerial vehicles (UAVs). Dai et al. [23] proposed a hierarchical APF method for UAVs’ path planning in clustered environments.

2.3. Probabilistic Roadmap

Kavraki et al. [24] first introduced the probabilistic roadmap (PRM) in 1996 with the central objective mind providing a path for a robot in a static workspace. PRM has the ability for multiquery planning [25]. Road maps refer to the connectivity of the robot’s configuration free space plotted on a 1-dimension curve or lines. The roadmap has likewise been named highway strategy [1], withdrawal approach, and skeleton system [3]. It is used to construct road maps over the visibility graph as well as the voronoi graph [1] to establish the shortest path from the initial to the destination place. A PRM visibility graph and a Voronoi graph are shown in Figure 4 below.

In the visibility graph, the obstacles are represented as polygons [15]. The vertical of the polygonal obstacles have nodes connected. Therefore, road maps will be derived as near as possible to obstacles, and path length will be minimized. In the Voronoi graph, the plane’s edges are separated by using two nearby places on the obstacle’s edges as central points, and then the region is split into subregions. The road maps keep as distant as possible away from obstacles; thus, the path is safe but longer than the visibility graph [2]. A slight variation in PRM was produced to determine the shortest path using the slow collision checking approach in [26]. In [27], a hybrid method to achieve path optimality was provided by combining the Voronoi diagram with the visibility graph in PRM. Also, [28] combined the Voronoi diagram and visibility graph to get the optimal path. An elastic PRM was presented in [29] for autonomous mobile robot motion planning. Mika [30] proposed enhanced sampling in PRM to minimize the configuration space. The PRM was utilized to test the navigation in a 3D environment for UAVs [31] and simulate multirobot motion planning [32].

2.4. Cell Decomposition

The cell decomposition (CD) technique provides a fundamental idea for classifying the free space and occupied space by obstacles between geometric areas or cells [2, 3]. The breakdown of open space into a series of simple sections is called a cell [2]. The goal of CD is to reduce the search area by adopting a cell-based representation. In addition, the aim is to produce a succession of collision-free cells from the beginning position to the target point [33]. The initial CD steps can be summarized as follows [31]:(1)Divide open regions into basic, related areas known as cells.(2)Next, figure out which open cells are connected and create an availability graph.(3)Next, identify the cells of the underlying and objective units and search the availability chart for a route that connects the underlying and objective cells.(4)Finally, using an appropriate searching method, find a path within each cell from the cells grouping.

Seda [34] in 2007 recommended the following steps for CD:(1)Separate the search area into cells, which are corresponding regions.(2)Use neighbouring cells to make a chart. Vertices signify cells and edge link cells with a standard limit in such a graph.(3)Create a succession of collision-free cells from the start to the objective cells by identifying the goal and start cells.(4)Provide a route from the cell series that has been constructed.

In short, this method differs the area into nonoverlapping grids called cells and uses connectivity grids for crossing from one cell to another cell from start cells to goal. This method is classified as exact, approximate, and probabilistic CD depending on the assignment of the borders between cells [3]. In an exact CD, the decomposition is lossless [35], and the form and size of cells are not fixed [1]. On the other hand, the approximate CD has an approximated decomposition result as actual maps [36], and the grid has a specific shape and size [1]. Finally, the probabilistic CD is like an approximate CD, excluding the cell borders, which do not represent any physical meaning [37]—Figures 5 and 6 show CD systems in three classes.

The probabilistic CD was presented in [37] for a mobile robot path planning that brought milk from the fridge to the kitchen table and provided a comparison study between rapidly random trees. The CD was compared with PRM in [34] and showed that PRM could purge CD disadvantages. Tunggal et al. [38] produced the fuzzy logic and CD to work in an ambiguous environment for real-time operation. In [39], a sensor-based CD model was developed to cope with an unknown workplace for mobile robot duties by integrating it with a laser scanning approach to avoid obstacles. Gonzalez et al. [8] presented comparative studies on the trajectories resulting from cell decomposition methods. Finally, a hybridization of fuzzy logic with the CD method was shown in [40] to apply to aerial vehicles. Table 1 summarizes a few works done in the mobile robot navigation field using a classical approach.

The table above investigates the benefits and drawbacks of classical approaches. Dijkstra’s approach is thought to be simple and efficient enough to be used for somewhat big problems. However, it cannot be employed in negative weight without costing a significant amount of time and wasting critical nodes. Artificial potential field, on the other hand, have a basic structure and are straightforward to execute. It may also be highly efficient. Local minima might occur when the robot passes through a bounding area. Roadmaps are possible in both simulated and real-life conditions for known environments, but they are inefficient when dynamic constraints and diverse limitations exist. As with APF, cell decomposition is simple to construct but results in infeasible solutions and complexity. As a result, numerous researchers have employed classical algorithms, which may be applied in a wide range of situations. Generally, classical approaches lack flexibility and adaptability and are inadequate for dynamic environments. Therefore, heuristic approaches are provided to solve the flaws of these approaches.

3. Heuristic Approach

A heuristic approach is created for cracking the problems more quickly [41]. The method has proven its effectiveness and has become widely used in autonomous navigation [6].

3.1. Fuzzy Logic

Fuzzy logic (FL) is a technique for persuading a person's intellect. FL is a unified approximation (linguistic) method for concluding uncertain facts using uncertain rules [42]. In 1965, Lotfi A. Zadeh was the first person who introduced the idea of the FL system [43]. Yet, his vision was expanded later in many fields as FL serves as a formal plan to represent and execute human experts’ heuristic intelligence and observation based manners [3, 33]. Figure 7 is an example of a primary FL controller used in [1].

Hex Moor [44] was the first to apply the FL concept to robotic route planning and obstacle avoidance. The Takagi-Sugeno technique was then used to construct fuzzy robot motion planning [45]. Similarly, in [46], fuzzy robot motion planning was proposed utilizing the genetic algorithm with a fuzzy critic. A hybridization algorithm employs FL and GA for mobile robot path planning problems given in [47]. Wang and Liu [48] created the FL route planning approach in an unknown environment. A mobile robot path planning algorithm based on FL and neural networks was designed in [49]. Finally, Chelsea and Kelly [7] presented an FL controller for UAVs in a 2-dimensional environment, while Lei et al. [50] did so in 3-dimensional space with full cell or battery hybrid power. Then, the navigation in 3-dimensional space also was presented in [51] using FL for aerial robots and [52] for underwater robots. In addition, the Mamdani type-based FL controller tracks the moving obstacles for a nonholonomic wheeled mobile robot [53].

3.2. Neural Network

A neural network (NN) is an intelligent system inspired by the natal sensory system, which was initially developed by [54] for mobile robot route planning. It mimics the neurons in the human brain [55]. The NN has been used in various domains, including discovery, search optimization, pattern recognition, image processing, mobile robot route planning, signal processing, and many more. NN consists of different plain and highly interconnected processing elements that relocate the data to external inputs [1]. The input layer, the target, and the output of the NN path planning are shown below in Figure 8.

Yangmin and Xin [56] combine the adaptive NN with the particle swarm optimization to apply for mobile robots where particle swarm optimization works as a path planner that provides a smooth path for the adaptive NN controller, which drives the mobile robot. Zhu and Yang [57] proposed the NN method for dynamic task assignment for multirobot. Singh and Parhi presented the NN technique to enable mobile robots to travel in a known or unknown environment in [58] and designed multilayer feed forward NN that controls the steering angle in [59]. A novel hybrid approach combining the NN with the FL was made in [60] for mobile robot navigation. Likewise, in [61], the author presented a hybridization approach between the FL and the NN for manifold mobile robot navigation in a chaotic condition. The basic NN was modified in [62] to form a guided autowave pulse coupled neural network (GAPCNN) for mobile robot movement in static and dynamic environments. The GAPCNN’s purpose is to get fast parameter convergence for the mobile robot. Otherwise, the NN method has been utilized in mobile robot path planning problems for aerial robots [63] by using MATLAB as shown in Figure 9, humanoid robots [64], underwater robots [65], and industrial robots [66], respectively.

3.3. Particle Swarm Optimization

Particle swarm optimization (PSO) is an algorithm in path planning established by Kennedy and Eberhart in [67]. The social behaviour of a group of birds, a school of fish, or a flock of animals finding food and adjusting their environment as well as dealing with predators [68] is used to simulate this nature-based heuristics approach—these mimics label every population member as particles, representing a potential solution for the problem. PSO is identical to GA in that the procedure starts with a randomly initialized population [69]. However, unlike GA, each possible solution is given a random velocity. Thus, the attainable solutions referred to as particles move around the problem space. As shown in Figure 10, the basic PSO concept is specifically based on their placement and velocity in the search area.

The PSO is used in numerous fields of mobile robot path planning for navigation by a humanoid robot [70], an industrial robot [71], a wheeled robot [72], an aerial robot [73], and an underwater robot [74] in an unknown and complex 3D environment. Zhang and Li [75] applied PSO to the mobile robot in the dynamic environment to optimize its travel time. A new path planning method based on the binary PSO algorithm has been presented in [76]. The authors have proven that this approach rectifies the premature convergence problem and obtains a shorter path length and convergence speed near GA. The exact contribution was proposed in [77]. The simultaneous localization and mapping (SLAM) issue for a MR was solved in [78] using a modified PSO and a fuzzy evolutionary approach. Tang, Li, and Jiang [79] addressed the SLAM problem for MR navigation by using a multi-agent particle filter in an unknown environment. The PSO algorithm for multiple MR was presented based on navigation in [80]. The PSO and Darwinian PSO (DPSO) systems were modified in [81] for multiple MR navigation in the real world to derive mutual communication problems and collision-free paths. Then, Chen et al. [82] discovered that a human expert’s control strategy could learn depending on the wall-following robot navigating in the vague environment using a multi-category classifier. In [83], a sensor-based PSO-fuzzy type 2 model for multiple MR navigation was presented. At the same time, [84] derived an enhanced PSO and a gravitational search algorithm that have been combined for multiple MR navigation to develop an optimal path in a cluttered environment. Yang et al. [85], on the other hand, improve the PSO approach by taking into consideration the identification of the parameter for the Preisach model as the hanging issue for decades. Li and Chou [86] developed a self-adaptive system PSO technique (SLPSO) for solving the MR a minimization multiobjective optimization problem and path planning issue.

3.4. Genetic Algorithm

Genetic algorithm (GA) is an optimization technique that refers to natural genetics and natural selections that Bremermann first discovered in 1958 [87]. This fundamental idea led the GA to mimic the concept of the survival of the fittest. The fittest value represents every member of the population. The most vital members of the population will survive, while the weaker members will be abandoned. As per their fitness value, the surviving members allow the genes to be passed down to the next generation by bio-inspired operators like crossover, mutation, and selection. This randomized structure information was combined to create a search algorithm that produced solutions to the given problems to develop feasible paths. The population can be said to be in a binary string arrangement (refer to chromosomes). Any bio-inspired operator must sustain population diversity. By preventing early convergence, the chromosome’s population is switched to another. Once the populace converges, the algorithm will be terminated [1]. The basic GA is outlined as follows:(1)Primary population - Random populations are initiated with string and the objective function.(2)Produce a new population based on a Darwinian evolutionary theory with three genetic operators, as shown in Figure 11.(3)Continue to produce a new population until stop conditions are reached as follows [15]:Time limit: It has been operating for a certain amount of timeFitness value: It has reached the satisfactory fitness level required for the algorithmGenerations: It has been generated the maximum number of generations

Professor J. Holland initially proposed the application of GA in computer science in 1975 [88]. Shibata and Fukuda [89] provided GA in a static environment for the navigation of MR. The path planning strategy in a static environment using GA for multiple MR is presented [90, 91]. A matric-binary codes-based GA was proposed in [92] for a static and dynamic environment for MR navigation. Navigation in a dynamic environment with static and obstacles was addressed in [93] for a multi-MR. In the face of shifting impediments, navigation in an uncertain environment is presented in [94]. The GA is used in numerous fields of mobile robot path planning problems for navigating a humanoid robot [95] and the underwater robot navigation challenge in 3D path planning [96] and aerial robot [97, 98]. The researchers also utilized the hybridization of GA with other approaches for MR navigation for better outcomes in path planning problems like GA-PSO [99], GA-FL [100], and GA-NN [101].

3.5. Cuckoo Search Algorithm

Yang and Deb [102] acknowledged the cuckoo search algorithm (CSA) as a path planning method in 2009. This method mimics the cuckoo species’ swarm intelligence or lackadaisical conduct when depositing their eggs in other host nests. Three main behaviours of CSA are as follows:(a)In each iteration, each cuckoo is only permitted to lay one egg at a time in a randomly selected nest based on Levy flights.(b)The nest is full of high-quality eggs passed down to the next generation (elitism).(c)The available host nests are rigid. The probability for the host birds to discover the egg laid by a cuckoo in each nest is . The host bird has the option of discarding the egg, dumping the nest, and starting over.

CSA is considered a freshly developed heuristic algorithm in mobile robot path planning; hence, its use is limited. A hybrid approach between CSA and differential evolution (DE) for a 3D world that is unknown was proposed by Wang [103] to increase the rate of global convergence. Xie and Zheng [104] also suggested the hybrid approach by combining the CSA and DE algorithm to solve the 3D aerial vehicle path planning. In an unfamiliar environment for multiple mobile robots (MR) navigation, [105] introduced a hybridization of CSA and an adaptive neuro-fuzzy inference system to create improved outcomes. The algorithm is shown in Figure 12.

The authors proposed a stand-alone CSA to navigate the wheeled MR in a static, partially unknown environment. The simulation and experimental in real-time only showed a small deviation error. Besides, the application of CSA can be found in vehicle path planning problems [107] and scheduling [108].

3.6. Artificial Bee Colony

Karaboga [109] developed the artificial bee colony (ABC) technique in 2005, swarm-based intelligent foraging behaviour of honeybees activities for searching their food. Three rules in the ABC model are as follows:(a)Employed foraging bees: Employed bees will be sent to food sources (the nearest colony) and scanned for food quality.(b)Unemployed foraging bees: After receiving information from employed bees, unemployed bees observe the preferred food sources and evaluate the rich sustenance sources.(c)Food sources. The forager’s bees belonging to rich sustenance will distribute to the feasible food sources while foragers surrender with weak food sources causing objectionable criticism.

Saffari and Mahjoob [110] used the ABC algorithm for MR navigation in a static environment through simulational experiments. The author [111] proposed using MR interior navigation in a static environment to determine the best path in real-time.

Ma and Lei [112] proposed the algorithm for a real-time, dynamic environment. The application of the ABC algorithm in a static environment for multiple MR can be seen in [113, 114]; wheeled MR was tested underwater [115]; autonomous vehicle routing problem [116]; and aerial robot [117]. The modified ABC algorithm has been performed for the unmanned combat aerial vehicle (UCAV) navigation problem in [118] to obtain an optimal path in a 3D world and for the unmanned helicopter in [119] to undergo the challenge mission. With the help of swarm intelligence, [120] offered a strategy for the approach to the improvement of ABC to tackle the necessary difficulty in mobile robot path planning. Table 2 summarizes a few works carried out in the mobile robot navigation field by using a heuristic approach.

Although the heuristic technique was developed to address the limitations of the classical approach, it still has advantages and disadvantages. Fuzzy logic may lessen reliance on environmental information while also providing strong adaptability and performance. However, because fuzzy rules are frequently set by experts, robots are incapable of learning and have limited flexibility. Neural networks may perform tasks that a linear programme cannot, but large networks require a long processing time. Particle Swarm Optimization is simple to build and requires fewer parameters; however, it has a problem regulating parameters. Multiobjective optimization and stability are supported by genetic algorithms. It derives from a high computation time. Cuckoo Search is also simple to implement because only one parameter is required. However, it can only be utilized to remedy persistent issues. The search space is restricted by the initial solution in a bee colony.

4. Discussion

Among the earlier cultivated methods, heuristic approaches are comparatively novel and have significant scope in mobile robot navigation. It has been observed that researchers are now working on many optimization criteria in order to get the best possible outcomes. Hybridization of the algorithms with the optimal combination of optimization criteria results in the greatest possible performance. A long time ago, most of the studies were conducted using classical approaches. A few limitations were identified for the classical approach, including trapping in local minima, computational intensiveness, demand in various environments, and the inability to handle maximum uncertainty. Therefore, to overcome these drawbacks, researchers come up with heuristic approaches. Classical approaches are usually utilized in a known environment, while heuristic approaches are adopted in an unknown environment due to their efficiency over classical approaches. It is observed that heuristic methods can solve most real-world problems and perform well after some modification and hybridization with classical methods for better results. Heuristic approaches have been widely used over a 3D workspace for underwater, unmanned, aerial, and humanoid, while classical approaches are not intelligent enough for independent path planning in a 3D environment.

5. Conclusions

This paper discusses the most often used classical and heuristic techniques for autonomous mobile robot path planning. The Dijkstra algorithm, artificial potential field, probabilistic roadmap, and cell decomposition were among the classical approaches presented, as were heuristic approaches such as fuzzy logic, neural network, particle swarm optimization, genetic algorithm, cuckoo search algorithm, and artificial bee colony. There is a lack of rigorous study in the prior literature. The previous research has focused primarily on static and dynamic obstacles, respectively. Very little research has been carried out on a variety of obstacles to evaluate the problem adequately. Thus, the previous work can be extended by focusing on the type, shape, or location of obstacles using appropriate approaches.

Data Availability

No data were used to support the findings of this study.

Conflicts of Interest

The authors declare that they have no conflicts of interest regarding the publication of this paper.

Acknowledgments

The authors would like to thank the Ministry of Higher Education for providing financial support under Fundamental Research Grant Scheme (FRGS) No. FRGS/1/2019/STG06/UMP/02/16 (University reference RDU1901214).