文章目录

  • 一、理论基础
    • 1、闪电搜索算法
    • 2、LSA算法流程图
  • 二、仿真实验与结果分析
  • 三、参考文献

一、理论基础

1、闪电搜索算法

闪电搜索算法(Lightning Search Algorithm, LSA)是Shareef H等受自然天气中闪电现象的启发提出的一种优化算法,模拟闪电的快速传播特性,因此收敛速度较快。
LSA是对闪电这种自然现象的观察而得到的新新算法,当闪电形成时,空气中的“放电粒子”与空气碰撞之后会产生一条电离路径或通道,并形成一条梯级先导。LSA算法利用空间放电体、引导放电体等概念建立分布函数模型来求解待解决的问题,空间放电体试图成为最优梯级先导,引导放电体代表种群中的最优个体。
(1)在一个种群规模为NNN,初始种群的生成服从均匀分布,创建初始随机种群,其概率密度函数f(xc)f(x_c)f(xc​)可以表示为f(xc)={1b−a,a≤x≤b0,else(1)f(x_c)=\begin{dcases}\frac{1}{b-a},\quad a\leq x\leq b\\[2ex]0\quad\,\,\,\,\,\,,\quad \text{else}\end{dcases}\tag{1}f(xc​)=⎩⎪⎨⎪⎧​b−a1​,a≤x≤b0,else​(1)其中,xcx_cxc​是一个候选解,aaa和bbb分别是“放电粒子”范围的最小值和最大值。
(2)引导放电体表示为HLH^LHL,由正态概率密度函数f(xk)f(x_k)f(xk​)来生成位置f(xk)=1σ2πe−(xk−μ)22σ2(2)f(x_k)=\frac{1}{\sigma\sqrt{2\pi}}e^{\displaystyle\frac{-(x_k-\mu)^2}{2\sigma^2}}\tag{2}f(xk​)=σ2π​1​e2σ2−(xk​−μ)2​(2)其中,μ\muμ为形状参数,引导放电体HLH^LHL在下一次迭代的位置为HnewL=HL+normrand(μL,σL)(3)H^L_{new}=H^L+normrand(\mu_L,\sigma_L)\tag{3}HnewL​=HL+normrand(μL​,σL​)(3)其中,normrandnormrandnormrand是正态分布函数生成的随机数,μL\mu_LμL​为形状参数,σL\sigma_LσL​为尺度参数。如果HnewLH_{new}^LHnewL​的适应度值更优,那么HLH^LHL更新为HnewLH^L_{new}HnewL​,否则HLH^LHL保持不变,直至下一次迭代。
(3)空间放电体可表示CS=[c1S,c2S,⋯,cNS]C^S=[c_1^S,c_2^S,\cdots,c_N^S]CS=[c1S​,c2S​,⋯,cNS​],它的位置服从指数分布,由式(4)决定:f(xv)={1μe−xvμ,xv>00,xv≤0(4)f(x_v)=\begin{dcases}\frac1\mu e^{\frac{-x_v}{\mu}},\quad x_v>0\\[2ex]0\quad\quad\,,\quad x_v\leq0\end{dcases}\tag{4}f(xv​)=⎩⎪⎨⎪⎧​μ1​eμ−xv​​,xv​>00,xv​≤0​(4)形状参数μ\muμ会影响CSC^SCS和HLH^LHL之间的距离,CSC^SCS在下一次迭代的位置为:Cl_newS=ClS±exprand(μl)(5)C_{l\_new}^S=C_l^S\pm exprand(\mu_l)\tag{5}Cl_newS​=ClS​±exprand(μl​)(5)其中,exprandexprandexprand是生成的随机数,服从于指数分布,μl\mu_lμl​为HLH^LHL与CSC^SCS之间的距离。如果Cl_newSC_{l\_new}^SCl_newS​有更优的适应度值,那么ClSC_l^SClS​将被Cl_newSC_{l\_new}^SCl_newS​替代,否则ClSC_l^SClS​将保持不变。
(4)分叉是放电体的另一特性,在LSA算法中分叉有两种方式,首先分叉会形成两个互相对称的通道:rl=e+g−rl(6)\boldsymbol{r_l}=e+g-r_l\tag{6}rl​=e+g−rl​(6)其中,eee和ggg表示边界,rlr_lrl​和rl\boldsymbol{r_l}rl​分别表示原来的通道和分叉产生的对称通道。为了保证种群大小不变,两通道只保留一个。

2、LSA算法流程图

LSA算法流程图如图1所示。

图1 LSA算法流程图

二、仿真实验与结果分析

将LSA与SSA、BSA、CSA和KHA进行对比,以常用23个测试函数的F1、F2(单峰函数/30维)、F10、F11(多峰函数/30维)、F18、F19(固定维度多峰函数/2维、3维)为例,实验设置种群规模为50,最大迭代次数为500,每种算法独立运算30次,结果显示如下:

函数:F1
SSA:最差值: 3.27e-08, 最优值: 8.8381e-09, 平均值: 2.0674e-08, 标准差: 5.4715e-09, 秩和检验: 3.0199e-11
BSA:最差值: 43.843, 最优值: 0.92546, 平均值: 11.3774, 标准差: 11.9736, 秩和检验: 3.0199e-11
CSA:最差值: 30.3201, 最优值: 6.1438, 平均值: 13.8803, 标准差: 4.9511, 秩和检验: 3.0199e-11
KHA:最差值: 1.2649, 最优值: 0.4863, 平均值: 0.96054, 标准差: 0.16097, 秩和检验:3.0199e-11
LSA:最差值: 8.1951e-11, 最优值: 3.1043e-19, 平均值: 3.6495e-12, 标准差: 1.5562e-11, 秩和检验: 1
函数:F2
SSA:最差值: 4.904, 最优值: 0.0056029, 平均值: 1.1192, 标准差: 1.1599, 秩和检验: 2.3715e-10
BSA:最差值: 2.1511, 最优值: 0.38432, 平均值: 1.1049, 标准差: 0.38639, 秩和检验: 3.0199e-11
CSA:最差值: 34.6743, 最优值: 11.0359, 平均值: 19.8406, 标准差: 5.4818, 秩和检验: 3.0199e-11
KHA:最差值: 2.7896, 最优值: 0.28697, 平均值: 0.66388, 标准差: 0.49642, 秩和检验:3.0199e-11
LSA:最差值: 0.23313, 最优值: 1.3964e-06, 平均值: 0.015867, 标准差: 0.044386, 秩和检验: 1
函数:F10
SSA:最差值: 4.0297, 最优值: 3.0024e-05, 平均值: 2.0038, 标准差: 0.96022, 秩和检验: 0.077272
BSA:最差值: 7.3612, 最优值: 1.0224, 平均值: 3.4928, 标准差: 1.3446, 秩和检验: 0.0033386
CSA:最差值: 13.1826, 最优值: 6.2753, 平均值: 8.6649, 标准差: 1.5018, 秩和检验: 3.0199e-11
KHA:最差值: 1.1229, 最优值: 0.23228, 平均值: 0.33559, 标准差: 0.17901, 秩和检验:3.0199e-11
LSA:最差值: 4.5055, 最优值: 1.1551, 平均值: 2.5766, 标准差: 0.83098, 秩和检验: 1
函数:F11
SSA:最差值: 0.051795, 最优值: 2.3635e-05, 平均值: 0.010149, 标准差: 0.011772, 秩和检验: 0.87663
BSA:最差值: 1.2277, 最优值: 0.98283, 平均值: 1.0736, 标准差: 0.057462, 秩和检验: 3.0199e-11
CSA:最差值: 1.2041, 最优值: 1.0805, 平均值: 1.1399, 标准差: 0.033529, 秩和检验: 3.0199e-11
KHA:最差值: 0.93235, 最优值: 0.59206, 平均值: 0.73621, 标准差: 0.079472, 秩和检验:3.0199e-11
LSA:最差值: 0.041738, 最优值: 1.1102e-16, 平均值: 0.012876, 标准差: 0.012825, 秩和检验: 1
函数:F18
SSA:最差值: 3, 最优值: 3, 平均值: 3, 标准差: 1.1324e-13, 秩和检验: 2.0296e-11
BSA:最差值: 3, 最优值: 3, 平均值: 3, 标准差: 1.3922e-15, 秩和检验: 0.9614
CSA:最差值: 3, 最优值: 3, 平均值: 3, 标准差: 1.6118e-15, 秩和检验: 5.4025e-05
KHA:最差值: 3.0001, 最优值: 3, 平均值: 3, 标准差: 3.0057e-05, 秩和检验:2.0362e-11
LSA:最差值: 3, 最优值: 3, 平均值: 3, 标准差: 1.4473e-15, 秩和检验: 1
函数:F19
SSA:最差值: -3.8628, 最优值: -3.8628, 平均值: -3.8628, 标准差: 1.407e-13, 秩和检验: 1.2108e-12
BSA:最差值: -3.8628, 最优值: -3.8628, 平均值: -3.8628, 标准差: 2.5243e-15, 秩和检验: 5.5934e-05
CSA:最差值: -3.8628, 最优值: -3.8628, 平均值: -3.8628, 标准差: 2.4795e-15, 秩和检验: 3.7959e-06
KHA:最差值: -3.8628, 最优值: -3.8628, 平均值: -3.8628, 标准差: 1.2188e-06, 秩和检验:1.2118e-12
LSA:最差值: -3.8628, 最优值: -3.8628, 平均值: -3.8628, 标准差: 2.7101e-15, 秩和检验: NaN

实验结果表明:与其他对比算法相比,LSA方法总体上提供了更好的结果,具有较高的收敛速度。

三、参考文献

[1] Hussain Shareef, Ahmad Asrul Ibrahim, Ammar Hussein Mutlag. Lightning search algorithm[J]. Applied Soft Computing, 2015, 36: 315-333.
[2] 任云, 刘丹. BAS-LSA混合算法在装配序列规划的应用[J]. 组合机床与自动化加工技术, 2021(7): 160-164.

基于闪电搜索算法的函数寻优算法相关推荐

  1. 基于麻雀搜索算法的函数寻优算法

    文章目录 一.理论基础 1.发现者位置更新 2.跟随者位置更新 3.警戒者位置更新 4.SSA算法伪代码 二.仿真实验与分析 三.参考文献 一.理论基础 麻雀搜索算法(Sparrow Search A ...

  2. 基于爬行动物搜索算法的函数寻优算法

    文章目录 一.理论基础 1.爬行动物搜索算法 (1)初始化阶段 (2)包围阶段(探索) (3)狩猎阶段(开发) 2.RSA算法伪代码 二.仿真实验与结果分析 三.参考文献 一.理论基础 本文提出了一种 ...

  3. 基于原子轨道搜索算法的函数寻优算法

    文章目录 一.理论基础 1.原子轨道搜索算法 2.AOS算法伪代码 二.仿真实验与结果分析 三.参考文献 一.理论基础 1.原子轨道搜索算法 在本文中,原子轨道搜索(Atomic orbital se ...

  4. 《MATLAB智能算法30个案例》:第17章 基于PSO工具箱的函数寻优算法

    <MATLAB智能算法30个案例>:第17章 基于PSO工具箱的函数寻优算法 1. 前言 2. MATLAB 仿真示例 3. 小结 1. 前言 <MATLAB智能算法30个案例分析& ...

  5. 《MATLAB智能算法30个案例》:第8章 基于量子遗传算法的函数寻优算法

    <MATLAB智能算法30个案例>:第8章 基于量子遗传算法的函数寻优算法 1. 前言 2. MATLAB 仿真示例 3. 小结 1. 前言 <MATLAB智能算法30个案例分析&g ...

  6. 基于PSO工具箱的函数寻优算法

    文章目录 一.理论基础 1.工具箱介绍 2.工具箱函数解释 二.案例背景 1.问题描述 2.工具箱设置 三.MATLAB程序实现 1.适应度函数 2.主函数 3.仿真结果 四.延伸阅读 五.参考文献 ...

  7. 基于量子遗传算法的函数寻优算法—MATLAB实现

    文章目录 一.算法概述 二.算法讲解 2.1 量子比特编码 2.2 量子门更新 三.MATLAB实现 3.1 案例描述 3.2 算法实现 3.2.1算法流程: 3.2.2算法实现: 3.2.3MATL ...

  8. 基于豹子捕猎的函数寻优算法

    引言 基于生物习性的优化算法成为近年来一种热门,如蚁群算法,蝙蝠算法.但是这些算法很难越出局部寻优(如果要越出局部寻优,就要在每一次迭代中采用聚类),但个体捕猎反而更好实现,因此,参考网上的鲸鱼算法, ...

  9. 基于捕捉漂移布谷鸟搜索算法的函数寻优算法

    文章目录 一.理论基础 1.布谷鸟搜索算法 2.捕捉漂移布谷鸟搜索算法 (1)自适应 p a {p_a} pa​ (2)信息共享方法 (3)SDCS算法伪代码 二.仿真实验与结果分析 三.参考文献 一 ...

最新文章

  1. SPF Tarjan算法求无向图割点(关节点)入门题
  2. Think Pad T410键盘溅水有惊无险
  3. G1 vs CMS vs平行GC
  4. 豆瓣电影 知识图谱 Neo4j
  5. java用 拼接字符串的原理_Java String 拼接字符串原理详解
  6. Qt4项目迁移到Qt5问题:greaterThan(QT_MAJOR_VERSION, 4): QT += widgets .
  7. python exec函数_Python3
  8. 18.10 汇编语句
  9. 电影海报页面设计Html5,重设100部经典电影海报字体,好设计是这样炼成的!
  10. 判断浏览器版本加载对应的样式表(文件)
  11. 关于微信双开后,王者荣耀默认只能打开微信主应用问题
  12. iOS开发常用设计模式
  13. 报错:Expected singleton
  14. 栈的详解(C/C++数据结构)
  15. keil手把手创建文件
  16. C#字符串格式输入不正确怎么办?
  17. 最新android系统下载,安卓6.0抢先体验方法|安卓6.0下载 安卓6.0系统下载地址_PC6教学...
  18. tarjan习题题解
  19. 单相全桥PWM整流双闭环控制。 电压环采用PI控制器,电流环采用PR控制器
  20. 电子产品历史价格怎么查?

热门文章

  1. mosquitto基本使用
  2. 哈工大LTP的依存分析
  3. 中国教育模式的颠覆者--兄弟会
  4. ipad已有2周未备份。ipad插入电源、被锁定且接入Wi-Fi时会进行备份
  5. 简单SOPC实例开发任务——控制led灯闪烁
  6. 接口与抽象类的区别,为什么要用接口,抽象类不香吗?
  7. 使用Nodejs+Protractor搭建测试环境
  8. 亚马逊测评自养号环境系统的介绍和用法
  9. apache服务器wind 下载,安装及部署
  10. 初学python 没有动手没有发言权