💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
⛳️赠与读者
👨💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。当哲学课上老师问你什么是科学,什么是电的时候,不要觉得这些问题搞笑。哲学是科学之母,哲学就是追究终极问题,寻找那些不言自明只有小孩子会问的但是你却回答不出来的问题。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。
或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎
💥1 概述
基于栅格地图的无人机三维路径规划算法是一项复杂而又关键的研究领域,涉及到无人机在三维空间中高效、安全地规划路径以完成各种任务。这个算法的研究可以涉及到以下几个关键方面:
1. **栅格地图表示**:首先需要将无人机飞行区域以及其中的障碍物等信息表示成栅格地图,以便算法进行处理。这可以使用各种方法,如二维数组或者其他数据结构来表示地图。
2. **路径搜索算法**:在栅格地图上进行路径搜索是这个问题的核心。常见的算法包括 A* 算法、Dijkstra 算法、RRT(Rapidly-exploring Random Tree)算法等。这些算法需要根据具体情况进行调整,以适应无人机的特性和环境的复杂性。
3. **碰撞检测与避障**:在路径搜索的过程中,需要考虑到无人机与障碍物之间的碰撞问题。因此,需要设计相应的碰撞检测与避障算法,以确保生成的路径是安全可行的。
4. **三维路径规划考虑因素**:与二维路径规划不同,三维路径规划需要考虑更多因素,如高度变化、空气动力学特性、风速等。因此,需要在算法中考虑这些因素,以生成更加合理的路径。
5. **性能优化与实时性**:无人机通常需要在实时性要求较高的情况下执行任务,因此路径规划算法需要具备较高的性能,能够在短时间内生成可行的路径。因此,算法的性能优化也是研究的重点之一。
基于栅格地图的无人机三维路径规划算法涉及到多个方面的研究内容,需要综合考虑环境信息、无人机特性以及实时性等因素,以实现高效、安全地路径规划。
ACO3D:包含蚁群算法的全部内容,其入口函数aco.m
Astar3D:包含A*算法的全部内容,其入口函数Astar_main.m
RRT3D:包含RRT算法的全部内容,其入口函数RRT_main.m
Evaluation:包含算法评价的全部内容,包括计算距离、路径长度、最大转弯角
Makemap3D:包含设计的不同规模的地图,此文件可有可无
3D_data.xlsx :三维地图数据,此数据可以根据自己的需求更改
bezier.m :贝塞尔曲线路径平滑算法
main.m:主函数入口,其中所有文件名中带“main”的都是可运行的函数入口,其区别在于调用的地图不同。
Makemap3D.m:制作三维地图数据,可以在此设计自己的三维地图
plot3DMap.m:根据数据绘制三维地图
Show_Comparative_result.m:将算法评价的结果以表格的形式展现出来
注:
(1)三种路径规划算法都可独立运行,可以选择删除main函数中的内容,也可以选择自己编写main函数来
调用路径规划算法的入口函数
(2)遇到不知含义的参数,可以选择更改参数大小并查看运行结果的变化来推断参数的作用
📚2 运行结果
部分代码:
%Wishing you to encourage yourself!
% 需考虑的评价指标:
% 平滑性
% 最大转角 30-45度
% 鲁棒性
% 最小转弯次数
% 搜索回报率 = 找到的解决方案数量 / 扩展的节点数量
% 覆盖面积
% 距离
% 时间
% 轨迹优化:保证曲率的连续性
%飞行速度 8m/s-16m/s
%飞行高度 30-50m
%飞行距离 5km
%A*(A-star)是一种启发式算法,也称为最佳优先搜索算法
%启发式算法的搜索路径可能不是最短路径
%subplot(1,3,1);
function Show_Comparative_result(Global_data,comparative_data)
%comparative_data:表格中要展示的数据
f = uifigure;
t = uitable(f, 'Data', comparative_data);
t.RowName = {' 搜索耗时(s) ', ' 路径长度(m) ', ' 路径栅格数目(航点数目) ',' 总搜索栅格数目 ',' 可行的栅格数目 ','搜索回报率','最大转弯角(度)','转弯超过45度的次数(次)','优化后最大转弯角度','优化后转弯超过5度的次数','优化后路径长度(米)'};%行名称
t.ColumnName = {'ACO','Astar','RRT','最优项'};%列名称
t.ColumnWidth = {90, 90, 90};
t.Position = [20 60 510 230];%规划表格位置
%Position中四位数字
%left 父容器的内部左边缘与表的外部左边缘之间的距离
%bottom 父容器的内部下边缘与表的外部下边缘之间的距离
%width 表的左右外部边缘之间的距离
%height 表的上下外部边缘之间的距离
b = uitable(f, 'Data', Global_data);
b.ColumnName = {'起点','终点','起点到终点的直线距离(m) '};%列名称
b.ColumnWidth = {90, 90};
b.Position = [20 330 400 52];%规划表格位置
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
[1]董德金,王常成,蔡云泽.基于改进多目标进化算法的栅格地图路径规划[J/OL].上海交通大学学报,1-18[2024-05-16].
[2]焦阳.基于改进蚁群算法的无人机三维路径规划研究[J].舰船电子工程, 2019, 039(003):41-45.
[3]于涛.基于改进蚁群算法的三维无人机路径规划的研究与实现[D].重庆大学[2024-05-16].DOI:CNKI:CDMD:2.1017.838206.
[4]孙淑光,孙涛.基于融合A^(*)算法的无人机路径规划研究[J].电子测量技术, 2022(045-009).
[5]王嘉琦.基于改进RRT*算法的无人机避障路径规划[D].南昌航空大学[2024-05-16].