1. 引言
随着城镇化率逐步提高,人们用水需求不断增长,水体污染加剧,水资源短缺的问题愈发严重。膜生物反应器(MBR)是一种新型的污水处理技术,它将高效膜分离技术与活性污泥生物处理单元相结合,相比于传统的生物处理方式有着明显优势,例如出水水质更好,运行过程中更加灵活稳定,并且占地面积小,全程自动化节省人力等 [1]。
MBR系统由生物反应器和膜组件组成,其中各个膜组件相互连接。在MBR系统运行时,污水会流过各个膜组件,通过膜组件过滤掉大分子颗粒以此可以达到过滤污水的目的 [2]。但MBR系统在运行过程中,膜污染引起的膜过滤阻力不断增加,膜过滤通量严重衰减的问题,仍是影响该项技术推广应用的关键所在 [3]。
深入研究膜过滤阻力机理及其通量变化规律,是目前该工艺需要解决的关键问题。许多研究者对膜过滤阻力模型进行了分析研究,但由于过滤过程影响因素的多样性和物料体系的复杂性,尚无普遍适用的模型可用来预测膜过滤阻力变化时通量的变化规律 [4]。神经网络是一种黑箱模型,具有自映射能力,是用来解决线性及非线性多变量问题的优良工具,具有精确预测,易于操作等特点 [5]。因此,本文采用BP神经网络为算法主体,同时利用粒子群对神经网络的初始权值和阈值进行优化,提高了模型的训练效率和准确率。研究发现,利用此模型可以准确地预测膜生物反应器在污水处理过程中的膜过滤阻力,便于操作人员了解膜过滤过程长期的运行性能。
2. BP神经网络
BP神经网络(BPNN)是在1986年由David E. Rumelhart等学者提出的,是一类基于误差逆向传播(Back Propagation,简称BP)算法的多层前馈神经网络 [6],BPNN由输入层、隐含层、输出层组成,每一层之间各神经元相互独立不连接,而层与层之间的神经元相互连接。单隐藏层的神经网络结构如图1所示。
BP神经网络的学习过程由前向计算过程和误差反向传播过程组成。在前向计算过程中,输入量从输入层经隐藏层逐层计算,并传向输出层,每层神经元的状态只影响下一层神经元的状态。如输出层不能得到期望的输出,则转入误差反向传播过程,误差信号沿原来的连接通路返回,逐次调整网络各层的权值和阈值,直至到达输入层,再重复计算。这两个过程反复迭代,通过不断调整各层的权值和阈值,使得与期望输出的误差最小,学习过程结束。
3. 粒子群算法
粒子群优化算法最早由Kennedy和Eberhart在1995年提出的种群优化算法。该算法最初是受到飞鸟集群活动的规律性启发,进而利用群体智能建立的一个简化模型 [7]。粒子群算法在对动物集群活动行为观察基础上,利用群体中的个体对信息的共享使整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得最优解 [8]。在粒子群优化算法中,首先需要初始化一群随机粒子,然后迭代寻找最优解。每一次迭代,粒子通过两个极值来更新自己,第一个是粒子个体经历过的最好位置
,第二个是种群经历过的最好位置
。
假设在一个D维的目标搜索空间中,有K个粒子组成种群,将第i个粒子的位置表示为一个D维向量,即
,第i个粒子速度为
,速度更新方程如下所示。
其中
是粒子更新的速度,
是粒子的当前位置,
和
学习因子,也称为加速常数,主要对粒子的收敛性产生影响,通常来说
,
是粒子个体经历过的最好位置,
是种群经历过的最好位置,
和
是[0,1]之间的随机数,位置更新后的状态如下。
我们通常使用惯性因子
来优化速度更新方程,动态
在PSO搜索过程中可以动态变化,惯性因子取得值较大,粒子探测到新位置的可能性增加,全局寻优能力较好,但是算法的收敛速度较慢,值较小局部寻优能力好。优化后的方程如下所示:
其中
4. 基于PSO-BP的膜过滤阻力预测模型
4.1. 神经网络参数选取
在MBR运行过程中,造成膜污染的因素很多,我们将进水流量Qinf,水质pH,溶解性固体总量TDS,跨膜压差,进水温度,膜通量,操作压力,这7个变量用作神经网络的输入,我们使用膜的过滤总阻力Rt来量化膜污染的程度,作为神经网络的输出。
4.2. 建立基于PSO-BP膜过滤阻力预测模型
BP神经网络使用梯度下降法来进行函数拟合,但是此方法的缺点就是容易陷入局部极值点,这是因为在神经网络学习过程中没有引入额外参数,如果我们仅仅根据样本对初始权值和阈值进行调整,那么算法的性能将直接取决于权值的好坏。我们可以使用PSO粒子群算法优化神经网络的权值。首先计算出BP神经网络中权值的数量,该数量记作粒子群算法个体向量的维数,在该条件下随机生成粒子,然后按照粒子群算法过程进行学习迭代;在具体的迭代过程中,我们将算法优化后的个体的向量再转化成BP神经网络中的各连接权值。算法的流程图如下图2所示:
![](//html.hanspub.org/file/30-1542172x29_hanspub.png)
Figure 2. PSO-BP algorithm program flow chart
图2. PSO-BP算法程序流程图
具体的实验步骤如下:
步骤1 我们将收集的膜生物反应器数据做归一化处理后分为样本数据35组,校验样本12组。
步骤2 初始化神经网络,确定神经网络的结构并且给各参数赋初值。
步骤3 初始化PSO算法。给粒子群的参数赋初值,确定种群的规模,初始化粒子的速度和位置。
步骤4 计算每个粒子的适应度值,然后将粒子的适应度值与全局最优适应度值进行比较,如果达到了设定值,输出粒子的最优位置,否则继续迭代,更新粒子的速度和位置,迭代次数加一,重新计算适应度值,如果超过迭代次数,输出最优位置。
步骤5 用PSO算法的优化后最好位置来作为神经网络的系统参数,以期望值与神经网络的输出值之间的平方作为误差函数,反向传播更新权值与阈值。
5. 预测结果与实验结果对比分析
实验使用来自某污水处理厂的一些实验数据,此污水处理厂采用MBR污水处理工艺,过滤膜为NTR7450纳滤膜,滤芯为5 μm,操作压力为3.72 bar,进水流量为272 ml/min。我们使用35组实验数据作为训练样本,12组实验数据作为校验样本。
我们选取以下指标为输入变量:进水流量Qinf、pH、溶解性固体总量TDS、跨膜压差、进水温度、膜通量、操作压力作为输入变量。输出单元为膜的过滤阻力。本实验使用梯度下降法调整神经网络的参
数,隐藏层的激活函数为非线性sigmoid函数
。通过将输入和输出数据除以相应的观察到
的最大值,将输入和输出数据归一化为范围[0,1],防止数值溢出。然后将输入模式对应的BPNN输出与目标值进行比较,并调整权重以减小误差平方和。
本次实验通过matlab编程,用BP模型和PSO-BP模型分别对膜的过滤阻力进行计算。模型预测值与真实数据的对比如图3所示,两种模型的预测误差如表1所示,可见BP模型误差较大,PSO-BP模型误差相比于BPNN模型均方误差下降了0.0462,平均绝对百分比误差下降了19.4726%。PSO算法优化模型适应度如图4所示,当粒子进化代数等于7时,适应度较高,此时适应度下的权值和阈值为最优阈值。同时,在本文中为了得到最优的预测结果,所以为隐层节点数先设置一个初始值,然后在这个值的基础上逐渐增加,比较每次网络的预测性能,选择性能最好的对应的节点数作为隐含层神经元节点数。根据图5可以发现当隐藏层节点数为14时,该网络的均方误差最小,为0.1104。改进后的模型预测精度明显优于改进前的网络模型,且拟合度更好,稳定性和泛化性均有较大提升。
![](Images/Table_Tmp.jpg)
Table 1. PSO optimization neural network fitness curve graph
表1. PSO优化BP适应度曲线图
![](//html.hanspub.org/file/30-1542172x31_hanspub.png)
Figure 3. Comparison chart of neural network predicted value and true value
图3. 神经网络预测值与真实值对比图
![](//html.hanspub.org/file/30-1542172x32_hanspub.png)
Figure 4. PSO optimization neural network fitness curve graph
图4. PSO优化BP适应度曲线图
![](//html.hanspub.org/file/30-1542172x33_hanspub.png)
Figure 5. Mean square error under different number of hidden layer nodes
图5. 不同隐藏层节点数下的均方误差
6. 结论
MBR处理污水是一个复杂的动态过程,本文建立了BP神经网络仿真预测模型用以预测膜过滤阻力,并且使用了粒子群算法优化BP神经网络的初始权值和阈值。实验结果表明,PSO-BP预测模型有着很高的精确度,图3所示的分别为过滤阻力的实际值、BP神经网络得到的预测值以及粒子群算法优化后的神经网络得到的预测值。通过观察发现使用PSO算法后的神经网络算法预测的结果精度更高,误差更小。本文的研究有一定的理论价值和实践意义,对MBR领域的研究有一定参考价值。