ganetwork.txt

来自「利用Matlab编写的粗神经网络的构造」· 文本 代码 · 共 55 行

TXT
55
字号
ganetwork::::
clear;
close all;
net=network;
net.numInputs=1;
net.numLayers=1;
net.biasConnect=[0]';
net.inputConnect=[1]';
net.layerConnect=[0]';
net.outputConnect=[1];
net.targetConnect=[0];

net.inputs{1}.range=[-5 2;-1 3];
net.layers{1}.size=1;
net.layers{1}.initFcn='initnw';
net.layers{1}.transferFcn='logsig';

net.initFcn='initlay';
net.trainFcn='gatrain';
net







function [s,eval]=fitness(s,options)
     p=[1 -1 -2 -4;2 1 1 0];
     t=[0.2 0.8 0.8 0.2];
     numv=size(s,2);
     ss=s(:,1:numv-1);
     x=s(1:numv-1);
     eval=0;
     for i=1:4
         e=logsig(sum(ss*p(:,i)))-t(1,i);
         eval=eval+e;
     end
     eval=-eval;









function [net]=gatrain(net)
     bounds=ones(2,1)*[-5 5];
     initPop=initializega(30,bounds,'');
     [a,b]=size(initPop);
     
     [p,endPop,bPop,trace]=ga(bounds,'fitness',[],initPop,[1e-6 1 1],'maxGenTerm',25,'normGeomSelect',[0.08],['arithXover'],[2],'nonUnifMutation',[2 25 3]);
     net.IW=p

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?