Autonomous Obstacle Avoidance Algorithm for Unmanned Surface Vehicles Based on an Improved Velocity Obstacle Method
Abstract
:1. Introduction
2. Problem Description
- Construction of a USV motion model.
- 2.
- Efficient characterization of velocity obstacle region.
- 3.
- Construction of an autonomous obstacle avoidance model.
3. Autonomous Obstacle Avoidance Model of USV Based on Improved VO
3.1. USV Motion Model in Marine Environment
3.2. Efficient Characterization of Velocity Obstacle Region
Characterize of Velocity Obstacle Region Based on VO
3.3. Multi-Vessel Encounters Collision Detection Model
3.3.1. COLREGS and Model Definition of Multi-Vessel Encounters Scenario
3.3.2. Collision Detection Model Construction
3.3.3. Construction of Collision Risk Assessment Model
4. Online Solution of USV Autonomous Obstacle Avoidance Model Based on Improved Particle Swarm Optimization
4.1. Optimal Collision Avoidance Strategy
4.2. Realization of USV Autonomous Obstacle Avoidance Algorithm Based on Improved Velocity Obstacle Method
- Step 1: The USV maintains the current state of motion and advances along the preset path. In real time, it senses the position, velocity, and water surface contours of the encountering vessel through the onboard detection sensors.
- Step 2: The velocity obstacle region of the encountering vessel is constructed according to Equation (17). The solution set of the USV turning to the left to avoid the encountering vessel and the solution set of the USV turning to the right to avoid the encountering vessel are obtained so that USV can deal with emergent threats according to Equation (18).
- Step 3: The motion state-space of the USV is determined according to Equation (21) to ensure the effectiveness of the USV obstacle avoidance behavior.
- Step 4: Coupling steps 2 and 3 with COLREGS, the multi-vessel encounter collision detection model is constructed according to Equation (23), while the collision risk assessment model is constructed according to Equation (25).
- Step 5: If the collision threat degree of one or multiple vessels in the USV monitoring area is greater than the threshold , then these vessels are determined to pose a threat to the USV. According to the value, the obstacle avoidance priority of multiple vessels will be determined, and the obstacle avoidance strategy set with the highest priority will be generated. If the degree of collision threat to the vessel is less than the threshold , it is safe for the USV to continue sailing in its current state of motion.
- Step 6: The optimal collision avoidance strategy and the best starting time in the collision avoidance strategy set are found.
- ① Initialize the parameters in the PSO algorithm: , , , , , and . The population size is . The maximum number of iterations is ; let . Initialize the particle population—namely, the velocity and position of the particle. The historical optimal value of the individual particle is set to , while the optimal value of the particle group is set to .
- ② In contemporary evolution, the fitness function for each particle is calculated according to Equation (30).
- ③ Particles and are updated.
- ④ The particles’ velocity and position are updated according to Equation (27).
- ⑤ If the termination condition is satisfied, the output is the optimal collision avoidance strategy ; otherwise, return to ③.
- Step 7: Obstacle avoidance measures start to be taken. The optimal collision avoidance strategy needs to be input to the controller. the motion state of the USV is changed to ensure that the USV avoids the encountering vessel with the highest priority and the minimum control and energy consumption cost.
- Step 8: First, the highest priority vessel is avoided until the threat is lifted and then the sub-priority vessel is avoided. In turn, all encountering vessels are avoided in an orderly fashion.
- Step 9: If the collision threat of vessels in the USV monitoring area is less than the threshold , then the obstacle avoidance action ends.
- Step 10: Steps 2 to 9 are repeated at every interval .
- Step 11: If USV arrives at the destination, the voyage ends; otherwise, it returns to the original path and continues to sail.
5. Simulation Analysis
5.1. Experimental Environment and Condition Assumptions
- Preset global path waypoints. USV and the vessel move in a straight line at a uniform speed.
- This method uses the PD controller, , .
- The improved PSO algorithm is used to fins the optimal solution of the model, the number of particle populations , and the maximum number of iterations .
5.2. Analysis of Simulation Results
5.2.1. Algorithm Function Verification
- In the scenario of a single-vessel encounter.
- 2.
- In the scenario of a multi-vessel encounter.
5.2.2. Algorithm Performance Verification
- Comparison and verification of the functional effectiveness of the three algorithms.
- 2.
- Comparison and verification of three algorithm performance indicators.
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Kum, B.C.; Shin, D.H.; Jang, S.; Lee, S.Y.; Lee, J.H.; Moh, T.; Lim, D.G.; Do, J.D.; Cho, J.H. Application of Unmanned Surface Vehicles in Coastal Environments: Bathymetric Survey using a Multibeam Echosounder. J. Coast. Res. 2020, 95, 1152–1156. [Google Scholar] [CrossRef]
- Zhou, C.H.; Gu, S.D.; Wen, Y.Q.; Du, Z.; Xiao, C.S.; Huang, L.; Zhu, M. The review unmanned surface vehicle path planning: Based on multi-modality constraint. Ocean Eng. 2020, 200, 107046. [Google Scholar] [CrossRef]
- Liu, Z.X.; Zhang, Y.M.; Yu, X.; Yuan, C. Unmanned surface vehicles: An overview of developments and challenges. Annu. Rev. Control 2016, 41, 737. [Google Scholar] [CrossRef]
- Specht, M.; Specht, C.; Mindykowski, J.; Dąbrowski, P.; Maśnicki, R.; Makar, A. Geospatial Modeling of the Tombolo Phenomenon in Sopot using Integrated Geodetic and Hydrographic Measurement Methods. Remote Sens. 2020, 12, 737. [Google Scholar] [CrossRef] [Green Version]
- Sang, H.; You, Y.; Sun, X.; Zhou, Y.; Liu, F. The hybrid path planning algorithm based on improved A* and artificial potential field for unmanned surface vehicle formations. Ocean Eng. 2021, 223, 108709. [Google Scholar] [CrossRef]
- Woo, J.; Kim, N. Collision avoidance for an unmanned surface vehicle using deep reinforcement learning. Ocean Eng. 2020, 199, 107001. [Google Scholar] [CrossRef]
- Li, C.Y.; Jiang, J.J.; Duan, F.J.; Liu, W.; Wang, X.Q.; Bu, L.R.; Sun, Z.B.; Yang, G.L. Modeling and Experimental Testing of an Unmanned Surface Vehicle with Rudderless Double Thrusters. Sensors 2019, 19, 2051. [Google Scholar] [CrossRef] [Green Version]
- Stateczny, A.; Burdziakowski, P.; Najdecka, K.; Domagalska-Stateczna, B. Accuracy of Trajectory Tracking Based on Nonlinear Guidance Logic for Hydrographic Unmanned Surface Vessels. Sensors 2020, 20, 832. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Liang, X.; Qu, X.; Hou, Y.; Li, Y.; Zhang, R. Distributed coordinated tracking control of multiple unmanned surface vehicles under complex marine environments. Ocean Eng. 2020, 205, 107328. [Google Scholar] [CrossRef]
- Shah, B.C.; Gupta, S.K. Long-Distance Path Planning for Unmanned Surface Vehicles in Complex Marine Environment. IEEE J. Ocean Eng. 2020, 45, 813–830. [Google Scholar] [CrossRef]
- Kurowski, M.; Thal, J.; Damerius, R.; Korte, H.; Jeinsch, T. Automated Survey in Very Shallow Water Using an Unmanned Surface Vehicle. IFAC PapersOnLine 2019, 52, 146–151. [Google Scholar] [CrossRef]
- Mu, D.; Wang, G.; Fan, Y.; Qiu, B.; Sun, X. Adaptive Trajectory Tracking Control for Underactuated Unmanned Surface Vehicle Subject to Unknown Dynamics and Time-varing Disturbances. Appl. Sci. 2018, 8, 547. [Google Scholar] [CrossRef] [Green Version]
- Song, A.L.; Su, B.Y.; Dong, C.Z.; Shen, D.W.; Xiang, E.Z.; Mao, F.P. A two-level dynamic obstacle avoidance algorithm for unmanned surface vehicles. Ocean Eng. 2018, 170, 351–360. [Google Scholar] [CrossRef]
- Zhou, C.; Gu, S.; Wen, Y.; Du, Z.; Xiao, C.; Huang, L.; Zhu, M. Motion planning for an unmanned surface vehicle based on topological position maps. Ocean Eng. 2020, 198, 106798. [Google Scholar] [CrossRef]
- Brushett, B.; Allen, A.; Futch, V. Implementation and Enhancement of Set-Based Guidance by Velocity Obstacle along with LiDAR for Unmanned Surface Vehicles. In Proceedings of the 2020 5th International Conference on Green Technology and Sustainable Development (GTSD), Ho Chi Minh City, Vietnam, 27–28 November 2020; Volume 198, p. 106798. [Google Scholar]
- Battisti, T.; Muradore, R. A velocity obstacles approach for autonomous landing and teleoperated robots. Auton. Robots 2020, 44, 217–232. [Google Scholar] [CrossRef]
- Yuan, X.; Zhang, D.; Zhang, J.; Zhang, M.; Soares, C.G. A novel real-time collision risk awareness method based on velocity obstacle considering uncertainties in ship dynamics. Ocean Eng. 2021, 220, 108436. [Google Scholar] [CrossRef]
- Fiorini, P.; Shiller, Z. Motion Planning in Dynamic Environments Using Velocity Obstacles. Int. J. Robot. Res. 1988, 17, 760. [Google Scholar] [CrossRef]
- Rufli, M.; Alonso-Mora, J.; Siegwart, R. Reciprocal Collision Avoidance with Motion Continuity Constraints. IEEE Trans. Robot. 2013, 29, 899–912. [Google Scholar] [CrossRef]
- Snape, J.; Van Den Berg, J.; Guy, S.J.; Manocha, D. The Hybrid Reciprocal Velocity Obstacle. IEEE Trans. Robot. 2011, 27, 696–706. [Google Scholar] [CrossRef] [Green Version]
- Gopalakrishnan, B.; Singh, A.K.; Kaushik, M.; Krishna, K.M.; Manocha, D. PRVO: Probabilistic Reciprocal Velocity Obstacle for Multi Robot Navigation under Uncertainty. In Proceedings of the 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vancouver, BC, Canada, 24–28 September 2017; Volume 27, pp. 696–706. [Google Scholar]
- Bareiss, D.; Van den Berg, J. Generalized reciprocal collision avoidance. Int. J. Robot. Res. 2015, 34, 1501–1514. [Google Scholar] [CrossRef]
- Huang, Y.; van Gelder, P.H.A.J.M. Time-Varying Risk Measurement for Ship Collision Prevention. Risk Anal. 2020, 40, 24–42. [Google Scholar] [CrossRef]
- Kuwata, Y.; Wolf, M.T.; Zarzhitsky, D.; Huntsberger, T.L. Safe Maritime Autonomous Navigation with COLREGS, Using Velocity Obstacles. IEEE J. Ocean. Eng. 2014, 39, 110–119. [Google Scholar] [CrossRef]
- Cho, Y.; Han, J.; Kim, J. Efficient COLREG-Compliant Collision Avoidance in Multi-Ship Encounter Situations. IEEE Trans. Intell. Transp. Syst. 2020, 20, 1–13. [Google Scholar] [CrossRef]
- Zhu, X.; Yi, J.; Ding, H.; He, L. Velocity Obstacle Based on Vertical Ellipse for Multi-Robot Collision Avoidance. J. Intell. Robot. Syst. 2020, 99, 183–208. [Google Scholar] [CrossRef]
- Singh, Y.; Sharma, S.; Sutton, R.; Hatton, D.; Khan, A. A constrained A* approach towards optimal path planning for an unmanned surface vehicle in a maritime environment containing dynamic obstacles and ocean currents. Ocean Eng. 2018, 169, 183–208. [Google Scholar] [CrossRef] [Green Version]
- Bertaska, I.R.; Shah, B.; von Ellenrieder, K.; Švec, P.; Klinger, W.; Sinisterra, A.J.; Dhanak, M.; Gupta, S.K. Experimental evaluation of automatically-generated behaviors for USV operations. Ocean Eng. 2015, 106, 496–514. [Google Scholar] [CrossRef]
Encounters Scenario | COLREGS That USV Should Abide By | COLREGS That the Encountering Vessel Should Abide By |
---|---|---|
Head-on | USV is the avoiding party: Steering right past the starboard side of the encountering vessel. | The encountering vessel is the avoiding party: Steering right past the starboard side of USV. |
Over-take | USV is the avoiding party: Steering right past the starboard side of the encountering vessel or steering left past the port side of the encountering vessel. | The encountering vessel will keep its current sailing status until the threat is lifted. |
Cross-right | USV is the avoiding party; Slow down and steer right past the starboard side of the encountering vessel. | The encountering vessel will keep its current sailing status until the threat is lifted. |
Cross-left | USV will keep its current sailing status until the threat is lifted. | The encountering vessel is the avoiding party: |
Take corresponding obstacle avoidance measures based on the encounter scenarios formed by USV and the encountering vessel. |
Property | Value | Property | Value | Property | Value | Property | Value |
---|---|---|---|---|---|---|---|
L [m] | 8 | −1.327 | −0.845 | 0.000 | |||
23.8 | −5.866 | −36.47 | −1.000 | ||||
1.760 | −0.889 | −0.805 | 0.0800 | ||||
0.046 | −10.00 | −3.450 | −0.750 | ||||
−0.723 | −7.250 | 0.0313 | 0.130 | ||||
−2.000 | −0.030 | −1.900 | 3.9564 |
Property | Value |
---|---|
The direction of the disturbances | 240° |
Relative wind speed [m/s] | 7.5 |
Wave height [m] | 2.5 |
Relative ocean current [m/s] | 2 |
Area of frontal projection above the waterline [] | 330.9 |
Area of lateral projection above the waterline [] | 874.8 |
Area of frontal projection below the waterline [] | 91.0 |
Area of lateral projection below the waterline [] | 323.4 |
Ship | Encounters Scenario | Initial Position [m] | Initial Velocity [m/s] | Initial Direction | Relative Azimuth Angle |
---|---|---|---|---|---|
USV | - | (0,0) | 2 | 0° | |
Encountering vessel | Cross-right | (200, −200) | 1.5 | 90° | 90° |
Encountering vessel | Head-on | (500, 0) | 2 | 0° | 0° |
Encountering vessel | Over-take | (350, 0) | 1 | 180° | 180° |
Collision Threat Degree | Timing of Obstacle Avoidance | Highest Collision Risk Moment |
---|---|---|
Collision Threat Degree | Timing of Obstacle Avoidance | Highest Collision Risk Moment |
---|---|---|
Collision Threat Degree | Timing of Obstacle Avoidance | Highest Collision Risk Moment |
---|---|---|
Ship | Encounter Situation | Initial Position [m] | Initial Velocity [m/s] | Initial Direction | Relative Azimuth Angle |
---|---|---|---|---|---|
USV | (0, 0) | 2 | 0° | - | |
Encountering vessel 1 | Over-take | (50, 0) | 1 | 180° | 180° |
Encountering vessel 2 | Cross-right | (200, −200) | 1.5 | 90° | 90° |
Encountering vessel 3 | Head-on | (500, −40) | 1 | 0° | 0° |
Critical Moment | |||
---|---|---|---|
Vessel 1 Start Obstacle Avoidance Time | |||
Vessel 1 Highest Threat Time | |||
Vessel 2 Start Obstacle Avoidance Time | |||
Vessel 2 Highest Threat Time | |||
Vessel 3 Start Obstacle Avoidance Time | |||
Vessel 3 Highest Threat Time |
Ship | Encounter Situation | Initial Position [m] | Initial Velocity [m/s] | Initial Direction | Relative Azimuth Angle |
---|---|---|---|---|---|
USV | (0, 0) | 10 m/s | 45° | ||
Encountering vessel 1 | Head-on | (500, 0) | 15 m/s | 315° | 90° |
Encountering vessel 2 | Over-take | (350, −0) | 15 m/s | 210° | −15° |
Encountering Vessel | Improved VO Autonomous Obstacle Avoidance Algorithm | VO Autonomous Obstacle Avoidance Algorithm | SBG Autonomous Obstacle Avoidance Algorithm |
---|---|---|---|
vessel 1 | |||
vessel 2 | |||
Total 1 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Ren, J.; Zhang, J.; Cui, Y. Autonomous Obstacle Avoidance Algorithm for Unmanned Surface Vehicles Based on an Improved Velocity Obstacle Method. ISPRS Int. J. Geo-Inf. 2021, 10, 618. https://doi.org/10.3390/ijgi10090618
Ren J, Zhang J, Cui Y. Autonomous Obstacle Avoidance Algorithm for Unmanned Surface Vehicles Based on an Improved Velocity Obstacle Method. ISPRS International Journal of Geo-Information. 2021; 10(9):618. https://doi.org/10.3390/ijgi10090618
Chicago/Turabian StyleRen, Jia, Jing Zhang, and Yani Cui. 2021. "Autonomous Obstacle Avoidance Algorithm for Unmanned Surface Vehicles Based on an Improved Velocity Obstacle Method" ISPRS International Journal of Geo-Information 10, no. 9: 618. https://doi.org/10.3390/ijgi10090618
APA StyleRen, J., Zhang, J., & Cui, Y. (2021). Autonomous Obstacle Avoidance Algorithm for Unmanned Surface Vehicles Based on an Improved Velocity Obstacle Method. ISPRS International Journal of Geo-Information, 10(9), 618. https://doi.org/10.3390/ijgi10090618