- %%%%%函数逼近%%%%
- clear all;
- clc;
- p=-10:.05:10;
- t=(3+3.*cos(p))/2;
- net=newff(minmax(p),[15 1],{'tansig' 'purelin'},'trainlm');
- net.trainParam.epochs=50; %训练次数50次;
- net.trainParam.goal=0.01; %训练目标为误差小于0.01
- net.trainParam.lr=0.01; %学习速率为0.01
- net=train(net,p,t); %开始训练网络
- y1=sim(net,p);
- figure(2);
- plot(p,t,'-r',p,y1,'-b','LineWidth',2);
- title('非线性函数逼近');
- xlabel('输出');
- ylabel('时间');
- t1=0:.5:5;
- set(gca,'Ytick',t1);
- cell_string{1}='\fontsize{10}\fontname{宋体}红色为原函数图形';
- cell_string{2}='\fontsize{10}\fontname{宋体}蓝色为仿真后图形';
- text(1.7,2.7,cell_string);
复制代码
逼近的是一个非线性函数 原理上可以自己用于其他任何非线性函数的逼近 |