资源简介
说明,这个matlab程序的目标是对BP神经网络中的神经元连接权和阈值构成的高维参数空间进行最优求解,试图用PSO算法求解神经网络中的参数,而不是用传统的误差反传算法。但由于经典粒子群算法存在局部最优的问题。该算法也存在同样的问题。该算法在迭代数较大时可以基本做到误差较大的函数拟合。但是通过该资源提供的图解和代码注释,用户可以很容易的学习到PSO算法的过程。至于如何突破局部最优,这个就有待各位PSO爱好者进行优化了。

代码片段和文件信息
%适应度函数
function y=AdaptFunc_BP(x)
%求解偏差的均方根,也就是每个预测点和实际点的平方和再求平方根
%x是行向量,数量为ParticleSize
%x(1:5)---V:输入到隐层神经元的权值
%x(6:10)---theta1:隐层神经元的阈值
%x(11:15)---W:输出层神经元的连接权
%x(16)---W:输出层神经元的阈值
[rowcol]=size(x);
%训练集的X
X=-1:0.1:1;
%col2有用
[row2col2]=size(X);
D=[-0.9602 -0.5770 -0.0729 0.3771 0.6405 0.6600 0.4609 ...
0.1336 -0.2013 -0.4344 -0.5000 -0.3930 -0.1647 -.0988 ...
0.3072 0.3960 0.3449 0.1816 -0.312 -0.2189 -0.3201];
if row>1
error(‘适应度函数:输入的参数错误‘);
end
%net = newff([-1 1][5 1]{‘tansig‘‘tansig‘});
net = newff(XD5{‘tansig‘‘tansig‘});
%net.trainParam.epochs = 100; %训练的最大次数
%net.trainParam.goal = 0.005; %全局最小误差
V=x(1:5)‘;
theta1=x(6:10)‘;
W=x(11:15);
theta2=x(16);
net.iw{11}=V;
net.b{1}=theta1;
net.lw{21}=W;
net.b{2}=theta2;
O2 = sim(netX);
%计算当前参数下,神经网络的实际输出O2与目标输出D之间的误差的平方和
total=sqrt(sum((O2-D).^2));
TempStr=sprintf(‘误差平方和%g‘total);
disp(TempStr);
y=total;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1205 2014-06-18 20:36 AdaptFunc_BP.m
文件 572 2014-06-19 09:25 Check_PSO_Result_BP.m
文件 1011 2014-06-18 20:31 ContrastBP_PSO.m
文件 15572 2014-06-19 09:58 PSO_Stand.m
文件 669 2014-06-19 10:44 ShowAllResult.asv
文件 693 2014-06-19 10:49 ShowAllResult.m
文件 1594 2014-06-19 11:14 Test_PSO_Stand.m
文件 611072 2014-06-19 11:21 采用粒子群进行曲线拟合的过程.docx
文件 594 2014-06-19 12:12 使用说明.txt
----------- --------- ---------- ----- ----
632982 9
相关资源
- matlab_OFDM调制解调(来自剑桥大学)
- 用MATLAB(BPSK仿真 直接扩频)
- 基于BP神经网络对几种字体0-9的数字识
- MATLAB实现的BPSK调制解调
- 基于BP神经网络的盲均衡算法 C程序(
- 粒子群算法matlab工具箱
- 基于BP神经网络的语音情感识别系统
- 基于粒子群算法的非合作博弈的matl
- BP神经网络解决手写数字识别问题 m
- 粒子群算法优化pid源码 matlab仿真.ra
- BP神经网络实现手写数字识别matlab实现
- 应用BP神经网络逼近非线性函数
- 粒子群算法优化RBF网络matlab源码
- pso解决单目标优化问题
- 基本粒子群算法,MATLAB文件的M文件编
- 基于BP神经网络的无线传感器定位算法
- 基于matlab的BPSK调制解调
- LBP四种特征提取算法
- BP神经网络在隧道基坑工程中的实际运
- 利用BP神经网络实现手写体数字识别
- 利用BP神经网络对图像提取的MATLAB代码
- 有约束的基于适应度和连续世代策略
- 粒子群算法求解函数优化问题.zip
- 基于bp的英文字符识别
- MATLAB多方法车牌识别系统bp+模板+GUI
- 《MATLAB 神经网络30个案例分析》所有
- 基于matlab的人脸识别271850
- MATLAB模拟MZM实现OOK和BPSK
- matlab粒子群算法PSO实现函数极值优化
- RBMCDAbox - Matlab Toolbox of Rao-Blackwellize
评论
共有 条评论