资源简介
两个文件
主程序
微粒群优化的神经网络
子程序
适应度函数,可修改

代码片段和文件信息
%混合bp算法,即pso_bp算法:
%算法思路:利用pso的全局搜索能力对bp网络的权值进行优化,再利用bp算法对其进行局部寻优。
%pso算法部分如下:
%1.1 初始化格式
clear all
clc;
format long;
%1.2 初始化微粒群的参数
wmax=1.2;
wmin=0.6;
N = 40 ; %微粒数目
%N=60;
D = 16 ; %每个微粒的空间维数
a=-1;
b=1;
c1=2.5; %学习因子1
%c1=2;
c2=2.5; %学习因子2
%c2=2;
%w=1.2; %惯性权重
MaxDT=20 ; %最大迭代次数
%rand(‘state‘sum(100*clock));
%x=a+(b-a)*rand(ND);%[-11]
%v=a+(b-a)*rand(ND);%[-11]
x=randn(ND); %[01]
v=randn(ND); %[01]
%初始化神经网络
P=-0.5:0.05:0.5;
T=(sin(2*3.14*P)).^2.*exp(-4*(P+0.5));
I=1;H=5;O=1;%1-5-1结构
net = newff([-0.5 0.5][H O]{‘tansig‘ ‘purelin‘});
%计算各个粒子的适应度值
for i=1:N
p(i) = fitcall(x(i:)netIHODPT); %局部最优值
y(i:) = x(i:);
end
pg = x(1:); %pg为全局最优值
for i=2:N
if fitcall(x(i:)netIHODPT) pg = x(i:);
end
end
%迭代公式
for t = 1:MaxDT
w = wmin + (wmax-wmin)*(1+cos((t-1)*pi/(MaxDT-1)))/2;
for i = 1:N
v(i:)=w*v(i:)+c1*rand*(y(i:)-x(i:))+c2*rand*(pg-x(i:));
x(i:)=x(i:)+v(i:);
if fitcall(x(i:)netIHODPT) p(i) = fitcall(x(i:)netIHODPT);
y(i:) = x(i:);
end
if fitcall(x(i:)netIHODPT) pg = y(i:);
end
end
Pbest(t) = fitcall(pgnetIHODPT);
end
%bp网络
%clear all;
%clc;
%p = -0.5:0.05:0.5;
%t = (sin(2*3.14*p)).^2.*exp(-4*(p+0.5));
%net=newff(minmax(p)[5 1]{‘transig‘ ‘purelin‘}‘trainlm‘);
%net = newff([-0.5 0.5][5 1]{‘tansig‘ ‘purelin‘});
%net = initnw(net1);
for t = 1:H
x2iw(t:) = pg(1((t-1)*I+1):t*I);%wi为5*1的矩阵
end
for r = 1:O
x2lw(r:) = pg(1(I*H+1):(I*H+H));%wo为1*5的矩阵
end
x2b=pg(1((I+1)*H+1):D);
x2b1=x2b(1:H).‘;
x2b2=x2b(H+1:H+O).‘;
net.iw{11}=x2iw(:1);
net.lw{21}=x2lw;
net.b{11}=x2b1;
net.b{21}=x2b2;
net.trainParam.epoch = 500; %训练次数为500次;
net.trainParam.goal = 0.0001; %训练目标为误差小于0.001;
net.trainParam.lr = 0.01; %学习速率为0.01;
net = train(netPT);
y1 = sim(netP);
figure(1);
%plot(py1‘-b‘)
%plot(pt‘-r‘py1‘-b‘‘LineWidth‘2);
plot(PT‘r*‘);
hold on;
plot(Py1‘-b‘);
axis([-0.5 0.5 -0.05 0.45]);
title(‘非线性函数逼近‘);
xlabel(‘输出‘);
ylabel(‘时间‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2412 2008-06-12 23:56 pso_bp\bp_pso.m
文件 371 2008-05-20 10:08 pso_bp\fitcall.m
目录 0 2012-09-24 01:21 pso_bp
----------- --------- ---------- ----- ----
3001 4
相关资源
- CNN-SVM模型在抽油机井故障诊断中的应
- bp神经网络源代码,可直接运行
- 连续hopfield神经网络解决TSP问题
- 改进的BP神经网络算法
- 基于bp神经网络的表情识别
- 神经网络仿真工具源代码
- 使用卷积神经网络在e + e-对撞机上改
- 用labview编写的一个神经网络Vi图
- 基于改进的SOM神经网络在产品配置中
- 深度学习卷积神经网络可检测和分类
- 标量场理论的回归和生成神经网络
- 基于ARIMA、BP神经网络与GM的组合模型
- 车辆自适应神经网络编队控制
- 基于RBF神经网络在线辨识的永磁同步
- 基于BP人工神经网络的SmFeN永磁材料工
- 融合粗糙集和人工神经网络的产品敏
- 基于粗糙集神经网络的数据挖掘在门
- Google OCR API源代码和神经网络识别OC
- 信息融合、神经网络-模糊推理理论及
- 基于双隐含层BP神经网络的预测
- SOM神经网络 PPT
- 小波神经网络预测模型代码
- 基于PSO优化BP神经网络的水质预测研究
- 基于神经网络的时间序列预测方法
- BP神经网络算法逼近一个正弦函数
- Hopfield神经网络解决 TSP问题
- 基于神经网络的数字水印
- 基于概率神经网络的图匹配算法研究
- 基于神经网络的身份证号码识别算法
- 机器学习方法R实现-用决策树、神经网
评论
共有 条评论