|
The process for the improved Aā algorithm |
|
Input: Environment digital model, starting point, and target point |
(1) Initialize the cell |
(2) If initialization is marked as 0, indicate that the grid has not been evaluated |
(3) Else initialization is marked as 1, indicating that it is represented as a point on the path or impassable |
(4) Create a container m_openList that holds the path node |
(5) Add the starting point to the m_openList as the current node |
(6) While (the current node is not the target point) |
(7) View the current node adjacent to passable child nodes |
(8) If (there are child nodes in m_openList) |
(9) There is a cross in the path, so remove the cross section |
(10) Else if (child nodes exist passable) |
(11) Calculate the value of the adjacent passable subpoint; see formula (13) |
(12) Select the adjacent passable subpoint with the smallest value |
(13) Add to the m_openList and use it as the current point of the path |
(14) Else |
(15) Return the previous node and select the minimum value among the remaining child nodes |
(16) Falling back to the starting point means that no path has been found |
(17) Return failed to find a way |
(18) Return m_openList |
(19) Traverse the nodes on the path to get path information |
(20) Calculate the estimated passing time of the path by using formulas (9) and (10) |
Output: The path from the starting point to the target point |
|