一种船舶路径优化方法、电子设备及存储介质转让专利

申请号 : CN202211688245.9

文献号 : CN115657693B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张琼林威张玉明于竞宇顾永根王静峰邱征浦玉学李振轩

申请人 : 安徽省交通航务工程有限公司合肥工业大学

摘要 :

本发明涉及船舶路径优化技术领域,具体是一种船舶路径优化方法、电子设备及存储介质,包括以下步骤:构建船舶航行时所处的航行环境,在航行环境中设置船舶航行的航行条件;建立船舶在该船舶航线中以航行时间为变量的航行时间优化目标函数,并同时建立以航行风险为变量的船舶航线风险评估函数;引入麻雀算法,计算麻雀的飞行距离以及对应的适应度值,并形成麻雀总代价评估函数,求出麻雀总代价评估函数的最小值,此时最小值对应的麻雀飞行路径即为船舶最优航行路径;本发明考虑多功能抢险救援船舶的动态特性和气流引起的干扰效应,考虑气流与非完整约束效应,能够有效的对障碍物、暗礁进行精确定位,使得船舶的路径规划更加高效智能。

权利要求 :

1.一种船舶路径优化方法,其特征在于,包括以下步骤:S1:构建船舶航行时所处的航行环境,在航行环境中设置船舶航行的航行条件,并在航行环境中增设对航行中的船舶构成干扰风险的风险区域;

S2:在船舶的航行环境中规划出船舶的船舶航线,建立船舶在该船舶航线中以航行时间为变量的航行时间优化目标函数,并同时建立以航行风险为变量的船舶航线风险评估函数;

S3:引入麻雀算法,计算麻雀的飞行距离以及对应的适应度值;

S4:将麻雀的飞行距离带入航行时间优化目标函数进行计算,将麻雀对应的适应度值带入船舶航线风险评估函数进行计算,并形成麻雀总代价评估函数,求出麻雀总代价评估函数的最小值,此时最小值对应的麻雀飞行路径即为船舶最优航行路径。

2.根据权利要求1所述的一种船舶路径优化方法,其特征在于,步骤S1具体如下:S11、将船舶航行的内河水域设定为二维空间,并在该二维空间内建立二维坐标系,进而构成船舶航行时的航行环境;

S12、船舶的航行条件包括内河水域中的障碍物、船舶航行的起始点和船舶航行的目标点;根据内河水域中障碍物的大小、数量和位置,在该二维坐标系中设定障碍物对应的坐标;并同时为船舶航行的起始点和目标点赋予对应的坐标;

S13、在该二维坐标系中对长度为X、宽度为Y的内河流域进行分割,将其分割为g×r个边长为u的正方形区域,则有:其中,X为内河流域在二维坐标系中的长度;Y为内河流域在二维坐标系中的宽度;u为正方形区域的边长;r为正方形区域在内河流域长度方向上的个数;g为正方形区域在内河流域宽度方向上的个数;

S14、将有障碍物的区域设为障碍域,没有障碍物的区域设为可行域,将可行域设为存在气流影响的风险区域和没有气流影响的可自由航行的安全区域。

3.根据权利要求2所述的一种船舶路径优化方法,其特征在于,步骤S2具体如下:S21、在船舶的航行环境中根据障碍域、安全区域和风险区域的分布,规划出船舶的船舶航线;

S22、以船舶的航行时间为变量建立船舶在该船舶航线上的航行时间优化目标函数JTC,其计算公式如下:其中,TC,total为船舶沿船舶航

线航行的总航行时长;

TC,alarm为船舶警报时间,即定义为船舶在该船舶航线风险区域中航行的时间;

S23、以船舶在风险区域中的航行风险为变量建立船舶在该船舶航线上的船舶航线风险评估函数,其计算公式如下:其中:αC+βC=1,

αC表征波高对船舶航行风险影响程度的系数;

βC表征风速对船舶航行风险影响程度的系数;

rC,risk为该船舶航线中的风险值;

Q为该船舶航线中的总航路段数;

HC,i,wave为该船舶航线中的第i个航路段的波高;

HC,max,wave为该船舶航线的总航路段中的最大波高;

VC,i,wind为该船舶航线中的第i个航路段的风速;

VC,max,wind为该船舶航线的总航路段中的最大风速。

4.根据权利要求3所述的一种船舶路径优化方法,其特征在于,步骤S3中的麻雀算法的建立过程具体如下:S31、构建含有预定麻雀数量的麻雀种群,按照预定比例将麻雀种群分为发现者、追随者和警戒者,并让发现者、追随者和警戒者在船舶的航行环境中寻找食物,即将航行环境转化为麻雀对应的飞行环境;

建立由n个发现者a、h个追随者b和m个警戒者c组成的种群矩阵X:其中:X中的每一行代表麻雀种群中对应的麻雀个体在一次飞行中的所有位置,表示一条飞行路径,与船舶航线彼此对应,且其中的每一个位置对应一个航段;d表示待优化问题变量的维数,即麻雀在该次飞行中的总飞行航线段数;

a表示发现者,n表示发现者个数; 表示第n个发现者在第1维的位置,即该发现者在该次飞行中的起始位置; 表示第n个发现者在第d维的位置,即该发现者在该次飞行中的终点位置;

b表示追随者,h表示追随者个数; 表示第h个追随者在第1维的位置,即该追随者在该次飞行中的起始位置; 表示第h个追随者在第d维的位置,即该追随者在该次飞行中的终点位置;

c表示警戒者,m表示警戒者个数; 表示第m个警戒者在第1维的位置,即该警戒者在该次飞行中的起始位置; 表示第m个警戒者在第d维的位置,即该警戒者在该次飞行中的终点位置;

S32、根据麻雀在飞行过程中的位置变化,计算出麻雀对应的飞行距离;

S33、根据麻雀的飞行距离建立麻雀的适应度值矩阵F,表示如下:其中:f[]为麻雀适应度值的计算函数,F中每一行的f值表示为麻雀种群中对应个体的适应度值。

5.根据权利要求4所述的一种船舶路径优化方法,其特征在于,步骤S4具体如下:S41、使用发现者位置计算公式更新发现者的位置,得到发现者的当前位置;

S42、使用追随者位置计算公式更新追随者的位置,得到追随者的当前位置;

S43、使用警戒者位置计算公式更新警戒者的位置,得到警戒者的当前位置;

S44、通过终止条件进行判断,即分别将发现者、追随者和警戒者更新后的位置与各自对应的初始位置进行对比;若当前位置与初始位置之间的路径短于更新前的位置与初始位置之间的路径,则将当前位置记为最终位置;反之将更新前的位置记为最终位置;并计算出麻雀对应的飞行距离和适应度值;

S45、将麻雀的飞行距离转化为飞行时间,并将飞行时间带入船舶的航行时间优化目标函数进行计算,并得到麻雀的飞行时间优化目标函数;将麻雀的适应度值转化为航行风险,航行风险为表征麻雀的飞行高度对飞行风险影响程度的系数αM和表征风速对飞行风险影响程度的系数βM,将两个系数带入船舶航线风险评估函数进行计算,并得到麻雀航线风险评估函数;

S46、将麻雀的飞行时间优化目标函数和麻雀航线风险评估函数组合形成麻雀总代价评估函数,并计算出此时对应的代价值;

S47、重复步骤S41~S46进行多次迭代,直至分别找出当前位置到初始位置距离最近的发现者、追随者或者警戒者,并且计算出其对应的适应度值,进而得出使麻雀总代价评估函数取最小值的麻雀,此时该麻雀对应的飞行航线即为船舶最优航行路径。

6.根据权利要求5所述的一种船舶路径优化方法,其特征在于,发现者的位置计算公式如下:其中,s代表当前迭代数,s∈(1,

itermax),itermax是最大迭代代数;

表示在第s次迭代中第y个发现者在第j维占据的位置;

表示在第s+1次迭代中第y个发现者在第j维占据的位置;

y∈(1,n),j∈(1,d);

δ∈(0,1)是一个随机数;

R2代表警戒值;

ST表示安全阈值;

D是一个正态分布的随机数;

L是一个一行d维的全一矩阵;

追随者的位置计算公式如下:

其中:

表示在第s+1次迭代中第z个追随者在第j维占据的位置,z∈(1,h);

表示在第s次迭代中第z个追随者在第j维占据的位置;

表示在第s次迭代时所有追随者中在第j维占据的最佳位置;

表示在第s次迭代时所有追随者中在第j维占据的最差位置;

+

A 是一个各元素为1或者‑1的一行d维矩阵;

警戒者的位置计算公式如下:

其中:

表示在第s+1次迭代中第k个警戒者在第j维占据的位置,k∈(1,m);

 表示在第s次迭代中第k个警戒者在第j维占据的位置;

表示在第s次迭代时所有警戒者中在第j维占据的最佳位置;

表示在第s次迭代时所有警戒者中在第j维占据的最差位置;

表示在第s次迭代中第k个警戒者在第j维时的适应度值;

表示在第s次迭代时所有警戒者中在第j维的最佳适应度值;

表示在第s次迭代时所有警戒者中在第j维的最差适应度值;

μ是步长控制参数;

K∈(0,1)是一个随机数;

ε为常数。

7.根据权利要求6所述的一种船舶路径优化方法,其特征在于,步骤S45具体如下:S451、根据麻雀的终点位置和起始位置之间的距离,并结合麻雀的飞行速度计算麻雀在该次飞行中的飞行时间;

S452、将飞行时间带入船舶的航行时间优化目标函数,进而得到麻雀的飞行时间优化目标函数JTM:其中,TM,total为麻雀沿飞行

航线飞行的总飞行时长;

TM,alarm为麻雀警报时间,即为麻雀在该飞行航线的风险区域中飞行的时间;

S453、麻雀在该次飞行的过程中适应度值会受到飞行航线上风速以及麻雀飞行高度的影响,于是将对应的风速和飞行高度带入船舶航线风险评估函数,计算得到麻雀航线风险评估函数rM,risk:其中:αM+βM=1,αM表征麻

雀的飞行高度对飞行风险影响程度的系数;

βM表征风速对飞行风险影响程度的系数;

rM,risk为麻雀航线风险评估函数;

d为麻雀在该次飞行航线中的总飞行航线段数;

HM,j,wave为麻雀在该飞行航线中的第j个飞行航线段的飞行高度;

HM,max,wave为麻雀在该飞行航线的总飞行航线段中最大的飞行高度;

VM,j,wind为麻雀在该飞行航线中的第j个飞行航线段的风速;

VM,max,wind为麻雀在该飞行航线的总飞行航线段中最大的风速;

麻雀总代价评估函数的计算公式如下:

其中,JM,cost为麻雀总代价评估函数;w1为麻雀的飞行时间优化目标函数JTM的权重参数,w2为麻雀航线风险评估函数rM,risk的权重参数;

作为权重系数需满足如下条件:w1≥0,w2≥0,w1+w2=1。

8.根据权利要求7所述的一种船舶路径优化方法,其特征在于,为防止在迭代后期的麻雀的位置更新陷入局部最优,对麻雀的位置采取自适应t分布变异策略:其中:t(M)是以迭代次数S为自由度的t分布;

为变异后的第y个发现者在第j维占据的位置; 为第y个发现者在第j维占据的位置;

为变异后的第z个追随者在第j维占据的位置, 第z个追随者在第j维占据的位置;

为变异后的第k个警戒者在第j维占据的位置, 第k个警戒者在第j维占据的位置。

9.一种电子设备,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器依次连接,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1‑8任一项所述的方法。

10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1‑8任一项所述的方法。

说明书 :

一种船舶路径优化方法、电子设备及存储介质

技术领域

[0001] 本发明涉及船舶路径优化技术领域,具体是一种船舶路径优化方法、电子设备及存储介质。

背景技术

[0002] 抢险救援船舶的运动受到气流和极端天气下各种环境干扰因素的影响,在抢险救灾过程中,这种影响尤为严重,尤其是气流的影响更加显著,会严重影响船舶的运行状态,降低救援的速度。
[0003] 此外,大多数船舶都是欠驱动系统,其运动的自由度要高于其驱动模式的数量;未驱动的运动会受到船舶固有运动属性的约束,例于最小曲率或最大转向率的限制,这些都会对船体的运动产生负面的影响,降低船舶的移动速度。全局路径规划和动态规划是目前通用解决方案,但在大维度的系统中会占用过高的计算成本,虽然通过减小系统环境的状态尺寸可以降低计算的复杂度,但是通常会产生不可行路径,而未受到驱动的船舶无法跟随这些路径。
[0004] 基于上述技术问题,针对性的开展基于气流运动影响、非完整运动约束的船舶的路径优化方法研究具有实际需求的必要性。

发明内容

[0005] 为了避免和克服现有技术中存在的技术问题,本发明提供了一种船舶路径优化方法,本发明考虑多功能抢险救援船舶的动态特性和气流引起的干扰效应,考虑气流与非完整约束效应,能够有效的对障碍物、暗礁进行精确定位,使得船舶的路径规划更加高效智能。
[0006] 为实现上述目的,本发明提供如下技术方案:
[0007] 一种船舶路径优化方法,包括以下步骤:
[0008] S1:构建船舶航行时所处的航行环境,在航行环境中设置船舶航行的航行条件,并在航行环境中增设对航行中的船舶构成干扰风险的风险区域;
[0009] S2:在船舶的航行环境中规划出船舶的船舶航线,建立船舶在该船舶航线中以航行时间为变量的航行时间优化目标函数,并同时建立以航行风险为变量的船舶航线风险评估函数;
[0010] S3:引入麻雀算法,计算麻雀的飞行距离以及对应的适应度值;
[0011] S4:将麻雀的飞行距离带入航行时间优化目标函数进行计算,将麻雀对应的适应度值带入船舶航线风险评估函数进行计算,并形成麻雀总代价评估函数,求出麻雀总代价评估函数的最小值,此时最小值对应的麻雀飞行路径即为船舶最优航行路径。
[0012] 作为本发明再进一步的方案:步骤S1具体如下:
[0013] S11、将船舶航行的内河水域设定为二维空间,并在该二维空间内建立二维坐标系,进而构成船舶航行时的航行环境;
[0014] S12、船舶的航行条件包括内河水域中的障碍物、船舶航行的起始点和船舶航行的目标点;根据内河水域中障碍物的大小、数量和位置,在该二维坐标系中设定障碍物对应的坐标;并同时为船舶航行的起始点和目标点赋予对应的坐标;
[0015] S13、在该二维坐标系中对长度为X、宽度为Y的内河流域进行分割,将其分割为g×r个边长为u的正方形区域,则有:
[0016]
[0017] 其中,X为内河流域在二维坐标系中的长度;Y为内河流域在二维坐标系中的宽度;u为正方形区域的边长;r为正方形区域在内河流域长度方向上的个数;g为正方形区域在内河流域宽度方向上的个数;
[0018] S14、将有障碍物的区域设为障碍域,没有障碍物的区域设为可行域,将可行域设为存在气流影响的风险区域和没有气流影响的可自由航行的安全区域。
[0019] 作为本发明再进一步的方案:步骤S2具体如下:
[0020] S21、在船舶的航行环境中根据障碍域、安全区域和风险区域的分布,规划出船舶的船舶航线;
[0021] S22、以船舶的航行时间为变量建立船舶在该船舶航线上的航行时间优化目标函数JTC,其计算公式如下:
[0022]
[0023] 其中,TC,total为船舶沿船舶航线航行的总航行时长;
[0024] TC,alarm为船舶警报时间,即定义为船舶在该船舶航线风险区域中航行的时间;
[0025] S23、以船舶在风险区域中的航行风险为变量建立船舶在该船舶航线上的船舶航线风险评估函数,其计算公式如下:
[0026]
[0027] 其中:αC+βC=1,
[0028] αC表征波高对船舶航行风险影响程度的系数;
[0029] βC表征风速对船舶航行风险影响程度的系数;
[0030] rC,risk为该船舶航线中的风险值;
[0031] Q为该船舶航线中的总航路段数;
[0032] HC,i,wave为该船舶航线中的第i个航路段的波高;
[0033] HC,max,wave为该船舶航线的总航路段中的最大波高;
[0034] VC,i,wind为该船舶航线中的第i个航路段的风速;
[0035] VC,max,wind为该船舶航线的总航路段中的最大风速。
[0036] 作为本发明再进一步的方案:步骤S3中的麻雀算法的建立过程具体如下:
[0037] S31、构建含有预定麻雀数量的麻雀种群,按照预定比例将麻雀种群分为发现者、追随者和警戒者,并让发现者、追随者和警戒者在船舶的航行环境中寻找食物,即将航行环境转化为麻雀对应的飞行环境;
[0038] 建立由n个发现者a、h个追随者b和m个警戒者c组成的种群矩阵X:
[0039]
[0040] 其中:X中的每一行代表麻雀种群中对应的麻雀个体在一次飞行中的所有位置,表示一条飞行路径,与船舶航线彼此对应,且其中的每一个位置对应一个航段;d表示待优化问题变量的维数,即麻雀在该次飞行中的总飞行航线段数;
[0041] a表示发现者,n表示发现者个数; 表示第n个发现者在第1维的位置,即该发现者在该次飞行中的起始位置; 表示第n个发现者在第d维的位置,即该发现者在该次飞行中的终点位置;
[0042] b表示追随者,h表示追随者个数; 表示第h个追随者在第1维的位置,即该追随者在该次飞行中的起始位置; 表示第h个追随者在第d维的位置,即该追随者在该次飞行中的终点位置;
[0043] c表示警戒者,m表示警戒者个数; 表示第m个警戒者在第1维的位置,即该警戒者在该次飞行中的起始位置; 表示第m个警戒者在第d维的位置,即该警戒者在该次飞行中的终点位置;
[0044] S32、根据麻雀在飞行过程中的位置变化,计算出麻雀对应的飞行距离;
[0045] S33、根据麻雀的飞行距离建立麻雀的适应度值矩阵F,表示如下:
[0046]
[0047] 其中:f[]为麻雀适应度值的计算函数,F中每一行的f值表示为麻雀种群中对应个体的适应度值。
[0048] 作为本发明再进一步的方案:步骤S4具体如下:
[0049] S41、使用发现者位置计算公式更新发现者的位置,得到发现者的当前位置;
[0050] S42、使用追随者位置计算公式更新追随者的位置,得到追随者的当前位置;
[0051] S43、使用警戒者位置计算公式更新警戒者的位置,得到警戒者的当前位置;
[0052] S44、通过终止条件进行判断,即分别将发现者、追随者和警戒者更新后的位置与各自对应的初始位置进行对比;若当前位置与初始位置之间的路径短于更新前的位置与初始位置之间的路径,则将当前位置记为最终位置;反之将更新前的位置记为最终位置;并计算出麻雀对应的飞行距离和适应度值;
[0053] S45、将麻雀的飞行距离转化为飞行时间,并将飞行时间带入船舶的航行时间优化目标函数进行计算,并得到麻雀的飞行时间优化目标函数;将麻雀的适应度值转化为航行风险,航行风险为表征麻雀的飞行高度对飞行风险影响程度的系数αM和表征风速对飞行风险影响程度的系数βM,将两个系数带入船舶航线风险评估函数进行计算,并得到麻雀航线风险评估函数;
[0054] S46、将麻雀的飞行时间优化目标函数和麻雀航线风险评估函数组合形成麻雀总代价评估函数,并计算出此时对应的代价值;
[0055] S47、重复步骤S41~S46进行多次迭代,直至分别找出当前位置到初始位置距离最近的发现者、追随者或者警戒者,并且计算出其对应的适应度值,进而得出使麻雀总代价评估函数取最小值的麻雀,此时该麻雀对应的飞行航线即为船舶最优航行路径。
[0056] 作为本发明再进一步的方案:发现者的位置计算公式如下:
[0057]
[0058] 其中,s代表当前迭代数,s∈(1,itermax),itermax是最大迭代代数;
[0059] 表示在第s次迭代中第y个发现者在第j维占据的位置;
[0060] 表示在第s+1次迭代中第y个发现者在第j维占据的位置;
[0061] y∈(1,n),j∈(1,d);
[0062] δ∈(0,1)是一个随机数;
[0063] R2代表警戒值;
[0064] ST表示安全阈值;
[0065] D是一个正态分布的随机数;
[0066] L是一个一行d维的全一矩阵;
[0067] 追随者的位置计算公式如下:
[0068]
[0069] 其中:
[0070] 表示在第s+1次迭代中第z个追随者在第j维占据的位置,z∈(1,h);
[0071] 表示在第s次迭代中第z个追随者在第j维占据的位置;
[0072] 表示在第s次迭代时所有追随者中在第j维占据的最佳位置;
[0073] 表示在第s次迭代时所有追随者中在第j维占据的最差位置;
[0074] 是一个各元素为1或者‑1的一行d维矩阵;
[0075] 警戒者的位置计算公式如下:
[0076]
[0077] 其中:
[0078] 表示在第s+1次迭代中第k个警戒者在第j维占据的位置,k∈(1,m); 表示在第s次迭代中第k个警戒者在第j维占据的位置;
[0079] 表示在第s次迭代时所有警戒者中在第j维占据的最佳位置;
[0080] 表示在第s次迭代时所有警戒者中在第j维占据的最差位置;
[0081] 表示在第s次迭代中第k个警戒者在第j维时的适应度值;
[0082] 表示在第s次迭代时所有警戒者中在第j维的最佳适应度值;
[0083] 表示在第s次迭代时所有警戒者中在第j维的最差适应度值;
[0084] μ是步长控制参数;
[0085] K∈(0,1)是一个随机数;
[0086] ε为常数。
[0087] 作为本发明再进一步的方案:步骤S45具体如下:
[0088] S451、根据麻雀的终点位置和起始位置之间的距离,并结合麻雀的飞行速度计算麻雀在该次飞行中的飞行时间;
[0089] S452、将飞行时间带入船舶的航行时间优化目标函数,进而得到麻雀的飞行时间优化目标函数JTM:
[0090]
[0091] 其中,TM,total为麻雀沿飞行航线飞行的总飞行时长;
[0092] TM,alarm为麻雀警报时间,即为麻雀在该飞行航线的风险区域中飞行的时间;
[0093] S453、麻雀在该次飞行的过程中适应度值会受到飞行航线上风速以及麻雀飞行高度的影响,于是将对应的风速和飞行高度带入船舶航线风险评估函数,计算得到麻雀航线风险评估函数rM,risk:
[0094]
[0095] 其中:αM+βM=1,αM表征麻雀的飞行高度对飞行风险影响程度的系数;
[0096] βM表征风速对飞行风险影响程度的系数;
[0097] rM,risk为麻雀航线风险评估函数;
[0098] d为麻雀在该次飞行航线中的总飞行航线段数;
[0099] HM,j,wave为麻雀在该飞行航线中的第j个飞行航线段的飞行高度;
[0100] HM,max,wave为麻雀在该飞行航线的总飞行航线段中最大的飞行高度;
[0101] VM,j,wind为麻雀在该飞行航线中的第j个飞行航线段的风速;
[0102] VM,max,wind为麻雀在该飞行航线的总飞行航线段中最大的风速;
[0103] 麻雀总代价评估函数的计算公式如下:
[0104]
[0105] 其中,JM,cost为麻雀总代价评估函数;w1为麻雀的飞行时间优化目标函数JTM的权重参数,w2为麻雀航线风险评估函数rM,risk的权重参数;
[0106] 作为权重系数需满足如下条件:w1≥0,w2≥0,w1+w2=1。
[0107] 作为本发明再进一步的方案:为防止在迭代后期的麻雀的位置更新陷入局部最优,对麻雀的位置采取自适应t分布变异策略:
[0108]
[0109] 其中:t(M)是以迭代次数S为自由度的t分布;
[0110] 为变异后的第y个发现者在第j维占据的位置; 为第y个发现者在第j维占据的位置;
[0111] 为变异后的第z个追随者在第j维占据的位置, 第z个追随者在第j维占据的位置;
[0112] 为变异后的第k个警戒者在第j维占据的位置, 第k个警戒者在第j维占据的位置。
[0113] 一种电子设备,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器依次连接,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述的方法。
[0114] 一种存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述的方法。
[0115] 与现有技术相比,本发明的有益效果是:
[0116] 1、本发明通过考虑多功能抢险救援船舶的动态特性和气流引起的干扰效应,使用具有运动学非完整约束的运动模型来模拟船舶运动,基于麻雀算法学习算法用于抢险救援船舶的路径规划。该算法有效的改进了传统船舶路径优化算法。本发明计算精度提高较大,算法的实际适用性更高,能够有效的对障碍物、暗礁进行精确定位,考虑气流与非完整约束效应,使得船舶的路径规划更加高效智能。
[0117] 2、本发明算法更加贴合实际船舶航行工况,效率高,可靠性强,满足极端条件下船舶路径优化的需求。
[0118] 3、本发明基于内河气象环境数据将多目标决策、智能算法和地理信息技术将结合,能够提供一种确定抢险救援船舶进行任务时的船舶最优航行路径。

附图说明

[0119] 图1为本发明的流程图。
[0120] 图2为本发明的改进麻雀算法流程图。
[0121] 图3为本发明的船舶运动环境栅格图。
[0122] 图4为本发明的船舶运动航向。
[0123] 图5为本发明在场景1下的船舶最短路径示意图。
[0124] 图6为本发明在场景2下的船舶最短路径示意图。
[0125] 图7为本发明在场景1下适应度变化曲线示意图。
[0126] 图8为本发明在场景2下适应度变化曲线示意图。
[0127] 图9为本发明的电子设备框架示意图。
[0128] 图中:
[0129] 10、电子设备;11、处理器;12、存储器;
[0130] 13、输入装置;14、输出装置。实施方式
[0131] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0132] 本发明的实施方式涉及一种基于麻雀算法的抢险救援船舶路径规划方法,在详细介绍本发明实例之前,先介绍一下本发明实施方式中的核心算法,即麻雀算法(SSA)。算法实现具体如下:
[0133] 步骤1:初始化麻雀种群;
[0134] 步骤2:计算麻雀的适应度值,并对适应度值进行排序,找到当前最佳适应度个体和最差适应度个体;
[0135] 步骤3:使用式(3)更新适应度靠前麻雀(发现者)位置,并得到当前更新后的位置;
[0136] 步骤4:使用式(4)更新适应度靠后麻雀(追随者)位置,并得到当前更新后的位置。
[0137] 步骤5:使用式(5)随机更新部分麻雀(警戒者)位置,并得到当前更新后的位置。
[0138] 步骤6:分别将发现者、追随者和警戒者更新后的位置与各自对应的初始位置进行对比,若当前位置与初始位置之间的路径短于更新前的位置,则将当前位置记为最终位置,反之将更新前的位置记为最终位置;
[0139] 步骤7:重复进行步骤3~6,直至分别找出当前位置距离初始位置距离最近的发现者、追随者或者警戒者,并且计算出其适应度。
[0140] 在模拟实验中,麻雀算法需要使用虚拟麻雀进行食物的寻找,建立由n个发现者a、h个追随者b和m个警戒者c组成的麻雀种群矩阵X:
[0141] (1)
[0142] 其中:X中的每一行代表麻雀种群中对应的麻雀个体在一次飞行中的所有位置,表示一条飞行路径,与船舶航线彼此对应,且其中的每一个位置对应一个航段;d表示待优化问题变量的维数,即麻雀在该次飞行中的总飞行航线段数;
[0143] a表示发现者,n表示发现者个数; 表示第n个发现者在第1维的位置,即该发现者在该次飞行中的起始位置; 表示第n个发现者在第d维的位置,即该发现者在该次飞行中的终点位置;
[0144] b表示追随者,h表示追随者个数; 表示第h个追随者在第1维的位置,即该追随者在该次飞行中的起始位置; 表示第h个追随者在第d维的位置,即该追随者在该次飞行中的终点位置;
[0145] c表示警戒者,m表示警戒者个数; 表示第m个警戒者在第1维的位置,即该警戒者在该次飞行中的起始位置; 表示第m个警戒者在第d维的位置,即该警戒者在该次飞行中的终点位置;
[0146] 根据麻雀在飞行过程中的位置变化,计算出麻雀对应的飞行距离,通过麻雀的飞行距离建立麻雀的适应度值矩阵F,表示如下:
[0147] (2)
[0148] 其中:f[]为麻雀适应度值的计算函数,F中每一行的f值表示为麻雀种群中对应个体的适应度值。在麻雀算法中,具有较好适应度值的发现者在搜索过程中会优先获取食物也就是飞行航线的终点位置。此外,因为发现者负责为整个麻雀种群寻找食物并为所有追随者提供觅食的方向。因此,发现者可以获得比追随者更大的觅食搜索范围。在每次迭代的过程中,发现者的位置可以通过如下位置计算公式(3)进行更新:
[0149] (3)
[0150] 其中,s代表当前迭代数,s∈(1,itermax),itermax是最大迭代代数;
[0151] 表示在第s次迭代中第y个发现者在第j维占据的位置;
[0152] 表示在第s+1次迭代中第y个发现者在第j维占据的位置;
[0153] y∈(1,n),j∈(1,d);
[0154] δ∈(0,1)是一个随机数;
[0155] R2代表警戒值;
[0156] ST表示安全阈值;
[0157] D是一个正态分布的随机数;
[0158] L是一个一行d维的全一矩阵;
[0159] 进一步,在步骤4中,一些追随者会时刻监视着发现者,如果他们观察到发现者已经找到了更好的食物,他们会立即与发现者争夺食物。一旦他们赢了便可获得发现者的食物。追随者的位置可以通过如下位置计算公式(4)进行更新:
[0160] (4)
[0161] 其中:
[0162] 表示在第s+1次迭代中第z个追随者在第j维占据的位置,z∈(1,h);
[0163] 表示在第s次迭代中第z个追随者在第j维占据的位置;
[0164] 表示在第s次迭代时所有追随者中在第j维占据的最佳位置;
[0165] 表示在第s次迭代时所有追随者中在第j维占据的最差位置;
[0166] 是一个各元素为1或者‑1的一行d维矩阵;
[0167] 在本实施方式中,假设能够意识到危险的麻雀(警戒者)占总数量的10%到20%。这些麻雀的初始位置是在种群中随机产生的。警戒者的位置可以通过如下位置计算公式(5)进行更新:
[0168] (5)
[0169] 其中:
[0170] 表示在第s+1次迭代中第k个警戒者在第j维占据的位置,k∈(1,m); 表示在第s次迭代中第k个警戒者在第j维占据的位置;
[0171] 表示在第s次迭代时所有警戒者中在第j维占据的最佳位置;
[0172] 表示在第s次迭代时所有警戒者中在第j维占据的最差位置;
[0173] 表示在第s次迭代中第k个警戒者在第j维时的适应度值;
[0174] 表示在第s次迭代时所有警戒者中在第j维的最佳适应度值;
[0175] 表示在第s次迭代时所有警戒者中在第j维的最差适应度值;
[0176] μ是步长控制参数;
[0177] K∈(0,1)是一个随机数;
[0178] ε为常数。
[0179] 本实施方式将麻雀算法应用于抢险救援船舶路径规划领域,具体如下:
[0180] 一、抢险救援船舶航行环境建模
[0181] 环境模型的建立是判断抢险救援船舶能否可以圆满完成救援任务的基本前提,其中第一步便是如何描述规划空间中的障碍物。本发明将内河水域设定为二维空间,建立二维坐标系,在该二维坐标系中对长度为X、宽度为Y的内河流域进行分割,将其分割为g×r个边长为u的正方形区域,将有障碍物的区域设为障碍域,没有障碍物的区域设为可行域,将可行域设为存在气流影响的风险区域和没有气流影响的可自由航行的安全区域。
[0182] 则有:
[0183] (6)
[0184] 本发明中设定X,Y均为20,r,g均为20,u为1。如图3所示,根据所处环境的性质,将栅格(正方形区域)分为障碍栅格(障碍域)和自由栅格(可行域),自由栅格用白色表示,障碍栅格用黑色表示。常见的障碍物主要有桥梁、礁石、岛屿、岸基、水上建筑物等,这些障碍物所在的位置黑色的障碍栅格表示,在进行Matlab仿真实验时,需要将栅格进行离散化处理,即将栅格地图用一个矩阵来表示,其中黑色栅格表示1,白色栅格表示0。船舶在救援时经常会遇到高气流、高波浪等影响航行的区域,可以称之为高风险区域即风险区域。这些高风险区域会影响抢险救援船舶的救援效率。本实例假设抢险救援多功能船舶只有8个运动方向。如图4所示,即:东、西、南、北、东南、东北、西南、西北。若每个单位栅格的边长为1,则抢险救援船舶运动的步长为1或 。
[0185] 二、抢险救援船舶航行路径建模
[0186] 构建航行时间优化目标函数和船舶航线风险评估函数,最小化航行时间优化目标函数和船舶航线的风险评估函数,从而得到船舶总代价评估函数;以归一化的代价函数作为航迹评价指标。
[0187] 本发明实例考虑船舶载风险区域航行时间的影响,设计了航行时间优化目标函数JTC如公式(7)所示。
[0188] (7)
[0189] 其中,TC,total为船舶沿船舶航线航行的总航行时长;
[0190] TC,alarm为船舶警报时间,即定义为船舶在该船舶航线风险区域中航行的时间;当警报时间TC,alarm为0时,航行时间优化目标函数JTC的函数值等于TC,total。
[0191] 抢险救援船舶在极端天气下航行时,影响船舶航行安全的客观因素主要有两个方面,一是静态障碍物和动态障碍物,二是极端恶劣环境下的气流条件。本发明主要针对第二类风险因素考虑气流,建立了船舶航线的风险评估公式(8):
[0192] 以船舶在风险区域中的航行风险为变量建立船舶在该船舶航线上的船舶航线风险评估函数,其计算公式如下:
[0193] (8)
[0194] 其中:αC+βC=1,
[0195] αC表征波高对船舶航行风险影响程度的系数;
[0196] βC表征风速对船舶航行风险影响程度的系数;
[0197] rC,risk为该船舶航线中的风险值;
[0198] Q为该船舶航线中的总航路段数;
[0199] HC,i,wave为该船舶航线中的第i个航路段的波高;
[0200] HC,max,wave为该船舶航线的总航路段中的最大波高;
[0201] VC,i,wind为该船舶航线中的第i个航路段的风速;
[0202] VC,max,wind为该船舶航线的总航路段中的最大风速。
[0203] 将船舶航路规划问题定义为一系列的优化准则和约束条件。通过最小航行时间优化目标函数和船舶航线的风险评估公式,得到船舶总代价评估函数,其表达式如公式(9)所示:
[0204] (9)
[0205] 其中,JC,cost为船舶总代价评估函数;T1为船舶的航行时间优化目标函数JTC的权重参数,T2为船舶航线风险评估函数rC,risk的权重参数;
[0206] 作为权重系数需满足如下条件:T1≥0,T2≥0,T1+T2=1。
[0207] 三、基于麻雀算法的船舶路径优化
[0208] (1)算法流程
[0209] 在上述的研究中,通过对最小航行时间优化目标函数和船舶风险评价函数进行数学建模最终得出了船舶总代价评估函数,从而将问题转化成求解总的代价评估函数最优化问题。以将通过改进的麻雀算法来构造出相应的求解思路并给出算法优化流程,进而实现对抢险救援船舶规划路径的优化。
[0210] 本实施方式中的麻雀算法具有收敛速度快、全局能力强的特点,为进一步提供麻雀算法的寻优性能及防止在迭代后期算法陷入局部最优,对麻雀个体的位置采取自适应t分布变异策略,算法流程如图2所示。将改进的麻雀搜索算法导入到规划优化路径的过程中,最后通过终止条件判断得出船舶航行的最佳优化路径。自适应t分布变异策略:
[0211] (10)
[0212] (11)
[0213] (12)
[0214] 其中:t(M)是以迭代次数S为自由度的t分布;
[0215] 为变异后的第y个发现者在第j维占据的位置; 为第y个发现者在第j维占据的位置;
[0216] 为变异后的第z个追随者在第j维占据的位置, 第z个追随者在第j维占据的位置;
[0217] 为变异后的第k个警戒者在第j维占据的位置, 第k个警戒者在第j维占据的位置。
[0218] 针对抢险救援船舶本实施方式给出了具体实现流程,如下所述:
[0219] 1、参数初始化,对所需参数进行初始化,如最大迭代次数、麻雀算法中安全阈值的设置、船舶航行的船舶总代价评估函数中权重和船舶最大转角的设定。
[0220] 2、初始化种群,对麻雀种群如发现者、追随者进行设置,以及警戒者所占种群的比例。
[0221] 3、设置抢险救援船舶的起点和救援点、高风险区域的位置并记录当前的船舶航行环境信息。
[0222] 4、利用本实施方式中提出基于t分布变异策略的改进麻雀算法对总代价评估函数进行优化与更新,并通过船舶航行路径点确定候选路径。
[0223] 5、更新路径,如果当前的路径优于之前,则构建新的路径输出为船舶最优航行路径。
[0224] 6、判断是否达到终止条件,如果没有则转至第四步;否则进行下一步操作。
[0225] 7、直到收敛或达到最大迭代次数则算法结束,输出船舶最优航行路径。
[0226] (2)实验参数设置
[0227] 本实验方式仿真环境在11th Gen Intel(R) Core(TM) i7‑11800H @ 2.30GHz2.30 GHz和16GB内存电脑上的MATLAB 2021a中运行。建立船舶航行栅格地图并设置高风险区域如图3和图6所示,其中箭头区域为高风险区域,设置抢险救援船舶的起始点[1,1]与救援点[20,20]。静态障碍物等不可通行区域为黑色栅格,自由通行区域为白色栅格,灰色栅格区域为高风险地区,初始化种群并更改参数,如设置最大迭代次数200次,船舶最大转角
45度,风险区域中影响程度系数α=0.6,β=0.4,种群数量50,发现者比例为0.3,警戒者数量为5,变异概率P=0.5,栅格大小20*20等。
[0228] (3)测试分析
[0229] 首先,本实施方式测试验证了麻雀算法对船舶路径规划问题的有效性,分别从两个场景进行了分别验证。
[0230] 场景1:建立船舶航行栅格地图,栅格大小为20*20。静态障碍物等不可通行区域为黑色栅格,自由通行区域为白色栅格,设置抢险救援船舶的起始点[1,1]与目标点[20,20],朝向为0度。 为了验证算法的智能性和适用性,通过风险评估函数并设置风险影响程度系数α=0.6,β=0.4,船舶的航行时间优化目标函数JTC的权重参数T1=0.7,船舶航线风险评估函数rC,risk的权重参数T2=0.3。场景2与场景1有所不同的是,其中 [8,8]与[11,20]构成的矩形栅格区域(即箭头区域)作为高风险区域。图5为船舶在障碍物环境中的路径规划,可以看出规划的路径是一条连续的最短曲线,而图6可以看出船舶躲避了高风险区域,规划出了一条高风险环境中的最短连续路径,从中可以看出规划的航线能够远离高风险区域并保证船舶在救援过程中不会穿越高风险区域而造成不必要的损失,这不但提高了船舶的救援效率,其安全性也得到了保证。
[0231] 图5‑6给出了基于改进SSA的抢险救援船舶规划出的一条合理化路线,可以看出算法可以很好地避开障碍物完成最短路径规划任务,也能够避开高风险区域,安全航行至目的地。图7‑8显示算法在场景1与场景2中迭代次数20次左右已经收敛,从收敛速度来看,麻雀算法在该问题上是一种有效的优化方法,而基于自适应t分布变异的麻雀算法提供了平衡全局搜索和局部开发的能力,在抢险救援船舶地路径规划问题上具有较好的性能,也为船舶在真实复杂环境下的全局航行路径提供了合理的参考。
[0232] 下面,参考图9来描述本申请实施例所用的电子设备;该电子设备可以是可移动设备本身,或与其独立的单机设备,该单机设备可以与可移动设备以及超声医疗设备进行通信,以从它们接收所采集到的输入信号,并向其发送所选择的目标决策行为。
[0233] 如图9所示,电子设备10包括一个或多个处理器11和相应的存储器12。
[0234] 处理器11可以是中央处理单元或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备10中的其他组件以执行期望的功能。存储器12可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括个读存储器(ROM)、硬盘、闪存等。在所述计算机存储介质上可以存储一个或多个计算机程序指令,处理器11可以运行所述程序指令,以实现上文所述的本申请的各个实施例的决策行为决策方法以及/或者其他期望的功能。
[0235] 在示例中,电子设备10还可以包括:输入装置13和输出装置14,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。例如,该输入设备13还可以包括例如键盘、鼠标等等。该输出装置14可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
[0236] 当然,为了简化,图9中仅示出了该电子设备10中与本申请有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备10还可以包括任何其他适当的组件。
[0237] 除了上述方法和设备以外,本申请的实施例还可以延及计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的决策行为决策方法中的步骤。
[0238] 所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
[0239] 此外,本申请的实施例还可以是可读计算机存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述具体实施流程部分中描述的根据本申请各种实施例的决策行为决策方法中的步骤。
[0240] 所述计算机存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者存储介质。存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、个读存储器(ROM)、可擦式可编程个读存储器(EPROM或闪存)、光纤、便携式紧凑盘个读存储器(CD‑ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0241] 当然,对于本领域技术人员而言,本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
[0242] 此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
[0243] 本发明未详细描述的技术均为公知技术。