当前位置: 首页 > news >正文

2025年COR SCI2区,基于近似细胞分解的能源高效无人机路径规划问题用于地质灾害监测,深度解析+性能实测

目录

    • 1.摘要
    • 2.问题描述与数学模型
    • 3.能源网格混合元启发式算法
    • 4.结果展示
    • 5.参考文献
    • 6.代码获取
    • 7.算法辅导·应用定制·读者交流


1.摘要

本文提出了一种能源高效的无人机路径规划方法(EURP)用于监测分散的地质灾害易发区域,通过建立无人机飞行模式的能耗模型,并采用近似细胞分解技术将区域离散为方格网,以提高图像获取精度。为解决EURP问题,本文设计了一个混合元启发式算法(EGHM),结合大邻域搜索(LNS)和可变邻域下降(VND)进行优化。

2.问题描述与数学模型

参数定义

An illustrative small example of the problem

本文探讨了无人机在多个地质灾害易发区域监测中的能源高效路径规划问题,该问题涉及一队无人机从仓库出发,对多个目标区域进行监控,并在电池限制内返回。采用近似细胞分解技术将区域离散为方格网格,通过设定能耗模型考虑不同飞行模式的能量消耗。目标是确定最优路径,最小化整体能耗。假设包括无人机具有垂直起降能力,路径无碰撞,并保持恒定飞行高度。

The processes of geohazard-prone area gridding

本文通过近似细胞分解方法对地质灾害易发区域进行网格化,将区域划分为正方形网格单元,每个单元由中心点和边长定义。只有与凸多边形P重叠的单元格中心点被视为无人机访问的节点。采用绕数算法验证中心点是否位于凸多边形内部,若不在内部,则检查是否与多边形的边相交,以确定是否为有效节点。最终,生成一个均匀的矩形网格覆盖整个地质灾害易发区域。

无人机能源消耗模型描述了无人机在飞行中的能量消耗,涵盖直线飞行、转向和悬停三种飞行模式。在直线飞行模式下,能量消耗与飞行距离和速度相关;转向时的能量消耗由转向角度决定,并通过余弦定理计算;悬停时的能量消耗与悬停时间和相关比率有关。

数学模型

3.能源网格混合元启发式算法

能源网格混合元启发式算法包括:预计算阶段、构造算法生成初始解、通过大邻域搜索框架(LNS)进行解增强、基于可变邻域下降方法(VND)优化解。通过破坏与修复算子、邻域算子等方法,算法在区域和节点层面逐步改进解,最终输出最佳解。

在预计算过程中,定义地质灾害易发区域的近似距离矩阵通过虚拟质心之间的旅行距离来近似区域间的距离。确定每个地质灾害易发区域的虚拟质心:
x‾l=∑i∈Nlxi∣Nl∣,y‾l=∑i∈Nlyi∣Nl∣\overline{x}_{l}=\frac{\sum_{i\in N_{l}}x_{i}}{|N_{l}|},\quad\overline{y}_{l}=\frac{\sum_{i\in N_{l}}y_{i}}{|N_{l}|} xl=NliNlxi,yl=NliNlyi

破坏算子移除整个地质灾害易发区域,以保持目标区域内节点分组。设计了两种主要的破坏算子:最差尖角移除(WSAR)和最差区域转向角移除(WATAR),旨在通过减少转向和尖角来降低无人机能量消耗。除此之外,还设计了四种有效的破坏算子,包括随机破坏移除(RDR)、相关破坏(ReD)、最差破坏(WD)和路线破坏(RoD),这些算子通过移除区域或路径来优化解决方案,增强算法的解的质量。

Intra-area route generated using grid-based repair with the entry node (EnN) and exit node (ExN)

本文为重新插入移除的地质灾害易发区域,设计了三种修复算子:最近修复、路径成本优先修复和网格基础修复。最近修复按插入最少的原则将区域插入部分解;路径成本优先修复优先插入成本最高的区域;网格基础修复利用波形算法和深度限制搜索,重新规划区域内路径。

4.结果展示

论文仿真

5.参考文献

[1] Han Z, Fang C, Wang W, et al. Energy-Efficient UAV routing problem based on approximate cellular decomposition for geohazards monitoring[J]. Computers & Operations Research, 2025: 107154.

6.代码获取

xx

7.算法辅导·应用定制·读者交流

xx

http://www.xdnf.cn/news/1466821.html

相关文章:

  • 实战案例:数字孪生+可视化大屏,如何高效管理智慧能源园区?
  • Swift 解题:LeetCode 372 超级次方(Super Pow)
  • C/C++ 与 Lua 互相调用详解
  • SpringMVC(一)
  • 混合架构大型语言模型(Jamba)
  • 当低代码遇上AI,有趣,实在有趣
  • WebRTC进阶--WebRTC错误Failed to unprotect SRTP packet, err=9
  • 【Flutter】drag_select_grid_view: ^0.6.2 使用
  • AI架构师的思维方式与架构设计原则
  • 【LeetCode - 每日1题】最少操作使num1归零
  • Bean作用域和生命周期
  • Golang中的context包介绍及源码阅读
  • 谙流 ASK 技术解析(一):秒级扩容
  • Android,jetpack Compose模仿QQ侧边栏
  • 华为云昇腾云服务
  • 数据安全成焦点:基于Hadoop+Spark的信用卡诈骗分析系统实战教程
  • 为什么外网主机可以telnet通内网nginx端口,但是http请求失败?
  • Mysql:由逗号分隔的id组成的varchar联表替换成对应文字
  • Tenda AC20路由器缓冲区溢出漏洞分析
  • iOS 抓包工具有哪些?开发、测试与安全场景的实战选择
  • 软考 系统架构设计师系列知识点之杂项集萃(140)
  • 使用 chromedp 高效爬取 Bing 搜索结果
  • 安装Codex(需要用npm)
  • Chrome 插件开发入门指南:从基础到实践
  • 达梦数据守护集群监视器详解与应用指南
  • vsan高可用:确保可访问性、全部数据迁移,两种类型权衡
  • 软件启动时加配置文件 vs 不加配置文件
  • Go 1.25.1基本包
  • 凌力尔特(LINEAR)滤波器LTC1068的二阶滤波器模块设计
  • STM32 USBx Device HID standalone 移植示例 LAT1466