【PSO】量子粒子群算法(QPSO)
粒子群算法的几个比较大的改进:
(1)离散粒子群算法:粒子搜索位置为0-1离散值,速度更新公式通过sigmoid函数得到概率值p,决定当前位置的参数是0还是1;
(2)混沌粒子群算法:由确定的方程得出不确定的方程,呈不确定状态的变量成为混沌变量。在混沌粒子群算法中,以全局最优解gbest迭代产生混沌序列,混沌序列通过方程映射回原解空间,序列中最优位置随机替代某个粒子的位置,叫做混沌优化。
(3)量子粒子群算法:因为粒子的位置和速度在量子空间中不能一起确定,所以用波函数表示粒子位置,通过蒙特卡罗方法求出粒子位置。gbest求解通过平均最好位置mbest得到。mbest是所有个体平均最优,通过它来求解粒子出现在相对点的位置,用L表示。而粒子的势表示位置的最终值,与L直接相关。
量子粒子群算法实现(matlab):
popsize=20; %种群规模
MAXITER=2000; %最大迭代次数
dimension=30; %维数
irange_l=-5.12;
irange_r=5.12;
xmax=10; %x的变化范围sum1=0;
sum2=0;
mean=0;
st=0;
runno=10;
data1=zeros(runno,MAXITER); %10*2000型矩阵
for run=1:runno
T=cputime; %程序开始时间
x=(irange_r- irange_l)*rand(popsize,dimension,1) + irange_l; %初始化种群,将x的范围映射到[-5.12,5.12]空间内pbest=x; %个体极值
gbest=zeros(1,dimension); %全局极值for i=1:popsize f_x(i)=f3(x(i,:)); %更新个体极值,f3是什么函数f_pbest(i)=f_x(i);
endg=min(find(f_pbest==min(f_pbest(1:popsize)))); %更新全局极值gbest=pbest(g,:);f_gbest=f_pbest(g);MINIUM=f_pbest(g);
for t=1:MAXITERbeta=(1-0.5)*(MAXITER-t)/MAXITER+0.5; %学习系数mbest=sum(pbest)/popsize;for i=1:popsize fi=rand(1,dimension);p=fi.*pbest(i,:)+(1-fi).*gbest;u=rand(1,dimension);b=beta*(mbest-x(i,:));v=-log(u);y=p+((-1).^ceil(0.5+rand(1,dimension))).*b.*v;x(i,:)=y;x(i,:)=sign(y).*min(abs(y),xmax); f_x(i)=f3(x(i,:));if f_x(i)<f_pbest(i)pbest(i,:)=x(i,:);f_pbest(i)=f_x(i);endif f_pbest(i)<f_gbestgbest=pbest(i,:);f_gbest=f_pbest(i);end MINIUM=f_gbest; enddata1(run,t)=MINIUM;if MINIUM>1e-007mean=t;endend
sum1=sum1+mean;
sum2=sum2+MINIUM;%MINIUM
time=cputime-T;
st=st+time;end
av1=sum1/10; %输出平均收验代数
av2=sum2/10; %输出平均最优解
st/10 %就是最后anw输出的解
参考:
http://www.doc88.com/p-899573226708.html
http://download.csdn.net/download/cxjy329432120/4370945
【PSO】量子粒子群算法(QPSO)相关推荐
- 【超参数寻优】量子粒子群算法(QPSO) 超参数寻优的python实现
[超参数寻优]量子粒子群算法(QPSO) 超参数寻优的python实现 一.粒子群算法的缺点 二.量子粒子群算法 三.QPSO算法的python实现 参考资料 一.粒子群算法的 ...
- 云模型量子粒子群算法
云模型量子粒子群算法 量子粒子群推导过程: 量子粒子群算法(Quantum-behaved Particle Swarm Optimization,QPSO)具有进化方程简单.控制参数少.收敛速度快. ...
- 【优化算法】基于matlab量子粒子群算法求解单目标优化问题【含Matlab源码 2203期】
⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[优化算法]基于matlab量子粒子群算法求解单目标优化问题[含Matlab源码 2203期] 点击上面蓝色字体,直接付费下载,即可. 获 ...
- 量子粒子群算法实现天线阵列优化
量子粒子群算法实现天线阵列优化 ID:691800641860506406武汉长行新视编程工作室
- matlab粒子群算法求解无约束最小值,pso matlab粒子群算法和遗传 是解决约束优化问题,无 和多目标 的优 259万源代码下载- www.pudn.com...
文件名称: pso下载 收藏√ [ 5 4 3 2 1 ] 开发工具: matlab 文件大小: 51 KB 上传时间: 2016-06-01 下载次数: 0 提 供 者: 孙志勇 详细说 ...
- PSO(粒子群算法)
核心思想 粒子群优化算法(PSO)是一种进化计算技术(evolutionary computation),1995 年由Eberhart 博士和kennedy 博士提出 是根据鸟类的捕食行为简化出的一 ...
- PSO(粒子群算法)MATLAB仿真完整代码
%程序1:PSO.m文件 %------ 基本粒子群优化算法( Particle Swarm Optimization ) ----------- %------ 功能:求解无约束问题 %------ ...
- 基于量子粒子群算法实现天线阵列优化
- PSO粒子群算法调节PID控制器参数
概述 PSO(粒子群算法)在处理连续问题上有着较强的能力,因此很适合用来做参数优化,而PID控制器由三个参数组成,它们分别是: Kp.Ki.KdK_p.K_i.K_dKp.Ki.Kd 我们可以把 ...
最新文章
- 【只需简单三个步骤】ACE系统前后端不分离情况下如何增加一个JSP嵌入页面
- iphone X系列设配屏幕适配
- 【问题收录】[ubuntu]startx doesn't work
- 推荐系统resys小组线下活动见闻2009-08-22
- (chap7 确保WEB安全的HTTPS) HTTPS通信步骤
- 【OpenCV学习】矩阵基本操作
- 当使用tensorflow时出现“the requested device apperas to be a GPU, but CUDA is not enabled”的解决办法
- linux cpp建立文件夹,Linux小知识之CMake创建工程的一般流程
- centos7安装最新稳定版nginx
- WinForm开发(28)——TextBox(2)——Winform给TextBox设置默认值(获取焦点后默认值消失)
- 关于天线信号测量方法的记录-确定天线质量好坏-记录
- 东芝服务器报错误代码维修,实战维修 东芝复印机故障维修详解
- 记一次Windows 无法加载这个硬件的设备驱动程序。驱动程序可能已损坏或不见了。 (代码 39)
- 如何防止别人偷窥我给宝贝儿娜娜的信
- 创可贴的 ROS PX4 自主飞行无人机 学习笔记(2)
- 变频器调速工作原理实训装置QY-SP12
- Java web项目如何在服务器上跑起来(有源码)
- squid代理服务+ip代理池
- CreateCompatibleDC 和 CreateCompatibleBitmap
- Java:自动类型转换和强制类型转换的规则