百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术分析 > 正文

移动机器人路径规划算法研究综述(一)

liebian365 2025-03-04 13:00 13 浏览 0 评论

移动机器人路径规划:指的是各种传感器对机器人自身的影响,依照环境的感知,通过一个或多个评判标准规划安全的运行路线,寻找出一条机器人能从从起始点运动到目标点的最佳路线。在规划中根据机器人功能用一定的算法计算机器人绕过某些必要的障碍物所需要完成的时间和效率,上述讲到可以将计算机路径规划分为全局和局部路径。全局路径和局部路径各有各的优势,我们要在此基础上,在机器人绕开障碍物的同时也要尽量选择最优路线。

全局规划在于全面解决环境的规划问题,全局路径规划是在整体的环境下 在环境寻找最优路径,最终引导路径从起始点到最终点 所成为的是最优路径。

局部规划:说重点是在表示对未知或者已经知道的部分路径问题。因 为局部路径规划的不确定性,所以具有很高的灵活性,在 工作中根据环境去调整。但因为是局部环境特征,所以路 径只能代表局部最优。

全局路径规划及算法

1.图搜索类法

图搜索算法基于各种算法,其中有代表性的是A*算法,以移动机器人作为关键部分,将机器人和障碍物在移动过程中看做各种有目标的关键点,在机器人绕障碍物的时候将它以点成线,以线成面,将其构成一个图,这个图叫做可视图。因为可视图的目标点是可以看见的,从个点到另一个点需设置成清晰可见的两个顶点。图搜索就会变成像数学问题中求最短路线的问题,从起点到目标点最短的距离。通过优化算法,删除不必要的连线,简化可视图,缩短搜索时间。该方法可以算出最优的距离,可以准确计算使机器人靠近障碍物时迅速的闪躲。

2.A*算法

A*算法在说图搜索法的时候讲到过,它相对来讲最有效求解最短路径的方法它通过控制实验使其走过从开始到结束的所有设立的点,然后通过数据计算选择一个最短的路径作为移动机器人的路径,它通过这种方法进行进一步的探索研究,一次次的找出最短和最长的路径。其中很多前辈都用自己独特的方法做这种实验,具有代表性的有王中玉和李强,像李强就是一个目标向另一个目标的节点性扩展,有效减少了实验过程的繁琐问题,提高了实验的效率。

3.智能仿生算法

智能仿生算法是模模仿自然界中动物进化或者有些昆虫觅食捕猎的行为,利用动物的方法来解决研究中的各项闸题。.其中包括蚁群氟法和料群算法等。

蚁群算法是受自然界中蚂蚁觅食这种行为启发而产生的算法,这种方法也叫ACA,最早在1991年提出,他们发现蚂蚁在觅食的过程中,通过分泌一种叫做信息素的东西,会在已走过的道路上留下痕迹蚂蚁走的越多,留下来的信息素就会越多,后来再次觅食的蚂蚁就会根据信息素来确定自己要走的路线,搜索信息素浓度最高的最短路径,这样最优路径就会被选出来了。根据文献中对于这种信息的分析,全局路径在蚂蚁群法中会被根据蚂蚁数量,期望启发因子和信息素的数量做影响我们要根据所有可能出现新的问题的方向,考虑各种因素,通过移动机器人规划路径,使路径快速准确的收敛于最优路径,从信息素改进,提高算法的收敛速度和蚂蚁的搜索效率。

局部路径规划及算法

1.模拟退火算法

这是目前来看较为有效的解决组合优化问题时的算法。这种通过研究金属热在算法中被处理时的有效退火,在开始的时候控制金属环温度的有效降低,在发生突变事件时,有效进行随机搜索,在出现状况的同时简单收集数据。模拟退火算法的优势是简单有效,控制的数据相对较少,具有弹性等,但同时也会出现概率性,发生速度慢等问题。通过模拟退火法进行局部路径规划可以进行简单的促使路径脱离原始路径,发现新的跳跃的目标点,最终达到自己所要找的最优路径。

2.人工势场法

人工势场是将机器人所在的环境路径规划,做成人工场中的运动,这是一种抽象的人造受力场,通过目标点对机器人产生的“引力”以及障碍物产生的“斥力”来移动机器人的运动输出,还有在各种环境下产生的合力来确定机器人的输出。这种方式的优点是结构简单,便于底层的实时控制,规划出来的路径一般是比较平滑并且安全,但仍存在局部最优和易在狭窄通道中动荡的缺点。当环境的要求比较过的时候,它的虚拟合力便会成为零,这就会进一步导致机器人不能继续执行任务[圆。利用人工势场启发函数,实现全局最优,避免局部最优。针对人工势场法存在的缺陷,引入斥力模型,在路径规划时机器人便可以避开局部极小点,进一步优化路径规划中的问题。

路径规划研究方向

(1)现有算法的改进。虽然关于路径规划算法很多,并且取得很多成果,但是每种算法都有自己的局限性,不能很好地适应更复杂的环境,因此对算法进行不断的创新改进俨然成为了一个成本相对较低突破点;
(2)多机器人协同路径的研究。随着机器人工作环境的不断扩大、任务的复杂度的增加以及应用范围的扩大,系统需根据环境和任务在保证成员之间相互交换信息的前提下高效、快速、准确地组织多个机器人协同并行的完成多个任务。

(3)新路径规划算法的研究。随着科技的发展,寻找更新更优的路径规划算法解决复杂的路径规划问题将会成为一种趋势[]。比如近几年兴起的深度学习、强化学习等或是未来新的仿生算法的出现。
(4)路径规划算法的有效结合。任何的单一路径规划算法都不可能解决所有实际应用中的路径规划问题,特别是面对复杂环境下的任务,加之研究新算法的难度较大,将出现更多的相互结合的路径规划算法来弥补彼此的不足。

技术集中

机器人路径规划技术研究主要集中在以下几个方面:(1)新的路径方法的研究;(2)机器人底层控制与路径规划算法的结合研究;(3)多机器人任务分配、通信协作及路径规划的研究。

相关推荐

go语言也可以做gui,go-fltk让你做出c++级别的桌面应用

大家都知道go语言生态并没有什么好的gui开发框架,“能用”的一个手就能数的清,好用的就更是少之又少。今天为大家推荐一个go的gui库go-fltk。它是通过cgo调用了c++的fltk库,性能非常高...

旧电脑的首选系统:TinyCore!体积小+精简+速度极快,你敢安装吗

这几天老毛桃整理了几个微型Linux发行版,准备分享给大家。要知道可供我们日常使用的Linux发行版有很多,但其中的一些发行版经常会被大家忽视。其实这些微型Linux发行版是一种非常强大的创新:在一台...

codeblocks和VS2019下的fltk使用中文

在fltk中用中文有点问题。英文是这样。中文就成这个样子了。我查了查资料,说用UTF-8编码就行了。edit->Fileencoding->UTF-8然后保存文件。看下下边的编码指示确...

FLTK(Fast Light Toolkit)一个轻量级的跨平台Python GUI库

FLTK(FastLightToolkit)是一个轻量级的跨平台GUI库,特别适用于开发需要快速、高效且简单界面的应用程序。本文将介绍Python中的FLTK库,包括其特性、应用场景以及如何通过代...

中科院开源 RISC-V 处理器“香山”流片,已成功运行 Linux

IT之家1月29日消息,去年6月份,中科院大学教授、中科院计算所研究员包云岗,发布了开源高性能RISC-V处理器核心——香山。近日,包云岗在社交平台晒出图片,香山芯片已流片,回片后...

Linux 5.13内核有望合并对苹果M1处理器支持的初步代码

预计Linux5.13将初步支持苹果SiliconM1处理器,不过完整的支持工作可能还需要几年时间才能完全完成。虽然Linux已经可以在苹果SiliconM1上运行,但这需要通过一系列的补丁才能...

Ubuntu系统下COM口测试教程(ubuntu port)

1、在待测试的板上下载minicom,下载minicom有两种方法:方法一:在Ubuntu软件中心里面搜索下载方法二:按“Ctrl+Alt+T”打开终端,打开终端后输入“sudosu”回车;在下...

湖北嵌入式软件工程师培训怎么选,让自己脱颖而出

很多年轻人毕业即失业、面试总是不如意、薪酬不满意、在家躺平。“就业难”该如何应对,参加培训是否能改变自己的职业走向,在湖北,有哪些嵌入式软件工程师培训怎么选值得推荐?粤嵌科技在嵌入式培训领域有十几年经...

新阁上位机开发---10年工程师的Modbus总结

前言我算了一下,今年是我跟Modbus相识的第10年,从最开始的简单应用到协议了解,从协议开发到协议讲解,这个陪伴了10年的协议,它一直没变,变的只是我对它的理解和认识。我一直认为Modbus协议的存...

创建你的第一个可运行的嵌入式Linux系统-5

@ZHangZMo在MicrochipBuildroot中配置QT5选择Graphic配置文件增加QT5的配置修改根文件系统支持QT5修改output/target/etc/profile配置文件...

如何在Linux下给zigbee CC2530实现上位机

0、前言网友提问如下:粉丝提问项目框架汇总下这个网友的问题,其实就是实现一个网关程序,内容分为几块:下位机,通过串口与上位机相连;下位机要能够接收上位机下发的命令,并解析这些命令;下位机能够根据这些命...

Python实现串口助手 - 03串口功能实现

 串口调试助手是最核心的当然是串口数据收发与显示的功能,pzh-py-com借助的是pySerial库实现串口收发功能,今天痞子衡为大家介绍pySerial是如何在pzh-py-com发挥功能的。一、...

为什么选择UART(串口)作为调试接口,而不是I2C、SPI等其他接口

UART(通用异步收发传输器)通常被选作调试接口有以下几个原因:简单性:协议简单:UART的协议非常简单,只需设置波特率、数据位、停止位和校验位就可以进行通信。相比之下,I2C和SPI需要处理更多的通...

同一个类,不同代码,Qt 串口类QSerialPort 与各种外设通讯处理

串口通讯在各种外设通讯中是常见接口,因为各种嵌入式CPU中串口标配,工业控制中如果不够还通过各种串口芯片进行扩展。比如spi接口的W25Q128FV.对于软件而言,因为驱动接口固定,软件也相对好写,因...

嵌入式linux为什么可以通过PC上的串口去执行命令?

1、uboot(负责初始化基本硬bai件,如串口,网卡,usb口等,然du后引导系统zhi运行)2、linux系统(真正的操作系统)3、你的应用程序(基于操作系统的软件应用)当你开发板上电时,u...

取消回复欢迎 发表评论: