基于蒲公英优化算法的函数寻优算法 您所在的位置:网站首页 蒲公英的形状姿态和香味是什么 基于蒲公英优化算法的函数寻优算法

基于蒲公英优化算法的函数寻优算法

2024-07-13 10:06| 来源: 网络整理| 查看: 265

文章目录 一、理论基础1、蒲公英优化算法(1)初始化(2)上升阶段(3)下降阶段(4)着陆阶段 2、DO算法的执行流程 二、仿真实验与结果分析三、参考文献

一、理论基础 1、蒲公英优化算法

文献[1]模拟蒲公英种子依靠风的长距离飞行过程提出了一种新的群体智能仿生优化算法,称为蒲公英优化(Dandelion Optimizer, DO)算法,用于解决连续优化问题。

(1)初始化

与其他自然启发元启发式算法相似,DO在种群初始化的基础上进行种群进化和迭代优化。在提出的DO算法中,假设每个蒲公英种子代表一个候选解,其种群表示为: p o p u l a t i o n = [ x 1 1 ⋯ x 1 D i m ⋮ ⋱ ⋮ x p o p 1 ⋯ x p o p D i m ] (1) population=\begin{bmatrix} x_1^1 & \cdots & x_1^{Dim} \\[2ex]\vdots & \ddots & \vdots\\[2ex]x_{pop}^1 & \cdots & x_{pop}^{Dim}\end{bmatrix}\tag{1} population=⎣⎢⎢⎢⎢⎡​x11​⋮xpop1​​⋯⋱⋯​x1Dim​⋮xpopDim​​⎦⎥⎥⎥⎥⎤​(1)其中, p o p pop pop表示种群数量, D i m Dim Dim表示问题变量的维数。每个候选解在给定问题的上界( U B UB UB)和下界( L B LB LB)之间随机生成,第 i i i个个体 X i X_i Xi​的表达式为: X i = r a n d × ( U B − L B ) + L B (2) X_i=rand\times(UB-LB)+LB\tag{2} Xi​=rand×(UB−LB)+LB(2)其中, r a n d rand rand表示0和1之间的随机数, L B LB LB和 U B UB UB如下所示: L B = [ l b 1 , ⋯   , l b D i m ] U B = [ u b 1 , ⋯   , u b D i m ] (3) \begin{array}{c}LB=[lb_1,\cdots,lb_{Dim}]\\[2ex]UB=[ub_1,\cdots,ub_{Dim}]\end{array}\tag{3} LB=[lb1​,⋯,lbDim​]UB=[ub1​,⋯,ubDim​]​(3)在初始化过程中,DO将适应度值最优的个体作为初始精英,认为这是蒲公英种子最适合生长的位置。以最小值为例,初始精英个体 X e l i t e X_{elite} Xelite​的数学表达式为: f b e s t = min ⁡ ( f ( X i ) ) X e l i t e = X ( f i n d ( f b e s t = f ( X i ) ) ) (4) \begin{array}{c}f_{best}=\min(f(X_i))\\[2ex]X_{elite}=X(find(f_{best}=f(X_i)))\end{array}\tag{4} fbest​=min(f(Xi​))Xelite​=X(find(fbest​=f(Xi​)))​(4)其中, f i n d ( ) find() find()表示具有相等值的两个索引。

(2)上升阶段

在上升阶段,蒲公英的种子需要达到一定的高度才能离开父母。在风速、空气湿度等影响下,蒲公英种子会上升到不同高度。在这里,天气分为以下两种情况: 第一种情况:在晴天,风速可被视为具有对数正态分布 ln ⁡ Y ∼ N ( μ , σ 2 ) \ln Y\sim N(\mu,\sigma^2) lnY∼N(μ,σ2)。在这种分布下,随机数沿 Y Y Y轴分布更为均匀,这增加了蒲公英种子传播到遥远地区的机会。因此,DO在该情况下中强调探索。在搜索空间中,蒲公英种子被风随机吹到各个位置。蒲公英种子的上升高度由风速决定。风越大,蒲公英飞得越高,种子撒得越远。受风速的影响,蒲公英种子上方的漩涡不断被调整,使其呈螺旋状上升。在这种情况下对应的数学表达式为: X t + 1 = X t + α ∗ v x ∗ v y ∗ ln ⁡ Y ∗ ( X s − X t ) (5) X_{t+1}=X_t+\alpha*v_x*v_y*\ln Y*(X_s-X_t)\tag{5} Xt+1​=Xt​+α∗vx​∗vy​∗lnY∗(Xs​−Xt​)(5)其中, X t X_t Xt​表示第 t t t次迭代时蒲公英种子的位置, X s X_s Xs​表示第 t t t次迭代时搜索空间中随机选择的位置,式(6)给出了随机生成位置的表达式。 X s = r a n d ( 1 , D i m ) ∗ ( U B − L B ) + L B (6) X_s=rand(1,Dim)*(UB-LB)+LB\tag{6} Xs​=rand(1,Dim)∗(UB−LB)+LB(6) ln ⁡ Y \ln Y lnY表示服从 μ = 0 \mu=0 μ=0和 σ 2 = 1 \sigma^2=1 σ2=1的对数正态分布,其数学表达式为: ln ⁡ Y = { 1 y 2 π exp ⁡ [ − 1 2 σ 2 ( ln ⁡ y ) 2 ] y ≥ 0 0     y < 0 (7) \ln Y=\begin{dcases}\frac{1}{y\sqrt{2\pi}}\exp\left[-\frac{1}{2\sigma^2}(\ln y)^2\right]\quad y\geq0\\[2ex]0\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\quad\,\,\, y



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有