2)评价每个微粒的适应度,将当前各微粒的位置和适应值储存在各微粒的pbest中,将所有pbest中适应值最优个体的位置和适应值存储于gbest中;
3)如果当前进化代数小于最大进化代数的1/2,根据下面的方程式对微粒的速度和位置进行进化;
   
其中
如果当前进化代数大于最大进化代数的1/2,根据下面的方程式对微粒的速度和位置进行进化:
   
其中 ;
4)对每个微粒,将其适应值与其经历过的最好位置作比较,如果较好,则将其作为当前的最好位置;
5)比较当前所有的pbest和gbest的值,更新gbest;
6)满足停止条件(通常为预设的运算精度或迭代次数),搜索停止,输出结果,否则返回3)继续搜索。
 
在matlab中编程实现的二阶振荡粒子群优化函数为SecVibratPSO
功能:用二阶振荡粒子群优化算法求解无约束优化问题。
调用格式:[xm,fv]= SecVibratPSO (fitness,N,c1,c2,w,M,D)
其中,fitness:待优化的目标函数:
N:粒子数目;
c1:学习因子1;
c2:学习因子2;
w:惯性权重;
M:最大迭代次数;
D:自变量的个数;
xm:目标函数取最小值时的自变量值;
fv:目标函数的最小值。

3.2.5混沌粒子群算法
混沌粒子群算法是混沌优化和粒子群优化两者的组合。对于给定的优化函数,通过将搜索过程对应为混沌轨道的遍历过程,可使搜索过程具有比便陷入局部极小的能力。
混沌粒子群算法中涉及到混沌局部算法(CLS),CLS的算法步骤如下:
1)令k=0,将自变量 按下式映射为0到1之间的混沌变量 其中 和 分别为第j文变量的搜索上下界;
2)计算下步迭代的混沌变量 ;
3)将混沌变量 转换为决策变量 , ;
根据决策变量 对新解进行评估,若新解优于初始解 或者混度搜索已达到最大迭代步数,将新解作为CLS的搜索结果,否则置k=k+1,转2)。
混沌搜索算法通常需要大量的迭代步数才可获得较好的解,且对初始解十分敏感,为了克服混沌搜索的缺点,将PSO算法与混沌搜索相结合,的到混沌粒子群算法。
将PSO算法主要用于全局的搜索,而CLS则根据PSO的结果进行局部搜索。
混沌粒子群算法步骤如下。
1)随机初始化群中各微粒的位置和速度;
2)评价每个微粒的适应度,将当前各微粒的位置和适应值储存在各微粒的pbest中,将所有pbest中适应值最优个体的位置和适应值存储于gbest中;
3)跟新每个微粒的速度和位置;
4)计算每个微粒的目标函数,然后保留群体中适应函数值最好的20%的微粒;
5) 对群体中的最佳微粒执行混沌局部搜索,并更新其pbest以及群体的gbest;
6)若满足停止条件(通常为预设的运算精度或迭代次数),搜索停止,输出结果,否则转7);
按下面的式子收缩搜索区域;
 
其中 表示pbest的第j文变量的值;
8)在收缩后的空间内随机产生群体中剩余80%的微粒,转2)。
在上面的混沌搜索的算法过程中,为了保持种群的多样性,加强搜索的分散性,在保留一定数量优秀微粒的同时,算法根据群体的最佳位置动态收缩收缩区域,并在收缩区域内随机产生微粒来代替性能较差的微粒。
 
在matlab中编程实现的混沌粒子群群优化函数为CLSPSO
功能:用二阶振荡粒子群优化算法求解无约束优化问题。
调用格式:[xm,fv]=CLSPSO (fitness,N,c1,c2,xmax,xmin,w,M,MaxC,D)
其中,fitness:待优化的目标函数:
N:粒子数目;
上一篇:无线自组网络下隐蔽信道的研究与实现
下一篇:PLC电动液压人防区间隔断门原地系统设计

认知无线电网络中基于双...

基于TCP/IP技术的转向架振动测试系统设计

基于PM2.5浓度的健康出行路径规划及实现

基于涡旋电磁波的新型雷达成像技术研究

基于相关滤波器的长期跟踪算法研究

自回归模型谱估计方法设计+Matlab源代码

变分模态分解方法研究及...

多元化刑事简易程序构建探讨【9365字】

《醉青春》导演作品阐述

浅谈传统人文精神茬大學...

高校网球场馆运营管理初探【1805字】

辩护律师的作证义务和保...

中国古代秘书擅权的发展和恶变

国内外无刷直流电动机研究现状

浅谈新形势下妇产科护理...

拉力采集上位机软件开发任务书

谷度酒庄消费者回访调查问卷表