☰
【无人水面舰艇】使用模型预测控制对 USV 进行自主控制(Matlab代码实现)
2026/10/10 3:00:21 网站建设 项目流程

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

🎁完整资源、论文复现、期刊合作、论文辅导及科研仿真定制事宜点击:

👉👉👉本文完整资源下载

⛳️座右铭:行百里者,半于九十。

⛳️赠与读者

👨‍💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能解答你胸中升起的一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。

或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎

💥第一部分——内容介绍

模型预测控制在无人水面舰艇自主控制中的应用研究综述

摘要

无人水面舰艇的自主控制是海洋智能装备领域的核心议题。模型预测控制因其显式处理约束、滚动优化和多变量协调的能力,已成为无人水面舰艇运动控制的主流方法之一。本文系统梳理了模型预测控制在无人水面舰艇自主控制中的研究进展,从预测模型构建、控制架构设计、约束与优化策略三个维度展开分析。研究表明,当前研究呈现出从线性模型向非线性混合模型演进、从单一跟踪向“规划-控制一体化”转变、从纯机理建模向数据驱动融合发展的态势。然而,计算实时性与控制精度的平衡、复杂海况下的鲁棒性保障、以及多艇协同的通信与计算约束,仍是制约模型预测控制大规模工程应用的关键瓶颈。本文在综述现有成果的基础上,指出了混合建模、自适应预测时域、事件触发机制等未来研究方向。

关键词:无人水面舰艇;模型预测控制;轨迹跟踪;避障;自主控制

1 引言

无人水面舰艇(Unmanned Surface Vehicle, USV)作为一种低成本、高机动性的海洋无人平台,在环境监测、资源勘探、搜救巡逻等领域展现出广泛的应用前景。随着任务复杂度的提升,USV的自主控制能力——尤其是其在动态海洋环境中的轨迹跟踪与安全避障能力——成为决定任务成败的核心技术。

模型预测控制(Model Predictive Control, MPC)是一类基于模型的滚动时域优化控制策略。其核心思想在于:在每个采样时刻,利用系统模型预测未来有限时域内的状态演化,求解一个满足约束的优化问题,仅执行最优控制序列的首个元素,并在下一时刻重复该过程。这一“预测-优化-滚动”的机制使MPC天然具备处理多变量耦合、状态与控制约束、以及多目标优化的能力。对于USV而言,这些特性恰好契合了其面临的核心控制需求:在欠驱动特性、环境扰动和避障约束并存的条件下实现精确轨迹跟踪。

近年来,MPC在自主海洋载具领域的应用研究呈现出显著增长态势。从公开文献的统计来看,相关研究已从早期的线性MPC仿真验证,拓展至非线性MPC的实船实验、数据驱动混合建模、以及多艇分布式协同等前沿方向。然而,该领域的研究成果分散于控制理论、海洋工程、机器人学等多个学科,缺乏从USV应用视角出发的系统梳理。

本文旨在填补这一空白。第2节分析USV运动控制的特殊性及其对MPC提出的核心要求;第3节从预测模型、控制架构和约束处理三个层面综述现有研究进展;第4节讨论当前面临的主要挑战;第5节展望未来研究方向。

2 无人水面舰艇运动控制的特殊性

理解USV对MPC的特殊需求,首先需要把握其运动控制问题的固有特征。

欠驱动性与非线性耦合。大多数USV仅配备推进器和舵(或差速推进器),仅能直接控制纵向推力和偏航力矩,而横向运动不可直接驱动。这种欠驱动特性使得轨迹跟踪问题在数学上比全驱动系统复杂得多。同时,USV的运动学与动力学模型呈现显著的非线性特征,尤其在高速机动和大幅转向时,线性化模型的精度损失不可忽略。

环境扰动的持续性与随机性。风、浪、流对USV的作用力具有持续性和随机性双重特征。与工业过程控制中相对确定的扰动不同,海洋环境扰动既包含可建模的定常分量(如均匀流),也包含不可精确预测的随机分量(如波浪诱导的振荡)。这要求控制器具备在线适应能力,也使得模型失配成为常态而非例外。

避障约束的硬性要求。USV面临的障碍物包括静态障碍(礁石、浅滩、固定设施)和动态障碍(其他船舶、漂浮物)。与轨迹跟踪的软性能指标不同,避障是安全性硬约束——任何一次碰撞都可能意味着任务失败甚至平台损失。此外,在开阔水域还需遵循国际海上避碰规则,这引入了规则约束这一特殊维度。

计算资源的严格限制。USV通常搭载嵌入式计算平台,其算力、功耗和散热条件远不及岸基或舰载系统。MPC的在线优化特性使其计算负担本就高于PID或滑模控制,而USV的实时性要求又极为严格(控制周期通常在秒级甚至亚秒级),计算效率因此成为不可回避的设计约束。

上述特征共同构成了USV自主控制的“约束三角”:精度、鲁棒性、实时性三者之间存在内在张力。MPC的吸引力在于,它提供了一个原理上能够同时处理这三者的统一框架——通过优化目标的灵活性、约束的显式处理和滚动时域的信息更新,在理论上实现三者的协调。但理论上的可能性如何转化为工程上的可行性,正是当前研究的核心问题。

3 模型预测控制在USV自主控制中的研究进展

3.1 预测模型的构建与演进

预测模型的精度直接决定MPC的控制性能。USV的预测模型构建经历了从简化机理模型到混合增强模型的演进路径。

机理模型的基础地位。早期研究普遍采用三自由度(纵荡-横荡-偏航)水平面模型,基于Fossen的船舶运动建模框架。该模型将水动力导数视为常参数,在低速和缓变工况下具有可接受的精度。其优势在于结构清晰、参数物理意义明确,便于控制器设计和稳定性分析。然而,机理模型的固有局限在于:水动力系数随航速、吃水和环境条件变化,固定参数模型在复杂工况下会出现显著预测偏差。

数据驱动补偿的兴起。为弥补机理模型的不足,近年研究引入了数据驱动方法进行在线补偿。一种典型思路是利用神经网络学习未建模动态或模型残差。例如,有研究采用多结构径向基函数神经网络构建USV预测模型,将前向网络与递归网络结合,在训练过程中在线调整参数,进而嵌入非线性MPC框架。类似地,LSTM网络被用于捕捉USV在不同操作模式下的动态行为,使MPC控制器能够在不依赖多模型切换策略的情况下适应直线航行、转向、点镇定等多种工况。

混合模型策略的优势。当前研究趋势并非以数据驱动完全替代机理模型,而是走向两者的融合。一种有代表性的做法是保留简化机理模型作为基础,利用Bagging-Stacking集成学习机制训练元神经网络来预测未建模误差,将预测结果叠加至机理模型之上。这种混合策略的优势在于:机理模型提供了可解释的基线预测和泛化保障,数据驱动组件则负责捕捉机理模型无法描述的局部动态和未建模效应。从控制设计的角度,混合模型也更容易保持优化问题的凸性或弱非线性,从而控制计算负担。

3.2 控制架构的分化与整合

MPC在USV控制中的架构设计呈现出“分化-整合”的辩证发展。

分层架构的成熟与局限。传统且成熟的做法是分层控制:上层制导律(如视线制导)根据路径和障碍物信息生成期望航向,下层MPC控制器跟踪该航向指令。这种架构的优点是模块化程度高、各层可独立调试。然而,其局限同样明显:制导律与控制器之间的信息割裂导致避障行为往往滞后——制导律发现障碍物并切换航向时,控制器可能需要执行大幅转向才能规避,既增加了能耗,也降低了轨迹平滑性。

一体化MPC的探索。为克服分层架构的缺陷,研究者提出将避障约束直接嵌入MPC优化问题的“规划-控制一体化”方案。在这类框架中,障碍物被表征为对USV位置的状态约束或对目标函数的惩罚项,MPC在滚动优化过程中同时完成轨迹跟踪和避障决策。例如,有研究提出系统化的设计算法,将水面边界和障碍物统一表征为可行域的约束集合,使非线性MPC制导律能够在跟踪路径的同时保证避障。这种一体化方案在理论上更优,但代价是优化问题的复杂度显著上升,对实时计算构成更大挑战。

双向耦合与自适应协调。近期研究进一步探索了制导与控制的“双向自适应”机制。有研究提出bidirectionally coupled APF-MPC框架,其中人工势场生成的参考轨迹的曲率变化率动态调整MPC的预测时域,而MPC的跟踪误差和障碍物距离又反过来在线调节APF的斥力增益。这种双向耦合使规划器能够感知控制器状态,控制器也能预判规划器意图,在路径最优性与动态可行性之间实现更灵活的权衡。

3.3 约束处理与优化策略

USV的约束条件具有多样性:控制输入饱和、状态安全边界、避碰距离阈值、以及操舵速率限制。MPC的约束处理能力是其相对于其他控制方法的核心优势,但约束的“刚性”与优化问题“可行性”之间的张力也需要精心管理。

硬约束与软约束的权衡。避碰约束通常以硬约束形式施加,确保任何优化解都不违反安全距离。然而,在极端场景下(如狭窄水域中障碍物密集),硬约束可能导致优化问题不可行。因此,部分研究采用控制障碍函数构建硬约束以保证安全性,同时将跟踪误差等性能指标置于软约束或目标函数中。

计算效率的提升策略。非线性MPC的计算负担主要来源于非凸优化问题的在线求解。为满足USV的实时性要求,研究者探索了多种效率提升路径。其一,线性化策略:在每一采样时刻对非线性模型进行局部线性化,将优化问题转化为二次规划,牺牲部分最优性换取计算速度。其二,事件触发机制:仅在必要时(如状态偏离预测较大或障碍物接近)才求解完整优化问题,其余时刻保持控制输入或采用轻量级更新。其三,显式MPC:将优化问题的解离线计算为状态的分段仿射函数,在线仅需查表,但该方法受限于状态维度。

约束与目标的协调。在避障场景中,MPC的目标函数通常需要在路径跟踪精度和避障“保守性”之间取得平衡。过于激进的避障策略导致不必要的转向和能耗,过于保守则可能逼近安全边界。有研究将推进能量惩罚与控制能量惩罚同时纳入成本函数,在保证安全的前提下最小化航行能耗。这种多目标优化能力正是MPC框架灵活性的体现。

4 当前研究的主要挑战

尽管MPC在USV控制中已取得显著进展,但若干关键挑战仍制约着其从学术研究向工程应用的转化。

计算实时性与模型精度的根本矛盾。高精度预测模型(如非线性机理模型加数据驱动补偿)能提升控制性能,但使优化问题复杂化,计算时间延长。嵌入式平台的算力限制使得这一矛盾在实船实验中尤为突出。现有研究大多在仿真环境中验证算法,少数实船实验也往往在简化场景或宽松的实时性要求下进行。如何在不显著牺牲精度的前提下实现实时计算,仍是未完全解决的问题。

复杂海况下的鲁棒性保障。海洋环境的扰动具有持续性和随机性,且可能超出模型预测的置信范围。鲁棒MPC和管式MPC在理论上提供了应对有界扰动的框架,但其保守性可能导致控制性能退化,且在扰动统计特性未知或时变的情况下,鲁棒性的“硬保障”难以实现。多数现有研究在扰动建模时假设了特定的统计分布或有界范围,这一假设在真实海况中的有效性缺乏系统验证。

多艇协同的计算与通信约束。当MPC从单艇扩展至多艇协同(编队保持、协同避碰、协同搜索)时,问题维度随艇数增加而快速增长。分布式MPC通过艇间通信和迭代协商来分解优化问题,但通信延迟、丢包和带宽限制会破坏分布式优化的收敛性和最优性。现有协同MPC研究多在理想通信条件下进行仿真验证,对通信约束的考虑尚不充分。

规则约束的形式化与嵌入。国际海上避碰规则为USV的避碰行为提供了规范性框架,但规则本身的语义模糊性和场景依赖性给形式化建模带来困难。将“右舷对右舷”“追越”“交叉相遇”等规则条款转化为可嵌入MPC优化问题的数学约束,需要解决规则优先级、冲突消解和场景识别等一系列问题。部分研究通过人工势场函数来编码规则意图,但这种编码方式与规则本意之间的偏差需要进一步审视。

5 未来研究方向

基于上述分析,模型预测控制在USV自主控制领域的未来发展可能聚焦于以下方向。

混合预测模型的深度化与自适应化。机理模型与数据驱动的融合不应止步于简单的残差补偿。未来的方向包括:利用物理信息神经网络将运动方程的物理约束嵌入学习过程,使数据驱动组件在有限数据下仍能保持物理一致性;发展在线自适应机制,使模型参数能够随工况变化和任务阶段动态调整,而非依赖离线训练。

预测时域的自适应调度。固定预测时域是当前MPC设计的常规做法,但不同任务阶段(直航、转向、避障)对预测视野的需求差异显著。自适应预测时域——根据任务紧迫性、环境复杂度和计算资源余量动态调整——有望在控制品质和计算效率之间实现更优的帕累托改进。前述双向耦合APF-MPC中曲率驱动时域调整的思路为此提供了有意义的探索。

事件触发与分布式计算的深度融合。事件触发机制可以降低MPC的在线计算频率,分布式计算可以将优化问题分解至多艇或多处理器并行求解。两者的结合——仅在必要时触发通信和优化,且优化任务由艇群分布式完成——可能为多USV协同控制提供可扩展的计算框架。这一方向需要解决触发条件的分布式判定、通信中断下的鲁棒性保障等新问题。

面向规则嵌入的约束生成方法。与其将避碰规则间接编码为势场函数,不如探索从规则语义到数学约束的系统化转换方法。知识图谱或时序逻辑可能为规则的形式化提供工具,使MPC优化问题中能够直接施加与规则条款对应的约束,同时保持优化问题的可解性。

从仿真验证走向系统化实验验证。该领域的一个显著短板是实验验证的不足。建立标准化的USV-MPC实验基准,包括典型场景库、性能评价指标和硬件在环测试平台,将有助于研究成果之间的可比性,也将加速从算法到产品的转化。

6 结语

模型预测控制在无人水面舰艇自主控制中的应用,正处于从理论探索向工程实践过渡的关键阶段。其核心吸引力在于提供了一个原理上能够同时处理USV控制中精度、鲁棒性和约束满足的统一框架。然而,这一理论优势的工程兑现受到计算资源、环境不确定性和系统复杂性的多重制约。当前研究在混合建模、架构整合和约束优化方面已取得可观进展,但实时计算与模型精度的深层矛盾、复杂海况下的鲁棒性保障、以及多艇协同的可扩展性,仍是需要持续攻关的难题。

展望未来,模型预测控制与数据驱动方法的深度融合、自适应调度策略的精细化、以及面向规则约束的形式化方法,可能成为推动该领域突破的关键方向。对于USV这一具有显著欠驱动、强扰动和硬安全约束特征的平台,MPC的价值不仅在于其性能上限,更在于它为系统化处理这些耦合挑战提供了结构化的思维框架和可扩展的算法基础。

📚第二部分——运行结果

主函数部分代码:

%Clean the workspace and close the open figures clear close all %Boat and simulation parameters m = 37; %Mass of the boat D = 0.7; %Distance between the motors and the center of mass I = 0.1; %Moment of inertia (arbitrary value, should be identified) k = 0.1; %Viscosity coefficient (arbitrary value, should be identified) ky = 0.1; %Viscosity coefficient on the y axis (arbitrary value, should be identified) Tfinal = 150; %Total simulation time Te = 0.1; %Sampling period %Vectors used to hold simulation data x = zeros(9, ceil(Tfinal/Te)); %State vector u = zeros(2, ceil(Tfinal/Te)); %Input vector delta_u = zeros(2, ceil(Tfinal/Te)); %Input increment vector a = zeros(3, ceil(Tfinal/Te)); %State vector a_ref = zeros(1, ceil(Tfinal/Te)); i = 1; %Loop index %Ordered list of waypoints x_list = [2 4 32 40 25 10 2]'; %X coordinates of the waypoints y_list = [2 15 17 7 0 -5 2]'; %Y coordinates of the waypoints a_list = zeros(7,1); %Angle of the boat between two successive waypoints current_obj = 2; %As the boat starts in the first waypoint, the current objective is the next %ie. the second waypoint %Compute all the angles between two successive waypoints %The angles returned are between -pi and pi for j=1:7 a_list(mod(j,7)+1,1) = angle(complex(x_list(mod(j,7)+1)-x_list(j), y_list(mod(j,7)+1)-y_list(j))); if a_list(j,1) < 0 a_list(j,1) = a_list(j,1); end end %Objectives list containing X,Y and Theta coordinates r_list = [x_list y_list a_list]; nb_obj = size(r_list,1); %Number of objectives

🎉第三部分——参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。(文章内容仅供参考,具体效果以运行结果为准)

[1]肖咏昕,向先波,孔典,等.面向无人艇对接回收的STag标记视觉导引技术[J/OL].中国舰船研究:1-9[2024-07-18].https://doi.org/10.19693/j.issn.1673-3185.03549.

[2]葛泉波,薛子建,张明川,等.基于VMD-WHHO-BLS的无人船位姿预测[J/OL].控制理论与应用:1-13[2024-07-18].http://kns.cnki.net/kcms/detail/44.1240.TP.20240607.1013.034.html.

​​​​​​🌈第四部分——本文完整资源下载

资料获取,更多粉丝福利,MATLAB|Simulink|Python|数据|文档等完整资源获取

本文完整资源下载

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询