文章快速检索  
  高级检索
一种基于种群多样性的粒子群优化算法设计及应用
韩红桂1,2, 卢薇1,2, 乔俊飞1,2     
1. 北京工业大学信息学部自动化学院, 北京 100124;
2. 计算智能与智能系统北京市重点实验室, 北京 100124
摘要: 针对粒子群优化算法早熟收敛及搜索精度较低的问题,提出一种基于种群多样性的改进型粒子群优化算法(PDPSO).首先,利用种群多样性描述粒子的分布状态,获得了进化过程中粒子飞行的非线性特征;其次,基于粒子的种群多样性设计了自适应惯性权重调整策略,实现了粒子全局探索能力及局部开发能力的平衡;最后,利用标准测试函数检验PDPSO算法性能,并将PDPSO算法应用于污水处理过程能耗模型优化,实验结果表明:与标准粒子群及其他改进粒子群算法相比,PDPSO算法具有较高的搜索精度,并有效地避免粒子陷入局部最优;同时,PDPSO算法能够实现污水处理过程的优化,保证污水出水水质的前提下,降低了污水处理过程的运行能耗.
关键词: 种群多样性     自适应惯性权重     粒子群优化算法     污水处理运行能耗    
Design and Application of Particle Swarm Optimization Algorithm Based on Population Diversity
HAN Honggui1,2, LU Wei1,2, QIAO Junfei1,2     
1. College of Automation, Faculty of Information Technology, Beijing University of Technology, Beijing 100124, China;
2. Beijing Key Laboratory of Computational Intelligence and Intelligent System, Beijing 100124, China
Abstract: To overcome the premature convergence and low searching accuracy of the particle swarm optimization (PSO) algorithm, we propose a population diversity-based particle swarm optimization algorithm (PDPSO). First, we introduce the nonlinear characteristics of particles by the population diversity to describe the distribution state in the searching process. Second, we develop an adaptive inertia weight adjustment strategy to balance the global exploration ability and the local exploitation ability based on the population diversity of particles. Finally, we test the performance of PDPSO by using the standard test functions. We use the proposed PDPSO algorithm to optimize the energy consumption of the wastewater treatment process. Unlike the standard PSO algorithm and other improved PSO algorithms, the proposed PDPSO algorithm can avoid being trapped in the local optimum and achieve high accuracy, as demonstrated by simulation results. The proposed PDPSO algorithm can optimize the wastewater treatment process to reduce energy consumption within effluent water qualities.
Key words: population diversity     adaptive inertia weight     particle swarm optimization algorithm     energy consumption in the wastewater treatment process    

1 引言

粒子群优化(particle swarm optimization,PSO)算法具有计算简单、可调参数少、容易实现、较强的寻优能力等优势,已广泛应用于实际工程领域[1-2].然而基本的PSO算法容易陷入局部最优,出现早熟收敛现象,导致优化结果精度不高,因此对PSO算法的改进显得尤为重要[3].

在PSO算法中,全局探索能力和局部开发能力的平衡能够有效地避免粒子陷入局部最优和提高收敛精度[4-5]. Shi等提出惯性权重是平衡全局探索能力和局部开发能力的一个关键参数,因此设计合理的惯性权重机制是避免粒子陷入局部最优并提高搜索精度的关键[6-7]. Zhang等基于贝叶斯技术和柯西突变提出了一种自适应惯性权重PSO算法,用于实现粒子全局探索能力和局部开发能力的平衡,实验结果表明该算法在避免粒子陷入局部最优的同时提高了收敛精度[8]. Hu等提出一种自适应参数控制机制,自适应调整PSO算法的惯性权重和学习因子,实验结果表明该算法具有较好的鲁棒性[9].针对粒子搜索精度不高的问题,Yang等通过分析进化速度因子和聚合度对PSO算法搜索能力的影响,提出了一种动态自适应惯性权重PSO算法,该算法实现了动态调整个体粒子的惯性权重,并提高了收敛精度[10].以上几种方法虽然能够实现避免粒子陷入局部最优和提高收敛精度,但是计算过程比较繁琐,并且在研究中使用了多个未知参数,这些未知参数的取值给算法的设计带来了较大的困难.

为避免PSO算法改进过程中未知参数带来的影响,无未知参数的自适应惯性权重PSO算法得到了学者的广泛关注. Chauhan等通过分析个体最优位置和全局最优位置的关系,提出一种双指数自适应惯性权重PSO算法,实验结果显示双指数函数的快速增长性质加快了算法的收敛速度,在避免粒子陷入局部最优的同时提高了收敛精度[11]. Nickabadi等基于粒子的成功率提出一种自适应惯性权重PSO算法,获得了粒子飞行过程中惯性权重的非线性表达,实验结果显示该算法在求解单峰函数和某些多峰函数时,可以避免粒子陷入局部最优,并具有较高的收敛精度[12]. Taherkhani等通过分析粒子当前位置和历史最优位置的关系,提出了一种基于稳定性的自适应惯性权重PSO算法,该算法实现了按照不同维数分别调整惯性权重,同时避免了粒子陷入局部最优[13].上述研究都是基于粒子自身的寻优特点设计的自适应惯性权重算法,由于PSO算法是一种基于群体的优化算法,种群中粒子分布的变化也会影响粒子飞行的方向,因此在设计惯性权重PSO算法时,不能忽略种群因素的影响[14-15].从整个种群的分布来看,种群多样性的缺失也是导致PSO算法早熟收敛的关键因素[16-18]. Wang等通过多样性增强机制和邻域搜索算法提出一种混合PSO算法,该算法平衡了粒子的全局探索能力和局部开发能力,实验结果表明该算法在加强多样性的基础上提高了收敛精度[19]. Yan等针对PSO算法容易丧失多样性的问题,利用模拟退火机制提出一种混合离散PSO算法,保证了PSO算法的种群多样性,同时提高了收敛精度[20].以上研究通过考虑种群多样性信息对PSO算法做出改进,提高了收敛精度,但是没有考虑粒子自身的寻优特点,并且忽略了惯性权重对粒子搜索精度的影响,因此不能有效地避免粒子陷入局部最优.

综合考虑已有惯性权重调整策略的特点分析:首先,自适应惯性权重的调节公式既应该根据每个粒子的运动情况进行调节[10],同时还需考虑整个粒子群的种群多样性[20];其次,指数函数的非线性特征可以用来描述粒子的飞行信息[11];最后,调整公式中应该尽量避免未知参数的使用,同时减少计算的复杂度.文中提出的自适应惯性权重调整策略充分考虑已有方法的优缺点,进而能够更好地拟合粒子飞行过程.

为了更好地解决PSO算法的早熟收敛问题和提高算法的收敛精度,本文提出了一种基于种群多样性的PSO算法.首先,利用种群多样性信息描述粒子的分布状态,进而能够更好地获取粒子的非线性飞行特性;其次,基于粒子的多样性信息特点设计出一种自适应惯性权重方法,获得了一种基于种群多样性的改进型粒子群优化算法(PDPSO);最后,通过标准测试函数检验PDPSO算法的性能,实验结果表明PDPSO算法能够有效地避免粒子陷入局部最优,并提高了算法搜索精度;同时,PDPSO能够实现污水处理过程的优化,体现了该算法实际应用的有效性.

2 PSO算法 2.1 标准PSO算法

标准PSO算法的描述如下:粒子在一个D维的搜索空间中,粒子当前的位置、当前的速度和当前找到的最优位置等参数都被表示为D维的向量.对于整个粒子群来说,将会产生一个群体找到的全局最优解.在每一次的迭代过程中,粒子的速度和位置更新公式为

(1)
(2)

式中,ω是惯性权重,c1c2是学习因子,R1R2是[0, 1]之间的随机值,pi(t)是粒子在第t次迭代的历史最优位置,gd(t)是第t次迭代整个种群找到的全局最优位置,xi(t)是第i个粒子在第t次迭代的位置,vi(t)是第i个粒子在第t次迭代的速度.

2.2 粒子运动特性的分析

标准PSO算法中,粒子间通过相互学习寻找最优解,在粒子寻优过程中存在两大问题:首先,由于PSO算法优化过程中粒子聚集于自身历史最优位置和全局最优位置,算法比较容易陷入局部最优;其次,在粒子群多样性比较好的情况下,如何在继续保持粒子多样性的同时,尽可能提高最优解的收敛精度[21-23].

从PSO算法进化过程的参数和飞行特点考虑:一方面,惯性权重是调整速度变化的主要参量.惯性权重的取值可以影响粒子的全局探索能力和局部开发能力,是决定整个粒子群收敛性的一个重要参数;另一方面,种群多样性信息能够反映整个粒子群的分布情况,种群多样性的缺失会导致种群过早的收敛到某些局部最优点.因此,自适应PSO算法的设计将综合考虑惯性权重和种群多样性对算法的影响.

3 PDPSO算法 3.1 惯性权重机制设计

针对PSO算法中粒子寻优存在的早熟收敛和精度较低的问题,基于种群多样性能够反映群体中个体分布均匀程度的特点,提出了一种基于种群多样性的粒子群优化算法(PDPSO).

群体寻优过程中粒子聚集是导致精度较低的主要原因,而种群多样性信息能够反映粒子的聚集程度,其表达式为

(3)

式中,di(t+1)是在第t+1次迭代第i个粒子与其它粒子之间最小的欧氏距离,是所有的di(t+1)的平均值,n是粒子的个数,SP(t+1)是第t+1次迭代粒子群的种群多样性.

粒子群的多样性通过群体中个体分布的均匀程度来反映,种群多样性表达式通过计算所有粒子的相邻粒子之间的距离和群体的平均相邻距离之间的平均值作为反馈量,能够将整体的粒子群分布的均匀程度描述出来.该表达式直接利用了粒子之间的距离作为信息计算种群多样性,对于粒子分布的描述具有较高的准确性;同时,该公式将所有相邻粒子的距离都包含其中,加强了粒子信息的全面性.

种群多样性SP(t+1)取值的变化会反映整个群体中粒子的聚集情况,由式(3)的定义可以看出,SP(t+1)变大,群体中相邻粒子之间的距离值的差距会比较大,粒子分布不均匀,即种群多样性变差;反之,则认为粒子群的种群多样性变好.

当粒子群逐渐陷入局部最优时,主要表现特征为粒子逐渐向局部最优点聚集,粒子群的分布出现不均匀,从而种群多样性变差,即SP(t+1)>SP(t),直到粒子都非常靠近或者已经找到局部最优点,最后整个粒子群就会呈现不动的趋势,种群多样性也不再变化,即SP(t+1)=SP(t).如图 1(a)所示为粒子陷入局部最优分布图.假设粒子在第t次迭代已经陷入局部最优,则分析粒子的飞行信息如下所示:

(4)
(5)
(6)
(7)
图 1 粒子群在飞行过程中两种不同的种群分布情况 Figure 1 The two different distributions of the particle swarm during the flight process

式中,ε1ε2ε3ε4均为趋近于0的常数.粒子在第t次迭代陷入局部最优,由式(4)可知第t+1次迭代粒子的位移量会非常小,几乎为0.由式(1)可知要想使得粒子的位置发生偏移,跳出局部,粒子的速度必须要增大,由式(2)、式(5)和式(6)可知此时粒子速度的改变主要受到惯性权重的影响.当前种群多样性能够很好地反映粒子群的分布情况,当SP越大时,说明粒子多样性越差;当SP越小时,说明粒子多样性越好,因此需要通过种群多样性来增大惯性权重.

PSO算法的惯性权重调整公式采用每次迭代调整的合理性:首先,粒子进化过程中通过速度和位置的变化实现寻优,由式(1)可知,每一次寻优时,粒子位置的变化与速度有关,由式(2)可知,每一次寻优时粒子的速度主要受到参数惯性权重的影响,由此可知,每次迭代过程中,惯性权重的取值与粒子位移变化量密切相关;其次,PSO算法是由全局最优和局部最优引导进化方向,其计算速度相对较快,因此粒子每一次迭代的位移量对整个算法的收敛状况都比较重要,因此实现惯性权重的自适应调整是非常有必要的.

由于粒子飞行过程具有复杂的非线性特征,特定的非线性函数难以表示其飞行状态,因此基于种群多样性及指数函数调整粒子飞行过程中惯性权重的变化,从而更好地拟合粒子飞行过程.基于种群多样性SP(t+1)设计非线性函数B1(t+1),使粒子的惯性权重按照种群多样性信息增大,函数表达式为

(8)

以上分析可知,当SP(t+1)≥SP(t)时,自适应惯性权重策略被定义为

(9)

式中,ωi(t+1)是第t+1次迭代第i个粒子的惯性权重.

当粒子群的多样性逐渐变好,即SP(t+1) < SP(t)时,此时粒子群的分布更加均匀,为了使得粒子群能够在比较分散的区域内找到更优的个体最优解和全局最优解,此时需要降低粒子的飞行速度,使得粒子在各自的区域内加强其局部寻优能力,如图 1(b)为粒子在第t次和第t+1次迭代时多样性逐渐变好示意图.分析粒子的飞行信息为

(10)
(11)

由式(10)可知,第t+1次迭代粒子的位移量大小取决于第t+1次迭代粒子速度的大小.再由式(11)可知,第t+1次迭代粒子的速度会受到第t次迭代粒子惯性权重的影响.因此通过减小惯性权重使粒子速度下降,并且较小的惯性权重可以加强粒子的局部开发能力.

同样地,基于种群多样性及指数函数调整粒子飞行过程中惯性权重的变化,从而更好地拟合粒子的飞行过程.基于种群多样性SP(t+1)设计非线性函数B2(t+1),使粒子的惯性权重按照种群多样性信息递减,函数表达式为

(12)

以上分析可知,当SP(t+1) < SP(t)时,自适应惯性权重策略被定义为

(13)

在算法执行的后期,也可能会出现种群聚类而SP(t+1)值逐渐减小的情况,此时,整个粒子群都聚集在全局最优解附近,较小的惯性权重值会避免粒子位移量过大而跳过全局最优点,有利于粒子找到全局最优.

通过分析粒子飞行过程中群体的状态,基于群体飞行过程中的种群多样性信息来自适应调整惯性权重,从而设计基于种群多样性的自适应惯性权重粒子群(PDPSO)算法为

(14)

PDPSO算法是针对粒子易陷入局部最优和当种群多样性逐渐变好的情况下既保持种群多样性又增强其算法的收敛精度这两个问题而设计的自适应PSO算法.根据以上理论分析,PDPSO算法充分利用粒子的种群多样性信息来调整惯性权重,从而更好地平衡粒子飞行过程中的全局探索能力和局部开发能力能够有效的避免陷入局部最优,并且既保证了粒子多样性,又提高PSO算法的收敛精度.

3.2 PDPSO算法

基于以上分析,文中提出的PDPSO算法的具体流程:

步骤1    随机初始化粒子群中各粒子的位置xi、速度vi和惯性权重ωi.并将各粒子的初始位置设为当前历史最优位置pi,取粒子群pi中的最优值设为全局最优位置为gd,并且根据式(3)计算当前次迭代的种群多样性SP(1).

步骤2    计算每个粒子的适应度值.将每个粒子的适应度值与当前全局最优位置gd相比较,如果更好则更新gd;同时,将每个粒子的适应度值与当前历史最优位置pi相比较,如果更好则更新pi.

步骤3    根据式(1)和式(2)更新粒子群中粒子的位置xi和速度vi.

步骤4    计算粒子当前位置的适应度值,更新历史最优位置pi和全局最优位置gd;同时,计算当前次迭代的种群多样性SP,通过比较两次迭代的SP值的大小,利用式(14)计算出当前次迭代惯性权重的值.

步骤5    检查终止条件,若没有达到预设条件,则返回步骤3;若满足,则停止迭代,输出最优解.

PDPSO算法是一种基于种群多样性设计的自适应惯性权重调整方法,该算法能够避免粒子容易陷入局部最优和在保证种群多样性的前提下增强算法的收敛精度.在算法的执行过程中,通过种群多样性信息反映粒子群的多样性,综合分析粒子飞行过程中的非线性特征,获得的PDPSO算法具有较好的收敛速度及搜索精度.

4 测试函数仿真实验 4.1 实验设置

(1) 多目标测试问题

为了验证PDPSO算法的收敛效果,本文通过标准测试函数Sphere、Rotated hyper-ellipsoid、Rosenbrock、Rastrigin和Schaffer进行测试,将PDPSO算法与固定值惯性权重(Fixed)算法、随机值惯性权重(Random)算法、线性惯性权重(Linear)算法[9]、双指数自适应惯性权重(DESIWPSO)算法[8]、AIWPSO算法[9]的测试数据相比较.其中,测试函数的参数设置如表 1所示.

表 1 测试函数 Table 1 The test functions
测试函数 函数表达式 维数 搜索空间 X* f(X*)
Sphere 30 [-100,100]D [0,…,0] 0
Rotated hyper-ellipsoid 30 [-100,100]D [0,…,0] 0
Rosenbrock 30 [-5,10]D [1,…,1] 0
Rastrigin 30 [-5.12,5.12]D [0,…,0] 0
Schaffer 30 [-10,10]D [0,…,0] 0

(2) 实验参数

在比较实验中,各算法的种群大小设置为20,所有函数的最大迭代次数设置为10 000,每种算法在所有测试函数上均独立运行30次.所有的仿真实验都是在内存为4 GB RAM及64位Window 7操作系统的计算机中执行,并在Matlab 2014中实现.

4.2 实验结果及比较分析

图 2图 3分别是对测试函数f1f2的测试结果图. 图 2中6种算法的测试曲线对比,PDPSO算法的收敛精度最高.同样对比图 3中的测试曲线,PDPSO算法收敛速度较快,收敛精度最高. 图 4是对复杂的高维函数f3的测试结果图. 图 4中6种算法的测试曲线对比,PDPSO算法能够准确辨别搜索方向,具有较高的搜索精度. 图 5图 6分别是对复杂多峰函数f4f5的测试结果图. 图 5中6种算法的测试曲线对比,PDPSO算法能够较好地避免陷入局部最优,收敛精度最高. 图 6中6种算法的测试曲线对比,PDPSO算法能够较好地避免陷入局部最优,并且具有较快的收敛速度和较高的收敛精度.将PDPSO算法与其他5种PSO算法相比,从图 2~图 6可以看出,粒子避免陷入局部最优的能力和收敛精度都得到了提升.

图 2 测试函数f1的测试结果 Figure 2 The test results of the test function f1
图 3 测试函数f2的测试结果 Figure 3 The test results of the test function f2
图 4 测试函数f3的测试结果 Figure 4 The test results of the test function f3
图 5 测试函数f4的测试结果 Figure 5 The test results of the test function f4
图 6 测试函数f5的测试结果 Figure 6 The test results of the test functions f5

表 2中分别给出了6个标准测试函数对6种PSO算法测试的最优适应度值、平均适应度值和标准差.其中,加粗的数值代表最优结果值,通过实验结果对比综合分析可知,PDPSO算法收敛精度都比其它算法高.

表 2 不同PSO算法比较测试结果 Table 2 The test results of the different PSO algorithms
测试函数 维数 Fixed Random Linear[9] DESIWPSO[8] AIWPSO[9] PDPSO
Best 1.21E+05 1.39E+03 5.52E-19 7.68E-16 2.08E-15 1.91E-40
f1 30 Mean 1.35E+05 2.45E+03 2.92E-12 5.42E-10 2.15E-13 2.01E-30
Std 7.81E+04 3.59E+02 3.62E-11 1.32E-07 3.73E-11 5.15E-23
Best 1.12E+06 1.35E+03 7.12E-05 5.35E-10 2.91E-04 6.25E-30
f2 30 Mean 1.75E+06 3.05E+04 5.32E-03 1.25E-08 611.73 4.23E-23
Std 6.51E+05 6.72E+02 4.12E-02 8.83E-06 264.91 2.61E-20
Best 1.03E+06 1.55E+05 1.55E-04 2.35E-04 5.79 1.05E-04
f3 30 Mean 2.31E+07 6.21E+05 2.35E-02 1.45E-03 88.67 1.35E-04
Std 8.82E+05 7.93E+04 5.15E-01 2.01E-02 61.03 2.15E-02
Best 1.45E+03 1.06E+02 0.95 0.59 0.995 1.05E-15
f4 30 Mean 1.52E+03 1.48E+03 2.14 1.25 83.12 1.62E-12
Std 7.63E+02 1.01E+02 0.63 0.52 53.52 5.06E-08
Best 1.05E-05 1.25E-13 1.54E-07 1.74E-22 1.05E-05 1.09E-37
f5 30 Mean 1.35E-04 1.84E-10 3.21E-05 1.03E-15 112.32 1.76E-25
Std 5.48E-03 3.02E-08 5.12E-04 5.26E-12 2.61 2.11E-20
5 实际应用案例 5.1 实验设计

以国际水协会(IAWQ)提出的国际基准仿真模型BSM1为基础,将文中提出的PDPSO算法应用到污水处理过程的优化中.具体的实验步骤为:

(1) 综合考虑污水出水水质和能耗过高问题,利用PDPSO算法动态优化自适应回归核函数能耗模型,得到不同时刻能耗最小时的好氧区末端溶解氧和缺氧区末端硝态氮浓度的优化设定值.

(2) 执行底层PID控制实现对各个时刻优化设定值的跟踪控制,得到好氧区的溶解氧和缺氧区的硝态氮浓度的优化控制曲线.计算此时的出水污染物的值和能耗值,从而实现在污水出水水质达标的情况下降低能耗,从而解决能耗过高问题.

其中,自适应回归核函数能耗模型用于建立输入变量和输出变量之间的函数关系[24].这里的输入变量分别为溶解氧(SO)浓度、硝态氮(SNO)浓度、混合悬浮液固体(MLSS)浓度和氨氮(SNH)浓度,输出变量为能耗(EC).其模型表达式为

(15)

式中,y(t)是t时刻模型的输出,N是核函数个数;Wn(t)是t时刻第n个核函数连接权值;Kn(t)是t时刻第n个核函数,这里选择径向基核函数

(16)

式中,u(t)是t时刻核函数的输入,也是自适应回归核函数y(t)的输入;cn(t)是t时刻第n个核函数的中心;bn(t)是t时刻第n个核函数的宽度.输入变量约束范围:0.4 < SO < 4,0.4 < SNO < 3,0 < SNH < 4,0 < MLSS < 30.

其次,优化周期的选择是由于SO浓度在0.7 h后稳定在设定值,而SNO浓度也能够在1.5 h以内跟踪其设定值,所以确定该过程中优化周期为2 h,优化天数为7 d[25].

污水处理过程中,能耗(EC)主要是由曝气能耗和泵送能耗引起的,好氧区的溶解氧(SO)浓度和缺氧区的硝酸氮(SNO)浓度是影响硝化反硝化过程的重要参数.好氧区SO浓度过高,会导致进入缺氧区的SO增多,增大了缺氧区可快速降解有机碳的消耗,从而影响处理效果;另一方面,曝气耗费往往占污水处理厂总运行费用的50%以上,因此实现SO浓度的优化控制,对污水处理效果与运行费用均非常有意义.同样,维持合适的缺氧区SNO浓度,才能够高效利用缺氧区反硝化作用,有效减少泵送能耗.因此根据入水水质水量的变化动态优化SO浓度和SNO浓度的设定值,是提高污水处理系统处理效果、降低运行成本的一种可行性方法.

5.2 实验结果与分析

图 7图 8分别是好氧区的溶解氧和缺氧区的硝态氮浓度的优化控制曲线图. 图 7中红线所示的是溶解氧的优化设定值,蓝色的线是溶解氧的实际输出值. 图 8中红线是硝态氮的优化设定值,蓝色是硝态氮的实际追踪优化设定值的效果.由图 7图 8中可以看出,实际追踪控制值对优化设定值的追踪效果是比较好的.

图 7 好氧区溶解氧浓度的优化曲线 Figure 7 The optimal curve of dissolved oxygen concentration in aerobic zone
图 8 缺氧区硝态氮浓度的优化曲线 Figure 8 The optimal curve of nitrate nitrogen concentration in anoxic zone

表 3给出出水变量的出水水质约束值. 表 5给出PDPSO优化控制得到的出水水质和闭环控制得到的出水水质的比较结果. 表 4是PDPSO优化控制和闭环控制的能耗比较结果.由表 5中数据可知其出水水质不如闭环控制的效果好,但是符合排放标准.从表 4中的数据可以看出,优化控制和闭环控制相比,尽管EQ增大了1.144%,但是通过PDPSO优化控制得到的能耗值比闭环控制产生的能耗值减小9.39%,节能效果明显.

表 3 出水水质约束 Table 3 Effluent quality limits
出水变量 约束值
生化需氧量(BOD) < 10 g(BOD)/m3
化学需氧量(COD) < 100 g(COD)/m3
总氮(Ntot) < 18 g(N)/m3
氨氮(SNH) < 4 g(N)/m3
总固体悬浮物(TSS) < 30 g(SS)/m3
表 4 能耗比较 Table 4 Comparison of the energy consumption
EQ /(kg poll.units/d) EC /(kWh/d)
闭环控制 6 394.1 3 585.2
优化控制 6 467.3 3 248.7
注:EQ为向受纳水体排放污染物需要支付的费用[25];kg poll.units/d为千克污染物单元每天.
表 5 出水水质比较 Table 5 Comparison of the effluent water quality
BOD
/(g·m-3)
COD
/(g·m-3)
Ntot
/(g·m-3)
SNH
/(g·m-3)
TSS
/(g·m-3)
闭环控制 2.692 6 47.511 4 16.89 2.302 6 12.631 2
优化控制 2.664 7 47.625 14.95 3.76 12.622 4
6 结论

针对粒子群算法早熟收敛和搜索精度较低的问题,文中基于种群多样性提出了一种PDPSO算法.根据理论分析及仿真结果得到以下结论:

(1) PDPSO算法能够避免粒子陷入局部最优和在保证种群多样性的前提下,增强算法的收敛精度,解决了PSO算法的早熟收敛问题,提高了收敛精度.

(2) PDPSO算法通过种群多样性信息得到粒子的分布状态,并结合惯性权重能够平衡全局和局部搜索能力的特点,设计出基于种群多样性信息的自适应惯性权重算法.

(3) 利用PDPSO算法优化模型得到优化设定值实现跟踪控制的方法,能够在保证出水水质的前提下降低污水处理过程中的能耗,体现了该算法实际应用的有效性.

本文提出的基于种群多样性的粒子群优化算法,通过种群多样性信息获得粒子的分布状态,并分析粒子飞行过程中的非线性特性,能够有效地避免粒子陷入局部最优和在保证种群的多样性的前提下增强算法的收敛精度.与标准PSO算法和其它改进PSO算法相比,PDPSO算法较快的收敛速度和较高的收敛精度,并且能够实际应用到污水处理过程优化中.

参考文献
[1] Poli R. Mean and variance of the sampling distribution of particle swarm optimizers during stagnation[J]. IEEE Transactions on Evolutionary Computation, 2009, 13(4): 712–721. DOI:10.1109/TEVC.2008.2011744
[2] Liu H, Cai Z, Wang Y. Hybridizing particle swarm optimization with differential evolution for constrained numerical and engineering optimization[J]. Applied Soft Computing, 2010, 10(2): 629–640. DOI:10.1016/j.asoc.2009.08.031
[3] Chauhan P, Deep K, Pant M. Novel inertia weight strategies for particle swarm optimization[J]. Memetic Computing, 2013, 5(3): 229–251. DOI:10.1007/s12293-013-0111-9
[4] 许玉格, 宋亚龄, 陈立定. 基于人工免疫的污水处理系统自适应优化策略[J]. 信息与控制, 2015, 44(1): 99–103.
Xu Y G, Song Y L, Chen L D. A self-adaptive optimization strategy of wastewater treatment system based on artificial immune algorithm[J]. Information and Control, 2015, 44(1): 99–103.
[5] Bhattacharya R, Bhattacharyya T K, Garg R. Position mutated hierarchical particle swarm optimization and its application in synthesis of unequally spaced antenna arrays[J]. IEEE Transactions on Antennas and Propagation, 2012, 60(7): 3174–3181. DOI:10.1109/TAP.2012.2196917
[6] Del Valle Y, Venayagamoorthy G K, Mohagheghi S, et al. Particle swarm optimization:Basic concepts, variants and applications in power systems[J]. IEEE Transactions on Evolutionary Computation, 2008, 12(2): 171–195. DOI:10.1109/TEVC.2007.896686
[7] 张丽平, 俞欢军, 陈德钊, 等. 粒子群优化算法的分析与改进[J]. 信息与控制, 2004, 33(5): 513–517.
Zhang L P, Yu H J, Chen D Z, et al. Analysis and improvement of particle swarm optimization algorithm[J]. Information and Control, 2004, 33(5): 513–517.
[8] Zhang L, Tang Y, Hua C, et al. A new particle swarm optimization algorithm with adaptive inertia weight based on Bayesian techniques[J]. Applied Soft Computing, 2015, 28: 138–149. DOI:10.1016/j.asoc.2014.11.018
[9] Hu M, Wu T F, Weir J D. An adaptive particle swarm optimization with multiple adaptive methods[J]. IEEE Transactions on Evolutionary Computation, 2013, 17(5): 705–720. DOI:10.1109/TEVC.2012.2232931
[10] Yang X, Yuan J, Yuan J, et al. A modified particle swarm optimizer with dynamic adaptation[J]. Applied Mathematics and Computation, 2007, 189(2): 1205–1213. DOI:10.1016/j.amc.2006.12.045
[11] Chauhan P, Deep K, Pant M. Novel inertia weight strategies for particle swarm optimization[J]. Memetic Computing, 2013, 5(3): 229–251. DOI:10.1007/s12293-013-0111-9
[12] Nickabadi A, Ebadzadeh M M, Safabakhsh R. A novel particle swarm optimization algorithm with adaptive inertia weight[J]. Applied Soft Computing, 2011, 11(4): 3658–3670. DOI:10.1016/j.asoc.2011.01.037
[13] Taherkhani M, Safabakhsh R. A novel stability-based adaptive inertia weight for particle swarm optimization[J]. Applied Soft Computing, 2016, 38: 281–295. DOI:10.1016/j.asoc.2015.10.004
[14] Ratnaweera A, Halgamuge S K, Watson H. C. Self-organizing hierarchical particle swarm optimizer with time-varying acceleration coefficients[J]. IEEE Transactions on Evolutionary Computation, 2004, 8(3): 240–255. DOI:10.1109/TEVC.2004.826071
[15] Chatterjee A, Siarry P. Nonlinear inertia weight variation for dynamic adaptation in particle swarm optimization[J]. Computers & Operations Research, 2006, 33(3): 859–871.
[16] Wang H, Sun H, Li C, et al. Diversity enhanced particle swarm optimization with neighborhood search[J]. Information Sciences, 2013, 223: 119–135. DOI:10.1016/j.ins.2012.10.012
[17] Blackwell T M. Particle swarms and population diversity[J]. Soft Computing, 2005, 9(11): 793–802. DOI:10.1007/s00500-004-0420-5
[18] Chen D B, Zhao C X. Particle swarm optimization with adaptive population size and its application[J]. Applied Soft Computing, 2009, 9(1): 39–48. DOI:10.1016/j.asoc.2008.03.001
[19] Wang H, Sun H, Li C, et al. Diversity enhanced particle swarm optimization with neighborhood search[J]. Information Sciences, 2013, 223: 119–135. DOI:10.1016/j.ins.2012.10.012
[20] Yan Z C, Luo Y S. A particle swarm optimization algorithm based on simulated annealing[J]. Advanced Materials Research, 2014, 989: 2301–2305.
[21] Fernandez-Martinez J L, Garcia-Gonzalo E. Stochastic stability analysis of the linear continuous and discrete PSO models[J]. IEEE Transactions on Evolutionary Computation, 2011, 15(3): 405–423. DOI:10.1109/TEVC.2010.2053935
[22] Zhan Z H, Zhang J, Li Y, et al. Adaptive particle swarm optimization[J]. IEEE Transactions on Systems, Man, and Cybernetics, Part B:Cybernetics, 2009, 39(6): 1362–1381. DOI:10.1109/TSMCB.2009.2015956
[23] 林海金, 罗飞, 许玉格. 基于改进差分进化算法的污水处理过程优化控制[J]. 信息与控制, 2015, 44(3): 339–345.
Lin H J, Luo F, Xu Y G. Optimization control of wastewater treatment process based on improved differential evolution algorithm[J]. Information and Control, 2015, 44(3): 339–345.
[24] 韩红桂, 张璐, 乔俊飞. 一种基于自适应回归核函数的污水处理能耗模型[J]. 化工学报, 2016, 67(3): 947–953.
Han H G, Zhang L, Qiao J F. An energy consumption model of wastewater treatment process based on adaptive regressive kernel function[J]. Chinese Journal of Chemical Engineering, 2016, 67(3): 947–953.
[25] 史雄伟, 乔俊飞, 苑明哲. 基于改进粒子群优化算法的污水处理过程优化控制[J]. 信息与控制, 2011, 40(5): 698–703.
Shi X W, Qiao J F, Yuan M Z. Optimal control for wastewater treatment process based on improved particle swarm optimization algorithm[J]. Information and Control, 2011, 40(5): 698–703.
http://dx.doi.org/10.13976/j.cnki.xk.2017.0677
中国科学院主管,中国科学院沈阳自动化研究所、中国自动化学会共同主办。
0

文章信息

韩红桂, 卢薇, 乔俊飞
HAN Honggui, LU Wei, QIAO Junfei
一种基于种群多样性的粒子群优化算法设计及应用
Design and Application of Particle Swarm Optimization Algorithm Based on Population Diversity
信息与控制, 2017, 46(6): 677-684.
Information and Control, 2017, 46(6): 677-684.
http://dx.doi.org/10.13976/j.cnki.xk.2017.0677

文章历史

收稿/录用/修回: 2016-10-21/2016-12-20/2017-02-09

工作空间