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

2024年INS SCI2区,强化搜索自适应大邻域搜索算法RSALNS+无人机扩展型协作多任务分配,深度解析+性能实测

目录

    • 1.摘要
    • 2.ECMTAP模型
    • 3.强化搜索自适应大邻域搜索算法RSALNS
    • 4.结果展示
    • 5.参考文献
    • 6.代码获取
    • 7.算法辅导·应用定制·读者交流


1.摘要

为应对日益复杂的军事任务需求,多架异构无人机的协同作业成为提升任务执行效率的关键。本文提出了扩展型协作多任务分配问题(ECMTAP),其调度不同基站的异构无人机完成具有时序约束的多类型目标任务,目标是最小化总体任务完成时间。ECMTAP中不同目标类型对应不同任务组合,并要求打击任务在侦察任务之后、评估任务在打击任务之后进行,显著提升了任务分配的复杂性。因此,本文提出了基于强化搜索策略的自适应大邻域搜索算法(RSALNS),通过目标内任务调整与评估任务调整两种核心破坏-修复机制,有效优化任务序列和分配策略。

2.ECMTAP模型

ECMTAP描述为在作战场景中,存在 N b N_b Nb个无人机基地和 N m N_m Nm个目标。无人机基地集合记为 B S = { b s ∣ p = 1 , 2 , . . . , N b } BS=\{b_s|p=1,2,...,N_b\} BS={bsp=1,2,...,Nb},目标集合记为 M = { m i ∣ i = 1 , 2 , . . . , N m } M=\{m_i|i=1,2,...,N_m\} M={mii=1,2,...,Nm}。本文将目标分为三类:仅需侦察的目标、需侦察和打击的目标、需侦察、打击和评估的目标。

侦察(Rec)、打击(Att)、评估(Eva)分别代表 reconnaissance、attack,evaluation。对于第 i i i个目标,其任务集合记为 T i = { T i , j ∣ j = 1 , 2 , . . . , N j } T_i=\{T_{i,j}|j=1,2,...,N_j\} Ti={Ti,jj=1,2,...,Nj}

ECMTAP

任务分配过程中,同一目标的不同任务可由不同类型的无人机协作完成,每项任务完成后无人机需返回基地。合理安排无人机的出发、任务执行及返回顺序,确保所有目标任务均在约束条件下顺利完成。

考虑了Rec无人机和Att无人机两种类型的无人机。任务类型分为{Rec}、{Att, Eva}和{Rec, Att, Eva}三种类型。不同类型的无人机只能执行相应类型的任务。

参数定义

为描述无人机多任务协作分配问题,模型中设定了三类决策变量。使用二元变量 x i , j k x_{i,j}^k xi,jk 表示无人机 k k k是否按顺序执行任务 i i i和任务 j j j:若执行则为1,否则为0;设有两个连续变量,分别表示任务的开始与结束时间。任务分配的优化目标是最小化全部无人机的总飞行时间。模型假设每项任务的执行时间为常数,因此以飞行时间( t c i , j tc_{i,j} tci,j)作为主要优化指标, t c i , j tc_{i,j} tci,j表示无人机 k k k从任务 i i i的目标飞行至任务 j j j的目标所需的时间。
无人机 u k u_k uk执行全部分配任务的总飞行时间可表示为:
f t k = ∑ i = 1 n ∑ j = 1 , j ≠ i n x i , j k × t c i , j , ∀ k ∈ U , n ∈ B S ∪ T S f_{tk}=\sum_{i=1}^n\sum_{j=1,j\neq i}^nx_{i,j}^k\times tc_{i,j},\quad\forall k\in U,n\in BS\cup TS ftk=i=1nj=1,j=inxi,jk×tci,j,kU,nBSTS
多无人机协同任务分配的总体目标即为所有无人机总飞行时间的最小值:
min ⁡ f = ∑ k ∈ U f t k \min f=\sum_{k\in U}f_{tk} minf=kUftk

3.强化搜索自适应大邻域搜索算法RSALNS

RSALNS算法以模拟退火算法(SA)为全局搜索框架,通过双层迭代机制实现复杂任务分配的高效优化。外层循环主要负责模拟退火温度及算子选择概率的自适应调整,内层循环则采用轮盘赌机制选择破坏-修复算子,结合Metropolis准则不断更新和优化当前解。算法首先生成初始解并完成参数初始化,随后通过动态调整算子权重,在迭代过程中交替应用任务内调整与评估任务调整等算子,持续探索优解。每次邻域搜索后,算法根据解的质量和接受准则,实时更新当前解和全局最优解,并相应调整算子权重与选择概率。

RSALNS伪代码

初始解生成

在任务分配过程中,需确保所有任务均能在规定的时间窗内顺利执行。若某一任务违反时间窗约束,则无人机将无法按时完成该目标任务。为获得初始可行解,本文提出了最高优先级优先分配算法(HPFA),该算法以贪心策略为核心,依据任务优先级进行排序并优先分配优先级最高的任务。任务优先级由任务类型及最早可执行时间两方面决定,具体优先顺序为:优先分配侦察任务(Rec),其次为打击任务(Att),最后为评估任务(Eva)。其中,侦察任务的最早执行时间由无人机从基地飞往目标所需的飞行时间决定;打击与评估任务则根据前序任务的完成时间确定最早可执行时间。整个任务分配过程中,算法动态计算总飞行时间以辅助决策。待所有任务均成功分配后,即获得一组可行的初始解。

任务执行失败示意图

HPFA伪代码

强化搜索策略

强化搜索策略包括两个在内层循环中实现的破坏-修复操作,第一阶段的破坏-修复操作针对同一目标下需遵循严格顺序的任务,第二阶段则面向不同目标下无顺序依赖的评估任务。通过保证目标内任务的正确顺序及优化评估任务的分配,强化搜索策略能够有效引导算法跳出局部最优。

算子设计

为提升搜索过程中邻域解的多样性,本文针对ECMTAP问题设计了五种破坏算子和两种修复算子。阶段破坏算子共包含四种,主要针对存在顺序关系的目标任务:

  • 随机破坏算子,随机选择目标并将其所有任务移出当前解,增强解的多样性;
  • 贪心破坏算子,优先破坏对目标函数影响最大的目标任务,便于优化解结构并加速收敛;
  • 邻域破坏算子,通过分析移除各目标任务后的目标值变化,优先选择带来最大改进的任务集进行破坏,有助于深入探索邻域;
  • 冲突消解算子,识别并移除违反时间窗或顺序约束的目标任务,确保解的可行性。

二阶段破坏算子针对评估任务,优先移除当前解中结束时间最晚的若干评估任务,将其重新分配至其他无人机。修复算子方面,RSALNS设计了两类:

  • 贪心修复算子I,将移除列表中的任务插入当前解的所有可行位置,选择最小化时间消耗的位置插入,从而优化整体目标函数;
  • 贪心修复算子II,在I的基础上引入随机扰动,依据任务优先级与适应度分布引入噪声调整插入点。

自适应机制

RSALNS算法采用轮盘赌机制动态选择破坏算子和修复算子。为提升优化效率,算法引入自适应算子选择策略:通过持续跟踪各算子在迭代过程中的实际表现,动态调整其被选中的概率。破坏和修复算子的初始选择概率均等设置,且同类型算子的概率和为1。每当算子被使用后,其权重得分会及时更新,经过一定轮数后,算子的选择概率将根据其优化效果进行自适应调整。
w i g + 1 = w i g ( 1 − ρ ) + ρ ⋅ π i ω i ‾ , ∀ i ∈ D f d o r R w_i^{g+1}=w_i^g(1-\rho)+\frac{\rho\cdot\pi_i}{\overline{\omega_i}},\forall i\in D_{fd}orR wig+1=wig(1ρ)+ωiρπi,iDfdorR
P i g + 1 = w i g + 1 ∑ i ∈ D f d o r R w i g + 1 P_i^{g+1}=\frac{w_i^{g+1}}{\sum_{i\in D_{fd}orR}w_i^{g+1}} Pig+1=iDfdorRwig+1wig+1

4.结果展示

论文仿真


5.参考文献

[1] Xiao Y, Li Y, Liu H, et al. Adaptive large neighborhood search algorithm with reinforcement search strategy for solving extended cooperative multi task assignment problem of UAVs[J]. Information Sciences, 2024, 679: 121068.

6.代码获取

xx

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

http://www.dtcms.com/a/265708.html

相关文章:

  • 实现如何利用 Kafka 延时删除 用户邮箱的验证码(如何发送邮箱+源码) - 第一期
  • 前缀和算法详解
  • FASTAPI+VUE3平价商贸管理系统
  • React自学 基础一
  • 基于大语言模型进行Prompt优化
  • 深入解析 AAC AudioSpecificConfig 在 RTSP/RTMP 播放器中的核心作用
  • PDF的图片文字识别工具
  • Spring AI ETL Pipeline使用指南
  • Java中的volatile到底是什么来路
  • OpenCV CUDA模块设备层-----在 GPU上高效地执行两个uint类型值的最小值比较函数vmin2()
  • 《人生顶层设计》读书笔记6
  • 开源无广告面板mdserver-web:替代宝塔实现服务器轻松管理
  • 地下管线安全的智能监测先锋:智能标志桩图像监测装置解析​
  • 矩阵批量剪辑源码搭建定制化开发:支持OEM
  • 爬虫技术-获取浏览器身份认证信息(如 Cookie、Token、Session 等)
  • Python 中如何使用 Conda 管理版本和创建 Django 项目
  • 【Docker】如何设置 `wiredTigerCacheSizeGB` 和 `resources.limits.memory`
  • BenchmarkSQL 测试 PostgreSQL 时遇到 numeric field overflow 报错的原因与解决方案
  • 请求未达服务端?iOS端HTTPS链路异常的多工具抓包排查记录
  • 区块链真的会是未来吗?
  • TCP粘包、拆包、解决
  • 什么是协同归因和贡献归因
  • WhoDB:一款基于Web的免费AI数据库管理工具
  • 刷卡登入数据获取
  • 【ArcGISPro】基于Pro的Python环境进行Django简单开发Web
  • 两个PHY芯片之间,是如何连接进行通信的?
  • 并行科技MaaS平台支持文心4.5系列开源模型调用
  • MySQL主从延迟深度解析:现象、原因与实战解决方案
  • KMP(Kotlin Multiplatform)改造(Android/iOS)老项目
  • 舵轮时钟-STM32-28路PWM--ESP8266-NTP时间