路径规划算法:基于供需优化的路径规划算法- 附代码

news/2025/2/11 22:44:04/

路径规划算法:基于供需优化的路径规划算法- 附代码

文章目录

  • 路径规划算法:基于供需优化的路径规划算法- 附代码
    • 1.算法原理
      • 1.1 环境设定
      • 1.2 约束条件
      • 1.3 适应度函数
    • 2.算法结果
    • 3.MATLAB代码
    • 4.参考文献

摘要:本文主要介绍利用智能优化算法供需算法来进行路径规划。

1.算法原理

供需算法原理请参考:https://blog.csdn.net/u011835903/article/details/118800934

1.1 环境设定

在移动机器人的路径优化中,每个优化算法的解代表机器人的一条运动路径。优化算法会通过优化计算在众多路径中找出一条最优路径。
优化算法的设定必须和机器人运动环境模型相对应。不失一般性,假设在用栅格法对机器人运动环境建模后得出的结果是 m×n 的矩形区域,坐标值从 1 开始,如图1 。其中坐标原点栅格代表机器人的初始位置,坐标 (m,n)对应的栅格代表机器人的移动目标位置。优化算法设定的一个重要内容是确定优化算法的数学表达形式,在这里这个问题转化为用一个向量表示机器人的移动路径。经过分析发现,尽管栅格法建立的模型对空间进行了离散化,但本质上机器人的移动路径依然是连续的。

在这里插入图片描述

图1.栅格地图

1.2 约束条件

对于机器人的路径优化来说,其运动路径必须局限在栅格空间内,即搜索不能越过栅格的矩形边界。此外,还应受障碍物的限制,即机器人的运动轨迹不能穿过存在障碍物的栅格区域。

1.3 适应度函数

在本文的建模方法中,本文路径规划目标是路径长度最短。路径的长度可以表示为:

L ( P a t h ) = ∑ i = 0 n − 1 ( x l i + 1 − x l i ) 2 + ( y l i + 1 − y l i ) 2 (1) L(Path) = \sum_{i=0}^{n-1}\sqrt{(xl_{i+1} - xl_i)^2 + (yl_{i+1} - yl_{i})^2}\tag{1} L(Path)=i=0n1(xli+1xli)2+(yli+1yli)2 (1)
其中(x,y)是路径中间点的坐标

利用供需算法对上式进行寻优,找到最短路径。供需算法参数设定如下:

%% 供需算法参数设置
dim=length(noLM);%维度,即为非障碍物个数。
numLM0=round((EndPoint(1)-StartPoint(1))/4);%每次迭代选取的的中间路径点个数,可调
lb=0;%下边界
ub=1;%上边界
Max_iteration = 100;%最大迭代次数
SearchAgents_no = 30;%种群数量
fobj = @(x)fun(x,noS,noE,numLM0,net);%适应度函数

2.算法结果

在这里插入图片描述

3.MATLAB代码

本程序中,支持1.地图任意创建保存。2.其实点任意更改。

4.参考文献

[1]罗阳阳,彭晓燕.基于改进PSO的四轮移动机器人全局路径规划[J].计算机仿真,2020,37(07):373-379.

[2]鲁丹. 粒子群算法在移动机器人路径规划中的应用研究[D].武汉科技大学,2009.


http://www.ppmy.cn/news/351026.html

相关文章

使用漫步者wt800蓝牙耳机连接谷歌浏览器,自动关机

chrome浏览器 输入: chrome://flags/#hardware-media-key-handling 把Hardware Media Key Handling设置成disable ,重启浏览器.解决.

漫步者W800bt,无线蓝牙链接电脑 用浏览器看视频 自动关机

漫步者W800bt,无线蓝牙链接电脑 用浏览器看视频 自动关机 原因是谷歌浏览器新增的音量调节界面插件的问题,解决方法: 进这个网址设置 chrome://flags/#hardware-media-key-handling 里面Hardware Media Key Handling 改成disabled&#xff0…

浏览器播放视频导致蓝牙耳机断开关机解决(漫步者W800BT)

参考链接:https://blog.csdn.net/weixin_44467131/article/details/111328638 原因:浏览器对硬件的的访问控制。 edge/chrome://flags搜索 media,找到这个,然后选择 Disabled,重启浏览器即可。

从增强器Advisor窥探AOP原理

Spring创建Aop代理过程 AbstractAutowireCapableBeanFactory Object createBean(String beanName, RootBeanDefinition mbd, Nullable Object[] args)Object resolveBeforeInstantiation(String beanName, RootBeanDefinition mbd)Object applyBeanPostProcessorsBeforeInsta…

忘记word密码?在线找回教程来帮你!

如果您正在使用word文档,却发现无法打开编辑,或者提示密码错误,别担心!有最简单的办法,不用下载软件,手机电脑都可以用,就是百度搜索“密码帝官网”,然后点击“立即开始”&#xff0…

Bloodshed Dev-Cpp安装方法

今天小编来分享一下如何安装Bloodshed Dev-Cpp 1、打开360软件管家或其他安装用软件,这里以Bloodshed Dev-Cpp为例 搜索Bloodshed Dev-Cpp 安装完成后打开安装包 加载完成后将语言选择为English(安装包没有中文)并单击OK 同意协议 按自己需求…

拍女神用什么镜头?数据来说话

2019独角兽企业重金招聘Python工程师标准>>> 春天到了,又到了拍妹子的季节 相信不少程序猿也是摄影达人,本文的前提是你有个妹子,哈哈哈~~~ 可选哪只镜头呈现最美的她呢,你可以说85mm柔化她的美,也可以用35…

在后大流行时代利用Airbnb实现逆周期增长

回望近十年共享经济的发展历程,谁也不曾想到,最被看好的共享经济代表Uber竟在连年亏损后忍痛IPO,上市首日即破发,而主打「互联网房地产」模式的独角兽WeWork则上市失败,迅速失血,一度走到破产边缘。作为“共…