赵蕊,许建,向先波,徐国华
1 中国舰船研究设计中心,湖北 武汉 430064
2 华中科技大学 船舶与海洋工程学院,湖北 武汉 430074
自主式水下机器人(AUV)作为一种无缆型水下航行器,是海洋资源勘探和开发的重要工具。
AUV在军用领域的应用十分广泛,可用于反潜战、水雷战、情报侦察、巡逻监视、后勤支援、地形测绘和水下施工等[1-3],故世界各国都在致力研究先进的AUV系统以增强国防实力。美国的伍兹霍尔海洋研究所、蒙特雷湾海洋研究所、麻省理工学院海洋研究中心等众多研究机构研制了大量应用于短期水雷侦察系统和长期水雷侦察系统的AUV。1990年,挪威国防研究机构制定了AUV长期发展计划,其中HUGIN系列AUV已多次参加挪威皇家海军的猎雷演示试验。与此同时,法国及俄罗斯等国家也在军用AUV方面开展了大量研究工作[4]。
在民用领域,AUV主要用于海洋环境考察、海底矿产和生物资源勘探、海事救援、海洋考古及海底光缆工程建设与维护等[5]。在中国大洋矿产资源开发研究协会的支持下,中国与俄罗斯联合研制开发了CR-01型和CR-02型(6 000 m)AUV,可以在深海底平坦地形的多金属结核矿区工作环境下完成声学、光学和水文测量任务。美国Tesla Offshore公司已应用Bluefin-21型AUV开展海洋管道检修服务及海床地理环境地图的绘制工作。2011年,美国蒙特雷湾海洋研究所在Juan de Fuca海岭投放了“Dorado深海AUV”,该型AUV的最低航行高度为海底上方50 m,其配置的多波束声呐可以精确测绘火山口周围的海底地貌[6-7]。
近几十年来,鉴于AUV在民用和军用领域的重要地位,各国在AUV技术方面均取得了长足的发展[8-10],并基于任务需求研发了多自主式水下机器人(MAUV)系统。
随着AUV技术的不断成熟,其已成为能够完成指定任务的水下自主作业系统。然而,单个AUV难以满足一些动态复杂任务的应用需求,MAUV系统由此应运而生[11-13]。在水下作业方面,MAUV系统因其空间分布性、高效性、鲁棒性及灵活性等特点,具备单台AUV所无法比拟的优势。MAUV系统的核心思想是将多个功能简单的AUV组成一个系统,通过控制各AUV协调合作来完成给定任务[14-17]。目前,美国空间及海军作战系统中心设计了分布式MAUV水下监听系统,并建立了水下基站用以监测水下数据。哈尔滨工程大学海洋综合技术工程研究中心也基于智能MAUV系统,在海底作战环境探测、水下大型物品运输等方面开展了研究[18]。由MAUV组成的水下网络可以与水上网络相结合,形成全方位立体化的信息网络,其中水面舰艇或浮标可以作为水上和水下连接的中继节点。由于水下信息网络能够长期在复杂或高威胁环境中完成海区监视、情报搜集和环境监测等任务[19-22],故MAUV系统具有重要的研究意义和应用价值。
为保证MAUV顺利完成水下环境立体协同调查、水下协作搜索、水下协同围捕、水下信息传输等各种协调控制任务,首先需要明确MAUV协同作业系统中各AUV的路径规划。然而,MAUV协同路径规划是一个包含复杂约束条件的大规模组合优化问题,需为系统内每台AUV规划从起点到终点的最优或接近最优的路径,进而通过协调组合策略使整个系统的组合路径最优,从而实现系统总消耗时间最短、能量消耗最少、转弯半径最小及加速度最大等目标[23-25]。
另一方面,MAUV集群协同完成某项任务时,一般要求多台AUV保持一定的队形执行任务,即在航行过程中控制AUV与群体中其他AUV的相对空间距离,实现AUV集群的编队形成和编队控制,系统中的多台AUV将从一个随机的初始状态过渡到一个整体有规律或符合设计要求的稳定状态。MAUV集群在行进过程中既要遵循一定的队形约束,又要适应当前的工作环境(例如,障碍物或空间的物理限制),具有相当的挑战性。
目前,MAUV的路径规划方法主要如下。
1)生物启发自组织神经网络算法。
生物启发自组织神经网络(Self-Organizing Map,SOM)算法包含3个步骤:首先,通过计算欧氏距离来选取获胜神经元;其次,在某个神经元获胜后,设计一个邻域函数,该邻域函数决定了输入神经元对获胜神经元和相邻神经元的影响力,其中获胜神经元所受的影响最大,邻近神经元所受的影响逐渐减小,邻域以外的神经元不受影响,影响力决定了在某次迭代过程中邻域神经元权重调整的大小;最后,通过更新三维权向量方法使AUV到达目标点[26]。
2)蚁群算法。
蚁群算法由意大利学者Dorigo提出,该算法通过模拟蚂蚁社会的分工与协作来进行寻优[27]。基于蚁群算法的MAUV协调路径规划包括路径优化和路径校核2部分。在路径优化之前,应对各AUV所要访问的路径点数量进行分配。为了保证各AUV的任务量相当,应尽可能均匀分配访问路径点。各路径点被访问的先后顺序由蚁群算法来实现,依次连接某台AUV的起点、被分配的路径点及其终点,就形成了该AUV的路径。对所有AUV执行同样的操作即可生成MAUV的路径。若路径点数量n恰好能被AUV数量m整除,则每个AUV将分配n/m个路径点;若n不能被m整除,则将余数再从首至尾逐一分配给各AUV,直到分配完为止。路径的长度可以通过计算路径中所有相邻路径点(包括AUV的起点和终点)之间的距离求得,将各AUV的路径长度求和即可得到MAUV的总路程[28-29]。
3)内螺旋覆盖算法。
内螺旋覆盖(Internal Spiral Coverage,ISC)算法是一种基于栅格地图的在线覆盖算法[30]。该算法采用简单的圆形机器人来覆盖环境,并假设机器人内部测距传感器(里程计)可以精确测量机器人的全局坐标。覆盖过程中,ISC算法分为2个阶段:边界探索阶段和在线覆盖阶段。在边界探索阶段,机器人从环境的任一顶点开始,采取右侧沿环境边界行走的方式运动一周。将机器人右侧接触传感器所在栅格赋值为0,表示该栅格无法覆盖;将机器人走过的栅格赋值为1,表示该栅格已被覆盖;将机器人左侧栅格赋值为2,表示下一圈要覆盖的栅格,即在线规划的覆盖路径。在边界探索阶段结束时即可获得环境边界,此时机器人完成了边界附近的一圈覆盖,并规划了下一圈的运动路径,然后进入在线覆盖阶段。在在线覆盖阶段,机器人沿边界探索阶段赋值为2的连续栅格运动,并将其赋值为l,同时将机器人左侧未赋值的栅格赋值为2。当第2圈覆盖结束时即可生成第3圈的覆盖路径,机器人以此方式向内螺旋完成所有区域的覆盖。如果环境内部存在障碍物,则障碍物会阻断规划的路径,导致赋值为2的栅格不连续。但该障碍物在下一圈的覆盖过程中会被机器人前方的接触传感器检测到。机器人将仍然采取右侧沿物体边界行走的方式绕障碍物运动,直到前方重新出现赋值为2的栅格,机器人才会回到原规划路径上继续覆盖。对于常见的单个矩形环境,应用该算法可以从环境边界向内螺旋完成覆盖[31-33]。
4)粒子群优化算法。
1995年,Kennedy和Eberhart提出了粒子群优化(Particle Swarm Oplimization,PSO)算法。在PSO算法中需要初始化一群随机粒子,然后这些随机粒子将追随当前的最优粒子在解空间中搜索,即通过迭代找到最优解[34]。根据PSO算法,李爱国等[35]提出了一种并行双层结构的MAUV协同路径规划算法。该算法分为2层:主层和子层。子层规划的首要任务是对每台AUV分别利用PSO算法规划各自的路径。由于系统内每台AUV的起点、终点及所处环境各不相同,所以最终每台AUV将产生不同的最优路径。主层规划的主要任务是对不同AUV的路径进行最佳组合,使组合内的多台AUV整体协同路径最优且彼此间无碰撞。在子层规划过程中,随着迭代次数的增加,标准的PSO算法将出现陷入局部最优和算法后期收敛速度缓慢的问题。为解决这些问题,首先,需采用自适应参数动态调整PSO算法中的惯性权重因子w以及学习因子c1和c2,并选择适当的路径规划评价函数,用以得到每台AUV的最优路径。然后,应利用结合差分进化(Differential Evolution,DE)算法的主层规划来计算系统整体的MAUV协同最优路径,即通过DE算法的变异、交叉和选择得到多台AUV之间无碰撞(AUV与障碍物,以及AUV之间)且系统消耗最小的组合最优路径。最后,对适应函数进行评估[36]。
执行任务时,MAUV编队中的各AUV应保持一定的队形,并与编队中的其他AUV保持一定的空间距离。MAUV编队控制可以借鉴移动机器人及水面船舶的编队控制方法,例如基于领航者—跟随者、基于行为和基于虚拟结构等方法[37-38],具体如下。
1)基于行为法。
基于行为的控制方法即通过设计机器人的基本行为及局部控制规则,从而产生期望的整体行为。编队控制器由一系列行为组成,每个机器人有基本的行为方式,每种行为方式有自己的目标或任务。一般情况下,机器人的行为包括避碰、避障、驶向目标和保持队形等。避碰即运动过程中避免机器人之间发生相互碰撞,避障即动态环境下编队机器人在运动过程中避免碰到障碍物,保持队形是编队控制中最基本的独立行为[39],驶向目标即实现预先指定的状态。Balch和Arkin首次提出了基于行为的控制方法,并利用2个循环策略设计了保持队形的行为控制器。Cao等[40]提出了子行为加权综合的控制实现方法,即对每个子行为分别求出控制变量,然后加权平均求得综合的控制变量。
2)人工势场法。
人工势场法即通过设计人工势场和势场函数来表示环境及队形中各机器人之间的约束关系,应用机器人所受到的障碍物斥力和目标点引力来构造势场,并以此为基础进行分析和控制,机器人则将从平面得到的最小势谷中选择运动方向。该方法的优点是计算简单且便于实时控制,特别是可以有效处理障碍物约束的避障避碰问题;缺点是势场函数难以设计,且存在局部极值点问题。Liang等[41]在障碍物环境下提出了非完整移动机器人基于势场函数的分布式控制器。这种分布式控制器能够保证编队机器人达到预设队形,同时避免相互碰撞以及与障碍物之间的碰撞[42]。
3)跟随—领航法。
跟随—领航法即在MAUV集群中指定某台机器人为领航者,其余为跟随者,跟随者将以一定的间距跟踪领航机器人的位置和方向[43-44]。该方法可以指定一个或多个领航者,但只能指定一个群体队形的领航者。跟随—领航者法有2种控制器形式:l-l控制器和l-ψ控制器。l-l控制器考虑的是3台机器人之间的相对位置问题,一旦跟随者与2个领航者之间的距离达到设定值,即可认为整个队形实现了稳定状态。而l-ψ控制器的目标是使跟随者与领航者之间的距离和相对转角达到设定值[45],可利用跟随—领航编队控制方法,将水下机器人编队控制问题转化为跟随者利用水听器跟踪领航者位置和航向的问题。针对MAUV编队中某台机器人的通信或机械故障,建立一种编队容错控制算法,可在机器人出现故障后自动重新调整编队,避免故障机器人的后继机器人掉队,由此实现编队的容错控制[46-47]。
4)虚拟结构法。
虚拟结构法主要应用于飞行器和人造卫星的编队飞行控制中。该方法的特点是机器人之间可以保持一定的几何形状,这样形成的刚性结构称为虚拟结构。虽然每个机器人相对于参考系统的位置不变,但其可以按照一定的自由度来改变各自的方向。MAUV将刚体结构上的不同参考点作为各自的跟踪目标就可以形成一定的队形:首先,需定义虚拟结构的期望动力学特性;然后,将虚拟结构的运动转化为每个机器人的期望运动;最后,得出机器人的轨迹跟踪控制方法[48-50]。
5)模型预测控制方法。
传统控制方法一般适用于具有明确模型和确定性环境的控制,而实际应用中的环境一般都是动态变化的,而且具有不确定性[51]。模型预测控制(Model Predictive Control,MPC)即基于动态环境变化和过程的不确定性,反复采用有限优化结果代替全局优化结果,由此实现优化与反馈的理想结合以及对信息的充分利用。通过在线滚动优化并结合实时信息的反馈校正,即可基于实际过程进行每个时刻的优化[52]。
MAUV系统对增强我国海洋资源探测能力,提高我国海洋国土的防御能力具有深远的政治意义、经济意义和战略意义[53-54]。目前,在MAUV路径规划和集群协同控制研究方面,主要存在以下研究难点,这也是后续研究的发展方向。
1)MAUV动态自适应技术。
获取了海洋环境不确定模型后,应研究水下航行器集群网络如何通过动态自适应的编队来获得整体的最优性能,主要研究内容包括:水中通讯受限、编队内航行器个体间的信息异步传输等问题;MAUV编队网络自适应控制研究;MAUV编队系统整体性能实现情况分析;最优控制的水下航行器路径规划方法研究[55-56]。
在航行过程中,可将离线规划的全局航线作为参考航迹,分别进行水平方向和垂直方向的路径规划,建立在线规划的目标函数。以某水下航行器的线性化横侧向运动方程作为等式约束,利用最小值原理构造哈密尔顿函数进行最优航迹解算,实现航迹的最优控制。同时,利用古典变分极值条件的微分方程组并结合梯度迭代法和一维搜索初值方法对其求解,即可得到更精确可行的三维水下航迹。
2)MAUV分布式控制技术。
MAUV编队控制与人工智能领域中多智能体的协同控制有一定的相似之处,多智能体协同控制技术可以实现快速集群控制[57]、牵引控制[58]、目标围捕[59-61]、沿给定路径的编队运动[62]、时延约束下的编队控制[63]等功能,故如何将单个航行器视为相对独立的智能体,并借鉴现有智能体协同控制方法实现MAUV集群编队控制是需要研究的重要内容。值得注意的是,多智能体系统的协作机制与系统的群体体系结构、个体体系结构、感知、通信和学习等方面均密切相关[64-65]。
为了求解分布式控制问题,需要研究如何利用智能体独立完成各自的子任务来实现相互之间的合作,并关注多个智能体之间如何协调运用各自的知识、目标、技能和计划来共同采取行动以解决问题。在进行MAUV集群分布式控制的同时,可以通过搭载任务传感器和各种声学设备(例如,多波束测深仪、侧扫声呐、CTD、超短基线定位系统、多普勒速度计程仪及水下声通讯系统等)来快速、有效地完成既定任务[66-67]。因此,基于分布式控制技术,可以实现MAUV群体行为控制及多个航行器的协同决策和管理,进而完成协同作业任务。
目前,MAUV系统是水下机器人技术的一个重要发展方向,通过机器人之间的合作与协调,MAUV系统不仅可以完善每台机器人的基本功能,还可以在机器人交互中进一步拓展智能行为,从而完成水下环境立体协同调查、水下协作搜索、水下协同围捕、水下信息传输等协作任务,有利于提高水下机器人的智能化水平并加快海洋化装备的研制进展。
本文针对MAUV系统的路径规划及协同控制问题,对其应用现状、科研进展及关键技术进行了系统的梳理和总结,并在此基础上探讨了后续研究方向。