码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Matlab的移动机器人导航遗传算法仿真分析寻优路径规划和种群进化曲线可视化


    全文链接:http://tecdat.cn/?p=27864

    原文出处:拓端数据部落公众号

    作者:Haohe Jia

    随着机器人技术的快速发展,室内轮式机器人逐渐成为了相关研究人员的重点关注对象,应用场景主要是家庭等室内环境,轮式机器人完成复杂任务的基石是完善的路径规划技术,对该技术的深入研究,能够提高机器人的智能化水平,促进该学科的快速发展。虽然目前全球范围都在对机器人路径的优化问题进行研究并取得了一些成绩,但是室内小范围区域路径规划的研究还是一个难点,还有很多问题有待解决,比如说,室内区域相对狭小,周围的环境变化频繁会对机器人路径规划的结果产生较大影响;路径规划还需要机器人具有很多复杂的操作,如变道,转弯,交叉路口操作,避障及最优化等,路径规划对实时性和鲁棒性要求很高。

    解决方案

    任务/目标

    根据模型及实验收集的数据来建立模型优化导航效果。

    遗传算法路径规划是一种基于自然选择和自然遗传等进化理论求取最优路径问题,是遗传算法在机器人路径规划领域的应用问题。因此,设计遗传算法求最优路径问题所使用的步骤和基本遗传算法类似,包括个体编码方式的选取、初始种群的选择、适应度函数的设计、遗传算子的设计、控制参数的设定、终止条件的设定等。

    Step1:建立机器人运动空间的栅格地图,并采用序号法对栅格进行编号;

    Step2:确定机器人路径规划的编码方式、适应度函数、终止条件等;

    Step3:设置机器人的起始位置和终止位置,并使用中点法产生初始路径;

    Step4:进行选择、交叉、变异、修复的操作;

    Step5:计算适应度值,并判断是否已经达到终止条件,若满足则进入 step6;否则,返回到step4,继续循环遗传操作;

    Step6:得出机器人从起始位置到终止位置的最优路径。

    Matlab仿真分析

    Matlab 是由 Mathworks 公司研发一种高级语言,可以用于科学和工程计算、系统仿真等,这款软件已经成为全世界范围内应用最为广泛的一款工程计算软件,它可以以矩阵运算为平台,给用户提供了一个融合了可视化、计算、程序设计等人机交互式的环境。Matlab 的最重要的特征之一是它自带各种工具箱,可以解决各种特定的问题。遗传算法工具箱是以 Matlab 矩阵函数为基础、以遗传算法为目标建立的一套通用工具,它是以 M 语言写成的函数,是遗传算法各个步骤的集合。用户可根据实际需要借用这套工具箱进行相关程序的编程,省去了大多繁琐的步骤。

    环境1:10×10 栅格地图,黑色表示障碍物,白色表示自由空间,1 表示起始点,100 表示终止点。

    设定种群的大小为50,最大进化代数为100,进行若干次实验,两图分别表示某次寻优实验路径规划示意图和种群进化曲线

    环境2:20×20 栅格地图,黑色表示障碍物,白色表示自由空间,1 表示起始点,400 表示终止点。

    设定种群的大小为80,最大进化代数为200,进行若干次实验,两图分别表示某次寻优实验路径规划示意图和种群进化曲线

    环境3:30×30 栅格地图,黑色表示障碍物,白色表示自由空间,1 表示起始点,100 表示终止点。设定种群的大小为80,最大进化代数为200,进行若干次实验,两图分别表示某次寻优实验路径规划示意图和种群进化曲线

    由上图可知:在环境 1 中,算法迭代了 28 次后搜索到最优解,大小为 15.071;在环境 2 中,算法迭代了 43 次后搜索到最优解,大小为 62.728;在环境 3 中,算法迭代了 68 次搜索到最优解,大小为 43.355,在随机挑选的三种环境下均能找到最优路径,证明了本遗传算法在机器人路径规划方面的有效性和通用性,并且,求得最优路径最低的进化代数随着环境的复杂程度增加而增加。从图中可以看出,初始路径的长度和最短路径的长度较接近,这是因为本算法采用了中点法产生了初始路径。这种方法无疑减少了进化代数,增加了算法运行的效率。

    关于作者

    在此对Haohe Jia对本文所作的贡献表示诚挚感谢,他擅长Matlab仿真、视觉处理、神经网络、数据分析 。


    最受欢迎的见解

    1.用R语言模拟混合制排队随机服务排队系统

    2.R语言中使用排队论预测等待时间

    3.R语言中实现马尔可夫链蒙特卡罗MCMC模型

    4.R语言中的马尔科夫机制转换(Markov regime switching)模型

    5.python中使用马尔可夫决策过程(MDP)动态编程来解决最短路径强化学习问题

    6.用R语言模拟混合制排队随机服务排队系统

    7.Python基于粒子群优化的投资组合优化

    8.R语言几何布朗运动 GBM模拟股票价格优化建立期权定价概率加权收益曲线可视化

    9.R语言进行支持向量机回归SVR和网格搜索超参数优化

  • 相关阅读:
    欲知己之所防,先知彼之所攻——论Hook 技术的攻防对抗
    基于SqlSugar的开发框架循序渐进介绍(8)-- 在基类函数封装实现用户操作日志记录
    想要精通算法和SQL的成长之路 - 全排列
    记录一下在Pycharm中虚拟环境的创建
    软件开发中常见的设计原则
    CHB-MIT波士顿儿童医院癫痫EEG脑电数据处理-通道选择(五)
    JavaScript 运行时比较: Node.js、 Deno 和 Bun
    浅谈Android输入法(IME)架构
    Springboot+学生作业管理系统 毕业设计-附源码251208
    从零安装pytorch并在pycharm中使用
  • 原文地址:https://blog.csdn.net/qq_19600291/article/details/125992536
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号