聪明文档网

聪明文档网

最新最全的文档下载
当前位置: 首页> 基于模糊神经网络的水质评价代码

基于模糊神经网络的水质评价代码

时间:    下载该word文档
该代码为基于模糊神经网络的水质评价代码
清空环境变量参数初始化网络训练网络预测
嘉陵江实际水质预测清空环境变量clcclear
参数初始化
xite=0.001;alfa=0.05;
%网络节点
I=6;%输入节点数M=12;%隐含节点数O=1;%输出节点数
%系数初始化
p0=0.3*ones(M,1;p0_1=p0;p0_2=p0_1;p1=0.3*ones(M,1;p1_1=p1;p1_2=p1_1;p2=0.3*ones(M,1;p2_1=p2;p2_2=p2_1;p3=0.3*ones(M,1;p3_1=p3;p3_2=p3_1;p4=0.3*ones(M,1;p4_1=p4;p4_2=p4_1;p5=0.3*ones(M,1;p5_1=p5;p5_2=p5_1;p6=0.3*ones(M,1;p6_1=p6;p6_2=p6_1;
%参数初始化
c=1+rands(M,I;c_1=c;c_2=c_1;b=1+rands(M,I;b_1=b;b_2=b_1;
maxgen=100;%进化次数
%网络测试数据,并对数据归一化
loaddata1input_trainoutput_traininput_testoutput_test
%选连样本输入输出数据归一化
[inputn,inputps]=mapminmax(input_train;[outputn,outputps]=mapminmax(output_train;

[n,m]=size(input_train;网络训练
%循环开始,进化网络foriii=1:maxgeniii;
fork=1:m
x=inputn(:,k;
%输出层结算fori=1:I
forj=1:M
u(i,j=exp(-(x(i-c(j,i^2/b(j,i;endend
%模糊规则计算fori=1:M
w(i=u(1,i*u(2,i*u(3,i*u(4,i*u(5,i*u(6,i;end
addw=sum(w;
fori=1:M
yi(i=p0_1(i+p1_1(i*x(1+p2_1(i*x(2+p3_1(i*x(3+p4_1(i*x(4+p5_1(i*x(5+p6_1(i*x(6;end
addyw=yi*w';%网络预测计算yn(k=addyw/addw;e(k=outputn(k-yn(k;
%计算p的变化值d_p=zeros(M,1;
d_p=xite*e(k*w./addw;d_p=d_p';
%计算b变化值d_b=0*b_1;fori=1:Mforj=1:I
d_b(i,j=xite*e(k*(yi(i*addw-addyw*(x(j-c(i,j^2*w(i/(b(i,j^2*addw^2;endend


%更新c变化值fori=1:Mforj=1:I
d_c(i,j=xite*e(k*(yi(i*addw-addyw*2*(x(j-c(i,j*w(i/(b(i,j*addw^2;endend
p0=p0_1+d_p+alfa*(p0_1-p0_2;
p1=p1_1+d_p*x(1+alfa*(p1_1-p1_2;p2=p2_1+d_p*x(2+alfa*(p2_1-p2_2;p3=p3_1+d_p*x(3+alfa*(p3_1-p3_2;p4=p4_1+d_p*x(4+alfa*(p4_1-p4_2;p5=p5_1+d_p*x(5+alfa*(p5_1-p5_2;p6=p6_1+d_p*x(6+alfa*(p6_1-p6_2;
b=b_1+d_b+alfa*(b_1-b_2;c=c_1+d_c+alfa*(c_1-c_2;
p0_2=p0_1;p0_1=p0;p1_2=p1_1;p1_1=p1;p2_2=p2_1;p2_1=p2;p3_2=p3_1;p3_1=p3;p4_2=p4_1;p4_1=p4;p5_2=p5_1;p5_1=p5;p6_2=p6_1;p6_1=p6;
c_2=c_1;c_1=c;b_2=b_1;b_1=b;
end
E(iii=sum(abs(e;end
figure(1;
plot(outputn,'r'holdonplot(yn,'b'holdon
plot(outputn-yn,'g';
legend('实际输出','预测输出','误差','fontsize',12title('训练数据预测','fontsize',12xlabel('样本序号','fontsize',12

ylabel('水质等级','fontsize',12
Warning:Ignoringextralegendentries.
网络预测
%数据归一化
inputn_test=mapminmax('apply',input_test,inputps;[n,m]=size(inputn_testfork=1:m
x=inputn_test(:,k;
%计算输出中间层fori=1:I
forj=1:M
u(i,j=exp(-(x(i-c(j,i^2/b(j,i;endend
fori=1:M
w(i=u(1,i*u(2,i*u(3,i*u(4,i*u(5,i*u(6,i;end
addw=0;fori=1:M
addw=addw+w(i;end
fori=1:M
yi(i=p0_1(i+p1_1(i*x(1+p2_1(i*x(2+p3_1(i*x(3+p4_1(i*x(4+p5_1(i*x(5+p6_1(i*x(6;end
addyw=0;fori=1:M
addyw=addyw+yi(i*w(i;end
%计算输出
yc(k=addyw/addw;end
%预测结果反归一化
test_simu=mapminmax('reverse',yc,outputps;%作图

figure(2
plot(output_test,'r'holdon
plot(test_simu,'b'holdon
plot(test_simu-output_test,'g'
legend('实际输出','预测输出','误差','fontsize',12title('测试数据预测','fontsize',12xlabel('样本序号','fontsize',12ylabel('水质等级','fontsize',12n=6m=50
Warning:Ignoringextralegendentries.
嘉陵江实际水质预测
loaddata2hgscgjhydxg
%-----------------------------------红工水厂-----------------------------------zssz=hgsc;%数据归一化
inputn_test=mapminmax('apply',zssz,inputps;[n,m]=size(zssz;
fork=1:1:m
x=inputn_test(:,k;
%计算输出中间层fori=1:I
forj=1:M
u(i,j=exp(-(x(i-c(j,i^2/b(j,i;endend
fori=1:M
w(i=u(1,i*u(2,i*u(3,i*u(4,i*u(5,i*u(6,i;end
addw=0;
fori=1:M
addw=addw+w(i;end


fori=1:M
yi(i=p0_1(i+p1_1(i*x(1+p2_1(i*x(2+p3_1(i*x(3+p4_1(i*x(4+p5_1(i*x(5+p6_1(i*x(6;end
addyw=0;fori=1:M
addyw=addyw+yi(i*w(i;end
%计算输出
szzb(k=addyw/addw;end
szzbz1=mapminmax('reverse',szzb,outputps;
fori=1:m
ifszzbz1(i<=1.5szpj1(i=1;
elseifszzbz1(i>1.5&&szzbz1(i<=2.5szpj1(i=2;
elseifszzbz1(i>2.5&&szzbz1(i<=3.5szpj1(i=3;
elseifszzbz1(i>3.5&&szzbz1(i<=4.5szpj1(i=4;else
szpj1(i=5;endend
%%-----------------------------------高家花园-----------------------------------zssz=gjhy;
inputn_test=mapminmax('apply',zssz,inputps;[n,m]=size(zssz;
fork=1:1:m
x=inputn_test(:,k;
%计算输出中间层fori=1:I
forj=1:M
u(i,j=exp(-(x(i-c(j,i^2/b(j,i;endend

fori=1:M
w(i=u(1,i*u(2,i*u(3,i*u(4,i*u(5,i*u(6,i;end
addw=0;
fori=1:M
addw=addw+w(i;end
fori=1:M
yi(i=p0_1(i+p1_1(i*x(1+p2_1(i*x(2+p3_1(i*x(3+p4_1(i*x(4+p5_1(i*x(5+p6_1(i*x(6;end
addyw=0;fori=1:M
addyw=addyw+yi(i*w(i;end
%计算输出
szzb(k=addyw/addw;end
szzbz2=mapminmax('reverse',szzb,outputps;
fori=1:m
ifszzbz2(i<=1.5szpj2(i=1;
elseifszzbz2(i>1.5&&szzbz2(i<=2.5szpj2(i=2;
elseifszzbz2(i>2.5&&szzbz2(i<=3.5szpj2(i=3;
elseifszzbz2(i>3.5&&szzbz2(i<=4.5szpj2(i=4;else
szpj2(i=5;endend
%%-----------------------------------大溪沟水厂-----------------------------------zssz=dxg;
inputn_test=mapminmax('apply',zssz,inputps;[n,m]=size(zssz;
fork=1:1:m

x=inputn_test(:,k;
%计算输出中间层fori=1:I
forj=1:M
u(i,j=exp(-(x(i-c(j,i^2/b(j,i;endend
fori=1:M
w(i=u(1,i*u(2,i*u(3,i*u(4,i*u(5,i*u(6,i;end
addw=0;
fori=1:M
addw=addw+w(i;end
fori=1:M
yi(i=p0_1(i+p1_1(i*x(1+p2_1(i*x(2+p3_1(i*x(3+p4_1(i*x(4+p5_1(i*x(5+p6_1(i*x(6;end
addyw=0;fori=1:M
addyw=addyw+yi(i*w(i;end
%计算输出
szzb(k=addyw/addw;end
szzbz3=mapminmax('reverse',szzb,outputps;
fori=1:m
ifszzbz3(i<=1.5szpj3(i=1;
elseifszzbz3(i>1.5&&szzbz3(i<=2.5szpj3(i=2;
elseifszzbz3(i>2.5&&szzbz3(i<=3.5szpj3(i=3;
elseifszzbz3(i>3.5&&szzbz3(i<=4.5szpj3(i=4;else

szpj3(i=5;endend
figure(3
plot(szzbz1,'o-r'holdon
plot(szzbz2,'*-g'holdon
plot(szzbz3,'*:b'
xlabel('时间','fontsize',12
ylabel('预测水质','fontsize',12
legend('红工水厂','高家花园水厂','大溪沟水厂','fontsize',12
webbrowserwww.matlabsky.com
Warning:Ignoringextralegendentries.

  • 29.8

    ¥45 每天只需1.0元
    1个月 推荐
  • 9.9

    ¥15
    1天
  • 59.8

    ¥90
    3个月

选择支付方式

  • 微信付款
郑重提醒:支付后,系统自动为您完成注册

请使用微信扫码支付(元)

订单号:
支付后,系统自动为您完成注册
遇到问题请联系 在线客服

常用手机号:
用于找回密码
图片验证码:
看不清?点击更换
短信验证码:
新密码:
 
绑定后可用手机号登录
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系 在线客服