Next Article in Journal
Phased Array Ultrasonic Method for Robotic Preload Measurement in Offshore Wind Turbine Bolted Connections
Previous Article in Journal
Multi-Modal Spectroscopic Assessment of Skin Hydration
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Enhanced Robot Motion Block of A-Star Algorithm for Robotic Path Planning

1
Department of Computer Science and Engineering, University of Aizu, Aizu-Wakamatsu 965-8580, Japan
2
Division of Computer Vision and AI, Department of R&D, Chowagiken Corp., Sapporo 001-0021, Japan
*
Author to whom correspondence should be addressed.
Sensors 2024, 24(5), 1422; https://doi.org/10.3390/s24051422
Submission received: 29 January 2024 / Revised: 18 February 2024 / Accepted: 19 February 2024 / Published: 22 February 2024
(This article belongs to the Section Sensors and Robotics)

Abstract

:
An optimized robot path-planning algorithm is required for various aspects of robot movements in applications. The efficacy of the robot path-planning model is vulnerable to the number of search nodes, path cost, and time complexity. The conventional A-star (A*) algorithm outperforms other grid-based algorithms because of its heuristic approach. However, the performance of the conventional A* algorithm is suboptimal for the time, space, and number of search nodes, depending on the robot motion block (RMB). To address these challenges, this paper proposes an optimal RMB with an adaptive cost function to improve performance. The proposed adaptive cost function keeps track of the goal node and adaptively calculates the movement costs for quickly arriving at the goal node. Incorporating the adaptive cost function with a selected optimal RMB significantly reduces the searches of less impactful and redundant nodes, which improves the performance of the A* algorithm in terms of the number of search nodes and time complexity. To validate the performance and robustness of the proposed model, an extensive experiment was conducted. In the experiment, an open-source dataset featuring various types of grid maps was customized to incorporate the multiple map sizes and sets of source-to-destination nodes. According to the experiments, the proposed method demonstrated a remarkable improvement of 93.98% in the number of search nodes and 98.94% in time complexity compared to the conventional A* algorithm. The proposed model outperforms other state-of-the-art algorithms by keeping the path cost largely comparable. Additionally, an ROS experiment using a robot and lidar sensor data shows the improvement of the proposed method in a simulated laboratory environment.

1. Introduction

In the field of robotics, there are several challenging tasks; among these, one of the most important tasks is path planning, which determines how to reach a desired goal position. In this research area, the main objective is to develop an efficient path-planning algorithm by enhancing its performance in terms of searching time complexity, path cost, and search area [1]. As the application area of robot usage is increasing rapidly, the number of ongoing studies is also increasing in this area [2]. Generally, path-planning algorithms always search for the target position from the current position of the robot by keeping the overall path as short as possible. There are many path-planning algorithms for minimizing the path cost and finding the shortest path; however, for a path-planning algorithm, the importance of the three main factors, time complexity, path cost, and search area, mainly depends on the robot application [1]. Nevertheless, considering these factors, a general and efficient path-planning algorithm fits most robot applications.
Generally, path-planning algorithms are categorized into two groups based on the surroundings of the robot and the amount of known environmental information: global path planning and local path planning [3,4]. A robot with global path planning needs to partially know the environmental information, such as the map of the environment required to calculate the optimal route from the start position to the goal position. How well the algorithm partially knows the obstacle map and the effectiveness of the algorithm are evaluated by its ability to find a valid path if one exists [5,6]. In contrast, local path planning requires the robot to search its surroundings using sensors and find a path to reach the goal in an environment with unknown information [5]. As a result, local path-planning algorithms are typically more time-consuming and complex and may require the use of techniques such as segmentation and object detection to avoid obstacles [7]. Some commonly used local path-planning algorithms include the artificial potential field method, fuzzy logic method, and dynamic window method. In some cases, an ArUco marker-based searching system can make the process easier and more efficient [8]. In the global path-planning field, various algorithms are available, such as rapidly exploring random trees (RRTs), graph searching, tangent graph-based planning, and predefined path optimization. To test performance, simulators such as Gazebo or the ROS (Robot Operating System) platform provide the required features [9]. Our research focuses on the area of graph-based searching algorithms and performance testing in a simulator.
Graph-based searching algorithms are extensively used and considered highly effective in the field of global path planning. Some popular examples of graph-based search algorithms include A*, Dijkstra, depth-first search (DFS), and breadth-first search (BFS). Among these algorithms, A* is particularly notable for its completeness, efficient search area, and ability to use heuristics [10]. A* is a path-finding algorithm developed on the basis of the Dijkstra algorithm and is designed for use on weighted graphs, such as grid maps with obstacles. The algorithm works by constructing a tree of paths from the starting node and adding nodes as it searches the graph until it reaches the goal node or exhausts all options [10]. The final result is the shortest path found in the tree of searched paths. To search the graph or grid map, the algorithm requires an RMB to navigate the surrounding environment. The research goal is to develop an optimal RMB to improve the overall performance of the A* algorithm.
The robot motion block is a crucial element in path-planning algorithms such as A*, as it determines how the robot will search the cells surrounding its current position as it moves toward its destination [11]. The RMB is a matrix that specifies the cells that the robot should search in each iteration to find the goal node, starting from the start node. The performance and efficiency of the algorithm are significantly affected by the size of the motion block matrix, as it determines the search area of the robot in each iteration [12]. An inefficient motion block results in the robot searching for a larger number of cells to find the goal, increasing the time and space complexity. In the conventional approach, the motion block matrix comprises eight surrounding cell coordinates for the robot to search [11]. In each iteration, the A* algorithm adds the information about these eight cells to its search queue and continues to add cells proportionally until it reaches the goal or exhausts all options. This approach necessitates a significant amount of searching time complexity and many search nodes. Thus, keeping these limitations in mind, this study proposes an optimal RMB with an adaptive cost function for robot movement to improve performance. The proposed method considers eight neighboring coordinates with different searching distances and puts only the end node in the search queue, significantly reducing the number of search nodes and time complexity with a small path cost increase. As the path cost increases and the number of search nodes and time complexity decrease with different sizes of motion block, a formula is also proposed to decide the optimal path among different distances. Using the proposed method, the A* algorithm can find the goal position by avoiding obstacles with significantly improved overall performance. A comparison study with the conventional A* and similar state-of-the-art path-planning algorithms and experiments on an ROS platform validates the significant improvement of the proposed model. In addition, this study discusses the effectiveness, drawbacks, and applicability of the proposed approach in different application areas.
In summary, the key contributions of this research include:
  • This paper proposes an adaptive cost function for robot movement, which keeps track of the goal node, adaptively calculates the movement costs for quickly getting to the goal node, and reduces the number of search nodes.
  • An optimal RMB with an adaptive cost function is proposed to improve the performance of robot navigation by significantly reducing the searches of less impactful and redundant nodes. The reduced number of search nodes significantly improves the time complexity and the overall performance of the A* algorithm.
  • In this paper, a comprehensive experiment is conducted by customizing a large open-source dataset, including various types of grid maps, various map sizes, and several sets of source-to-destination nodes. This experiment validates the proposed model in terms of efficiency, robustness, and scalability.
  • Also, conducting experiments using the ROS platform and Gazebo simulator, this paper adds empirical evidence, strengthening the contributions and demonstrating the generalizability of the proposed model in real-world scenarios.
  • The quantifiable results, revealing substantial improvements in the number of search nodes and time complexity, distinctly position the proposed model as an advancement over conventional A* and other state-of-the-art algorithms.
The remainder of this paper is structured as follows: Section 2 provides an overview of related works, Section 3 presents the details of the proposed model, Section 4 offers the discussion and results of the experiments conducted, and Section 5 concludes the study.

2. Related Work

In the field of robotics, path-planning algorithms have been extensively investigated by researchers to improve their efficiency and reduce search costs. Despite considerable progress in this area, the performance of these algorithms still has room for improvement, and researchers are still exploring new ways to enhance their reliability and efficiency. This is particularly important in robotics applications, where fast and accurate path planning is essential for the safe and effective operation of robots that can handle increasingly complex environments and tasks while maintaining a high performance level.
In one study, Li Changgeng et al. proposed a new global path-planning algorithm called bidirectional alternating search A* (BAS-A*) for mobile robots [13]. Their algorithm combines the best features of traditional A* and bidirectional search algorithms to generate efficient and optimal paths. By utilizing a bidirectional alternating search strategy, the algorithm improves search efficiency by searching forward and backward path lists until they intersect. The algorithm addresses issues such as long calculation times, large turning angles, and unsmoothed paths in large task spaces. They introduced weighted heuristic functions, a filtering function for path nodes, and Bézier curves to ensure smooth and optimized path planning [14]. Simulation results demonstrated the algorithm’s efficiency and smoothness compared to other algorithms. Practical validation was also attempted on the TurtleBot3 Waffle Pi mobile robot [15].
Meanwhile, Szczepanski et al. presented a hybrid approach for the global path planning of mobile robots in variable workspaces [16]. Their approach comprised an offline global path optimization algorithm using the artificial bee colony algorithm and an online path-planning scheme that uses a graph created from the control path points generated in the offline part [17]. The online part uses the Dijkstra algorithm to find the shortest path [18]. Their proposed approach aimed to generate optimal paths for mobile robots in variable workspaces which are feasible even with new obstacles. Their approach was tested in the Matlab/Simulink environment and achieved a good result.
In another study, Sánchez–Ibáñez et al. conducted a comprehensive review that provided an overview of path-planning algorithms for autonomous mobile robots [19]. They highlighted the importance of autonomous capabilities in enhancing economic and safety aspects. With numerous path-planning algorithms available, the authors aimed to classify and analyze these algorithms, particularly for autonomous ground vehicles [20]. Their review covered environmental representation, robot mobility, dynamics, and various path-planning categories. The study served as a valuable resource for understanding the research conducted on path-planning algorithms, aiding in the selection of appropriate algorithms for specific requirements.
Tripathy et al. proposed a collision-free navigation scheme for mobile robots in a grid environment [21]. This research scheme combines a radio frequency identification method for robot localization, a hybrid approach for path planning, and a predefined decision table for navigation [22,23]. The algorithm has two stages: construction of the virtual world and generation of the optimal shortest path. The performance of the algorithm was evaluated in different grid-based environments with and without obstacles [24]. The results showed that the robot explored fewer cells to find the shortest path when there were no obstacles. However, in environments with obstacles, the number of turns in the shortest path was always less than that when exploring the entire virtual world.
In another investigation, Ou et al. address challenges inherent in traditional A* algorithms in terms of excessive turning points and sluggish search speed. They present an enhanced approach, integrating lidar and an IMU on the mobile robot platform [25]. The method utilizes Hdl_graph_slam mapping to construct a two-dimensional grid map and ROS platform. Path planning is executed through an improved A* algorithm, incorporating strategies for path smoothing and safety. The algorithm achieves a 13% reduction in average path search time and an 11% reduction in average search extension nodes, effectively mitigating the issues of excessive turning points and slow search speed associated with traditional A* algorithms. In a related study, Abbyasov et al. outline a methodology for prototyping an authentic office environment within the Gazebo simulator, utilizing the Blender modelling suite for high-quality 3D model generation [26]. The validation of their developed virtual environment involves conducting lidar-based SLAM (simultaneous localization and mapping) tasks with a mobile robot and testing them using advanced Gazebo actors.
Separately, Chen et al. introduced a three-neighbor search A* algorithm combined with the artificial potential field method to overcome irregular forward direction obstacles and guide robot movement [27,28]. Their method demonstrated significant improvements by reducing the number of search nodes, search time, and path length by 88.85%, 77.05%, and 5.58%, respectively. Saeed et al. presented the boundary node method, an offline path-planning approach that generated collision-free paths for mobile robots [29]. Their method utilized a nine-node quadrilateral element and a potential function to guide robot movement, generating initial collision-free paths quickly and safely. They also employed a path enhancement method to further optimize the path length. The simulation results validated the effectiveness of their proposed methods. In a different approach, Ichter et al. introduced latent sampling-based motion planning, combining recent control advances with techniques from sampling-based motion planning (SBMP) [30,31]. Their methodology involved learning a plannable latent representation using autoencoding, dynamics, and collision-checking networks. The learned latent RRT algorithm demonstrated global exploration capabilities and generalization to new environments, as showcased in visual planning and humanoid robot path-planning problems [32]. These studies provide valuable insights into different path-planning approaches that helped us to address the limitations of traditional A* algorithms and offer improved performance and adaptability for various robotic systems. Table 1 presents a summary of the related works in the area of path-planning methods and the method of validating the performance improvement, where “√“ indicates the consideration of that criteria in the related work and “-“ indicates criteria that are not considered.

3. Proposed Model

The A* algorithm is most effective in finding the shortest path due to its heuristic search technique. The conventional A* algorithm takes a long time to search and checks a large number of cells when searching for a goal because of an inefficient RMB. For a robot to reach its destination, it needs to find the shortest path from the starting position to the goal by checking a minimum number of search nodes with low time complexity. The proposed RMB helps to significantly reduce those two criteria and improves the overall performance of the A* path-planning algorithm while avoiding obstacles. The block diagram in Figure 1 illustrates the proposed model, which includes a robot path-planning algorithm with an efficient RMB to search for the optimal path. In this model, the robot examines the neighboring grid cells using the proposed optimal RMB, which significantly improves the performance of the path-planning algorithm and increases its usability in real-time. The proposed model was experimented on using various grid maps that contain different obstacle environments and starting and goal positions.

3.1. A* Path-Planning Algorithm with Proposed RMB

Currently, there exist numerous algorithms for searching paths and traversing graphs, one of which is A*. It is extensively recognized for its efficiency, being both optimal and complete. A* is classified as a best-first search or informed search algorithm that operates on a weighted graph. Its objective is to find a goal node, beginning from a specified starting node, with the smallest amount of travel cost and time. The algorithm creates a tree of search nodes, beginning from the starting node, and continues until the search terminates, which can either be the discovery of the goal node or no discovery at all. The A* algorithm uses an heuristic function, h x , to estimate the cost, c s , s , to reach the goal node from the current node [33], where h x c x , x + h x and c x , x is the cost of an individual node x x g o a l and any successor x . This heuristic should be both admissible (it should never overestimate the actual cost to reach the goal) and consistent (the cost from one node to another should not be more than the cost to move directly from the first node to the goal node). The heuristic function for the grid map is the Euclidean distance between the current node and the goal node. The algorithmic workflow of the A* algorithm, using the proposed model, shown in Figure 2, is as follows:
  • To begin the A* algorithm with the proposed robot motion block, initialize the start node S s t a r t with a cost of 0 and add it to an O P E N list of nodes to be considered for expansion.
  • Check the neighboring grid nodes for the goal node ( S g o a l ) with the proposed robot motion block explained in Section 3.2. If the current node is an obstacle node ( S o b s t a c l e ) , ignore it, and add only the end nodes in the O P E N list. While the O P E N list is not empty, select the node with the lowest total cost, C o s t C , and remove it from the O P E N list.
  • C o s t ( C ) = m i n O P E N ,   h S g o a l ,   O P E N  
  • Here, h S g o a l , O P E N denotes an heuristic function that uses Euclidean distance, d p , q = ( q 1 p 1 ) 2 + ( q 2 p 2 ) 2
  • If the selected node is the goal node, stop the search and return the optimal path. Generate all possible successors of the selected node and calculate their costs and heuristic values.
  • For each successor node, update its cost and heuristic value if it has not already been visited or has a higher cost. Add each updated successor node to the O P E N list if it is not already in the list.
  • If a successor node is already in the O P E N list, update its cost and heuristic value if the new values are lower than the previous values. If a successor node is already in the visited list (i.e., has already been expanded), ignore it.
  • If all nodes in the motion block cells have been checked, return to step II and repeat the steps until every node on the grid map has been checked.
  • Terminate the algorithm when the goal node is found or the O P E N list is empty.

3.2. Proposed Robot Motion Block with an Adaptive Cost-Function

In a grid-based search, robots must search the cells around them to find the goal node in the smallest number of cells possible. The robot uses a block of cells, called the robot motion block or motion kernel, to search for its neighboring nodes. However, the conventional RMB used by A* leads to a higher number of search cells and a longer search time. The proposed motion block, which surrounds the robot with eight neighboring cells, aims to minimize the number of search cells and the time taken to find the goal position while maintaining a comparable path cost. The
M o t i o n   b l o c k = n 0 C C d , C 0 n C C d , C n 0 C C d , C 0 n C C d , C n n D C d , C n n D C d , C n n D C d , C n n D C d , C
Here,
  • n = 1 , 2 , 3 , , N
  • C C = Cardinal movement cost.
  • D C = Diagonal movement cost.
  • d = The cost associated with cardinal movements.
  • d = The cost associated with diagonal movements.
  • C = Adaptive cost.
The proposed RMB is represented by a matrix as Equation (1), where n is the size of the RMBs. Figure 3 provides a visual representation of the proposed RMBs.
The RMB has eight neighboring cell directions, including up, down, left, right, up-right, up-left, down-right, and down-left. The costs of the four cardinal and diagonal directed points are represented by C C d , C and D C d , C , respectively. These costs are calculated using Equations (2)–(4):
d i = 1 ,         1 i 4     and   d i = 2 2 ,       5 i 8 C C c n j , c n j ,   q i = C c n j + q x i c n x j 2 + q y i c n y j 2 2 S u b j e c t   t o , 1 j N ; 1 i 8 ; c n = C u r r e n t   n o d e , C c n = C o s t   o f   c n ,     q = Nodes   of   motion   matrix .
C C , g n i ,   q i = C + g n x i q x i 2 + g n y i q y i 2 2 α S u b j e c t   t o , g n = G o a l   n o d e , a n d   0.001 α 0.009
C C d ,   C = d C , D C d ,   C = d   C ,
To determine the C C   a n d   D C costs of the nodes of the motion matrix, an adaptive cost function, C , is formulated, which is multiplied by the costs associated with cardinal d and diagonal d movements, as shown in Equation (4). In this adaptive cost function, first, the current node’s cost, C c n , is summed with the Euclidian distance between the current node, c n , and the node of motion matrix, q , to obtain the absolute differences in the x and y coordinates. The cost, C , is determined as shown in Equation (2). Next, C is summed with the Euclidean distance between the node of motion matrix q and goal node g n by multiplying with a constant of α in Equation (3). Here, α is used to increase the importance of the distance value between each of the motion matrix nodes and the goal node. This helps the adaptive cost function to keep track of the goal node with each node of the motion matrix and reduce the number of searches to find the goal node. The optimal range of α is between 0.001 and 0.009 after testing on a large number of maps. However, α = 0.007 was used in this paper, which provided the best results.

3.3. Optimal Robot Motion Block Selection

The proposed robot motion block has different sizes (n). The output results for each motion block differ. However, a general optimal RMB is essential for any robotic application. To obtain the optimal one from different RMB sizes, a selection formula is proposed as Equations (5)–(7).
R a A i j = R × A ( x j ) A m i n A m a x A m i n
R a R a j = i = 1 p R a ( x j ) p
S u b j e c t   t o , 1 i p , 1 j n , R = 1000 , p = 3
O R M B R a = a r g m i n k = 1 q R a ( x j ) q S u b j e c t   t o , 1 k q ,     q = 5   ( map   types )
Here, A denotes the array of n elements, and each element contains the mean of the output data, which is experimented on in the dataset containing 1 , , N data points based on the RMB size. i denotes parameters and A x j denotes individual output array elements for each RMB size, where x j , j = 1 , , n . To optimize the efficiency of the path-planning algorithm, this study considered three p parameters, namely, path costs, the number of search nodes in the grid map, and time complexity. Next, to measure the importance of the p parameters, each data array is normalized into a range of R = 1000 by weighting equally using Equation (5) and achieves a ranged array, R a . After that, each indexed data point from all resultant data arrays is summed and subscribed by the total number of arrays, which in this study is three, to obtain R a . Equation (6) was used to calculate R a . Finally, the optimal RMB is determined by selecting the minimum value of the final resultant data array for each RMB. Equation (7) was used to select the optimal RMB, O R M B .

4. Experimental Results and Discussion

The experimental outcomes justify the validity and demonstrate the effectiveness of the proposed model. The following subsections describe the experimental results of the proposed optimal RMB for the A* algorithm. First, the preprocessing steps of the dataset with different types of grid maps are described. After that, the experimental results using the prepared dataset show the effectiveness of the proposed model.

4.1. Grid Map Preparations Using the Dataset

4.1.1. Dataset

To validate the proposed approach, a collection of grid maps is essential for the experiment on the proposed RMB of the A* path-planning algorithm. This experiment uses a benchmarked online public repository dataset named “motion_planning_datasets” [34,35]. There are eight types of grid maps in this dataset. Each grid map type contains thousands of PNG format images with a resolution of 201 × 201. Five types of grid maps of planning environments are used among these eight types: alternating_gaps, forest, bugtraq_forest, gaps_and_forest, and mazes. For validation purposes, 4000 grid maps’ data are used in this research, with 800 grid maps’ data for each type. Figure 4 shows some sample images of these grid maps from the dataset.

4.1.2. Grid-Map Preparation

The dataset described in the previous subsection has some limitations, such as all grid map data points being images in PNG format rather than the matrix format required for the experiment. For the robot not to leave the grid map, a border surrounding the grid map is essential, but there is no border in the dataset images, and they also have no start or endpoint information. To validate the efficiency, robustness, scalability, and generalization of the proposed method, it needs to be tested on different dimensional grid maps, but the dataset images have a diminution of 201 × 201. To overcome these limitations and fit the dataset with the experiment, the dataset images are preprocessed and the grid maps are prepared for the experimental format, as depicted in Figure 5.
Firstly, three different dimensional types of grid map images are prepared: 261 × 261, 462 × 261, and 462 × 462. To prepare a 462 × 261 dimensional map, two same types of dataset map images are added side by side, and for a 462 × 462 dimensional map, four of the same types of dataset map images are added together. In this way, 200 maps are obtained for 402 × 402, 400 for 402 × 201, and 800 for 201 × 201, as 800 map images are considered from the dataset.
Next, two borders surrounding the dataset grid map images with 15 pixels each are added, making the grid map image dimensions 261 × 261, 462 × 261, and 462 × 462. Among these two borders, the outer border is black obstacle pixels, and the inner border is white obstacle-free pixels. Next, these modified map images are split into grid nodes containing information about each node with and without obstacles to change them to a matrix format. Finally, the grid maps with the required format are obtained to validate the proposed model.

4.1.3. Source and Destination Selection

For the experiment, four sets of different sources and destinations are selected for each of the three-dimensional maps, as shown in Figure 6. The red arrow represents the direction from the source (depicted as the green circle) to the destination (represented by the blue circle). In addition, besides the blue and green circles, source and destination coordinates are provided. For the map with dimensions 261 × 261, 200 maps are experimented with for each direction, as 800 maps are prepared for this dimensional map. Similarly, 100 maps are used for each direction in the case of the 462 × 261 dimensional map, and 50 maps are employed for the 462 × 462 dimensional maps.

4.2. Experimental Results of the Proposed Model

This paper shows the experimental results using the preprocessed 4000 grid maps of five different types for the proposed optimal RMB of the A* algorithm. First, the experiment for the proposed model demonstrates the effectiveness of the proposed RMB by minimizing the number of search nodes and time complexity while maintaining the minimum path cost from the start position to the target position. Then, the selection of the optimal RMB ensures algorithmic optimality by considering the three major criteria: the number of search nodes, time complexity, and path cost. In this paper, two decimal places are presented for all floating values except for the parameter of required time in seconds to show the differences, as in some cases, those values are very small. Also, the best results are presented with bold font in tables. Finally, a comparison between the proposed model and other similar algorithms shows the effective performance of the proposed optimal RMB.

4.2.1. Comparison between Conventional A* and the Proposed Method

The proposed method performs better than the conventional A* algorithm by introducing the adaptive cost function and RMBs. In Table 2, the comparison shows the improvement for RMB n = 1. Figure 7 shows a sample simulated result of this comparison. of this com However, this paper shows further experiments for other values of RMB.
Table 2 shows the cumulative experimental results conducted using the dataset containing five types of grid maps. The proposed method reduces the time complexity by 29.05%, the number of search nodes by 32.58%, and the path cost by 0.04% compared to the conventional A* algorithm, calculated using Equation (8). This is because of the effectiveness of the adaptive cost function described in Section 3.2, which keeps track of the goal node and calculates the robot movement cost adaptively, reducing the number of search nodes and time complexity. However, when n increases, only the end node is placed in the next search list of the search distance, which reduces the number of search nodes and time complexity even more.
IE = j = 1 m x j m j = 1 m y j m j = 1 m x j m × 100 , S u b j e c t   t o ,         1 j m , m = 3   ( a s   t h r e e   d i m e n t i o n a l   m a p s   a r e   c o n s i d e r e d )
Here,
  • I E = Impact Evaluation
  • x = Value of conventional A*
  • y = Value of proposed model

4.2.2. Experimental Results Using Different Sizes (n) of the Robot Motion Block

The simulated outcomes using the proposed RMBs with different sizes ( n = 1–6) for the A* path-planning algorithm are depicted in Figure 8. The RMB size is assumed ( n = 1–6) for the experiment because if n increases more, it provides mostly similar results as n   = 6, as shown in Figure 8(b6,c6), and Figure 9a,b, which may not affect the results. The resulting parameters in Figure 8(b6) are CS = 814, TC = 0.0197, PC = 570; Figure 9a: CS = 794, TC = 0.0196, PC = 570; Figure 8(c6): CS = 1230, TC = 0.0313, PC = 456; Figure 9b: CS = 1205, TC = 0.0313, PC = 456. They show that the result doesn’t have significant changes.
The experimental results for three types of map dimensions and three of the five map types are shown in Figure 8. (a1–a6), (b1–b6), and (c1–c6) show the result of the bugtraq_forest, gaps_and_forest, and mazes grid maps, where (a1–a6) has a map dimension of 261 × 261, (b1–b6) has 462 × 261, and (c1–c6) has 462 × 462. To find the target point, the number of search nodes drastically decreases with an increase in the size of the proposed RMB. The results for the RMB size n = 1 are shown in (a1,b1,c1), those for n = 2 are shown in (a2,b2,c2), those for n = 3 are shown in (a3,b3,c3), and so on. However, the path cost increased by an insignificant amount.
In Figure 8 and Figure 9, the red line indicates the path that the proposed approach found toward the target node. Furthermore, the searched grid cells are marked by a cyan cross, for which the number decreases when n increases.
For the proposed RMB n = (1–6), three types of data were collected from the experimental results: path cost, number of search nodes, and the time required (seconds) to find the path. Table 3 shows the resultant data for each RMB size and map dimension, which is a mean of all grid maps for each type of map among five types. In addition, a comparison of the outcome results is shown in Figure 10, Figure 11 and Figure 12, where Figure 10a, Figure 11a and Figure 12a show the number of nodes searched, Figure 10b, Figure 11b and Figure 12b show the path cost, and Figure 10c, Figure 11c and Figure 12c show the time required to find the target.
The results in Table 3 and Figure 10, Figure 11 and Figure 12 show that, with an increase in distance for the RMB, the time complexity and number of search nodes to find the target decreases. In contrast, the path cost insignificantly increases because as the search node decreases, the planned path curves around some curved obstacles. As demonstrated by the experimental results in Figure 8, with the increase in RMB size resulting in the decreased number of nodes searched, the robot may not find the straight path towards the goal in some cases, which increases the path cost. Therefore, an optimal RMB selection is essential and is performed using the proposed formula in Equations (5)–(7), as described in Section 3.3.

4.2.3. Results for Optimal Robot Motion Block Selection

Table 4 presents the range data for each criterion: the number of search nodes, path cost, and time complexity. Each criterion is weighed equally to achieve the range data and measure the importance. The mean of each map type and map dimension shows that in most cases, the size of RMB n = 3 has the minimum numeric value, and it provides the optimal performance of the A* algorithm. Figure 13 also shows the result for the proposed optimal RMB (which is n = 3). This is because it has the lowest value for both the number of search nodes and time complexity while still having a low value for the path cost. Therefore, it balances the three criteria well and provides an optimal overall performance. It also indicates that for the map type, gaps_and_forest n = 2 is optimal because of its complex and dense obstacle environments. However, the differences between the values of n = 2 and n = 3 are not substantial; for the map dimension 462 × 462 the values are 94.02 and 105.11, respectively.
Figure 14 presents comparative results between the proposed method and the conventional A* algorithm and shows that the proposed method excels where there are fewer obstacles between source and destination. The proposed method requires a very small number of nodes to search for the goal, and time complexity reduces significantly compared to the conventional A* algorithm. This is because of the proposed adaptive cost function, which keeps track of the goal node in addition to the proposed optimal RMB. The only challenge is that the path cost increases a little in some cases; for example, in Figure 14, the path cost increases by one.

4.2.4. Comparison of the Proposed Method with the State-of-the-Art Algorithms

Figure 15 shows the resultant figures for different state-of-the-art algorithms on a grid map presented in Figure 15a. In this grid map, the total number of grid cells was 212,521, the number of free cells was 142,483, and the number of obstacle cells was 70,038. The overall performance of Dijkstra and BFS was mostly similar, but the performance of DFS was the worst in terms of path cost. The performance of the turning weight A* (TWA*) [25] was better than the conventional A* algorithm, but the proposed model with optimal RMB (ORMBA*) outperforms all comparison algorithms.
Table 5 represents a comprehensive comparison between the proposed model and the different algorithms, Dijkstra, DFS, BFS, conventional A*, and TWA*. The values from this comparison are the cumulative results collected from the experiment conducted on the considered dataset; thus, these values have fraction numbers. In terms of the number of search nodes and time complexity, the proposed model outperformed the other algorithms. Specifically, first, the number of search nodes for the proposed model is 2824.45, whereas that for the other algorithms ranges from 46,878.88 to 84,677.83. Second, regarding time complexity, the proposed model requires 0.1406 s, whereas the other algorithms require 1.6375 to 16.5898 s. Finally, regarding the path cost, DFS has a value of 4115.53, which is significantly higher than that of the others, and the path cost of the proposed model is mostly similar to that of the remaining algorithms.
Figure 16 shows the performance comparison graph of the different algorithms and the proposed model considering the data in Table 5 and Equation (9).
P C = A v ¯ M x × 100 ,
Here,
  • P C = Performance calculation.
  • A v ¯   = mean of A v j from j = 1   t o   3 (map dimensions).
  • M x = Maximum value of each parameter.
In the performance calculation, the considered range for the number of search nodes is 0–133,654.33, as the maximum number of nodes in the dataset is 68,121 for the map dimension 261 × 261, 120,321 for 462 × 261, and 212,521 for 462 × 462. The average of these three values is 133,654.33. Similarly, the considered ranges for the path cost and time complexity are assumed 0–4500 and 0–20 s, respectively. In this graph, the lowest performance percentage indicates good performance as the lowest values represent the lowest number of search nodes, a lower path cost, and a lower time complexity to find the target. The table in Figure 16 shows that the proposed model outperforms the other algorithms in terms of the number of search nodes and time complexity. Its path cost is mostly similar to that of the other algorithms except for DFS, which has the highest path cost.

4.2.5. ROS Experiments

This section presents an experiment for further validation of the proposed method: the ORMBA* and the comparison methods are implemented using the Gazebo Simulator, which uses ROS Gazebo packages on Ubuntu 18.04. To perform this experiment, a TurtleBot3 Waffle three-wheeled robot is employed as an experimental robot and is presented in Figure 17.
In this experiment, firstly, a laboratory environment is prepared in the Gazebo simulator, as shown in Figure 18. The dimensions of the environment are 20 m × 10 m. It contains maze-like walls and different obstacles such as blocks, tables, bookshelves, and others. Four landmarks are selected and considered as source and/or destination for this experiment, as shown in Figure 18. Here, (A) and (B) are the first source and destination, (B) and (C) are the next source and destination, and so on.
Secondly, the SLAM technique is used to create the 2D construction of the test laboratory environment. The Gmapping method of the SLAM and amcl from the ROS packages is used, which helps the mobile robot to generate a 2D occupancy grid map (similar to a floorplan of a building) and localization by processing lidar information gathered during robot movement. Figure 19 shows the 2D-constructed laboratory environment.
Finally, the path-planning methods are used to plan the path and navigate the robot from sources to destinations in the prepared laboratory environment in the simulator. ROS offers different interfaces, including global and local path planners. For this experiment, only global path planning is required based on the destination; hence, the ORMBA* path-planning method was integrated as a new global path planner. This allows ROS to utilize this new planner to operate the robot effectively. For the visualization tool, Rviz is used beside the Gazebo simulator to view the navigation tasks, and the map resolution is set to 0.05. Figure 20 shows the result of the proposed method (ORMBA*).
The usual method to integrate a new path-planning algorithm such as ORMBA* in the ROS platform is to write the code in C++, but for this experiment, Python was used. However, the base packages global_path_planning, srv_clint_plugin, and pp_msgs are required to make the new path-planning algorithm workable. The package global_path_planning contains the necessary functionality for a path-planning server and custom algorithm such as ORMBA*. The server receives and processes path planning requests from the client and final planned path returns. Different custom messages defined in pp_msgs facilitate the communication. The client program is started by srv_clint_plugin, which interfaces with the navigation packages. The client program receives the different parameters, such as the current state, goal node, cost map, and others, and then sends them to the server, which calculates the path to follow. Finally, the client program sends the received planned path to the navigation package to navigate the robot. The Python client library rospy for ROS is used. It provides a convenient way to interface with ROS using Python, offering libraries to communicate with ROS topics, services, parameters, and base packages. To control the TurtleBot3, another package, geometry_msgs, is used, which defines the angular and linear velocities. Among the ROS topic list, cmd_vel is used to publish the control commands.
Table 6 and Figure 21 present the performance results of the comparison between A*, TWA*, and ORMBA* methods, which are collected from the Gazebo simulation and ROS platform and the average of all three source-to-destination points. In the performance metrics, the time is calculated using the rospy.Time function by calculating the start and end time of the global path planner in the ROS path-planning server. The ROS client program receives the planned path and the length of the planned path from the server. To calculate the length in meters, the path length needs to be multiplied by the map resolution, which is mentioned above.
In this ROS experiment, the robot requires very small search time for the proposed ORMBA* compared to the conventional A* and TWA*, especially when the source-to-destination distance is very large. Also, the robot moves very close to the obstacles in corners for A* and TWA*, which may make it challenging for the robot to move at corners, where the proposed method advances as it keeps a distance from the obstacles, as shown in Figure 21. These advancements help the robot to perform the whole planning and navigation operation much faster and more safely, which is most important for a real-world application.

4.3. Discussion

This study aims to enhance the efficiency of the A* path-planning algorithm by minimizing the time complexity and the number of search nodes while maintaining a minimum path cost. To validate the robustness and generalize the proposed ORMBA*, this paper presents the experiment on seven thousand grid maps categorized into five types. Each type has different environmental scenarios with obstacles and three different map sizes. Also, four sets of different sources and destinations were selected for each of the maps. In all the scenarios, the proposed ORMBA* significantly improves in terms of the number of search nodes and time complexity compared to other state-of-the-art algorithms. In light obstacle scenarios, the ORMBA* excels, as presented in Figure 14. In addition, the ROS experiment in a simulated environment presents the improvement and robustness of the proposed ORMBA*.
The experimental results presented in Figure 7 and Table 2 show improved performance compared to the conventional A* algorithm because of its adaptive cost function for the robot movement, which keeps track of the goal position. The reduction in time complexity, the number of search nodes, and path cost are approximately 29.05%, 32.58%, and 0.04%. According to Table 3 and Figure 10, Figure 11 and Figure 12, increasing the size of the proposed RMB reduces the time complexity and the number of search nodes significantly. Figure 8 samples the simulation results. The path costs increased slightly for the increased size of RMB; however, the time complexity and the number of search nodes decreased. Thus, the proposed model selects the optimal RMB to apply in different applications. The experimental results for the optimal RMB selection are presented in Table 4 and Figure 13. According to the experimental results, the RMB n = 3 is optimal as it provides balanced, improved results in most cases, as shown in Figure 13. An additional experiment was conducted where the proposed model was compared with other similar algorithms, as shown in Table 5 and Figure 15 and Figure 16. The experimental results show that the proposed model outperforms the comparison algorithms. The TWA* performed better than the conventional A* algorithm and other algorithms, whereas the proposed model ORMBA* outperformed by decreasing the number of search nodes by 93.98% and 93.24% and the time complexity by 98.94% and 98.64% compared to the conventional A* and TWA* algorithms, calculated using Equation (8). The path cost of the proposed model increased by 0.82% from A* and decreased by 0.32% from TWA*, which is comparable to other algorithms except for DFS, which had the highest path cost. Overall, the proposed method shows significant improvement in terms of the number of search nodes and time complexity by keeping the path cost almost similar to that of state-of-the-art algorithms. In some cases, the proposed model shows an insignificantly increased path cost, which may not have a large impact, but the other criterion of improvement has a significant impact on robot navigation. The proposed method also performed well in the ROS experiments, as presented in Figure 21 and Table 6.

5. Conclusions

Path planning is crucial for autonomous robot navigation, allowing robots to find optimal routes while avoiding obstacles. A* is a popular global path-planning algorithm due to its heuristic approach. However, conventional A* has limitations, such as computational complexity and extensive node searching in the grid spaces. Improvement of such issues may increase the usability of this path-planning algorithm for autonomous robot applications in dynamic real-world environments. To consider this improvement, this paper proposes an optimal RMB with an adaptive cost function for the A* algorithm that significantly improves its overall performance. In this approach, firstly, the robot movement costs are calculated by the proposed adaptive cost function, which keeps track of the goal to reduce the number of searches to find the goal. Secondly, using the optimal RMB, the robot checks a certain distance in eight surrounding directions each time and puts only the end node in the O P E N list of the A* algorithm. To select the next movement from the O P E N list, it applies a heuristic approach. This approach significantly reduces the number of search nodes and time complexity while achieving an acceptable path cost. To evaluate the proposed approach, an open-source dataset with seven thousand grid maps, categorized into five types, is used. To enhance the complexity of the dataset, three different map sizes and sets of source-to-destination points are introduced. This large, customized dataset helps to evaluate the efficiency, robustness, and scalability of the proposed model. A comprehensive experiment is conducted to validate the performance and compare it to the state-of-the-art algorithms. The experimental results show the effectiveness of the proposed ORMBA* by improving performance by approximately 93% for the number of search nodes and 95% for the time complexity. Additionally, the experiment on the ROS platform shows the robot navigation improvement in a simulated laboratory environment.

Author Contributions

Conceptualization, R.K., Y.W. and M.R.I.; Data curation, R.K. and Y.W.; Formal analysis, R.K. and K.N.; Investigation, R.K., Y.W. and K.N.; Methodology, R.K. and K.N.; Supervision, Y.W. and M.R.I.; Validation, R.K. and K.N.; Visualization, R.K. and M.R.I.; Writing—original draft, R.K. and M.R.I.; Writing—review and editing, R.K., Y.W., M.R.I. and K.N. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

The author Md Rahedul Islam was employed by the company Chowagiken Corp. All the authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.

References

  1. Zhang, H.-Y.; Lin, W.-M.; Chen, A.-X. Path Planning for the Mobile Robot: A Review. Symmetry 2018, 10, 450. [Google Scholar] [CrossRef]
  2. Kabir, R.; Watanobe, Y.; Islam, R.; Naruse, K.; Rahman, M. Unknown Object Detection Using a One-Class Support Vector Machine for a Cloud–Robot System. Sensors 2022, 22, 1352. [Google Scholar] [CrossRef]
  3. Wang, N.; Xu, H. Dynamics-Constrained Global-Local Hybrid Path Planning of an Autonomous Surface Vehicle. IEEE Trans. Veh. Technol. 2020, 69, 6928–6942. [Google Scholar] [CrossRef]
  4. Liu, H. Robot Systems for Rail Transit Applications; Elsevier BV: Amsterdam, The Netherlands, 2020; ISBN 9780128229682. [Google Scholar]
  5. Karur, K.; Sharma, N.; Dharmatti, C.; Siegel, J.E. A Survey of Path Planning Algorithms for Mobile Robots. Vehicles 2021, 3, 448–468. [Google Scholar] [CrossRef]
  6. Cai, K.; Wang, C.; Cheng, J.; de Silva, C.W.; Meng, M.Q.-H. Mobile Robot Path Planning in Dynamic Environments: A Survey. arXiv 2020, arXiv:2006.14195. [Google Scholar]
  7. Karaoguz, H.; Jensfelt, P. Object Detection Approach for Robot Grasp Detection. In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 4953–4959. [Google Scholar]
  8. Kabir, R.; Watanobe, Y.; Islam, R.; Naruse, K. Service Point Searching for Disabled People using Wheelchair based Robotic Path Planning and ArUco Markers. In Proceedings of the 2022 IEEE 8th World Forum on Internet of Things (WF-IoT), Yokohama, Japan, 26 October–11 November 2022; pp. 1–7. [Google Scholar]
  9. Udugama, B. Mini bot 3D: A ROS based Gazebo Simulation. arXiv 2023, arXiv:2302.06368. [Google Scholar]
  10. Matveev, A.S. Survey of algorithms for safe navigation of mobile robots in complex environments. In Safe Robot Navigation Among Moving and Steady Obstacles; Butterworth-Heinemann: Oxford, UK, 2016; pp. 21–49. [Google Scholar]
  11. Tang, G.; Tang, C.; Claramunt, C.; Hu, X.; Zhou, P. Geometric A-Star Algorithm: An Improved A-Star Algorithm for AGV Path Planning in a Port Environment. IEEE Access 2021, 9, 59196–59210. [Google Scholar] [CrossRef]
  12. Kabir, R.; Watanobe, Y.; Naruse, K.; Islam, M.R. Effectiveness of Robot Motion Block on A-Star Algorithm for Robotic Path Planning. SoMeT 2022, 337, 85–96. [Google Scholar]
  13. Li, C.; Huang, X.; Ding, J.; Song, K.; Lu, S. Global path planning based on a bidirectional alternating search A* algorithm for mobile robots. Comput. Ind. Eng. 2022, 168, 108123. [Google Scholar] [CrossRef]
  14. BiBi, S.; Abbas, M.; Misro, M.Y.; Hu, G. A Novel Approach of Hybrid Trigonometric Bézier Curve to the Modeling of Symmetric Revolutionary Curves and Symmetric Rotation Surfaces. IEEE Access 2019, 7, 165779–165792. [Google Scholar] [CrossRef]
  15. de Assis Brasil, P.M.; Pereira, F.U.; de Souza Leite Cuadros, M.A.; Cukla, A.R.; Tello Gamarra, D.F. A Study on Global Path Planners Algorithms for the Simulated TurtleBot 3 Robot in ROS. In Proceedings of the 2020 Latin American Robotics Symposium (LARS), 2020 Brazilian Symposium on Robotics (SBR) and 2020 Workshop on Robotics in Education (WRE), Natal, Brazil, 10–13 November 2020; pp. 1–6. [Google Scholar]
  16. Szczepanski, R.; Tarczewski, T. Global path planning for mobile robot based on Artificial Bee Colony and Dijkstra’s algorithms. In Proceedings of the 2021 IEEE 19th International Power Electronics and Motion Control Conference, Gliwice, Poland, 25–29 April 2021; pp. 724–730. [Google Scholar]
  17. Wang, H.; Wang, W.; Xiao, S.; Cui, Z.; Xu, M.; Zhou, X. Improving artificial Bee colony algorithm using a new neighborhood selection mechanism. Inf. Sci. 2020, 527, 227–240. [Google Scholar] [CrossRef]
  18. Gunawan, R.D.; Napianto, R.; Borman, R.I.; Hanifah, I. Implementation Of Dijkstra’s Algorithm In Determining The Shortest Path Case Study: Specialist Doctor Search In Bandar Lampung. Int. J. Inf. Syst. Comput. Sci. 2019, 3, 98–106. [Google Scholar] [CrossRef]
  19. Sánchez-Ibáñez, J.R.; Pérez-Del-Pulgar, C.J.; García-Cerezo, A. Path Planning for Autonomous Mobile Robots: A Review. Sensors 2021, 21, 7898. [Google Scholar] [CrossRef]
  20. Patle, B.K.; Pandey, A.; Parhi, D.R.K.; Jagadeesh, A.J.D.T. A review: On path planning strategies for navigation of mobile robot. Def. Technol. 2019, 15, 582–606. [Google Scholar] [CrossRef]
  21. Tripathy, H.K.; Mishra, S.; Thakkar, H.K.; Rai, D. CARE: A Collision-Aware Mobile Robot Navigation in Grid Environment using Improved Breadth First Search. Comput. Electr. Eng. 2021, 94, 107327. [Google Scholar] [CrossRef]
  22. Panigrahi, P.K.; Bisoy, S.K. Localization strategies for autonomous mobile robots: A review. J. King Saud Univ.-Comput. Inf. Sci. 2022, 34, 6019–6039. [Google Scholar] [CrossRef]
  23. Zhong, X.; Tian, J.; Hu, H.; Peng, X. Hybrid path planning based on safe A* algorithm and adaptive window approach for mobile robot in large-scale dynamic environment. J. Intell. Robot. Syst. 2020, 99, 65–77. [Google Scholar] [CrossRef]
  24. Ali, H.; Gong, D.; Wang, M.; Dai, X. Path Planning of mobile robot with improved ant colony algorithm and MDP to produce smooth trajectory in grid-based environment. Front. Neurorobot. 2020, 14, 44. [Google Scholar] [CrossRef]
  25. Ou, Y.; Fan, Y.; Zhang, X.; Lin, Y.; Yang, W. Improved A* Path Planning Method Based on the Grid Map. Sensors 2022, 22, 6198. [Google Scholar] [CrossRef]
  26. Abbyasov, B.; Gamberov, T.; Zhukova, V.; Tsoy, T.; Martínez-García, E.A.; Magid, E. A Tutorial on Modelling a Real Office Environment in Gazebo Simulator. J. Robot. Netw. Artif. Life 2023, 10, 166–169. [Google Scholar]
  27. Chen, J.; Tan, C.; Mo, R.; Zhang, H.; Cai, G.; Li, H. Research on path planning of three-neighbor search A* algorithm combined with artificial potential field. Int. J. Adv. Robot. Syst. 2021, 18. [Google Scholar] [CrossRef]
  28. Raheem, F.A.; Abdulkareem, M.I. Development of A* algorithm for robot path planning based on modified probabilistic road map and artificial potential field. J. Eng. Sci. Technol. 2020, 15, 3034–3054. [Google Scholar]
  29. Saeed, R.; Recupero, D. Path Planning of a Mobile Robot in Grid Space using Boundary Node Method. In Proceedings of the 16th International Conference on Informatics in Control, Automation and Robotics, Prague, Czech Republic, 29–31 July 2019. [Google Scholar]
  30. Ichter, B.; Pavone, M. Robot Motion Planning in Learned Latent Spaces. IEEE Robot. Autom. Lett. 2019, 4, 2407–2414. [Google Scholar] [CrossRef]
  31. Gammell, J.D.; Strub, M.P. Asymptotically optimal sampling-based motion planning methods. Annu. Rev. Control Robot. Auton. Syst. 2021, 4, 295–318. [Google Scholar] [CrossRef]
  32. Cao, X.; Zou, X.; Jia, C.; Chen, M.; Zeng, Z. RRT-based path planning for an intelligent litchi-picking manipulator. Comput. Electron. Agric. 2019, 156, 105–118. [Google Scholar] [CrossRef]
  33. Hart, P.E.; Nilsson, N.J.; Raphael, B. A formal basis for the heuristic determination of minimum cost paths in graphs. IEEE Trans. Syst. Sci. Cybern. 1968, 2, 100–107. [Google Scholar] [CrossRef]
  34. Bhardwaj, M. Motion Planning Datasets. 2017. Available online: https://github.com/mohakbhardwaj/motion_planning_datasets (accessed on 21 May 2023).
  35. Bhardwaj, M.; Choudhury, S.; Scherer, S. Learning heuristic search via imitation. In Proceedings of the Conference on Robot Learning, Mountain View, CA, USA, 13–15 November 2017; pp. 271–280. [Google Scholar]
Figure 1. Block diagram of our proposed model.
Figure 1. Block diagram of our proposed model.
Sensors 24 01422 g001
Figure 2. Block diagram of the A* path-planning algorithm with the proposed optimal RMB.
Figure 2. Block diagram of the A* path-planning algorithm with the proposed optimal RMB.
Sensors 24 01422 g002
Figure 3. Block diagram of the A* path-planning algorithm with the proposed optimal RMB. Orange arrows = search directions, green and yellow = search nodes.
Figure 3. Block diagram of the A* path-planning algorithm with the proposed optimal RMB. Orange arrows = search directions, green and yellow = search nodes.
Sensors 24 01422 g003
Figure 4. Sample images of grid maps from the dataset (a1,a2) forest, (b1,b2) bugtrap_forest, (c1,c2) gaps_and_forest, (d) alternating_gaps, and (e) mazes.
Figure 4. Sample images of grid maps from the dataset (a1,a2) forest, (b1,b2) bugtrap_forest, (c1,c2) gaps_and_forest, (d) alternating_gaps, and (e) mazes.
Sensors 24 01422 g004
Figure 5. Prepared grid maps from the dataset (261 × 261): (a) alternating_gaps, (b) forest, (c) gaps_and_forest, and (d) mazes; (261 × 462): (e) forest, (f) bugtrap_forest; (462 × 462): (g) gaps_and_forest. White = free cells and black = obstacle cells.
Figure 5. Prepared grid maps from the dataset (261 × 261): (a) alternating_gaps, (b) forest, (c) gaps_and_forest, and (d) mazes; (261 × 462): (e) forest, (f) bugtrap_forest; (462 × 462): (g) gaps_and_forest. White = free cells and black = obstacle cells.
Sensors 24 01422 g005
Figure 6. (ac) show the source-to-destination direction for three dimensions’ maps. Blue circle = destination, green circle = source, and red arrow = path direction.
Figure 6. (ac) show the source-to-destination direction for three dimensions’ maps. Blue circle = destination, green circle = source, and red arrow = path direction.
Sensors 24 01422 g006
Figure 7. Simulated results for the comparison between (a1,a2) conventional A* and (b1,b2) the proposed method for RMB n = 1. Here, CS = number of nodes searched, PC = path cost, TC = time complexity. White = free cell, black = obstacle cell, green and blue circle = start and goal point, red line = found path, and cyan cross = cell searched.
Figure 7. Simulated results for the comparison between (a1,a2) conventional A* and (b1,b2) the proposed method for RMB n = 1. Here, CS = number of nodes searched, PC = path cost, TC = time complexity. White = free cell, black = obstacle cell, green and blue circle = start and goal point, red line = found path, and cyan cross = cell searched.
Sensors 24 01422 g007aSensors 24 01422 g007b
Figure 8. Simulated experimental outcomes of the proposed method with RMBs ( n = 1–6) for three types of maps. Here, (a1a6), (b1b6), and (c1c6) present the results for the map types: bugtraq_forest, gaps_and_forest, and mazes. White = free cell, black = obstacle cell, green and blue circle = start and goal point, red line = found path, and cyan cross = cell searched.
Figure 8. Simulated experimental outcomes of the proposed method with RMBs ( n = 1–6) for three types of maps. Here, (a1a6), (b1b6), and (c1c6) present the results for the map types: bugtraq_forest, gaps_and_forest, and mazes. White = free cell, black = obstacle cell, green and blue circle = start and goal point, red line = found path, and cyan cross = cell searched.
Sensors 24 01422 g008aSensors 24 01422 g008bSensors 24 01422 g008c
Figure 9. Simulated experimental outcomes of the proposed method with RMB n = 7. Here, (a,b) present the results for the map types gaps_and_forest and mazes.
Figure 9. Simulated experimental outcomes of the proposed method with RMB n = 7. Here, (a,b) present the results for the map types gaps_and_forest and mazes.
Sensors 24 01422 g009
Figure 10. Results for the proposed RMBs for different types of maps where the map dimension was 261 × 261. (a) Number of search nodes; (b) Path cost; (c) Time required for searching the goal node. AG = alternating_gaps, Fr = forest, BF = bugtrap_forest, GF = gaps_and_forest, and Mz = mazes.
Figure 10. Results for the proposed RMBs for different types of maps where the map dimension was 261 × 261. (a) Number of search nodes; (b) Path cost; (c) Time required for searching the goal node. AG = alternating_gaps, Fr = forest, BF = bugtrap_forest, GF = gaps_and_forest, and Mz = mazes.
Sensors 24 01422 g010
Figure 11. Results for the proposed RMBs for different types of maps where the map dimension was 462 × 261. (a) Number of search nodes; (b) Path cost; (c) Time required for searching the goal node. AG = alternating_gaps, Fr = forest, BF = bugtrap_forest, GF = gaps_and_forest, and Mz = mazes.
Figure 11. Results for the proposed RMBs for different types of maps where the map dimension was 462 × 261. (a) Number of search nodes; (b) Path cost; (c) Time required for searching the goal node. AG = alternating_gaps, Fr = forest, BF = bugtrap_forest, GF = gaps_and_forest, and Mz = mazes.
Sensors 24 01422 g011
Figure 12. Results for the proposed RMBs for different types of maps the where map dimension was 462 × 462. (a) Number of search nodes; (b) Path cost; (c) Time required for searching the goal node. AG = alternating_gaps, Fr = forest, BF = bugtrap_forest, GF = gaps_and_forest, and Mz = mazes.
Figure 12. Results for the proposed RMBs for different types of maps the where map dimension was 462 × 462. (a) Number of search nodes; (b) Path cost; (c) Time required for searching the goal node. AG = alternating_gaps, Fr = forest, BF = bugtrap_forest, GF = gaps_and_forest, and Mz = mazes.
Sensors 24 01422 g012
Figure 13. (ac) are the experimental results for the proposed optimal RMB based on the experimental data of Table 4. (a) For map dimension 261 × 261; (b) For map dimension 462 × 261; (c) For map dimension 462 × 462.
Figure 13. (ac) are the experimental results for the proposed optimal RMB based on the experimental data of Table 4. (a) For map dimension 261 × 261; (b) For map dimension 462 × 261; (c) For map dimension 462 × 462.
Sensors 24 01422 g013aSensors 24 01422 g013b
Figure 14. Comparison between conventional (a) A* and the (b) proposed method in terms of a smaller number of obstacles between the source and destination.
Figure 14. Comparison between conventional (a) A* and the (b) proposed method in terms of a smaller number of obstacles between the source and destination.
Sensors 24 01422 g014
Figure 15. Simulated results for the comparison between different state-of-the-art algorithms and the proposed ORMBA*. (a) Grid map showing source and destination; (b) Dijkstra; (c) BFS; (d) DFS; (e) Conventional A*; (f) TWA*; (g) ORMBA*.
Figure 15. Simulated results for the comparison between different state-of-the-art algorithms and the proposed ORMBA*. (a) Grid map showing source and destination; (b) Dijkstra; (c) BFS; (d) DFS; (e) Conventional A*; (f) TWA*; (g) ORMBA*.
Sensors 24 01422 g015
Figure 16. Performance of different algorithms compared with the proposed method.
Figure 16. Performance of different algorithms compared with the proposed method.
Sensors 24 01422 g016
Figure 17. TurtleBot3 Waffle robot in the simulator.
Figure 17. TurtleBot3 Waffle robot in the simulator.
Sensors 24 01422 g017
Figure 18. Prepared laboratory environment in the simulator.
Figure 18. Prepared laboratory environment in the simulator.
Sensors 24 01422 g018
Figure 19. 2D laboratory environment constructed using SLAM.
Figure 19. 2D laboratory environment constructed using SLAM.
Sensors 24 01422 g019
Figure 20. ORMBA* path planning results using the Gazebo simulator and ROS platform. (a) Presents the result for source A to destination B and (b) presents the result for C to D as mentioned in Figure 18. Green and blue circle = start and goal point, blue line = planned path.
Figure 20. ORMBA* path planning results using the Gazebo simulator and ROS platform. (a) Presents the result for source A to destination B and (b) presents the result for C to D as mentioned in Figure 18. Green and blue circle = start and goal point, blue line = planned path.
Sensors 24 01422 g020
Figure 21. Results of comparison between A*, TWA*, and ORMBA* using the Gazebo simulator and ROS platform for source B to destination C as mentioned in Figure 18. Green and blue circle = start and goal point, blue line = planned path.
Figure 21. Results of comparison between A*, TWA*, and ORMBA* using the Gazebo simulator and ROS platform for source B to destination C as mentioned in Figure 18. Green and blue circle = start and goal point, blue line = planned path.
Sensors 24 01422 g021
Table 1. Summary of related works in the area of path-planning methods that investigate concrete ways to show the performance improvement.
Table 1. Summary of related works in the area of path-planning methods that investigate concrete ways to show the performance improvement.
ArticleTest Environment with ObstaclesCost Function OptimizationRMB ImprovementTest on Robots with SensorsROS ExperimentTest on Different Map SizesTest on Large Numbers of Maps
[13]----
[16]------
[21]----
[25]---
[27]---
Proposed method
Table 2. Experimental results for the comparison between conventional A* and the proposed method with RMB n = 1.
Table 2. Experimental results for the comparison between conventional A* and the proposed method with RMB n = 1.
Algorithms# Search NodesPath CostTime Required (s)
Conventional A*46,878.88390.1013.2112
Proposed model31,604.34389.949.3736
Table 3. Experimental results for the proposed method with different RMB sizes.
Table 3. Experimental results for the proposed method with different RMB sizes.
Map TypeMap DimensionParametersRMB
n = 1n = 2n = 3n = 4n = 5n = 6
alternating_gaps261 × 261# search nodes11,903.922838.901198.65903.76786.34502.14
Path cost246.26245.78246.01247.32262.92261.95
Time required (s)2.52590.20060.07350.05850.02960.0166
462 × 261# search nodes38,132.178351.432789.371702.491076.50888.37
Path cost431.22433.96435.06436.84443.55445.29
Time required (s)11.09790.83270.14730.07120.03830.0221
462 × 462# search nodes38,069.773958.411522.721266.83811.02632.05
Path cost437.09436.52437.20438.33439.89445.18
Time required (s)13.31320.78580.11090.03830.02450.0202
forest261 × 261# search nodes8181.341809.131142.62869.21629.31482.98
Path cost235.69241.27242.17245.92244.84248.83
Time required (s)1.90340.09820.05210.02560.02450.0195
462 × 261# search nodes22,056.063855.531764.341356.101175.00936.63
Path cost417.87419.61419.07419.09420.10422.81
Time required (s)5.80140.44100.10670.06170.03360.0200
462 × 462# search nodes41,497.961098.45759.14632.76567.44495.21
Path cost423.38425.47425.23427.45429.58428.90
Time required (s)19.17360.11150.04050.02450.01860.0156
bugtrap_forest261 × 261# search nodes18,436.835909.822731.871533.711105.00892.15
Path cost260.13261.72260.52264.59268.00268.97
Time required (s)3.95760.44350.11370.05000.03830.0245
462 × 261# search nodes41,725.859255.844571.772855.642372.931382.53
Path cost436.70440.48440.36442.83446.93449.65
Time required (s)12.57790.84320.23420.10870.06920.0383
462 × 462# search nodes46,582.385011.741913.541509.351339.761121.14
Path cost460.24465.91467.55474.02479.76481.96
Time required (s)15.76660.89530.17780.08610.05880.0291
gaps_and_forest261 × 261# search nodes9260.301858.17938.19761.81558.93380.48
Path cost251.04250.87253.21255.33259.90263.07
Time required (s)2.35730.11290.04550.03340.02060.0186
462 × 261# search nodes31,361.017935.983511.172356.031336.57991.89
Path cost448.15449.54453.95462.83469.79470.84
Time required (s)6.62110.64730.17810.08470.04110.0245
462 × 462# search nodes41,334.985584.342427.801517.651124.17759.52
Path cost485.89486.88488.99493.71497.64496.01
Time required (s)11.30630.91690.13560.05950.03930.0208
mazes261 × 261# search nodes26,045.3810,176.255986.733896.612564.642008.82
Path cost320.51320.78322.35325.45329.83330.33
Time required (s)4.71980.67220.25360.11980.06580.0435
462 × 261# search nodes49,235.538426.303654.472122.421590.481247.94
Path cost471.47472.21473.32475.49481.91500.58
Time required (s)13.67470.75760.16550.06790.04790.0346
462 × 462# search nodes58,241.6517,939.497454.324472.243274.232194.61
Path cost522.04524.76527.02530.56532.45536.13
Time required (s)17.90801.87320.38390.17290.10120.0563
Table 4. Experimental results to select the optimal RMB using Equations (5)–(7).
Table 4. Experimental results to select the optimal RMB using Equations (5)–(7).
Map TypeMap DimensionParametersRMB
n = 1 n = 2 n = 3 n = 4 n = 5 n = 6
alternating_gaps261 × 261# search nodes1000.00204.9561.0935.2224.930.00
Path cost28.300.0013.4289.741000.00943.69
Time required1000.0073.3022.6616.675.160.00
Average676.1092.7532.3947.21343.36314.56
462 × 261# search nodes1000.00200.3851.0421.865.050.00
Path cost0.00194.97273.07399.64876.121000.00
Time required1000.0073.1811.314.441.460.00
Average666.67156.18111.80141.98294.21333.33
462 × 462# search nodes1000.0088.8523.7916.964.780.00
Path cost66.330.0079.17208.90389.301000.00
Time required1000.0057.596.821.360.320.00
Average688.7848.8136.5975.74131.47333.33
forest261 × 261# search nodes1000.00172.2785.6950.1719.010.00
Path cost0.00424.75493.11779.07696.731000.00
Time required1000.0041.7517.293.242.650.00
Average666.67212.92198.70277.49239.46333.33
462 × 261# search nodes1000.00138.2139.1919.8611.290.00
Path cost0.00351.94241.79246.73450.171000.00
Time required1000.0072.8315.007.212.350.00
Average666.67187.6698.6691.27154.61333.33
462 × 462# search nodes1000.0014.716.443.351.760.00
Path cost0.00337.47298.24656.741000.00890.39
Time required1000.005.001.300.460.150.00
Average666.67119.06101.99220.18333.97296.80
bugtrap_forest261 × 261# search nodes1000.00285.99104.8636.5712.130.00
Path cost0.00180.2144.58504.79890.381000.00
Time required1000.00106.5422.706.503.510.00
Average666.67190.9157.38182.62302.01333.33
462 × 261# search nodes1000.00195.1679.0536.5124.550.00
Path cost0.00291.88282.17472.96789.821000.00
Time required1000.0064.1915.635.612.460.00
Average666.67183.74125.62171.70272.28333.33
462 × 462# search nodes1000.0085.5817.438.544.810.00
Path cost0.00260.96336.57634.61898.721000.00
Time required1000.0055.049.453.631.890.00
Average666.67133.86121.15215.59301.80333.33
gaps_and_forest261 × 261# search nodes1000.00166.4162.8142.9420.100.00
Path cost14.270.00191.82365.81740.761000.00
Time required1000.0040.3211.526.360.850.00
Average671.4268.9188.72138.37253.90333.33
462 × 261# search nodes1000.00228.6682.9644.9211.350.00
Path cost0.0060.99255.46647.02953.691000.00
Time required1000.0094.4123.309.132.530.00
Average666.67128.02120.57233.69322.52333.33
462 × 462# search nodes1000.00118.9141.1218.688.990.00
Path cost0.0083.76264.05665.661000.00860.81
Time required1000.0079.4010.173.431.640.00
Average666.6794.02105.11229.26336.87286.94
mazes261 × 261# search nodes1000.00339.79165.4978.5423.120.00
Path cost0.0027.82187.67503.39949.121000.00
Time required1000.00134.4544.9316.324.780.00
Average666.67167.35132.70199.42325.67333.33
462 × 261# search nodes1000.00149.5950.1518.227.140.00
Path cost0.0025.2963.31138.00358.441000.00
Time required1000.0053.019.602.440.970.00
Average666.6775.9641.0252.89122.18333.33
462 × 462# search nodes1000.00280.9293.8440.6419.260.00
Path cost0.00192.96353.21604.99739.051000.00
Time required1000.00101.7818.356.532.520.00
Average666.67191.89155.14217.39253.61333.33
Table 5. Experimental results for the comparison between different state-of-the-art algorithms and the proposed ORMBA*.
Table 5. Experimental results for the comparison between different state-of-the-art algorithms and the proposed ORMBA*.
AlgorithmsMap DimensionNumber of Search NodesPath CostTime Required (s)
Dijkstra261 × 26143,440.25258.951.5023
462 × 26173,496.51436.652.4945
462 × 462137,696.72477.277.3836
Average84,877.83390.963.7935
DFS261 × 26136,553.301342.704.5641
462 × 26148,019.905644.209.5305
462 × 46277,399.005363.7035.6750
Average53,990.734116.8716.5898
BFS261 × 26143,874.00258.401.0516
462 × 26172,871.50436.651.2953
462 × 462136,987.80477.702.5602
Average84,577.77390.921.6357
A*261 × 26122,587.45257.954.5156
462 × 26149,740.21435.6512.8063
462 × 46268,308.97476.7022.3117
Average46,878.88390.1013.2112
TWA*261 × 26119,218.59262.323.9392
462 × 26144,035.81442.969.8472
462 × 46262,199.15478.4718.3117
Average41,817.85394.5810.6993
Proposed model
(ORMBA*)
261 × 2612219.61264.850.0957
462 × 2613258.22444.350.1664
462 × 4622995.51470.800.1597
Average2824.45393.330.1406
Table 6. Performance metrics in the Gazebo simulation and ROS platform.
Table 6. Performance metrics in the Gazebo simulation and ROS platform.
Parameters Source to DestinationA to BB to CC to DAverage
Algorithms
Path length (m)A*42.9524.1554.8040.63
TWA*43.1024.2554.9340.75
ORMBA*43.0824.2354.9040.74
Search time (s)A*18.79232.9738114.511445.4258
TWA*17.00252.7609102.311840.6917
ORMBA*3.93410.579320.59048.3679
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

Kabir, R.; Watanobe, Y.; Islam, M.R.; Naruse, K. Enhanced Robot Motion Block of A-Star Algorithm for Robotic Path Planning. Sensors 2024, 24, 1422. https://doi.org/10.3390/s24051422

AMA Style

Kabir R, Watanobe Y, Islam MR, Naruse K. Enhanced Robot Motion Block of A-Star Algorithm for Robotic Path Planning. Sensors. 2024; 24(5):1422. https://doi.org/10.3390/s24051422

Chicago/Turabian Style

Kabir, Raihan, Yutaka Watanobe, Md Rashedul Islam, and Keitaro Naruse. 2024. "Enhanced Robot Motion Block of A-Star Algorithm for Robotic Path Planning" Sensors 24, no. 5: 1422. https://doi.org/10.3390/s24051422

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