1. 研究背景
污水处理是一个复杂的过程,涵盖物理、生物以及化学等多个方面。提升污水处理设施出水质量的预测精度对于优化整个处理流程具有重要的价值[1]。鉴于污水处理厂排放水质受多种因素影响,如进水量、温度及其它污染物浓度等,这些因素导致了水质特性呈现出高维度和非线性特征,使得传统的统计分析方法难以达到理想的预测效果。基于此背景,BP神经网络因其具备强大的非线性映射能力以及自适应、自我组织与学习的特点,在水质预测领域得到了广泛应用[2]。然而,在实际操作过程中,由于BP神经网络权重和阈值通常以随机方式初始化,这往往会导致训练速度较慢,并且容易陷入局部最优解的问题。为了克服这些问题,目前有两种主要策略被广泛采用:一是利用智能算法对BP神经网络的权重和阈值进行优化[3]。这种方法被认为是提高BP模型预测性能最有效的方式之一,其中遗传算法[4] [5] (GA)、粒子群优化(PSO)算法以及其他改进版或替代方案,如群居蜘蛛优化算法(SOS)、狼群算法(WPA)、回溯搜索优化算法(BSA) [6]、和声搜索(HS)、差分进化(DE)算法等,均显示出良好的应用前景;二是通过增加隐藏层的数量来增强模型的表现力。研究发现,相较于单一隐藏层结构,多隐藏层BP神经网络能够提供更强的数据泛化能力和更高的预测精度,成为改善BP神经网络性能的关键手段之一。不过值得注意的是,当前关于多隐藏层BP神经网络的研究大多集中在双隐层[7]和三隐层[2]架构上。
在探讨MBP神经网络应用局限性时,可以归纳出三个主要因素:首先,隐层节点数量的确定存在挑战。尽管文献等为单隐层BP神经网络提供了节点数设定的方法论,但对于多样化的预测任务而言,这些方法并不总是适用,实践中往往依赖于反复试验来最终决定隐层数量;而对于包含两个或更多隐藏层的网络结构,则缺乏广泛认可且具有指导价值的节点配置策略。其次,即使是在相同条件下运行MBP模型,因初始权重及阈值参数选取上的随机性也可能产生显著不同的预测结果,这成为阻碍该类型网络架构优化的重要障碍之一。最后,在采用智能算法如遗传算法(GA)和粒子群优化(PSO)对BP神经网络中的权重与阈值进行调优时,这些技术本身易出现过早收敛并陷入局部最优解的问题,从而难以实现理想的优化效果。
鉴于前述的分析,为了有效提升污水处理厂出水水质预测精度,并进一步改进鲸鱼优化算法(whale optimization algorithm, WOA)的寻优性能,同时验证MBP神经网络的预测能力,本文将从以下几个方面展开论述:首先,提出了一种结合拉普拉斯交叉算子(laplace crossover, LX)与模拟退火(simulated annealing, SA)算法来优化WOA的新方法——拉普拉斯–模拟退火鲸鱼优化算法(laplace simulated annealing whale optimization algorithm, LXSAWOA)。通过选取六个典型测试函数对LXSAWOA进行仿真测试,并将其结果与LXWOA、WOA两种算法的仿真效果进行了对比。其次,利用LXSAWOA来优化MBP神经网络中的隐藏层节点数,构建了包含2至5个隐藏层的不同版本LXSAWOA-MBP预测模型(分别为双隐层LXSAWOA-2BP、三隐层LXSAWOA-3BP、四隐层LXSAWOA-4BP及五隐层LXSAWOA-5BP预测模型),并与单隐层LXSAWOA-BP、LXSAWOA-SVM以及基于权重阈值优化的LXSAWOA-BP预测模型和普洱PSO-SVR预测模型进行了比较研究。以普洱某污水处理厂出水总氮含量预测为例进行了应用实例研究,旨在证明LXSAWOA-MBP模型应用于污水处理厂出水水质预测的有效性和可行性。
2. LXSAWOA-MBP预测模型
2.1. 鲸鱼优化算法
鲸鱼优化算法(Whale Optimization Algorithm, WOA)是由澳大利亚学者Mirjalili基于对鲸鱼捕食行为的研究而开发的一种新颖的智能优化方法。在WOA中,位置更新机制主要由三种不同的模拟行为组成:探索食物源、包围猎物以及通过螺旋路径接近目标。参考文献[8]对此进行了详细介绍,概述了基本WOA框架下的这三种关键策略。
1) 探索食物来源。鲸鱼优化算法通过选取群体中随机个体的位置来进行导航,以寻找食物资源。该过程依据式(1)更新每只鲸鱼的空间位置:
(1)
式中,
表示的是第
次迭代时鲸鱼所在的空间位置;
代表当前最优的鲸群空间位置;
用来衡量个体
更新其位置之前与种群内任意一个随机个体
间的距离;
和
作为系数变量被引入,其中,
,
,
,
是最大迭代次数;
是取自于[0,1]区间的一个随机数值。
2) 包围阶段。当人工鲸鱼定位到食物来源后,依据式(2)来调整它们在搜索空间中的位置:
(2)
式中,
表示当前种群中随机一个鲸鱼个体所在的空间位置。
3) 螺旋式接近。鲸鱼采取螺旋形的移动路径向当前表现最优的个体靠近,此过程通过引入螺旋式的数学模型来描述,并依据公式(3)更新鲸鱼的位置。
(3)
在此公式中,
代表了当前鲸鱼位置与其已知最优位置之间的间距;
则表示用于描述对数螺旋形态特征的常量值;而位于[−1,1]区间的随机数值
用来模拟自然选择过程中的不确定性因素;最后,[0,1]区间内的另一个随机变量
进一步增强了算法对于探索与开发之间平衡点搜索能力,表示[0,1]上的随机数。
2.2. 拉普拉斯交叉算子
尽管WOA展现出了优良的搜索性能,但在处理复杂优化问题时,仍存在易陷入局部最优解以及收敛速率较低的问题。为了解决这些问题,本研究提出了一种基于拉普拉斯交叉算子(Laplace crossover, LX)的改进方法。与传统的算术交叉相比,LX通过引入拉普拉斯分布密度函数作为系数来进行个体间的遗传信息交换。假设在某一进化周期内选取两个鲸鱼个体进行操作,则经由LX作用后将生成两个新的个体。表达见公式(4)。
(4)
拉普拉斯随机分布数
由以下规则创建:
(5)
式中,
、
分别代表了拉普拉斯分布的两个关键参数,前者定义了位置特性,后者则决定了分布的尺度,
则代表在[0,1]内的值。其中
,
。
2.3. 模拟退火思想
为了进一步提升鲸鱼优化算法(WOA)的局部搜索性能,本研究融入了模拟退火(SA)算法的概念。在鲸鱼优化算法执行完毕后,实施了一个额外的退火步骤。在此过程中,会生成一个新的鲸鱼群体,用于调整原有群体的位置。这种位置调整的概率可以表示如下:
(6)
在上述公式里,所指代的是经由模拟退火阶段生成的新鲸群个体的适应值;而另一项则
代表了当前鲸鱼个体的适应程度。
2.4. MBP神经网络
BP神经网络是当前众多神经网络架构中应用较为广泛的一种,依据其结构特征可区分为单隐层的BP网络(即三层结构)与多层BP网络(四层及以上)。在处理复杂的预测任务时,单隐层BP网络通常会面临精度不足及泛化性能差等问题。相比之下,多层BP网络不仅能够提供更高的预测准确性与更强的泛化能力,还能更有效地避免训练过程中陷入局部最优解的情况。由于篇幅限制,有关MBP神经网络的具体架构及其算法迭代过程,请参阅文献[8]。本研究基于Matlab神经网络工具箱开展,并运用LXSAWOA算法优化了newff()函数内各隐藏层的节点数量配置,旨在实现更佳的预测性能。
2.5. LXSAWOA-MBP预测实现步骤
LXSAWOA-MBP神经网络模型预测实现步骤可归纳如下:
首先,合理地将样本分为训练集与预测集,并采用公式(7)对每条序列进行标准化处理。接着,利用Matlab中的神经网络工具箱newff()函数来构建具有2到6层隐藏层的MBP神经网络模型。针对BP神经网络隐藏层节点数量为正整数这一特性,本研究决定采用fix函数来确定具体的节点数目。此外,为了保证实验的一致性,通过调用Matlab内置函数rand('state',0)设置所有MBP神经网络初始随机权重及阈值等参数相同。
(7)
式中,
为已经过归一化处理的数据值,
未经处理的原始数值,
和
分别指代数据序列里的最大值与最小值。
第二步为设定适应度函数。该函数用以衡量群体中个体的优劣程度,本研究选取了训练样本的均方误差作为这一指标,其定义如下:
(8)
式中,
代表第
个样本的实际观测值;
为第
个样本的模拟预测值;HL表示隐层中的节点数。
在第三步中,需确定LXSAWOA算法的最大迭代次数、群体规模、对数螺旋形状参数设为2、拉普拉斯分布的相关参数、模拟退火过程的初始温度以及温度降低系数。同时,初始化当前迭代计数,并设定鲸鱼种群中每个个体的空间位置。
在第四阶段,首先评估每个鲸群成员的适应度值,随后综合计算整个群体的适应度。接着确定模拟退火算法的初始温度
,并识别出当前种群内的最佳个体位置
予以记录。
步骤五迭代阶段。若
时,更新
、
、
、
和
;当
时,若
,利用式(1)更新鲸群空间位置;若
,则从当前群体中随机确定鲸群位置
,并利用式(2)更新鲸群空间位置;若
时,利用式(3)更新当前鲸群个体的空间位置。
步骤六为交叉运算阶段。在此过程中,依据公式(4),随机选取两头鲸鱼
和
个体,并对其进行交叉操作,从而生成新的鲸鱼个体。
在第七个步骤中,程序将进入模拟退火过程。此阶段首先创建一个新的鲸鱼群体,并随机设定每个个体的位置,随后评估整个新群体的适应度值。
在第八个步骤中,首先评估更新后原始群体的适应度。如果新群体中的鲸鱼个体显示出更高的适应度,则其位置将取代原有群体中相应个体的位置;反之,若新群体中的个体适应度低于原有群体,则依据公式(6)所定义的概率
来决定是否接受新群体中的鲸鱼位置。
步骤九 退温操作。
。
步骤十 令
。检查算法是否已满足停止标准。如果条件达成,则输出最佳个体的位置信息及其适应度值,随后结束算法;反之,则从步骤五开始重复执行直至步骤十。
步骤十一中,将展示最优适应度值及对应的最优个体位置,这实际上反映了MBP神经网络各隐藏层的最佳节点数量。随后,基于LXSAWOA算法优化得出的这些最佳节点数,将它们应用于相应的MBP神经网络模型之中,以对预测样本执行进一步的分析与预测。
3. 仿真验证
为了评估LXSAWOA算法的寻优性能,本研究选取了Sphere、Schwefel 2.22、Quartic、Griewank、Rastrigin以及Ackley这六个具有代表性的测试函数进行仿真验证,并将结果与LXWOA和基本WOA两种算法进行了对比。这些函数的变量范围分别为[−100,100]、[−10,10]、[−1.28,1.28]、[−600,600]、[−5.12,5.12]、[−32,32],所有函数均在30维空间内定义,其理论最优解均为零值。其中,Sphere、Schwefel 2.22及Quartic属于单峰类型,主要用于检验算法达到全局最优解的能力及其精度;而Griewank、Rastrigin和Ackley则为多峰函数,旨在考察算法摆脱局部极小值陷阱并有效探索整个搜索空间的能力。本次实验采用Matlab 2018a环境下的M语言实现三种优化方法,对于每一种基准函数重复执行了二十次独立运行,并通过平均适应度值与标准差两项指标来衡量各算法的表现(见表1)。实验设置包括:最大迭代次数统一设定为500次,群体规模固定为50个个体,对数螺旋形状系数设为2。在LXSAWOA中采用了拉普拉斯分布参数
、
,模拟退火过程起始温度设置为0.1,降温因子取0.99;对于LXWOA而言,同样使用了拉普拉斯分布参数
、
。至于其他未提及的具体参数,则遵循各自算法默认配置。
表1. 函数优化对比结果
函数 |
算法 |
平均值 |
标准差 |
函数 |
算法 |
平均值 |
标准差 |
Sphere |
LX-SA-WOA |
0 |
0 |
Griewank |
LX-SA-WOA |
0 |
0 |
LX-WOA |
7.06e−77 |
1.71e−76 |
LX-WOA |
0 |
0 |
WOA |
5.50e−76 |
9.39e−76 |
WOA |
1.51e−17 |
3.36e−17 |
Schwefel 2.22 |
LX-SA-WOA |
0 |
0 |
Rastrigin |
LX-SA-WOA |
0 |
0 |
LX-WOA |
1.71e−52 |
3.52e−52 |
LX-WOA |
0 |
0 |
WOA |
1.35e−51 |
2.86e−51 |
WOA |
5.17e−15 |
1.26e−14 |
Quartic |
LX-SA-WOA |
2.61e−04 |
1.50e−04 |
Ackley |
LX-SA-WOA |
8.88e−16 |
0 |
LX-WOA |
2.56e−01 |
1.48e−01 |
LX-WOA |
4.44e−15 |
2.97e−15 |
WOA |
4.20e−01 |
2.17e−01 |
WOA |
5.41e−15 |
3.30e−15 |
1) 针对单峰函数如Sphere和Schwefel 2.22,LXSAWOA在20次迭代中均达到了理论最优解0,其寻优精度明显优于LXWOA及基本版WOA。对于优化难度较高的凹形非线性函数Quartic而言,LXSAWOA展现出的寻优精度至少比其他四种算法高两个数量级,体现了该算法在寻找极值方面的优越性能。而在处理多峰且具有多个模态的Griewank函数以及容易陷入局部最优解的Rastrigin函数时,LXSAWOA与LXWOA两种方法同样能够稳定地达到全局最小值0。特别地,在面对结构复杂的Ackley函数时,LXSAWOA能够在连续20次运行过程中保持接近于理论最优解8.88e−16的结果,这不仅证明了它拥有超越LXWOA及其基础版本的强大全局搜索能力,还表明了其具备有效避免局部极小值陷阱的能力。
2) 通过融合拉普拉斯交叉算子与模拟退火算法的理念,LXSAWOA在克服标准鲸鱼优化算法易于陷入局部最优解及搜索效率低下的问题上表现出色,显著提升了算法平衡探索与开发的能力。实验结果显示,在六个测试函数上的表现中,除了《Griewank》和《Rastrigin》之外,LXSAWOA相较于LXWOA和基础版WOA展现出更优的寻优精度与全局搜索性能。
4. 应用实例
1) 数据来源。本研究选取了普洱市江城县污水处理厂的出水总氮预测作为案例分析对象,从实际监测获取的数据中挑选了24组记录作为分析样本。其中,前18组数据被用作训练集,而剩下的6组则用于验证预测模型的有效性。经过分析,发现有八个因素对总氮浓度的预测具有显著影响,分别是:进水量Qin、生物反应池内的温度T、进水中的生化需氧量BODin、化学需氧量CODin、总氮浓度TNin、氨氮浓度NH3-Nin、混合液悬浮固体浓度MLSS以及挥发性悬浮固体浓度MLVSS。基于此,本文决定采用上述八个参数作为关键变量来估计出水总氮水平。
2) 关于参数设定。对于LXSAWOA,其最大迭代次数被确定为50次,而其他相关参数则保持不变;至于单隐层BP与MBP神经网络模型,则采用logsig作为隐藏层的传递函数,purelin用于输出层,训练过程选用traincgp方法,学习率设定为0.01,目标误差同样设为0.01,并且最大训练轮次限制在100次以内,隐藏层节点数量的探索区间是从1到20;基于权重阈值优化的LXSAWOA-BP神经网络模型中,权重和阈值的搜索范围限定在−1至1之间,隐藏层含有11个节点,此外该模型的其余参数配置与前述单隐层BP及MBP神经网络相同;针对LXSAWOA-SVM模型,惩罚系数的取值范围介于0.1到1000之间,核函数参数亦位于0.1至1000的区间内,不敏感损失系数设置在0.001至1的范围内,同时交叉验证参数设定为5。
3) 模型构建及预测。基于前述分析,分别建立了包含2至5个隐藏层的LXSAWOA-MBP神经网络总氮预测模型,每个模型均采用8个输入节点和1个输出节点的设计方案,具体包括LXSAWOA-2BP、LXSAWOA-3BP、LXSAWOA-4BP以及LXSAWOA-5BP四种不同层次结构的预测模型。此外,还构建了一个单隐层的LXSAWOA-BP模型,一个通过权重阈值优化过的LXSAWOA-BP模型,以及一个LXSAWOA-SVM模型。为了评估这些模型的表现,选取了平均相对误差绝对值(MRE)、最大相对误差绝对值(MaxRE)及均方根误差(RMSE)作为评价标准。利用这八种模型对实例中的总氮含量进行了训练和预测,并将其结果与实际测量值进行对比,详见表2。
表2. 实例总氮实际出水水质及各模型预测结果对比
模型 |
MRE/% |
MaxRE/% |
RMSE |
网络结构 |
参数设置 |
LXSAWOA-2BP模型 |
1.45 |
4.35 |
0.5660 |
8-18-10-1 |
LXSAWOA最大迭代次数50;MBP隐藏层传递函数logsig;输出层函数purelin,训练函数traincgp,学习率0.01,目标误差0.01,最大训练轮次数100,隐藏层节点数量搜索范围[1,20] |
LXSAWOA-3BP模型 |
1.59 |
2.27 |
0.6345 |
8-15-14-15-1 |
LXSAWOA-4BP模型 |
1.38 |
4.25 |
0.5617 |
8-6-8-2-9-1 |
LXSAWOA-5BP模型 |
1.76 |
4.94 |
0.6213 |
8-6-7-7-5-7-1 |
单隐层LXSAWOA-BP模型 |
4.89 |
11.21 |
1.5641 |
8-16-1 |
权阈值优化LXSAWOA-BP模型 |
1.89 |
6.21 |
0.7130 |
8-11-1 |
LXSAWOA最大迭代次数50;BP权重和阈值搜索范围[−1,1],隐藏层节点数11,其他参数设置同上 |
LXSAWOA-SVM模型 |
2.07 |
6.33 |
0.7653 |
/ |
LXSAWOA最大迭代次数50;SVM惩罚系数、核函数参数搜索范围[0.1,1000],不敏感损失系数搜索范围[0.001,1],交叉验证参数设定为5 |
PSO-SVR模型 |
1.84 |
6.41 |
0.6939 |
/ |
PSO最大迭代次数50;其参数设置同LXSAWOA-SVM模型 |
多元线性回归 |
2.82 |
/ |
1.0935 |
/ |
Matlab软件模拟实现 |
BP神经网络 |
5.97 |
/ |
2.0231 |
8-5-1 |
人工调试确定隐藏层节点数 |
依据表2可以得出以下结论:
1) 当LXSAWOA-MBP神经网络模型的隐含层数设置在2至5层之间时,该模型对实例中后六组总氮浓度预测结果展示出较高的准确性。具体而言,其平均绝对误差百分比介于1.38%到1.76%之间;最大相对误差绝对值范围则是从2.27%至4.94%;而均方根误差则落在0.6345%~0.5617%区间内。相较于单隐层LXSAWOA-BP模型、通过权阈值优化后的LXSAWOA-BP模型、LXSAWOA-SVM模型以及文献[1]中提到的PSO-SVR等其他模型,此模型展现出更优的预测表现与更强的泛化能力。这一发现证明了LXSAWOA算法对于MBP神经网络内部结构(特别是隐层节点数量)优化的有效性,为污水处理过程中总氮含量预测及其他类似领域研究提供了有价值的参考依据。
2) 相较于单隐层LXSAWOA-BP模型,LXSAWOA-MBP神经网络通过增加隐层数量,在预测精度上实现了64.0%至71.8%的显著提升,这证明了增强模型结构复杂度能够有效加强其预测准确性及泛化性能。然而,就本案例而言,随着隐藏层数量的增长,并未观察到MBP神经网络预测表现有特别明显的改进。
3) 根据本文提出的多种模型的预测结果分析显示,LXSAWOA-2BP与LXSAWOA-4BP模型表现最佳,其预测值的平均相对误差绝对值不超过1.5%;紧随其后的是LXSAWOA-3BP、LXSAWOA-5BP及经权阈值优化后的LXSAWOA-BP模型,这些模型的平均相对误差绝对值控制在2.0%以内;相比之下,单隐层结构的LXSAWOA-BP模型预测效果最不理想。
4) 从网络结构优化的结果分析来看,LXSAWOA-MBP神经网络各隐层节点数量的变化显得缺乏明确规律。这表明,在确定LXSAWOA-MBP神经网络的隐层节点数时,除了采用智能算法进行优化外,通过人工尝试的方法来寻找最优网络配置将是一项相当复杂且耗时的任务。
5. 结论
1) 本文提出了一种结合拉普拉斯交叉算子与模拟退火算法的优化版鲸鱼优化算法,即LXSAWOA。为了验证该算法的有效性,选取了六个具有代表性的测试函数进行仿真分析,并将结果与LXWOA及原始WOA进行了对比。实验结果显示,LXSAWOA在搜索性能上优于LXWOA和基本WOA,展现出更高的寻优精度以及更强的全局探索能力。
2) 本研究提出了一种利用LXSAWOA算法优化MBP神经网络隐层节点数量的预测方法。该方法通过LXSAWOA算法确定最优的MBP神经网络结构,并详细介绍了基于此优化过程的MBP神经网络模型构建流程及其实施步骤,从而拓宽了MBP神经网络的应用范围。
3) 建立了隐层数量在2至5层范围内的LXSAWOA-MBP神经网络预测模型。对比单隐层的LXSAWOA-BP模型,增加隐层数后的LXSAWOA-MBP神经网络模型展现出了显著提升的预测性能,这说明通过增加隐藏层的数量能够有效增强BP神经网络模型的预测精度及其泛化能力。然而,在本案例中观察到,随着隐藏层数目的进一步增加,MBP神经网络模型预测效果的改进并不特别明显。
4) 基于实例预测结果的分析显示,LXSAWOA-MBP神经网络模型的平均相对误差绝对值位于1.38%到1.76%之间。相较于单隐层LXSAWOA-BP模型、采用权阈值优化技术的LXSAWOA-BP模型、LXSAWOA-SVM模型以及PSO-SVR等其他模型而言,该模型展现出了更高的预测精度。这表明LXSAWOA-MBP不仅具有较高的预测准确性,还具备较强的泛化性能。因此,这种模型及其相关方法可以为污水处理厂出水水质预测以及其他类似领域的研究提供有价值的参考。
NOTES
作者简介:徐学飞,男,现任云南省水利厅调度中心(厅信息中心)高级工程师,长期致力于水利网络安全与信息化建设、全省水利信息化规划与推进、智慧水利发展战略、数字孪生水利顶层设计及防洪减灾、水文情报预报等领域的研究与实践工作。Email: 512726499@qq.com