💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
🎁完整资源、论文复现、期刊合作、论文辅导及科研仿真定制事宜点击:
👉👉👉本文完整资源下载
⛳️座右铭:行百里者,半于九十。
⛳️赠与读者
👨💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能解答你胸中升起的一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。
或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎
💥第一部分——内容介绍
摘要
随着城市化进程的持续加速与低空经济的蓬勃兴起,城市空中交通(Urban Air Mobility, UAM)被广泛视为缓解地面交通拥堵、提升紧急医疗响应速度与物流配送效率的重要技术途径。本文面向 UAM 场景中的多无人机(Unmanned Aerial Vehicle, UAV)路径规划问题,构建了包含建筑物、禁飞区与圆柱形威胁区域的三维城市环境模型,并将路径规划问题形式化为一个带边界约束的多目标优化问题。为求解该问题,本文引入多种前沿仿生元启发式算法,包括布谷鲶鱼优化算法(Cuckoo Catfish Optimizer, CCO)、灰雁优化算法(Greylag Goose Optimization, GGO)与田忌赛马优化算法(Tianji's Horse Racing Optimization, THRO),并针对无人机轨迹规划的特点对算法进行了适配。在代价函数设计上,本文综合考虑路径长度代价、威胁代价、高度代价与地形碰撞代价,通过加权求和将多目标问题转化为单目标问题。仿真结果表明,所提方法能够在数秒量级内为单架无人机生成无碰撞轨迹,且不同算法在代价与耗时上各有优劣:GGO 平均耗时最短,CCO 次之,THRO 耗时最长,但在部分任务上取得了更低的代价值。本文进一步对三种算法的性能差异进行了对比分析,并讨论了现有工作的局限性与未来研究方向。
关键词:城市空中交通;多无人机路径规划;仿生优化算法;布谷鲶鱼优化算法;灰雁优化算法;田忌赛马优化算法;多目标优化
1. 引言
1.1 研究背景
近年来,交通运输行业对城市空中交通路径规划的需求日益增长。UAM 以无人机为主要运载工具,在医疗急救、快递配送、城市巡逻、应急物资投送等场景中展现出巨大潜力。一套高效的路径规划系统有望为城市交通做出巨大贡献,尤其是在地面交通拥堵严重的超大城市中,无人机能够利用三维空域实现快速点对点运输,从而显著缩短运输时间、降低地面交通压力。
然而,UAM 环境下的路径规划面临多重挑战。首先,城市环境高度复杂,包含大量建筑物、禁飞区与动态威胁区域,无人机必须在这些障碍之间寻找安全通道。其次,多架无人机同时飞行时,需要避免相互之间的碰撞,并考虑通信延迟、集中式跟踪与控制等问题。再次,无人机自身受限于能量、飞行高度与法规约束,路径规划必须在多重约束下寻求最优解。此外,实际工程问题往往具有多目标特性,能耗、飞行时长、飞行安全等目标之间相互冲突,难以同时达到最优。
1.2 研究现状
业界普遍认为,路径规划算法应当最小化多架无人机的总时间与总代价,并高效生成无碰撞轨迹。传统方法如 A*、Dijkstra、快速扩展随机树(RRT)等在静态环境中表现良好,但在高维、多约束、多目标的 UAM 场景中往往计算复杂度高、易陷入局部最优。近年来,仿生元启发式算法因其鲁棒性、自适应性和多目标优化能力,在无人机路径寻优方面优势显著。该类算法能够有效平衡能耗、飞行时长、飞行安全等相互冲突的优化目标,为复杂现实工程难题提供鲁棒、自适应的求解方案。
1.3 本文贡献
本文的主要贡献如下:
第一,构建了面向 UAM 的多无人机路径规划系统模型,将建筑物与禁飞区简化为长方体、威胁区域抽象为圆柱体,并给出统一的数学描述与程序实现框架。
第二,设计了包含路径长度代价、威胁代价、高度代价与地形碰撞代价的加权代价函数,将多目标优化问题转化为单目标优化问题,并通过权重系数体现不同目标的相对重要性。
第三,引入并适配了多种前沿仿生算法(CCO、GGO、THRO),并在统一仿真环境下进行了对比实验,分析了各算法在耗时与代价值方面的优劣。
第四,给出了三维轨迹可视化与俯视图可视化结果,验证了算法的有效性,并对现有工作的局限性与未来研究方向进行了讨论。
2. 系统模型与问题建模
本章节包含更多项目细节。第一部分系统模型与问题建模,搭建城市环境系统模型,完成优化问题数学建模,介绍数学公式与程序实现。第二部分所用算法,介绍本项目主要采用的仿生算法原理,包括布谷鲶鱼优化算法、灰雁优化算法以及田忌赛马优化算法。
2.1 城市环境模型
为完成本次挑战赛任务,需要搭建对应的问题模型。城市环境包含大量建筑物、禁飞区以及威胁区域。建筑物与禁飞区可以简化为长方体,威胁区域抽象为圆柱体。
2.1.1 威胁区域模型
威胁区域被抽象为圆柱体,矩阵的每一行依次存储圆柱中心点的横坐标、中心点纵坐标、圆柱高度、圆柱半径以及区域类型。最后一项为可选参数,程序中并未使用。形式化地,设第 ii 个威胁区域为
2.1.2 建筑物与禁飞区模型
建筑物和禁飞区均抽象为长方体,可通过高度以及底面的长、宽参数完成生成。对于每个网格中心,随机生成高度、宽度与深度,并以一定概率决定是否在该网格放置建筑物。若放置,则根据建筑物底面尺寸计算其在水平面上的覆盖范围,并将地形高度矩阵在对应区域置为建筑物高度。
本文构建的城市环境地图尺寸为一千乘一千乘一百八十米。地面基准高度为五米,建筑物高度在五十至一百四十米之间随机分布。此外,环境中还包含若干特殊地形,如 L 形建筑、中央公园与河流等,以模拟真实城市环境的多样性。这些特殊地形通过直接修改地形高度矩阵实现,能够有效增加路径规划问题的复杂度与真实感。
2.1.3 环境参数设置
城市环境的边界由地图尺寸决定,无人机飞行范围被限制在地图范围内。地形高度矩阵记录了每个水平位置的地面或建筑物高度,用于地形碰撞检测。威胁区域集合记录了所有圆柱形威胁的位置与尺寸,用于威胁代价计算。通过合理设置环境参数,可以构建出具有代表性与挑战性的 UAM 仿真场景。
2.2 问题形式化
2.2.1 航点表示
设无人机的起点为三维空间中的一个固定点,终点为另一个固定点,中间包含若干待优化航点。所有航点构成一个三维坐标矩阵,该矩阵存储所有航点的坐标。除去起点与终点,共有三倍航点数的待优化变量。本文取航点数为十,即每架无人机有三十个优化变量。
2.2.2 路径长度代价
路径长度是代价函数中的核心指标,它与飞行时间、能量消耗密切相关。在已经设定航点的前提下,路径长度可写为相邻航点之间欧氏距离的累加。该代价鼓励无人机选择较短的飞行路径,从而降低能耗与飞行时间。
2.2.3 威胁代价
针对威胁区域,威胁代价由无人机与圆柱体威胁区域中心之间的距离决定。对于每一段航段,若其与威胁区域中心的水平距离小于威胁半径加安全距离,则累加一个无穷大惩罚项。该代价强制无人机远离威胁区域,保证飞行安全。
2.2.4 高度代价
现行法规通常会对无人机的最大飞行高度做出限制,并且无人机在高空中受强风影响会出现性能下降。因此,高度代价需要纳入考量。本文要求无人机飞行高度不低于某一安全阈值,若低于该阈值则累加惩罚项。该代价确保无人机在安全高度范围内飞行,避免因高度过低而增加碰撞风险。
2.2.5 地形碰撞代价
为避免发生对地碰撞,代价函数还需要引入地形碰撞代价。对于每个航点,若其高度小于等于所在地形高度,则累加惩罚项。该代价确保无人机不会与建筑物或地面发生碰撞。
2.2.6 总代价函数
总代价函数为各项代价的加权和,权重向量分别代表各项代价对应的权重,权重取值依据工程经验确定。本文取权重向量为路径长度代价权重一、威胁代价权重五、高度代价权重一、地形碰撞代价权重十,即威胁代价与地形碰撞代价被赋予较高的权重,以优先保证飞行安全。
2.2.7 优化问题
最终,该问题可以整理为一个数学规划问题,并采用仿生算法进行求解。目标函数为加权总代价的最小化,约束条件对应模型中由城市边界带来的约束条件,即无人机航点必须位于地图范围内,且飞行高度在允许范围内。
2.3 多无人机分层规划策略
本文采用集中式分层规划策略处理多无人机场景。三架无人机被分配至不同高度层:第一架无人机执行医疗急救任务,飞行在低层,约八十米高度;第二架无人机执行快递配送任务,飞行在中层,约一百米高度;第三架无人机执行城市巡逻任务,飞行在高层,约一百二十米高度。
通过分层规划,可以有效降低无人机之间的碰撞风险,同时提高空域利用率。每架无人机独立求解其路径规划问题,最终在统一的可视化框架下展示所有轨迹。这种分层策略既保证了各无人机任务的独立性,又通过高度层分离实现了空域资源的合理分配。
3. 所用仿生算法
本项目充分使用多种前沿仿生算法,并对算法进行修改适配,使其能够用于求解无人机轨迹。实际上在项目目录中还有更多可选算法,全部均可直接运行,值得尝试,包括常春藤算法、无刺蜂优化算法、带科里奥利力的龙卷风优化器等。下面简要介绍布谷鲶鱼优化算法、灰雁优化算法与田忌赛马优化算法的基本原理。
3.1 布谷鲶鱼优化算法
3.1.1 核心思想与基本原理
布谷鲶鱼优化算法是一种新型元启发式优化算法,灵感来源于布谷鲶鱼的捕食与寄生行为。该算法模拟鱼类的捕猎策略,包括围捕猎物、压缩搜索空间、混沌捕食、巢寄生行为,实现对数值优化问题的高效求解。
布谷鲶鱼优化算法将优化过程划分为三个自适应阶段。探索阶段采用包围搜索与空间压缩策略,大范围遍历解空间。过渡阶段平衡全局探索与局部开发,实现各阶段之间平滑切换。开发阶段利用混沌捕食、死亡与寄生机制完成局部精细寻优。这种分阶段策略使得算法在搜索初期能够广泛探索解空间,在搜索后期能够精细收敛至最优解附近。
3.1.2 算法机制分析
在种群初始化阶段,算法在上下界之间随机生成初始种群,保证初始解的多样性。压缩空间策略通过向最优解与随机解的组合方向移动,逐步缩小搜索范围。自我保护机制在迭代后期或随机条件满足时触发,以一定概率保护当前最优解不被破坏。包围搜索策略包括螺旋搜索与球形搜索两种模式,分别模拟布谷鲶鱼围绕猎物旋转与在三维空间中搜索的行为。过渡策略通过 Lévy 飞行与自适应步长平衡探索与开发。混沌捕食机制根据当前解与最优解的关系选择不同的更新方式,增强算法的局部搜索能力。死亡与寄生机制通过卵分布与重生两种方式生成新解,避免算法陷入局部最优。
3.2 灰雁优化算法
3.2.1 核心思想与基本原理
灰雁优化算法是一种新型仿生元启发式算法,源于灰雁的群体社会行为,重点参考其迁徙过程中的 V 字形编队飞行模式。该算法属于群智能优化算法,能够高效平衡全局探索与局部开发。
灰雁采用 V 字编队飞行可以降低空气阻力,使雁群整体的飞行距离提升约百分之七十。该算法模拟群体分工机制:探索个体负责搜寻新的解空间区域,开发个体则对现有解做精细化优化。群体动态调整机制:若最优解连续三代没有更新,算法会增加探索个体数量,以此避免陷入局部最优。
3.2.2 算法机制分析
在探索阶段,算法通过向最优解移动与随机探索两种方式更新个体位置。向最优解移动时,个体受到系数向量的影响,该系数向量随迭代次数从二递减至零,从而实现从全局探索到局部开发的平滑过渡。随机探索在系数向量绝对值较大时触发,增强算法的全局搜索能力。交替更新策略在随机条件满足时采用螺旋式更新,模拟灰雁在飞行中的盘旋行为。在开发阶段,算法通过向哨兵移动与在最优解附近搜索两种方式精细优化解的质量。哨兵机制模拟灰雁群体中的警戒个体,为其他个体提供方向引导。
3.3 田忌赛马优化算法
3.3.1 核心思想与基本原理
田忌赛马优化算法是一种新型元启发式算法,灵感来源于中国古代历史典故田忌赛马。该典故的核心策略思想为:通过智能匹配策略,做到以己之长,攻彼之短。
映射到算法层面具体表现为:维护两组相互竞争的种群,即田忌马种群与齐王马种群;每一匹马代表一个候选解;速度由适应度函数值决定,对于最小化问题,适应度值越小,代表马匹速度越快;设置五种动态竞争场景,用于引导种群的搜索方向。
3.3.2 算法机制分析
算法首先初始化两组种群,分别代表田忌与齐王的马匹。在每一代中,根据两组种群中马匹的速度对比,选择对应的竞争场景。场景一为田忌最慢马快于齐王最慢马,此时田忌最慢马向齐王马群中的对应个体学习,同时田忌马群中的慢马数量减一。场景二为田忌最慢马慢于齐王最慢马,此时田忌最慢马与齐王最快马分别按照不同公式更新。场景三至场景五为其余速度对比工况,每种场景采用不同的匹配策略与更新公式,保证算法在各类条件下都可以均衡实现全局探索与局部开发。通过双种群竞争机制,算法能够在搜索过程中保持种群多样性,避免过早收敛。
3.4 其他可选算法
除上述三种算法外,本项目还支持常春藤算法、无刺蜂优化算法、带科里奥利力的龙卷风优化器、光向生长算法等多种前沿仿生算法。常春藤算法模拟常春藤植物的生长行为,通过向光源与支撑物攀爬实现优化。无刺蜂优化算法模拟无刺蜂筑巢行为,通过蜂群协作完成搜索。带科里奥利力的龙卷风优化器模拟龙卷风在科里奥利力作用下的旋转与移动行为。光向生长算法模拟植物向光生长的特性,通过趋光性引导搜索方向。所有算法均可通过修改算法选项变量直接切换,便于对比实验。
4. 仿真结果与分析
4.1 实验设置
本文在 MATLAB 环境下构建城市仿真环境,地图尺寸为一千乘一千乘一百八十米。算法参数设置为:种群规模五十,最大迭代次数一千。三架无人机分别执行医疗急救、快递配送与城市巡逻任务,起点与终点如多无人机分层规划策略一节所示。
4.2 布谷鲶鱼优化算法结果
由仿真结果可得,单架无人机的平均耗时约为三点六三秒。第一架无人机执行医疗任务,耗时三点八九秒,最终得分一千一百三十五点一五。第二架无人机执行配送任务,耗时三点二五秒,最终得分六千二百七十九点一八。第三架无人机执行巡逻任务,耗时三点七六秒,最终得分一千零八十三点四九。
布谷鲶鱼优化算法在三个任务上均取得了较低的代价值,其中第一架与第三架无人机的得分分别为一千一百三十五点一五与一千零八十三点四九,表明算法在复杂城市环境中能够有效避开威胁区域并生成较短路径。
4.3 灰雁优化算法结果
由仿真结果可得,单架无人机的平均耗时约为三点零六秒。第一架无人机执行医疗任务,耗时三点零六秒,最终得分一千一百七十六点五四。第二架无人机执行配送任务,耗时三点零三秒,最终得分六千二百七十九点二三。第三架无人机执行巡逻任务,耗时三点零九秒,最终得分一千零九十三点九三。
灰雁优化算法在三者中耗时最短,平均仅需三点零六秒,且代价值与布谷鲶鱼优化算法接近。这表明灰雁优化算法的 V 字编队与群体分工机制在路径规划问题中具有较高的搜索效率。
4.4 田忌赛马优化算法结果
由仿真结果可得,单架无人机的平均耗时约为八点四二秒。第一架无人机执行医疗任务,耗时八点三二秒,最终得分一千一百七十点三七。第二架无人机执行配送任务,耗时八点二五秒,最终得分六千二百八十一点九七。第三架无人机执行巡逻任务,耗时八点六九秒,最终得分一千零七十五点八八。
田忌赛马优化算法耗时最长,但在第三架无人机任务上取得了三者中最低的代价值一千零七十五点八八,说明其双种群竞争机制在特定场景下具有更强的全局搜索能力。
4.5 可视化结果
运行主程序后生成两张图像。第一张为城市环境下无人机轨迹的三维视图,展示了建筑物、威胁区域圆柱体以及三架无人机的彩色轨迹。红色轨迹代表第一架无人机执行医疗任务,蓝色轨迹代表第二架无人机执行配送任务,绿色轨迹代表第三架无人机执行巡逻任务。第二张为对应场景的俯视图,清晰呈现了轨迹在水平面上的投影与威胁区域、建筑物的相对关系。
从三维视图可以看出,三架无人机均能够绕过建筑物与威胁区域,沿不同高度层飞行,最终到达各自终点。俯视图进一步验证了轨迹在水平面上的合理性,所有轨迹均未穿越威胁区域或建筑物覆盖范围。
4.6 算法对比分析
综合三种算法的结果,可以得出以下结论。
第一,在耗时方面,灰雁优化算法最快,平均约三点零六秒;布谷鲶鱼优化算法次之,平均约三点六三秒;田忌赛马优化算法最慢,平均约八点四二秒。灰雁优化算法的高效性源于其 V 字编队与群体分工机制,能够在探索与开发之间快速切换。
第二,在代价方面,三种算法在第二架无人机任务上的得分均接近六千二百八十,表明该任务难度较高,各算法均找到了相似的局部最优解。在第一架与第三架无人机任务上,布谷鲶鱼优化算法与田忌赛马优化算法的得分略低于灰雁优化算法,说明布谷鲶鱼优化算法的混沌捕食机制与田忌赛马优化算法的双种群竞争机制在精细搜索方面具有一定优势。
第三,在综合性能方面,若以耗时为主要指标,灰雁优化算法为最优选择;若以代价值为主要指标,布谷鲶鱼优化算法与田忌赛马优化算法在部分任务上表现更优。实际应用中可根据任务需求灵活选择算法。
5. 局限性与现存挑战
尽管我们已经完成官方通知中列出的全部建议步骤,即熟悉 MATLAB 与相关工具箱、搭建包含多个静态障碍物的长方体仿真场景、基于无人机工具箱开发三维路径规划算法、将路径规划算法拓展至多无人机场景、在支持多无人机飞行的长方体仿真场景中完成算法测试,但我们尚未将本套算法与进阶工作内容相结合。
不过我们已经对进阶工作的第二条建议开展研究,具体要求为:开发任务规划算法,完成取件、投递任务规划,并将任务分配给合适的无人机;同时利用优化工具箱对整套流程进一步优化。我们查阅了大量多智能体强化学习相关文献,研究并不局限于仿生算法。后续计划在该方向继续开展研究,解决城市空中交通多无人机路径规划问题。
具体而言,未来工作可以从以下几个方向展开。第一,动态威胁规避。当前模型中的威胁区域为静态圆柱体,未来可引入动态威胁,如移动障碍物、临时禁飞区,研究在线路径重规划方法。第二,多智能体协同。将仿生算法与多智能体强化学习结合,实现无人机之间的协同决策与冲突消解。第三,任务分配与路径规划联合优化。在路径规划的同时考虑任务分配,构建联合优化模型,提高整体效率。第四,交互式应用开发。尝试在代码中集成 MATLAB App Designer,开发交互式应用软件,用户可通过界面控件修改参数、切换算法。但受截止时间限制,该交互程序尚未完成,因此提交版本并未包含应用相关设计。
6. 项目配置与运行说明
运行环境方面,本项目所需工具箱为无,可在标准 MATLAB 环境下直接运行。运行方法为直接运行主程序,MATLAB 命令行窗口将输出运行过程与最终结果,同时生成两张图像。如果需要更换仿生算法,可选择一款可用算法,通过修改算法选项变量实现切换。
算法选项包括田忌赛马优化算法、灰雁优化算法、带科里奥利力的龙卷风优化器、光向生长算法、常春藤算法、布谷鲶鱼优化算法、无刺蜂优化算法等,更多可选算法位于算法目录中。按照上述方式运行主程序后会生成两张图像:一张为城市环境下无人机轨迹的三维视图,另一张是对应场景的俯视图。本文选取三种仿生算法作为示例,运行结果如上所示。
7. 结论
本文面向城市空中交通多无人机路径规划问题,构建了包含建筑物、禁飞区与威胁区域的三维城市环境模型,设计了包含路径长度代价、威胁代价、高度代价与地形碰撞代价的加权代价函数,并引入布谷鲶鱼优化算法、灰雁优化算法与田忌赛马优化算法三种前沿仿生算法进行求解。
仿真结果表明,三种算法均能在数秒量级内生成无碰撞轨迹,其中灰雁优化算法耗时最短,布谷鲶鱼优化算法与田忌赛马优化算法在部分任务上代价值更优。本文进一步对三种算法的性能差异进行了对比分析,并讨论了现有工作的局限性与未来研究方向。
未来工作将聚焦于动态威胁规避、多智能体协同、任务分配与路径规划联合优化以及交互式应用开发等方向,以进一步提升城市空中交通多无人机路径规划系统的实用性与智能化水平。
📚第二部分——运行结果
部分代码:
%% Step 1: Initialize the system
% Add directories into the code
algorithms_folder = '.\algorithms';
uav_folder = '.\uav';
utils_folder = '.\utils';
addpath(genpath(algorithms_folder));
addpath(genpath(uav_folder));
addpath(genpath(utils_folder));
% Select one of the algorithms as the solver
% Algorithm options: 'THRO', 'GGO', 'TOC', 'PGA', 'IVY', 'CCO', 'TGCOA'
% More optional algorithms in '.\algorithms' directory
ALGORITHM_OPTION = 'CCO';
% parameters for the algorithm
pop_size = 50; % population size
max_iter = 1000; % max iteration
%% Step 2: Construct an urban environment
fprintf('>>> Constructing the urban environment ...\n');
% Create the urban environment
global model
model = CreateUrbanEnvironment();
fprintf('Succeed in creating the environment!\n');
fprintf(' - Map size: %d x %d x %d m\n', ...
model.MAPSIZE_X, model.MAPSIZE_Y, model.zmax);
%% Step 3: Define tasks of UAVs
% Define three UAVs
uav_tasks = struct();
% UAV_1: Low Layer (~80m); Task: Hospital -> Residential Area
🎉第三部分——参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。(文章内容仅供参考,具体效果以运行结果为准)
🌈第四部分——本文完整资源下载
资料获取,更多粉丝福利,MATLAB|Simulink|Python|数据|文档等完整资源获取
本文完整资源下载