船舶路径规划及验证实训系统开发

2022-05-13 11:25胡浩帆
广东造船 2022年2期
关键词:遗传算法可视化

胡浩帆

摘    要:传统的船舶路径规划学习和训练方法,需要船员到船上在实际航行中学习。本文在对现有海图工具实行二次开发的基础上,对国际通用AIS编码、GPS NEMA-0183代码进行编制,模拟船舶航行的路径和过程,实现在实验室内进行规避非适航区的船舶路径规划和航行验证,并引入遗传算法搜寻参考最优路径,解决培训船员中的专家顾问系统和陆上手动路径规划及验证问题。该实验验证系统交互简单、流程清晰、覆盖内容广且可扩展性强,既可在课堂教学中提供演示平台,又可为学生在实验课程中进行实际操作提供载体。

关键词:遗传算法;船舶路径规划;虚拟实验平台;可视化

中图分类号:U612.1                                  文献标识码:A

Development of Ship Path Planning and Verification Training System

HU Haofan

( COSCO Shipping Specialized Carriers Co., Ltd., Guangzhou 510623 )

Abstract: The traditional learning and training methods of ship path planning require the crew to learn in the actual voyage. On the basis of the secondary development of the existing chart tools, the international general AIS code and GPS NEMA-0183 code are compiled to simulate the path and process of ship navigation. The ship path planning and navigation verification to avoid non seaworthy areas are realized in the laboratory, and the genetic algorithm is introduced to search for the optimal reference path, which solves the problems of expert consulting system and manual path planning and verification on land in training crew. The experimental system has the advantages of simple interaction, clear process, wide coverage and strong scalability. It can not only provide a demonstration platform in classroom teaching, but also provide a carrier for students to carry out practical operation in experimental courses.

Key words: Genetic algorithm; Ship path planning; Virtual experiment platform; Visualization

1     前言

船舶避碰路径规划,主要解决两类问题:一是船舶全航程有效避开静态和动态障碍物,保障安全航行;二是船舶在航行过程中选择最优路径[1] 。

陈晓等在《基于鱼群算法的船舶避浅航线设计》中,提出了以实现最短航程为目的, 建立以避開浅滩区域、 控制转弯角度以及减少转向点数目为约束条件的航线设计模型,采用人工鱼群算法生成初始航线, 结合船舶航行习惯对航线作进一步的优化和调整[2];姚肖肖在《基于蚁群算法与海量AIS数据的船舶航线规划》中,研究了基于蚁群算法和海量AIS数据的航线规划方法,找出最短航线[3] 。以上方法结合计算机算法,通过对算法的加强和调整,自动计算出航点,可以作为船员确定航线时的参考。但在实际航线规划过程中,需要人员凭借经验做出调整,上述结果较难得到验证,实用性较弱,且没有人工操作环节,不适应实验室船员培训的需要。

2     系统开发

2.1   使用遗传算法得出初步绕行航点

本系统利用遗传算法得出路径点作为参考,初步规避临时非适航区,并结合气候、海况条件,进行人工修整路径点坐标;通过遗传算法设计最优航线时,首先要对种群进行初始化,即在全局范围内随机搜索转向点并随机产生航线路径[4] ;其次选择适应度函数,其对算法的收敛性和稳定性具有重要影响。适应度函数的选择决定了种群的进化方向和进化效率,选择合适的适应度函数要考虑路径长度、转向个数和转向角度大小等因素;然后确定遗传算子,使用轮盘赌法计算适应度函数的值,适应度函数值越大,表示该路径越接近最优,对基因组进行交叉和突变操作,循环寻优。

2.1.1建立路径一维实数编码

建立船舶路径一维实数染色体编码,采用相对路径长度和相对角度表示航点坐标。相对点的坐标表示形式为(L,θ),L为相对路径长度,θ为相对角度。为了简化编码复杂度,取

L = D / (2 * n * w)                                            (1)

式中:D为已公布非适航区周长;n为非适航区顶点个数;w为非适航区形状复杂度系数,取w=1.5~3。非适航区范围确定后,为固定值。

遗传染色体编码形式,如图1所示:θ<0表示船舶在避开非适航区时,添加航点处的极轴转角;θ表示当前航向左转;θ>0,表示当前航向右转;i表示相对极坐标极轴个数。

编码可以简化为航点转角θi为单元的一维实数编码。由于绕行路径为凸多边形,角度范围在(-90,90),如图2所示。

至此,可以引入量(L,θ)。其中:L建立投影关系,θ直接计算。由此可求出各点具体坐标。

2.1.2 建立适应度函数

2.1.3 遗传操作

本文使用选择、交叉和变异,初步寻找最优路径航点;使用轮盘赌进行遗传操作,染色体基因编码的取值范围为(-90,90),初始选择通过轮盘赌方式;为了兼顾航线的平滑度,轮盘赌的选择在区间(-30,30)权重最大,取0.6;区间(30,60),取0.3;区间(60,90),取0.1。

交叉操作是把两个同源染色体通过交配、重组得到新的染色体的过程。本文中使用实数编码,对不同染色体编码任意位置单个基因进行交叉操作,得到新的染色体编码。

变异操作,是以较小的概率改变个体编码串上的某个或某些遗传因子的基因值的过程;基因突变采用高斯变异算子,用均值为、方差为的正态分布的一个随机数来替换原有基因值,当θi>0时,μ =15;θi<0时,μ =-15。由此得到参考初步最优路径航点。

2.2   对获得的航点进行手动修正

选择目的地港口、出发地港口、船型、桅杆高度、载货量和吃水深度等参数,点击查询按钮显示通过遗传算法产生的航点列表,并进行增删修改。

可以选择任意一个路径点进行修改,也可以在此点的前后加入新点进行计算,改变路径曲线形状;当满足路径规划要求后,点击开始模拟,通过COM通信对电子海图发送定位语句,实现航线模拟。其中:所有航点位置坐标经过AIS数据加密,通过COM串口输送到电子海图里,每两个航点之间形成一段航线,通过连续发送模拟AIS语句,实现虚拟船只移动;在电子海图里查阅船舶行驶路径和条件,模拟实际船只航行,对修正后的遗传算法生成的航点进行验证航行;在初步寻优的基础上,考虑在新航点范围的障碍物、水文和气象条件,加入人工干预因素;变化后的航点间的船首向和航程等参数,重新导入系统进行计算。系统界面右侧提供计算的功能,参考电子海图,输入相邻航点之间的经纬度,计算得到最新的船首向、航程、剩余航程、经度增加量和纬度增加量。流程框图,如图3所示:

3    AIS数据的反推

船舶自动识别系统(AIS)是一种新型的通信导航系统,它使用自组织时分多址(SOTDMA)连接方式,在世界任一海域实时进行多船间、船岸间的动静态航行信息以及其他与航行安全相关信息的交换[6]。船舶的IMO号、MMSI号、船名、船舶经纬度、时间、对地航速、航向信息、吃水深度、ETA等信息,都需经过AIS数据加密过后才能成为可被设备识别的暗码,模拟AIS数据通过串口传输到电子海图上显示。

AIS数据加密,是将船舶的各项数据的十进制转化为二进制。加密数据时先将 16 进制的数转化为每字节存放 6位有效数据,然后将6位有效数据转化为 8 位 ASCII,再根据标准的 AIVDM 语句格式进行打包处理[7] 。图4为AIVDM格式打包流程图:

4     航点各参数计算

4.1    建立航點向量

建立笛卡尔坐标系,以地球球心为坐标系原点,在地球海洋表面上的船舶航点向量,可以表示为:

4.2总航程和剩余航程计算

计算航程和剩余航程,有利于掌握船舶航行的整体状况,对安全航行有重要作用:一方面,确定相邻航点之间的航程,能够明确距离下一个转向点还有多远的距离;另一方面,对实现经济航线和计算船舶EEOI指数有很大的帮助[10] ,对制定航行计划表也有较大的参考价值。

4.3   任意相邻两点之间的航向

在我国沿海地区的航行过程中,可以认为船首向近似等于方位角,因此这里把方位角的值填入船首向的值[8]。

4.4 纬度增加量、经度增加量计算

通过船首向计算纬度增加量、经度增加量,计算公式如下 :

式中:a为纬度增加量;b为经度增加量。

通过叠加纬度增加量和经度增加量,不断改变当前船舶的经纬度数值,从而直接决定了船舶模拟航行的速度。

如图7所示为自动调整的某条航线,经过系统修正后,避开了非适航区,重新规划了航点。

5    模拟航行验证结果

本系统最终展示所指定航线的安全性和可靠性:完成以上所有准备工作以后,点击开始模拟按钮,系统将以一个定时器的时间间隔不断的向电子海图发送AIS数据,该数据依据航线规划出的所有航点,以纬度增加和经度增加的形式同时变化,实现虚拟船只的移动,可以在电子海图上看到船只按照航线规划的路径形式,并且到达下一个转向点之后准确转向。

6     结语

船舶路径规划系统虚拟平台使用遗传算法初步计算航点,进行手动修正,使用数据库和电子海图结合验证航点路径,具有以下特点:

(1)界面简单、易操作;具有自动计算初步航点的功能,并配合以手动调整和修正航点参数;根据电子海图上的信息和理论知识验证航线的可靠性;

(2)内容丰富,可以实现改变船只的信息,也可以绘制定制航线,可操作性强;

(3)操作思路清晰,演示便捷,实现陆上学习如何绘制航线并观察行驶途中遇到的各种情况,便于学习和讲解。因此,船舶路径规划系统虚拟平台,对海员培训有广阔的应用空间。

参考文献

[1]李文颉等. 船舶路径规划数值仿真[J]. 动力系统与控制, 2019, 8(2):55-62.

[2]陳晓等. 基于鱼群算法的船舶避浅航线设计[J]. 中国航海,2019.9:34-38.

[3]姚肖肖等. 基于蚁群算法与海量AIS数据的船舶航线规划 [J]. 交通信息与安全. 2019.3:102-105.

[4]谢玉龙等. 基于改进遗传算法的船舶路径规划[J].计算机技术与发展. 2019.5:75-80.

[5]何建新. AIS关键技术研究及其与电子海图的集成实现[D]. 哈尔滨: 哈尔滨工程大学, 2006.

[6]刘明俊等. 苏通大桥防船撞预控技术研究[M]. 武汉:武汉理工大学出版社, 2009.

[7]谢新连. 海洋气象环境影响下的复杂水域船舶路径规划[J].重庆:重庆交通大学学报, 2021.40(2):21-25.

[8]肖洋. 国际海运减排博弈及中国面临的“碳陷阱”[J]. 现代国际关系. 2013 (06):145-148.

[9] Rutstrum, Carl, The Wilderness Route Finder, University of Minnesota Press (2000), ISBN 0-8166-3661-3.

[10]陈金皖. 基于墨卡托投影的大圆航段方法[J].电子技术与软件工程,2020(06):145-148.

[11]唐强荣. 在开敞浅水域中航行富裕水深的确定方法[J].中国航海,2002.(4):14-18.

猜你喜欢
遗传算法可视化
面向成本的装配线平衡改进遗传算法
数据可视化设计在美妆类APP中的应用
画图:数学思维可视化的有效工具
思维可视化
基于GeoGebra的高中物理可视化教学研究
复变函数级数展开的可视化实验教学
复变函数级数展开的可视化实验教学
复变函数共形映射的可视化实验教学
复变函数共形映射的可视化实验教学
基于遗传算法对广义神经网络的优化