💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
⛳️赠与读者
👨💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。当哲学课上老师问你什么是科学,什么是电的时候,不要觉得这些问题搞笑。哲学是科学之母,哲学就是追究终极问题,寻找那些不言自明只有小孩子会问的但是你却回答不出来的问题。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。
或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎
💥1 概述
本文主要设计一种路径规划算法以及多机协控策略,针对二维和三维情景下的较长距离寻路问题,以栅格化地图方案进行规划、最后优化为非栅格化路径。主要瞄准无人机等运算时空开支小的路径导航,在牺牲小的长度优势、换取时间和空间上开支的大大减少,为了适应现实中模拟地图寻路,最后将栅格化路径再次优化得到方向角度任意的模拟路径;同时以十架无人机为例描述一种多机协控移动的策略。
在栅格路径规划方面,我们借鉴了 A*的启发式算法,将启发式搜索应用在时空消耗较小但长度没有保证的深度优先搜索(DFS)中得到第一级路径,再利用视线导引法对所得路径进行优化修正,提出 Inself 算法,能够快速、省空间地得到较优路径结果。并以游戏界常用的 A*算法以及 Dijkstra 算法甚至广度优先搜索(BFS)算法作为靶算法进行对比,分析并测试二维和三维栅格地图下路径规划的速度和空间优势。结果表明,在 600*600 地图下,Inself 的平均时间为 A*的8.26%、BFS 算法的 0.025%,开拓点数为 A*算法的 69.18%、BFS 算法的 1.11%,而路径长度平均增长为最短路径的 0.26%。在低牺牲路径长度情景下,有效减少了运算时空开支。最后基于最大三角形的思想,将栅格化地图路径还原到模拟地图中。
而在多机协控方面,首先以二维和十架无人机为例,提出了一种弹性绕圈式的编队策略,在多种遇障和阻碍情境下给出解决的调度策略,尽可能保持队形移动;而三维时则仍采用二维的队形,在其基础上多增加一个维度且优先保持同一水平面的编队移动策略。
关键字:规划算法,栅格地图,多机协同。
结论
面对多机协同路径规划问题,首先对地图进行栅格化,并提出了 Inself 算法进行路径规划,将启发项与深搜结合,又利用视线导引法的自遍历二级路径优化,只需维护定长的最小优先队列,相较 BFS、Dijkstra 甚至 A*等算法有非常明显的时间优势以及空间优势,能够利用更小的内存消耗在更短时间内适当牺牲较小的路径长度为代价,得到一条较好的路径结果。经过分析,算法时间复杂度为 O(n2 ),优于 A*的 O(n2 logn);后又经不同规模的二维、三维栅格随机地图测试,如在 600*600 栅格地图规模大量测试取平均后,平均运算时间为 A*方案的 8.26%、为 BFS 方案的 0.025%;平均开拓点数为 A*方案的 69.18%、BFS 方案的 1.11%;而相比于 BFS 的最短路径,Inself 的路径长度牺牲(平均增长率)为 0.26%。为了回归到模拟地图寻路,基于 Inself 的栅格部
分,提出最大三角形法优化得到最终适合模拟地图的路径。最后是多机协同策略,我们提出一种类似简笔画的可弹性压缩的编队方案,以 10架无人机在二维及三维栅格地图为例,提供一种协同调度、编队飞行的方案,通过保持队形、非钝角坐标轴投影原则、牵引移动以及防掉队和更换长机策略,保证了多机的协同路径规划。最后通过 Matlab 将得到的路径结果以及多机协同实时坐标信息进行了演示。
📚2 运行结果
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
🌈4 代码、文档
资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取