【水质预测】基于matlab模糊神经网络水质预测【含Matlab源码 1923期】
一、模糊神經(jīng)網(wǎng)絡(luò)水質(zhì)預(yù)測簡介
1 模糊神經(jīng)網(wǎng)絡(luò)
從整體結(jié)構(gòu)框架上看, 兩個輸入一個輸出, 它像一個神經(jīng)網(wǎng)絡(luò);從功能上講, 是一個模糊系統(tǒng)。模糊神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示, 此網(wǎng)絡(luò)結(jié)構(gòu)共分為5個層次, 它是一個由神經(jīng)網(wǎng)絡(luò)構(gòu)造實現(xiàn)的模糊推理系統(tǒng), 以模糊系統(tǒng)的工作過程為依據(jù)來設(shè)計的。首先, 輸入層輸入兩個信號;其次模糊化層, 模糊化輸入的信號;再次是模糊規(guī)則計算層;然后是模糊決策層, 將滿足條件的量分類并且將模糊的量轉(zhuǎn)化為清晰結(jié)果;最后第五層作為輸出層, 輸出最后的運算結(jié)果。
2 水質(zhì)評價問題
目前為止水質(zhì)監(jiān)控評測的方法有很多, 可是都存在局限性。我國一直以營養(yǎng)物、無機物、微生物和重金屬離子作為主要水質(zhì)參數(shù)。傳統(tǒng)的生物或者化學(xué)水質(zhì)評價方法, 只能得出是否污染以及污水主要的成分, 不能將水質(zhì)真正所存在的潛在問題反映出來。在線自動連續(xù)監(jiān)測的水質(zhì)污染綜合系統(tǒng), 與連續(xù)自動監(jiān)測大氣污染的系統(tǒng)相比, 水質(zhì)監(jiān)測要困難得多。當(dāng)然, 這些問題都是可以解決的, 但是找到合適的水質(zhì)評價方法尤為重要。
圖2 模糊神經(jīng)網(wǎng)絡(luò)水質(zhì)評價的一般步驟
2.1 水質(zhì)評價的主要參數(shù)
水質(zhì)評價中常用的參數(shù)有六種: (1) 常規(guī)水質(zhì)參數(shù); (2) 氧平衡參數(shù); (3) 重金屬參數(shù); (4) 有機污染物參數(shù); (5) 無機污染物參數(shù), ; (6) 生物參數(shù)。
2.2 水質(zhì)評價的一般步驟
模糊神經(jīng)網(wǎng)絡(luò)水質(zhì)評價算法實驗的主要步驟如圖2所示, 主要分為六個步驟。
3 基于T-S模糊神經(jīng)網(wǎng)絡(luò)建模
3.1 T-S模糊模型
T-S模糊系統(tǒng)不僅能夠自動更新模糊子集的隸屬函數(shù), 而且能不斷更新隸屬度函數(shù)。屬于一種不斷成長的自學(xué)習(xí)系統(tǒng)。該模型, T-S模糊系統(tǒng)定義在下面的“if-then”規(guī)則中。根據(jù)規(guī)則Ri中, 模糊推理如下:
其中, Aij為模糊系統(tǒng)的模糊集;pij (j=1, 2, …, k) 為模糊系統(tǒng)參數(shù);yi為根據(jù)模糊規(guī)則得到的輸出, 輸入部分 (即if部分) 是模糊的, 輸出部分 (即then部分) 是確定的, 該模糊推理表示輸出為輸入的線性組合。
假設(shè)輸入量x=[x1, x2, …xk], 首先依照模糊規(guī)則計算每個輸入變量, xj的隸屬度。
其中, cji, bji分別為隸屬度函數(shù)的中心和寬度;k為輸入?yún)?shù);n為模糊子集數(shù)。將各個隸屬度進行模糊計算, 應(yīng)用模糊算子作為連乘算子。
根據(jù)模糊計算結(jié)果計算模糊模型的輸出值yi。
3.2 T-S模糊神經(jīng)網(wǎng)絡(luò)
T-S模糊神經(jīng)網(wǎng)絡(luò)包括四層結(jié)構(gòu):輸入層、模糊化層、模糊規(guī)則計算層和輸出層。模糊神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法如下:
(1) 誤差計算
式中, yd是網(wǎng)絡(luò)預(yù)期輸出;yc網(wǎng)絡(luò)實際輸出;e預(yù)期輸出和實際輸出的誤差。
(2) 系數(shù)修正
式中, pji為神經(jīng)網(wǎng)絡(luò)系數(shù), α為網(wǎng)絡(luò)學(xué)習(xí)效率, xj為網(wǎng)絡(luò)輸入?yún)?shù);ωi為輸入?yún)?shù)隸屬度連乘積。
(3) 參數(shù)修正
式中, cji, bji分別為隸屬度函數(shù)的中心和寬度。
3.3 模型的建立
模糊神經(jīng)網(wǎng)絡(luò)將訓(xùn)練樣本的維數(shù)作為基礎(chǔ)前提, 構(gòu)建模糊神經(jīng)網(wǎng)絡(luò)基礎(chǔ)要素:輸入、輸出節(jié)點數(shù)、模糊隸屬度函數(shù)個數(shù)。最后選定輸入數(shù)據(jù)為6個 (包括氨氮含量、溶解氧含量、化學(xué)需氧量、高錳酸鹽指數(shù)、總磷和總氮六項指標(biāo)) , 將水質(zhì)等級劃分為五類, 用數(shù)字1—5表示水質(zhì)等級I—V類, 所以輸出的節(jié)點數(shù)字為1, 形成了6-12-1的網(wǎng)絡(luò)結(jié)構(gòu)。
二、部分源代碼
%---------------------------------------------% % %---------------------------------------------%%% 清空環(huán)境變量 clc clear%% 參數(shù)初始化 xite=0.001; alfa=0.05;%網(wǎng)絡(luò)節(jié)點 I=6; %輸入節(jié)點數(shù) M=12; %隱含節(jié)點數(shù) O=1; %輸出節(jié)點數(shù)%系數(shù)初始化 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;%參數(shù)初始化 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; %進化次數(shù)%網(wǎng)絡(luò)測試數(shù)據(jù),并對數(shù)據(jù)歸一化 load data1 input_train output_train input_test output_test%選連樣本輸入輸出數(shù)據(jù)歸一化 [inputn,inputps]=mapminmax(input_train); [outputn,outputps]=mapminmax(output_train); [n,m]=size(input_train);%% 網(wǎng)絡(luò)訓(xùn)練 %循環(huán)開始,進化網(wǎng)絡(luò) for iii=1:maxgeniiifor k=1:m x=inputn(:,k);%輸出層結(jié)算for i=1:Ifor j=1:Mu(i,j)=exp(-(x(i)-c(j,i))^2/b(j,i));endend三、運行結(jié)果
四、matlab版本及參考文獻
1 matlab版本
2014a
2 參考文獻
[1]康彩麗.模糊神經(jīng)網(wǎng)絡(luò)在水質(zhì)評價中的應(yīng)用研究[J].忻州師范學(xué)院學(xué)報. 2019,35(02)
3 備注
簡介此部分摘自互聯(lián)網(wǎng),僅供參考,若侵權(quán),聯(lián)系刪除
總結(jié)
以上是生活随笔為你收集整理的【水质预测】基于matlab模糊神经网络水质预测【含Matlab源码 1923期】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【新示例】协作云路上的先驱or先烈,思科
- 下一篇: 中关村修电脑,被坑了