【路径规划】一种考虑COLREGs人工势场的船舶运动规划算法研究附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测 雷达通信  无线传感器

信号处理 图像处理 路径规划 元胞自动机 无人机

⛄ 内容介绍

水面无人艇(Unmanned Surface Vehicle,USV)具有模块化,无人化以及智能化等优势,通过搭载不同的传感器或执行设备,可以执行各种复杂的作业任务,在海洋探索开发和军事应用领域得到了广泛应用.USV需要在高度动态和不可预测的海洋环境中达到高级别的自主导航,故高效,可靠并能够实时避障的路径规划是至关重要的.论文主要研究了具有静态环境信息的全局路径规划以及在航行过程中遇到未标记障碍时的实时动态避障.论文首先简要介绍了国内外路径规划技术的研究现状以及路径规划的相关概念,讨论了USV路径规划的特点和一般步骤,然后重点研究了USV全局路径规划方法以及基于国际海上避碰规则(Convention on the International Regulations for Preventing Collision at Sea,COLREGs)的实时动态避障

⛄ 部分代码​

%TEST4POTENTIAL Summary of this function goes here

%   Detailed explanation goes here

global mat_point

global end_point

global ship7

global parameter

global targetship

tmp_ship=ship7;

potential = 0;

for i = 1 : 1

tmp_ship = shipdynamic(tmp_ship,u(i*2));

sum_cost_obstacles=0;

for j=1:size(mat_point,1)

    distance_LA2OB=norm(mat_point(j,1:2)-tmp_ship.position);

        if distance_LA2OB>=mat_point(j,5)*mat_point(j,3)

            distance_LA2OB=inf;

        end

        if distance_LA2OB<=mat_point(j,5)*mat_point(j,3)

            sum_cost_obstacles=sum_cost_obstacles+exp(-mat_point(j,6)*distance_LA2OB^2)/parameter.prediction_step;

        end

control_action = (end_point-tmp_ship.position);

potential = potential+(-exp(-norm(-(control_action)).^(2)*parameter.endbeta)+sum_cost_obstacles)*1; 

end

for j=1:size(targetship,2)

    distance_LA2OB=norm(targetship(j).predicted_position(i,1:2)-tmp_ship.position);

        if distance_LA2OB>=parameter.safecv

            distance_LA2OB=inf;

        end

        if distance_LA2OB<=parameter.safecv && distance_LA2OB>parameter.dangercv

            target_ship=targetship(j);

            target_ship.postion=targetship(j).predicted_position(i,1:2);

            potential=potential+target_ship_potential(tmp_ship,target_ship);

        end

        if distance_LA2OB<=parameter.dangercv

            target_ship=targetship(j);

            target_ship.postion=targetship(j).predicted_position(i,1:2);

            target_ship.situation=0;

            potential=potential+target_ship_potential(tmp_ship,target_ship)/parameter.prediction_step;

        end

end

u(i*2)*180/pi;

end

potential;

end

⛄ 运行结果

⛄ 参考文献

[1]王硕. 基于COLREGs的无人艇路径规划算法研究[D]. 哈尔滨工程大学.

❤️ 关注我领取海量matlab电子书和数学建模资料

❤️部分理论引用网络文献,若有侵权联系博主删除

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

matlab科研助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值