随着全球化贸易的快速发展,国际海上运输量显著增长,使得海上交通环境变得日益复杂。复杂的航行环境容易导致船舶碰撞事故的发生。根据中国海事局网站自2015年6月18日−2023年12月1日发布的831份海事事故调查报告显示,碰撞和触碰事故共374起,占比高达45.01%[1]。因此,从根本上减少船舶碰撞事故的发生并提高船舶自主避碰决策能力已成为一个亟待解决的问题。
船舶避碰根据会遇船舶数量可以分为两船避碰和多船避碰。由于多船会遇局面复杂多变,且《1972年国际海上避碰规则》(以下简称“《规则》”)仅对两船会遇局面做出了定性的避让责任和避碰策略规定。相较于两船避碰,目前国内外对于多船避碰问题的研究相对较少。现有多船避碰研究的主要方法是确定避让重点船,该方法既没有考虑本船在避让当前重点船过程中或结束后与其他船舶再构成碰撞危险的情况,也未充分考虑多艘船舶与本船同时构成碰撞危险的情况。因此,针对多船避碰问题的研究需要考虑局面内所有存在碰撞危险的船舶,提出符合船舶避碰实际的决策算法。
船舶避碰尤其是多船避碰的本质是船舶在竞争与合作并存的利益冲突过程中寻求自身或集体最大利益的过程,拥有鲜明的博弈特征,适用博弈理论进行分析。目前,已有学者将博弈论应用于船舶避碰领域。Lisowski[2]在考虑《规则》的基础上,结合最优在线控制,利用多步矩阵博弈模型确定船舶的安全轨迹。随后,Lisowski[3]将多阶段位置博弈模型引入到多步矩阵博弈模型中,构成微分博弈的动态博弈模型,并在能见度良好及不良的多船会遇场景下,仿真验证了模型的有效性,但计算时间过长。Szlapczynski[4]将博弈论的一些假设与进化算法相结合,提出了安全船舶轨迹进化集法,该方法具有较好的实时性,适用于求解多船避碰问题的安全避让路径。此外,Szlapczynski[5 − 7]不断改进之前的研究,使其适用于开阔水域与受限水域的船舶避碰中,并在考虑《规则》的基础上提高了避让路径的经济性。相比之下,国内学者对博弈论在船舶避碰领域的应用研究较少[8]。侯建军等[9]将多船矩阵决策转化为多个两船矩阵对策求解,并在不同场景下设计不同的决策方案,他所提的收益函数仅考虑了船舶间的最近会遇距离,未考虑船舶的避碰成本。王刚[10]基于扩展式博弈建立了两船避碰决策系统。孔祥生等[11]基于《规则》,将博弈理论用于船舶动态避碰系统,实现了两船自动避碰。欧阳旭东等[12]将多船避碰问题转化为船舶间完全信息的非零和动态博弈来求解避让行动,但其所建立的收益函数也未考虑经济性。涂伊婧[8]基于扩展式博弈引入速度障碍法求解局中人集和避让行动,将多船避碰转化为避让重点船,未考虑到局面内所有船舶行动的协调性。综上所述,目前利用博弈论方法来解决多船避碰问题的研究主要存在以下不足:1)现有解决多船避碰问题的主要方法是先确定重点避让船,然后判断本船和重点避让船之间的会遇态势,从而确定两船的避让责任和本船的避让策略,该方法未充分考虑局面内所有船舶的避让行动的相互影响;2)算法计算量大,计算时间过长,导致算法的决策效率不高,难以应用于实际的多船避碰过程中;3)收益函数的考虑有所欠缺,大多研究仅考虑了航行安全这一因素,而未充分考虑避让行动的《规则》符合性与经济性。
因此,本文将针对多船避碰问题,基于扩展式博弈方法充分协调局面内所有船舶的行动,以提高船舶的避碰效率,保障船舶的航行安全。此外,本文将基于船舶安全会遇领域和速度障碍法构建一种剪枝优化方法,以降低博弈树生成算法的计算量和逆推法的分析求解量,提高算法的决策效率与实时性,并提升算法的实用性。本文从航行安全、避让行动的《规则》符合性以及能耗角度出发,构建一个船舶避碰收益函数,以辅助船舶做出既安全又经济的避碰决策。
1 基于扩展式博弈的多船协商避碰模型 1.1 概 述扩展式博弈本质上是一种动态模型,能够动态地描述每个策略,包括行动时机、行动方案等详细信息。因此,扩展式博弈符合船舶协商避碰的过程,能为多船避碰问题提供更类人的决策模型。在扩展式博弈中,所有船舶均被假设为理性个体,具有自主判断和决策能力。通过分析每种可能的避让行动,并运用逆推法求解子博弈精炼纳什均衡,从而确定船舶的最优避让行动组合。
1.2 多船协商避碰模型1)局中人集
局中人集N是博弈参与者的集合,他们都是能做出决策的理性实体。本文用
![]() |
表 1 碰撞危险度等级划分 Tab.1 CRI classification |
基于此,本文用于确定局中人集N的方法如图1所示。
![]() |
图 1 局中人集N的确定流程 Fig. 1 The process for determining N |
2)协商博弈优先级
扩展式博弈是一种序贯博弈,在博弈过程中,每个时间只有一个局中人进行决策。本文根据船舶i的
Si=w1CRIi∑ni=1CRIi+w2Vi∑ni=1Vi+w3Gi∑ni=1Gi。 | (1) |
式中:
本文根据
3)避让行动集
在扩展式博弈中,局中人可选择的所有行动构成的集合被称为行动集。由于行动策略数与博弈复杂度呈指数增长关系,如果可供选择的行动越多,则行动组合越多,这将导致算法的求解时间过长。此外,根据避碰实践可知,转向避让方式比变速、停车避让方式更简单、高效,但过大的转向角度会使船舶偏航距离变远、复航成本变大。因此,本文限定船舶的转向角度范围为左右30°,并将每5°转向作为策略的粒度,则船舶i的避让行动集
Ai0=−30°,−25°,−20°,−15°,−10°,−5°,0°,5°,10°,15°,20°,25°,30°。 |
4)收益函数
在博弈中,局中人对不同结果持有不同满意度。这些满意度可以用数值量化,这种数值表示即为收益函数。局中人的收益对决策结果起到决定性的作用,各局中人总是倾向于选择能够最大化自身利益的策略。本文从船舶航行安全、避让行动的《规则》符合情况和船舶能耗3个角度出发,建立一个综合安全性、合规性和经济性3个因素的船舶避碰收益函数,其计算为:
1)安全性收益
PΔCRIi=∑nj=1(1-ΔCRIij)2n−1。 | (2) |
式中:
2)合规性收益
设船舶i与船舶j处于碰撞危险局面中,船舶i符合《规则》规定的避让行动集合为
PCij={1,ai∈Ai′,0,其他。 | (3) |
式中:
PCi=∑nj=1PCijn-1。 | (4) |
式(4)同样适用于计算两船会遇局面下船舶避让行动的合规性收益。
3)经济性收益
设船舶i的初始位置为
x={x0+vtsinψi,0°⩽ | (5) |
\begin{array}{c}{{y}} = \left\{\begin{split}&{{y}}_{\text{0}} + {vt} \cos \psi_{{i}} ,\text{0°}\leqslant \psi_{{i}}\leqslant \text{90°},\\& {{y}}_{{0}} - {vt}\sin \text{(} \psi_{{i}} - {90}\text{°)},\text{90° < } \psi_{{i}}\leqslant \text{180°},\\& {{y}}_{{0}} - {vt}\cos \text{(} \psi_{{i}} - {180}\text{°)},\text{180° < } \psi_{{i}}\leqslant \text{270°},\\& {{y}}_{{0}}+{vt} \sin \text{(} \psi_{{i}} - {270}\text{°)},\text{270° < } \psi_{{i}}\text{ < 360°}。\end{split}\right.\end{array} | (6) |
船舶i开始采取复航行动时所处的位置为:
\begin{array}{c}{{x}}^{{'}} = \left\{\begin{split}&{{x}}_{{0}} + {vt} \sin \psi_{{i}},\text{0°} \leqslant \psi_{{i}}\leqslant \text{90°},\\ &{{x}}_{{0}} + {vt} \sin\text{(} \psi_{{i}}{-90}\text{°)},\text{90° < } \psi_{{i}}\leqslant \text{180°},\\& {{x}}_{{0}} -\text{vt} \sin \text{(} \psi_{{i}}{-180}\text{°)},\text{180° < } \psi_{{i}}\leqslant \text{270°},\\& {{x}}_{{0}} - {vt} \sin \text{(} \psi_{{i}}{-270}\text{°)},\text{270° < } \psi_{{i}}\text{ < 360°}。\end{split}\right.\end{array} | (7) |
\begin{array}{c}{{y}}^{{'}} = \left\{\begin{split}& {{y}}_{\text{0}} + {vt} \cos \psi_{{i}},\text{0°}\leqslant \psi_{{i}}\leqslant \text{90°},\\& {{y}}_{{0}} - {vt}\sin \text{(} \psi_{{i}} - {90}\text{°)},\text{90° < } \psi_{{i}}\leqslant\text{180°},\\& {{y}}_{{0}} - {vt}\cos \text{(} \psi_{{i}} - {180}\text{°)},\text{180° < } \psi_{{i}}\leqslant \text{270°},\\& {{y}}_{{0}}+{vt} \sin \text{(} \psi_{{i}} - {270}\text{°)},\text{270° < } \psi_{{i}}\text{ < 360°}。\end{split}\right.\end{array} | (8) |
则船舶i开始采取复航行动时的位置偏移量
\begin{array}{c}{{\Delta }{W}}_{{i}} =\sqrt{{\text{(}{{x}}^{{'}} - {x}\text{)}}^{{2}} +{\text{(}{{y}}^{{'}} - {y}\text{)}}^{{2}}},\end{array} | (9) |
\begin{array}{c}{{\Delta } \psi}_{{i}} = \psi_{{i}} - \psi ,\end{array} | (10) |
\begin{array}{c}{{P}}_{{{E}}_{{i}}} = \zeta_{{1}} \cdot \dfrac{{1}}{{1+}{{\Delta }{W}}_{{i}}} + \zeta_{{2}} \cdot \cos \text{(}{{\Delta } \psi}_{{i}}\text{)}。\end{array} | (11) |
式中:
综上,船舶i的避碰收益函数
\begin{array}{c}{{P}}_{{i}} = \beta_{{1}}{{P}}_{{\Delta}{{CRI}}_{{i}}} + \beta_{{2}}{{P}}_{{{C}}_{{i}}} + \beta_{{3}}{{P}}_{{{E}}_{{i}}}\end{array}。 | (12) |
式中:
本文根据船舶避碰机理和多船协商避碰模型将多船避碰过程分为协商博弈、避让行动和复航3个阶段。对于船舶避碰,各阶段的行动时机将会影响避让行动的效率和安全性。CRI和动界[14]是船舶采取避碰行动时机的重要依据。因此,本文根据CRI和动界确定避碰各阶段的行动时机。
1)协商博弈时机:本文设定当一艘船舶与另一艘船舶的碰撞危险度达到Ⅲ级时,标志着协商博弈阶段的开始。此时,算法开始确定局中人集并求解出最优避让行动组合。
2)避让行动时机:本文设定当一艘船舶侵入另一艘船舶的动界时,视为执行避让行动的时机。此时,所有局中人依据协商博弈结果执行相应的避让行动。
3)复航时机:根据《规则》,本文规定当所有船舶均驶过让清他船后,开始执行复航行动。
2 算法求解 2.1 基于VO剪枝优化的博弈树生成算法在设计算法求解避让行动前,本文需先构建船舶避碰博弈树,用以存储博弈过程中的相关信息与数据。随着局中人数量的增加,算法所需的计算量将呈指数级增大。因此,本文基于船舶安全会遇领域[15]和VO算法设计了一种符合船舶避碰实际的剪枝优化方法,以降低多船避碰决策时的计算量,提高决策效率。
VO是一种用于动态环境下运动规划的简单而实用的方法,其根据机器人和障碍物的位置和运动信息创建碰撞锥形区,即速度障碍区,当机器人的速度矢量落入速度障碍区时会发生碰撞。对于船舶避碰,以船舶安全会遇领域d1,而非通用的圆形,来界定速度障碍区更为合理。船舶安全会遇领域是本船周围所保持的与他船间的最小安全会遇距离[15],并且本船拒绝他船侵入该领域。本文构建的速度障碍区模型如图2(a)所示。设d10和d1T分别为本船S0和目标船ST的船舶安全会遇领域边界,v0和vT分别为S0和ST的速度矢量,则ST对S0所构成的速度障碍区
![]() |
图 2 改进的博弈树生成算法 Fig. 2 Improved game tree algorithm |
\begin{array}{c}{{SVO}}_{{T}}^{{0}}\text{(}{{v}}_{{T}}\text{)} =\left\{{{v}}_{{0}}\left| { \lambda }\text{(}{{P}}_{{0}}\text{,}{{v}}_{{0}} -{{v}}_{{T}}\text{)} \cap {{{d}}_{{1}}}_{{T}} \ne {0}\right.\right\}。\end{array} | (13) |
通过制定位于速度障碍区外的避碰策略,船舶可以有效地避免与他船发生碰撞。对于多船避碰问题,船舶应选取不在其任一速度障碍区内的速度矢量作为避让行动。故本文在生成博弈树时,不对速度矢量落入速度障碍区内的节点进行扩展(即对博弈树进行剪枝优化),具体的船舶避碰博弈树生成算法见图2(b)。
2.2 求解最优避让行动组合逆推法是一种有效求解扩展式博弈的方法,它从终点决策节开始反向分析整个博弈局面。本文以两船避碰为例,利用逆推法分析求解最优避让行动组合。假定“Ship1-Ship2”是根据式(1)计算得到的协商博弈顺序,
1)逆推法首先考虑最后做出决策的船舶,即Ship2。如果Ship1在第一阶段选择行动
\begin{array}{c}{{\mathrm{max}}}{P_2}\text{(}{a_1}\text{,}{a_2}^{\text{*}}\text{)}\text{,}{a_1} \in {{A}}_{{1}}^{{0}}\text{,}{{a}_{2}}^{\text{*}} \in {A}_{2}^{{0}}。\end{array} | (14) |
2)逆推至Ship1的决策阶段,由于Ship1了解Ship2对其行动的反应,此时Ship1只需从
\begin{array}{c}{{\mathrm{max}}}{P_1}\text{(}a_1^{\text{*}} \text{,} a_2^{\text{*}} \text{)} \text{,}{a_1}^{\text{*}} \in {{A}}_{{1}}^{{0}}\text{,}{a}_{2}^{\text{*}} \in {A}_{2}^{{0}} 。\end{array} | (15) |
因此,
本节采用KT运动方程模拟船舶的运动,通过PID控制算法操控船舶舵角,并在三船会遇局面下进行仿真实验,以验证算法的有效性与优越性。在实验前,本文选用了如表2所示的船舶初始参数。
![]() |
表 2 船舶初始参数值 Tab.2 Initial parameter values of ships |
根据计算得到船舶间的初始碰撞危险度如表3所示。表中,“Ship1 to Ship0”表示Ship1对Ship0所构成的碰撞危险度。
![]() |
表 3 初始碰撞危险度值 Tab.3 Initial values of CRI |
在该局面下,由于船舶间的初始碰撞危险度均达到Ⅲ级,Ship0、Ship1和Ship2需要进入协商博弈阶段,具体流程与计算结果如下:
1)确定局中人集。由于Ship0、Ship1和Ship2的初始碰撞危险度均达到Ⅲ级,因此确定Ship0、Ship1和Ship2为局中人。
2)计算协商博弈优先级。根据式(1),计算得该局面下三船的协商博弈顺序为“Ship0-Ship1-Ship2”。
3)确定避让行动集:在三船会遇局面下,初始避让行动组合总数为133=
4)建立博弈树。利用本文所改进的博弈树生成算法,剪枝了1944组避让行动组合,生成了具有253组有效避让行动组合的博弈树。由此可见,使用本文所提的剪枝优化方法后,降低了88.48%的博弈树生成算法的计算量,提高了避碰算法的决策效率。
5)求解最优避让行动组合。利用逆推法求博弈的解,具体的分析求解过程如图3所示。
![]() |
图 3 三船会遇局面的博弈树及其逆推分析过程 Fig. 3 The game tree of the encounter scenario and its backward analysis process |
首先考虑Ship2,如图3(a)所示。如果Ship0在第一阶段选择行动
其次考虑Ship1,如图3(b)所示。Ship1已知Ship2对其决策的反应为
最后考虑Ship0,如图3(c)所示。Ship0已知Ship1和Ship2对其决策的反应分别为
![]() |
表 4 避让方案及其收益值 Tab.4 Avoidance actions and the value of their payoff |
该会遇局面下的避让仿真效果如图4所示。在初始会遇场景中,Ship0、Ship1和Ship2的位置和状态如表2以及图4(a)所示。在410 s时,Ship0、Ship1和Ship2分别开始执行向右转向30°、30°和25°的避让行动,如图4(b)所示。在1062 s时,Ship0、Ship1和Ship2分别开始执行向左转向30°、30°和25°的复航行动,如图4(c)所示。该会遇场景下完整的避让过程如图4(d)所示。此外,根据该仿真实验结果,船舶的可用协商时间为409 s,这一时长足以确保船舶在采取避让行动前进行协商与确定最优避让行动组合。协商博弈过程约耗时0.2382 s,该耗时包括速度障碍区、CRI和收益值的计算以及最优避让行动组合的求解。这表明,本文所提算法在制定避碰策略时所需时间较短,并展现出了良好的实时性与实用性。
![]() |
图 4 仿真展示 Fig. 4 Simulation demonstration |
由于《规则》未对多船会遇局面做出明确的避让规定,本文在分析避让行动的合规性时采用两两分析的方式,则该局面下的船舶避让行动的合规性分析如下:Ship0与Ship1处于交叉局面,其中Ship0为让路船,且应采取右转避让行动;Ship0与Ship2处于对遇局面,Ship0和Ship2均负有让路”责任,且都应采取右转避让行动;Ship1与Ship2处于对遇局面,其中Ship1为让路船,且应采取右转避让行动。因此,在该会遇局面下,Ship0、Ship1和Ship2均负有不同程度的“让路”责任,且都应采取右转避让行动。仿真实验结果显示,Ship0、Ship1和Ship2均执行了右转避让行动,这符合《规则》的相关要求。
由图5(a)可知:船舶采取避让行动后,船舶间的碰撞危险度均显著降低,并在复航前降至0,即无碰撞危险状态。在复航操作过程中,由于船舶航向的暂时不稳定,Ship1对Ship0所构成的碰撞危险度小幅上升至
![]() |
图 5 仿真实验参数曲线 Fig. 5 Simulation of experimental parameter curves |
改仿真实验不仅验证了所提的多船协商避碰算法在多船会遇场景中的实用性,同时也展现了本文所设计的基于船舶安全会遇领域和速度障碍法的剪枝优化方法能够显著降低博弈树生成算法的计算量以及逆推法的分析求解量,提高避碰算法的决策效率,实现实时避碰决策。
4 结 语多船避碰是一个既存在竞争也存在合作的复杂博弈过程。在避碰决策过程中,船舶需充分考虑避让行动的安全性、合规性以及经济性3个方面。因此,本文针对多船避碰问题进行深入研究,提出一种基于扩展式博弈的多船协商避碰决策算法,该算法在考虑《规则》的基础上,能够为多船会遇局面下的船舶提供既安全又经济的避碰方案。此外,本文还基于船舶安全会遇领域和速度障碍法优化了博弈树的生成算法,以有效降低博弈树的生成复杂度,提高算法的决策效率,增强避碰决策的实时性。通过典型的三船避碰仿真实验,本文验证了所提算法的有效性与优越性。
[1] |
中华人民共和国海事局. 事故调查报告[EB/OL]. https://www.msa.gov.cn/page/outter/shiguyufang.jsp, 2023-12-1/2024-3-1.
|
[2] |
LISOWSKI J. Multi-step matrix game with the risk of ship collision[J]. Risk Analysis IV: Simulation and Hazard Mitigation, 2004: 669-680.
|
[3] |
LISOWSKI J. The dynamic game models of safe navigation[J]. International Journal on Marine Navigation and Safety of Sea Transportation, 2007(1): 11-18. |
[4] |
SZLAPCZYNSKI R. Evolutionary sets of safe ship trajectories: a new approach to collision avoidance[J]. Journal of Navigation, 2011, 64(1): 169-181. DOI:10.1017/S0373463310000238 |
[5] |
SZLAPCZYNSKI R. Evolutionary approach to ship's trajectory planning within traffic separation schemes[J]. Polish Maritime Research, 2012, 19(1): 11-20. |
[6] |
SZTAPCZYNSKI R. Evolutionary sets of safe ship trajectories with speed reduction maneuvers within traffic separation schemes[J]. Journal of Navigation, 2013, 66(1): 65-81. DOI:10.1017/S0373463312000422 |
[7] |
SZLAPCZYNSKI R. Evolutionary planning of safe ship tracks in restricted visibility[J]. Journal of Navigation, 2015, 68(1): 39-51. DOI:10.1017/S0373463314000587 |
[8] |
涂伊婧. 动态博弈框架下的多船避碰算法研究[D]. 武汉: 武汉理工大学, 2022.
|
[9] |
侯建军, 许北平, 杨宝璋. 矩阵对策在船舶避碰中的应用研究[C]//船舶避让与安全操作. 大连: 大连海事大学航海学院, 2007.
|
[10] |
王刚. 船舶扩展式博弈避碰决策系统建立与仿真研究[D]. 大连: 大连海事大学, 2014.
|
[11] |
孔祥生, 卜仁祥, 刘勇. 基于扩展博弈理论的船舶自动避碰决策系统[J]. 计算机仿真, 2019, 36(5): 154. DOI:10.3969/j.issn.1006-9348.2019.05.002 |
[12] |
欧阳旭东, 支云翔, 王腾飞, 等. 基于扩展式动态博弈的多船避碰决策模型[J]. 中国安全科学学报, 2020, 30(1): 128−135.
|
[13] |
周江华, 吴春杰. 船舶碰撞危险度模型的构建[J]. 宁波大学学报(理工版), 2004(1): 61-65. |
[14] |
DAVIS P V, DOVE M J, STOCKEL C T. A computer simulation of marine traffic using domains and arenas[J]. The Journal of Navigation, 1980, 33(2): 215-222. DOI:10.1017/S0373463300035220 |
[15] |
郑中义, 吴兆麟. 船舶避碰决策[M]. 大连: 大连海事大学出版社, 2000.
|