精华内容
下载资源
问答
  • 于是他们将鸟群简化为一个简单的社会系统并加入人类社会的某些行为特征,设计PSO算法用于解决复杂的优化问题。PSO算法因其设计思想简单、操作实现容易、需要控制的参数少、能够实现分布式计算以及优化速度快而被...
  • 运用PSO算法设计了概率积分法预计参数反演程序,通过设计实验,对PSO算法反演概率积分法预计参数的可靠性、抗粗差干扰能力、抗观测点缺失能力及对初值的依赖性等四个方面进行研究。结果表明:运用PSO算法可以准确的反...
  • PSO算法

    千次阅读 2019-12-03 23:59:27
    粒子群优化算法(PSO:Particle swarm optimization) 是一种进化计算技术(evolutionary computation)。源于对鸟群捕食的行为研究。粒子群优化算法的基本思想:是通过群体中个体之间的协作和信息共享来寻找最优解. ...

    算法介绍

    粒子群优化算法(PSO:Particle swarm optimization) 是一种进化计算技术(evolutionary computation)。源于对鸟群捕食的行为研究。粒子群优化算法的基本思想:是通过群体中个体之间的协作和信息共享来寻找最优解.

    算法原理

    粒子群算法通过设计一种无质量的粒子来模拟鸟群中的鸟,粒子仅具有两个属性:速度和位置,速度代表移动的快慢,位置代表移动的方向。每个粒子在搜索空间中单独的搜寻最优解,并将其记为当前个体极值,并将个体极值与整个粒子群里的其他粒子共享,找到最优的那个个体极值作为整个粒子群的当前全局最优解,粒子群中的所有粒子根据自己找到的当前个体极值和整个粒子群共享的当前全局最优解来调整自己的速度和位置。

    PSO初始化为一群随机粒子(随机解)。然后通过迭代找到最优解。在每一次的迭代中,粒子通过跟踪两个“极值”(pbest,gbest)来更新自己。在找到这两个最优值后,粒子通过下面的公式来更新自己的速度和位置。

    算法流程

    在这里插入图片描述

    主要代码

    %% 清空环境
    clc
    clear
    
    %% 参数初始化
    %粒子群算法中的三个参数
    c1 = 1.49445;%加速因子
    c2 = 1.49445;
    w=0.729   %惯性权重
    
    maxgen=1000;   % 进化次s数  
    sizepop=300;   %种群规模
    
    Vmax=1;       %限制速度围
    Vmin=-1;     
    popmax=5;    %变量取值范围
    popmin=-5;
    dim=10;       %适应度函数维数
    
    func=1;       %选择待优化的函数,1为Rastrigin,2为Schaffer,3为Griewank
    Drawfunc(func);%画出待优化的函数,只画出二维情况作为可视化输出
    
    %% 产生初始粒子和速度
    for i=1:sizepop
        %随机产生一个种群
        pop(i,:)=popmax*rands(1,dim);    %初始种群
        V(i,:)=Vmax*rands(1,dim);             %初始化速度
                                         %计算适应度
        fitness(i)=fun(pop(i,:),func);   %粒子的适应度
    end
    
    %% 个体极值和群体极值
    [bestfitness bestindex]=min(fitness);
    gbest=pop(bestindex,:);   %全局最佳
    pbest=pop;                %个体最佳
    fitnesspbest=fitness;     %个体最佳适应度值
    fitnessgbest=bestfitness; %全局最佳适应度值
    
    %% 迭代寻优
    for i=1:maxgen
        w=
        fprintf('第%d代,',i);
        fprintf('最优适应度%f\n',fitnessgbest);
        for j=1:sizepop
            
            %速度更新
            V(j,:) = w*V(j,:) + c1*rand*(pbest(j,:) - pop(j,:)) + c2*rand*(gbest - pop(j,:)); %根据个体最优pbest和群体最优gbest计算下一时刻速度
            V(j,find(V(j,:)>Vmax))=Vmax;   %限制速度不能太大
            V(j,find(V(j,:)<Vmin))=Vmin;
            
            %种群更新
            pop(j,:)=pop(j,:)+0.5*V(j,:);       %位置更新
            pop(j,find(pop(j,:)>popmax))=popmax;%坐标不能超出范围
            pop(j,find(pop(j,:)<popmin))=popmin;
            
            if rand>0.98                         %加入变异种子,用于跳出局部最优值
                pop(j,:)=rands(1,dim);
            end
            
            %更新第j个粒子的适应度值
            fitness(j)=fun(pop(j,:),func); 
       
        end
        
        for j=1:sizepop
            
            %个体最优更新
            if fitness(j) < fitnesspbest(j)
                pbest(j,:) = pop(j,:);
                fitnesspbest(j) = fitness(j);
            end
            
            %群体最优更新
            if fitness(j) < fitnessgbest
                gbest = pop(j,:);
                fitnessgbest = fitness(j);
            end
        end 
        yy(i)=fitnessgbest;    
            
    end
    %% 结果分析
    figure;
    plot(yy)
    title('最优个体适应度','fontsize',12);
    xlabel('进化代数','fontsize',12);ylabel('适应度','fontsize',12);
    
    function Drawfunc(label)
    
    x=-5:0.05:5;%41列的向量
    if label==1
        y = x;
        [X,Y] = meshgrid(x,y);
        [row,col] = size(X);
        for  l = 1 :col
             for  h = 1 :row
                z(h,l) = Rastrigin([X(h,l),Y(h,l)]);
            end
        end
        surf(X,Y,z);
        shading interp
        xlabel('x1-axis'),ylabel('x2-axis'),zlabel('f-axis'); 
        title('mesh'); 
    end
    
    if label==2
        y = x;
        [X,Y] = meshgrid(x,y);
        [row,col] = size(X);
        for  l = 1 :col
             for  h = 1 :row
                z(h,l) = Schaffer([X(h,l),Y(h,l)]);
            end
        end
        surf(X,Y,z);
        shading interp 
        xlabel('x1-axis'),ylabel('x2-axis'),zlabel('f-axis'); 
        title('mesh'); 
    end
    
    if label==3
        y = x;
        [X,Y] = meshgrid(x,y);
        [row,col] = size(X);
        for  l = 1 :col
             for  h = 1 :row
                z(h,l) = Griewank([X(h,l),Y(h,l)]);
            end
        end
        surf(X,Y,z);
        shading interp 
        xlabel('x1-axis'),ylabel('x2-axis'),zlabel('f-axis'); 
        title('mesh'); 
    end 
    
    function y = fun(x,label)
    %函数用于计算粒子适应度值
    %x           input           输入粒子 
    %y           output          粒子适应度值 
    if label==1
        y=Rastrigin(x);
    elseif label==2
        y=Schaffer(x);
    else
        y= Griewank(x);
    end
    
    function y = fun(x)
    %函数用于计算粒子适应度值
    %x           input           输入粒子 
    %y           output          粒子适应度值 
    
    y=-20*exp(-0.2*sqrt((x(1)^2+x(2)^2)/2))-exp((cos(2*pi*x(1))+cos(2*pi*x(2)))/2)+20+exp(1);
    
    %y=x(1)^2-10*cos(2*pi*x(1))+10+x(2)^2-10*cos(2*pi*x(2))+10;
    

    运行结果分析

    Rastrigin函数

    函数图像如下
    Rastrigin
    迭代次数1000,种群数量300,dim=10,这几个参数固定不变

    1. w与迭代次数呈线性关系,c1,c2不变

    w与迭代次数的关系为w=-0.0007*i+0.9(其中i为当前的迭代次数),w∈[0.9,0.2] ,c1=1.49445,c2=1.49445
    运行结果如下:
    在这里插入图片描述
    在这里插入图片描述

    运行次数最终最佳适应度获得最佳适应度的迭代次数
    10.000000592
    20.000078882
    30.000000342
    42.809653780
    50.000000551
    63.979836892
    74.974790608
    81.1287361000
    94.97479542
    100.000000415

    观察实验结果可以发现,单单让w随着迭代次数增大而减小,十次中仅有三次是得到最佳适应度为0的。所以后面不再进行此方法运算。平均迭代次数为568.9.

    2. w,c1,c2与迭代次数分别呈线性相关

    2.1 w∈[0.2,0.9],c1,c2∈[0,4]

    w,c1,c2都随着迭代次数变化而变化,令i为迭代次数(i=1,2,…,1000),则w=-0.0007*i+0.9,c1初始值为2,c2初始值为0,c1=c1-0.002(每迭代一次,c1减少0.002),c2=c2+0.002(每迭代一次,c2增加0.002)。
    运行结果如下:
    在这里插入图片描述
    在这里插入图片描述

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.000000377
    20.000000314
    30.000000782
    40.000000281
    50.0137351000
    60.000000327
    70.000000324
    80.000000505
    90.000000327
    100.994959776

    观察实验结果可以发现,十次中仅有两次没有找到最优适应度0,比起1概率大大增加。
    平均迭代次数为501

    2.2 c1=2保持不变,c2∈[0,2],w∈[0.2,0.9]

    c2,w均保持与2.1相同的线性变化关系,c1=2并保持不变,观察结果。
    运行结果如下:
    在这里插入图片描述
    ##### 放图

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.994959671
    20.000000786
    30.000000374
    42.984877704
    51.989918775
    60.000000677
    70.000000365
    81.989918594
    91.989918360
    101.989918868

    观察结果可得,10次运行中仅有四次找到了最优适应度。可见如果c1不改变,则对最优适应度的寻找有影响。平均迭代次数为671

    2.3 w保持不变,c1,c2∈[0,2]

    w=0.8,c1,c2与2.1保持相同的变化
    运行结果如下:
    在这里插入图片描述
    ##### 放图

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.0205751000
    20.000000382
    35.969754443
    40.000000337
    50.000000760
    60.000000373
    70.000000915
    80.000000278
    90.000000340
    100.000000345

    平均迭代次数为517,观察2.3和2.2可以发现,随着迭代次数变化,对寻找最有适应函数影响较大的是c1/c2,当w保持不变时,c1,c2仍在变化比c1不变,c2,w变化更容易找到最优适应度。

    3. 其他情况不变改变维度和种群规模

    3.1 维度为5

    c1=c2=1.49445,w=0.8
    种群规模为200
    运行结果如下:
    在这里插入图片描述
    在这里插入图片描述

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.000000308
    20.000000424
    30.000000395
    40.000000186
    50.000000316
    60.000000342
    70.000000429
    80.000000715
    90.000000318
    100.000000487

    平均迭代次数为343

    3.2 种群数量200,维度为10

    Rastrigin函数(种群规模=200)

    运行次数最终最优适应度获得最优适应度的迭代次数
    12.9850441000
    25.9697541000
    30.9949591000
    40.0027771000
    59.9495861000
    64.9747951000
    70.000000502
    80.000000115
    90.0000891000
    100.9949591000

    平均迭代参数为861.7,大部分时候,迭代次数到达1000时,并没有找到最优解,也没有找到局部最优解。

    Schaffer函数

    函数图像如下:
    在这里插入图片描述

    w,c1,c2与迭代次数分别呈线性相关

    2.1 w∈[0.2,0.9],c1,c2∈[0,4]

    w,c1,c2都随着迭代次数变化而变化,令i为迭代次数(i=1,2,…,1000),则w=-0.0007*i+0.9,c1初始值为2,c2初始值为0,c1=c1-0.002(每迭代一次,c1减少0.002),c2=c2+0.002(每迭代一次,c2增加0.002)。
    运行结果如下:
    在这里插入图片描述
    在这里插入图片描述

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.00000088
    20.00000087
    30.00000068
    40.00000061
    50.00000072
    60.00000066
    70.00000057
    80.00000086
    90.00000086
    100.00000088

    平均迭代次数为76,观察结果可得,运行十次,每一次都得到了函数的最优值,而且一开始找到的最佳适应度也都在0.01左右,很接近0,找到最优适应度的迭代次数也都在100以内。

    2.2 c1=2保持不变,c2∈[0,2],w∈[0.2,0.9]

    c2,w均保持与2.1相同的线性变化关系,c1=2并保持不变,观察结果。

    运行结果如下:
    #### 放图
    在这里插入图片描述

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.00000081
    20.00000070
    30.00000059
    40.00000069
    50.00000055
    60.00000091
    70.00000083
    80.00000069
    90.00000062
    100.00000071

    平均迭代次数为71
    观察结果可得,在相同的情况下,Schaffer函数比Rastrigin更容易得到最优适应度。

    2.3 w保持不变,c1,c2∈[0,2]

    w=0.8,c1,c2与2.1保持相同的变化
    运行结果如下:
    在这里插入图片描述
    #### 放图

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.00000058
    20.00000055
    30.00000049
    40.00000058
    50.00000060
    60.00000043
    70.00000072
    80.00000083
    90.00000058
    100.00000045

    平均迭代次数为58
    观察结果可得,该函数较容易得到最优解,而迭代次数很少。

    3. 其他情况不变改变维度和种群规模

    3.1 维度为5

    c1=c2=1.49445,w=0.8
    种群规模为200
    运行结果如下:

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.00000039
    20.00000032
    30.00000040
    40.00000041
    50.00000036
    60.00000014
    70.00000017
    80.00000019
    90.00000032
    100.00000041

    平均迭代次数为31

    3.2 种群规模200,维度为10

    Schaffer函数(种群数量=200)

    测试序号达到最优适应度的迭代次数最终最优适应度
    1280.000000
    2330.000000
    3420.000000
    4360.000000
    5330.000000
    6330.000000
    7310.000000
    8430.000000
    9400.000000
    10320.000000

    平均迭代次数为35

    Griewank函数

    函数图像如下:
    Griewank

    w,c1,c2与迭代次数分别呈线性相关

    2.1 w∈[0.2,0.9],c1,c2∈[0,4]

    w,c1,c2都随着迭代次数变化而变化,令i为迭代次数(i=1,2,…,1000),则w=-0.0007*i+0.9,c1初始值为2,c2初始值为0,c1=c1-0.002(每迭代一次,c1减少0.002),c2=c2+0.002(每迭代一次,c2增加0.002)。
    结果如下:
    在这里插入图片描述
    在这里插入图片描述

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.000000182
    20.000000152
    30.000000164
    40.000000155
    50.000000186
    60.000000180
    70.000000138
    80.000000169
    90.000000155
    100.000000149

    平均迭代次数为163.

    2.2 c1=2保持不变,c2∈[0,2],w∈[0.2,0.9]

    c2,w均保持与2.1相同的线性变化关系,c1=2并保持不变,观察结果。
    ##### 放图
    在这里插入图片描述

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.000000151
    20.000000118
    30.000000173
    40.000000149
    50.000000137
    60.000000160
    70.000000136
    80.000000149
    90.000000141
    100.000000163

    平均迭代次数为147

    2.3 w保持不变,c1,c2∈[0,2]

    w=0.8,c1,c2与2.1保持相同的变化
    运行结果如下:

    在这里插入图片描述

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.00000058
    20.00000089
    30.00000096
    40.00000056
    50.00000094
    60.00000087
    70.00000060
    80.00000071
    90.00000052
    100.00000091

    平均迭代次数为75
    比较2.2和2.3,虽然连个都能找到最优解,但是明显2.3找的速度更快,c1逐渐减小,c2逐渐增大,种群的最优解对个体最优解的正影响更大,综合起来,这样更容易找到全局最优。

    3. 其他情况不变改变维度和种群规模

    3.1 维度为5

    c1=c2=1.49445,w=0.8
    种群规模为200
    运行结果如下:

    运行次数最终最优适应度获得最优适应度的迭代次数
    10.00000032
    20.00000034
    30.00000049
    40.00000044
    50.00000044
    60.00000039
    70.00000035
    80.00000036
    90.00000039
    100.00000045

    平均迭代次数为39

    3.2 种群规模200,维度为10

    Griewank函数(种群规模=200)

    测试序号达到最优适应度的迭代次数最终最优适应度
    1630.000000
    2660.000000
    3580.000000
    4630.000000
    5700.000000
    6740.000000
    7600.000000
    8620.000000
    9630.000000
    10740.000000

    平均迭代次数为65
    比较3.1和3.2,当维度增大,找到最优适应度函数的迭代次数也会增加。

    实验小结

    改变w,c1,c2时:
    当惯性权重值w,加速系数c1 c2同时随着迭代次数的增加而动态变化时,迭代速度会比较快,并且收敛结果也比较好。

    如果改变c2,w,c1不变,除了Rastrigin其他函数收敛效果都很好。
    如果c1,c2不变,单纯地改变w的值,得不到好的收敛效果。

    改变种群规模和维度时,当维度增大,找到最优解的难度越高,而且多次运行中找到最优解的比例也较低。

    展开全文
  • 然后,根据输入数据激活相应的子网络,利用PSO算法寻找子网络的最优网络贡献度,并依据贡献度计算子网络的输出权值;最后优化模块化神经网络的集成输出.通过对非线性函数和时变系统的逼近实验,验证了集成网络中子网络...
  • 本文在介绍PID控制系统参数的优化方面提出了一种新型的优化方式,即将粒子群PSO算法引进参数的优化设计中,本文具体做了以下几个方面的工作: (1)利用经典控制系统原理对PID控制算法的参数进行初步给定; (2)...
  • 基于PSO算法的张弦桁架结构优化设计,侯贯泽,许强松,张弦桁架结构在实际工程中得到较多的应用,但其设计计算一般是先假定桁架截面、矢高等,然后在此基础上进行结构的内力分析,过程
  • 为了研究粒子群优化(PSO)算法用于解决大型复杂结构的优化设计问题的有效性,分别采用基本PSO算法、标准PSO算法与遗传算法(GA)对某一大型油船双层底结构优化设计问题进行了求解。优化过程中双层底结构的响应分析计算...
  • PSO算法概述I

    2021-03-22 21:20:57
    PSO算法最简单的模型是于1987年提出的名为**Boid(Bird-oid)**的模型,此模型被设计用于模拟鸟的行为,也是PSO算法的雏形。Boid(Bird-oid)模型的描述如下: 鸟类的每个个体都由笛卡尔坐标系中的一个点表示,该点...

    PSO算法概述I


    来源于文献[1],对其进行整理

    起源与背景

    PSO算法最简单的模型是于1987年提出的名为Boid(Bird-oid)的模型,此模型被设计用于模拟鸟的行为,也是PSO算法的雏形。Boid(Bird-oid)模型的描述如下:

    1. 鸟类的每个个体都由笛卡尔坐标系中的一个点表示,该点随机分配了初始速度和位置。
    2. 根据“最接近的速度匹配规则”运行程序,以使一个个体的速度与其最接近的邻居的速度相同。
    3. 以相同的方式进行迭代,所有点将快速地具有相同的速度。

    由于这个初代模型过于简单并偏离实际,引入了一个随机变量将其添加至速度项,使整个模拟接近实际情况。Heppner设计了一个“cornfield model”来模拟一群鸟类的觅食行为。假设平面上有一个“cornfield model”,即食物的位置,开始时鸟类随机散布在平面上。 为了找到食物的位置,它们按照以下规则移动。

    1. 假设食物(cornfield)的位置坐标为 ( x 0 , y 0 ) (x_0, y_0) (x0,y0),单个鸟类个体的位置坐标和速度坐标分别为 ( x , y ) (x,y) (x,y) ( v x , v y ) (v_x,v_y) (vx,vy);当前个体的位置与食物之间的距离用于衡量当前个体的性能(距食物的距离越近,性能越好,相反,性能更差。)。
    2. 假设每个个体都有记忆能力,并可以记住它曾经到达的最佳位置,记为 p b e s t p_{best} pbest a a a是速度调节常数。 r a n d rand rand表示 U [ 0 , 1 ] U[0,1] U[0,1]中的随机数,可以根据以下规则设置速度项的变化:
      如果 x > p b e s t x x> p_{best}^x x>pbestx,则 v x = v x − r a n d × a v_x = v_x-rand×a vx=vxrand×a,否则, v x = v x + r a n d × a v_x = v_x +rand×a vx=vx+rand×a
      如果 y > p b e s t y y> p_{best}^y y>pbesty,则 v y = v y − r a n d × a v_y = v_y − rand×a vy=vyrand×a,否则, v y = v y + r a n d × a v_y = v_y + rand×a vy=vy+rand×a
      p b e s t x p_{best}^x pbestx表示的是个体在 x x x维度上曾经到达的最佳位置。
    3. 然后假设鸟群模型可以以某种方式进行通信,并且每个个体都能够知道并记住迄今为止整个群体的最佳位置,记为 g b e s t g_{best} gbest b b b是速度调节常数,速度更新与上述类似:
      如果 x > g b e s t x x> g_{best}^x x>gbestx,则 v x = v x − r a n d × b v_x = v_x-rand×b vx=vxrand×b,否则, v x = v x + r a n d × b v_x = v_x +rand×b vx=vx+rand×b
      如果 y > g b e s t y y> g_{best}^y y>gbesty,则 v y = v y − r a n d × b v_y = v_y − rand×b vy=vyrand×b,否则, v y = v y + r a n d × b v_y = v_y + rand×b vy=vy+rand×b
      g b e s t x g_{best}^x gbestx表示的是整个群体在 x x x维度上的最佳位置。
    4. 计算机仿真结果表明,当 a / b a / b a/b较大时,所有个体都会迅速聚集到“食物”。 相反,如果 a / b a / b a/b小,粒子将不稳定且缓慢地聚集在“食物”周围。 通过这种简单的模拟,可以发现群体可以快速找到最佳点。 受此模型的启发,Kennedy和Eberhart设计了一种进化优化算法,经过一连串的试验和错误,他们最终将基本算法固定如下:
      v x = v x + 2 ∗ r a n d ∗ ( p b e s t x − x ) + 2 ∗ r a n d ∗ ( g b e s t x − x ) (1.1) v_x = v_x + 2 ∗ rand ∗ (p_{best}^x − x) + 2 ∗ rand ∗ (g_{best}^x − x)\tag{1.1} vx=vx+2rand(pbestxx)+2rand(gbestxx)(1.1)
      x = x + v x (1.2) x = x + v_x\tag{1.2} x=x+vx(1.2)
      他们将每个个体抽象为一个没有质量和体积,只有速度和位置的粒子,因此他们将此算法称为“粒子群优化算法”。
      PSO算法的流程图如下所示
    Created with Raphaël 2.2.0 开始 初始化群体 粒子适应度评估 计算个体的历史最好位置 计算群体的历史最好位置 根据速度和位置更新方程 更新粒子速度和位置 是否满足终止条件? 结束 yes no

    在连续空间坐标系下,粒子群算法用数学方法描述如下:
    假设群大小为 N N N,在 D D D维空间中每个粒子的位置向量为 X i = ( x i 1 , x i 2 , ⋅ ⋅ ⋅ , x i d , ⋅ ⋅ ⋅ , x i D ) X_i =(x_{i1},x_{i2},···,x_{id},···,x_{iD}) Xi=(xi1,xi2,,xid,,xiD),速度向量为 V i = ( v i 1 , v i 2 , ⋅ ⋅ ⋅ , v i d , ⋅ ⋅ ⋅ , v i D ) V_i =(v_{i1},v_{i2},··· ,v_{id},···,v_{iD}) Vi=(vi1,vi2,,vid,,viD),个体的最佳位置(即粒子历史的最佳位置)是 P i = ( p i 1 , p i 2 , ⋅ ⋅ ⋅ , p i d , ⋅ ⋅ ⋅ , p i D ) P_i =(p_{i1},p_{i2},···,p_{id},···,p_{iD}) Pi=(pi1,pi2,,pid,,piD),种群的最佳位置表示为 P g = ( p g 1 , p g 2 , ⋅ ⋅ ⋅ , p g d , ⋅ ⋅ ⋅ , p g D ) P_g =(p_{g1},p_{g2},···,p_{gd},···,p_{gD}) Pg=(pg1,pg2,,pgd,,pgD)。 以最小化问题为例,在PSO算法的初始版本中,个体最佳位置的更新公式为:
    p i , t + 1 d = { x i , t + 1 d ,    i f    f ( X i , t + 1 ) < f ( P i , t ) p i , t d ,    o t h e r w i s e (1.1) p_{i,t + 1}^d = \left\{ \begin{array}{l} x_{i,t + 1}^d,\;if\;f(X_{i,t + 1}^{}) < f({P_{i,t}})\\ p_{i,t}^d,\;{\rm{otherwise}} \end{array} \right.\tag{1.1} pi,t+1d={xi,t+1d,iff(Xi,t+1)<f(Pi,t)pi,td,otherwise(1.1)
    而群体的最佳位置是所有个体的最佳位置。

    个体的速度和位置的更新公式分别表示如下:

    v i , t + 1 d = v i , t d + c 1 ∗ rand ⁡ ∗ ( p i , t d − x i , t d ) + c 2 ∗ rand ⁡ ∗ ( p g , t d − x i , t d ) (1.3) \begin{aligned} v_{i, t+1}^{d}=& v_{i, t}^{d}+c_{1} * \operatorname{rand} *\left(p_{i, t}^{d}-x_{i, t}^{d}\right) +c_{2} * \operatorname{rand} *\left(p_{g, t}^{d}-x_{i, t}^{d}\right) \end{aligned} \tag{1.3} vi,t+1d=vi,td+c1rand(pi,tdxi,td)+c2rand(pg,tdxi,td)(1.3)

    x i , t + 1 d = x i , t d + v i , t + 1 d (1.4) x_{i, t+1}^{d}=x_{i, t}^{d}+v_{i, t+1}^{d}\tag{1.4} xi,t+1d=xi,td+vi,t+1d(1.4)

    由于上述初始版本的PSO在优化问题上不是很有效,因此在提出初始算法不久后,1998年Shi和Eberhart提出了一种改进的PSO算法,他们将惯性权重 ω \omega ω引入进速度更新公式,新速度更新公式变为
    v i , t + 1 d = ω ∗ v i , t d + c 1 ∗ rand ⁡ ∗ ( p i , t d − x i , t d ) + c 2 ∗ rand ⁡ ∗ ( p g , t d − x i , t d ) (1.5) \begin{aligned} v_{i, t+1}^{d}=& \omega * v_{i, t}^{d}+c_{1} * \operatorname{rand} *\left(p_{i, t}^{d}-x_{i, t}^{d}\right) +c_{2} * \operatorname{rand} *\left(p_{g, t}^{d}-x_{i, t}^{d}\right) \end{aligned}\tag{1.5} vi,t+1d=ωvi,td+c1rand(pi,tdxi,td)+c2rand(pg,tdxi,td)(1.5)

    尽管此改进算法的复杂度与初始版本几乎相同,但它极大地提高了算法性能。 因此,它获得了广泛的应用。 通常,将修改后的算法称为规范PSO算法(canonical PSO algorithm),而初始版本称为原始PSO算法(original PSO algorithm)。

    通过分析PSO算法的收敛行为,在2002年Clerc和Kennedy引入了PSO算法的一种变体,其压缩因子为 χ \chi χ,从而确保了收敛性并提高了收敛速度。 然后,速度更新公式变为
    v i , t + 1 d = χ ( v i , t d + ϕ 1 ∗ rand ⁡ ∗ ( p i , t d − x i , t d ) + ϕ 2 ∗ rand ⁡ ∗ ( p g , t d − x i , t d ) ) (1.6) \begin{aligned} v_{i, t+1}^{d}= \chi\left(v_{i, t}^{d}+\phi_{1} * \operatorname{rand} *\left(p_{i, t}^{d}-x_{i, t}^{d}\right)\right. \left.+\phi_{2} * \operatorname{rand} *\left(p_{g, t}^{d}-x_{i, t}^{d}\right)\right) \end{aligned}\tag{1.6} vi,t+1d=χ(vi,td+ϕ1rand(pi,tdxi,td)+ϕ2rand(pg,tdxi,td))(1.6)
    显然,公式(1.5)和公式(1.6)之间没有本质区别。 如果选择了适当的参数,则两个公式相同。

    PSO算法有两个版本,分别称为全局版本和局部版本。在全局模型中,粒子跟踪的两个极端是其自身的最优位置 p b e s t p_{best} pbest和群的最优位置 g b e s t g_{best} gbest
    因此,在局部版本中,除了跟踪其自身的最优位置 p b e s t p_{best} pbest外,粒子不跟踪种群的最优位置 g b e s t g_{best} gbest,而是跟踪其拓扑邻域中所有粒子的最优位置 n b e s t n_{best} nbest。对于本地版本,速度更新方程(1.5)变为:
    v i , t + 1 d = ω ∗ v i , t d + c 1 ∗ rand ⁡ ∗ ( p i , t d − x i , t d ) + c 2 ∗ rand ⁡ ∗ ( p l , t d − x i , t d ) (1.7) \begin{aligned} v_{i, t+1}^{d}= \omega * v_{i, t}^{d}+c_{1} * \operatorname{rand} *\left(p_{i, t}^{d}-x_{i, t}^{d}\right) +c_{2} * \operatorname{rand} *\left(p_{l, t}^{d}-x_{i, t}^{d}\right) \end{aligned}\tag{1.7} vi,t+1d=ωvi,td+c1rand(pi,tdxi,td)+c2rand(pl,tdxi,td)(1.7)
    其中 p l p_l pl是局部邻域中的最佳位置。

    粒子的迭代方案

    粒子的迭代方案

    在每一代中,任何粒子的迭代过程如上图所示。从社会学的角度分析速度更新公式,可以看出在这个更新公式中,第一部分是粒子先前速度的影响。这意味着粒子对其当前的运动状态充满信心,并根据其自身的速度进行惯性运动,因此参数 ω \omega ω称为惯性权重。 第二部分取决于粒子当前位置与其自身最佳位置之间的距离,称为“认知”项。它是指粒子自身的思维,即粒子自身的经验所产生的运动。因此,参数 c 1 c1 c1被称为认知学习因子(也称为认知加速因子)。第三部分依赖于粒子当前位置与群中全局(或局部)最优位置之间的距离,称为“社会”因素。它是指粒子之间的信息共享与协作,即粒子的运动来源于粒子群中其他粒子的经验。它通过认知来模拟好粒子的运动,因此参数 c 2 c2 c2被称为社会学习因子(也称为社会加速因子)。

    PSO是一种随机并行优化算法。其优点可以概括如下:它不需要优化函数微分、导数和连续;其收敛速度快;算法简单,易于通过编程实现。不幸的是,它也有一些缺点 [ 2 ] ^{[2]} [2]

    1. 对于具有多个局部极值的函数,它可能落入局部极值并且无法获得正确的结果。导致这种现象的原因有两个:一个是优化函数的特性,另一个是粒子的多样性迅速消失,导致过早收敛。这两个因素通常是密不可分的。
    2. 由于缺乏良好的搜索方法的配合,PSO算法无法获得满意的结果。原因是PSO算法没有充分利用在计算过程中获得的信息。相反,在每次迭代期间,它仅使用群体最优值和个体最优值的信息。
    3. 尽管PSO算法提供了全局搜索的可能性,但它不能保证收敛到全局最优值。
    4. PSO算法是一种元启发式仿生优化算法,到目前为止还没有严格的理论基础。它仅通过简化和模拟某些群体的搜索现象进行设计,但是它既没有从原理上解释为什么该算法有效,也没有指定其适用范围。

    因此,PSO算法通常适用于一类高维且不需要获得非常准确的解决方案的优化问题。

    目前对PSO算法的研究有很多种,可分为以下八类:

    1. 对PSO算法进行理论分析,试图了解其工作机理。
    2. 改变它的结构,努力获得更好的性能。
    3. 研究了不同参数配置对PSO算法的影响。
    4. 研究了不同拓扑结构对PSO算法的影响。
    5. 研究了并行PSO算法。
    6. 研究了离散PSO算法。
    7. 研究了PSO算法在多目标优化中的应用。
    8. 将粒子群算法应用于各个工程领域。

    以下是利用PSO解决一个连续函数的Java代码,目标函数是最小化 f ( x , y ) = x 3 + 2 x y 2 − 15 x − 12 y f(x,y)=x^3+2xy^2−15x−12y f(x,y)=x3+2xy215x12y [ 3 ] ^{[3]} [3]

    import java.util.ArrayList;
    
    public class PSOInContinuousFunction {
        int particleNumber = 50;						//粒子数量
        public ArrayList<ParticleProperties> positionArray = new ArrayList<>(particleNumber);			//位置数组
        public ArrayList<ParticleProperties>velocityArray = new ArrayList<>(particleNumber);			//速度数组
        public ArrayList<ParticleProperties>pBest = new ArrayList<>(particleNumber);		//粒子最优解
        ParticleProperties gBest = new ParticleProperties(0.0, 0.0,Double.MAX_VALUE);		//全局最优解
        double velocityMax = 0.1;				//最大速度
        double velocityMin = -0.1;
        int c1=3;                   //认知学习因子
        int c2=3;					//社会学习因子
    
        public static void main(String[] args) {
            PSOInContinuousFunction e = new PSOInContinuousFunction();
            e.ParticleSwarmOptimization(200);
        }
    
        //适应度函数
        public void calculationFitnessFunction() {
            for(int i = 0; i< particleNumber; i++) {
                positionArray.get(i).functionValue = (positionArray.get(i).x* positionArray.get(i).x* positionArray.get(i).x + 2*positionArray.get(i).x* positionArray.get(i).y* positionArray.get(i).y - 15* positionArray.get(i).x -12* positionArray.get(i).y);
            }
        }
        public PSOInContinuousFunction()
        {
            for(int i = 0; i< particleNumber; i++)
            {
                positionArray.add(i,new ParticleProperties(Math.random(),Math.random(),Double.MAX_VALUE));
                velocityArray.add(i,new ParticleProperties(Math.random()* velocityMax,Math.random()* velocityMax,Double.MAX_VALUE));
            }
            calculationFitnessFunction();
            //分别初始化粒子与粒子群体的最优值
            gBest.functionValue = Integer.MAX_VALUE;
            for(int i = 0; i< particleNumber; i++)
            {
                pBest.add(i, positionArray.get(i));
                if(positionArray.get(i).functionValue < gBest.functionValue)
                {
                    gBest = new ParticleProperties(positionArray.get(i));
                }
            }
            System.out.println("初始解 -- gBest.x = "+ gBest.x+" gBest.y = "+ gBest.y+" "+" gBest.f = "+ gBest.functionValue);
        }
        //粒子群主体算法	iterationNumber-迭代次数
        public void ParticleSwarmOptimization(int iterationNumber) {
            for(int i=0;i<iterationNumber;i++) {
                double w = 0.2;//惯性权重
                for(int j = 0; j< particleNumber; j++) {
                    //更新粒子中速度向量中的每一个元素
                    double elementFirst =w * velocityArray.get(j).x+c1*Math.random()*(pBest.get(j).x- positionArray.get(j).x)+c2*Math.random()*(gBest.x- positionArray.get(j).x);
                    double elementSecond =w * velocityArray.get(j).y+c1*Math.random()*(pBest.get(j).y- positionArray.get(j).y)+c2*Math.random()*(gBest.y- positionArray.get(j).y);
    
                    if (elementFirst > velocityMax)
                    {
                        elementFirst = velocityMax;
                    }else if(elementFirst < velocityMin)
                    {
                        elementFirst = velocityMin;
                    }
                    if (elementSecond > velocityMax)
                    {
                        elementSecond = velocityMax;
                    }else if(elementSecond < velocityMin)
                    {
                        elementSecond = velocityMin;
                    }
    
                    velocityArray.set(j,new ParticleProperties(elementFirst, elementSecond, Double.MAX_VALUE));
    
                    //更新粒子的位置
                    positionArray.get(j).x += velocityArray.get(j).x;
                    positionArray.get(j).y += velocityArray.get(j).y;
                }
    
                //计算每个粒子的适应度
                calculationFitnessFunction();
    
                //更新个体极值和群体极值
                for(int j = 0; j< particleNumber; j++) {
                    if(positionArray.get(j).functionValue < pBest.get(j).functionValue) {
                        pBest.set(j, positionArray.get(j));
                    }
                    if(positionArray.get(j).functionValue < gBest.functionValue) {
                        gBest = new ParticleProperties(positionArray.get(j));
                    }
                }
                System.out.println("第"+(i+1)+"代 -- gBest.x = "+ gBest.x+" gBest.y = "+ gBest.y+" "+" gBest.f = "+ gBest.functionValue);
            }
        }
    }
    
    //粒子的状态类
    class ParticleProperties {
        public double x;//x变量
        public double y;//y变量
        public double functionValue = 0.0;//适应度,即求解函数值
    
        ParticleProperties(double x, double y, double functionValue) {
            this.x = x;
            this.y = y;
            this.functionValue = functionValue;
        }
    
        public ParticleProperties(ParticleProperties particleProperties) {
            this.x = particleProperties.x;
            this.y = particleProperties.y;
            this.functionValue = particleProperties.functionValue;
        }
    }
    
    

    参考文献

    [1] Wang D, Tan D, Liu L. Particle swarm optimization algorithm: an overview[J]. Soft Computing, 2018, 22(2): 387-408.

    [2] Wang W. Research on particle swarm optimization algorithm and its application[J]. Southwest Jiaotong University, Doctor Degree Dissertation, 2012: 36-37.

    [3] https://blog.csdn.net/qq_27124771/article/details/80945337

    展开全文
  • 遗传算法(GA)和粒子群算法(PSO)都属于进化算法,用于优化计算时,可以帮助寻找问题的最优解。将遗传算法和粒子群算法应用到反射阵列设计中,大大缩减了设计周期并提高了反射阵列性能。按照该方法设计出的板子阵列在...
  • 用MATLAB编写PSO算法及实例,详细讲解了pso算法的流程和编程设计思路,最后并附有三目标的实例分析。
  • 采煤机行走部组件是采煤机的重要部件,如果其发生故障整个采煤机将无法工作。创建以采煤机行走轮组件为整体...利用PSO算法对数学模型进行优化,使系统内部零件达到同等使用寿命。为采煤机行走部组件设计提供理论依据。
  • 第8讲 PSO算法.ppt

    2019-11-19 20:57:31
    本文档是中山大学算法设计与分析课程的PPT,具体讲述PSO算法的原理和算法设计过程,并介绍用遗传算法解决STA问题以及人工蚂走“圣菲轨道问题”
  • 在分析粒子群优化算法基本原理的基础上,建立了粒子群优化的差分优化模型。通过对差分方程特征根的求解及分析,得出了粒子群算法...同时差分方程特征根的分析方法为其他智能算法的参数设置提供了一套很好的参数设计方法。
  • pso解决n维问题可以做参考,刚自学的matlab,程序可以再调整。内容包括问题题目、经纬度计算距离、处理后的表格数据等 刚自学多少可能有点小问题吧,运行时间较长,可以调整一下粒子个数,有改善的麻烦说一下。谢谢
  • 运用田口方法进行PSO算法优化,,详细介绍了田口方法在PSO算法参数优化中的工程实验应用
  • 针对CMOS运算放大器设计中缺乏自动设计工具,采用手工设计很难提高电路性能的问题,基于群智能技术提出了一种...仿真结果表明,该方法可以提高CMOS运算放大器的性能,在精度和速度上优于遗传算法和基本PSO算法设计效果。
  • 小生境PSO算法matlab程序

    热门讨论 2013-11-21 10:27:28
    小生境PSO算法matlab程序 程序在原有PSo常用测试函数的基础上进行改进,实现了多模寻优
  • Eagle 策略 (ES) 是一个两阶段过程,由 Yang 等人开发。 ES 的灵感来自鹰的觅食行为。... 在这里,使用 ES 改进了粒子群优化 (PSO) 算法。 这种方法用于一些设计问题; 焊接梁设计、拉伸/压缩、压力容器、悬臂梁设计
  • 为CPSO算法设计了8个具有最佳参数的JSSP测试用例,并绘制了相关的算法收敛曲线和调度甘特图。 从两个方面进行了性能分析。 算法改进:与标准PSO算法相比,CPSO算法将理论上的最优解最多减少了17.68%的误差; ...
  • PSO算法文献阅读笔记

    千次阅读 2020-10-08 14:20:10
    粒子群算法读书笔记精读 2020《电子信息学报》基于非线性降维的自然计算方法 孙小晴(2020-04-28) 1针对问题 高维大规模优化问题,陷入局部最优与收敛速度和...NDR+PSOPSO,NDR+GA与GA对比 与应用维度策略算法对比

    粒子群算法读书笔记精读

    2020《电子信息学报》基于非线性降维的自然计算方法 孙小晴(2020-04-28)

    1针对问题

    高维大规模优化问题,陷入局部最优与收敛速度和时间复杂度的矛盾。

    2创新点

    • 非线性降维思想 - NDR
    1. 将初始化的N个D维个体,视为N行D列的矩阵;
    2. 求该矩阵的阶梯矩阵,得到列的最大线性无关向量组。(其他列可由最大线性无关向量组表示)
    • 引入随机系数,解决降维个体属性参数减少问题

    3算法流程

    4实验分析

    • NDR+PSO与PSO,NDR+GA与GA对比
    • 与应用维度策略算法对比
    • F8函数的2维图像
    • NDR+PSO与PSO仿真时间对比

    5个人想法

    • 自然计算方向转变
    • 其他的人工智能的降维思想拿来利用?!



    2019《电子学报》混合均值中心反向学习粒子群算法 孙辉(2020-04-29)

    1解决问题

    平衡粒子群算法勘探和开发能力(全局搜索和局部搜索)

    2创新点

    • 贪心选择所有粒子和部分优质粒子的均值中心,得到的==混合均值中心(HMC=min(MC,PMC))==进行局部细致搜索

    粒子群体的均值中心MC:所有粒子位置在相同维度的算数平均值,每一维都有一个中心

    粒子适应度的均值MVF:所有粒子适应度值的均值

    偏均值中心PMC:挑选优于MVF的粒子构成部分优质粒子,在相同维度的算数平均值,每一维都有一个中心

    • 同时对混合均值中心进行反向学习,进行全局探索

    3算法流程

    4实验分析

    • 实验分析HMC策略优势,比较MC、PMC、HMC三种均值中心对实验结果的影响
    • 实验分析反向学习后收敛情况、聚集程度,得出混合均值中心的反向学习性能提升更大
    • 与最新改进的粒子群算法、人工蜂群算法、差分算法对比
    • CEC2015测试集

    5写作技巧

    • 分析中心极限定理和多元正态分布,引出本文混合均值中心
    • 实验验证混合均值中心具有更好的求解结果



    2019《软件学报》引入多级扰动的混合型粒子群优化算法 徐利锋(2020-04-30)

    *粒子群算法(PSO)、标准粒子群算法(SPSO)、带收缩因子的粒子群算法(PSOCF)

    1解决问题

    粒子群算法易于陷入局部最优问题

    2创新点

    • 根据迭代深度切换SPSO与PSOCF,中前期:SPSO对解空间的探索好,中后期:PSOCF收敛速度快

    • 多级扰动机制:

      • 一级扰动:更新粒子位置时,结合SPSO

        • 目的是增强粒子对解空间的遍历能力(类似混沌扰动)
        • 引入一级扰动取决于概率:概率与最大迭代深度Tm和当前迭代次数Tc有关

        图片随迭代增加,一级扰动概率降低

        • 怎样扰动?

          一级扰动A:优化前期,增大对粒子本身邻域探索能力

          一级扰动B:算法后期,对粒子位置小幅探索修正

          两种中随机选择一种:

          扰动

          T为中前 后期的切换点,r0=[-2,2],r123=[0,1],ga=标准高斯随机数,reset重置粒子位置

      • 二级扰动:陷入局部最优时,结合PSOCF

        • 判定标准:粒子10次未发生变化

        • 怎么扰动?

          基于最优位置附近的随机位置分布,跳出局部最优(避免太随机了)

        扰动

        ra=[-2,2], Xgb分别为k-1代的种群最优位置和k+1代的种群最优位置,k陷入局部最优迭代深度

    3算法流程

    4实验分析

    • 对子问题进行实验分析
    • 对算法中设置的随机参数进行实验分析
    • 四种维度下的对比实验

    5写作技巧

    • 算法在何时切换SPSO与PSOCF作为一个子问题,进行分析和实验
    • 算法分析充分全面,都有实验支撑,到底是《软件学报》的文章

    6个人想法

    • 创新点需要分析透彻,不一定是多么好的idea,但是分析和实验要充分全面



    2017《系统仿真学报》基于logistic映射的自适应变尺度混沌粒子群算法 曾艳阳(2020-05-06)

    1解决问题

    2创新点

    • 利用logistic映射对粒子群混沌初始化

    • 自适应调整参数

      • 惯性权重调整策略

        所有粒子avg(fitness),pavg为比avg(fitness)好的粒子适应度值的平均值

        粒子i适应度值若比pavg好,则赋值小权重

        粒子i适应度值若比avg差,则赋值大权重

        粒子i位于avg和pavg之间,采用w非线性增长策略

      • 学习因子调整策略

        前期c1大、c2小,利于全局搜索;后期c1小、c2大,利于收敛到最优解

    • 以种群适应度值方差判断早熟收敛

    • 基于logistic映射的变尺度混沌局部搜索(重点!!!)

      在适应度较好的粒子周围局部搜索

      • 缩小混沌变量搜索范围

      • 将较优粒子初始混沌变量转换成新的混沌变量

    3算法流程

    4写作技巧

    • 虽然实验分析少,但是创新点多,并且特别多的复杂公式。



    2019《智能系统学报》基于目标空间分解和连续变异的多目标粒子群算法 钱小宇(2020-05-07)

    1解决问题

    多目标PSO收敛行和多样性不佳问题

    2创新点

    • 目标空间分解法
    • 粒子的分类和更新
    • 差分变异、高斯变异、柯西变异三种变异的连续变异

    目前还没看明白!!!(需要静下心来再研究)




    2017《IEEE》A Modified Multi-Swarm Optimization with Interchange GBEST and Particle Redistribution-具备互换性Gbest和粒子重新分配的改进多群PSO算法(2020-05-08)

    1解决问题

    粒子群算法易于陷入局部最优。

    • 粒子群算法会捕获一个局部最优点,多种群会捕获多个局部最优点
    • 变异

    2创新点

    • 陷入局部最优时,多个种群内每个粒子都重置Pbest,根据PR(重新定位概率)给粒子位置加扰动,如下式:

      然后重新计算适应度值,更新Pbest i 和Gbest j

      (判断陷入局部最优的方法是TR代Gbest未发生更新)

      ***策略的作用是:***陷入局部最优位置了,增加一个小扰动来重新定位粒子位置

    • 陷入局部最优时:

      • 如果Gbest i和下一个种群的Gbest i+1相同,则重置Gbest i
      • 如果Gbest i 不相同,则将Gbest i+1赋值给Gbest i

      ***策略作用是:***如果相邻两个种群Gbest相同,重置Gbest有利于种群跳出局部最优

      ​ 如果相邻两个种群Gbest不同,互换Gbest相当于提供了一个轻微的变异,有利于局部搜索

    3算法步骤

    4 个人想法

    一些实验参数的设置:PR=0.7,TR=100,也并没有对着两个重要参数进行分析说明或者仿真实验!

    创新加变异,然后对于陷入局部最优的多个种群互换Gbest来达到种群间通信。




    2017《通信学报》无惯性自适应精英变异反向粒子群优化算法 康岚兰(2020-05-09)

    1 解决问题

    ​ 反向粒子群优化算法计算开销大,易于陷入局部最优的不足

    • 虽然粒子更新公式中的惯性项保持了粒子多样性,但同时降低了种群收敛速度

    2 创新点

    • NIV,一种新的粒子运动方程(目的是相比PSO利用个体经验更多,NIV更多利用种群信息)

      • type1:NIV-D

        随机选择种群中2个个体,利用个体间的差异,指导粒子运动

      • type2:NIV-U**(本文采用这种方式(通过实验分析表明这种方式粒子聚集更明显))**

        将个体间的相互协作推广到整个种群中,扩大协作的范围

        NIV-U与NIV-D相比,通过种群前两个时刻中所有粒子经验来指导当前粒子飞行,收敛速度更快(下文实验证明)。

        但以上两种都无法探知所有环境信息,因此粒子仍可能陷入局部最优,所以提出下面的NIV-R

      • type3:NIV-R

        将差分项用一个随机值来代替

        直观看,过多的随机性对空间的探索比较盲目,但是却使粒子获得跳出局部最优的机会(下文实验证明)

    • AEM,自适应精英变异策略(进一步降低陷入局部最优可能)

      • 种群迭代初期性能较差,较大的变异值提供足够大的扰动,扩大解空间;但随着迭代,变异值变小,确保平滑收敛到最优值。
      • 另一方面,群体极值收敛到很小很小的时候,需要较大的变异值,增强算法搜索能力;当搜索足够充分时,变异值减小可以避免最优值的动荡,从而加快算法收敛速度。

    3 算法流程

    4 实验分析

    • 收敛趋势比较

    • 对不同形式的NIV更新公式分别应用到算法中,进行实验
    • 对AEM、GOBL、NIV三种策略分别与PSO结合,进行实验分析
    • 对AEM策略参数C在13个测试函数上做实验分析
    • 对提出的NIV算式中的学习因子进行Friedman检验,对实验结果进行分析

    5 写作技巧

    • 有很多看起来效果很好的设想,前文提出来了,后文都有充足的实验分析进行论证,使得通篇文章有理有据。
    • 对于创新点分析到位,可以提出一个点的多个版本,在文中详细论述各自的优缺点,实验验证哪个版本最好。
    • 对于相同方向的其他优秀文章创新点,单独摘出来和自己的创新点进行实验比较。
    • 对于结果不仅仅是有求解结果数据和收敛曲线,还有一些运行结束的迭代次数用箱线图统计、在某些某个函数上的收敛趋势比较、在某些某个函数的性能比较(包括最优、最差、均值、方差)
    • 对一些参数的取值,也是用实验的验证去设置,也使得文章更严谨更科学

    6 个人想法

    • 首先就是这篇文章写得真的很好!文字描述、实验验证都全面而且严谨,有理有据。
    • 对于粒子群算法公式的改进方面的好文章
    • 精英变异方面可以利用也可以改进



    2018《小型微型计算机系统》采用二次强化学习策略的多目标粒子群优化算法(2020-05-14)

    1解决问题

    针对粒子群算法进化后期出现的早熟收敛、种群多样性低的问题

    2创新点

    • 无速度MOPSO算法框架提高收敛性,粒子向种群最优粒子的历史最优位置学习,实现粒子第一次学习;

    • 基于分解策略,使粒子向指定数量的邻居均值学习,实现粒子第二次学习。

    每个粒子都有三重属性向量:粒子当前位置向量、种群最优向量、指定数量邻居均值向量

    • 档案维护策略

      外部档案用来存放迭代产生的非劣解集

    3算法步骤




    2016《通信学报》带自适应精英扰动及惯性权重的反向粒子群优化算法 董文永(2020-5-18)

    1解决问题

    针对反向粒子群优化算法存在的易陷入局部最优,计算开销大等问题

    是基于一般性的反向学习基础进行改进

    2创新点

    • 自适应精英变异策略(AEM)

    仅将gbest作为精英粒子,每次迭代根据下式进行自适应变异,若新个体优于原gbest,则替代为新gbest

    其中,

    1. r较小,需要较大变异值F,提高算法搜索能力;r增大时,群体较为分散,变异值F减小,加速算法收敛。
    2. 迭代初期(t较小),先验认知不足,变异值F增大;随着迭代(t增大),变异值F减小,平滑收敛。
    3. 算法初期扩大搜素偶空间,迭代后期,变异率逐渐减小,避免震荡同时加速算法收敛。
    • 非线性自适应惯性权重更新策略(NIV)

    1. 粒子适应度值优于平均值,取得最大w,增加粒子活跃度;反之赋予较小w,向优势区域靠拢,

    2. 同时,favg-fmin较小,(所有粒子趋于一样),w增加;favg-fmin较大,(粒子分散),w减小。

    反向学习(OPSO),利用粒子适应度比重等信息,引入NIV,调整各粒子的活跃程度,加速算法收敛;为避免陷入局部最优,提出(AEM)来增大搜索范围,结合反向搜索,跳出局部最优。

    3算法流程

    4实验分析

    • 算法的时间复杂度分析

      分析算法的各个主要的策略和步骤。之后写文章来看看这里怎么写的!!!

    • 策略有效性分析

      加策略的结果,和不加策略的结果对比

    • 参数敏感性分析

      策略中重要参数取不同值进行对比

    2005《计算机学报》广义粒子群优化模型 高海兵

    1解决问题

    粒子群未能有效解决的离散及组合优化问题(粒子群算法所不擅长的)

    2创新点

    • 广义粒子群优化模型(GPSO)

      通过分析粒子群优化机理,忽略粒子的具体更新策略。

    • 利用该模型提出基于遗传操作的粒子群优化模型

      GPSO模型中以遗传操作作为粒子更新算子

      1. 确定算法参数和适应度函数
      2. 解的编码
      3. 初始化
      4. 更新个体极值
      5. 更新邻域极值
      6. 粒子与其个体极值交叉
      7. 粒子与其邻域极值交叉
      8. 粒子的自身动态变异
      9. 算法停止条件判断
    • Inver over是针对TSP问题的遗传操作,提出基于Inver over操作的粒子群优化算法

    3个人想法

    很适合初学入门,对于PSO讲解非常详细,但是粒子群算法不适用于离散问题,所以不建议深究和继续探索。

    也是我研究生阶段阅读的第一篇期刊文献,不适用于我们所研究的连续优化问题。



    2010《计算机学报》智能单粒子优化算法 纪震

    1解决问题

    大部分随机优化算法的性能都是随维度的增加而变差

    传统的PSO算法往往同时改变整个粒子各个维度上的数值,并根据更新后的解矢量得到一个适应度值。适应度值仅能判断解矢量的整体质量,但不能判断各部分维度是否向最优方向移动

    全局最优:[0, 0, 0]
    初始解:[1, 1, 1]
    随机扰动:[0.2, -0.5, 0.3]
    下一代解:[1.2, 0.5, 1.3]

    2创新点

    • 提出采用一个粒子在解空间搜索

    • 粒子的位置矢量被分解成一定数量的子矢量,并基于子矢量对粒子进行更新

      image-20200511163823046

      • 怎么分解?

        对于维之间相关性较大的函数,根据函数特征去决定子矢量的个数(降维!!!

    • 新的学习策略

    image-20200511164510367

    前一部分:多样性部分,后一部分:学习部分

    如果找到更好的解,粒子下一代的位置就会加上v,同时学习因子L=v;如果没有找到更好的解,就不改变位置,同时令学习因子L=L/s。

    其目的是若发现了更好的解,则会将速度中的学习部分×b倍,加速向更优点靠近;如果适应度值没有变好,那么学习因子会缩小s倍。

    若迭代很多次适应度值都没有改善,L将以1/s的速度减小,当减小到0,那么粒子只由多样性部分决定粒子速度,那么久容易跳出局部最优。

    3算法步骤

    image-20200511165738735

    4个人想法

    一个粒子进行迭代寻优很新颖,同时时间复杂度将大大降低,但是其求解精度一定不会特别好。同时对于维度相关性的确定,不就是降维的思想吗?降维思想可以继续想想!!!

    2018《电子学报》基于多种群的自适应迁移PSO算法 邓先礼

    1解决问题

    标准PSO单一社会学习模式造成的易陷入局部最优和后期收敛速度慢

    2创新点

    • 扩展社会学习:Pbest、Gbest和Lbest(环形拓扑下邻居最优)

      三个种群分配不同加速度因子,赋予种群不同搜索特性

    • 周期评估性能,指导粒子迁移

      何时粒子迁移呢?

      ​ 每隔cycle代就进行种群性能评估,执行粒子迁移

      如何评估种群性能

    gbfinew 表示迁移周期来时新的Gbest,gbfiold 表示迁移周期来前的旧Gbest

    avgfinew 表示迁移周期来时所有粒子的最新Pbest的平均值;同理avgfiold

    3算法流程

    算法

    4实验分析

    • 实验测试函数选取CEC2013,28个函数
    • 显著性检验
      • t-检验
      • Friedman-检验

    5个人想法

    • 多种群小生境,寻找种群间的***信息交流机制?!!!***



    2016《计算机学报》基于自适应搜索中心的骨干粒子群算法 王东风

    骨干粒子群算法BBPSO,取消速度项,粒子位置由服从高斯分布的随机采样获得。

    1 解决问题

    ​ BBPSO在单峰函数具有很好的效果,但是在多峰函数上表现不好

    2 创新点

    • 搜索中心自适应调整:基于粒子适应度值,提出对粒子位置高斯采样均值的自适应调整策略。增大
    • “镜像墙”越界粒子处理方法:
    • 采用不同拓扑结构:算法前期随机结构,增强群体多样性;算法后期全局结构,增强搜索准确性


    2006《IEEE》Comprehensive Learning Particle Swarm Optimizer for Global Optimization of Multimodal Functions-用于多峰函数全局优化的综合学习粒子群算法 J.J. Liang

    CLPSO

    1解决问题

    保留种群多样性,防止早熟收敛。

    2创新点

    • 综合学习策略

    Pbestfid是种群随机选取两个粒子,选择较好者的Pbest作为该维度的学习对象。当某个粒子的学习对象是他本身,那么就随机选择一个维度从另外一个粒子的该维度进行学习。

    • 分析CLPSO的搜索行为

      image-20200513094145514

      • (a)图二维粒子,如果gbest和pbest位于当前粒子的两侧,可能引起粒子震荡,更可能为gbest提供更大的能量,(gbest-X)>(pbest-X),向gbest移动。
      • (b)图二维粒子中,如果gbest和pbest位于当前粒子的同一侧,并且gbest在中间,那么会落到gbest,搜索空间减少。
      • (c)图,本文CLPSO,如果gbest和pbest位于一侧时,通过学习任意两者较优的pbest,跳出当前位置,搜索空间增大。
    • 学习概率Pc

      为种群中粒子设置不同的学习概率(0~0.5),使粒子在种群中具有不同水平的勘探和开发能力。

    • 搜索范围的设置

      常见的边界设置 ,但是本文设置为若粒子在[Xmin,Xmax]之内,才计算适应度值,更新信息。若不在,则不计算,直接进行下一个粒子。

    • 刷新间隙

      若粒子m代都没有得到改进提升,则分配学习对象。

    3 算法流程




    *2012《软件学报》自适应动态控制种群规模的自然计算方法 王蓉芳

    1 解决问题

    提出自适应的动态控制种群规模模型,适用于各类自然计算方法

    • 本文需解决的问题:(分别对应创新点123)
      • 种群规模何时,触发增删操作的条件是?
      • 变化多少?增删个体的数目依据什么?
      • 如何变化?增删算子如何实现?

    2 创新点

    • 动态控制策略框架,源自于文献【2008《IEEE》Solving large scale global optimization using improved particle swarm optimizer】,文献提出种群管理PM方法,本文就是对该方法的改进,如下:

      如果最优个体连续2K代都更新,并且当前种群规模psg>PSmin(种群规模下限),那么触发删除算子1

      如果最优个体连续K代都不更新,并且当前种群规模psg>PSmax(种群规模上限),那么触发删除算子2

      如果最优个体连续K代都不更新,并且当前种群规模psg>PSmax,那么触发增加算子

    • 基于logistic模型的增加/删除数目自适应变化的方法

      增加/删除个体的数目决定了种群规模psg的变化幅度,psg较大时,应增加数目减少,删除数目增大,反之相反。

      此处改进了logistic人口模型,设计增加/删除多少个粒子?

    • 增加/删除算子设计

      • 增加算子:有效性(新增加的粒子位于较好的位置)、多样性(增加的粒子是没有经过为位置)

      • 删除算子

        1. 最优个体连续2K代都更新,为减少时间复杂度,采用分组最差删除方法,即除最优个体外的psg-1个个体按适应度值排序,随机分成ndec个组,删除每组最差的个体。
        2. 种群最优连续K代都不更新,陷入局部最优,相似个体增多,多样性变差,本来应该增加个体来跳出局部最优,但是种群规模超过上界,删除种群中适应度较差的ndec个个体。

    3 算法流程

    *4 写作技巧

    算法时间复杂度的分析

    很多好文章都有时间复杂度的分析,即每次迭代所需时间的有哪些部分。

    5 实验分析

    • 对于删除多少个粒子中的参数,进行了实验分析:

    • 将该框架应用于差分进化算法(DE)和粒子群算法(PSO)

    6 个人想法

    该文章的确写的非常好,写作结构特别新颖,分析也十分到位,利用其它的好思想进行改进应用于自然计算方法,得到好的效果。

    以后往自然计算方向写文章。




    2015《计算机学报》具备反向学习和局部学习能力的粒子群算法 夏文学

    1解决问题

    粒子群算法种群多样性和收敛性之间的矛盾

    2创新点

    • 种群历史最优位置邻域的局部搜索

      利用迭代飞行后的种群最优Pg1和种群次优Pg2之间的差分结果指导Pg1进行局部搜索。

      r为[-1,1]之间的随机数,用来控制局部搜索的方向,dt为线性递减的局部缩放因子d=d*(1-t/T)

    • 反向学习

      陷入局部最优,n个粒子进行S代反向学习,其他N-n个粒子学习方式不变,反向学习对象是该粒子的历史最差位置,以及初始选择规模m的初始最差种群中的任一个体,为了保证反向学习广泛的分布在搜索区域,这m个个体应该具有较大的欧氏距离,两两距离大于排异半径R。

    • 反向学习期间对粒子飞行速度动态调整

    3算法流程

    4实验分析

    时间复杂度分析

    反向学习机制分析




    *2013《电子学报》一种基于动态边界的粒子群优化算法 李迎秋

    1解决问题

    根据停滞期粒子运动特点,动态调整搜索边界,引导粒子到更有效的区域搜索,减轻早熟收敛

    2创新点

    • 边界的动态调整

      D维搜索空间相当于一个D维盒子,所有粒子在[Bl,Br]D内飞行时,就收缩边界;否则就扩展边界。

      上述操作是必须边界与全局极值距离大于阈值时才进行。

      如果过度收缩,即边界与全局极值距离小于等于阈值,需要对搜索空间的边界进行重置,以扩大搜索范围。

    cb:收缩率;cb’=1-cb;ob:扩展率

    • *停滞粒子的处理
    • 停滞粒子飞行速度为0,加入正态分布的随机数来激活粒子;
    • 清除粒子的个体经验,即粒子个体极值设置为当前位置
      • 并不是对所有粒子都施加变异操作,根据大于阈值0.9的随机数选择少部分粒子施加变异操作。



    *2004《电子学报》自适应变异的粒子群优化算法 吕振肃

    1解决问题

    增加跳出局部最优的能力

    • 前提分析

      粒子群算法不管是全局收敛还是早熟收敛,种群中粒子都会聚集,根据函数特点要么收敛于一点,要么收敛于多点。

    • 群体适应度方差

      反应种群内粒子的收敛程度!!!值越大越收敛,反之处于随机搜索阶段。

    • 粒子全局收敛?早熟收敛?

      种群最优=理论全局最优,就是全局收敛

    2创新点

    如果改变全局极值gbest(变异操作),就可以改变粒子前进方向,从而让粒子进入其他区域搜索,就有发现更优解的机会了。

    • 满足变异条件的gbest按一定概率pm变异

      k取[0.1-0.3]内的任意数

      如何变异呢?

    3算法步骤




    2004《计算机科学》混沌粒子群优化算法 高鹰

    1创新点

    • 混沌寻优思想引入粒子群优化算法

    logistic混沌系统

    Zn+1 = uZn(1-Zn)n=0,1,2…

    u为控制参数,一般取u=4,系统处于混沌状态。

    2算法步骤

    3个人想法

    混沌运动具有随机性、遍历性、规律性等

    对于种群初始化利用混沌特性,得到的解具有较好的初始状态。




    2018《小型微型计算机系统》一种带有二维扰动和自适应学习因子的粒子群算法 王磊

    1解决问题

    粒子群算法易于陷入局部最优,后期收敛速度慢和收敛精度低。

    2创新点

    • 自适应惯性权重和学习因子

      为了平衡全局搜索能力和局部搜索能力,迭代初期,w应该具有很快的下降速度;迭代后期,w应该具有较慢的下降速度

    • 基于位置、速度二维扰动更新粒子信息

      对周期性震荡的正弦函数因子进行改进,原来的方法有两个缺点:

      1如果全局最优已经在最优解的附近,扰动会偏离最优解;2震荡后的位置与原位置更远

      对于第一个问题,限定为只有陷入局部最优的粒子才进行震荡;第二个问题,将震荡幅度限制为20%之内。

    • 变异一些较差粒子

      所有粒子都向全局最优学习,会导致种群多样性变差,为解决这一问题,每次迭代选取一定数量适应度最差的粒子进行随机变异,这样会增加种群多样性。(2/8原则)

    3算法流程

    4个人想法

    这篇文章前面的理论叙述和分析十分全面,后面的实验结果分析就比较简单。




    2020《小型微型计算机系统》一种最优粒子逐维变异的粒子群优化算法

    1解决问题

    针对粒子群算法容易陷入局部最优/收敛速度过慢/精度低等问题

    2创新点

    提出一种新的逐维变异策略,对全局最优粒子进行逐维的重心反向学习变异

    逐维变异降低了维度间干扰,通过更新最优位置引导粒子向更好的位置飞行,加强了种群多样性。

    3算法流程

    1591984561949

    1591984575509[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w6ueSVyh-1602137960842)(C:\Users\16222\AppData\Roaming\Typora\typora-user-images\1591984593812.png)]

    2015《Swarm and Evolutionary Computation》Heterogeneous comprehensive learning particle swarm optimization with enhanced exploration and exploitation-改进探索与开发的异构综合学习粒子群算法

    本文提出了一种综合的学习粒子群优化算法,该算法具有更强的探索性和开发性,被称为“异构综合学习粒子群优化”(HCLPSO)。在该算法中,群体人口被分为两个亚群。每个子种群都被分配为仅专注于勘探或开发。综合学习(CL)策略用于生成两个子群体的样本。在勘探亚群中,示例是通过使用勘探亚群本身中粒子的个人最佳体验而生成的。在开发子种群中,将整个种群的个人最佳经验用于生成样本。由于勘探子种群无法从开采子种群中的任何颗粒中学习,因此即使开采子种群过早收敛,也可以保留勘探子种群中的多样性。在转移和旋转基准问题上测试了异构的综合学习粒子群优化算法,并与其他最新的粒子群优化算法进行了比较,以证明该算法优于其他粒子群优化变体。

    2005《Journal of Information Science and Engineering》A Parallel Particle Swarm Optimization Algorithm with Communication Strategies-具有通信策略的并行粒子群优化算法

    1解决问题

    种群间粒子之间的通信问题

    2创新点

    提出了粒子群优化(PPSO)算法的并行版本以及可以根据数据的独立性使用的三种通信策略。

    • 第一个策略是为独立的或仅松散相关的解决方案参数设计的,例如 Rosenbrock 和 Rastrigrin函数
    • 第二种通信策略可以应用于更紧密相关的参数,例如 Griewank 函数。
    • 在参数的属性未知的情况下,可以使用第三种混合通信策略。

    3算法流程

    1591985191584

    2002《IEEE》Population Structure and Particle Swarm Performance -种群结构和粒子群性能

    1解决问题

    系统研究了各种种群拓扑对粒子群算法的影响。生成了符合规格的随机图,并比较了它们在几个标准上的性能。是什么构成良好的人口结构?

    2创新点

    主要对种群间的拓扑结构进行分析

    我们将粒子群中的影响概念化为流动信息,该信息在相互连接的个体对之间移动最快,但是由于中介的存在而受到缓冲或减慢。因此,如果个体 i找到一个好的解决方案,则可以将其传递给其相邻的邻居 j,但不能立即传递给未与 i 连接的 k。但是,如果该解决方案确实是一个好的解决方案,则j 的性能将会提高,直到 j(连接到 k)在 k 的邻域中达到最佳。发生这种情况时,i 最初找到的解可能会传达给 k。

    1999《IEEE》Small Worlds and Mega-Minds: Effects of Neighborhood Topology on Particle Swarm Performance-小世界和大思想:邻居拓扑对粒子群性能的影响

    1解决问题

    种群间粒子的拓扑结构

    2创新点

    • 圆(/最佳):每个人仅与其 K 个直接邻居相连

    • 轮子:一个人连接到所有其他人,而他们只连接到另一个

    • 星号(最棒):每个人都与其他每个人联系在一起,并且

    • 随机边:对于 N 个粒子,在成对的个人之间分配了 N 个随机对称连接。

    1591985594946

    2004《IEEE》Particle Swarm (Optimization Algorithms with Novel ]Learning Strategies- 新型学习策略的粒子群优化算法

    1解决问题

    粒子群算法在多峰函数上的不足

    2创新点

    提出了三种具有新颖学习策略的

    • 精英学习

    在 PSO 中,最佳位置gbest 可能具有有用的信息。在 ELPSO 中,群中的精英,最优秀的人才和最优秀的粒子被用作典范。为了充分利用精英,对于每个粒子,随机选择 m 个维(或变量)以从 gbest 学习,而其他维从 pbest 学 习。m 是整数。如果 m 过大,则当 gbest 落入局部最优值时,它将使其他粒子更快地吸引到局部最优值, 并且会由于实验结果而过早收敛。相反,当 m 较小时,粒子在初始代中保持较大的多样性,并且更有可能脱离局部最优。

    • 自身学习

    认为群体中的每个粒子都有其良好的特性,其他粒子可以学习这些特性。因此,在此版本中,粒子自身的最佳和其他粒子的最佳用作示例。因此,每个粒子都可能从群中的所有粒子中学习。在搜索过程中,我们不知道每个粒子的尺寸是好是坏。因此,粒子的每个维度都有被其他粒子学习的平等机会。对于每个粒子,其他粒子的最佳尺寸是随机的根据概率选择。

    • 他人学习

    基于对其他两个版本的分 析,我们提出了 CLPSO,该 CLPSO 从群体的最佳,粒子的最佳和其他粒子的最佳学习中学习,以便粒子从精英,自身和其他粒子。在此版本中,将随机 选择 m 个维度以从 gbest 中学习。随机选择一些剩 余的 Dm 维以从一些随机选择的粒子的最佳学习中 学习,而其余的维则从其最佳学习中学习。当 m = -0 时,尽管 gbest 似乎毫无用处,但实际上它是一个粒子的 pbest,并且被其他粒子学习的机会均等。

    2016《Swarm and Evolutionary Computation》Directionally Driven Self-Regulating Particle Swarm Optimization algorithm-定向驱动自调节粒子群算法

    1解决问题

    改进基本 SRPSO 算法

    2创新点

    定向驱动自调节粒子群优化(DD-SRPSO)算法。在 DD-SRPSO 中,我们合并了两个新策略,即定向更新策略和旋转不变策略。与 SRPSO 中一样,DD-SRPSO 中的最佳粒子使用相同的自调节惯性权重更新策略。性能不佳的粒子被分组在一起,以从精英粒子组中获得方向更新。随机选择所有剩余的粒子,以进行全局搜索方向自我感知的 SRPSO 策略或旋转不变策略,以探索搜索空间的旋转方差性质。

    3个人想法

    写的很不错,还没有十分读懂,之后还要继续多读几遍!!!

    2020《计算机应用研究》一种新的自适应动态文化粒子群优化算法

    1解决问题

    克服粒子群优化算法在解决复杂问题时候的难题

    2创新点

    引入评价粒子群早熟收敛程度判断粒子群状态,算法陷入局部最优,自适应的利用影响函数对种群空间进行变异更新,从而有效发挥文化粒子的双演化双促进机制,并且根据收敛成都自适应调整惯性权重。

    3算法流程

    1591986385425

    2017《IEEE》Particle Swarm Optimization with Selective Multiple Inertia Weights-选择性多重惯性权重的粒子群优化

    在过去的几十年中,粒子群算法被广泛用作单峰,多峰,可分离和不可分离的优化问题的优化方法。PSO的流行变体是PSO-W(惯性重量PSO)。尝试用选择性多重惯性权重(SMIWPSO)修改PSO,以增强PSO的搜索能力。本文用四种最佳选择的惯性权重技术实现了SMIWPSO,即线性减小惯性权重,混沌惯性权重,随机惯性权重和恒定惯性权重。考虑惯性权重的选择取决于控制参数P的协议。针对25个标准优化问题,针对PSO检查SMIWPSO性能。实验结果表明,SMIWPSO在效率,可靠性和鲁棒性方面有显着改善。

    2017《IEEE》Particle Swarm Optimization and Cuckoo Search Paralleled Algorithm-粒子群算法与布谷鸟搜索并行算法

    1创新点

    抽象粒子群优化算法与杜鹃搜索算法都是仿生群优化算法。算法简单方便。他们已经适用于许多领域。然而,这些算法有明显的优势缺点。当它们应用于复杂的优化问题,他们不能获得最优解,所以有些必须采取措施,以改善其全球性搜索能力。本文提出了粒子群优化算法算法和布谷鸟搜索算法并行进化。在一代的末期,两者中较好的解决方案选择算法作为全局最优解。

    2算法流程

    1591986836067

    2016《IEEE》An Opposition-Based Learning Competitive Particle Swarm Optimizer-基于对立的学习竞争粒子群优化器

    1创新点

    提出了一种基于对立的学习竞争粒子群优化器(OBL-CPSO),以解决PSO中过早收敛的问题。OBL-CPSO中采用了两种学习机制,分别是来自竞争群优化器(CSO)的竞争学习和基于对立的学习。在OBL-CPSO的每次迭代中,竞争性学习都在来自群体的三个随机选择的粒子之间进行,然后进行适合度的比较。具有最佳适应性的粒子(称为获胜者)直接传递到下一个迭代。适应性最差的粒子向获胜者学习,中等适应性的粒子通过基于对立的学习来快速利用搜索空间,然后将它们以更新的位置和速度传递到下一次迭代。

    2算法流程

    1591987117346

    2015《IEEE》Small World Network Based Dynamic Topology for Particle Swarm Optimization-基于小型世界网络的动态拓扑用于粒子群优化

    提出了一种基于“小世界”网络的动态拓扑粒子优化算法。该技术通过动态更新粒子群优化算法的邻域拓扑来模仿“小世界网络”中的信息传播。提出的动态邻域策略可以有效地协调粒子群优化算法的探索和利用能力。仿真表明,群体收敛是有保证的。实验表明,该方法保持了种群多样性,增强了全局搜索能力。

    1591987435398

    1591987451243

    2013《IEEE》Multiple Populations for Multiple Objectives:A Coevolutionary Technique for Solving Multiobjective Optimization Problems-多目标的多个种群:解决多目标优化问题的协同进化技术

    1解决问题

    传统的多目标进化算法(MOEA)在解决多目标优化问题(MOP)时会整体考虑多个目标。但是,由于不同的目标经常相互冲突,因此这种考虑可能会给将适合性分配给个人造成困难。

    2创新点

    提出了一种新颖的协同进化技术,在开发MOEA时将其称为多目标多种群(MPMO)。MPMO的新颖之处在于,它通过让每个人口仅对应一个目标来提供一种简单直接的方法来解决MOP。这样,可以解决适应度分配问题,因为可以通过相应的目标分配每个人群中的个体适应度。MPMO是一种通用技术,每个人口都可以使用现有的优化算法。本文针对每个种群采用粒子群优化算法(PSO),并基于MPMO技术开发了协同进化的多群PSO算法(CMPSO)。此外,CMPSO是新颖且有效的,它通过使用针对不同人群的外部共享档案库来交换搜索信息,并使用两种新颖的设计来提高性能。一种设计是修改速度更新方程,以使用由不同总体找到的搜索信息来快速近似整个帕累托前沿(PF)。另一种设计是对档案更新使用精英学习策略,以引入多样性以避免本地PF。

    3算法流程

    1591987554281

    2010《IEEE》Particle Swarm Optimization based on self-organizing topology driven by fitness -基于适应性驱动的自组织拓扑的粒子群优化

    为了探究动态网络的拓扑特征与粒子群优化(PSO)算法性能之间的关系,将PSO总体视为一个网络,其中每个粒子都表示为一个节点,并且网络结构随着粒子的适应性而动态变化。不同。此外,在本文中,结构更改涉及添加和删除链接,但网络大小保持不变。然后,进行两种模拟。一种针对PSO的结果表明,动态网络能够平衡勘探与开发,因此只要适当选择权重θ,就可以提高PSO的性能。并且网络结构发生变化。随着粒子适合度的变化而动态变化。而且在这方面呢文件中,结构变化涉及添加和删除链路,但网络大小保持不变。

    粒子群算法读书笔记泛读

    2020《深圳大学学报理工版》基于正态分布衰减惯性权重的粒子群优化算法

    1解决问题

    针对粒子群算法早熟收敛与收敛速度的矛盾

    2创新点

    提出基于正太分布分布衰减惯性权重的粒子群优化算法

    2015《小型微型计算机系统》基于不同学习模型的精英反向学习粒子群优化算法 赵嘉

    2011《计算机学报》基于空间缩放和吸引子的粒子群优化算法_迟玉红

    为解决粒子群优化(Particle Swa rm Optimiza tion , PSO)算法中粒子越界、算法进化后期收敛速度慢和早熟收敛的问题, 通过分析 PSO 算法中粒子运动行为和算法稳定性, 提出了一种基于空间缩放和吸引子的粒子群优化(PSOwith sea rch space zoomed facto r and att ractor , SzAPSO)算法.该算法利用对搜索空间进行缩放的边界变 异策略有效控制了粒子搜索范围, 保证了算法全局探测能力;算法中吸引子的引入增加了感兴趣区域的粒子密度, 提高了算法局部开发能力.实验结果表明, SzAPSO 算法收敛速度快、精度高, 且具有较好的鲁棒性.

    2013《电子学报》一种基于动态边界的粒子群优化算法-李迎秋

    2007 年提出的标准粒子群优化算法(PSO-2007)在进化的后期容易出现停滞现象而导致早熟收敛, 为此本文提出了一种基于动态边界的粒子群优化算法(DBPSO).该算法根据停滞期粒子运动的特点, 将边界动态调整策略引入到PSO-2007 中, 通过跟踪粒子飞行位置的分布动态调整搜索空间的边界, 引导粒子在更有效的区域内进行搜索,从而减轻早熟收敛, 提高收敛精度.典型测试函数的求解实验结果表明 DBPSO 是可行而有效的.

    2013《计算机工程与应用》层次环形拓扑结构的动态粒子群算法

    粒子群算法(PSO)的拓扑结构决定粒子之间的信息交互方式,是影响算法性能的关键因素。为提高算法性能,提 出了一种层次环形拓扑结构的动态粒子群算法(HRPSO),粒子组成的环被分配在规则树中,算法运行时,环层次中动态 移动。通过 6个标准测试函数优化,比较了 HRPSO与几种基准算法的性能,实验结果证明 HRPSO在精确性和稳定性上具有优势。

    2019《IEEE》Center Particle Swarm Optimization Algorithm-中心粒子群优化算法

    2018(自动化学报)基于变换函数与填充函数的模糊粒子群优化算法

    2020(计算机应用)一种新的自适应动态文化粒子群优化算法

    2019(自动化学报)基于相似历史信息迁移学习的进化优化框架

    2017(计算机研究与发展)基于网格排序的多目标粒子群优化算法

    2017(电子与信息学报)平面框架方向图优化的改进PSO算法

    2015《IEEE》A New Particle Swarm Algorithm By Modifying Its Toplogy Structure-通过修改其拓扑结构的新粒子群算法

    PSO(粒子群优化)是处理复杂优化的最有效方法之一,在本文中,通过引入改进的拓扑结构来解决新的PSO算法。首先,提出了在有效搜索区域进行PSO粒子探测的规则。然后,介绍了一种新的基于改进链拓扑的PSO算法,称为PSOC(基于改进链结构的粒子群算法)。在PSOC中,粒子仅受其相邻粒子的影响,并且邻域最优在整个总体中不共享。进行数据实验以及与基准上其他流行的改进PSO算法的比较。实验结果表明,PSOC具有较好的全局搜索能力和稳定的优化能力

    2012(软件学报)一种多尺度协同变异的粒子群优化算法 陶新民

    为了改善粒子群算法易早熟收敛、精度低等缺点,提出一种多尺度协同变异的粒子群优化算法,并证明了该算法以概率1收敛到全局最优解.算法采用多尺度高斯变异机制实现局部解逃逸.在算法初期阶段,利用大尺度变异及均匀变异算子实现全局最优解空间的快速定位;随着适应值的提升,变异尺度随之降低;最终在算法后期阶段,利用小尺度变异算子完成局部精确解空间的搜索.

    2012(计算机应用)CCMPSO基于混沌云模型的粒子群优化算法

    2012(软件学报)多Agent主从粒子群分布式计算框架

    2010《Expert Systems with Applications》PSOLVER: A new hybrid particle swarm optimization algorithm for solving continuous optimization problems-一种新的混合粒子群优化算法,用于解决连续优化问题

    2008《IEEE》Dynamic Multi-Swarm Particle Swarm Optimizer with Local Search for Large Scale Global Optimization-动态多种群粒子群优化器与局部搜索大规模全局优化

    2007(系统仿真学报)基于决策者偏好投影寻踪模型的多属性决策法

    展开全文
  • 借鉴交换子和交换序概念,设计出了能直接在离散域进行搜索的改进的自组织PSO算法。用于旅行商问题(TSP)的求解,并与基本及其他典型改进PSO算法进行性能比较。实验结果证实改进的自组织PSO算法是有效的。
  • 基于改进的PSO算法求解任务分配模型,研究了求解问题与粒子的映射以及采用TOPSIS计算粒子位置适应度的方法,进而设计了一种基于改进PSO算法的任务分配算法。通过应用实例及仿真实验,证明了改进的PSO算法应用于任务...
  • PSO 算法在智能停车场系统中的应用及算法优化 市首都师范大学附属中学高二10...用离散 PSO 算法为基础算法的智能停车场系统设想设计了匹配车辆与车位对应关系的 评价因子并在采集部分实际数据的基础上完成了智能停车场
  • 针对控制性能指标不兼容难以选择控制器,提出了一种改进的PSO控制算法....仿真实验显示:改进的PSO算法有更强的鲁棒性和更好的动静态控制品质.研究结果表明该算法用于污水处理系统控制器参数优选的合理性与可用性.
  • 针对基于Kalman滤波的PSO算法设计与应用过程中存在的不足,提出了基于自适应Kalman滤波的改进PSO算法。利用粒子群状态空间Markov链模型,建立粒子群系统状态方程;采用粒子的速度和位置作为观测量,构建观测方程;引入...
  • 首先采用舍入取整方法, 为了减少舍入误差, 对PSO 中的每个粒子到目前为止的最好位置进行随机修正, 将基于正交实验设计的正交杂交算 子引入离散PSO 算法, 以增强搜索性能; 然后对PSO 算法中的惯性权重和收缩...
  • 针对认知无线电频谱分配时分配率低、用户满意度不高的问题,提出了适应值预测的粒子群优化算法(FP-PSO),利用FP-PSO算法优化了认知无线电频谱分配过程,设计的适应值预测方法提高了分配效率的同时满足了实时性要求...
  • 针对标准粒子群算法(PSO)全局与局部搜索能力相互制约的缺点,提出一种带有独立局部搜索机制、多区域搜索策略和渐近收敛能力的新型PSO算法(ILS-PSO).设计新的简化参数的全局搜索公式、非劣解邻域局部搜索公式和当前最...
  • PSO算法求函数最优解

    2020-07-28 19:55:34
    引用----PSO算法 https://blog.csdn.net/wang454592297/article/details/80367158 根据引用链接中的算法算了几个函数 文章目录PSO公式速度位置函数Ackely's function迭代500次迭代1000次总结Sphere function迭代500...

    引用----PSO算法
    https://blog.csdn.net/wang454592297/article/details/80367158

    根据引用链接中的算法算了几个函数

    PSO

    粒子群算法(Particle Swarm Optimization ,PSO)属于进化算法,是通过模拟鸟群捕食行为设计的。从随机解出发,通过迭代寻找最优解,通过适应度来评价解的品质。

    所有的粒子具有以下两个属性:速度、位置。

    PSO初始化为一群随机粒子(随机解),然后通过迭代找到最优解。在每次迭代中,粒子通过跟踪极值来更新。

    • 一个是粒子本身所找到的最优解—pbest
    • 一个是整个种群目前找到的最优解—全局极值gbest

    公式

    速度

    V i + 1 = w ∗ v i + c 1 ∗ r a n d 1 ∗ ( p b e s t i − x i ) + c 2 8 r a n d 2 ∗ ( g b e s t i − x i ) V_{i+1} = w * v_i + c_1 * rand_1 * (pbest_i -x_i) + c_2 8 rand_2 * (gbest_i - x_i) Vi+1=wvi+c1rand1(pbestixi)+c28rand2(gbestixi)

    位置

    x i + 1 = x i + v i + 1 x_{i+1} = x_i + v_{i+1} xi+1=xi+vi+1

    • w为惯性因子,一般取1
    • c 1 、 c 2 c_1、c_2 c1c2为学习因子,一般取2
    • r a n d 1 、 r a n d 2 rand_1、rand_2 rand1rand2为两个(0,1)之间的随机数
    • v i 和 x i v_i和x_i vixi分别表示粒子第i维的速度和位置
    • p b e s t i 、 g b e s t i pbest_i、gbest_i pbestigbesti分别表示某个粒子最好位置第i维的值、整个种群最好位置第i维的值

    函数

    所用到的函数

    验证根据PSO算法得出的解是否和图中Min列是否相同

    Ackely’s function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[0.008798111252883434, 0.00412528796114886, 0.0015759693917201112, 0.0026137533595336215, 0.006531153883643004, 0.003441343940988606, 0.006741767840502622, 0.00456731157836332, 0.0025110381700241824, 0.0009791559846701325, 0.008162902701994046, 0.01829783011504249, 0.004661248796420825, 0.007216901376619678, 0.0014501272550124789, 0.011795247085065075, 0.012796751176616272, 0.0036383589416044693, 0.001740868588975264, 0.004826643514608708, 0.017877522500505894, 0.006458158837166383, 0.0015155482775282003, 0.00963717778213935, 0.0019024031837884259, 0.006730532394322086, 0.004811180271659499, 0.01786805300947636, 0.014243021693669977, 0.010351039149285146, 0.008874660620140862, 0.025762633511487554, 0.007023852271107689, 0.008302876113071012, 0.008316904747250664, 0.004962642897286873, 0.0015181944494320199, 0.0013010305524336907, 0.003310548465979668, 0.01256607951679145, 0.01353386249751809, 0.004146758131572614, 0.0071959835654671345, 0.008392583001452625, 0.015098510771573093, 0.013792976320275319, 0.003190558487653039, 0.007021902820043113, 0.01595595699381791, 0.006332988199347245, 0.009304213194241573, 0.013301185850342012, 0.00866612743434958, 0.012231267979530447, 0.002294416342572436, 0.007603733558145809, 0.002945969372000423, 0.011425637063031235, 0.00018509660771259817, 0.0050254213387082025, 0.006214845842091865, 0.003198911721636666, 0.002806474610015375, 0.010714392669566752, 0.014552545384554083, 0.01641797465566386, 0.005585214691735008, 0.007580658023450315, 0.014009888779025648, 0.005242787408456184, 0.003979815426948807, 0.0054940939246752585, 0.007304460701363258, 0.003208752947060578, 0.007796537698713468, 0.016242397906449657, 0.007193527067734795, 0.0039092611249000875, 0.009779467196981972, 0.005015148089900112, 0.013061175752096421, 0.009182955818279215, 0.003457176636790127, 0.007633535720377171, 0.006374295730904311, 0.0035024866773381014, 0.010446475531108224, 0.008103506208929634, 0.0052477964641153285, 0.010448962206670576, 0.0018359296776577771, 0.004433436967446358, 0.009286925895143572, 0.0030805125585904314, 0.004232010247836815, 0.0046086197116790295, 0.004423558939820271, 0.007628702801600884, 0.005711103245300553, 0.0056482107292770145]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[0.007777698639341413, 0.011750304915569831, 0.001637655438934349, 0.0021345930089151643, 0.004953211605098762, 0.004609366469989329, 0.008855176233816042, 0.006171885474433925, 0.005666283545032957, 0.008779260541907252, 0.0024726402965105088, 0.003308187940345153, 0.005692022526365026, 0.00348317083330274, 0.0018820009309021835, 0.005897906491103999, 0.0043741323540769095, 0.00763438980005704, 0.004308923577422963, 0.008123091173857677, 0.004805585447791305, 0.00519889736401824, 0.005633471196912598, 0.01042444431974987, 0.005909884495644224, 0.0032499732923629843, 0.004154160065145351, 0.0062660511486432036, 0.00922695914112781, 0.0026845793256353723, 0.0028438883844228435, 0.005129443660230937, 0.00415363438387617, 0.005973571033355274, 0.005429500803224574, 0.003031886948388962, 0.0006536105969208172, 0.0014868000903587308, 0.004247792778241166, 0.005831166628155859, 0.0042701336114174815, 0.005011725941635792, 0.009305179197288016, 0.005599391691508249, 0.002732073123198564, 0.006937030243129971, 0.013951514236986373, 0.008872471149321104, 0.0019500464548021235, 0.0056445625119576626, 0.0066535535951293134, 0.00785543004390421, 0.004552863370986149, 0.01010764380870599, 0.007666373494299439, 0.0087730019079868, 0.007417867236938935, 0.005574057033598923, 0.0060426580468058155, 0.005499542575162497, 0.004129655863473136, 0.0036044735968983055, 0.0024687863214123418, 0.0069049609206044416, 0.002105976760589545, 0.006034425495226703, 0.004493055445138783, 0.003959874686679132, 0.003293330771424241, 0.0040926498184536975, 0.009137434042323367, 0.005823916223228753, 0.0033503690159126798, 0.001661783681481399, 0.010295400134300525, 0.004961423736049131, 0.008876837742736843, 0.0050078572563809765, 0.0024045031631740876, 0.005432775616800445, 0.007211534479236281, 0.004198094235750904, 0.005026957671461663, 0.006869285451479801, 0.008548473351126962, 0.004290542956337351, 0.004830191536715933, 0.0006704984706193962, 0.0027148178440197235, 0.006543366711377008, 0.006756568925681439, 0.00934031576953176, 0.002732307643232179, 0.0008839955364732255, 0.0017488753633085885, 0.0046547114007009505, 0.005195974091894318, 0.0030090639639372974, 0.004069457291955292, 0.01084323352713712]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    总结

    正常解 f ( 0 , 0 ) = 0 f(0,0)=0 f(0,0)=0,实验结果也接近0,但偏差也是蛮大的

    Sphere function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[8.2925774558903e-06, 2.6644264789405e-05, 1.403253610938504e-05, 1.052597873788183e-06, 4.1635244128056885e-06, 2.4391729647820876e-06, 7.523322685596437e-06, 1.0772564320710898e-05, 6.386890773946959e-06, 1.2682177763272066e-05, 7.539433679504782e-06, 2.1046330698000245e-06, 3.658812968694753e-06, 1.8328937644910284e-05, 4.451688142874026e-06, 1.27201243467123e-06, 2.1389059140035347e-06, 6.261258416674967e-06, 1.6982763086670388e-06, 1.4201632780776479e-06, 4.5714040645456906e-05, 6.227107923869075e-06, 8.076456912646267e-06, 3.561543520593499e-06, 5.1476292820424856e-05, 5.825901543950666e-06, 1.3230867547506592e-05, 2.4450984193152813e-06, 1.4619986247398137e-07, 5.165415563462723e-05, 1.8355220668226635e-05, 3.581963649001338e-06, 5.33190060536938e-06, 2.5923546350211295e-06, 1.315273644197712e-06, 1.6960687278065705e-06, 3.5371405880771364e-07, 1.5864059184564686e-06, 9.327079995389808e-06, 1.1092309797474783e-05, 1.5051723071523514e-06, 1.174847644711617e-05, 2.823304404165453e-07, 1.3442724715624088e-05, 3.347202289649783e-05, 1.3994864775391124e-06, 1.666020980005086e-06, 6.011638985525239e-06, 1.9760305558918866e-05, 1.0768689787019117e-05, 4.320750723710117e-06, 3.9849707607271535e-07, 1.042722520606095e-05, 1.7364946853440996e-06, 3.951596544088428e-06, 9.071501351730205e-06, 3.1558336333603467e-06, 4.168550954931606e-06, 3.612266693424342e-06, 6.2289210084807875e-06, 1.693591881724597e-05, 5.1599675703273186e-06, 2.3797550177856885e-06, 3.1677714210727076e-06, 1.7549074321792377e-05, 3.5470736931855385e-08, 3.6048310021892474e-05, 6.653024747428683e-07, 1.3718482299206218e-05, 6.518008458027763e-06, 1.1029241847696147e-05, 2.7716815570134566e-05, 2.5893715864922964e-05, 2.0221964580926726e-06, 1.8210244304412265e-05, 7.684523821620521e-06, 4.236418109177502e-06, 4.761868779821344e-07, 1.0771044273498534e-05, 1.0871733055007478e-05, 5.380207477749114e-06, 8.913579807403076e-06, 7.274498196054789e-06, 1.3442559749961223e-06, 5.5650637622358215e-06, 5.046143699940463e-06, 2.6557449477318963e-07, 3.3288789612123434e-06, 2.7974213042418966e-05, 1.1878913368336378e-05, 5.52468759271892e-06, 4.036731979916974e-06, 6.387584072503121e-06, 5.183065390455982e-06, 3.2745182086944514e-05, 3.6878329378214763e-06, 3.2835556807843686e-06, 5.133055695079563e-06, 5.091825622026362e-05, 2.8602231615827474e-06]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[1.4043526407413336e-06, 8.255458499436939e-06, 2.9671060131835567e-05, 2.2833541769152367e-06, 1.0740419003311265e-06, 8.944080295732602e-06, 2.606049966679934e-07, 2.985161570637821e-06, 3.997486005736964e-06, 1.090571043557832e-06, 5.258858243939428e-06, 2.6662383589875515e-06, 2.1546829206265877e-06, 1.126472937868695e-06, 3.7138463139840012e-06, 5.4262009981635e-07, 2.4168715105408075e-06, 2.1362092731459587e-06, 1.5845719462041692e-05, 2.04819522460144e-06, 1.0778905983183676e-05, 6.129954922282131e-06, 1.699421805788903e-06, 1.5179175129969244e-05, 1.6627202925447888e-06, 1.3345971003862538e-06, 3.4356856482476407e-06, 5.256730258771829e-07, 8.95536291508037e-06, 2.513601721267114e-06, 2.285613778753905e-06, 9.76508141606306e-07, 3.1170938815893543e-05, 1.9547213140161835e-06, 1.147032828838478e-06, 3.706700142458343e-06, 3.7728138628016097e-06, 8.497456296526735e-06, 6.326460583840566e-06, 3.2166254054224267e-06, 8.192649256392646e-06, 6.527882585101481e-07, 1.1598068243648735e-05, 8.818438692393206e-06, 2.6725044434922663e-06, 1.1362230165937197e-05, 2.464796670944247e-07, 1.5748417528255132e-06, 6.486471334876782e-06, 3.865993460409729e-06, 2.277144078750453e-07, 6.00994961086068e-06, 2.1470446015749154e-06, 5.389574201742569e-06, 2.8917460592565024e-06, 9.180215478084115e-07, 1.1617651859258028e-05, 2.927809430812373e-06, 1.8324130731076625e-07, 2.7317901820683115e-07, 4.618178987783822e-06, 3.096461214327026e-07, 5.036169926922929e-07, 1.830187989248175e-06, 4.921886684892233e-06, 8.696916427701128e-07, 1.1019872984333512e-06, 3.577779627252081e-07, 8.492940210250046e-06, 1.9270230575428874e-05, 2.776887010753024e-06, 7.060415861469671e-06, 1.6208179650016774e-05, 1.0718267868266525e-06, 2.3204807833472864e-06, 1.1230113909214132e-05, 4.919179847865182e-06, 8.489427772090447e-07, 3.165054326704671e-06, 1.1105356713876477e-06, 2.4120074390475697e-06, 5.003421633110398e-06, 1.507912559554558e-05, 8.093968803037836e-06, 1.3490667021629974e-06, 1.5277735162682622e-05, 1.0970129205331796e-06, 1.4481216116968488e-06, 6.737608122280093e-06, 4.830507304661804e-06, 6.306392040007796e-06, 2.741053372722082e-06, 1.157151657397236e-05, 7.33922055474095e-06, 5.702294947719127e-06, 8.698649063184452e-06, 9.119618114799699e-07, 2.6918101004709757e-06, 4.259206931579608e-06, 6.42798664857414e-08]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    总结

    正常解 f ( 0 , 0 ) = 0 f(0,0)=0 f(0,0)=0,实验结果也近乎似0

    Rosebrock function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[0.00023212046704656082, 7.908584793481616e-05, 3.922013878554572e-05, 0.0016777786745990932, 0.0005241402925670532, 0.0017261520176992365, 0.0008465167816800328, 0.005109708612667881, 0.00012525499998572835, 0.0005167904783601512, 0.00010001504618670652, 0.00016579385671561828, 0.0029985700255690645, 0.00012773763201309553, 0.001639665816754357, 1.4217468914989302e-06, 0.0023649734088707327, 0.00020984618127326864, 4.0261360760055296e-07, 0.0010956604902850446, 0.001697259717107192, 0.0012175314609209635, 0.0027215488837105807, 0.0023200460422032974, 1.2126729925272752e-05, 0.002379657922553699, 0.00041823654438149415, 0.0012731772655908725, 0.0009544945637321405, 0.000580405512949563, 3.604815983771051e-05, 0.0017718435953204884, 0.004007990269831742, 0.0002764640328967531, 0.00037064423671294606, 2.565809299432186e-05, 0.0013305653584099425, 0.001789080008551349, 0.0007490190934472646, 0.0037918632738721597, 0.0011394105301714228, 0.00012831824508495693, 0.0002135229066810174, 0.0010020135041021038, 0.00031369947356073475, 0.0016416024811867537, 0.0017805146446956003, 2.783443049261034e-06, 0.0021723458702876597, 0.002051520622255194, 0.00014300982059223466, 0.00047649095784713216, 0.0008831918682031198, 0.005346393349490051, 0.00034893231620594054, 0.00010278535828676011, 0.00023557050306350654, 0.004664796104085912, 0.0023366825987634777, 0.0002634366949263774, 0.0012136358700594316, 0.00015938385865626472, 0.0009227263513673641, 0.0013092858462393413, 0.0019082378306232491, 5.02043906250997e-05, 0.00188587005136377, 0.0023083171387123166, 0.00041880077799431, 0.0018055436961506783, 0.001397147132845844, 0.0009740022514748573, 0.001116939977095135, 0.0027229424471003193, 1.262264719884124e-05, 7.32867040968505e-05, 0.0005419418284951526, 0.0034918294259466192, 0.00010485739317459401, 0.00011399748082818807, 0.00926596957120128, 0.0010323626238475938, 0.003083237071712876, 0.0007471643098980736, 0.0014608438196696675, 0.004003201200830355, 3.612093680945486e-05, 5.744309607419617e-05, 0.0031767460263896477, 0.0002195336236536354, 0.0008912119506404506, 0.0005969529812591723, 0.0007571565699879628, 8.642178224511351e-05, 0.0006128031785724944, 2.2189815249957756e-05, 9.523653521548515e-05, 0.00010026811315861068, 0.0009593699208710176, 0.00034832235977122743]
    

    部分实验图像:

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[0.0004738494722786273, 0.0003862927811268219, 0.0007639737457090109, 0.0008741765763545843, 0.00022991964167190756, 3.4608931515486194e-06, 0.0026669641095872373, 6.0331398871587956e-05, 0.00010118865422477228, 0.000555433162175806, 8.537028630103117e-05, 0.00018535207692753662, 0.001442565593463861, 0.0001592667206935548, 0.0003140184023948398, 0.00042053217599415083, 0.00015252068137215887, 0.0003460453338103079, 5.217007674595978e-05, 2.3818114711352777e-05, 0.0003363139848564339, 0.00045500838068852526, 0.0003830558842369261, 0.00041827410507839233, 2.4954024851317322e-05, 5.637285509842888e-05, 0.0019743055958021233, 0.00025980236211493884, 0.0014710940194077504, 0.00024602892535276216, 0.0006505513023889807, 0.00011656443299155639, 0.0005279748817334872, 0.001706447698999263, 0.00013594110138601858, 0.00024290978138286025, 0.00021080976847014405, 8.561767031556114e-06, 0.0001033258406829597, 0.001010870492783533, 0.00013891045823999996, 0.0014222387289262559, 0.0009066376655583419, 0.0001225631806620372, 0.001026644772984721, 0.0003648349363964535, 0.00020938222262520823, 0.00039635439787142127, 0.00015369234282283339, 2.8085045732958566e-06, 0.0004083706206529866, 0.00046566059837057527, 0.0011616055245940852, 0.0012678791887769296, 4.7996755345936175e-05, 0.00022370545037781573, 0.0003708411887888486, 0.0001760246393719436, 0.0010881600893248862, 0.0010618522522203141, 0.0008871708945522998, 9.357545400513715e-05, 0.0006922151819194687, 2.4850846936109963e-05, 0.0007631489817600444, 0.00031329248528776295, 0.0003491368185851396, 0.00013749782175292812, 3.8544442146931314e-05, 0.0010419377449852362, 0.0014698716543755657, 0.00012793076744657212, 0.001083662167725985, 8.324156701727817e-05, 5.431120658483283e-05, 1.778182066495877e-05, 0.00027311680978634264, 0.0008754231097245481, 0.00039373180612396297, 0.0006759981028129436, 0.00020767232376774165, 0.002363755663972754, 0.0009296488229110611, 1.104534059616407e-05, 0.0002126359583600594, 0.0005486376767882559, 5.180421072229442e-05, 0.000754359253546877, 0.00011498190698775587, 8.78162291270112e-05, 3.964435468554012e-06, 0.0005306448519848258, 0.0001377733691142977, 0.00043485156722392325, 0.00027270020291107495, 0.002044562041719163, 0.00043617392499425934, 0.0020097278581440972, 0.000216975001703309, 0.0006643384918153849]
    

    部分实验图像:

    在这里插入图片描述

    总结

    正常解 f ( 1 , 1 ) = 0 f(1,1)=0 f(1,1)=0,实验结果也接近0。

    Beale’s function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[1.0975860471000753e-05, 7.387960000853938e-06, 3.653984481366931e-05, 4.3582092636131205e-05, 2.1096873695060306e-05, 2.3091968741881746e-07, 1.3129932190818775e-05, 2.450151907303335e-05, 3.2568784862110664e-05, 3.5950511475174315e-07, 8.269408055013642e-06, 1.9854573422100967e-05, 0.6581162029390142, 2.5861308184202118e-05, 0.6090969150918853, 8.741454436776016e-06, 3.737366454673039e-06, 1.017360971187096e-05, 2.983944131893425e-05, 5.220605343457331e-05, 8.640192876994004e-05, 0.6166060638369398, 2.2342550028247486e-07, 8.095984883337965e-06, 5.684475419108614e-05, 2.4145075917077194e-05, 2.6388346786077107e-05, 3.355624825872016e-06, 7.698753971338321e-05, 2.9110648756429035e-05, 8.10163095882954e-05, 6.183192738900012e-06, 4.159532117640533e-06, 7.70696921200756e-07, 8.899408049523186e-06, 3.0331916008651775e-05, 2.366627866683631e-05, 6.378612969580304e-07, 2.582756029662319e-05, 5.4609064771542474e-06, 2.8191536199520123e-05, 6.904240108415398e-06, 3.874440149074106e-05, 2.3292778797097795e-05, 3.8332640105788326e-05, 4.901458037274118e-06, 4.4887652878118625e-05, 5.039725233538014e-05, 3.0172558847491556e-05, 1.0416002027336254e-05, 1.8535073717570572e-05, 9.967839056272573e-06, 5.564655310370532e-06, 2.6564681815790264e-05, 7.188941672399624e-05, 1.1424180373975987e-05, 2.9785045046831473e-05, 8.73102648125569e-06, 6.638563429681474e-06, 1.6110332182477034e-05, 3.486995272071871e-05, 0.6198580505080163, 4.765169810595047e-05, 1.622163401831026e-05, 3.205168663640398e-05, 5.073139065450367e-05, 6.6786644934997104e-06, 2.141098722963897e-05, 3.9070369003183604e-05, 4.885626600211731e-07, 7.443107053711629e-06, 1.4082595329631256e-05, 5.6950813547802315e-06, 4.304877387077979e-05, 7.031706543817867e-06, 4.707133606322581e-05, 0.6227320831337304, 4.885814743593715e-07, 9.342043977973301e-06, 3.1241925846622958e-06, 1.947565602867148e-05, 1.7413750935810842e-05, 4.2686488558220946e-06, 1.6085402752852623e-05, 1.008152150718801e-05, 1.5904683245801918e-05, 1.0289812486218898e-05, 3.434330089753717e-05, 5.768363491005065e-05, 0.6457899830558631, 3.577904722066536e-05, 3.252713281991938e-05, 1.5609807900018524e-05, 3.144330475713875e-06, 1.1261489501650291e-05, 1.0989307869240168e-05, 6.20540282471728e-06, 6.617691605056639e-05, 0.00010476498707209645, 2.5339460875314213e-05]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[7.285356276116057e-06, 0.5733090530570171, 1.2203934195271276e-06, 2.438572878976885e-05, 1.0616709760742685e-05, 3.7141088312686662e-06, 1.067627284358795e-05, 1.5801814934190362e-07, 1.883560205036066e-06, 6.460179219700539e-06, 2.5808787260177473e-06, 2.4719045086989106e-05, 7.514781393606867e-06, 3.6324299589276116e-05, 8.507034349425799e-07, 1.1612018685990098e-06, 1.96069941357622e-05, 6.888482740612244e-06, 5.573272548211581e-07, 7.315229820207444e-07, 7.077131919536176e-06, 3.9137675278075275e-06, 7.448771319941202e-06, 2.073141852793155e-06, 5.07766491355053e-07, 2.5972653782283703e-05, 2.0372096243551727e-06, 3.0620741490401775e-05, 1.3284035184552781e-05, 0.586700030316749, 8.923199530961109e-06, 5.299968336023008e-06, 1.0254497332053922e-05, 1.2818903132085817e-06, 5.636153670854562e-07, 3.150199207160238e-05, 2.4003533447412545e-05, 0.5827425940005779, 4.430505549995297e-06, 3.6990781757717207e-06, 1.161947465325384e-05, 3.124198183658078e-06, 1.9248636184850073e-05, 2.1171779605416723e-05, 1.660545832327546e-06, 4.1223090530677174e-05, 5.160768946700267e-06, 1.7249233085266935e-05, 1.5308476781428204e-05, 2.0924625512882018e-06, 1.6674070323456466e-05, 1.7275117928999397e-05, 5.041317945282443e-07, 5.4844537337865094e-06, 0.5929970135913135, 9.7671505184026e-06, 2.090839684019443e-05, 0.5915221074041714, 7.440822055166916e-06, 1.0913115499983308e-05, 5.458090450237227e-07, 1.791085570585587e-05, 2.8218048907740894e-05, 5.791650832248885e-06, 4.949915995408414e-06, 6.716742081075784e-06, 2.056107529867027e-05, 1.0582409772660975e-05, 1.6959090688842325e-05, 9.410638326234884e-06, 2.0242744343813904e-05, 2.794474026794977e-07, 3.31845615828033e-05, 2.9352727002391065e-06, 5.2437217791117395e-06, 6.624777668578139e-07, 9.488909450319884e-06, 1.6643308195607225e-05, 1.4989144133147825e-05, 4.270988757752817e-06, 2.347255619528798e-05, 4.581553692476368e-06, 1.5814477877183727e-06, 1.2386167137857146e-05, 3.7278285813305393e-06, 2.3194863703443332e-05, 4.842862944717168e-06, 1.4115212153715243e-05, 1.3569676490388857e-06, 1.7218748685153712e-05, 6.870560201399819e-06, 1.9354837041443337e-06, 8.729704848721963e-07, 0.5737604786492598, 6.8516554483529545e-06, 1.420892507319392e-06, 8.926872397542995e-06, 3.0240702342556233e-06, 2.1590502162344152e-05, 5.548738005577509e-06]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    总结

    正常解 f ( 3 , 0.5 ) = 0 f(3,0.5)=0 f(3,0.5)=0,实验结果最优解和最优位置也接近0和(3,0.5)

    但也会出现极少数偏离的值:0.6581162029390142、0.5737604786492598等

    GoldsteinPrice function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[3.0027061487086617, 3.005174365711244, 3.0046996903438745, 3.0016789615290875, 3.0130218278507606, 3.002144956100579, 3.00535695579559, 84.00010898462149, 3.002584846917305, 3.0010339394467165, 3.0011941412838556, 3.0054289821973565, 3.0040943326146428, 3.0115508399845616, 3.0019671031204878, 3.0081769721478113, 3.010180084292071, 3.0007082733438333, 3.004100131386896, 3.000000477892534, 3.0003656361296223, 3.001420088904084, 3.0007423000511855, 84.00271852046903, 3.0146626234241847, 3.000166048171132, 3.002320719626206, 3.001557694881318, 3.0048677411152296, 3.0012415697140464, 3.005657453086949, 3.0026153590711195, 3.000428366712015, 3.001250881091141, 3.00078219214001, 3.00246156572731, 3.0045229692831876, 3.0012040702061245, 3.000621906744211, 3.0008075805410703, 3.0009225309352523, 3.00377868482596, 3.0028623257067273, 3.0030415150647634, 3.00310029621088, 3.0066473226890422, 3.002448418096668, 3.0009438276284226, 3.000961467166474, 3.0002160762938272, 3.0005446347690574, 3.000856484407298, 3.003766715699539, 3.0004531907301257, 3.0040038981914634, 3.0017629913265624, 3.014021794659537, 3.002606627341283, 3.0030990249192064, 3.0020132676817344, 3.0000975653972954, 3.0012195303256473, 3.0035755321521376, 3.0100907095993237, 3.0000641199960456, 3.003149532329951, 3.0067311145688342, 3.0032952564988684, 3.006275397013299, 3.0056567067995252, 3.0039468596242376, 3.0018538939022346, 3.0031328362366256, 3.0102433663782295, 3.000892831245677, 3.0066382533723135, 3.0025280234791354, 3.0042264879991425, 3.0026610443541975, 3.00232855237995, 3.000097410872381, 84.00282230157137, 3.0058692036621353, 3.0007169896389905, 3.0092248229989194, 3.0032546422525175, 3.0016039225874507, 3.000334135322752, 3.0063309199689, 3.0020434376368534, 3.0018209057628584, 3.0002251636511463, 3.001454009524457, 3.0009795179513477, 3.000740594181979, 3.004098316640839, 3.000680038365779, 3.00139441775399, 3.000439795815934, 3.0021169274940243]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[3.0028383359002992, 3.005276699548814, 3.00106086770872, 3.0016131695259674, 3.0019524478824215, 3.0002646105504187, 84.00531924427669, 3.000528592110529, 3.0006530203138113, 3.000208554837832, 84.01110167183276, 3.0001633302525077, 3.0006490218106836, 3.0043781740039597, 3.0006613797255155, 3.0009124084763714, 3.0075052159810056, 3.0012816930316824, 3.001108164951375, 3.00155935279628, 3.0029900273328116, 3.000194402307134, 3.005124401205367, 3.005386068367189, 3.0016836624576575, 3.0009466572428476, 3.005525082320561, 3.000677907881343, 3.0001411208913984, 3.0014534707062914, 3.0012196477749695, 3.002174774286986, 3.000274031609131, 3.00030601777304, 84.01439408201894, 3.0001254732988203, 3.000848962275462, 3.003810463528297, 3.000846931953176, 3.000666439665735, 3.0011160738212475, 3.0003308669087407, 3.0011053724212187, 3.0000557689887657, 3.005184822839083, 3.002305052543673, 3.001557151558097, 3.000760012178613, 3.0001914263734832, 3.0023080383603378, 3.000577525866686, 3.0000448231753167, 3.000843671022888, 3.0027794175900357, 3.001503316122785, 3.0004502496764607, 3.0002255711033943, 3.0012430674602215, 3.0008989249716054, 3.005508890463924, 3.001047750938716, 3.0007825732292464, 3.000359173010481, 3.0042922721936343, 3.000029017563281, 3.0014748266591793, 3.00218814589512, 3.000940364944334, 3.0000517416162453, 3.0036500456553843, 3.0001299518980047, 3.0009048493947104, 3.000059191243076, 3.001097587916277, 3.0015773408807274, 84.01106110275684, 3.0005370230963813, 3.000311904929091, 3.0029329767919886, 3.001094227887004, 3.000929400055332, 3.005828329202493, 3.000274137732943, 3.0000399350316327, 3.001325886925323, 3.002510436638437, 3.000078405865807, 3.0008665963553356, 3.0006397944143837, 3.0003357573883944, 3.001191367810098, 3.000538434091682, 3.0028741560839496, 3.0002264712909104, 3.0023837636347466, 3.0039176189557253, 3.0006041971421507, 3.004629678543273, 3.002305271936778, 3.001834445259877]
    

    部分实验图像:
    在这里插入图片描述

    在这里插入图片描述

    总结

    正常解 f ( 0 , − 1 ) = 3 f(0,-1)=3 f(0,1)=3,实验结果表明最优解和最优位置也接近3和(0,-1)

    Booth’s function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[3.188898771918111e-05, 1.9089483279724575e-06, 7.11721507830587e-05, 1.2295649432539894e-05, 2.9047157429858078e-05, 1.7985212894162475e-05, 6.6775853176376915e-06, 1.645786545905858e-06, 1.6000737939674762e-05, 3.431977620347251e-05, 7.171473556531434e-08, 1.1173246820080596e-06, 5.561646378646516e-05, 5.275693783060298e-06, 4.959609773397918e-05, 1.9304602083436896e-06, 2.2726542514713677e-05, 5.0393934745047924e-08, 1.8619333332410467e-05, 2.154897329385117e-05, 1.5002223557492132e-05, 6.850869209858587e-05, 3.399297430013923e-05, 1.5933591804976313e-05, 7.5218837604352685e-06, 2.823957763227304e-05, 2.347409518749385e-05, 8.916576840581224e-05, 6.877180823090857e-06, 7.18546817829052e-05, 2.0111160320240052e-05, 6.3978393582074145e-06, 1.816020653324953e-05, 3.0009381979163032e-05, 2.9023593644146942e-05, 5.6790959725383756e-05, 3.919343876921693e-06, 9.361190531840116e-06, 2.2699397513252096e-05, 1.1284059865830248e-06, 8.947528055534274e-05, 6.015146502179612e-05, 2.764105200663955e-06, 1.7537119591434807e-06, 1.9376303608969182e-05, 0.00012076106650142784, 2.8025878207451076e-05, 5.668253050468734e-05, 5.480692221492805e-05, 0.00012000308152316296, 1.3732066221659968e-05, 6.04283401125636e-05, 6.23240160646106e-05, 2.266064718819474e-05, 3.624880909788495e-05, 1.2536228893370945e-05, 4.478791039197743e-07, 5.544370586841982e-05, 5.282932600366241e-05, 4.6624094521924155e-05, 7.663288104920777e-06, 6.728739282613257e-05, 1.0349149558558157e-05, 8.912101767386949e-06, 2.385104158379257e-07, 1.5115556501988294e-05, 3.645217188478124e-06, 4.5537909143840656e-05, 4.014848172267112e-05, 5.4289866054765874e-05, 6.812108603480625e-05, 3.68584090779174e-05, 6.614601097006785e-06, 1.7519732277120705e-05, 1.554311263776365e-05, 9.847526146989806e-05, 4.932874779055854e-05, 4.110987442653873e-05, 1.618986507440311e-05, 3.247167855649911e-05, 6.1253076619900275e-06, 6.76684042608222e-05, 2.8917751184715445e-05, 7.400983976018258e-05, 4.1112574587419984e-05, 2.4248332046466788e-05, 0.00013197994979268756, 2.4036721869913676e-05, 3.0283043520598886e-06, 4.32485289253767e-05, 8.849980978536562e-05, 2.2159065639191647e-07, 3.7292383060353716e-05, 1.7875636148971412e-05, 2.491034913587211e-05, 0.00014876130241708562, 1.626836514490978e-05, 3.7911100753626133e-06, 5.7889901377914116e-05, 4.7937895956503784e-05]
    

    部分实验图像:
    在这里插入图片描述
    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[1.7769468173895768e-05, 2.9976165286783333e-05, 4.6222445462169585e-05, 1.743202196663719e-05, 3.840111281004855e-05, 5.873038776344691e-06, 2.1949743181612333e-05, 8.25394150036653e-07, 9.98007442476754e-06, 2.1887973978729275e-05, 1.2364300456431176e-05, 2.587961334924705e-06, 9.625890734238128e-06, 6.718397967678596e-06, 6.3336861393157e-06, 8.284525017993678e-07, 1.870068147583367e-05, 7.857902036128396e-05, 1.9790545777926117e-05, 1.6071535720269346e-05, 2.479393194123994e-06, 3.952790041245041e-06, 6.39048324291096e-06, 1.356905384954851e-05, 1.0167568843991845e-05, 7.928766491829096e-08, 2.1245937784820254e-07, 3.3539038285878976e-05, 3.2396428790004994e-05, 2.0112691925079183e-05, 4.39460323952597e-06, 2.170307161825292e-05, 3.648223175622675e-06, 1.7044565873063503e-05, 1.194792679637261e-05, 4.749663488239971e-06, 1.4607060226632739e-06, 1.0899782370381859e-05, 3.4855602178283467e-06, 5.245983743850389e-06, 7.094516432073004e-06, 3.283976506129177e-05, 3.421447189786646e-06, 2.6519056157279437e-05, 1.710212212893876e-06, 3.3498703828299604e-06, 3.1887047751556547e-06, 3.7707915191340987e-06, 3.6060473388523653e-06, 8.717288169060211e-07, 5.497317245145391e-05, 1.3370112582828772e-05, 1.5874427553875006e-05, 3.006181414116811e-05, 1.4447620676508645e-05, 1.7249006801415524e-05, 7.193937727028125e-06, 1.775279648483417e-06, 5.703408957227744e-06, 1.913596086685452e-06, 3.5018350708790604e-05, 9.330354409526178e-06, 5.068437114881583e-07, 5.685966274805006e-05, 3.216878493342793e-05, 3.9763276966675726e-07, 4.8453675913951116e-05, 5.742814527086718e-06, 5.226845632828179e-06, 1.936068716617949e-06, 1.0903232138219272e-05, 8.807355637262934e-06, 3.366878625524112e-05, 4.243780614074445e-05, 8.357239889312947e-05, 2.418458212509328e-06, 7.824260882285762e-05, 8.555256559902513e-07, 2.70181319088957e-05, 6.801346691330256e-06, 1.8607310838902537e-05, 2.954291941471309e-06, 6.234771044041259e-06, 6.802091416383194e-06, 7.294831135258052e-06, 3.338195747569861e-05, 1.3552463273947067e-05, 1.6300981396060953e-06, 3.2861935244132467e-05, 1.877408564845399e-05, 3.923800605254286e-06, 2.170363033262326e-05, 4.4478783079820616e-05, 4.134112533272677e-06, 2.146267937390144e-05, 8.475317412794048e-06, 7.399640844123754e-06, 1.7515414180230287e-06, 2.822714654342491e-06, 3.7103779902458285e-06]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    总结

    正常解 f ( 1 , 3 ) = 0 f(1,3)=0 f(1,3)=0,实验结果显示

    Matyas function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[5.088458692241969e-07, 3.400432147589216e-06, 3.2831827314461275e-06, 1.2045323527114587e-07, 8.33420859691e-06, 2.4009196469733684e-06, 9.405577651220659e-07, 3.5085188167891394e-07, 2.097814509985133e-08, 7.223556160995247e-07, 5.2201917400631655e-06, 2.004599183768814e-06, 5.995256947938611e-07, 2.0284107778088245e-07, 3.994916861604711e-07, 1.6212317085454791e-06, 1.6394469059350246e-06, 1.3115849815840846e-06, 2.4466809344988197e-06, 3.374878474443378e-08, 1.3586578189361411e-06, 2.2470036849343503e-06, 4.2585494342801895e-06, 9.479234162937022e-07, 1.5151392201822714e-07, 2.2187120719195e-06, 9.544948171918213e-08, 3.8003243744467154e-07, 8.017040857848325e-07, 2.714947647629081e-07, 1.890630051291816e-07, 8.111000840009009e-07, 5.946272531683756e-07, 6.100862802738509e-08, 6.344735271304751e-07, 2.958705926741793e-06, 1.0569167519000588e-07, 7.559882413361413e-07, 4.3616536354976693e-07, 2.1761803359898994e-06, 3.8239855423379844e-07, 8.154734226905237e-07, 3.4497591730612265e-06, 3.8606470393792013e-07, 3.389402646023791e-07, 8.347823377812386e-07, 8.451710515443973e-08, 5.19405188402955e-07, 8.518753795308055e-07, 1.241583446505166e-07, 1.5603739776535006e-06, 2.5535030768481704e-06, 2.783111658220273e-06, 2.231901969278643e-07, 3.9883069046567843e-07, 1.9057991322817988e-07, 2.1573703979785856e-07, 1.5746193460354617e-06, 3.7092964929040503e-07, 2.0263807271895014e-07, 1.3674012275839574e-06, 1.739131075003827e-06, 2.2859948703793274e-08, 1.129835959703733e-06, 4.1372749273787215e-07, 7.062792479017986e-07, 2.0117518777399525e-06, 9.63856252076672e-07, 1.1413852522868848e-06, 5.186841384990303e-07, 2.1704669372276852e-07, 5.495029897328262e-07, 1.7344884171379163e-07, 9.536172130398316e-08, 4.859168745919702e-07, 1.0014659028285819e-06, 1.8701507259578928e-06, 9.921680680050528e-07, 3.842505058759282e-06, 1.13231816717309e-06, 1.000462517176909e-06, 1.0112263761901378e-06, 2.4946433343872343e-06, 1.4586335160137388e-06, 4.521255932770241e-07, 9.705635741752912e-08, 5.193014522893541e-07, 8.478492216075925e-07, 2.2450986213414473e-07, 7.075277268976542e-08, 1.1453542584275375e-06, 1.3329554059473662e-06, 2.6968297558145975e-07, 4.536477763460899e-08, 1.447193905616417e-06, 2.5291687561504466e-07, 9.573319834701995e-08, 2.95882615086619e-07, 1.3121506387736195e-06, 2.339815210215645e-08]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[1.7653476542937308e-06, 9.894917367643116e-07, 5.932926059048843e-08, 5.558976186348288e-07, 5.775501256392888e-08, 7.158037257519735e-08, 3.326023024291195e-07, 3.5551912041733116e-07, 3.8142579609881846e-07, 6.950803888488818e-07, 2.8620927888119516e-07, 2.2917813976730964e-07, 1.0130308823840877e-07, 2.3175423603512165e-07, 9.108592500326523e-07, 3.393186022142579e-07, 1.785445387975053e-07, 2.2456674835701688e-07, 1.0807156807414118e-07, 3.57919416567463e-07, 1.4590722418338706e-06, 7.259743502185722e-08, 1.4621532043474752e-06, 1.9734888663028514e-06, 1.7606621317270958e-07, 3.447842761389851e-08, 1.470853674532899e-07, 5.571650917156661e-07, 2.0728632881443513e-06, 8.958307771728219e-07, 1.4629573507178379e-07, 5.45368780286418e-07, 2.2038323463728048e-07, 5.664606799555189e-08, 9.371634801584225e-07, 5.49639169458581e-07, 2.087639314557164e-06, 3.178171370196219e-06, 1.3767198429095474e-07, 5.332909404438404e-07, 1.81607790182317e-06, 1.8951422546430342e-08, 2.0331971472196553e-07, 6.269148202703952e-07, 3.2708630375557603e-07, 5.112677894053118e-08, 1.9784732378603373e-07, 9.874483811158099e-07, 1.2309014487703355e-06, 1.8265310278230575e-07, 2.1179135782697724e-07, 7.236675899837214e-07, 1.9784386448359098e-07, 1.2693899012680433e-06, 4.884938236702087e-07, 8.500105347777244e-07, 5.028900593708644e-07, 3.3653043181438876e-07, 3.494783552117245e-07, 1.1799914071340293e-08, 3.292731360093955e-08, 3.5222519694977816e-07, 8.591533526356952e-07, 5.971578177915427e-07, 2.6059079398542548e-06, 5.29966052528716e-07, 2.0125197735579307e-07, 1.1178128201987299e-08, 1.2032777551154627e-07, 4.0045262127582696e-07, 4.3312789550143525e-07, 4.48176088036006e-08, 1.9140855671887307e-07, 2.463636937864757e-06, 7.66627294870869e-07, 6.801521948463678e-07, 2.1946378057789229e-07, 3.06563038465662e-07, 4.784866469272086e-07, 7.650781826377882e-07, 3.5920066020600873e-07, 1.2475972618822098e-06, 3.677970261415513e-08, 1.1911195198669472e-06, 7.56377880103628e-07, 4.874118077299787e-07, 3.461430190633664e-07, 8.42086868139358e-08, 4.548537098376006e-07, 4.1476786128530274e-07, 5.713249997747323e-08, 4.783488405302344e-07, 6.618020255833277e-08, 3.8670227577564155e-07, 5.1765812205544345e-08, 3.2174286738252944e-07, 3.38848607530439e-07, 7.736583231454598e-08, 5.284696134084993e-07, 1.1253666003396584e-08]
    

    部分实验图像:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    总结

    正常解为 f ( 0 , 0 ) = 0 f(0,0)=0 f(0,0)=0,实验结果显示最优解和最优位置也约为0

    Levi function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[2.932287853476996e-05, 3.7136589900230515e-05, 0.0003149223318812421, 0.00010547765019271718, 1.6097455648792824e-05, 0.00024365636197950114, 6.402842607394492e-05, 9.597730297538699e-05, 2.9780263896300228e-05, 0.00011943615647531057, 9.527861381660669e-05, 3.095786753673754e-05, 5.327392580929164e-05, 7.402505323867769e-05, 0.00025394201205774006, 5.002296297987266e-05, 0.00016545071983362075, 0.00013400310894438089, 3.226912077146075e-05, 0.0001381911260334574, 0.00026319511566582845, 0.00010062452434349118, 3.7731386608443354e-05, 0.0003453868407241506, 3.9490207161747625e-05, 4.8445587236518284e-05, 0.0002654750819526906, 3.235404819135936e-05, 8.965372880609266e-06, 7.847065762930239e-05, 6.478857333915484e-05, 2.0058991669268607e-05, 4.3434081963010006e-05, 5.6902277293594314e-05, 6.819153723728977e-05, 0.00015080961917025734, 2.0011365702268136e-05, 0.0001388546450497552, 0.000113815832190197, 3.515056173427999e-05, 0.0001859648186126658, 0.00010118989984435656, 2.5439887808224962e-05, 2.601346978072886e-05, 0.00011924154952230898, 3.5726519165113355e-05, 0.00041120268764804717, 0.00011174875420042934, 6.107606855677337e-06, 3.7254671717497666e-07, 7.779669266265798e-05, 2.233393051811168e-05, 1.9435808509501956e-05, 0.00012131603165184301, 1.214414035425827e-05, 7.933227649336254e-05, 1.445470290699553e-05, 1.5056957243048234e-05, 0.00013559541520856877, 4.682966670645117e-05, 7.220906181653213e-05, 0.00010254152365727316, 3.404361543743473e-05, 0.00015566251468881591, 0.00025242970054458396, 0.00028650022739920057, 7.934318707627427e-05, 7.511820608057805e-06, 1.3154283033940973e-06, 5.6555255963450904e-05, 8.221839970644632e-06, 3.249083877696631e-05, 1.0157858993180133e-06, 3.0985471368660475e-06, 0.00010363012434375367, 0.00025082683993254344, 2.6636162203409003e-05, 6.840077546835934e-06, 0.00046719414562036514, 2.9831978747125574e-06, 7.4435685200741225e-06, 1.0644396600879638e-05, 1.352366216716384e-05, 7.788917944883296e-05, 0.00012516439167181205, 0.000124232157952992, 3.186157159653822e-05, 0.00015346051301600306, 2.6599595146588635e-05, 2.3238996557107462e-05, 6.565410305290461e-05, 0.00022813882282809273, 0.0001398097894417107, 0.0006575433853277053, 4.709531602925287e-05, 0.00010466718215493443, 0.00015547358358665352, 0.0001008603936673639, 0.000390689054103208, 8.057575847509654e-05]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[9.777267022614178e-05, 5.28780808017963e-05, 1.2251209912783826e-05, 2.7203678678719306e-05, 2.8560065539908746e-06, 2.2727918925318177e-05, 4.0403906915568413e-05, 2.1027819681200748e-06, 2.6966817155486783e-05, 1.7486604705772905e-06, 1.4846096129588842e-06, 9.664263619200755e-05, 3.243979856292457e-05, 7.692489386184806e-05, 5.896260199885417e-06, 4.925149675326006e-05, 3.7818238002663153e-05, 4.391296765132956e-05, 2.4389920917145056e-05, 2.1105724122022556e-05, 6.188257237900509e-05, 1.3043682053213679e-05, 1.3088598874721435e-06, 1.6390601458429827e-06, 4.4240863561358554e-05, 1.1064888509181824e-05, 6.329302942064395e-06, 1.996719962104701e-05, 1.360644821398584e-05, 9.232278820142522e-06, 1.0521802638632743e-06, 0.00027414409586174105, 9.143502660732067e-06, 5.214123073019943e-05, 6.457679437776085e-06, 6.54871992992561e-05, 9.43945096323893e-05, 6.8877565777795e-05, 0.00010191096001435616, 1.0650063488248858e-05, 4.609074374397286e-05, 7.040482071131069e-06, 0.00012197346801969607, 4.954699950982574e-05, 1.0188067592325557e-05, 9.867576863825156e-05, 1.127761229741461e-05, 2.9387243168690592e-05, 7.154747748252563e-06, 9.649589228747377e-05, 3.530850386526018e-05, 6.127328752707178e-05, 0.00013062020710038913, 4.901822830157125e-05, 0.0001253203114061882, 2.0184750389125954e-05, 3.241419280962988e-05, 0.0001278835416745051, 5.135651939794345e-07, 3.7767005764367193e-05, 1.5973979869977422e-05, 5.9803157604080174e-05, 9.968904344411812e-06, 0.00014707925975598256, 7.740486975420113e-05, 1.065687460230824e-05, 1.5590761514741915e-05, 3.3928055452805174e-05, 7.941400754313889e-05, 2.0429450905498158e-05, 1.2135395026539652e-05, 2.1613690448187635e-05, 5.020298370542492e-06, 0.0001035383669994737, 2.2095286049867706e-05, 5.310688921477251e-05, 4.999644024504601e-05, 0.0001216387808447254, 2.2268184432851513e-05, 6.145478502011801e-05, 8.598933834737985e-06, 2.8555039615090068e-05, 2.328437940876023e-05, 4.748885827064812e-05, 1.658039485931771e-05, 2.9893451836505357e-06, 4.3257328515014314e-05, 0.000248850087979813, 4.311448352948285e-06, 5.478276993651638e-05, 2.793662451269039e-05, 3.57879579990073e-05, 5.2962443132443316e-05, 2.1856777551270456e-05, 8.719909544590825e-05, 4.0947437031780834e-05, 4.285243043270432e-06, 1.9192731436556957e-05, 3.8139937145334935e-05, 0.00011940608306939098]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    总结

    正常解为 f ( 1 , 1 ) = 0 f(1,1)=0 f(1,1)=0,实验结果也接近于0

    500代比1000代效果要差点。

    500代会出现些偏差稍大的,0.000390689054103208、0.00011924154952230898、0.0003149223318812421、0.00010547765019271718…

    Three-hump camel function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[3.880627298449207e-06, 1.794016375018336e-05, 1.4039641569016266e-06, 2.7240260559774552e-05, 1.2562082443529208e-05, 1.59089795875993e-06, 2.8393192587670403e-06, 1.4030482452617256e-05, 7.97745956655524e-06, 1.3495588799173037e-05, 1.2128252797189975e-05, 4.314201862512457e-06, 1.596859120615157e-06, 3.401241369219472e-07, 2.825560081193969e-06, 7.349242415667825e-06, 4.632420796396615e-07, 2.822624227393206e-05, 4.409316256807315e-05, 3.0012587915789264e-05, 6.799858213176296e-06, 4.411357240226619e-06, 3.8111071360156624e-06, 6.359765578279906e-06, 4.668374669176099e-05, 1.0064572428397157e-05, 1.5496810650666584e-05, 1.2404425423384199e-05, 3.510944191264467e-05, 9.52557674347457e-06, 3.5199427522613415e-07, 9.67105719824073e-06, 6.339857709767897e-06, 1.729240029791585e-06, 4.675076263701444e-06, 6.507015725539332e-06, 2.2297116520826996e-06, 1.8525063354029555e-05, 1.077748136802896e-05, 5.3660175340596946e-05, 1.1414525984514335e-05, 3.7585575776146868e-06, 2.5061495327802476e-05, 5.981333953338193e-05, 1.2147676702463356e-05, 3.2110407056546396e-06, 1.1928513818364431e-05, 0.2987185430412056, 9.833382354812482e-07, 4.263999275954448e-06, 4.162498489759624e-05, 4.818376932678077e-06, 1.884457577028254e-06, 6.025652672376364e-05, 2.667673746429962e-05, 2.6332506654565004e-05, 6.075047276862265e-06, 7.8485447335668e-06, 4.342494368084651e-05, 1.7138312236505078e-05, 1.5026508033396216e-06, 1.517250436685015e-05, 1.08305859925171e-06, 2.7354717824182327e-05, 6.488913876855543e-06, 5.695498541742554e-05, 8.81612051097046e-06, 9.99491448258636e-06, 8.089952958189646e-06, 7.64838334000173e-06, 8.069664719908128e-06, 2.2612904929794984e-05, 8.89964490027266e-06, 5.973666337670713e-06, 1.5768088395504315e-06, 1.3633424447832895e-05, 4.3000763133016525e-05, 2.9195411784629762e-05, 3.6885553862486316e-06, 2.726018430387776e-06, 6.0862359285449e-05, 8.302797508019975e-06, 1.6694725385741162e-05, 1.644698427755722e-05, 1.5922022253271973e-05, 1.066298031926411e-05, 3.100357949145182e-05, 4.268304867897264e-06, 1.3089413486046266e-05, 7.323346740615305e-06, 3.53749955494658e-05, 1.740167659366897e-05, 1.1990366090196368e-05, 4.6873289906375995e-07, 2.598414279914027e-06, 1.2070374650340483e-05, 1.0047830200953148e-06, 0.00013457351585202491, 2.921479522580282e-05, 1.8322712533190418e-06]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[2.4134076053411578e-06, 8.281687514047212e-08, 2.7368581348334994e-07, 1.0631864129276552e-05, 8.282869134111893e-07, 5.185449906108059e-06, 2.43931343926475e-06, 3.1766599262495716e-06, 8.10782957959306e-06, 6.403548466459015e-06, 1.692243629253882e-06, 5.249245961265049e-06, 3.0722529582614e-07, 9.72574947439957e-07, 2.730404867897038e-06, 7.3281927413832394e-06, 6.74641389517095e-06, 6.588355852244749e-06, 8.378699493660328e-06, 5.064302082321713e-06, 8.419483221498833e-06, 1.2021324140724327e-06, 5.01946989618145e-06, 5.510483694275872e-06, 8.499706137030515e-07, 5.53293309813877e-07, 1.970249128167431e-06, 1.210331956348972e-06, 2.081630142080487e-05, 4.427306940991648e-06, 1.9416860702474887e-06, 0.2986385237915954, 1.1219036452403574e-05, 1.2939648655378271e-06, 5.664478117078584e-06, 1.227943925797988e-05, 1.140060821679851e-06, 9.513043722419662e-06, 4.753314219638483e-06, 1.919023247057054e-06, 7.682453032364556e-06, 6.166494535978734e-07, 1.5604374509231886e-05, 3.585512617095958e-05, 3.916293187397055e-06, 2.7097481258429495e-06, 2.631779313474894e-06, 1.2866298051650284e-05, 2.3057986133177707e-06, 5.162018081638978e-07, 1.9480644876440483e-06, 1.0031025149579192e-05, 1.3067134047336737e-06, 3.6929192020164674e-06, 1.149106793543145e-06, 1.586150981613645e-06, 4.460548808972359e-06, 8.985906691220583e-07, 5.543059366698859e-06, 1.0248601520165526e-05, 2.129146310946914e-07, 4.857218356117162e-07, 3.1029872615803497e-06, 4.2320141558431706e-06, 7.562398453935448e-06, 3.377843981587249e-06, 1.8382168836706315e-05, 5.682613017679136e-05, 2.531727854353915e-07, 3.9970494161547696e-06, 1.857583467091328e-06, 3.753138229123777e-07, 1.5472822172494245e-06, 7.673483854814791e-07, 7.267133014545478e-07, 1.0106352169786479e-06, 9.583925882448564e-06, 2.304604936281371e-06, 1.2035557033724091e-05, 1.4342369223071643e-06, 6.714455853069185e-07, 3.691461804555244e-06, 1.7326457887500015e-06, 3.2724230129891467e-06, 7.015770355289911e-07, 3.591123869168607e-07, 6.552139485916194e-06, 1.259061819303265e-05, 1.6424689576795822e-05, 8.518991747304147e-06, 1.1253854564780781e-05, 2.903387037624155e-06, 2.1856668528300734e-06, 3.282210494845397e-06, 5.502087123519716e-06, 3.9963318072568847e-07, 8.759489465534698e-06, 3.940552977816251e-06, 2.4624859061266967e-05, 1.518961397346798e-06]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    总结

    正常解为 f ( 0 , 0 ) = 0 f(0,0)=0 f(0,0)=0,实验结果解也无限接近0

    但也有很少部分的偏差,0.2987185430412056, 0.00013457351585202491,0.2986385237915954。

    Easom function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[-0.999993853859007, -0.9999853179731727, -0.999970526707484, -0.9999833907502506, -0.9999899640426287, -0.9999749374930914, -0.9999968028686498, -0.9999920188807893, -0.9999998768547127, -0.9999973050804503, -0.9999890860628377, -0.9999675290665957, -0.9999881891949592, -0.9999973573364508, -0.9999617407619932, -0.9999841996495714, -0.9999869148914492, -0.9999965533203267, -0.9999979517169364, -0.9999807761251867, -0.9999840004058683, -0.9999989253871704, -0.9999835457134147, -0.9999915787910517, -0.9999960232338769, -0.9999743524800685, -0.9999992129898493, -0.9999889471759963, -0.999990854434558, -0.9999852404006568, -0.9999770958045321, -0.9999935856560263, -0.9999975120059394, -0.9999963849711491, -0.9999901375540867, -0.9999844681709474, -0.9999897433642218, -0.9999991362953526, -0.9999954500029143, -0.9999717517688315, -0.999982305834936, -0.9999995761901384, -0.9999960644353603, -0.9999895736882707, -0.9999469581478756, -0.9999984206235104, -0.9999927843221822, -0.9999724799482607, -0.9999899584890547, -0.9999999412785647, -0.9999848620898982, -0.9999370506505072, -0.9999918801360993, -0.9999626739985762, -0.9999878639481637, -0.9999746784112762, -0.9999895747866362, -0.999979353121283, -0.9999993959956482, -0.9999413796149903, -0.9999693817531181, -0.9999999094175862, -0.9999877206347905, -0.999992046500884, -0.9999703958831931, -0.9999831747925023, -0.999998375387514, -0.9999800051820478, -0.9999670057031279, -0.999991793086032, -0.9999893386693712, -0.9999932574048767, -0.9999827267850815, -0.9999968359336726, -0.9999971584744126, -0.9999967213134553, -0.9999924336857372, -0.9999736321229095, -0.9999951191986465, -0.9999883907205094, -0.9998630681689655, -0.9999930978955571, -0.9999870366249668, -0.999983343916409, -0.999999058649327, -0.9999931126359919, -0.9999914779857364, -0.9999847094305525, -0.999993401751805, -0.9999916192008004, -0.9999840670820204, -0.9999992108374921, -0.9999961781544544, -0.9999981742956063, -0.9999919097108272, -0.9999778176034976, -0.9999831616061806, -0.9999990996208701, -0.999986326463422, -0.9999931308243394]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[-0.9999986165246563, -0.9999994966254112, -0.999996240851313, -0.9999974295896553, -0.9999994339946009, -0.9999997833301226, -0.9999844260665387, -0.9999926149194184, -0.9999962543346994, -0.9999984440308373, -0.9999999044460438, -0.9999897546068942, -0.999999780696381, -0.9999829342345298, -0.9999985715629959, -0.9999710916806339, -0.9999954269344377, -0.9999948532099372, -0.9999775199304418, -0.9999912889515519, -0.9999882477652455, -0.9999919970421296, -0.9999989052533004, -0.9999920965006194, -0.9999903004103394, -0.9999973059937373, -0.9999930867441731, -0.999997566063472, -0.9999862705579103, -0.9999947592922449, -0.9999935589590234, -0.9999985455214285, -0.9999942546594959, -0.9999942387000865, -0.9999969082136612, -0.9999992203846653, -0.9999856257899055, -0.9999956842415677, -0.9999937022940902, -0.9999993904110568, -0.9999992731756875, -0.9999879032837812, -0.9999893008742664, -0.9999997591906399, -0.9999978218615188, -0.9999999147069056, -0.9999985828479958, -0.9999987590313675, -0.999999988647978, -0.9999717688686846, -0.9999955735969694, -0.999985484029259, -0.9999750490145125, -0.9999963579521385, -0.9999967716889454, -0.9999848634062164, -0.9999981380492565, -0.9999913068200802, -0.9999940343237238, -0.9999969660064673, -0.9999907053769925, -0.9999972791812272, -0.9999987105412697, -0.999992350370751, -0.9999809369565268, -0.9999836629674486, -0.9999969273397912, -0.9999758185923056, -0.999999879429748, -0.9999813485597295, -0.999997178800081, -0.9999871190762024, -0.9999986969077651, -0.9999951691515824, -0.9999808993998867, -0.999992801880592, -0.9999967375537967, -0.9999910240411917, -0.9999938234559878, -0.9999895623236558, -0.9999983013084613, -0.9999921405967734, -0.9999910710701932, -0.9999795329075754, -0.9999958299499344, -0.9999900091414853, -0.9999951364844194, -0.9999968693209437, -0.9999902688869335, -0.9999973570507941, -0.9999997901888683, -0.999997252434779, -0.9999957779035507, -0.9999958256518648, -0.9999950586685179, -0.9999848394536658, -0.9999977684994746, -0.9999997436565268, -0.9999919171352891, -0.9999848454862249]
    

    部分实验图像:

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    总结

    正常解为 f ( π , π ) = − 1 f(\pi,\pi)=-1 f(π,π)=1,实验跑出来的结果也约等于为-1。

    Cross-in-tray function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[-2.06261164795988, -2.062610179912921, -2.06261141496543, -2.0626112326667596, -2.06261031597436, -2.0626117770205634, -2.0626088991871203, -2.062610007308285, -2.0626116808330788, -2.0626105487227213, -2.062611739952965, -2.0626088851732742, -2.0626103254249464, -2.062611769810606, -2.062610783206666, -2.0626105379157007, -2.0626105241717654, -2.062611542647841, -2.062608583539884, -2.0626106506559987, -2.0626092313189885, -2.062611597366824, -2.0626097786048754, -2.0626093238894043, -2.062609607688819, -2.0626103113986085, -2.062611478381903, -2.062611501850142, -2.0626114249919962, -2.0626117279851655, -2.0626074450474334, -2.0626095305628422, -2.0626088721605518, -2.0626104623373513, -2.0626116428346157, -2.0626114946144907, -2.0626114999851133, -2.062611720023353, -2.0626102067386882, -2.0626117037548326, -2.0626115885169867, -2.0626117953309127, -2.062610167678121, -2.0626114950161405, -2.062611683723913, -2.062611082338463, -2.0626098610305807, -2.0626111598599466, -2.062611661154612, -2.0626090974247866, -2.062607115138389, -2.0626102693017128, -2.0626110030561895, -2.062610013258724, -2.0626118703493317, -2.062611588696091, -2.0626115801535696, -2.0626105165687196, -2.0626110102867314, -2.0626116527668805, -2.062610938455697, -2.0626114171669405, -2.0626104374462715, -2.0626112349495505, -2.0626115456912504, -2.062609376047466, -2.06261133010365, -2.0626109262674523, -2.0626114103802085, -2.0626102817362137, -2.0626111355721104, -2.062610054733608, -2.06261066993803, -2.062609984254409, -2.062610724348237, -2.0626114109081453, -2.0626094381913176, -2.062610714295451, -2.062611800286351, -2.0626103668944493, -2.0626118311960413, -2.062610615042027, -2.062611549274841, -2.0626118036859595, -2.0626113011407874, -2.0626091559892985, -2.06261090184528, -2.0626110476318003, -2.0626104959371316, -2.06261168378244, -2.062611633053284, -2.0626105169537134, -2.0626116109963206, -2.062611810434865, -2.062609300794597, -2.0626109646367596, -2.062611840005997, -2.0626088330425993, -2.062609756091334, -2.0626074088854334]
    

    部分实验图像:
    在这里插入图片描述

    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[-2.062611245527471, -2.0626118041258206, -2.0626117292940696, -2.062611474023801, -2.06261021297757, -2.0626110475333745, -2.062610656400767, -2.0626117956445182, -2.062611484121771, -2.062611861340505, -2.062610125118852, -2.0626113663070855, -2.0626117926498795, -2.0626110151923083, -2.0626116666812493, -2.0626114208447075, -2.0626116398003043, -2.062611345733569, -2.0626108574044424, -2.062611513864687, -2.0626118092468824, -2.0626094106740775, -2.0626117111799127, -2.0626114001701157, -2.0626105131490835, -2.0626110110184994, -2.0626117360573644, -2.0626113563315975, -2.062611596157765, -2.062610850224628, -2.0626109015841565, -2.062611590064858, -2.0626107280477157, -2.062611763657176, -2.06261129326757, -2.0626115034834815, -2.062611155027501, -2.0626117679535345, -2.0626094628812353, -2.062609975118117, -2.062611784682349, -2.062609350734797, -2.062611119488792, -2.0626117454534327, -2.0626118104773905, -2.0626115272666286, -2.0626117872170133, -2.0626116890588926, -2.0626110042128296, -2.0626116562684222, -2.062610870783129, -2.0626116080731265, -2.062611657183364, -2.0626113457141946, -2.062611625599322, -2.062611557342745, -2.0626115634790256, -2.0626115241039553, -2.062611857449339, -2.062611804477291, -2.062611274212598, -2.062611331483238, -2.0626108799420657, -2.0626104510416927, -2.062611597574916, -2.0626111194896173, -2.062609931664756, -2.0626115564984238, -2.0626111779104486, -2.0626105305186404, -2.062611823746656, -2.062611121821709, -2.0626115658429245, -2.0626114597300647, -2.062610069467362, -2.06261178402163, -2.0626111171427928, -2.062610152731143, -2.0626118600775865, -2.062611590845228, -2.062610864672688, -2.062610753743496, -2.0626111574077473, -2.0626116774435372, -2.0626117308025456, -2.062610954596701, -2.0626112573429682, -2.0626105881219656, -2.0626117287606047, -2.062611558087453, -2.062610688438608, -2.0626118615143993, -2.062611789655707, -2.0626114508279914, -2.0626113924233986, -2.0626098063094505, -2.062611403665106, -2.0626115332683845, -2.062611802961659, -2.062610924138801]
    

    部分实验图像:

    在这里插入图片描述

    总结

    正常解为-2.06261,实验结果表明最优解和最优位置基本一致

    Holder table function

    迭代500次

    程序循环运行100次的结果:

    最优解集合:[-19.20844676245716, -9.504617297586908, -9.504643490850652, -11.069515629911596, -9.504646923206414, -8.095115507784303, -19.20800022598044, -9.504615222067992, -11.069492919705189, -19.208497534191164, -9.504644988350131, -19.20836451933687, -9.504675598473662, -19.20816648470391, -19.207883209068676, -9.504609788250926, -19.208501682485313, -19.20821401909786, -9.504620117472513, -9.504635751198519, -11.069418574658796, -19.20795388598183, -19.20841816269424, -19.20837394034454, -11.06954082691926, -19.208402713922275, -19.208452517407313, -11.069510672671058, -19.208249201918115, -9.504635939886082, -9.50463642812324, -9.504096913711011, -9.504662493204782, -19.20848675443884, -9.50457015279695, -9.504662447635505, -9.504630418582975, -19.20844827202697, -11.0695506582525, -9.504636084335134, -19.2081424726873, -19.208499752234054, -19.208220458073498, -9.504557365926889, -11.06952511218209, -9.50446318342142, -9.504648825898666, -19.208257647745885, -19.208343381714936, -9.504606566957849, -9.504672516440953, -9.504669857653449, -19.20847093463252, -9.50465182131716, -9.504588413809056, -9.50440303640723, -9.504595024986077, -19.208328508145826, -19.208484304248735, -9.504523003523706, -9.504561593909312, -9.504625533034456, -19.208481286902412, -19.208477587670302, -5.712237681129465, -9.50462696250841, -9.504548812949622, -19.20849229689562, -19.208364095600142, -19.208213199285233, -9.504591244216991, -9.504551057458308, -9.504613476836528, -19.208497227351167, -5.712216215738436, -11.069452071734776, -19.208253707894606, -9.504665730218209, -19.208394799756057, -19.207941702225465, -9.504604381089097, -5.712219923054506, -11.069355633563264, -19.208202322608212, -19.208459526638638, -19.208437178485838, -19.208480698584395, -19.208414903353326, -9.504496239999954, -9.504634865393506, -19.208298780430255, -9.504573598540674, -9.504646235107966, -9.50463573181503, -9.504675687021178, -11.069533102044433, -9.504642680917973, -9.504555355689574, -19.208458173410616, -9.504621103138131]
    

    部分图像:

    在这里插入图片描述

    迭代1000次

    程序循环运行100次的结果:

    最优解集合:[-11.069549678828697, -9.504672930714808, -19.20849288376624, -9.50466907444916, -9.504655057891648, -9.504659629129305, -19.208407038016674, -9.504668231390262, -19.208478904373155, -19.208348934659025, -9.504532300740397, -9.50462534803076, -11.069538206246179, -11.069534094862147, -9.504640091572538, -19.208489758629824, -9.504660211120926, -9.504647499333124, -19.208484956218484, -19.208471987267814, -8.095099585281373, -9.50460245141924, -9.504635106787399, -11.069474874872174, -19.208491447807962, -19.208478009939505, -19.20846604472724, -9.504663229965654, -19.20834126125964, -19.20839027844237, -9.50462073220346, -9.50461854610198, -19.208297233585636, -5.712230727242616, -9.50467186734912, -9.504636937152476, -19.20845456237719, -19.208496066692874, -11.069526667944208, -19.208467153339395, -9.504676862438357, -19.208419472772125, -9.50466424273897, -9.504619810308965, -9.504526984459943, -11.069483184356725, -9.5046599258157, -9.504647453046429, -4.712458012678044, -19.2084773166292, -9.504661153699761, -9.504617553109318, -19.208435539694317, -19.208365135607117, -19.208486311955554, -19.208330906633144, -11.069530528940062, -9.50466435249903, -9.504663455758788, -19.208502088408252, -19.208418926314046, -11.069524847887184, -9.504651057074387, -19.20843140850622, -19.20848696736017, -19.208401946099848, -9.504600672842573, -9.504564759838242, -19.208480179659222, -19.208474441829498, -19.208485804222644, -9.504671136331952, -19.208309255661522, -11.06953204363536, -19.208465559830476, -8.095100993129412, -9.504507505745085, -9.504587392655303, -9.504659238067259, -19.208469577183664, -19.20848909597185, -9.504676483853416, -19.208453274468294, -11.069548236116367, -19.20844574009531, -9.504657272609176, -19.207919903024077, -9.504641847708038, -4.712458100157444, -9.50466831873525, -9.50463166173726, -9.504597447293962, -9.504675624325708, -9.504572741642548, -9.504657336930165, -9.504370464294732, -9.504644170465564, -11.069528235639478, -19.20847123429956, -9.504666647435355]
    

    部分图像:

    在这里插入图片描述
    在这里插入图片描述

    总结

    最优解正常应为19.208…,但明显-9.5…要更多,所以说明出现陷入了局部最优的情况。

    转载望告知,毕竟辛辛苦苦搞出来的,希望对大家有帮助😊

    展开全文
  • 采用粒子群算法PSO)分析了存在初始缺陷的复合材料层合板的可靠性优化问题。在层合板结构总厚度一定的情况下,以系统可靠度最大为目标函数,对复合材料的纤维方向角和相对厚度进行优化设计。单层板失效与否应用...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,534
精华内容 613
关键字:

pso算法设计