Next Article in Journal
IMU-Based Gait Recognition Using Convolutional Neural Networks and Multi-Sensor Fusion
Next Article in Special Issue
Development and Verification of a Novel Robot-Integrated Fringe Projection 3D Scanning System for Large-Scale Metrology
Previous Article in Journal
Pre-Clinical Tests of an Integrated CMOS Biomolecular Sensor for Cardiac Diseases Diagnosis
Previous Article in Special Issue
Turning and Radius Deviation Correction for a Hexapod Walking Robot Based on an Ant-Inspired Sensory Strategy
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

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

Marine Assembly and Automatic Technology Institute, College of Automation, Harbin Engineering University; Harbin 150001, China
*
Author to whom correspondence should be addressed.
Sensors 2017, 17(12), 2742; https://doi.org/10.3390/s17122742
Submission received: 25 October 2017 / Revised: 18 November 2017 / Accepted: 21 November 2017 / Published: 27 November 2017
(This article belongs to the Special Issue Smart Sensors for Mechatronic and Robotic Systems)

Abstract

:
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.

Graphical Abstract

1. 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.
1. 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.
2. 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.
3. 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.

2. Preliminaries

2.1. 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 ) ) 2 is center position of UUV, v r ( t ) is speed vector of UUV. Meanwhile, moving obstacles can be expressed as O ( t ) = ( X o ( t ) , v o ( t ) ) , and X o ( t ) = ( x o ( t ) , y o ( t ) ) 2 is obstacle center position, v o ( t ) is speed vector of the obstacles. t sets as the current time, Δ T sets as the decision-making period, and the speed of UUV and all moving obstacles are assumed to be constant in the decision-making period.
A relative Cartesian coordinate system XR-YR 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 o r , R o r ) , whose radius is R o r = R o + R r . The relative position of an obstacle in a local coordinate is X o r ( t ) = X o ( t ) X r ( t ) . If we consider O ( X o r , R o r ) as the static obstacle, the relative speed of between UUV and a dynamic obstacle is v r o ( t ) = v r ( t ) v o ( t ) . Then UUV speed can be expressed as v r o ( 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 o r , R o r ) , is equal to collision avoidance decision of UUV with the speed of v r o ( t ) and the static obstacle.
The condition that UUV collides with the static obstacles O ( X o r , R o r ) is λ ( v r o ) O ( X o r , R o r ) , and the ray from the origin along the direction of velocity v is expressed by λ ( v ) = { t v | t > 0 } . In the velocity space, the collision cone (CC) that consists of a set of the velocity vectors is defined by
C C = { v r o | λ ( v r o ) O ( X o r , R o r ) }
At the same time, the velocity obstacle (VO) is represented as
V O = { v | t > 0 , t ( v v o ) C C }
So (2) can be equivalent to
V O = C C v o
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
X r O ( X o r , R o r ) v r V O
Meanwhile, we use the following formula to denote the condition that UUV collides with multiple obstacles.
X r i = 1 n O ( X o i r , R o i r ) v r V O r

2.2. 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 r o along the sight X r o , and velocity component V θ that v r o perpendicular to X r o are expressed, respectively, as
V s = v r cos ( θ r φ r o ) v o cos ( θ o φ r o ) V θ = v r sin ( θ r φ r o ) v o sin ( θ o φ r o )
Where the intersection angle of v r o and X r o is collision angle γ , and the linear distance between the obstacle and UUV is X r o , and the radius of the obstacle is R o r . The safety angle is α = arcsin ( R o r X r o ) . 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
tan ( γ ) = V θ V s
tan ( γ ) is a function about v r , v o , θ r , θ o , as tan ( γ ) = f ( v r , θ r , v o , θ o ) , γ = a r c tan ( f ) . A derivation of γ is
d γ = d f 1 + f 2
β is the intersection angle of v r o and v r . Further, we can turn the Equation (9) into a differential equation on the derivation of γ .
Δ γ = sin ( β ) Δ v r + v r cos ( β ) Δ θ r v r o
From the collision conditions of Equation (10), Δ γ can be changed to make sure UUV safety collision avoidance by adjusting Δ θ r and Δ v r .

3. 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.

3.1. Obstacle Information Processing

3.1.1. 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.
1. 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.
2. 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.
3. 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).
For two sets of obstacle points for adjacent moments Ω m 1 ( n ) , Ω m 2 ( n 1 ) , we defined the non-coincidence function G a s = 1 S Ω m 1 ( n ) S Ω m 2 ( n 1 ) S Ω m 1 ( n ) S Ω m 2 ( n 1 ) , then combined with the centroid distance of the two obstacle sets F a s = ( ρ ¯ m 1 , θ ¯ m 1 ) , ( ρ ¯ m 2 , θ ¯ m 2 ) , and associative estimation function J a s [ Ω m 1 ( n ) , Ω m 2 ( n 1 ) ] is built.
J a s [ Ω m 1 ( n ) , Ω m 2 ( n 1 ) ] = f F F a s + f G G a s
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 τ s a m e , τ m o v e , τ s t a t i c ( τ s a m e < τ m o v e < τ s t a t i c ).

3.1.2. Static Obstacle Clustering Based on K-Means Algorithm

The static obstacles present some lone grid points Ω o = { X c 1 , X c 2 , , X c n } 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 o max ( R o max = 60   m in this paper) to prevent large static obstacles from expanding too much. When the radius of the static obstacle R o > R o max , we will adopt the secondary K-means clustering method to divide it.

3.1.3. Motion Parameters Estimation and Uncertainly Analysis of Dynamic Obstacle

1. 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 n + 1 moment.
v ˜ o ( n + 1 ) = v o ( n ) + a o ( n ) Δ T θ ˜ o ( n + 1 ) = θ o ( n ) + ω o ( n ) Δ T
2. 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 o ~ N ( μ a , σ a 2 ) , ω o ~ N ( μ ω , σ ω 2 ) , where μ a ,   σ a 2 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 .
Δ R o = Δ T [ v o ( n ) + Δ v o ] 2 + v o ( n ) 2 2 [ v o ( n ) + Δ v o ] v o ( n ) cos ( Δ θ o )
where Δ v o = Δ T max ( μ a + 3 σ a , μ a 3 σ a ) , Δ θ o = Δ T max ( μ ω + 3 σ ω , μ ω 3 σ ω ) .
Therefore, the expansion circle with radius R o + Δ R o is the largest area of the barrier at the next moment.

3.2. 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 r o is the relative speed of the moving obstacle and the UUV. Drawing parallel line X o X a parallel to v r o 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 C P A , the minimum encounter time T C P A of obstacles and UUV is as follows [24]
T C P A = { 0 v o ( t ) v r ( t ) ε ( X o ( t ) X r ( t ) ) . ( v r ( t ) v o ( t ) ) v o ( t ) v r ( t ) 2 else
After calculating minimum encounter time, the minimum encounter distance of UUV and obstacles can be expressed as
D C P A = ( X o ( t ) + v o ( t ) . T C P A ) ( X r ( t ) + v r ( t ) . T C P A )
Assuming that UUV encounters with a single obstacle, evaluation set of collision risk is { T C P A , D C P A } , μ ( D C P A ) and μ ( T C P A ) are dangerous membership function D C P A and T C P A . Each factor of evaluation set is defined centrally between 0 and 1.
μ t ( T C P A ) = { 0 | T C P A | > t 2 ( t 2 | T C P A | t 2 t 1 ) t 1 < | T C P A | t 2 1 | T C P A | t 1
μ d ( D C P A ) = { 0 D C P A > d 2 0.5 0.5 sin [ π d 2 d 1 ( D C P A d 1 + d 2 2 ) ] d 1 < D C P A d 2 1 D C P A d 1
t1 and t2 are the time interval of arriving at closest encounter point; d1 and d2 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
μ r = α d μ d ( D C P A ) + α t μ t ( T C P A )
α d , α t ( α d + α t = 1 ) are the respective weighting coefficients, which can be given as α d = 0.35 , α t = 0.65 .

3.3. 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 r i s k = 0.5 , μ r > T r i s k ). 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.
{ D ( X o i , X r ) < R s } { μ r > T r i s k } { v r V O i }
After screening, as long as one obstacle can accord with this condition, UUV must begin to prepare for avoiding obstacles.

3.4. The Avoidance Decision Based on the Improved Speed Barrier Method

3.4.1. 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 _ o r and R ¯ o r after turning obstacle motion uncertainty into position uncertainty, and form two collision zones. R _ o r and R ¯ o r respectively are lower and upper estimate radius of obstacle O i . R ¯ o r is determined by its location, size, speed error and other factors, here it is
R _ o r = R o + R r + δ p R ¯ o r = R o + R r + δ p + Δ R o + R s a f e
Where δ p is the estimation error of the radius of the obstacle in the obstacle classification, and R s a f e is the safe distance.
We can base on the minimum estimated radius R _ o r to calculate the minimum safety angle α 1 = arcsin ( R _ o r X r o ) , and then the maximum safety angle α 2 = arcsin ( R ¯ o r X r o ) . Hence, the risk of speed (VR) can be presented.
V R i ( v r o ) = { 1 γ α 1 α 2 γ α 2 α 1 α 1 < γ < α 2 0 γ α 2
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 V R .
V R ( v r ) = 1 i = 1 n ( 1 V R i )

3.4.2. 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
Ω r = { [ v x v y ] = [ V r cos ( θ r ) V r sin ( θ r ) ] | V r _ V r V r ¯ , θ r _ θ r θ r ¯ }
where V r _ = max ( V r min , v r Δ v max Δ t f Δ T ) , V r ¯ = max ( v r + Δ v max Δ t f Δ T , V r max ) , θ r ¯ = θ r + Δ w max Δ t f Δ T , θ r _ = θ r Δ w max Δ t f Δ 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 r max is the maximum forward velocity, and V r min 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 .

3.4.3. 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 V O i is generated by the obstacle O i ( X o r , R ¯ o r ) which radius is R ¯ o r . When v r V O i , the collision time τ represents the shortest time of reaching the edge of the obstacle O i ( X o r , R ¯ o r ) with the relative speed v r o , τ satisfies the following equation
τ v r o ( O i ( X o r , R ¯ o r ) )
Where ( O i ( X o r , R ¯ o r ) ) represents the edge of O i ( X o r , R ¯ o r ) . If there are many solutions about the upper formula, we can take the minimum time solution as the collision time of v r o .

3.4.4. 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
v * = arg min ( J d ( v ) ) ,   X r X G ,   v Ω r
To make UUV navigation tend to target, the target speed is defined as
v r e f = V r max X G X r X G X r
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
J d ( v ) = { V R ( v ) = 1 [ ω p V R ( v ) + ω v v v r e f V r max ] × ω t t c o l ( v ) else
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 V R ( 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.

4. 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.

4.1. 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 r max = 3   m / s , V r min = 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 6 and Figure 7 are based on the same environment map, which shows the process of dynamic obstacle avoidance. The distribution of obstacles and the effect of avoidance can be found from this figure. The blue circle represents the UUV detection range. In 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.

4.2. 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). A static obstacle was located in point (150, −250). The starting heading is 135°.
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.

5. Discussion

Through the above simulations and experiment, we can prove the following conclusions:
  • The introduction of collision risk and screening key obstacles can obtain the right moment to avoid collision.
  • 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.
  • 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.

6. 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.

Acknowledgments

This work was partially funded by the National Nature Science Foundation of China under grant No. 51309067, Natural Science Foundation of Heilongjiang Province of China under grant No. E2016020, Fundamental Research Funds for the Central Universities under grant No. HEUCF160407.

Author Contributions

Wei Zhang and Shilin Wei conceived and designed the experiments; Yanbin Teng performed the experiments; Jianku Zhang and Xiufang Wang analyzed the data; Zheping Yan contributed reagents/materials/analysis tools; Shilin Wei wrote the paper.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Eren, F.; Pe’eri, S.; Thein, M.-W.; Rzhanov, Y.; Celikkol, B.; Swift, M.R. Position, orientation and velocity detection of unmanned underwater vehicles (UUVS) using an optical detector array. Sensors 2017, 17, 1741. [Google Scholar] [CrossRef] [PubMed]
  2. Zhang, W.; Chen, H.; Chen, T.; Yan, Z.; Ren, H. Research on coordinated robotic motion control based on fuzzy decoupling method in fluidic environments. Math. Probl. Eng. 2014. [Google Scholar] [CrossRef]
  3. Yan, Z.P.; Wang, L.; Zhang, W.; Zhou, J.; Wang, M. Polar grid navigation algorithm for unmanned underwater vehicles. Sensors 2017, 17, 1599. [Google Scholar] [CrossRef] [PubMed]
  4. Hurtos, N.; Cuf, X.; Petillot, Y.; Salvi, J. Fourier-based registrations for two-dimensional forward-looking sonar image mosaicing. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Vilamoura, Portugal, 7–12 October 2012; pp. 5298–5305. [Google Scholar] [CrossRef]
  5. He, B.; Liang, Y.; Feng, X.; Nian, R.; Yan, T.; Li, M.; Zhang, S. AUV SLAM and experiments using a mechanical scanning forward-looking sonar. Sensors 2012, 12, 9386–9410. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  6. Hurtós, N.; Cufí, X.; Salvi, J. A novel blending technique for two-dimensional forward-looking sonar mosaicking. In Proceedings of the 2013 OCEANS-San Diego, San Diego, CA, USA, 23–27 September 2013; pp. 1–7. [Google Scholar] [CrossRef]
  7. Conti, R.; Meli, E.; Ridolfi, A.; Allotta, B. An innovative decentralized strategy for I-AUVs cooperative manipulation tasks. Robot. Auton. Syst. 2015, 72, 261–276. [Google Scholar] [CrossRef]
  8. Saravanakumar, S.; Asokan, T. Multipoint potential field method for path planning of autonomous underwater vehicles in 3D space. Intel. Serv. Robot. 2013, 6, 211–224. [Google Scholar] [CrossRef]
  9. Montiel, O.; Orozco, R.U.; Sepulveda, R. Path planning for mobile robots using bacterial potential field for avoiding static and dynamic obstacles. Expert Syst. Appl. 2015, 42, 5177–5191. [Google Scholar] [CrossRef]
  10. Tusseyeva, I.; Kim, S.G.; Kim, Y.G. 3D Global Dynamic window approach for navigation of autonomous underwater vehicles. Int. J. Fuzzy Log. Intell. Syst. 2013, 13, 91–99. [Google Scholar] [CrossRef]
  11. Rezaee, H.; Abdollahi, F. A Decentralized cooperative control scheme with obstacle avoidance for a team of mobile robots. IEEE. Trans. Ind. Electron. 2014, 61, 347–354. [Google Scholar] [CrossRef]
  12. Ali, F.; Kim, E.K.; Kim, Y.G. Type-2 fuzzy ontology-based semantic knowledge for collision avoidance of autonomous underwater vehicles. Inf. Sci. 2015, 295, 441–464. [Google Scholar] [CrossRef]
  13. Cheng, Y.; Zhang, W. Concise deep reinforcement learning obstacle avoidance for underactuated unmanned marine vessels. Neurocomputing 2017, 272, 63–73. [Google Scholar] [CrossRef]
  14. Han, D.; Nie, H.; Chen, J.; Chen, M. Dynamic obstacle avoidance for manipulators using distance calculation and discrete detection. Robot. Comp.-Integr. Manuf. 2018, 49, 98–104. [Google Scholar] [CrossRef]
  15. Lin, Y.; Saripalli, S. Sampling-based path planning for UAV collision avoidance. IEEE Trans. Intell. Transp. Syst. 2017, 18, 1–14. [Google Scholar] [CrossRef]
  16. Fiorini, P.; Shiller, Z. Motion planning in dynamic enviroments using the relative velocity paradigm. In Proceedings of the IEEE International Conference on Robotics and Automation, Atlanta, GA, USA, 2–6 May 1993; pp. 560–565. [Google Scholar]
  17. Fiorini, P.; Shiller, Z. Motion planning in dynamic environments using velocity obstacles. Int. J Robot. Res. 1998, 17, 760–772. [Google Scholar] [CrossRef]
  18. Ivan, R.B.; Brual, S.; Karlvon, E.; Petr, S.; Wilhelm, K.; Armando, J.S.; Manhar, D.; Satyandra, K.G. Experimental evaluation of automatically-generated behaviors for USV operations. Ocean Eng. 2015, 106, 496–514. [Google Scholar]
  19. Yoshiaki, K.; Michael, T.W.; Dimitri, Z.; Terrance, L.H. Safe maritime autonomous navigation with colregs using velocity obstacles. IEEE J. Oceanic Eng. 2014, 39, 110–119. [Google Scholar]
  20. Shiller, Z.; Large, S.; Seckavat, F. Motion planning in dynamic environments: obstacles moving along arbitrary trajectories. In Proceedings of the IEEE International Conference on Robotics and Automation, Seoul, South Korea, 21–26 May 2001; pp. 3716–3721. [Google Scholar]
  21. Large, F.; Laugier, C.; Shiller, Z. Navigation among moving obstacles using the NLVO: Principles and applications to intelligent vehicles. Auton. Robot. 2005, 19, 159–171. [Google Scholar] [CrossRef]
  22. Kluge, B. Recursive agent modeling with probabilistic velocity obstacles for mobile robot navigation among humans. In Proceedings of the IEEE International Conference on Intelligent Robots and Systems, Las Vegas, NV, USA, 27–31 October 2003; pp. 376–381. [Google Scholar]
  23. Jamie, S.; Jurvanden, B.; Stephen, J.G.; Dinesh, M. The hybrid reciprocal velocity obstacles. IEEE Trans. Robot. 2011, 27, 696–706. [Google Scholar]
  24. Yoshiaki, K.; Michael, T.W.; Dimitri, Z.; Terrance, L.H. Safe maritime navigation with COLREGS using velocity obstacles. In Proceedings of the IEEE International Conference on Intelligent Robots and Systems, San Francisco, CA, USA, 25–30 September 2011; pp. 4728–4734. [Google Scholar]
  25. Jurvanden, B.; Mark, O. Planning time-minimal safe paths amidst unpredictably moving obstacles. The Int. J. Robotics Res. 2008, 27, 1274–1294. [Google Scholar]
  26. Ahmad, A.; Robert, B. Improving the Velocity Obstacle Approach for Obstacle Avoidance in Indoor Environments. In Proceedings of the 2014 UKACC International Conference on Control, Loughborough, UK, 9–11 July 2014. [Google Scholar]
  27. Jing, X.J. Behavior dynamics based motion planning of mobile robots in uncertain dynamic environments. Robot. Auton. 2005, 53, 99–123. [Google Scholar] [CrossRef]
  28. Yamamoto, M.; Shimada, M.; Mobli, A. On-line navigation of mobile robot under the existence of dynamically moving multiple obstacles. In Proceedings of the IEEE International Symposium on Assembly and Task Planning, Fukuoka, Japan, 29 May 2001. [Google Scholar]
  29. Kim, M.; Oh, J.J. Development of an optimal velocity selection method with velocity obstacle. J. Mech. Sci. Tech. 2015, 29, 3475–3487. [Google Scholar] [CrossRef]
  30. Tapas, K.; David, M.M.; Nathan, S.N.; Christine, D.P.; Ruth, S.; Angela, Y.W. An efficient k-means clustering algorithm: Analysis and implementation. IEEE Trans. Pattern Anal. Mach. Intell. 2002, 24, 881–892. [Google Scholar]
  31. Miura, J.; Shirai, K. Modeling motion uncertainty of moving obstacles for robot motion planning. In Proceedings of the IEEE International Conference on Robotics and Automation, San Francisco, CA, USA, 24–28 April 2000. [Google Scholar]
  32. Ahn, J.H.; Rhee, K.P.; You, Y.J. A study on the collision avoidance of a ship using neural networks and fuzzy logic. Appl. Ocean Res. 2012, 37, 162–173. [Google Scholar] [CrossRef]
Figure 1. Collision cone and velocity obstacle: (a) The relationship between UUV and an obstacle in X-Y coordinate system; (b) The relationship between UUV and an obstacle in speed obstacle avoidance system.
Figure 1. Collision cone and velocity obstacle: (a) The relationship between UUV and an obstacle in X-Y coordinate system; (b) The relationship between UUV and an obstacle in speed obstacle avoidance system.
Sensors 17 02742 g001
Figure 2. Process analysis of speed collision avoidance.
Figure 2. Process analysis of speed collision avoidance.
Sensors 17 02742 g002
Figure 3. The sketch map of DCPA and TCPA.
Figure 3. The sketch map of DCPA and TCPA.
Sensors 17 02742 g003
Figure 4. The calculation of VR.
Figure 4. The calculation of VR.
Sensors 17 02742 g004
Figure 5. Flow chart of the dynamic obstacle avoidance.
Figure 5. Flow chart of the dynamic obstacle avoidance.
Sensors 17 02742 g005
Figure 6. The dynamic avoidance results.
Figure 6. The dynamic avoidance results.
Sensors 17 02742 g006
Figure 7. The dynamic avoidance results in different phase: (a) The first phase of dynamic avoidance; (b) The second phase of dynamic avoidance; (c) The third phase of dynamic avoidance; (d) The fourth phase of dynamic avoidance.
Figure 7. The dynamic avoidance results in different phase: (a) The first phase of dynamic avoidance; (b) The second phase of dynamic avoidance; (c) The third phase of dynamic avoidance; (d) The fourth phase of dynamic avoidance.
Sensors 17 02742 g007
Figure 8. The heading, velocity and the shortest distance.
Figure 8. The heading, velocity and the shortest distance.
Sensors 17 02742 g008
Figure 9. Expression sonar image by occupancy grid: (a) Sonar sensor and PC104 processor; (b) Sonar images of object; (c) the grid figure.
Figure 9. Expression sonar image by occupancy grid: (a) Sonar sensor and PC104 processor; (b) Sonar images of object; (c) the grid figure.
Sensors 17 02742 g009
Figure 10. The dynamic avoidance results.
Figure 10. The dynamic avoidance results.
Sensors 17 02742 g010

Share and Cite

MDPI and ACS Style

Zhang, W.; Wei, S.; Teng, Y.; Zhang, J.; Wang, X.; Yan, Z. Dynamic Obstacle Avoidance for Unmanned Underwater Vehicles Based on an Improved Velocity Obstacle Method. Sensors 2017, 17, 2742. https://doi.org/10.3390/s17122742

AMA Style

Zhang W, Wei S, Teng Y, Zhang J, Wang X, Yan Z. Dynamic Obstacle Avoidance for Unmanned Underwater Vehicles Based on an Improved Velocity Obstacle Method. Sensors. 2017; 17(12):2742. https://doi.org/10.3390/s17122742

Chicago/Turabian Style

Zhang, Wei, Shilin Wei, Yanbin Teng, Jianku Zhang, Xiufang Wang, and Zheping Yan. 2017. "Dynamic Obstacle Avoidance for Unmanned Underwater Vehicles Based on an Improved Velocity Obstacle Method" Sensors 17, no. 12: 2742. https://doi.org/10.3390/s17122742

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