clear
clc
P1=[1 0 0.25 0 0.25 0.25 0.25 0.5 0.5 1;
0.5 0 0.25 0.25 0 0.25 0.25 0.75 0.25 1;
0.5 0 0.75 0.25 0.25 1 0.25 0.5 0.5 0.5;
1 0 0.75 0.25 0 0.5 0.5 0.5 0.25 0.75;
0.25 0 0.75 0.5 0.25 0.25 0.5 0.75 0.75 1;
1 0 0.75 0.25 0.25 0.75 0 0.5 0.25 0.5;
0.75 0 0.75 0.5 0 0.75 0.5 0.5 0.25 0.75;
1 0 1 0.25 0 0.75 0.25 0.5 0.5 1;
0.75 0.5 0.5 0 0 0 0.25 1 1 1 ;
0.75 0.5 0.5 0.5 0 0 0.25 0.75 0.5 1];
T1=[0 1 1 0 1 0 0 0 1 1;1 0 0 1 0 1 1 1 0 0];
hiddennum=200;
inputnum=size(P1',1);
outputnum=size(T1',1);
w1num=inputnum*hiddennum;
w2num=outputnum*hiddennum;
%%
%新建BP神经网络
net=newff(minmax(P1'),[31 3],{'tansig','logsig'},'trainlm');
net=configure(net,P1',T1');
%设置神经网络参数
net.trainParam.epochs=200;
% net.train Param.goal=0.00001;
% net.train Param.lr = 0.1;
% %训练网络
net=train(net,P1',T1');
%测试网络
Y1 = sim(net,P1');
err1 = norm(Y1-T1');
err11 = norm(sim(net,P1')-T1');
disp('step1.使用随机权值和阈值:')
disp(['训练样本的仿真误差:',num2str(err11)])
disp(['蚁群算法优化前测试样本的仿真误差:',num2str(err1)])
P1已经归一化啦,运行的时候错误显示:
错误使用 network/train (line 320)
Inputs and targets have different numbers of samples.
出错 Untitled2 (line 60)
net=train(net,P1',T1');
蚁群算法优化bp
最新推荐文章于 2023-04-22 09:00:02 发布