路径规划算法:基于黄金正弦优化的路径规划算法- 附代码

news/2024/11/24 9:51:39/

路径规划算法:基于黄金正弦优化的路径规划算法- 附代码

文章目录

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

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

1.算法原理

黄金正弦算法原理请参考:https://blog.csdn.net/u011835903/article/details/111699194

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/188693.html

相关文章

测试人挣破年入20万的束缚,从第一个python+selenium项目开始!

今天整理一下实战项目的代码共大家学习。(注:项目是针对我们公司内部系统的测试,只能内部网络访问,外部网络无法访问) 问: 1.外部网络无法访问,代码也无法运行,那还看这个项目有啥用 2.如何学…

多传感器融合SLAM --- 1.多传感器融合的基础知识

目录 1 什么是多传感器融合 1.1 有哪些传感器 1.2 它们的优缺点有哪些

Go 字节跳动—从需求到上线全流程

走进后端开发流程 整个课程会带大家先从理论出发,思考为什么有流程 大家以后工作的团队可能不一样,那么不同的团队也会有不同的流程,这背后的逻辑是什么 然后会带大家按照走一遍从需求到上线的全流程,告诉大家在流程的每个阶段&am…

nvidia 专业显卡解码能力

专业显卡问题 p620 解码:有时我们经常遇到专业显卡,专业显卡和非专业显卡在使用opengl 等底层调用时表现不一样,值得注意的是:专业显卡解码能力到了p400 以上才有显著的提升,p620 家族为开始又有提升,p620…

P440测距模块简介

PulsOn 440 模块(简称 P440)是一种波段在 3.1G 到 4.8GHz 之间的超宽带无线收发器,它可以实现如下功能:采用双向飞行时间(TW-TOF)方式在 2 个或者 2 个以上的模块之间进行测距,测量准确度可达 2…

ElementUI的NavMenu 导航菜单水平展开左侧菜单时,默认打开子菜单(open方法:手动打开子菜单)

文章目录 情景知识点htmljs效果 情景 ElementUI的NavMenu 导航菜单model为vertical(默认)时,可以通过控制collaspe来控制菜单的水平折叠与展开,但是开启折叠的时候子菜单是关闭状态,现在是希望水平展开菜单的同时&…

《数字图像处理》题库5:计算题 ②

前言 这是我在学习数字图像处理这门课程时,从网络上以及相关书籍中搜集到的一些题目, 这些题目主要是针对期末考试的。 做题之前你需要注意以下几点: 这篇文章整理了第5种题型,即计算题的第2部分。由于题目或答案中会出现许多的公…

http 400错误解决

产品上线后,在试单过程中,出现一个硬bug,我们系统接入的是百度系统,出现一个http 400错误,这硬bug难倒10几个英雄汉。接下来描述下问题,及我们解决问题的方法及教训: 我们的系统与百度系统是专…