热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

遍历所有点的最短路径matlab_全覆盖路径规划及其在slam无人车适用方案

基本概念:CCPP:CompleteCoveragePathPlanningCCPP需解决的关键问题:遍历工作区域内除障碍物以外的全部区域在遍历过程中有

基本概念:

CCPP:

Complete Coverage Path Planning

CCPP需解决的关键问题:

遍历工作区域内除障碍物以外的全部区域

在遍历过程中有效避开所有障碍物

在遍历过程中要尽量避免路径重复,缩短移动距离

CCPP技术指标:

区域覆盖率

路径重复率

总行程

死区:

是指它的周边相邻区域,或者是边界,或者是障碍物,或者是已覆盖过的区域

全覆盖路径规划问题本质:

在栅格地图中,全覆盖路径规划问题就演变为寻找机器人的下一个移动位置,只有准确找出了该位置,才能使机器人自主规划出一条切实可行的无碰撞且重复率低的移动路径。

路径搜索

路径表达:以环境模型中的结点序列组成或由直线段序列组成

路径平滑:根据机器人运动学或动力学约束,形成机器人可跟踪执行的运动轨迹

运动学约束:路径轨迹的一阶导数应连续

动力学约束:路径轨迹的二阶导数应连续

CCPP方法分类

1 行为覆盖法:随机碰撞法

原理:机器人根据简单的移动行为,尝试性地覆盖工作区域,如果遇到障碍物,则执行对应的转向命令

缺点:行为全覆盖算法工作效率低,路径规划策略过于简单,面对复杂地形机器人经常无法逃离死区

随机覆盖法,也称为随机碰撞式导航,但这并非是指机器人真正与环境中的物体产生碰撞,也非毫无章法的在地板上随机移动,随机覆盖法是指机器人根据一定的移动算法,如三角形、五边形轨迹尝试性的覆盖作业区,如果遇到障碍,则执行对应的转向函数。这种方法是一种以时间换空间的低成本策略,如不计时间可以达到 100%覆盖率。随机覆盖法不用定位、也没有环境地图,也无法对路径进行规划,所以其移动路径基本依赖于内置的算法,算法的优劣也决定了其清扫质量与效率的高低。

31b4b861b438db84e2a93ac4f3adefc3.png

2 区域分割法

原理:为了使机器人能够逃离死区,同时减少算法的计算量,Jin等提出一种基于时空信息的全局导航与局部导航组合的算法。

优点:

该算法一方面能够通过局部计算代替不必要的全局计算,减少了实时决策时局部最优导航的计算量;

另一方面通过分层的方式使机器人能够逃离死区。

缺点:

局部与全局的转换过程中,当周围没有未覆盖的区域时,机器人需要扩大邻近区域的面积来寻找未覆盖区域,这将导致覆盖效率的降低,尤其是当未覆盖区域距离机器人较远时

3 神经网络法

原理:利用神经网络的自学习、并行性等特性,增强机器人的“智能”,提高覆盖效率。受神经网络结构与栅格地图单元类似的启发,加拿大学者 S. X.Yang等提出一种基于生物启发神经网络的移动机器人全覆盖路径规划算法,将需要全覆盖的二维栅格地图单元与生物启发神经网络的神经元一一对应起来,机器人实现全覆盖的实时路径规划是由神经元的活性值和机器人的上一位置产生的。该算法完全根据栅格地图单元的性质 (未搜索单元、已搜索单元还是障碍物),决定神经元的输入,直接计算神经元的活性值,不存在神经网络学习过程

优点:算法实时性好,同时可以自动避障与逃离死区。

缺点:但是基于生物启发神经网络的全覆盖算法计算量大,同时此种方法中神经网络模型的衰减率等参数没有最优值,在实现算法时只能通过反复实验确定,参数的设定存在人为不确定因素,从而影响其在线应用

4.路径规划式

规划式导航需要建立起环境地图并进行定位。对路径规划的研究已经持续很多年了,也提出了很多种类的方法。不同的方法有各自的优缺点,适用范围各不相同,没有一种路径规划方法能适用于所有的环境信息。其中的人工势场法、栅格法、模板模型法、人工智能法等是路径规划中很典型的方法,并且受到越来越多的关注。

下面主要来看最常见的两种搜索:

第一种螺旋式搜索:

fb9c75f1d2a8c20bd404176ac33d175f.png

这种方式在无障碍物时看起来效果还不错,可是一旦有障碍物时,往往会陷入局部死区,搜索路径也会大大增加,所以不采用。

85def7c58de74afd5841191f229b9fc6.png

第二种弓字型搜索:

215e1d8a6e458f05d481a082e4f7ed0d.png

这种方式在无任何障碍物时就像耕地一样一趟一趟得进行搜索,当存在障碍物时,通过设计算法效果如下:

b49504915a4dff71de2abdd535bfdcf8.png

可以看到存在障碍物时,也可以合理的安排路径,故采用这种方式,在此基础上进行改进来运行适合slam建图的路径规划。

适用于slam无人车的CCPP方案:

1 思想

首先来看slam无人车与扫地机器人的不同:

扫地机器人一次智能遍历到它当前位置的那个格子,而无人车由于其上的摄像头,因此可以抽象如下:

195e9fea1f88e865bb97411e6e136a5e.png

车一次所能遍历到的其实就是它的视野,我们可以通过可信范围的方式认为其遍历到的格子

是一个三角形的范围,视野前端半径为r个格子,视野远端h个格子,这样一次覆盖范围就为:

由于视野比较宽阔,所以在走一次的路线上视野覆盖面积其实类似与铲雪一样:

5f187b77583d736bc6f7d8083c2e9c9a.png

直行一趟扫过的面积其实是一个宽为2r个格子的矩形,因此我们没有必要一列一列的去搜索,在掉头时不用只是向左或向右只走一个格子就进行下一列的搜索,而是掉头时向左或向右走2r个格子再进行下一列的搜索,并且由于视野可以延申h和格子,因此在距离边界h个格子时就可以进行掉头:

ba8deb886e3215075ca2b4fa896a07e4.png

2 方案

  1. 从起点(1,1)开始,设地图总共大小为(m,n).首先行至(r,0),若行进路线上无障碍物,则下一个目标点设置为这一列的对面,视野覆盖下扫过的单元格记录到搜索过的列表中。
  2. 若碰到障碍物或是搜索过的格子(当前位置距其r个格子),则检测这个障碍物的横向长度占几个格子,手动设置阈值,若绕过的路程少,则直接绕过,把目标点设置为障碍物的背面对应点,利用A*进行导航,继续搜索,若横向长度太长,则直接掉头。
ce6e98ba397608bfb1b822f547a356be.png
08ae50a7e9f07efc83f5ec504ddd23c0.png
  1. 若障碍物紧靠边界,通过阈值判断,若是长的障碍物,则还是直接掉头,若是短的,则直接把接下来的目标点设定为障碍物旁边的一个格子:
8f1098144455650ea0a75d63dd5ce037.png
  1. 检测周围区域,若均是障碍物或是搜索过的区域,则表示无路可走,也就是陷入死区:
c16dd429de1809203d6e601ab746ab96.png

死区示意图:

9092948fac491d2a8bc938c4d23a70e9.png

此时利用A*导航至离当前点最近的未搜索区域继续搜索:

fe6fefafb962a931e0e343eb286f08a1.png

5,重复进行,直到搜索所有格子加入列表。



推荐阅读
  • 每日一书丨AI圣经《深度学习》作者斩获2018年图灵奖
    2019年3月27日——ACM宣布,深度学习之父YoshuaBengio,YannLeCun,以及GeoffreyHinton获得了2018年的图灵奖, ... [详细]
  • 【历史上的今天】5 月 18 日:微软反垄断诉讼;携程旅行网上线;谷歌首次公布 TPU
    整理|王启隆透过「历史上的今天」,从过去看未来,从现在亦可以改变未来。今天是2022年5月18日,在1939年的今天,彼得 ... [详细]
  • 如果您想到达任何地方,就一定不要害怕探索。我的背景我在2001年只有4岁。那是我第一次使用计算机“联机”的时候。从一开始我就一直是一个好奇的孩子。我知道如何建立拨号连 ... [详细]
  • AI算法工程师从入门到上瘾
    设定一个非常清晰的目标清晰的目标就比如说你要做NLP,你要知道NLP的应用有智能问答,机器翻译,搜索引擎等等。然后如果你要做智能问答你要知道现在最发达的技术是深度学习,使用的算法有 ... [详细]
  • 【JVM技术专题】深入分析CG管理和原理查缺补漏「番外篇」
    前提概要本文主要针对HotspotVM中“CMSParNew”组合的一些使用场景进行总结。自Sun发布Java语言以来,开始使用GC技术来进行内存自动管理࿰ ... [详细]
  • 21世纪经济报道记者董静怡上海报道2023年1月31日,深圳市优必选科技股份有限公司正式向港交所递交招股说明书,拟主板挂牌上市,国泰君安国际担任独家保荐人。这意味着, ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 近年来,大数据成为互联网世界的新宠儿,被列入阿里巴巴、谷歌等公司的战略规划中,也在政府报告中频繁提及。据《大数据人才报告》显示,目前全国大数据人才仅46万,未来3-5年将出现高达150万的人才缺口。根据领英报告,数据剖析人才供应指数最低,且跳槽速度最快。中国商业结合会数据剖析专业委员会统计显示,未来中国基础性数据剖析人才缺口将高达1400万。目前BAT企业中,60%以上的招聘职位都是针对大数据人才的。 ... [详细]
  • 本文介绍了新款奇骏的两个让人上瘾的功能,分别是智能互联系统和BOSE音响。通过对新款奇骏的配置和功能进行评测,探讨了这两个新增功能的使用体验和优势。此外,还介绍了新款奇骏的其他配置和改进,如增加的座椅和驾驶辅助系统,以及内饰的舒适性提升。对于喜欢音响的消费者来说,BOSE音响的升级也是一个亮点。最后,文章提到了BOSE音响的数字还原能力,以及7座版无法配备BOSE音响的原因。 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • 如何使用计算机控制遥控车的步骤和电路制作方法
    本文介绍了使用计算机控制遥控车的步骤和电路制作方法。首先,需要检查发送器的连接器和跳线,以确定命令的传递方式。然后,通过连接跳线和地面,将发送器与电池的负极连接,以实现遥控车的前进。接下来,制作一个简单的电路,使用Arduino命令将连接到跳线的电线接地,从而实现将Arduino命令转化为发送器命令。最后,通过焊接晶体管和电阻,完成电路制作。详细的步骤和材料使用方法将在正文中介绍。 ... [详细]
  • 统一知识图谱学习和建议:更好地理解用户偏好
    本文介绍了一种将知识图谱纳入推荐系统的方法,以提高推荐的准确性和可解释性。与现有方法不同的是,本方法考虑了知识图谱的不完整性,并在知识图谱中传输关系信息,以更好地理解用户的偏好。通过大量实验,验证了本方法在推荐任务和知识图谱完成任务上的优势。 ... [详细]
  • Learning to Paint with Model-based Deep Reinforcement Learning
    本文介绍了一种基于模型的深度强化学习方法,通过结合神经渲染器,教机器像人类画家一样进行绘画。该方法能够生成笔画的坐标点、半径、透明度、颜色值等,以生成类似于给定目标图像的绘画。文章还讨论了该方法面临的挑战,包括绘制纹理丰富的图像等。通过对比实验的结果,作者证明了基于模型的深度强化学习方法相对于基于模型的DDPG和模型无关的DDPG方法的优势。该研究对于深度强化学习在绘画领域的应用具有重要意义。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • macOS Big Sur全新设计大版本更新,10+个值得关注的新功能
    本文介绍了Apple发布的新一代操作系统macOS Big Sur,该系统采用全新的界面设计,包括图标、应用界面、程序坞和菜单栏等方面的变化。新系统还增加了通知中心、桌面小组件、强化的Safari浏览器以及隐私保护等多项功能。文章指出,macOS Big Sur的设计与iPadOS越来越接近,结合了去年iPadOS对鼠标的完善等功能。 ... [详细]
author-avatar
mobiledu2502861847
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有