当前位置:网站首页>【水质预测】基于matlab模糊神经网络水质预测【含Matlab源码 1923期】
【水质预测】基于matlab模糊神经网络水质预测【含Matlab源码 1923期】
2022-07-03 18:49:00 【海神之光】
一、模糊神经网络水质预测简介
1 模糊神经网络
从整体结构框架上看, 两个输入一个输出, 它像一个神经网络;从功能上讲, 是一个模糊系统。模糊神经网络结构如图1所示, 此网络结构共分为5个层次, 它是一个由神经网络构造实现的模糊推理系统, 以模糊系统的工作过程为依据来设计的。首先, 输入层输入两个信号;其次模糊化层, 模糊化输入的信号;再次是模糊规则计算层;然后是模糊决策层, 将满足条件的量分类并且将模糊的量转化为清晰结果;最后第五层作为输出层, 输出最后的运算结果。
2 水质评价问题
目前为止水质监控评测的方法有很多, 可是都存在局限性。我国一直以营养物、无机物、微生物和重金属离子作为主要水质参数。传统的生物或者化学水质评价方法, 只能得出是否污染以及污水主要的成分, 不能将水质真正所存在的潜在问题反映出来。在线自动连续监测的水质污染综合系统, 与连续自动监测大气污染的系统相比, 水质监测要困难得多。当然, 这些问题都是可以解决的, 但是找到合适的水质评价方法尤为重要。
图2 模糊神经网络水质评价的一般步骤
2.1 水质评价的主要参数
水质评价中常用的参数有六种: (1) 常规水质参数; (2) 氧平衡参数; (3) 重金属参数; (4) 有机污染物参数; (5) 无机污染物参数, ; (6) 生物参数。
2.2 水质评价的一般步骤
模糊神经网络水质评价算法实验的主要步骤如图2所示, 主要分为六个步骤。
3 基于T-S模糊神经网络建模
3.1 T-S模糊模型
T-S模糊系统不仅能够自动更新模糊子集的隶属函数, 而且能不断更新隶属度函数。属于一种不断成长的自学习系统。该模型, T-S模糊系统定义在下面的“if-then”规则中。根据规则Ri中, 模糊推理如下:
其中, Aij为模糊系统的模糊集;pij (j=1, 2, …, k) 为模糊系统参数;yi为根据模糊规则得到的输出, 输入部分 (即if部分) 是模糊的, 输出部分 (即then部分) 是确定的, 该模糊推理表示输出为输入的线性组合。
假设输入量x=[x1, x2, …xk], 首先依照模糊规则计算每个输入变量, xj的隶属度。
其中, cji, bji分别为隶属度函数的中心和宽度;k为输入参数;n为模糊子集数。将各个隶属度进行模糊计算, 应用模糊算子作为连乘算子。
根据模糊计算结果计算模糊模型的输出值yi。
3.2 T-S模糊神经网络
T-S模糊神经网络包括四层结构:输入层、模糊化层、模糊规则计算层和输出层。模糊神经网络的学习算法如下:
(1) 误差计算
式中, yd是网络预期输出;yc网络实际输出;e预期输出和实际输出的误差。
(2) 系数修正
式中, pji为神经网络系数, α为网络学习效率, xj为网络输入参数;ωi为输入参数隶属度连乘积。
(3) 参数修正
式中, cji, bji分别为隶属度函数的中心和宽度。
3.3 模型的建立
模糊神经网络将训练样本的维数作为基础前提, 构建模糊神经网络基础要素:输入、输出节点数、模糊隶属度函数个数。最后选定输入数据为6个 (包括氨氮含量、溶解氧含量、化学需氧量、高锰酸盐指数、总磷和总氮六项指标) , 将水质等级划分为五类, 用数字1—5表示水质等级I—V类, 所以输出的节点数字为1, 形成了6-12-1的网络结构。
二、部分源代码
%---------------------------------------------%
%
%---------------------------------------------%
%% 清空环境变量
clc
clear
%% 参数初始化
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; %进化次数
%网络测试数据,并对数据归一化
load data1 input_train output_train input_test output_test
%选连样本输入输出数据归一化
[inputn,inputps]=mapminmax(input_train);
[outputn,outputps]=mapminmax(output_train);
[n,m]=size(input_train);
%% 网络训练
%循环开始,进化网络
for iii=1:maxgen
iii
for k=1:m
x=inputn(:,k);
%输出层结算
for i=1:I
for j=1:M
u(i,j)=exp(-(x(i)-c(j,i))^2/b(j,i));
end
end
三、运行结果



四、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1]康彩丽.模糊神经网络在水质评价中的应用研究[J].忻州师范学院学报. 2019,35(02)
3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除
边栏推荐
- cipher
- Record: pymysql is used in pycharm to connect to the database
- SQL custom collation
- Pytorch introduction to deep learning practice notes 13- advanced chapter of cyclic neural network - Classification
- There are several levels of personal income tax
- TypeScript 官网教程
- 简述服务量化分析体系
- 2022-2028 global sepsis treatment drug industry research and trend analysis report
- 235. 二叉搜索树的最近公共祖先【lca模板 + 找路径相同】
- SQL: special update operation
猜你喜欢

Does SQL always report foreign key errors when creating tables?

Web3 credential network project galaxy is better than nym?

FBI warning: some people use AI to disguise themselves as others for remote interview

22.2.14 -- station B login with code -for circular list form - 'no attribute' - 'needs to be in path selenium screenshot deviation -crop clipping error -bytesio(), etc

2022-2028 global solid phase extraction column industry research and trend analysis report

FBI 警告:有人利用 AI 换脸冒充他人身份进行远程面试

组策略中开机脚本与登录脚本所使用的用户身份

Caddy server agent

12、 Service management

Shell script return value with which output
随机推荐
编程中常见的 Foo 是什么意思?
Understanding of database architecture
flask 生成swagger文档
Record: MySQL changes the time zone
Succession of flutter
MySQL duplicate check
The online customer service system developed by PHP is fully open source without encryption, and supports wechat customer service docking
[Yu Yue education] theoretical mechanics reference materials of Shanghai Jiaotong University
Reading a line from ifstream into a string variable
235. 二叉搜索樹的最近公共祖先【lca模板 + 找路徑相同】
After the festival, a large number of people change careers. Is it still time to be 30? Listen to the experience of the past people
Torch learning notes (1) -- 19 common ways to create tensor
“google is not defined” when using Google Maps V3 in Firefox remotely
Smart wax therapy machine based on STM32 and smart cloud
leetcode:556. 下一个更大元素 III【模拟 + 尽可能少变更】
论文阅读 GloDyNE Global Topology Preserving Dynamic Network Embedding
2022-2028 global solid phase extraction column industry research and trend analysis report
Common PostgreSQL commands
Sepconv (separable revolution) code recurrence
Torch learning notes (4) -- torch's dynamic calculation diagram