2. 上海交通大学 船舶海洋与建筑工程学院,上海 200240
2. Shanghai Jiaotong University, School of Naval Architecture, Ocean and Civil Engineering, Shanghai 200240, China
海上无人系统集群通常是由若干无人机、无人艇以及无人潜器构成的跨域异构无人集群,海上单无人装备的研究侧重提高单体的感知、决策、控制能力,而海上无人系统集群弱化了单体的能力,更突出群体的力量,可以充分发挥异构装备之间的优势进行能力互补,使得无人系统集群能够比单体更高效更可靠完成任务。敌我识别、目标融合,以及集群内态势共享、任务分配、组织重构等群体智能技术是无人系统集群算法的重要支撑,其中,协同态势感知、任务分配、编队协同控制等算法是无人系统集群技术的核心[1-2]。
算法测试训练系统是传统仿真测试系统的进一步延伸,其相同点是都需要借助虚拟的或者半实物仿真环境进行环境及运动体的模拟,但是2种系统的设计目的和实现方法不同,算法测试的目的是基于一定的评价指标体系,对算法进行典型场景的测试,完成指标符合度的评价[3]。对海上无人装备来说,感知识别算法测试通常是通过随机给出的实测视频流检验识别算法识别率,智能航行决策算法测试的指标及方法研究较多,如李丽娜等[4]提出了基于《国际海上避碰规则》的智能避碰测试策略测试验证方法,定义了代表性的典型测试场景。尹勇等[5]较为全面地总结了智能船舶航行的虚拟仿真方法、模型测试方法以及实船验证方法。目前对海上无人装备的仿真测试主要还是集中在单体感知、航路规划以及控制等共性基础算法上[6-8],对于无人系统集群的仿真测试较少。
算法训练的目的则是通过一系列对抗测试场景对算法进行训练,使得算法的能力可以用较短的时间趋近其设计的目标,而训练系统如何生成最有效的训练场景是其关键。算法训练场景可以由一系列测试场景构成。面向自主性越来越高的海上无人集群以及具备一定学习能力的无人集群算法,需要有智能算法测试训练系统作为算法演进的环境,支撑算法迭代优化。传统的虚拟测试系统主要用于验证算法程序的功能性和可靠性,可完成对航行控制及避碰算法的测试,但无法支撑对集群算法的高效训练。基于规则的算法在仿真系统中测试,往往由人根据规则设定算法的测试场景,完成测试后人工调参。基于机器学习的群体智能算法可根据不同的环境测试训练集自主学习神经网络参数,但一般在算法开发环境例如Matlab或者Python开发环境中完成训练,虚拟仿真系统仅完成环境模拟和效果展示,再直接迁移到实际集群中,考虑到算法开发环境和真实环境的巨大差异,对于复杂真实场景,缺少高仿真环境的交互,导致这种迁移方式存在较大风险。
针对以上问题,本文设计具备无人集群运动模型控制、碍航物模拟、环境模拟功能的算法测试训练系统,采用实船接口协议,通过测试训练场景生成可与算法进行交互的测试训练场景数据,并结合典型算法测试实例以及实装迁移试验,证明了系统的有效性,最后指出了系统未来的改进方向。
1 系统总体设计 1.1 系统总体需求功能方面,为完成海上无人系统集群关键算法的测试和训练,系统需具备海洋环境模拟功能,可以设置不同的海况;具备海上静态及运动体运动模拟功能,对跨域无人系统支持空中、水面及水下装备的运动模拟;可以传感器视角生成虚拟传感器数据;具备算法测试及训练自适应接口;具备历史数据记录及回放功能;具备算法测试及训练功能。
性能方面,首先系统应具有高可靠性,由于算法测试训练系统需要持续将大量的场景测试数据传递给被测算法程序,被测算法程序一旦出现异常,需要系统能够及时终止并记录相关情况,同时开展下一轮测试。其次,需支持高效测试及训练,由于海上跨域无人集群存在多个同类型的算法,故系统需要具备一定的可重复性和隔离性。可支持多个可重复目标在同一个物理机上进行测试,也可支持多个物理机对算法进行并行测试。最关键的,系统应能支持场景智能生成,传统算法测试主要以随机生成测试场景样本为主,产生了大量的重复测试场景,如果把这些数据作为训练集,将极大地延长算法训练时间,采用智能场景生成策略可以有效的解决这一问题。最后,是国产化的需求,考虑到关键算法测试的安全性,需要在国产麒麟操作系统上进行部署及测试。
1.2 系统功能模块设计针对以上功能和性能需求,开展系统设计。如图1所示,设计的系统包含场景生成、任务设定、历史记录、算法设置、模型定义5大基础功能组件。
各模块具体情况如下:
1)场景生成组件
主要用于实现对无人集群运动环境的编辑、设置功能。其中海洋、地形、天气等环境利用三维仿真软件进行视觉模拟。为便于对规划的航路及避碰情况进行观察和测量,设计了3D和2D视角转换的功能,其中3D视角可切换至不同的观察角度,2D视角则方便实现对全局状态的观察。本组件的核心功能是通过设定海洋波浪谱数据实现水面无人装备海洋环境运动响应的输入,使用快速傅里叶变换生成实时海洋环境运动情况,并采用频谱图对场景文件进行记录,用于实现历史回放中的场景复现。
2)任务设定组件
主要用于对测试训练任务的基本条件进行设定,对算法性能给出基本评价。包括对被测算法的类型、测试以及训练的循环次数、终止条件等进行设置,基本条件设定完成时,生成测试训练任务基础文件,用于对测试以及训练任务设置的条件进行记录和管理。算法性能评估子组件主要对无人集群的感知算法识别精度、态势融合算法的目标融合精度和用时、任务规划算法的首次规划及重规划用时、协同控制算法的队形变换及保持情况、集群内无人装备间距、无人集群的内部及外部避碰避障情况等基于集群自主能力评价规则进行打分。
3)历史记录组件
主要用于完成对历史数据的记录和回放。其中,历史记录子组件通过记录无人集群的运动数据、测试训练场景、被测算法名称,性能评价分数等。历史回放子组件主要是对历史记录的数据进行逆向生成,实现对测试训练历史的回放,使用线性插值实现场景的变速播放。
4)算法设置组件
主要用于对被测算法的版本文件、接口软件进行记录,运行控制子组件则用来实现被测算法的启动及停止、保存、上传至实装等功能。支持在算法测试成功后,通过FTP协议将算法上传至无人集群实装,为区分不同的算法,组件根据算法完成测试训练的时间自动生成被测算法的名称代号及版本编号。
5)模型定义组件:主要用于对象运动学、动力学模型、搜索感知模型进行定义。通过接收到的当前位姿和转向角、速度等信息,调用封装好的运动计算模块,计算生成下一时刻的位姿信息并反馈至测试训练环境。
搜索感知模型包括光电摄像头模拟模型、雷达及惯性导航模拟模型、定位装置模拟模型等。其中,光电摄像头模拟模型是基于系统的三维软件平台,获取渲染图像数据,用于生成设定角度、高度的模拟光电摄像头图像数据,通过世界坐标系平移旋转、像素坐标转换等方法得到模拟的光电摄像头图像。集群中单艇光电摄像头感知模拟效果如图2所示。
基于系统的各项功能,设计的算法测试训练流程如图3所示。在测试过程中,算法训练场景的设置一般由人工完成,要完成海上无人集群的关键算法测试及训练,由于节点众多、任务复杂,全部测试场景由人工编辑难免会有遗漏,需要大量的人力和时间成本。本文提出测试训练场景智能生成技术,即通过较少的时间采用人工智能算法产生大量高质量测试训练场景的技术,随机生成数据,完成第一轮随机测试训练数据的初始化后,基于粒子群算法等元启发式算法不断对空间中的信息进行学习,求得最优策略。
首先运行一批随机场景,并获取每个场景中元素的执行路径;随后根据分析结果,得到目标路径上第一个分歧点的位置,记录场景中执行路径与目标之间的差别,将目标上的位置做标记。在此基础上,根据构建的程序流平坦化模型计算场景分歧点上的梯度,计算出输入场景的位置朝哪个方向的变化会有更有可能导致场景向标记的路径方向生成。最后记录这些部分和生成方向,并使用群智能算法在这些选中的位置上生成。
2.2 集群智能围捕算法测试以集群智能围捕算法的测试训练为例,将系统部署于国产麒麟操作系统上,算法运行在国产工控机上,训练好的算法部署于实艇控制器上,验证系统有效性。测试训练的对象是某无人集群的决策规划算法,算法要求是在3级海况下,对外来无人艇进行围捕,集群不能使外来艇靠近红色圆圈范围内距离圆心200 m内。基于所设计的测试训练系统,其测试训练流程如下:
1)为完成对该集群决策规划算法的训练测试,按照图3所示测试流程,在任务设置组件中设置该算法完成测试和训练的目标为任务成功率大于95%时停止,分别设置测试场景的生成方式(即外来艇的进入方式)为随机模式和智能模式,海况为3级。
2)在环境编辑子组件中设置为1艘外来侵入艇,设置8艘己方无人艇。
3)任务设定组件中调用编辑好的无人艇运动学模型和光电摄像头模型,通过算法设置模块调用被测算法,启动训练测试进程。对基于神经网络等学习型的算法,根据设置好的场景生成方式和停止条件,生成外来艇,历史记录子组件对算法运行过程中外来艇接近圆心的距离进行记录。如果外来艇靠近圆心200 m内,则由性能评估子组件进行任务失败反馈,并记录任务次数及任务成功率。
4)历史记录子组件记录下无人艇集群在测试过程中的定位数据和环境反馈数据,如需看回放,则在历史回放子组件中调用历史数据、环境模型和运动学模型进行实时回放。
5)基于机器学习的算法根据任务管理模块的反馈,调整算法参数,当任务成功率低于95%时,采用随机模式则随机生成外来艇,采用智能模式则使用启发式算法生成外来艇,直到该算法的任务成功率高于95%。
6)当被测算法的任务成功率高于95%时,算法设置组件保存下当前测试训练时间并标记时间版本。
7)根据需要通过算法设置子组件将测试或者训练好的算法通过传输协议上传至无人艇端。
结果显示,成功率高于95%的被测算法可以很好地实现对外来艇的合作围捕,并且实现在有单艘艇失控的情况下,其他艇的接力补充,将该被测算法上传到实艇集群上,在实装试验的环境中也取得较好的实测效果,完成了算法实装的成功迁移。
3 结 语针对海上无人系统集群感知、认知、决策、控制等智能算法的测试训练需求,本文提出无人集群智能算法测试训练系统的总体架构和功能组件,建立了算法测试训练流程,运用测试训练场景生成技术完成批量化的场景生成。以集群智能围捕算法为例,完成算法的应用示例,证明了系统的有效性。
由于目前海上无人系统集群智能算法评价指标体系还未建立,只能根据特定的任务场景设定智能算法的目标,在未来的研究中,应结合集群智能分级设计详细的算法评价体系,进一步完善系统功能。
[1] |
谢伟, 陶浩, 龚俊斌, 等. 海上无人系统集群发展现状及关键技术研究进展[J]. 中国舰船研究, 2021, 16(1): 7-17,31. XIE Wei, TAO Hao, GONG Jun-bin, et al. Research advances in the development status and key technology of unmanned marine vehicle swarm operation[J]. Chinese Journal of Ship Research, 2021, 16(1): 7-17,31. DOI:10.19693/j.issn.1673-3185.02225 |
[2] |
欧阳子路, 王鸿东, 黄一, 等. 基于改进RRT算法的无人艇编队路径规划技术[J]. 中国舰船研究, 2020, 15(3): 18-24. OUYANG Zi-lu, WANG Hong-dong, HUANG Yi, et al.. Path planning technologies for USV formation based on improved RRT[J]. Chinese Journal of Ship Research, 2020, 15(3): 18-24. DOI:10.19693/j.issn.1673-3185.01639 |
[3] |
王鸿东, 黄一, 闫昭琨. 智能船艇测试场建设、运营实践与思考[J]. 中国船检, 2021(7): 75-79. WANG Hong-dong, HUANG Yi, YAN Zhao-kun. Practice and thinking on the construction and operation of intelligent boat testing ground[J]. China Ship Survey, 2021(7): 75-79. DOI:10.3969/j.issn.1009-2005.2021.07.016 |
[4] |
李丽娜, 杨神化, 尹勇. 船舶自动避碰仿真平台的构建与测试方法研究[J]. 中国航海, 2006, 68(3): 47-50. LI Li-na, YANG Shen-hua, YI Yong. Study of simulation platform construction for automatic ship collision avoidance and its test method[J]. Navigation of China, 2006, 68(3): 47-50. DOI:10.3969/j.issn.1000-4653.2006.03.013 |
[5] |
尹勇, 张秀凤, 张显库. 船舶自动舵和自动避碰算法仿真测试平台的研究[J]. 系统仿真学报, 2007, 19(1): 56-58. YI Yong, ZHANG Xiu-feng, ZHANG Xian-ku. Study on simulation platform for testing algorithms of autopilot and automatic collision avoidance[J]. Journal of System Simulation, 2007, 19(1): 56-58. DOI:10.3969/j.issn.1004-731X.2007.01.016 |
[6] |
范云生, 苏辉, 王国峰. 无人水面艇自主航行能力测试技术与应用[J]. 大连海事大学学报, 2020, 46(3): 38-49. FAN Yun-sheng, SU Hui, WANG Guo-feng. Testing technology and its application of autonomous navigation ability for unmanned surface vehicle[J]. Journal of Dalian Maritime University, 2020, 46(3): 38-49. DOI:10.16411/j.cnki.issn1006-7736.2020.03.005 |
[7] |
孙峰, 蔡玉良, 马吉林. 船舶智能避碰策略测试方法与指标研究[J], 交通信息与安全, 2019, 5(34), 84-92. SUN Feng, CAI Yu-liang, MA Ji-lin. A study of test methods and indicators for marine intelligent anti-collision strategy[J], Journal of Transport Information and Safety, 2019, 5(34), 84-92. |
[8] |
刘佳仑, 杨帆, 马枫等. 智能船舶航行功能测试验证的方法体系[J]. 中国舰船研究, 2021, 16(1): 45-50. LIU Jia-lun, YANG Fan, MA Feng, et al. Method system of navigation function test and verification for intelligent ship[J]. Chinese Journal of Ship Research, 2021, 16(1): 45-50. DOI:10.19693/j.issn.1673-3185.01780 |