服务热线

400-123-4567
网站导航
新闻中心
当前位置: 首页 > 新闻中心

Matlab粒子群算法(PSO)优化程序——调整权重、改进学习因子

时间:2024-05-06 05:31:47 点击次数:

粒子群算法( Particle Swarm Optimization, PSO)在应用的过程中主要调整权重,学习因子,才能对解决的问题有所针对性。下面有6种调整权重和学习因子:
一、调整粒子群算法的权重
1.线性递减权重
2.自适应调整权重
3.随机权重
二、调整粒子群算法的学习因子
1.收缩因子
2.同步学习因子
3.异步学习因子
目标函数如下:

 

一、调整粒子群算法的权重
1.线性递减权重
Shi.Y认为较大的权重惯性有利于全局搜索,较小的权重有利于局部搜索,他提出的线性递减权重刚好满足这样的需求。
在这里插入图片描述
一般而言,在这里插入图片描述k为当前迭代次数,T为最大迭代次数。

 

在这里插入图片描述
图1 线性递减权重的迭代优化过程

2.自适应调整权重
自适应权重:权重随着粒子适应度值的改变而改变。
在这里插入图片描述
在这里插入图片描述

 

在这里插入图片描述
图2 自适应调整权重的迭代过程
3.随机权重
当粒子在起始位置接近最优点时,可能产生较小权重。
在这里插入图片描述

 

在这里插入图片描述
图3 随机权重的迭代过程
二、调整粒子群算法的学习因子
1.收缩因子
在这里插入图片描述
c=c1+c2,c>4,一般c=4.1.

 

在这里插入图片描述
图4 收缩因子的迭代过程`

2.同步学习因子
在这里插入图片描述

 

在这里插入图片描述
图 5 同步学习因子的迭代过程
3.异步学习因子
在这里插入图片描述

 

在这里插入图片描述
图 6 异步学习因子

Matlab粒子群算法(PSO)优化程序的优点在于参数数量比较少,调整权重和改进学习因子都是比较好进行的。
注:函数来源于https://www.51zxw.net/show.aspx?id=71576&cid=641。

Copyright © 2012-2020 星云-星云娱乐仪器分析类制造商 版权所有 非商用版本  琼ICP备54123456号

地址:广东省广州市天河区某某工业区88号 电话:400-123-4567 邮箱:admin@youweb.com

关注我们

平台注册入口