Dynamic Obstacle Avoidance for Unmanned Underwater Vehicles Based on an Improved Velocity Obstacle Method

In view of a dynamic obstacle environment with motion uncertainty, we present a dynamic collision avoidance method based on the collision risk assessment and improved velocity obstacle method. First, through the fusion optimization of forward-looking sonar data, the redundancy of the data is reduced and the position, size and velocity information of the obstacles are obtained, which can provide an accurate decision-making basis for next-step collision avoidance. Second, according to minimum meeting time and the minimum distance between the obstacle and unmanned underwater vehicle (UUV), this paper establishes the collision risk assessment model, and screens key obstacles to avoid collision. Finally, the optimization objective function is established based on the improved velocity obstacle method, and a UUV motion characteristic is used to calculate the reachable velocity sets. The optimal collision speed of UUV is searched in velocity space. The corresponding heading and speed commands are calculated, and outputted to the motion control module. The above is the complete dynamic obstacle avoidance process. The simulation results show that the proposed method can obtain a better collision avoidance effect in the dynamic environment, and has good adaptability to the unknown dynamic environment.


Introduction
The unmanned underwater vehicle (UUV), as an intelligent device for long-term remote underwater navigation, must carry a variety of sensors and special equipment for performing particular missions and tasks [1][2][3]. Among them, the forward-looking sonar in the UUV search and obstacle avoidance process has an unparalleled importance. How to effectively use the front view sonar to obtain information and achieve rapid obstacle avoidance has become a focus of attention [4][5][6].
In the ocean environment, apart from static obstacles, UUV also faces the threat of dynamic obstacles such as underwater floating objects and the other underwater vehicles. The state of known dynamic obstacles can be predicted easily; however, dynamic obstacles in the underwater environment are sudden and unpredictable. For the safety of navigation, the collision avoidance of unknown dynamic obstacles is gaining more and more attention.
The common collision avoidance methods include artificial aperture method (APF) [7][8][9], dynamic window method (DWA) [10] and behavior method [11]. They have strong adaptability to local environments and rely on limited sensor information to avoid collisions and have high efficiency. As the external environment information and its own state has uncertain and partially unknown characteristics, people also often use the intelligent control algorithm in the collision avoidance process, including the fuzzy system, the expert system and deep reinforcement learning and so on. Conti [7] proposes an innovative decentralized approach for cooperative mobile manipulation of Intervention-Autonomous Underwater Vehicles (I-AUVs) based on a different use of potential field method. Navigation and control problems are reduced to the evaluation of the distance vector among the vehicles, object and obstacles. Subramanian [8] proposes a multi-point potential field (MPPF) Autonomous Underwater Vehicle (AUV) three-dimensional path-planning method that introduces the direction of search in the potential field, and does not need to calculate the potential gradient. In the paper [9], the proposal makes use of the Artificial Potential Field (APF) method with a Bacterial Evolutionary Algorithm (BEA) to obtain an enhanced flexible path planner method in environments with static and dynamic obstacles, taking all the advantages of using the APF method. Inara [10] applies DWA to autonomous navigation of AUV in a three-dimensional environment. The paper [11] proposes a technique for avoiding obstacles based on the behavioral structure. In this technique, when a mobile robot gets close to an obstacle, while moving toward its target, a rotational potential field is applied to lead the mobile robot to avoid the obstacle, without locating local minimum positions. Aim [12] presents type-2 fuzzy ontology-based semantic knowledge (T2FOBSK). The distance to closest point of approach (DCPA), time to closest point of approach (TCPA) and variation of compass degree (VCD) are used to calculate the degree of collision risk between AUVs and obstacles. A concise deep reinforcement learning obstacle avoidance (CDRLOA) algorithm is proposed with the powerful deep Q-network architecture to overcome the usability issue caused by the complicated control law in the traditional analytic approach [13]. In order to avoid dynamic obstacles in a timely manner during manufacturing tasks performed by manipulators, D. Han [14] proposes a novel method based on distance calculation and discrete detection. The paper [15] presents the design and implementation of sampling-based path-planning methods for a AUV to avoid collision with commercial aircraft and other moving obstacles. The velocity obstacle (VO) is a conical space that is generated in the robot's velocity space, and also is a set of velocity vectors. As long as the current velocity vector is outside of the VO, the robot will not collide with an obstacle at any time in the future. Based on this feature, we can conduct real-time motion planning by combining the technology of graphics and the method of optimal control [16]. Ivan R. Bertaska [17] designed a planner that combines a local search based on the VO concept with a global, lattice-based search for a dynamically feasible trajectory. In the paper [18], the proposed approach is based on velocity obstacles (VO) method, which generated a cone-shaped obstacle in the velocity space. However, one of the important premises of VO is to assume that the moving obstacle only does the uniform linear motion; it cannot apply to the situation that the motion path of obstructions is arbitrary. Shiller presents the nonlinear velocity obstacle (NLVO) method, which will consider the shape, size and path curvature of an obstacle [19]. Based the above results, the article [20] introduces the time of avoiding the collision in order to estimate the distance among obstacles, and uses the A* algorithm to search the optimal velocity. On account of the shape, size and velocity uncertainty of obstacles, Kluge raises the probability velocity obstacle (PVO), which takes into account the error of barrier shape and speed. Jamie [21] describes a method of mixed reciprocal velocity obstacle, and it is used for coordinated avoidance of multiple sports. In the paper [22], a safety collision avoidance method is depicted for unmanned surface vehicles (USV) in a dynamic situation. It combines VO with the International Regulations for Preventing Collisions at Sea (COLREGS) and based on the maritime rules of crossover, transcendence and encounter, and sets up search rules for the best speed of collision avoidance.
The method of velocity obstacle also exists all kinds of problems.

The uncertainty of obstacle motion
There is a variety of uncertainties for a moving obstacle, such as position, size and speed. An important prerequisite for the velocity obstacle is that the barrier speed will stay constant in the decision cycle, otherwise it will collide. NLVO pays attention to the obstacle of nonlinear motion, but needs to know the trajectory of an obstacle, and it does not apply to unknown obstacles [19].
PVO takes the error of obstacle shape and speed into account, but demands to undertake multiple integral operations, so that a large computation is necessary [20]. The direct expansion method is the most common. Based on the error of the radius, position and speed, it will expand VO in the maximum expansion circle [22,23]. Van proposes that obstacles can be expanded in the maximum velocity [24]. The worst scenario is considered and the result is relatively conservative. The contribution of the paper [25] is that a method was demonstrated to extract the collision cones of circular and non-circular objects using a laser sensor.

The opportunity uncertainty of collision avoidance
It is vitally significant for collision avoidance to determine the right opportunities in the course of UUV dynamic anti-collision. Through calculating velocity obstacle, we can easily weigh up UUV collision with the barriers and UUV safe navigation collision speed, but cannot gain the time and distance of obstacle avoidance, so that the opportunities of anti-collision are not clear. Paper [16] only takes the distance of collision avoidance into account. Paper [26] thinks over the time of anti-collision. In paper [27], the multi-step space that a robot can reach in the time of collision avoidance is presented, and the time factor and the distance factor are considered synthetically. Meanwhile, if there are numerous obstacles near the UUV, the UUV will have very few velocity candidates. In paper [28], a method for choosing optimal velocity components using the concept of pass-time and vertical clearance is proposed for the efficient movement of a robot.

Processing of large static obstacles
When using the velocity obstacle method to make dynamic avoidance decisions, the current literatures deal less with large static obstacles. The moving obstacles are only considered in few workspaces [16,21]. Although paper [29] pays attention to both static obstacles and moving barriers, it is assumed that the position and shape of static obstacles are known or that the size is small. If the large static obstacles that present in a dynamic environment are expanded directly, it may be overinflated, so that the optimal path cannot be found. In view of this situation, the minimum safe distance method is presented in paper [29]. A double-detection window of different size is used in article [28], and the static obstacles only are handled in the smaller window. This way may reduce the problem of excessive expansion of obstacles, but will lead to obtaining incomplete information about barriers.
In view of the above questions, a dynamic obstacle avoidance system based on improved velocity obstacle is proposed in this paper. An outline of the paper is as follows: some background on the method of velocity obstacle is presented in Section 2. Section 3 details the dynamic collision obstacle method based on improved velocity obstacles, and includes the treatment of obstacles, the method of decision and so on. Extensive simulation results and a practical example of this method are provided in Section 4. Section 5 raises some discuss. Finally, concluding remarks are made in Section 6.

Environmental Modeling
In Figure 1, R is defined as UUV, and O is a moving obstacle. The UUV and obstacles are expanded into the round moving body, and their radii are R r and R o respectively. In the global Cartesian coordinate system X-Y, UUV can be expressed as R(t) = (X r (t), v r (t)), and X r (t) = (x r (t), y r (t)) ∈ R 2 is center position of UUV, v r (t) is speed vector of UUV. Meanwhile, moving obstacles can be expressed as  A relative Cartesian coordinate system X R -Y R is established by regarding current position of UUV as the origin, and its axis direction is same as the global coordinate, shown in Figure 1b. The UUV is assumed to be a particle; moving obstacles are expanded to generate correspondingly the set of configuration obstacles O(X or , R or ), whose radius is R or = R o + R r . The relative position of an obstacle in a local coordinate is X or (t) = X o (t) − X r (t). If we consider O(X or , R or ) as the static obstacle, the relative speed of between UUV and a dynamic obstacle Then UUV speed can be expressed as v ro (t), and the problem of dynamic collision avoidance can be transformed into static collision avoidance. In other words, collision avoidance decision of UUV and a moving obstacle O, that the state of motion is, respectively, (X r (t), v r (t)) and O(X or , R or ), is equal to collision avoidance decision of UUV with the speed of v ro (t) and the static obstacle.
The condition that UUV collides with the static obstacles O(X or , R or ) is λ(v ro ) ∩ O(X or , R or ) = ∅, and the ray from the origin along the direction of velocity v is expressed by λ(v) = {tv|t > 0}. In the velocity space, the collision cone (CC) that consists of a set of the velocity vectors is defined by At the same time, the velocity obstacle (VO) is represented as So (2) can be equivalent to Where ⊕ denotes the Minkowski vector sum operation, and VO defines the set of the speed v r that UUV may collide with an obstacle O.
In conclusion, the condition that UUV collides with a single obstacle O can be shown by Meanwhile, we use the following formula to denote the condition that UUV collides with multiple obstacles.

Process Analysis of Speed Collision Avoidance
As shown in Figure 2, in the relative Cartesian coordinate system, velocity component V s that relative velocity v ro along the sight X ro , and velocity component V θ that v ro perpendicular to X ro are expressed, respectively, as Where the intersection angle of v ro and X ro is collision angle γ, and the linear distance between the obstacle and UUV is X ro , and the radius of the obstacle is R or . The safety angle is α = arcsin( R or X ro ). By comparing the relative relationship of collision angle γ and safety angle α, the condition which UUV collides with the obstacle can be obtained.
When the collision angle is bigger than the safety angle, as γ > α, UUV will not collide with obstacles, so that UUV navigation with current speed is safe.
Collision angle γ can be expressed as β is the intersection angle of v ro and v r . Further, we can turn the Equation (9) into a differential equation on the derivation of γ.
From the collision conditions of Equation (10), ∆γ can be changed to make sure UUV safety collision avoidance by adjusting ∆θ r and ∆v r .

Dynamic Collision Avoidance Based on Improved Speed Obstacle Method
In this section, we present a theoretical framework for UUV dynamic collision avoidance based on an improved speed obstacle method. It can be separated into obstacle information processing, collision risk assessment, key obstruction screening and collision avoidance decision.

Obstacle Property Detection and Classification
The task that UUV must complete is to reach the destination from a given starting position and avoid all kinds of unknown obstacles in the course of the movement. Therefore, the received obstacle information must be processed. In this paper, this processing can be presented in three steps as follows.

Obstacle property detection and classification
Combined with the forward-looking sonar and working characteristics of UUV, we will employ the moving target detection method presented in paper [24]. This method can identify the obstacle properties in the UUV working environment and distinguish between static obstacles and dynamic obstacles.

The division of ranging points
Obstacles can be expressed as several isolated sets of ranging points in Scanning charts of the forward-looking sonar. The distances between the points in the point set are closer, compared with the distance between point sets. The current data of ranging points can be divided based on this property. As long as the distance between adjacent points is less than a certain threshold, they are considered to belong to the same obstacle set.

Match and classification of obstacle sets
The division of ranging points is not enough to acquire the movement properties of the obstacles, so comparison of the difference between the adjacent time grid maps is necessary, and it can detect the movement of obstacles (movement or static).
Where f F and f G are coefficients. S means that the two barrier sets contain the number of grid points. The symbol ∪ indicates the common grid number between the two sets, and ∩ denotes the overlapping grid number. When the distance from the center of mass is closer; the non-coincidence degree is smaller; the value of the associated function is greater, and the possibility that two barriers is the same barrier is bigger. On account of different values of data association functions, the type of obstruction can be determined by setting the associated thresholds τ same , τ move , τ static (τ same < τ move < τ static ).

Static Obstacle Clustering Based on K-Means Algorithm
The static obstacles present some lone grid points Ω o = X 1 c , X 2 c , . . . , X n c in ROGM (Rolling Occupancy Grid Map), and the distribution of point sets will not undergo dramatic changes in the adjacent moment. Therefore, using the K-means clustering algorithm [30], the set of static obstacle points in ROGM can be partitioned with several smaller static stumbling blocks. These little static obstacles can be thought of as moving obstacles at zero speed, which then can avoid barriers by means of the speed avoidance method. Besides, we define the maximum clustering radius R max o (R max o = 60 m in this paper) to prevent large static obstacles from expanding too much. When the radius of the static obstacle R o > R max o , we will adopt the secondary K-means clustering method to divide it.

Motion parameters estimation of dynamic obstacle
The perceptual error of the previewing sonar can cause discontinuity in some of the motor parameters, and the obstacle chain, built by the match and classification method, may be broken. In order to make up for the missing information of the obstacle, the least-squares method is used to predict the location information and the motion parameters in the future. We define the magnitude v o (n) and direction θ o (n) of dynamic obstacles velocity, acceleration a o (n) and angular velocity ω o (n) respectively in n time. Therefore, the prediction velocity and direction of the moving obstacle in the

Uncertainly analysis of dynamic obstacle
The acceleration information of the obstacle reflects the random movement of the obstacle. We assume that a o and ω o satisfy the normal distribution, a is the mean and variance, respectively, of a o , and µ ω , σ 2 ω is the mean and variance, respectively, of ω o . ∆v o , ∆θ o is the greatest deviation, respectively, from v o (n) and θ o (n). According of the literature [31], the radius of the uncertainty circle is ∆R o .

Hazard Assessment of Collision
UUV and obstacles are considered to be particle as shown in Figure 3. UUV is the point X r with speed v r , and moving obstacle is the point X o with speed v o . v ro is the relative speed of the moving obstacle and the UUV. Drawing parallel line X o X a parallel to v ro through the X o point, and X r X a perpendicular to X o X a at X a through the X r point. Then X a is the meeting point CPA [32].
According to closest encounter point CPA, the minimum encounter time T CPA of obstacles and UUV is as follows [24] After calculating minimum encounter time, the minimum encounter distance of UUV and obstacles can be expressed as Assuming that UUV encounters with a single obstacle, evaluation set of collision risk is {T CPA , D CPA }, µ(D CPA ) and µ(T CPA ) are dangerous membership function D CPA and T CPA . Each factor of evaluation set is defined centrally between 0 and 1.
t 1 and t 2 are the time interval of arriving at closest encounter point; d 1 and d 2 are the distance range of arriving at closest encounter point. Each indicator has a different impact on the collision risk. With regard to UUV coarse-grained, which is acquired by weighting each indicator of collision risk, evaluation set is α d , α t (α d + α t = 1) are the respective weighting coefficients, which can be given as α d = 0.35, α t = 0.65.

Screening of Key Obstacles
We introduce the concept of key obstacle for decrease the time of avoidance barriers. The key obstacle needs to satisfy three conditions. First, obstacles are within the UUV round decision range. Moreover, obstacles must be high-risk barriers (risk threshold T risk = 0.5, µ r > T risk ). In addition, UUV velocity vectors are located in the velocity barriers that be made up of obstacles. Therefore, the screening condition of key obstacles can be described as following.
After screening, as long as one obstacle can accord with this condition, UUV must begin to prepare for avoiding obstacles.

The Risk of Speed
In order to prevent collision avoidance conservative, we will associate the impact of motion uncertainty with different risk degree. As shown in Figure 4, we can gain two radius R or and R or after turning obstacle motion uncertainty into position uncertainty, and form two collision zones. R or and R or respectively are lower and upper estimate radius of obstacle O i . R or is determined by its location, size, speed error and other factors, here it is Where δ p is the estimation error of the radius of the obstacle in the obstacle classification, and R sa f e is the safe distance. We can base on the minimum estimated radius R or to calculate the minimum safety angle α 1 = arcsin( R or X ro ), and then the maximum safety angle α 2 = arcsin( R or X ro ). Hence, the risk of speed (VR) can be presented.
Where γ is the collision angle. When the multi-obstacles O = {O 1 , O 2 , . . . , O n } exist, they will produce several different speed hazards to v r . So that the combined risk of speed for UUV can be depicted as VR.

Velocity Space
Because the speed change of UUV is limited to one decision-making cycle, it cannot reflect the maximum speed space before collision of an obstacle and UUV. If collision avoidance planning is carried out in the space of single-step speed change, it is bound to cause shortsighted behavior of UUV. Predicting the velocity space can be up to within the multiple decision cycle ∆t f (∆t f > ∆T). Considering kinematic constraints of UUV on the velocity space, the velocity space can be up to of UUV is where ∆T , ∆v max is the maximum change in linear velocity, and ∆w max is the maximum change in yaw angular velocity in period ∆T. V max r is the maximum forward velocity, and V min r is the minimum forward velocity.
In order to reduce the complexity of calculating, its kinematic constraints can be approximately shown with maximum amplitude changes of UUV linear speed and course changes in the decision-making cycle ∆T. For prediction time of speed can be up to, the paper takes ∆t f = 4∆T.

Time to Collision
Time to collision (TTC) is the minimum time of collision between UUV and obstacles. When the relative speed of UUV and obstacles keeps unchanging, it is a common measure of collision risk evaluation, and the collision time also reflects the time limit of UUV safety. Thus, we should consider characteristics of UUV and motion characteristics of obstacles when calculating the collision time.
After expanding obstacles, considering the maximum operational range of obstacles, the obstacle velocity obstacle VO i is generated by the obstacle O i (X or , R or ) which radius is R or . When v r ∈ VO i , the collision time τ represents the shortest time of reaching the edge of the obstacle O i (X or , R or ) with the relative speed v ro , τ satisfies the following equation Where ∂(O i (X or , R or )) represents the edge of O i (X or , R or ). If there are many solutions about the upper formula, we can take the minimum time solution as the collision time of v ro .

Optimization Objective Function
Assuming that position X r and target position X G of UUV are known in any time, UUV collision avoidance in decision-making process satisfies the kinematic constraints. In view of minimum objective function of collision velocity in the decision-making cycle and speed space, dynamic collision avoidance based on the velocity obstacle method can be attributed to an optimization problem, and can be expressed as To make UUV navigation tend to target, the target speed is defined as Selection of collision avoidance speed needs to consider two factors of security and reaching the target. Therefore, optimization object function of collision avoidance decisions is defined as The optimization object function consists of the risk of speed, the target speed deviation and the collision time. ω p , ω v , ω t are the weight coefficients, and we can define ω p + ω v = 1. It should be noted that when VR(v) = 1, UUV sailing at v must collide with an obstacle. So v is not desirable, and J d (v) is given the maximum value as a punishment.
From what has discussed above, the collision process based on the improved speed obstacle method can be presented with the flow chart of the dynamic obstacle avoidance, as shown Figure 5.

Simulations and Experimental Results
Simulations and Results are conducted to verify the effectiveness of the dynamic obstacle avoidance. As the front view sonar detection range and distance is limited, the algorithm does not recognize the moving obstacles from the rear of the UUV. In this paper, we assume that there is no obstacle coming from behind UUV. The shape of static obstacle is multi-deformation. The dynamic obstructions are considered as rectangles, wherein the diameter of the smallest circumscribed circle of the obstacle is equal to the diagonal length of the rectangle.

Simulation Results and Analysis
To verify the validity and accuracy of the dynamic collision avoidance method, the cases of dynamic simulation for collision avoidance are designed. Obstacle position and motion information are unknown. The motion parameters are defined as ∆v min = 0.2 m/s, V max r = 3 m/s, V min r = 0.2 m/s and ∆w max = 5 o /s. Estimation parameters of collision risk take d 2 = 90 m, d 1 = 40 m, t 2 = 50 s, t 1 = 30 s. Number of static obstacle clustering settings K is six. Optimization object function coefficients take ω p = 0.3, ω v = 0.7, ω t = 25. Rate risk model parameters take ω p = 0.3, ω v = 0.7, ω t = 25.
Given the initial direction and speed of dynamic obstacles, the direction and velocity of dynamic obstacles are added to the white gauss noise to simulate the random motion of dynamic obstacles. It sailed from the starting point (0, 0) to the end (450, 450). The starting heading is 45 • .
We design two polygonal static obstacles S 1 , S 2 and four dynamic obstacles M 1 , M 2 , M 3 , M 4 in environment to simulate the environment of UUV voyage. The total time of the collision avoidance is 253 s, and the UUV safely arrives at the destination. Figure 6 is the environmental map and the final dynamic collision avoidance results, the figure of the circular static configuration obstacles generated by the cluster. The blue points are the obstacle information detected by the front viewer.  Figure 7a, UUV finds the dynamic obstacle M 1 , turns left and avoids successfully. Then it found six static obstacles, turned slightly left, and through that small space safely in Figure 7b. Obviously, the six smaller static obstacles are produced by clustering two large static obstacles. Similarly, Figure 7c shows that the dynamic obstacle M 2 is successfully discovered and avoided. In Figure 7d, UUV find the obstacles M 3 , M 4 at the same time, and the M 4 is considered to be the key obstacle after the decision. Finally, UUV reaches the target point. Figure 8 shows the UUV heading, speed and the shortest distance with obstructions in this process. Throughout the process, UUV heading and speed changes are smaller, we can see that the proposed method was conducted well. The minimum distance between UUV and obstacles is 38.51 m, which can fully guarantee the safety of UUV.

Experimental Results and Analysis
In order to test the adaptability of the method in the unknown dynamic environment, we design the following experiment. To get the data to detect obstacles, the sensing device uses the multi-beam forward-looking sonar, as shown in Figure 9a. The multi-beam forward-looking sonar has 60 ceramic receivers, the open angle is 90 • , vertical open angle is 6 • or 12 • , angular resolution of sonar is 1.69 • , the maximum detection range is 200 m.
The multi-beam forward-looking sonar uses the occupancy grid to represent the local environment. Sonar images of the object are shown in Figure 9b, the object's color represents the strength of the signal. Sonar images are collected to be discretized into the grid in every moment, as shown in Figure 9c. In terms of accuracy and calculation, the size/resolution of the grid is selected as 5 m × 5 m. UUV can easily extract the various parameters of the obstacle to avoid obstacles by using the occupancy grid. Based on sonar information processing capabilities, we designed a static obstacle avoidance experiment based on the proposed algorithm. First, the UUV determined that it was a dynamic obstacle of zero velocity (static obstacle) by processing the data obtained by sonar and classified the static obstacle into several small landmark obstacles by clustering. Then UUV used the improved speed obstacle method to avoid obstacles in time. The experimental results are shown in Figure 10. In the local NED coordinate system, selecting a point as the origin to establish relative coordinates, north sets as Y-axis, east sets as X-axis. It sailed from the starting point (80, −125) to the end (320, −575).  The blue line represents the shortest path of UUV, the red dotted line is the path in offline planning. In Figure 10, UUV sailed according to the direction of the shortest path; when UUV detects obstacles, UUV gets accurately around the obstacle to target. Due to the interference of temperature gradient, surface ware, sonar carrier motion and so on, there is a certain virtual image rate in sonar, which makes collision avoidance decision time greatly prolonged. The entire avoidance decision-making process takes 1-2 s, and the occupied computer memory is about 2 MB. The introduction of risk of speed expansion strategy can eliminate the problem of conservative collision avoidance of direct expansion of the dynamic obstacles, and improve the efficiency of collision avoidance.

Discussion
Through the above simulations and experiment, we can prove the following conclusions: 1.
The introduction of collision risk and screening key obstacles can obtain the right moment to avoid collision.

2.
Large-scale static obstacle clustering treatment and common identification of moving and static barriers can reduce the complexity of dynamic collision avoidance, and effectively avoid large static obstacles.

3.
Based on the speed risk, the puffing strategy can solve the conservative collision avoidance problems caused by the direct expansion of obstacles.
In the future, on the one hand, we will conduct a more comprehensive analysis of the dynamic obstacle avoidance process, making it suitable for a variety of complex environments such as waves and undercurrent. On the other hand, we will put forward a dynamic obstacle avoidance method based on improving speed obstacles in practice. By replacing more accurate multi-beam forward-looking sonar and faster processors, our algorithm can be used in a real marine environment.

Conclusions
This paper proposes the dynamic collision avoidance method based on improved velocity obstacles, and the real-time collision avoidance problem under the dynamic obstacle environment can be solved. Aiming at the existing problem of velocity obstacle method, this method is improved. According to DCPA and TCPA requirement, we establish a collision risk evaluation model, and combine with the discriminant conditions of velocity obstacle. Then, we can get the right timing of collision avoidance, reduce the computing burden of collision avoidance decision-making and improve the speed of collision avoidance. The motion uncertainty of obstacles and velocity obstacles is considered. The collision impact brought by obstacle motion uncertainty is reduced, and the conservative problem of dynamic obstacle collision avoidance brought by direct extrusion can be avoided. The comprehensive optimization objective function of speed risk degree, the target speed deviation and the collision time is designed, and it can dramaticly improve the security of collision avoidance. Meanwhile, the UUV can reach to the target location as soon as possible. Finally, the simulation results show that the proposed method has quick speed of decision-making for collision avoidance, it can avoid all kinds of obstacles better under a dynamic environment, and has a good adaptability to the unknown dynamic environment.