智能优化算法:战争策略算法-附代码

2023-11-10

智能优化算法:战争策略算法

摘要:WSO 是 Ayyarao 等人于 2022 年提出一种基于古代战争策略的新型元启发式优化算法 。该算法灵感来自于古代战争中的攻击策略和防御策略,并通过士兵在战场上的位置更新来达到求解优化问题的目的。具有寻优能力强,收敛速度快的特点

1.战争策略算法

WSO 基于以下假设:①军队士兵随机分布于战场并攻击对方军队;攻击力最强的士兵为指挥官;国王是军队的最高领袖。②士兵根据国王和指挥官的位置动态更新位置。③国王根据战场上的局势通过战鼓动态地改变策略。④士兵根据附近士兵位置和国王位置来改变其位置。⑤对于战斗力最低的士兵或受伤的士兵,通过新兵替换或重新安置的策略进行位置更新。⑥所有士兵都有同等的概率成为国王或指挥官。

1.1 攻击策略

士兵根据国王和指挥官的位置来更新自己的位置。数学描述为
X i ( t + 1 ) = X i ( t ) + 2 ×  rand  × ( C −  King  ) + rand ⁡ × ( W i × King ⁡ − X i ( t ) ) (1) X_i(t+1)=X_i(t)+2 \times \text { rand } \times(C-\text { King })+\operatorname{rand} \times\left(W_i \times \operatorname{King}-X_i(t)\right) \tag{1} Xi(t+1)=Xi(t)+2× rand ×(C King )+rand×(Wi×KingXi(t))(1)
式中, X i ( t + 1 ) X_i(t+1) Xi(t+1) 为第 t + 1 t+1 t+1 次迭代士兵新位置; X i ( t ) X_i(t) Xi(t) 为第 t t t 次迭代士兵位置; C C C 为指挥官位置; King 为国王 位置; rand 为介于 0 和 1 之间的随机数; W i W_i Wi 为国王位置的权重。

1.2 排序和权重。

士兵的等级 R i R_i Ri 取决于他在战场上的攻击力 (适应度值)。若士兵新位置的攻击力 F n F_n Fn 小于前代位置的攻击力 F p F_p Fp, 则士兵占据前一个位置。数学描述为
X i ( t + 1 ) = ( X i ( t + 1 ) ) × ( F n ⩾ F p ) + ( X i ( t ) ) × ( F n < F p ) (2) X_i(t+1)=\left(X_i(t+1)\right) \times\left(F_n \geqslant F_p\right)+\left(X_i(t)\right) \times\left(F_n<F_p\right) \tag{2} Xi(t+1)=(Xi(t+1))×(FnFp)+(Xi(t))×(Fn<Fp)(2)
若士兵成功更新位置, 则士兵等级 R i R_i Ri 将得到提升。数学描述为
R i = ( R i + 1 ) × ( F n ⩾ F p ) + ( R i ) × ( F n < F p ) (3) R_i=\left(R_i+1\right) \times\left(F_n \geqslant F_p\right)+\left(R_i\right) \times\left(F_n<F_p\right) \tag{3} Ri=(Ri+1)×(FnFp)+(Ri)×(Fn<Fp)(3)
根据士兵的攻击力 (适应度值) 进行排序, 权重更新数学描述为:
W i = W i × ( 1 − R i / T ) α (4) W_i=W_i \times\left(1-R_i / T\right)^\alpha \tag{4} Wi=Wi×(1Ri/T)α(4)
式中, F n F_n Fn 为士兵新位置攻击力 (适应度值); F p F_p Fp 为士兵前代位置攻击力 (适应度值); R i R_i Ri 为第 i i i 个士兵的 等级; α \alpha α 为指数变化因子。

1.3防御策略

士兵根据附近士兵位置和国王位置来改变其位置, 并在不输掉战斗的情况下最大限 度地保护国王。数学描述为
X i ( t + 1 ) = X i ( t ) + 2 ×  rand  × (  King  − X rand  ( t ) ) + rand ⁡ × W i × ( C − X i ( t ) ) (5) X_i(t+1)=X_i(t)+2 \times \text { rand } \times\left(\text { King }-X_{\text {rand }}(t)\right)+\operatorname{rand} \times W_i \times\left(C-X_i(t)\right) \tag{5} Xi(t+1)=Xi(t)+2× rand ×( King Xrand (t))+rand×Wi×(CXi(t))(5)
式中, X rand  ( t ) X_{\text {rand }}(t) Xrand (t) 为第 t t t 次迭代士兵的随机位置; 其他参数意义同上。

1.4替换或安置弱兵。

WSO 利用两种方式更新弱兵位置: 一是利用式 (6) 中给出的随机士兵位置 替换弱兵位置; 二是通过式 (7)将弱兵安置到更靠近整个战场中位数的位置, 这将有利于提高算法的收 敛性。

X w ( t + 1 ) = L b + rand ⁡ × ( U b − L b ) (6) X_w(t+1)=L b+\operatorname{rand} \times(U b-L b) \tag{6} Xw(t+1)=Lb+rand×(UbLb)(6)

X w ( t + 1 ) = − ( 1 − randn ⁡ ) × ( X w ( t ) − median ⁡ ( X ) ) + K i n g (7) X_w(t+1)=-(1-\operatorname{randn}) \times\left(X_w(t)-\operatorname{median}(X)\right)+K i n g\tag{7} Xw(t+1)=(1randn)×(Xw(t)median(X))+King(7)

式中, X w ( t + 1 ) X_w(t+1) Xw(t+1) 为第 t + 1 t+1 t+1 次迭代替换或安置的弱兵位置; U b 、 L b U b 、 L b UbLb 为搜索空间的上、下限值; X w ( t ) X_w(t) Xw(t) 为第 t t t 次 迭代弱兵位置; randn 为 0 和 1 之间均匀分布的随机数; median (.) 为中位数函数。
请添加图片描述

3.实验结果

请添加图片描述

4.参考文献

[1] T. S. L. V. Ayyarao et al., “War Strategy Optimization Algorithm: A New Effective Metaheuristic Algorithm for Global Optimization,” in IEEE Access, vol. 10, pp. 25073-25105, 2022, doi: 10.1109/ACCESS.2022.3153493.

5.Matlab

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

智能优化算法:战争策略算法-附代码 的相关文章

随机推荐

  • 计算机内核态和用户态,用户态和内核态的区别是什么

    用户态和内核态的区别是 内核态运行操作系统程序 操作硬件 用户态运行用户程序 当程序运行在3级特权级上时 可以称之为运行在用户态 当程序运行在0级特权级上时 称之为运行在内核态 本文操作环境 windows10系统 thinkpad t49
  • 修复Qt程序长时间运行控件停止刷新

    问题描述 我的Qt程序有一个时间显示的功能 由于需要保持长期运行 这个时间控件就需要长期持续刷新 但是 当程序运行一段时间后 这个控件就似乎累了一样 不再继续刷新了 为了解决这个问题 我尝试过很多方法 包括 每隔一段时间 获取时间sette
  • linux下安装mysql5.7.17及简单配置&&HIVE安装和使用

    1 mysql5 7 17安装在 usr local mysql目录里面 也可以安装在其他地方 安装包最好与Linux系统一样 eg 32位的就是 mysql 5 7 17 linux glibc2 5 i686 tar gz 官网可下载
  • 基于Android+OpenCV+CNN+Keras的智能手语数字实时翻译——深度学习算法应用(含Python、ipynb工程源码)+数据集(一)

    目录 前言 总体设计 系统整体结构图 系统流程图 运行环境 Python环境 TensorFlow环境 Keras环境 Android环境 1 安装AndroidStudio 2 导入TensorFlow的jar包和so库 3 导入Open
  • 【cfeng work】什么是SaaS? SaaS详细介绍

    WorkProj 内容管理 SaaS SaaS的优势 SaaS的注意项 SaaS产品核心组件 cfeng结合work理解SaaS 本文introduce SaaS的相关内容 昨天cfeng已经介绍过云原生了 其实就是应用在设计上就要围绕Cl
  • 来可电子CAN转232/485设备在使用时可能遇到的问题和解决方案

    使用场景 上位机软件通过232串口发送数据经过CAN转232设备转换成CAN数据发送到仪表中 仪表接收到指定的数据后 返回特定的CAN数据 串口调试工具数据收发测试 CAN转232设备在使用中的接线 使用过程中可能遇到的问题 1 串口按照规
  • JDBC概述

    JDBC JDBC Java Database Connectivity java数据库连接 java语言中用于连接各种数据库的应用程序编程接口 为了解决 使java 编写的程序不再依赖于具体的数据库 JDBC操作不同数据库仅仅只是连接方式
  • 逆天啦!国产自研多环境开发软件 CEC-IDE 问世,“卡脖子”问题完美解决?

    来自 JavaGuide 震撼到了 厉害 继国产自研浏览器 国产自研操作系统 国产自研手机系统后的全新力作 国产自研 IDE 它就是 CEC IDE 一款由数字广东公司与麒麟软件联合打造的 是国内首个适配国产操作系统 自主创新的一款安全 专
  • 李沐论文精读系列一: ResNet、Transformer、GAN、BERT

    文章目录 一 ResNet 1 0 摘要 论文导读 1 1 导论 1 1 1 为什么提出残差结构 1 1 2 实验验证 1 2 相关工作 1 3 实验部分 1 3 1 不同配置的ResNet结构 1 3 2 残差结构效果对比 1 3 3 残
  • Discuz论坛 创始人/超级管理员密码忘记解决办法!

    1 首先要明白一个基础知识 网站的管理员 admin 和创始人 UCenterAdministrator 不是一回事 一般人都误把admin当成UCenterAdministrator 而那些懂的人在给人们讲如何找回密码 比方使用tools
  • 浅谈对梯度下降法的理解

    浅谈梯度下降法 如果读者对方向导数和梯度的定义不太了解 请先阅读上篇文章 方向导数与梯度 前些时间接触了机器学习 发现梯度下降法是机器学习里比较基础又比较重要的一个求最小值的算法 梯度下降算法过程如下 1 随机初始值 2 迭代 直至收敛 表
  • VMware 安装 OpenWrt 旁路由并配置 PassWall

    1 准备 OpenWrt 镜像包 我已经转好了 vmdk 格式的 更多的可以去恩山论坛下载 OpenWrtvmdk格式 虚拟化文档类资源 CSDN下载 也可以在这个平台在线定制 OpenWrt固件下载与在线定制编译 2 网络选择 NAT 模
  • Tensorflow中的GPU分配方法

    Tensorflow中的GPU分配方法 默认情况下 TensorFlow 会使用其所能够使用的所有 GPU 这样 会出现浪费的情况 列出当前设备上的GPU和CPU 首先 通过 tf config experimental list phys
  • Python scrapy爬虫 生成 启动 crawlspider命令 爬取示例网站的数据案例

    创建一个scrapy项目 scrapy startproject myscrapy 生成一个爬虫 scrapy genspider example example com 启动爬虫 scrapy crawl example 生成crawls
  • vim终极配置:spf13-vim

    spf13 vim介绍 1 没有超户的linux操作系统如何安装vim最新版 spf13 vim常用插件介绍 1 NERDTree 2 neocomplcache 3 EasyMotion 4 ctags 5 tagbar 1 spf13
  • Python下pefile的使用

    其实在pefile主页的Wiki上已经详细介绍了 https code google com p pefile wiki UsageExamples这里给出了使用例子 同时参照着看雪http bbs pediy com showthread
  • Count Color 【POJ - 2777】【线段树】

    题目链接 这道题一开始觉得处理颜色很繁琐 但是后来发现了个东西 T lt 30 对于这个数据 似乎可以开成比特位 二进制 然后进行处理 会发现 这就是区间更新的线段树了 有几个坑 我跳进去过了 一个是初始化要为1 颜色1 其次A和B的大小是
  • 手把手教你构建一个web前端项目,全网最详细教程!

    1 选择现成的项目模板还是自己搭建项目骨架 搭建一个前端项目的方式有两种 选择现成的项目模板 自己搭建项目骨架 选择一个现成项目模板是搭建一个项目最快的方式 模板已经把基本的骨架都搭建好了 你只需要向里面填充具体的业务代码 就可以通过内置的
  • asp.net core linux生成word方案 aspose

    代码 using System using System Diagnostics using Microsoft AspNetCore Mvc using Microsoft Extensions Logging using AsposeD
  • 智能优化算法:战争策略算法-附代码

    智能优化算法 战争策略算法 摘要 WSO 是 Ayyarao 等人于 2022 年提出一种基于古代战争策略的新型元启发式优化算法 该算法灵感来自于古代战争中的攻击策略和防御策略 并通过士兵在战场上的位置更新来达到求解优化问题的目的 具有寻优