Hostname: page-component-745bb68f8f-lrblm Total loading time: 0 Render date: 2025-02-11T15:21:54.639Z Has data issue: false hasContentIssue false

Energy optimised D* AUV path planning with obstacle avoidance and ocean current environment

Published online by Cambridge University Press:  22 March 2022

Bing Sun*
Affiliation:
Shanghai Engineering Research Center of Intelligent Maritime Search & Rescue and Underwater Vehicles, Shanghai Maritime University, Shanghai, China
Wei Zhang
Affiliation:
School of Electrical Engineering, Shanghai Dianji University, Shanghai, China
Shiqi Li
Affiliation:
Shanghai Engineering Research Center of Intelligent Maritime Search & Rescue and Underwater Vehicles, Shanghai Maritime University, Shanghai, China
Xixi Zhu
Affiliation:
Shanghai Engineering Research Center of Intelligent Maritime Search & Rescue and Underwater Vehicles, Shanghai Maritime University, Shanghai, China
*
*Corresponding author. E-mail: hmsunbing@163.com
Rights & Permissions [Opens in a new window]

Abstract

For the path planning of autonomous underwater vehicles (AUVs) in the ocean environment, in addition to the planned path length and safe obstacle avoidance, it is also necessary to pay attention to the impact of ocean currents on the planned path. Therefore, this paper improves the original D* algorithm, and adds the obstacle cost item and the steering angle cost item as constraints on the basis of the original cost function, thus ensuring the navigation safety of the AUV. Considering that ocean currents have a greater impact on the energy consumption of AUVs, this paper establishes a cost model for the impact of ocean currents on AUV energy consumption and applies it to the D* path planning algorithm, so that AUVs can use ocean currents to reduce energy consumption, which can be seen through simulation experiments. The simulation results show that the improvement of the algorithm can plan an optimal energy consumption path.

Type
Research Article
Copyright
Copyright © The Author(s), 2022. Published by Cambridge University Press on behalf of The Royal Institute of Navigation

1. Introduction

The autonomous underwater vehicle (AUV) is an ocean exploration and research tool that relies on autonomous navigation and decision-making systems to navigate and complete tasks. To enable the AUV to reach the predetermined area safely and effectively in a complex marine environment, path planning algorithms are indispensable (Zeng et al., Reference Zeng, Lian, Sammut, He, Tang and Lammas2015; Wen et al., Reference Wen, Zhang, Liu and Wu2020). There are some path planning methods that have been widely used for robot path planning, such as fuzzy logic (Sun et al., Reference Sun, Zhu and Yang2018), artificial potential field method (Zhu and Yang, Reference Zhu and Yang2021), rapidly exploring random tree (RRT) (Carreras et al., Reference Carreras, Hernández, Vidal, Palomeras, Ribas and Ridao2018), etc. However, they are mainly designed for the path planning problem of continuous space and may not be suitable for grid map path planning (Zhu et al., Reference Zhu, Zhou and Yang2021). To deal with grid map path planning problem, the D* algorithm is a kind of modern intelligent algorithm that is suitable for an unknown or changing environment (Stentz, Reference Stentz1995). It is developed on the basis of Dijkstra algorithm and A* algorithm (Fu et al., Reference Fu, Chen, Zhou, Zheng, Wei, Dai and Pan2018; Niu et al., Reference Niu, Lu, Savvaris and Tsourdos2018), and is widely used in various path planning problems. The A* algorithm can only solve the static environment path planning problem, while the D* algorithm has the advantages of small calculation amount, high re-planning efficiency and excellent planning path. However, there are also some shortcomings. That is, the planned path may be close to the edge of the obstacle, and the corner is large and frequent.

In response to these problems, many scholars have conducted in-depth research to search for improvements to adapt to the path planning of robots in different fields. For example, a variant of the A* search has been proposed to obtain a kinematically feasible trajectory and improves the quality of the solution via numeric nonlinear optimisation (Dolgov et al., Reference Dolgov, Thrun, Montemerlo and Diebel2010). A modified A* algorithm has been used to generate planning path and applied for the path following problem (Zhao et al., Reference Zhao, Shaolong, Xianbo, Antonio, Nikola and Ðula2021). However, A* needs a full replanning cycle under the environmental change case which is not suitable under the complicated underwater case. Dakulović and Petrović (Reference Dakulović and Petrović2011) introduced a two-way D* algorithm with both forward and backward searches of the graph in weighted occupancy grid maps for a robot in two dimensional space. A hybrid Fuzzy-D*lite algorithm has been proposed for fast and smooth near-optimal goal-directed robot navigation in an unknown terrain for a two-wheeled robot (Reyes et al., Reference Reyes, Barczak, Susnjak and Jordan2017). The SLAM method based on the D* algorithm has been applied with negative edge weights to find the shortest path taking into account localisation uncertainty (Maurović et al., Reference Maurović, Seder, Lenac and Petrović2018). A dynamic path planning based on the improved Gaode map mapping D* algorithm, and adopting the vector function to make the planned path as straight as possible, has been shown to reduce the total length of the path and improve the search efficiency (Huang et al., Reference Huang, Huang, Zhong, Long, Wang, Qiang, Zhong and He2019). However, the path may be too close to the obstacle and the navigation safety is not guaranteed. A particle swarm optimisation algorithm has been combined with the D* algorithm to solve the threshold state in path planning (Sadiq and Hasan, Reference Sadiq and Hasan2017), but did not consider the performance constraints and three-dimensional path planning problems of the robot. Based on the previous work, it can be found that most of the research has focussed on the mobile robot or two-dimensional space which may be not suitable for a complicated underwater environment which is the focus of this work.

During the operation of the AUV, the ocean current, as an energy flow, has a great impact during its travel and may even endanger the smooth completion of the mission when the AUV encounters a strong ocean current (Li et al., Reference Li, Lee, Park and Kim2012; Zhu et al., Reference Zhu, Cheng and Sun2016). Due to the limited energy of the AUV, the influence of ocean currents on the energy consumption of the AUV must be considered when sailing in a wide range of marine environments. Ensuring the AUV is driven by ocean currents as far as possible will make full use of the ocean currents and reduce energy consumption (Garau et al., Reference Garau, Alvarez and Oliver2005; Song et al., Reference Song, Liu and Bucknall2017). An intelligent algorithm with the artificial potential field-based method was proposed to derive the shortest path. One major work is an adjusting function that eliminates the effect of ocean currents, but the energy cost is not considered (Zhu and Yang, Reference Zhu and Yang2021). Zeng et al. (Reference Zeng, Zhou and Lian2020) proposed a strategy that employs current field forecasts within an evolutionary path planner to find an optimal trajectory for an AUV, with maximum energy utilisation of the current motion and minimal time to reach its destination. A novel dynamic neural network model was used to plan the time-saving path in ocean current environments and the path was smoothed by the B-spline algorithm, but the computational complexity increases dramatically for large scale maps (Chen and Zhu, Reference Chen and Zhu2020).

The D* algorithm has the characteristics of fast speed and excellent path finding, and has been widely used in the field of AUV path planning. This paper improves on the basis of the original D* algorithm with consideration of both safety and energy cost optimisation. The innovations are as follows.

  1. 1. For the obstacle environment, with the consideration of obstacle distance and steering angle constraint, we modify the cost function of the D* algorithm, and add the obstacle cost and steering angle item to make the AUV navigation path safer and the steering angle smaller.

  2. 2. To reduce the energy cost owing to the limited energy of the AUV system, the ocean current effect is adopted for proper usage. An ocean current energy consumption cost model is designed and incorporated into the improved D* algorithm.

This paper is organised as follows. Section 2 describes the basic idea of the D* algorithm for AUV path planning. Section 3 introduces the improved D* algorithm with the obstacle cost model and steering angle cost model. Section 4 proposes the ocean current cost model to deal with optimal energy consumption to allow the AUV to work for longer. Simulation results are presented in Section 5. Finally, the conclusion is given in Section 6.

2. Basic D* algorithm for path planning

2.1 AUV path planning problem

Path planning is a fundamental research topic in the robotics area. However, differences are associated with the AUV path planning problem especially for the following issues, where the illustration is given in Figure 1.

  1. 1. We generate a collision free path from the starting point to the target point in the obstacle environment.

  2. 2. For the traditional global path planning problem, the environment information is known, but the actual environment information changes with only partial information known. Therefore, it is difficult to update the planning path, that is, a dynamic planning problem.

  3. 3. For traditional mobile robot path planning, only path/time optimisation is considered. In this paper, the optimal comprehensive planning of the ocean current environment under the constraint of the AUV energy is a major focus.

Figure 1. AUV path planning problem

2.2 Formulation of D* algorithm

This paper is based on the D* algorithm, so it is introduced from the dynamic path planning principle of the D* algorithm, and a simulation example is given to analyse the dynamic path planning process of the D* algorithm.

The cost formula of the D* algorithm is based on the sum of two functions $G(s)$ and $H(s)$, as shown in Equation (1). The D* algorithm uses an incremental heuristic function, as shown in Equation (2). Each time the adjacent grid is expanded, the value of the heuristic function of the expanded point and the arc value of the adjacent two points are used to calculate the value of the heuristic function of the extended point, as shown in Figure 2. Since the three-dimensional space map is inconvenient to perform, the following involves the multiple times use of the two-dimensional space map to show that the basic principles of the three-dimensional space are exactly the same:

(1)\begin{align} F(s) & = G(s) + H(s) \end{align}
(2)\begin{align} H(s) & = \left\{\begin{array}{ll} 0 & \text{if } s = s_{{\rm goal}}\\ \displaystyle\min_{s' \in {\rm Succ}(s)} H(s') + C(s,s') & \text{otherwise} \end{array} \right. \end{align}

where $G(s)$ represents the actual cost from the starting point to the current grid, $H(s)$ is the heuristic function, which represents the estimated cost from the current grid to the target point, $C(s,s')$ is the adjacent cost value between the current node and the expanded node, which is shown in Figure 2.

Figure 2. Schematic diagram of heuristic function: (a) two-dimensional; (b) three-dimensional

The D* algorithm mainly uses the OPEN table and CLOSE table to implement node expansion and optimal node selection when performing path planning. The role of the OPEN table is to save the extended nodes encountered in the search process and to sort the nodes according to the value of the generation. The CLOSE table is to save the expandable nodes with the lowest value in the OPEN table. Starting from the target point, put the target point into the OPEN table, and then calculate the heuristic value and generation value of the surrounding eight grids. (In the 3D environment, calculate the heuristic value and generation value of the surrounding 26 grids.) Select the grid point with the lowest value of the path generation to continue to expand. The expanded points are removed from the OPEN table and the remaining unexpanded points remain in the OPEN table, waiting for expansion. As shown in Figure 3, the green grid represents the target point, the red grid represents the starting point, the black shaded grid represents the obstacle, and from the target point to the starting point, the grid entering the OPEN table is recorded using the reverse pointer. With the direction of the optimal mapping, the brick-red shaded grid is the optimal path formed according to the optimal orientation.

Figure 3. Pointer index map

The method of the D* algorithm in dealing with dynamic obstacles is shown in Figure 4. The red grid is a temporary dynamic obstacle. When dynamic obstacles appear, the cost of the arc increases, thus affecting the calculation of the generation value, and it is impossible to expand the grid normally. In a dynamic environment with unknown surrounds, when dynamic obstacles appear, it is found that only a few grid pointers around the dynamic obstacle are affected, as shown in Figure 4(a). Therefore, as long as the pointer of the affected grid is reoriented, as shown in Figure 4(b), the red arrow in the grid represents the state after the grid is redirected after being affected by an obstacle. Based on the dynamic pointer indexing method, the D* algorithm can quickly deal with path planning problems in dynamic obstacle environments (Koenig and Likhachev, Reference Koenig and Likhachev2005).

Figure 4. Dynamic pointer index map

3. Improved D* algorithm with hybrid cost function design

3.1 Obstacle cost model

To obtain a safety path, the improved D* algorithm adds the obstacle threat cost term to the cost function of the original D* algorithm, and then controls the distance between the path and the obstacle to ensure the safety of the AUV navigation. The new cost function formula is shown in Equation (3). The representative meanings of $G(s)$ and $H(s)$ are still the same as the original D* algorithm, and $J(s)$ is the obstacle threat cost item (Garau et al., Reference Garau, Alvarez and Oliver2005; Zhu and Yang, Reference Zhu and Yang2021). As shown in Figure 5, the dark grey circle represents the obstacle information, the green circle represents the maximum range of the obstacle, and the red circle indicates the emergency danger range from the obstacle. Taking the distance from the current position of the underwater robot to the obstacle as an independent variable $d$, establish the obstacle threat model, the closer the obstacle is, the more cost is required, and vice versa. The cost model is shown in Equation (4),

(3)\begin{align} F(s)& = H(s) + G(s) + J(s) \end{align}
(4)\begin{align} J(s) & = \left\{ \begin{array}{ll} 0, & d > r_{\max}\\ \dfrac{c}{d}, & r_{\min} < d \le r_{\max}\\ \infty , & d \le r_{\min} \end{array} \right. \end{align}

where ${r_{\max }}$ is the maximum utility radius. The setting of the constant $c$ involves the ratio of the cost of the obstacle to the total value of the generation, reflecting the influence of the cost of the obstacle.

Figure 5. Obstacle cost model diagram: (a) two-dimensional; (b) three-dimensional

Dynamic obstacles appear temporarily after the path has been planned. If all the information is discarded at this time, and then the map is updated and completely re-planned, this will require a lot of time. Therefore, using the principle of the original D* algorithm to deal with obstacles, only the grid affected by the obstacle is processed. However, after adding the obstacle cost model, the affected grid range is a circle with radius $r_{\max }$, the cost and reverse pointer direction of the grid in the circle need to be updated, that is, the re-planning mode one, as shown in Figure 6(a). Set the $r_{\max } = 3$, the black pattern grid is a static obstacle, the red grid represents dynamic obstacles and the solid blue line is the initial planning path. The green circle represents the range of the grid affected by the obstacle, so it needs to update these grids, that is, the grey grids.

Figure 6. Re-planning update rule

When any of the dynamic obstacles appear, the direction of the reverse pointer of all the grids within the circle of the radius is updated. It can be found that the calculation method is not small, especially when the influence radius is relatively large and the environment is three-dimensional. Therefore, to improve the efficiency, the re-planning method two is adopted as shown in Figure 6(b), marked with a green circle. First, find the critical grid (magenta grid) affected by the obstacles, namely Cell_1, Cell_2, and calculate the new cost of the neighbour grid (within the green circle) of the Cell_1 grid from the critical grid Cell_1. Select the grid with the lowest value as the next expanded grid, and determine the direction of the reverse pointer, and proceed sequentially until it expands to the critical grid Cell_2, or the target point, then ends the re-planning. At this point, it can be seen that the number of re-planned grids has been greatly reduced, from the original 24 to 12 (grey grid).

3.2 Steering angle cost model

The dynamic path planning of the original D* algorithm does not consider the steering angle problem. The planned route may have a large steering angle and a large number of corners. In the actual AUV navigation process, it is not appropriate to rotate frequently. On one hand, it consumes more energy during the cornering process. On the other hand, frequent angle rotations pose a greater risk to the AUV in underwater navigation. Therefore, based on the original D* algorithm, the steering angle cost term is added to control the total steering angle of the path.

The improved D* algorithm is modified in the cost function of the original D* algorithm, adding the steering angle cost term, and then controlling the steering angle size of the path planning. Equation (5) is a cost function expression that improves the D* algorithm, where $H(s)$, $G(s)$, $J(s)$ are explained above, $T(s)$ is the corner cost item, and the specific calculation method will be described later. Each time the grid is expanded, the cost function $F(s)$ of each grid is calculated and arranged in the OPEN table in descending order. The grid is expanded as shown in Equation (6).

(5)\begin{align} F(s) & = H(s) + G(s) + T(s) \end{align}
(6)\begin{align} \text{Path}& =\{P_{n} \mid x_{p_{n}}=\max \{f(n), n=1,2, \ldots m\}, P_{p}=P_{c}, P_{c}=P_{n}\} \end{align}

where ${x_{{p_n}}}$ is the minimum generation value, ${P_p}$ is the position of the AUV's previous step, ${P_c}$ is the current position of the AUV and ${P_n}$ is the next position of the AUV.

The three-dimensional steering angle $\theta$ is calculated using the cosine theorem, as shown in Equations (7)–(8). Use the coordinates of ${P_p}$, ${P_c}$, ${P_n}$ to calculate the degree of steering angle, as shown in Figure 7.

(7)\begin{align} T(s) & = \frac{{4*k}}{\pi }|\theta | \end{align}
(8)\begin{align} \theta & = {\rm arc}\,\cos \frac{(\boldsymbol{P}_{\boldsymbol{p}}, \boldsymbol{P}_{\boldsymbol{c}})^2 + (\boldsymbol{P}_{\boldsymbol{c}}, \boldsymbol{P}_{\boldsymbol{n}})^2 - (\boldsymbol{P}_{\boldsymbol{p}}, \boldsymbol{P}_{\boldsymbol{n}})^2}{2\times(\boldsymbol{P}_{\boldsymbol{p}}, \boldsymbol{P}_{\boldsymbol{c}})\times(\boldsymbol{P}_{\boldsymbol{c}}, \boldsymbol{P}_{\boldsymbol{n}})} \end{align}

Figure 7. Schematic diagram of three-dimensional steering angle

4. Energy optimised D* path planning algorithm

When an AUV operates in a complex marine environment, there are many factors that affect its navigation, among which the ocean current effect is enormous. Especially when the AUV is sailing long distances, the energy consumption problem becomes particularly significant. The ocean current is a relatively stable non-periodic flow of seawater on a large scale. It changes with seasons, climate, sea area, topography and depth. It is a complex function of time and space. It is currently difficult to describe its motion law with precise mathematical expressions (Chen and Zhu, Reference Chen and Zhu2020). However, in a limited sea area and time period, the velocity and direction of ocean currents are relatively stable. Therefore, the research in this paper mainly considers the steady flow of ocean currents in the grid map and the steady interference on an underwater vehicle.

4.1 Ocean current model

To establish the mathematical model of ocean currents, one needs to know the concepts of velocity potential and current function. For the functional equation:

(9)\begin{equation} g=g(z) \end{equation}

where $z$ is a complex number, $z=x+i y$, $i=\sqrt {-1}$. Then, Equation (9) can be changed to the form of Equation (10):

(10)\begin{equation} G=\sigma+\mathrm{i} \phi \end{equation}

where $\sigma$ is the velocity potential and $\varphi$ is the flow function. So, we can get as Equation (11):

(11)\begin{equation} \left\{\begin{array}{@{}l} \dfrac{d g}{d z}=\dfrac{\partial \sigma}{\partial x}+i \dfrac{\partial \phi}{\partial x} \\ \dfrac{d g}{d z}=\dfrac{\partial \phi}{\partial y}-i \dfrac{\partial \sigma}{\partial y} \end{array}\right. \end{equation}

Further, the following Cauchy–Riemann equation can be obtained:

(12)\begin{equation} \left\{\begin{array}{@{}l} u=\dfrac{\partial \varphi}{\partial x}=\dfrac{\partial \sigma}{\partial y} \\ v=\dfrac{\partial \varphi}{\partial y}={-}\dfrac{\partial \sigma}{\partial x} \end{array}\right. \end{equation}

Combining Equation (12),

(13)\begin{equation} \frac{\partial}{\partial y}\left(\frac{\partial \varphi}{\partial x}\right)=\frac{\partial^{2} \varphi}{\partial x \partial y}=\frac{\partial}{\partial x}\left(\frac{\partial \varphi}{\partial y}\right) \end{equation}

Finally, Equation (14) can be obtained:

(14)\begin{equation} \frac{\partial^{2} \sigma}{\partial x^{2}}+\frac{\partial^{2} \sigma}{\partial y^{2}}=0 \end{equation}

In the same way, Equation (15) can be obtained:

(15)\begin{equation} \frac{\partial^{2} \varphi}{\partial x^{2}}+\frac{\partial^{2} \varphi}{\partial y^{2}}=0 \end{equation}

In a two-dimensional constant flow field, if the velocity is parallel to the $y$-axis, the velocity potential and flow function are

(16)\begin{equation} \left\{\begin{array}{@{}l} \varphi=v y \\ \sigma={-}v x \end{array}\right. \end{equation}

The above equations are all based on the two-dimensional plane, and they can be extended to the three-dimensional plane. The velocity potential of incompressible flow field satisfies the Laplace equation and is a harmonic function. It is well known that the continuity equation of an incompressible fluid is ${\partial v_{x}}/{\partial x}+{\partial v_{y}}/{\partial y}+{\partial v_{z}}/{\partial z}=0$. Substitute ${\partial \varphi }/{\partial x}=v_{x}$, ${\partial \varphi }/{\partial y}=v_{y}$, ${\partial \varphi }/{\partial z}=v_{z}$ into the continuous equation, then it can be concluded that

(17)\begin{equation} \frac{\partial^{2} \varphi}{\partial x^{2}}+\frac{\partial^{2} \varphi}{\partial y^{2}}+\frac{\partial^{2} \varphi}{\partial z^{2}}=0 \end{equation}

The steady flow field simulation model parallel to the $x$-axis in a three-dimensional environment is shown in Figure 8.

Figure 8. Steady ocean current model parallel to the $x$-axis

4.2 Ocean currents affect energy consumption cost model

As it is well known, to enhance seaworthiness and safety, ships sailing in high winds and waves at sea will drive at full power and go against the current at maximum speed, because this can increase the efficiency of the propeller, enhance the hydrodynamic performance of the rudder and improve the manoeuvrability of the ship.

Similarly, if the maximum speed of the AUV has a large margin compared with the ocean current, the counter current navigation will maintain a relatively stable heading angle to reduce the possibility of accidents. However, if the task requires the AUV to sail for a longer distance and the ocean current is moderate in size, the ocean current can be fully utilised on the basis of satisfying the AUV manoeuvrability and drive downstream to save energy.

When the direction of the ocean current is different from the head and tail direction of the AUV, that is, when the AUV is travelling on the side stream, the ocean current force will generate a turning moment on the AUV. In addition, when the AUV is subjected to current pressure, it will drift in the direction of the flow, thereby producing the counteraction of water that prevents its drift. As a result, the water resistance also gives the AUV a turning moment. For this kind of turning effect produced by ocean currents, the AUV needs to consume a lot of energy to resist the forces and moments it generates, while maintaining a set heading. When the direction of the head and tail of the AUV is perpendicular to the direction of the ocean current, it is difficult for the AUV to navigate the predetermined trajectory. Therefore, during path planning, the effect of lateral ocean currents should be minimised to save the energy required for AUV operation.

In summary, when the AUV is sailing long distances, the path planning is based on the principle that downstream flow is the best, the reverse flow is second and the lateral flow is the worst, which can make full use of ocean currents to save energy. Now we establish a cost model based on the above principles and apply it to the D* algorithm. The energy consumption cost item is added to the cost function of the D* algorithm, as shown in Equation (18),

(18)\begin{equation} F(s)=G(s)+H(s)+J(s)+T(s)+\delta(s) \end{equation}

where $G(s)$, $H(s)$, $J(s)$, $T(s)$ remains the same as in the previous section, and $\delta (s)$ represents the current impact weight between grids $i$ and $j$.

Because it is assumed that the AUV is travelling in a sea current with a suitable and uniform speed, only the direction information of the sea current needs to be considered. The design of the ocean current influence factor is determined according to the angle between the AUV movement direction and the ocean current direction, in a three-dimensional environment, as shown in Figure 9.

Figure 9. Diagram of the angle between the current direction W1 and the AUV movement direction W2

Then, we define the current influence $\delta _{i, j}$ between grid $i$ and $j$ as follows:

(19)\begin{equation} \delta_{i, j}=\left\{\begin{array}{@{}l} a \cdot \delta_{1},|w 1-w 2|=0 \\ a \cdot \delta_{2},|w 1-w 2|=p i / 4 \\ a \cdot \delta_{3},|w 1-w 2|=0{\cdot}9553 \\ a \cdot \delta_{4},|w 1-w 2|=p i / 2 \\ a \cdot \delta_{5},|w 1-w 2|=2{\cdot}1863 \\ a \cdot \delta_{6},|w 1-w 2|=3^{*} p i / 4 \\ a \cdot \delta_{7},|w 1-w 2|=p i \end{array}\right. \end{equation}

Among them, $a$ is a constant factor, which can be determined by the actual marine environment and used to adjust the size range of $\delta _{i, j}$ to fit the cost function formula. A larger value of $a$ will result in a larger proportion of ocean current energy cost items in the total cost items and a more downstream planned path. The value of $a$ in the simulation part of this paper is set to 1. Here, $\delta _{k}$ is based on the angle between the direction of the ocean current and the direction of the movement of the AUV to formulate a weight to approximate the impact of the ocean current on the energy consumption of the AUV. According to the principle that the downstream flow is the best, the reverse flow is the second and the lateral flow is the worst, we set $\delta _{1}=0$, $\delta _{2}=2$, $\delta _{3}=2{\cdot }3$, $\delta _{4}=4$, $\delta _{5}=3{\cdot }3$, $\delta _{6}=3$, $\delta _{7}=1$.

4.3 Comprehensive path optimisation process implementation

The so-called comprehensive path optimisation means that the improved algorithm based on D* is applied to the dynamic path planning of the AUV when considering the ocean current factor, so as to achieve the optimal effect of the planned path. The process of comprehensive path optimisation is shown in Figure 10.

Figure 10. Flowchart for comprehensive optimising path planning

Since it is an improvement on the basis of the D* algorithm, most of the symbols and functions involved in the improved D* algorithm are the same as those in the original D* algorithm. The following is a brief introduction to the Current_cost(), Danger_cost() and Turn_cost() functions.

Current_cost() is the cost function of energy consumption influenced by the ocean current. In the process of path planning, the energy consumption generation value of the grid to be expanded due to the influence of the ocean current is calculated according to the principle that the downstream flow is the best, the top flow is the second and the lateral flow is the worst.

Danger_cost() is the obstacle threat cost function which calculates the value of the expansion grid due to the threat of obstacles in the path planning process. Its value is related to the distance to the nearest boundary of the obstacle. A closer distance will result in a greater cost that will need to be paid.

Turn_cost() is the steering angle cost function. According to the coefficient before adjusting the cost term of steering angle, reflecting the strength of repulsion to large steering, a larger steering angle will result in a greater calculated substitution value and a lower likelihood that it will be selected as the path.

5. Simulation and results analysis

To verify the validity of the proposed method, a simulation experiment under a different underwater environment is conducted which is especially divided into two conditions: path planning without ocean current and path planning with ocean current.

5.1 Path planning without ocean current environment

Considering that the navigation environment of the AUV is a three-dimensional underwater environment, the simulation environment uses a $15\times 15\times 15$ grid map, where the red cuboids are dynamic obstacles, yellow cuboids are static obstacles and the remaining transparent grids are free grids. The target point is uniformly set to (13, 14, 14) and the starting point is uniformly set to (1, 1, 1). In the simulation part, the map is set to be a small scale to verify the obstacle avoidance efficiency under a crowded obstacle environment. Undoubtedly, it can be extended to a large scale case which is an easier case by, for example, increasing the scale of grid map.

The obstacle constraint is added to the cost function and the strength of the reaction constraint is determined according to the difference of the coefficients before the constraint. Figure 11 shows the path planning results under different obstacle term coefficients $c=0$, 0$\cdot$3, 0$\cdot$5, 0$\cdot$7. The blue dotted line is the planned path before the dynamic obstacle appears, while the magenta solid line is the re-planning path. It can be seen from the result graph that as the parameter increases, which reflects that the degree of constraint of the obstacle item is increasing, the path of the improved D* algorithm is more and more inclined to a relatively safe path.

Figure 11. Three-dimensional safe distance simulation results

Table 1 is the statistical result of the number of dangerous grids $num$, the total length of the path $L$ and the objective function $S_{1}=\text {num(danger grid)}+L \text { (length of the path)}$ in the path under the four parameters in the statistical three-dimensional dynamic path planning process. According to the data in the table, as the coefficient $c$ increases and the binding force of the reaction obstacle increases, the path of the improved D* algorithm is more and more inclined to a relatively safe path, avoiding the obstacle as much as possible. However, for the total path, the length is increasing, so when $c=0{\cdot }5$, the value of the objective function is the smallest and the path is relatively optimal.

Table 1. Statistical results table of 3D environment

The simulation results of the improved D* algorithm for adding the steering angle cost term are shown in Figure 12. The simulation environment also uses a $15\times 15\times 15$ grid map. The target point is uniformly set to (13, 14, 14) and the starting point is uniformly set to (1, 1, 1). Figure 12 is the result of the path planning under different coefficients of steering angle cost term $k=0$, 3, 6, 9. The blue dotted line is the planning path before the dynamic obstacle is not present, and the magenta solid line is the re-planning path. It can be seen from the comparative simulation experiment that as the coefficient of the steering angle cost term increases, the constraint on the steering angle is gradually increasing, thereby reducing the path steering angle and reducing the number of corners.

Figure 12. Three-dimensional steering angle simulation results

Table 2 shows the statistics of the sum of the steering angle $({4}/{\pi }) \sum _{i=1}^{n} \theta _{i}$, the total length of the path $L$ and the objective function $S_{2}=\sum _{i=1}^{n} \theta _{i}+L$ for the four parameter values in the three-dimensional environment. As the parameter $k$ increases, the total length of the path changes little, while the sum of the planned path steering angles decreases and the objective function has the smallest value when $k=1$, so the path is optimal.

Table 2. Statistical results table of 3D environment

Combining the two improvements, we add the obstacle cost term and the steering angle cost term to the cost function. Figure 13 is the result of underwater three-dimensional environmental dynamic path planning after both modifications are integrated into the D* algorithm. The strength of the obstacle distance constraint and the steering angle constraint is controlled by controlling the coefficients of the two cost terms. Figure 13(a) is the result of the path planning when the coefficients are $c = 0$, $k = 0$, that is, the two constraints do not work, which is the path planning of the original D* algorithm. Figure 13(b) is the path planning result when the coefficients are $c = 0{\cdot }2$, $k = 8$, that is, both constraints work, which is a comprehensive improvement of the path planning of the D* algorithm. It can be seen from the result graph that under the two constraints, the improved D* algorithm not only keeps a certain distance from the obstacle, but also reduces the total steering angle.

Figure 13. Safety distance and steering angle simulation in 3D

Table 3 shows the statistical results of the number of dangerous grids $num$, the sum of steering angles $({4}/{\pi })\sum _{i = 1}^n {{\theta _i}}$ and the length of the path in the case of two parameters. It can be seen from the statistical results that the improved D* algorithm has a significant effect on the safe distance from the edge of the obstacle and the sum of the steering angles.

Table 3. Statistical results table of 3D environment

5.2 Path planning in two-dimensional ocean current environment

In this section, the ocean current is considered which is more practical for the underwater environment. When the ocean current direction is parallel to the $x$-axis, Figure 14(a) shows a simulation diagram of path planning without considering the influence of ocean currents, and Figure 14(b) shows a simulation diagram of path planning considering the effects of ocean currents.

Figure 14. Influence of ocean currents in path planning

By comparing Figures 14(a) and 14(b), it can be seen that the algorithm before and after the improvement can make the AUV reach the target point from the starting point. The length and energy consumption of the two paths are shown in Table 4. The improved path length is slightly longer than the original path length, but due to the use of ocean currents as well as reducing the situation of lateral flow, the energy consumption of the improved path is lower.

Table 4. Comparison of path length and AUV energy consumption

When the ocean current direction is parallel to the $y$-axis, Figure 15(a) shows the path planning simulation diagram without considering the impact of ocean currents, and Figure 15(b) shows the path planning simulation diagram considering the impact of ocean currents.

Figure 15. Whether to consider the influence of ocean currents in path planning

Similarly, the algorithm before and after the improvement can make the AUV reach the target point from the start point. The length and energy consumption of the two paths are shown in Table 5. The improved path length is slightly longer than the original path length, but due to the use of ocean currents as well as reducing the situation of lateral flow, the energy consumption of the improved path is lower.

Table 5. Comparison of path length and AUV energy consumption

Next, the dynamic path planning performance is simulated. Figure 16 shows the path re-planning when a dynamic obstacle appears temporarily after the initial path planning is completed under two different ocean current environments (horizontal and vertical currents). It can be seen that the re-planned path can avoid the dynamic obstacle under an ocean current environment.

Figure 16. Path planning when dynamic obstacles appear

5.3 Path planning in three-dimensional ocean current environment

Similar to the two-dimensional ocean current environment, the processing for three-dimensional path planning under an ocean current environment is basically the same since the ocean current usually moves only in one plane. Here, the ocean current directions are set to the $x$-axis direction and the $z$-axis direction.

When the ocean current direction is parallel to the $x$-axis, the simulation result is given in Figure 17 and a comparison of the original D* with the improved D* is listed in Table 6. Through the comparison of the results, a conclusion similar to that in the two-dimensional environment can be obtained, that is, the improved path length is slightly longer but the energy consumption is lower. According to the improved algorithm for dynamic path planning, the result is as expected.

Figure 17. Influence of ocean currents ($x$-axis) in path planning

Table 6. Comparison of path length and AUV energy consumption

When the ocean current direction is parallel to the $z$-axis, the simulation result is given in Figure 18 and comparison of the original D* with the improved D* is listed in Table 7. The energy consumption is lower with the proposed method while the path length is basically the same.

Figure 18. Influence of ocean currents ($z$-axis) in path planning

Table 7. Comparison of path length and AUV energy consumption

At the end of the experiment, the performance of the proposed method in a dynamic obstacle environment under an ocean current is also tested, as shown in Figure 19. The re-planned path can avoid the dynamic obstacle under an ocean current environment even in the three-dimensional space. Additionally, one thing to mention is that, under the current work, the parameter selection is based on trial and error, and obtaining a good path planning result. It should be noted that trial and error parameter selection has shortcomings and cannot guarantee the optimal path for any case. Some optimisation algorithm like PSO/GA (Xiang and Xiang, Reference Xiang and Xiang2021) may be adopted to obtain the optimal parameter and path in the near future.

Figure 19. Path planning with dynamic obstacles under different ocean current environment

6. Conclusion

This paper proposes an improved D* algorithm for the dynamic path planning of AUVs under ocean current environments. To the original D* algorithm, three cost functions are added to reach a safety and energy consumption optimal path. The obstacle cost and steering angle cost function ensure path security. Based on the safety path, the ocean current impact energy consumption cost item is added, so that the AUV can plan a more energy-efficient path in the ocean current environment.

Acknowledgements

This project was supported in part by the National Natural Science Foundation of China (61873161, 52001195), Shanghai Rising-Star Program (20QA1404200) and Natural Science Foundation of Shanghai (22ZR1426700).

References

Carreras, M., Hernández, J. D., Vidal, E., Palomeras, N., Ribas, D. and Ridao, P. (2018). Sparus II AUV—a hovering vehicle for seabed inspection. IEEE Journal of Oceanic Engineering, 43, 344355. doi:10.1109/JOE.2018.2792278CrossRefGoogle Scholar
Chen, M. and Zhu, D. (2020). Optimal time-consuming path planning for autonomous underwater vehicles based on a dynamic neural network model in ocean current environments. IEEE Transactions on Vehicular Technology, 69, 1440114412. doi:10.1109/TVT.2020.3034628CrossRefGoogle Scholar
Dakulović, M. and Petrović, I. (2011). Two-way d* algorithm for path planning and replanning. Robotics and Autonomous Systems, 59, 329342. Special Issue ECMR 2009. doi:10.1016/j.robot.2011.02.007CrossRefGoogle Scholar
Dolgov, D. A., Thrun, S., Montemerlo, M. and Diebel, J. (2010). Path planning for autonomous vehicles in unknown semi-structured environments. The International Journal of Robotics Research, 29, 485501. doi:10.1177/0278364909359210CrossRefGoogle Scholar
Fu, B., Chen, L., Zhou, Y., Zheng, D., Wei, Z., Dai, J. and Pan, H. (2018). An improved a* algorithm for the industrial robot path planning with high success rate and short length. Robotics and Autonomous Systems, 106, 2637. doi:10.1016/j.robot.2018.04.007CrossRefGoogle Scholar
Garau, B., Alvarez, A. and Oliver, G. (2005). Path Planning of Autonomous Underwater Vehicles in Current Fields with Complex Spatial Variability: An a* Approach. Proceedings of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, Spain: IEEE, 194–198. doi:10.1109/ROBOT.2005.1570118CrossRefGoogle Scholar
Huang, H., Huang, P., Zhong, S., Long, T., Wang, S., Qiang, E. and Zhong, Y., He, L. (2019). Dynamic Path Planning Based on Improved D* Algorithms of Gaode Map. In: 2019 IEEE 3rd Information Technology, Networking, Electronic and Automation Control Conference (ITNEC), Chengdu, China: IEEE, 1121–1124. doi:10.1109/ITNEC.2019.8729438CrossRefGoogle Scholar
Koenig, S. and Likhachev, M. (2005). Fast replanning for navigation in unknown terrain. IEEE Transactions on Robotics, 21, 354363. doi:10.1109/TRO.2004.838026CrossRefGoogle Scholar
Li, J. H., Lee, M. J., Park, S. H. and Kim, J. G. (2012). Real Time Path Planning for a Class of Torpedo-type AUVs in Unknown Environment, 2012 IEEE/OES Autonomous Underwater Vehicles (AUV), Southampton, UK: IEEE, 1–6. doi:10.1109/AUV.2012.6380728CrossRefGoogle Scholar
Maurović, I., Seder, M., Lenac, K. and Petrović, I. (2018). Path planning for active slam based on the D* algorithm with negative edge weights. IEEE Transactions on Systems, Man, and Cybernetics: Systems, 48, 13211331. doi:10.1109/TSMC.2017.2668603CrossRefGoogle Scholar
Niu, H., Lu, Y., Savvaris, A. and Tsourdos, A. (2018). An energy-efficient path planning algorithm for unmanned surface vehicles. Ocean Engineering, 161, 308321. doi:10.1016/j.oceaneng.2018.01.025CrossRefGoogle Scholar
Reyes, N. H., Barczak, A. L. C., Susnjak, T. and Jordan, A. (2017). Fast and Smooth Replanning for Navigation in Partially Unknown Terrain: The Hybrid Fuzzy-D*lite Algorithm, Springer International Publishing, 3141.Google Scholar
Sadiq, A. T. and Hasan, A. H. (2017). Robot Path Planning Based on PSO and D* Algorithmsin Dynamic Environment. In: 2017 International Conference on Current Research in Computer Science and Information Technology (ICCIT), Sulaymaniyah, Iraq: IEEE, 145–150. doi:10.1109/CRCSIT.2017.7965550CrossRefGoogle Scholar
Song, R., Liu, Y. and Bucknall, R. (2017). A multi-layered fast marching method for unmanned surface vehicle path planning in a time-variant maritime environment. Ocean Engineering, 129, 301317. doi:10.1016/j.oceaneng.2016.11.009CrossRefGoogle Scholar
Stentz, A. (1995). The Focussed D* Algorithm for Real-time Replanning. In: Proceedings of the 14th International Joint Conference on Artificial Intelligence. Vol. 2. San Francisco, CA: Morgan Kaufmann Publishers Inc., 1652–1659.Google Scholar
Sun, B., Zhu, D. and Yang, S. X. (2018). An optimized fuzzy control algorithm for three-dimensional AUV path planning. International Journal of Fuzzy Systems, 20, 597610. doi:10.1007/s40815-017-0403-1CrossRefGoogle Scholar
Wen, N., Zhang, R., Liu, G. and Wu, J. (2020). Online heuristically planning for relative optimal paths using a stochastic algorithm for USVs. Journal of Navigation, 73, 485508. doi:10.1017/S0373463319000791CrossRefGoogle Scholar
Xiang, G. and Xiang, X. (2021). 3d trajectory optimization of the slender body freely falling through water using cuckoo search algorithm. Ocean Engineering, 235, 109354. doi:10.1016/j.oceaneng.2021.109354CrossRefGoogle Scholar
Zeng, Z., Lian, L., Sammut, K., He, F., Tang, Y. and Lammas, A. (2015). A survey on path planning for persistent autonomy of autonomous underwater vehicles. Ocean Engineering, 110, 303313. doi:10.1016/j.oceaneng.2015.10.007CrossRefGoogle Scholar
Zeng, Z., Zhou, H. and Lian, L. (2020). Exploiting ocean energy for improved AUV persistent presence: path planning based on spatiotemporal current forecasts. Journal of Marine Science and Technology, 25, 2647. doi:10.1007/s00773-019-00629-0CrossRefGoogle Scholar
Zhao, W., Shaolong, Y., Xianbo, X., Antonio, V., Nikola, M. and Ðula, N. (2021). Cloud-based mission control of USV fleet: Architecture, implementation and experiments. Control Engineering Practice, 106, 104657. doi:10.1016/j.conengprac.2020.104657Google Scholar
Zhu, D. and Yang, S. X. (2021). Path planning method for unmanned underwater vehicles eliminating effect of currents based on artificial potential field. Journal of Navigation, 74, 955967. doi:10.1017/S0373463321000345CrossRefGoogle Scholar
Zhu, D., Cheng, C. and Sun, B. (2016). An integrated AUV path planning algorithm with ocean current and dynamic obstacles. International Journal of Robotics and Automation, 31, 382389. doi:10.2316/Journal.206.2016.5.206-4570CrossRefGoogle Scholar
Zhu, D., Zhou, B. and Yang, S. X. (2021). A novel algorithm of multi-AUVs task assignment and path planning based on biologically inspired neural network map. IEEE Transactions on Intellitent Vehicles, 6, 333342. doi:10.1109/TIV.2020.3029369CrossRefGoogle Scholar
Figure 0

Figure 1. AUV path planning problem

Figure 1

Figure 2. Schematic diagram of heuristic function: (a) two-dimensional; (b) three-dimensional

Figure 2

Figure 3. Pointer index map

Figure 3

Figure 4. Dynamic pointer index map

Figure 4

Figure 5. Obstacle cost model diagram: (a) two-dimensional; (b) three-dimensional

Figure 5

Figure 6. Re-planning update rule

Figure 6

Figure 7. Schematic diagram of three-dimensional steering angle

Figure 7

Figure 8. Steady ocean current model parallel to the $x$-axis

Figure 8

Figure 9. Diagram of the angle between the current direction W1 and the AUV movement direction W2

Figure 9

Figure 10. Flowchart for comprehensive optimising path planning

Figure 10

Figure 11. Three-dimensional safe distance simulation results

Figure 11

Table 1. Statistical results table of 3D environment

Figure 12

Figure 12. Three-dimensional steering angle simulation results

Figure 13

Table 2. Statistical results table of 3D environment

Figure 14

Figure 13. Safety distance and steering angle simulation in 3D

Figure 15

Table 3. Statistical results table of 3D environment

Figure 16

Figure 14. Influence of ocean currents in path planning

Figure 17

Table 4. Comparison of path length and AUV energy consumption

Figure 18

Figure 15. Whether to consider the influence of ocean currents in path planning

Figure 19

Table 5. Comparison of path length and AUV energy consumption

Figure 20

Figure 16. Path planning when dynamic obstacles appear

Figure 21

Figure 17. Influence of ocean currents ($x$-axis) in path planning

Figure 22

Table 6. Comparison of path length and AUV energy consumption

Figure 23

Figure 18. Influence of ocean currents ($z$-axis) in path planning

Figure 24

Table 7. Comparison of path length and AUV energy consumption

Figure 25

Figure 19. Path planning with dynamic obstacles under different ocean current environment