【机器人栅格地图】基于A星和D星算法求解机器人栅格地图最短路径附matlab代码

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

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

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

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

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

⛄ 内容介绍

在栅格地图的支持下,针对局部路径规划中的极小值陷阱问题,提出了可用于任意形状障碍物的通用避障算法.仿真结果表明,在障碍物信息部分或完全已知的复杂环境下,移动机器人能以稳定,光滑,合理的路径快速运动到目标点处.

⛄ 部分代码

function h = Heuristic(node1, node2, scale)

    %% Manhattan Distance

    %h = scale*(abs(node1(1) - node2(1)) + abs(node1(2) - node2(2)));

    %% Chebyshev Distance

    %h = scale*max([node1(1) - node2(1), node1(2) - node2(2)]);

    

    %% Euclidean Distance

    h = scale*sqrt((node1(1) - node2(1))^2 + (node1(2) - node2(2))^2);   

    %h = scale*((abs(node1(1) - node2(1))) - (abs(node1(2) - node2(2))) + (sqrt(2)-2)*min(abs(node1(1) - node2(1)),abs(node1(2) - node2(2))));

    %dx = abs(node1(1) - node2(1));

    %dy = abs(node1(2) - node2(2));

    %if dy > dx

    %    h = scale*sqrt(2) * abs(node1(1) - node2(1)) + abs(node1(2) - node2(2)) - abs(node1(1) - node2(1));

    %else

    %    h = scale*sqrt(2) * abs(node1(2) - node2(2)) + abs(node1(1) - node2(1)) - abs(node1(2) - node2(2));

    %end

end

⛄ 运行结果

⛄ 参考文献

[1] 于晓天, 高秀花, 张俊,等. 基于分层栅格地图的移动机器人路径规划[J]. 导航与控制, 2017, 16(2):7.

[2] 李吉功, 冯宜伟, 郭戈. 基于栅格地图的通用机器人避障算法[C]// 中国自动化学会第21届青年学术年会. 0.

[3] 尤波, 李智, 丁亮,等. 一种基于栅格地图的移动机器人实时分层路径规划方法:.

⛳️ 完整代码

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

matlab科研助手

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

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

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

打赏作者

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

抵扣说明:

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

余额充值