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

2024年ESWA SCI1区TOP,异构无人机配送问题的集成多目标优化方法,深度解析+性能实测

目录

    • 1.摘要
    • 2.问题描述
    • 3.提出的算法
    • 4.结果展示
    • 5.参考文献
    • 6.代码获取
    • 7.算法辅导·应用定制·读者交流

1.摘要

针对异构无人机末端配送路径优化问题,本文提出了一种基于投票机制的集成多目标遗传算法。通过改进聚类方法将客户划分为子区域,降低问题规模,并结合定制化遗传算子与投票式集成策略,提高解的收敛性与多样性。实验结果表明,该方法在合成与实际算例中均优于对比算法,验证了其在无人机末端配送中的有效性与实用价值。

2.问题描述

异构无人机末端配送问题(HDDPBO)由一架大型无人机与多架小型无人机协同完成:大型无人机负责运输并在各子区域释放小型无人机,小型无人机在子区域内完成多客户配送后前往自动化机场回收。大型无人机不直接服务客户,所有客户节点仅被小型无人机访问一次。系统假设路径无子回路,自动化机场仅作为临时回收与存储节点,其运营成本不予考虑。

在有向网络上定义母机与末端机协同路径,母机负责在各子区域释放末端机,末端机在簇内完成多客户配送并飞往自动化机场回收。模型以最大化客户满意度(基于软时间窗)和最小化总配送距离成本为优化目标,并通过路径唯一性、载重约束、时间连续性及无子回路等约束,确保配送过程的可行性与合理性。

3.提出的算法

基于投票机制的集成多目标遗传算法(VEMOGA)通过考虑无人机载重约束的改进聚类算法,将原问题划分为多个子问题以降低规模。VEMOGA引入集成多排序准则的投票式环境选择机制,在兼顾收敛性与多样性的同时筛选高质量帕累托前沿解。

客户聚类算法

为提升求解效率,本文提出了一种考虑末端无人机载重约束的改进客户聚类算法,该方法首先采用 K-means 算法生成初始客户聚类方案,以最小化簇内距离;随后根据末端无人机的最大载重对聚类结果进行调整:当某子区域内包裹总重量超过载重上限时,通过增加簇数或启发式调整客户分配,使每个簇满足载重约束。

染色体编码策略

本文针对 HDDPBO 设计了一种基于标签规则的染色体编码策略,该编码方式在单一染色体中同时表示母机路径与多架末端机路径,并通过节点重复规则隐式标识末端机的起飞点、配送节点及回收机场。解码过程中可依据重复节点准确划分母机与各末端机的独立航线,从而完整刻画协同配送过程。

后代生成算法

本文设计了一种由多点交叉与变异搜索组成的后代生成算法,采用锦标赛选择从父代种群中选取个体,并基于子区域结构实施多点交叉操作,每个子区域对应一个交叉点,从而高效重组母机与末端机的协同路径;引入多种变异算子对后代进行局部搜索以增强解的多样性。

为提升多目标优化效果,提出了一种基于投票机制的环境选择方法,通过集成多种排序策略并动态调整其权重,在兼顾收敛性与多样性的同时稳定筛选高质量帕累托解。

4.结果展示

5.参考文献

[1] Wen X, Wu G, Li S, et al. Ensemble multi-objective optimization approach for heterogeneous drone delivery problem[J]. Expert Systems with Applications, 2024, 249: 123472.

6.代码获取

xx

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

xx

http://www.jsqmd.com/news/326996/

相关文章:

  • 【图像处理相关毕设选题选题指导】2026新颖优质选题推荐
  • Linux Lite 7.8重磅发布,12款核心应用全面重写,正式迈向Python + GTK4新时代!
  • 代码动态分析工具
  • 浔川社团关于产品数据情况的官方通告
  • Linux的Ext系列文件系统
  • 职场总遇“奇葩”?可能是你心里的“老剧本”卡了Bug,咱们来修修它
  • Python面向对象编程(OOP)终极指南
  • esm.sh路径遍历漏洞深度解析:CVE-2026-23644技术细节与修复方案
  • 【题解】P12766 [POI 2018 R3] 完备数 Complete numbers
  • C++中的工厂模式变体
  • LSTM长短期记忆神经网络分位数回归多输入单输出(Matlab) 1.输入多个特征,输出单个特...
  • 高性能日志库C++实现
  • 【题解】P10664 BZOJ3328 PYXFIB
  • 在你的Node.js项目中轻松集成WhatsApp功能!
  • 自动化机器学习(AutoML)库TPOT使用指南
  • C++中的职责链模式
  • 双十一秒杀:如何让1万人同时抢1瓶水,系统却不崩?
  • 给女朋友选口红色号?这简直是完美的「分类算法」实战!
  • Python包管理神器:pip的十大高级用法
  • 理解并使用Proxy 和 Reflect
  • C++中的对象池模式
  • 【题解】AT_agc003_e [AGC003E] Sequential operations on Sequence
  • 【题解】P3641 [APIO2016] 最大差分
  • 【题解】P5955 [POI 2018] Pionek
  • 五个值得关注的Python新库
  • 中医执医机构选择:我们应该选哪个课程好?
  • 【题解】P14303 [GCJ 2011 Finals] Runs 加强版
  • 【题解】SP3912 MTREECOL - Color a tree
  • 【题解】P10832 [COTS 2023] 传 Mapa
  • Agent设计模式学习(基于langchain4j实现)(9) - 人机协同