资源简介
说明,这个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粒子群算法解决旅行商(T
- BP神经网络matlab(简单而经典).
-
BP神经网络+PID控制simuli
nk仿真 - BP神经网络MATLAB实现不使用工具箱
- BP神经网络对iris数据集进行分类 MAT
- 智能微电网粒子群优化算法.7z
- LBP图像特征提取matlab程序
- 关于电力负荷的SVM预测,设计了MATL
- 遗传算法和粒子群算法结合的matlab源
- PSO优化PID参数的matlab程序
- 粒子群算法PSOmatlab工具箱toolbox
- BP神经网络与MATLAB神经网络工具箱
- K-L变换算法
- bpsk在高斯白噪声信道中调制解调MAT
- 2个matlab BP分类代码
- matlab——PSO算法以及两种适应度函数
- bp算法 matlab实现 图像分类
- matlab实现的粒子群动态寻路算法
- BP神经网络整定的PID算法_matlab源程序
- MATLAB智能算法超级学习手册
-
BPSK调制的simuli
nk仿真 - 粒子群优化算法源码matlab
- 基于粒子群优化的极限学习机
- 粒子群算法解决VRP代码matlab
-
BPSK调制解调simuli
nk模型 - BP网络变压器故障诊断
- BPSK扩频误码率曲线MATLAB仿真
- BP神经网络关于空气污染物含量预测
- pso算法无功优化
- MATLAB人脸识别PCALDAKPCABP,可视化界面
评论
共有 条评论