﻿ 一种基于有限状态机模型的局部转向避碰路径规划算法
 海洋科学  2018, Vol. 42 Issue (1): 119-127 PDF
http://dx.doi.org/10.11759/hykx20171011010

#### 文章信息

WANG Dong, ZHANG Jie, JIN Jiu-cai, MAO Xing-peng. 2018.

Local steering collision avoidance path planning algorithm based on finite state machine model

Marina Sciences, 42(1): 119-127.
http://dx.doi.org/10.11759/hykx20171011010

### 文章历史

1. 哈尔滨工业大学 电子与信息工程学院, 黑龙江 哈尔滨 150006;
2. 国家海洋局第一海洋研究所, 山东 青岛 266061

Local steering collision avoidance path planning algorithm based on finite state machine model
WANG Dong1,2, ZHANG Jie1,2, JIN Jiu-cai2, MAO Xing-peng1
1. School of Electronics and Information Engineering, Harbin Institute of Technology, Harbin 150006, China;
2. First Institute of Oceanography, State Oceanic Administration, Qingdao 266061, China
Abstract: In this paper, we propose a local collision avoidance algorithm based on the finite state machine (FSM) model for the unmanned surface vehicle (USV) operating in offshore environments with many obstacles such as reefs and fishing vessels. First, we obtain the analytical results for the heading constraint with a fixed USV speed based on the velocity obstacle method and an obstacle-area-stratification method. Then, we determine the finite states, which primarily contain the goal and buffer waypoint-guidance states. This is achieved by the steering control, execution actions, and state transition conditions of the FSM model, based on the given constraint conditions and situations of obstacle detection. Finally, local steering collision avoidance path planning is realized by the execution of the FSM model. The simulation results demonstrate that the proposed multi-obstacle avoidance algorithm is feasible and practical. This method is easy to improve and expand and is easily combined with the current mainstream USV control system. As such, our proposed algorithm can facilitate the rapid engineering of the USV collision avoidance system.
Key words: unmanned surface vehicle    local avoidance    path planning    waypoint navigation    finite state machine

1 环境模型及危险评估模型

1.1 环境模型构建 1.1.1 坐标系组

1.1.2 等效障碍物

 图 1 等效障碍物示意图 Fig. 1 Equivalent obstacles
 ${R_{{\text{Obs}}}} = {D_{{\text{LOS}}}}\sin \left( {\frac{\varphi }{2}} \right)/\left( {1-\sin \left( {\frac{\varphi }{2}} \right)} \right)$ (1)

1.1.3 速度变量

1.2 危险评估模型

 图 2 速度矢量及危险评估模型示意图 Fig. 2 Velocity vectors and risk assessment model

BxBy边界半径分别为RxRy, 半径差$\Delta {R_{x-y}}$可经验确定。由于${R_{\rm{O}}} = {R_{{\rm{Obs}}}} + {R_{{\rm{USV}}}}$, 其中, RUSV为无人船尺寸, 则RP, RWRS可依次确定。记从$\mathord{\buildrel{\lower3pt\hbox{$\scriptscriptstyle\frown$}} \over C}$出发并与边界Bx相切的两条射线分别为${l_{{\rm{L}}, \mathord{\buildrel{\lower3pt\hbox{$\scriptscriptstyle\frown$}} \over C}, x}}$${l_{{\rm{R}}, \mathord{\buildrel{\lower3pt\hbox{\scriptscriptstyle\frown}} \over C}, x}}, 两条射线夹角的一半为边界偏角\Delta {\beta _x}, 表示为  \Delta {\beta _x} = {\sin ^{-1}}\left( {\frac{{{R_x}}}{{{D_{{\rm{UO}}}}}}} \right), {R_x} < {D_{{\rm{UO}}}} (4) 其中, {D_{{\rm{UO}}}} = {D_{{\rm{LOS}}}} + {R_{{\rm{Obs}}}}表示\mathord{\buildrel{\lower3pt\hbox{\scriptscriptstyle\frown}} \over C} 与障碍物中心之间的距离。在oxy{l_{{\rm{L}}, \mathord{\buildrel{\lower3pt\hbox{\scriptscriptstyle\frown}} \over C}, x}}$${l_{{\rm{R}}, \mathord{\buildrel{\lower3pt\hbox{$\scriptscriptstyle\frown$}} \over C}, x}}$之间的角度区间为边界区间${\phi _x}$。若不考虑无人船后侧的障碍物, 则${\phi _x}$可表示为

 ${\phi _x} = \left\{ {\left. {\left( {{\beta _{{\rm{L, }}x}}, {\beta _{{\rm{R, }}x}}} \right)} \right|{\beta _{{\rm{L, }}x}} = \beta-\Delta {\beta _x}, {\beta _{{\rm{R, }}x}} = \beta + \Delta {\beta _x}} \right\}$ (5)

2 基于FSM的局部路径规划算法 2.1 可航行角约束

Tn时刻无人船与障碍物存在相对运动, 保持oxy不变并将无人船航向转向$\Delta \theta$角度, 转向后无人船速度变量记为$\left( {{\upsilon _{{\rm{U}}\_\Delta \theta }}, {\theta _{{\rm{U\_}}\Delta \theta }}} \right)$或简记为$\left( {{\upsilon _{\rm{U}}}, \Delta \theta } \right)$, 相对运动速度变量记为$\left( {{\upsilon _{{\rm{UO}}\_\Delta \theta }}, {\theta _{{\rm{UO\_}}\Delta \theta }}} \right)$。若${\theta _{{\rm{U\_}}\Delta \theta }}$使得${\theta _{{\rm{UO\_}}\Delta \theta }} \notin {\phi _x}$成立, 则称${\theta _{{\rm{U\_}}\Delta \theta }}$为边界Bx约束下的可航行角, 否则称其为不可航行角。所有可航行角构成可航行角区间${\mathit{\Psi} _{{\rm{A, }}x}}$, U内其余角度区间称为不可航行角区间${\mathit{\Psi} _{{\rm{N, }}x}}$, 即有

 ${\mathit{\Psi} _{{\rm{N, }}x}} = \left\{ {\left. {{\theta _{{\rm{U\_}}\Delta \theta }}} \right|{\theta _{{\rm{U\_}}\Delta \theta }} = \Delta \theta {\rm{, }}{\theta _{{\rm{UO\_}}\Delta \theta }} \in {\phi _x}} \right\}$ (6)
 ${\mathit{\Psi} _{{\text{A}}, x}} = {\complement _U}{\mathit{\Psi} _{{\text{N}}, x}}$ (7)

OXY下可航行角和不可航行角区间分别记为${\mathit{\Psi} _{{\text{abs}}, {\text{A}}, x}}$${\mathit{\Psi} _{{\text{abs}}, {\text{N}}, x}}, 满足  {\mathit{\Psi} _{{\rm{abs, N, }}x}} = \left\{ {\left. {{\theta _{{\rm{abs, U\_}}\Delta \theta }}} \right|{\theta _{{\rm{abs, U\_}}\Delta \theta }} = {F_{{\rm{TriC}}}}({\theta _{{\rm{U\_}}\Delta \theta }} + \psi ), {\theta _{{\rm{U\_}}\Delta \theta }} \in {\mathit{\Psi} _{{\rm{N, }}x}}} \right\} (8)  {\mathit{\Psi} _{{\rm{abs, A, }}x}} = {\complement _U}{\mathit{\Psi} _{{\rm{abs, N, }}x}} (9) 同样保持ox不变且无人船转向\Delta \theta角度, 无人船速度变量和相对速度变量可分别表示为{\boldsymbol{V}_{\text{U}\_\Delta \theta }} = {\upsilon _{\rm{U}}}{\text{e}^{\text{i}\Delta \theta }}$${\boldsymbol{V}_{\text{UO}\_\Delta \theta }} = {\upsilon _{{\rm{UO\_}}\Delta \theta }}{\text{e}^{\text{i}{\theta _{{\rm{UO\_}}\Delta \theta }}}}$, 且满足${\boldsymbol{V}_{\text{UO}\_\Delta \theta }} = {\boldsymbol{V}_{\text{U}\_\Delta \theta }} - {\boldsymbol{V}_\text{O}}$, 故${\theta _{{\rm{UO\_}}\Delta \theta }}$

 ${\theta _{{\rm{UO\_}}\Delta \theta }} = {F_{\text{atan}}}\left( {\operatorname{Re} \left( {{\boldsymbol{V}_{\text{UO}\_\Delta \theta }}} \right), \operatorname{Im} \left( {{\boldsymbol{V}_{\text{UO}\_\Delta \theta }}} \right)} \right)$ (10)

$\delta = {{{\upsilon _{\rm{O}}}} \mathord{\left/ {\vphantom {{{\upsilon _{\rm{O}}}} {{\upsilon _{\rm{U}}}}}} \right. } {{\upsilon _{\rm{U}}}}}$, 进一步分析(10)式易知, $\Delta \theta$${\theta _{{\rm{UO\_}}\Delta \theta }}满足  \sin (\Delta \theta - {\theta _{{\rm{UO\_}}\Delta \theta }}) = \delta \sin ({\theta _{\rm{O}}} - {\theta _{{\rm{UO\_}}\Delta \theta }}) (11) 随着\Delta \theta 的连续变化, {\mathit{\boldsymbol{V}}_{{\text{UO}}\_\Delta \theta }}矢端曲线形成图 3所示的圆形轨迹。基于矢端曲线与射线{l_{{\text{L}}, \overset{\lower0.5em\hbox{\smash{\scriptscriptstyle\frown}}}{C}, x}}$${l_{{\text{R}}, \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{C}, x}}$的分布关系可将其划分为6大类情形[16], 通过无人船和障碍物运动信息及给定的${\theta _{{\text{UO}}\_\Delta \theta }}$可直接获得情形分类条件, 并基于(10)式—(11)式进一步确定${\mathit{\Psi} _{{\text{N}}, x}}$${\mathit{\Psi} _{{\text{A}}, x}}$${\mathit{\Psi} _{{\text{N}}, x}}$即为Bx边界条件下的可航行角约束。不同情形下具体的矢端曲线与两条射线关系图例可见文献[16], 图 4列举了其中两种典型情形下的图例。

 图 3 速度矢量关系及矢端曲线示意图 Fig. 3 Relationship of velocity vectors and hodograph

 图 4 两种典型情形的矢端曲线与两条射线关系图例 Fig. 4 Relationships between the hodograph and two rays in two typical situations a.典型情形一图例; b.典型情形六图例 a. Situation one. b. Situation six

$\Delta \theta$的周期延拓值为$\Delta {\theta _{\rm{e}}} = \Delta \theta + 2k\pi, k = \pm 1$, 间接量$\varsigma = \delta \sin ({\theta _{\rm{O}}} - {\theta _{{\rm{UO\_\Delta }}\theta }})$。若$\varsigma \leqslant 1$, 则由(11)式可得$\Delta {\theta _{\rm{e}}}$的可能解为$\Delta {\theta _{{\rm{e, }}i}} = {F_{\Delta {\theta _{{\rm{e}}, i}}}}({\theta _{{\rm{UO\_}}\Delta \theta }}, \varsigma ), i = 1, 2$, 其中

 ${F_{\Delta {\theta _{{\rm{e}}, 1}}}}(\theta, \varsigma ) = \theta + {\sin ^{ - 1}}\varsigma$ (12)
 ${F_{\Delta {\theta _{{\rm{e}}, 2}}}}(\theta, \varsigma ) = \left\{ {\begin{array}{*{20}{l}} {\theta - {{\sin }^{ - 1}}\varsigma + \pi {\rm{, }}\varsigma \geqslant 0} \\ {\theta - {{\sin }^{ - 1}}\varsigma - \pi {\rm{, }}\varsigma < 0} \end{array}} \right.$ (13)

 $\Delta {\theta _{{\text{e, }}{{\text{L}}_i}, x}} = {F_{\Delta {\theta _{{\text{e}}, i}}}}({\beta _{{\text{L}}, x}}, {\varsigma _{{\text{L, }}x}}), {\text{ }}i = 1{\text{ }}或{\text{ 2}}$ (14)
 $\Delta {\theta _{{{\text{L}}_i}, x}} = {F_{{\text{TriC}}}}(\Delta {\theta _{{\text{e, }}{{\text{L}}_i}, x}}), {\text{ }}i = 1{\text{ }}或{\text{ 2}}$ (15)

 ${\theta _{{\text{t1}}}} = {\left. {{F_{\text{atan}}}\left( {\operatorname{Re} \left( {{\boldsymbol{V}_{\text{UO}\_\Delta \theta }}} \right), \operatorname{Im} \left( {{\boldsymbol{V}_{\text{UO}\_\Delta \theta }}} \right)} \right)} \right|_{\Delta \theta = \frac{{{\kappa _1} + {\kappa _2}}}{2}}}$ (19)

 ${\mathit{\Psi} _{{\text{N}}, x}} = \left\{ {\begin{array}{*{20}{l}} {\left\{ {\left. \theta \right|\theta \in \left( {{\kappa _1}, {\kappa _2}} \right)} \right\}\;\;\;\;\;\;\;\;\;\;, {\text{ }}{\theta _{{\text{t1}}}} \in {\phi _x}} \\ {\left\{ {\left. \theta \right|\theta \in \left( {-{\pi}, {\kappa _1}} \right) \cup \left( {\left. {{\kappa _2}, {\pi}} \right]} \right.} \right\}, {\text{ 其他}}} \end{array}} \right.$ (20)

(2) 对于情形二和情形三, 基础条件为

 $\delta > 1, \left| {{\varsigma _{{\rm{L, }}x}}} \right| \geqslant 1, \left| {{\varsigma _{{\rm{R, }}x}}} \right| \geqslant 1$ (21)

 ${\theta _{{\rm{t2}}}} = {\left. {{F_{\text{atan}}}\left( {\operatorname{Re} \left( {{\boldsymbol{V}_{\text{UO}\_\Delta \theta }}} \right), \operatorname{Im} \left( {{\boldsymbol{V}_{\text{UO}\_\Delta \theta }}} \right)} \right)} \right|_{\Delta \theta = \frac{{\rm{ \mathsf{ π} }}}{2}}}$ (22)

 $\min \left( {{\theta _{{\text{UO}}}}, {\theta _{{\text{t2}}}}} \right) < {\beta _{{\text{L}}, x}}{\text{ }}{\text{ }}或\max \left( {{\theta _{{\text{UO}}}}{\text{, }}{\theta _{{\text{t2}}}}} \right) > {\beta _{{\text{R}}, x}}$ (23)

 ${\mathit{\Psi} _{{\rm{N, }}x}} = \emptyset$ (24)

 ${\mathit{\Psi} _{{\rm{N, }}x}} = U$ (25)

(3) 对于情形四, 分类条件为

 $\delta > 1, \left| {{\varsigma _{{\rm{L, }}x}}} \right| < 1, \left| {{\varsigma _{{\rm{R, }}x}}} \right| \geqslant 1$ (26)

 ${\mathit{\Psi} _{{\text{N}}, x}} = \left\{ {\begin{array}{*{20}{l}} {\left\{ {\left. \theta \right|\theta \in \left( {{\kappa _1}, {\kappa _2}} \right)} \right\}\;\;\;\;\;\;\;\;\;\;, {\text{ }}{\theta _{{\text{t1}}}} \in {\phi _x}} \\ {\left\{ {\left. \theta \right|\theta \in \left( {-{\pi}, {\kappa _1}} \right) \cup \left( {\left. {{\kappa _2}, {\pi}} \right]} \right.} \right\}, {\text{其他}}} \end{array}} \right.$ (27)

(4) 对于情形五, 分类条件为

 $\delta > 1, \left| {{\varsigma _{{\rm{L, }}x}}} \right| \geqslant 1, \left| {{\varsigma _{{\rm{R, }}x}}} \right| < 1$ (28)

(5) 对于情形六, 分类条件为

 $\delta > 1, \left| {{\varsigma _{{\rm{L, }}x}}} \right| < 1, \left| {{\varsigma _{{\rm{R, }}x}}} \right| < 1$ (29)

 ${\mathit{\Psi} _{{\rm{N}}, x}} = \left\{ {\theta \left| {\theta \in \bigcup\limits_{i = 1}^N {\mathit{\Psi} _{{\rm{N}}, x}^i} } \right.} \right\}$ (32)

2.2 位点导航模型

2.2.1 最优导航角

${\mathit{\Psi} _{{\rm{N}}, x}}$及无人船航向动态窗口[17]约束下, 考虑将关于目标角度和障碍物方位角偏转度作为最优目标函数[7]。考虑多目标约束优化问题, 定义最优目标函数${F_{\text{opt}}}\left( \theta \right)$

 ${F_{\text{opt}}}\left( \theta \right) = {\omega _1}{f_{\rm{G}}}\left( \theta \right) + {\omega _2}{f_{{\rm{safe}}}}\left( \theta \right)$ (33)

 ${f_{\rm{G}}}\left( \theta \right) = 1 - \frac{{\left| {{\theta _{\rm{G}}} - \theta } \right|}}{\pi }$ (34)
 ${f_{{\rm{safe}}}}\left( \theta \right) = \frac{1}{{N'}}\sum\limits_{j = 1}^{N'} {\frac{{\left| {\theta - \theta _{{\mathit{\Psi} _{{\rm{N}}, x}}}^j} \right|}}{\pi }}$ (35)

 $\left\{ {\begin{array}{*{20}{l}} {{x_{{\rm{abs, }}{{\rm{P}}_{{\rm{t}}, i}}}} = x_{{\rm{abs, }}\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{C} }^{{T_n}} + D_{{{\rm{P}}_{{\rm{t}}, i}}}^{{T_n}}\cos \left( {\theta _{{\rm{opt}}}^{{T_n}} + {\theta _{{\rm{abs, U}}}}} \right)} \\ {{y_{{\rm{abs, }}{{\rm{P}}_{{\rm{t}}, i}}}} = y_{{\rm{abs, }}\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{C} }^{{T_n}} + D_{{{\rm{P}}_{{\rm{t}}, i}}}^{{T_n}}\sin \left( {\theta _{{\rm{opt}}}^{{T_n}} + {\theta _{{\rm{abs, U}}}}} \right)} \end{array}} \right.$ (38)

(5) 无人船向${P_{{\rm{t, }}i}}$导航, 若$\Delta {\theta _{{\rm{N - G}}}} > \Delta {\theta _{{\rm{opt - G}}}}$, 即$\left| {{F_{{\rm{TriC}}}}\left( {{\theta _{\rm{N}}} - {\theta _{\rm{G}}}} \right)} \right| > \left| {{F_{{\rm{TriC}}}}\left( {{\theta _{{\rm{opt}}}} - {\theta _{\rm{G}}}} \right)} \right|$, 则增加${P_{{\rm{t, }}i + 1}}$作为导航位点。否则考虑策略(6);

(6) 保持导航位点不变。

2.3.3 局部避碰路径规划FSM设计

 基础条件 数学描述 CB1 ${D_{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{C} {\rm{, }}{P_{\rm{G}}}}} \leqslant {D_{{\rm{Th}}}}$ CB2 ${\mathit{\Psi} _{\rm{G}}} \cap {\mathit{\Psi} _{{\rm{N}}, {\rm{S}}}} = \emptyset$ CB3 ${D_{\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{C} {\rm{, }}{P_{{\rm{t, }}i}}}} \leqslant {D_{{\rm{Th}}}}$ CB4 $\left| {{F_{{\rm{TriC}}}}\left( {{\theta _{{\rm{opt}}}} - {\theta _{\rm{N}}}} \right)} \right| > {\theta _{{\rm{Th}}}}$ CB5 $\left| {{F_{{\rm{TriC}}}}\left( {{\theta _{\rm{N}}} - {\theta _{\rm{G}}}} \right)} \right| > \left| {{F_{{\rm{TriC}}}}\left( {{\theta _{{\rm{opt}}}} - {\theta _{\rm{G}}}} \right)} \right|$

 条件 数学描述(N选1) ${C_{0 \to 1}}$ 无。直接触发 ${C_{1 \to 1}}$ (1)${\bar C_{{{\rm{B}}_1}}}{C_{{{\rm{B}}_{\rm{2}}}}}$ ${C_{1 \to 4}}$ (1)${\bar C_{{{\rm{B}}_1}}}{\bar C_{{{\rm{B}}_{\rm{2}}}}}$ ${C_{1 \to 5}}$ (1)${C_{{{\rm{B}}_1}}}$ ${C_{2 \to 2}}$ (1)${\bar C_{{{\rm{B}}_1}}}{\bar C_{{{\rm{B}}_{\rm{2}}}}}{\bar C_{{{\rm{B}}_{\rm{3}}}}}{\bar C_{{{\rm{B}}_{\rm{4}}}}}{\bar C_{{{\rm{B}}_{\rm{5}}}}}$ ${C_{2 \to 3}}$ (1)${\bar C_{{{\rm{B}}_1}}}{C_{{{\rm{B}}_{\rm{2}}}}}$ ${C_{2 \to 4}}$ (1)${\bar C_{{{\rm{B}}_1}}}{\bar C_{{{\rm{B}}_{\rm{2}}}}}{C_{{{\rm{B}}_{\rm{3}}}}}$ (2)${\bar C_{{{\rm{B}}_1}}}{\bar C_{{{\rm{B}}_{\rm{2}}}}}{\bar C_{{{\rm{B}}_{\rm{3}}}}}{C_{{{\rm{B}}_{\rm{4}}}}}$ (3)${\bar C_{{{\rm{B}}_1}}}{\bar C_{{{\rm{B}}_{\rm{2}}}}}{\bar C_{{{\rm{B}}_{\rm{3}}}}}{\bar C_{{{\rm{B}}_{\rm{4}}}}}{C_{{{\rm{B}}_{\rm{5}}}}}$ ${C_{2 \to 5}}$ (1)${C_{{{\rm{B}}_1}}}$ ${C_{3 \to 1}}$ 无。直接触发 ${C_{4 \to 2}}$ 无。直接触发

 图 5 FSM状态迁移示意图 Fig. 5 Diagram of FMS state transitions

3 仿真结果与分析

 图 6 无人船局部避碰导航仿真 Fig. 6 Simulation of USV guidance with local collision avoidance 图中静态障碍物为Os1—Os8, 红色和黄色圆分别表示BW和BS边界, BS边界显示绿色表示该障碍物在无人船探测范围内。动态障碍物为Od1—Od3, 品红色圆表示从无人船探测到后的障碍物BW边界轨迹, 绿色圆表示该障碍物当前位置的BW边界 The static obstacles are Os1 to Os8 with a red circle and a yellow circle which are represent BW and BS respectively, and the obstacle is detected by USV if the color of the circle of BS is green. The dynamic obstacles are Od1 to Od3, the magenta circles represent the trajectories of BW when the dynamic obstacle is detected, and the green circle of the dynamic obstacle represents the current BW of it

4 讨论与结论

 [1] Campbell S, Naeem W, Irwin G W. A review on improving the autonomy of unmanned surface vehicles through intelligent collision avoidance manoeuvres[J]. Annual Reviews in Control, 2012, 36(2): 267-283. DOI:10.1016/j.arcontrol.2012.09.008 [2] Yan R J, Pang S, Sun H B, et al. Development and missions of unmanned surface vehicle[J]. Journal of Marine Science & Application, 2010, 9(4): 451-457. [3] 柳晨光, 初秀民, 吴青, 等. USV发展现状及展望[J]. 中国造船, 2014, 55(4): 194-205. Liu Chenguang, Chu Xiumin, Wu Qing, et al. A review and prospect of USV research[J]. Shipbuliding of China, 2014, 55(4): 194-205. [4] Liu Z, Zhang Y, Yu X, et al. Unmanned surface vehicles: an overview of developments and challenges[J]. Annual Reviews in Control, 2016, 41: 71-93. DOI:10.1016/j.arcontrol.2016.04.018 [5] Soltan R A, Ashrafiuon H, Muske K R. Trajectory real-time obstacle avoidance for underactuated unmanned surface vessels[C] // American Society of Mechanical Engineers. Proceedings of ASME 2009 International Design Engineering Technical Conferences & Computers and Information in Engineering Conference. San Diego: American Society of Mechanical Engineers, 2009: 1059-1067. [6] 耿以才, 黄立新, 陈凌珊, 等. 无人船安全目标追踪与自动避障算法[J]. 计算机测量与控制, 2015, 23(7): 2467-2469. Geng Yicai, Huang Lixin, Chen Lingshan, et al. Safe target-tracking algorithm with obstacle avoidance for unmanned ship[J]. Computer Measurement & Control, 2015, 23(7): 2467-2469. [7] Tang P, Zhang R, Liu D, et al. Local reactive obstacle avoidance approach for high-speed unmanned surface vehicle[J]. Ocean Engineering, 2015, 106: 128-140. DOI:10.1016/j.oceaneng.2015.06.055 [8] Fiorini P, Shiller Z. Motion planning in dynamic environments using velocity obstacles[J]. International Journal of Robotics Research, 1998, 17(7): 760-772. DOI:10.1177/027836499801700706 [9] Kluge B, Prassler E. Reflective navigation: individual behaviors and group behaviors[C]//IEEE. Proceedings of the 2004 IEEE International Conference on Robotics and Automation. New Orlwans: IEEE. 2004: 4172-4177. https://ieeexplore.ieee.org/document/1308926/ [10] Wilkie D, Berg J V D, Manocha D. Generalized velocity obstacles[C]// IEEE. IEEE/RSJ International Conference on Intelligent Robots and Systems. St. Louis: IEEE, 2009: 5573-5578. [11] Kuwata Y, Wolf M T, Zarzhitsky D, et al. Safe maritime autonomous navigation with colregs, using velocity obstacles[J]. IEEE Journal of Oceanic Engineering, 2011, 39(1): 110-119. [12] Larson J, Bruch M, Ebken J. Autonomous navigation and obstacle avoidance for unmanned surface vehicles[J]. Proceedings of SPIE - The International Society for Optical Engineering, 2006, 6230: 623007-1-623007-12. [13] 蒋新松. 机器人学导论[M]. 沈阳: 辽宁科学技术出版社, 1994: 511-516. Jiang Xinsong. Robotics Introduction[M]. Shenyang: Liaoning Science and Technology Publishing, 1994: 511-516. [14] Szlapczynski R. On evolutionary computing in multi- ship trajectory planning[J]. Applied Intelligence, 2012, 37(2): 155-174. DOI:10.1007/s10489-011-0319-7 [15] Almeida C, Franco T, Ferreira H, et al. Radar based collision detection developments on USV ROAZ Ⅱ[C]// IEEE. Oceans'09 IEEE Bremen. Bremen: IEEE, 2009: 1-6. [16] Wang D, Zhang J, Jin J, et al. A steering occasion strategy for local collision avoidance of an unmanned surface vehicle in a complex environment[C]// IEEE. 2017 Chinese Control Conference Proceedings of the 36th CCC. Dalian: IEEE, 2017: 6133-6138. [17] Fox D, Burgard W, Thrun S. The dynamic window approach to collision avoidance[J]. IEEE Robotics & Automation Magazine, 2002, 4(1): 23-33.