路径规划算法,dijstra算法思想 floyed A*算法 RRT 蚁群算法

dijstra算法思想(时间复杂度o(vertex2)):
首先初始化一个dist最短路径数组还有两个集合closelist和openlist,closelist初始为空,openlist为全集,逐步将openlist一个顶点一个顶点的加入closelist,然后逐步修改dist数组长度,最后就能得到单源最短路径长度

floyed算法思想(时间复杂度o(vertex3)):
解决多源最短路径问题。首先要有一个邻接表矩阵e[][],然后加入每个顶点并更新矩阵,通过三重for循环来实现。

A*算法思想:
欧拉距离:两点距离
曼哈顿距离:水平距离+竖直距离
f=g+h
g是当前代价,h是到终点的预估代价,f是总代价
首先初始化集合openlist和closelist ,openlist为起始点,closelist为空,然后探索openlist的邻接点,加入到closelist,选择代价最小的加入到openlist,然后找邻接点,查询有没有在closelist中,如果没有加入到closelist,找寻代价最低的,依次类推,直到找到终点。

RRT算法:

步骤
初始化:将起点设置为根节点,将其放入树结构中。
迭代:重复以下步骤,直到满足停止条件:

从空间中随机采样一个点;
在树中寻找距离最近的节点,并计算通过一定控制力输入到该节点对应的机器人能到达采样点的位置;
将该新位置作为节点添加到树中,并连接到最近的节点,如果连接的路径不与障碍物冲突,则连接成功。
搜索:

如果停止条件是采样到了目标点,则通过回溯找出从起点到目标点的路径;
停止条件的选择和路径优化方法是RRT算法的两个关键方面,实现中需要根据具体应用场景进行选择。此外,RRT算法的性能也和随机采样的范围、延伸步长的选择等因素有关,需要根据具体情况进行优化

蚁群算法:
蚁群算法相关公式
步骤:
初始化信息素和蚂蚁:首先需要初始化信息素和一群蚂蚁。信息素是用来记录路径上的信息,影响蚂蚁后续对路径的选择。蚂蚁是搜索空间的初始探索者,会在搜索过程中进行路径选择。

蚂蚁路径选择:在每次搜索中,蚂蚁根据信息素和启发式信息(如距离或路径质量)来选择路径。选择的过程中会遵守信息素挥发和更新的规则,即信息素强度与路径质量成正比,信息素在时间上逐步消散。同时,蚂蚁也会根据路径上的信息素浓度信息,选择一定的探索概率,以保证一定的探索性。

更新信息素:当所有蚂蚁都完成路径选择之后,需要更新信息素。更新信息素需要考虑信息素挥发和信息素增强两个方面,即信息素需要在时间上逐步消散和基于蚂蚁的路径选择进行增强。

检查终止条件:每次搜索之后都需要进行一定的评估,如果满足终止条件(如搜索次数达到最大值或搜索效果达到一定标准),则算法停止,输出最优解。

重复搜索:如果没有满足终止条件,则需要重复步骤2至4,即蚂蚁路径选择、信息素更新和终止条件判断。最后输出搜索结果,即所获得的最优解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值