NEH启发式算法+Tabu搜索算法

该算法来源于文章2019-IEEE Access-Evolutionary Planning of Multi-UAV Search for Missing Tourists

假设已经为无人机u_j随机分配了一个子区域的集合C_j \in A作为其搜索路径x_j

x_j = \left \{(a_{j,1},k_{j,1}), (a_{j,2},k_{j,2}),..., (a_{j,m_j},k_{j,m_j}) \right \} (1\leq i\leq m_j)

其中\left \{ a_{j,1}, a_{j,2},...,a_{j,m_j} \right \}→无人机u_j将要搜索的子区域序列

k_{j,i}→无人机u_j搜索子区域a_{j,i}时所用的搜索模式

路径x_j的适应度可以通过总探测概率与消耗的总搜索时间之比来进行评估:

其中t_{j,i}表示无人机u_j开始在其搜索路径上的第i个子区域进行搜索的时间,可被计算为:

\Delta t(i,i',j)→飞行时间

\Delta \tau (i, j, k)→搜索时间 

具体步骤如Algorithm 1所示,先通过NEH启发式算法构建无人机的初始搜索路径,然后通过紧急搜索算法迭代地改进初始路径。

1. NEH启发式算法

1) 将C_j中的子区域按目标定位概率与到无人机u_j的距离之比递减排序

N:计算目标定位概率,目标到无人机之间的距离

2) 构建C_j中前两个子区域的局部调度x_j,使当前适应度最大

N:初始路径,路径的适应度计算

3) i = 3

4) while循环→条件i < |C_j|

        在i个可能的子区域中,将第i个子区域插入路径x_j,使当前的适应度最大化

        i = i + 1

2. Tabu搜索算法 

Tabu迭代地将当前解移动到没有被禁忌表禁止的最佳领域解,其中的领域解是通过在搜索路径X_j中交换两个相邻的子区域来获得的。

此外通过将被交换子区域的搜索模式k更改为k\pm 1,再在每个领域解上进行一次局部搜索

禁忌搜索操作的最大次数\widehat{s}被设置为|C_j| / 2,禁忌长度\widehat{L}被设置为6

1) 初始化一个空的禁忌表T_L

2) s = 0, x^*_j = x_j=

3) while循环→条件s < \widehat{s}

        i^* = \arg \max_{1\leq i\leq |C_j| - 1, i\notin T_L} f(x^{(i)}_j)→条件

                                                      →x_j^{(i)}是通过交换x_j的第i个子区域和第i + 1个子区域得到的邻域

        x^{(i^*)}_j赋值给x_j

        将i^*添加到禁忌表T_L

        如果|T_L| > \widehat{L}→讲第一个元素从T_L中移除

        如果f(x_j) < f(x^*_j)x_j赋值给x^*_j

        s = s + 1

算法最终的结果是返回一个新的搜索路径

个人学习笔记,后续可能会对这部分代码进行复现

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值