码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 一种基于混合策略的灰狼优化算法-附代码


    一种基于混合策略的灰狼优化算法

    文章目录

    • 一种基于混合策略的灰狼优化算法
      • 1.灰狼优化算法
      • 2. 改进灰狼优化算法
      • 3.实验结果
      • 4.参考文献
      • 5.Matlab代码
      • 6.Python代码

    摘要:灰狼优化算法作为一种群体智能算法,不可避免地会产生陷入局部寻优和收敛速度慢的问题。本文提出一种混合的改进策略,把动态权重和动态种群的结合起来,在提高收敛速度的同时,产生较好的解。

    1.灰狼优化算法

    基础灰狼算法的具体原理参考,我的博客:https://blog.csdn.net/u011835903/article/details/107716390

    2. 改进灰狼优化算法

    提出一种动态权重策略,基于权重的个体狼位置计算如式(6),(7)所示 。
    w 1 = ∣ X 1 ∣ ∣ X 1 ∣ + ∣ X 2 ∣ + ∣ X 3 ∣ , w 2 = ∣ X 2 ∣ ∣ X 1 ∣ + ∣ X 2 ∣ + ∣ X 3 ∣ , w 3 = ∣ X 3 ∣ ∣ X 1 ∣ + ∣ X 2 ∣ + ∣ X 3 ∣ (6) w_{1}=\frac{\left|X_{1}\right|}{\left|X_{1}\right|+\left|X_{2}\right|+\left|X_{3}\right|}, w_{2}=\frac{\left|X_{2}\right|}{\left|X_{1}\right|+\left|X_{2}\right|+\left|X_{3}\right|}, w_{3}=\frac{\left|X_{3}\right|}{\left|X_{1}\right|+\left|X_{2}\right|+\left|X_{3}\right|}\tag{6} w1​=∣X1​∣+∣X2​∣+∣X3​∣∣X1​∣​,w2​=∣X1​∣+∣X2​∣+∣X3​∣∣X2​∣​,w3​=∣X1​∣+∣X2​∣+∣X3​∣∣X3​∣​(6)

    X ( t + 1 ) = ( w 1 X 1 + w 2 X 2 + w 3 X 3 ) / 3 (7) X(t+1)=\left(w_{1} X_{1}+w_{2} X_{2}+w_{3} X_{3}\right) / 3 \tag{7} X(t+1)=(w1​X1​+w2​X2​+w3​X3​)/3(7)

    动态权重策略是一种对迭代过程进行改进的策略 ,能够很大程度上提高灰狼优化算法的收敛速度,但全局搜索能力并不是很好。

    采用动态种群的思想,每一次迭代完成后,把适应度值较低的一半个体狼信息进行改变,可以及时地跳出局部寻优。基于动态种群的计算如式(8)~(11)所示 ,这 4 个公式并不是按顺序依次执行,而是每个公式以 1/4 的概率执行。
    X ( t + 1 ) = X α ± ( u b − l b ⋅ r + l b ) (8) X(t+1)=X_{\alpha} \pm(u b-l b \cdot r+l b) \tag{8} X(t+1)=Xα​±(ub−lb⋅r+lb)(8)

    X ( t + 1 ) = X β ± ( u b − l b ⋅ r + l b ) (9) X(t+1)=X_{\beta} \pm(u b-l b \cdot r+l b)\tag{9} X(t+1)=Xβ​±(ub−lb⋅r+lb)(9)

    X ( t + 1 ) = X δ ± ( u b − l b ⋅ r + l b ) (10) X(t+1)=X_{\delta} \pm(u b-l b \cdot r+l b) \tag{10} X(t+1)=Xδ​±(ub−lb⋅r+lb)(10)

    X ( t + 1 ) = X δ ± ( u b − l b ⋅ r + l b ) (11) X(t+1)=X_{\delta} \pm(u b-l b \cdot r+l b) \tag{11} X(t+1)=Xδ​±(ub−lb⋅r+lb)(11)

    本文对迭代过程进行改进,通过把动态权重和动态种群结合起来,提出一种混合策略的灰狼优化算法。
    改进后的灰狼优化算法主要步骤:
    (1)在狼群变量的上限和下限中随机初始化狼群和初始化算法参数。
    (2)计算每个个体狼的适应度值。
    (3)选择适应度排在前 3 的个体狼作为 , α , β , δ \alpha,\beta,\delta α,β,δ 狼。
    (4)根据式(1),(2),(3),(6),(7)计算其它狼的位置。
    (5)重新计算所有个体狼的适应度值。

    3.实验结果

    请添加图片描述

    4.参考文献

    [1]牛家彬,王辉.一种基于混合策略的灰狼优化算法[J].齐齐哈尔大学学报(自然科学版),2018,34(01):16-19+32.

    5.Matlab代码

    6.Python代码

  • 相关阅读:
    ORACLE 在内存管理机制上的演变和进化
    【SpringBoot】SpringBoot+Zookeeper+Dubbo整合
    深入详解Mybatis的架构原理与6大核心流程
    Hadoop 集群小文件归档 HAR、小文件优化 Uber 模式
    HTML5期末考核大作业:基于Html+Css+javascript的网页制作(化妆品公司网站制作)
    技术博客|第8期:广告流量匹配算法在Hulu/Disney Streaming平台的实战
    利用 docker 实现JMeter分布式压测
    img 响应式图片的实现(含srcset属性、sizes属性的使用方法,设备像素比详解)
    javascript正则表达式(语法以及正则表达式修饰符)
    Python Opencv实践 - 矩形轮廓绘制(直边矩形,最小外接矩形)
  • 原文地址:https://blog.csdn.net/u011835903/article/details/125417457
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号