(贵州省贵阳市贵州大学)
摘要本文对多目标粒子群算法的原理和数学模型做了基础记述,然后对多目标粒子群算法做了仿真测试,并使用加速因子对其线性变化进行了优化,这不仅保证了粒子群算法初步搜索时能在比较大的范围内迅速找到自身最优位置(pbest),而且利用加速因子的权重变比变化促使后期粒子群进行严格的局部搜索以便于去找到gbest位置也就是全局最优位置,使其集中向Pareto最优前沿聚集。使得在仿真结果中使用拥挤距离删除后得到的图形的最优前沿更加均匀平滑。最后利用前面所介绍的粒子群算法去解决环境经济调度优化问题,介绍环境经济调度原理以及其数学模型,在其多个不等式和等式约束下做了仿真测试,得到的数据与文献做了详细对比,表明粒子群算法在解决环境经济调度的问题中具有很大的可行性和有效性。
关键词:环境经济调度,粒子群算法,加速因子
1多目标粒子群算法及其仿真
1.1多目标粒子群算法概述
在当今学术研究和其他领域工程优化的问题中,针对许多多目标优化问题来说,每个优化目标都不可能达到自身所期待的最优值,一个目标值的最大优化往往是牺牲另一个目标值来换取的,因此不可能使得所有的目标同时达到最优,所以算法获取的解是一组各个目标值所折衷的解集,称之为Pareto最优解或者最优非劣解[1]。在存在有多个目标需要同时兼顾优化的所有解集中,每一组解都有一个属于自己的偏重,而不是每个解集都满足所有目标向量的最优。
1.1.1多目标优化的数学概括
多目标优化问题既是多个标准优化问题,具有很强的普遍性,对其的研究也在不断更近。其他研究表明一个具有n个决策变量和多个目标优化问题可以用下面公式表示:
则称b劣于a。在所有区域内没有占优的决策向量称之为pareto最优解。而所有决策向量集合便是最优非劣解集,既是在环境经济调度时非劣解的求取非常重要。
1.1.2多种方法解决多目标优化问题
随着各个领域的科技技术迅猛发展,多目标优化算法方式也越来越齐全,方法越来越容易操作且效果越来越突出。概括起来多目标算法由易操作的智能优化算法和传统的优化算法两部分组成。
1、在以往的优化方法中,其核心都是将多个目标经过不同的手段转化为一个目标进行求解计算优化,主要的方法有线性规划法、价格因子法、加权法等。
2、随着技术发展和人类发现,现今社会解决多目标问题的方法更是层出不穷,不仅比较贴近实际情况而且比较柔性化,主要算法有进化算法(EvolutionaryAlgorithm,简称EA)、粒子群算法(ParticleSwarmOptimization,PSO)等。
不管在多目标优化问题中研究者采用的是何种研究方式何种分析方法,每种算法都有自己的优点和不足,需要作者根据实际情况制定相关办法,在本次设计研究中粒子群算法不早熟,不会陷入具有极值等特点更适合此次研究。
1.2多目标粒子群算法仿真
1.2.1仿真测试函数
表1-1测试函数
这里采用上面面测试函数进行仿真,多目标粒子群算法(IMOPSO)的操作步骤如下:
给多目标粒子群算法的迭代次数、控制参数、以及群体规模进行初始化;
仿真出各个粒子所表示的最佳适应位置;
根据最优非劣解集最优概念寻找出各个粒子的自身极值;
挑选种群中所有的非劣解集存入外部档案库,删减线密度最小的所有非劣解;
迭代下一次,将粒子的速度和位置进行下一次迭代;
判断是否达到设置的最大迭代要求的次数?是,那么输出档案库所有负荷算法的解集;否,转到步骤2。
1.3改进多目标粒子群算法
使用修剪算子的外部截断性能对粒子群的非劣解集的外部解集截断,修剪算子的外部截断性能很好保证粒子群算法外部解集的均匀性和平滑性。目前拥挤距离策略是当今应用比较广泛,比较实用的外部解集保持策略。
令粒子i的拥挤距离为:
上式中f1,f2表示两个子目标,P[i]disdance表示粒子i的聚集距离,P[i].m表示粒子i的函数值。
用下面方法保证拥挤距离策略可以截断粒子群外部解集:
令p[i]disdans=0,既是将每个粒子的初始拥挤距离设置为0,然后对所有目标列出序号排序,采用(1-1)式对所有粒子的拥挤距离进行计算;
将边界的值设置为最大值保证粒子能进行下一次迭代,搜索并淘汰所有解集中拥挤距离最小的粒子,
获取新一次迭代的粒子的拥挤距离;(在迭代时,将每个目标的最近距离进行标记)
当淘汰的粒子满足预定要求后终止该算法。
因为使用了动态更新算子对粒子群算法进行了改进,当淘汰每个粒子时都会进行一次相邻粒子的拥挤距离的新计算,进而有力的保证拥挤距离能正确细致的表现每个粒子间的亲密度。拥挤距离图形如下图1-1[2]:
1.4多目标算法存在的问题与修正
由以上的图形来看,这个测试函数的最优前沿还存在一些问题,就均匀性来说,这个程序还可以继续进一步优化。这种改进可以从每次迭代所得到的全局最优开始,全局最优的选取在本文中选择的是从所得到的非劣解集中任意选择一个,而作为改进可以选择在计算过拥挤距离后,把每次迭代后得到拥挤距离最大的那个组解当做全局最优。把拥挤距离最大的那个解当成是全局最优可以使其搜索时从局部最稀疏的地方再开始更新。使该全局最优曲线更加均匀。
2利用粒子群算法解决环境经济调度问题
2.1环境经济调度数学模型分析
在环境经济调度中,以往电力系统调度追求的目标仅仅是将经济指标作为单一目标进行优化,而现今不同的是电力系统环境经济调度不止追求其经济性,更要注重调度问题中可能带来的环境污染,所以将环境污染度最小和调度的经济最优化作为优化目标,在负荷平衡,有功平衡和机组发电量等多个不等式和等式约束下求取目标值的最优解
2.1.1目标函数
不仅考虑经济指标而且也要将电力系统污染思考在内,在此处采用发电机有功出力的二阶多项式来描述电力系统消费的总的费用或者燃料消耗,既是:
上式中,g与h分别表示上节提到的等式和不等式约束。
2.2电力系统环境经济调度实现多目标优化
在上面表述的环境经济调度数学模型的优化问题中分析得出其经济调度既要在满足负荷需求下电力系统能稳定运行,又要保证获取最小的经济成本和对环境污染达到最小,从上面式子(2-1)(2-2)可以看出,在多个条件约束下,两个式子表述的是并不一致的量纲的函数,所以需要转化到同一个量纲今次那个问题求解。
2.2.1环境经济调度问题的模型仿真
在文献[3]中,文献采用的算法所使用的机组一共有六台发电机组,需要生产的总电量为283.4MW。下表表示的是所有机组需要满足的燃料花费系数以及最高的发电量和最低的发电量:后面本文数据将会与此文献数据进行对比分析。
2.2.2环境经济调度优化仿真
针对具有多个优化目标的环境经济调度问题可以先从简单的基础思考,先考虑气体污染物的排放对环境污染的问题。我们可以把气体排放等效于资金花费,如此在解决多目标问题的时后就可以将燃料花费和污染花费两个加权相加。但是这种方法在计算权值时不能得到燃料花费和污染气体排放量的准确转化权值比,所以我采用利用多目标粒子群算法对其进行优化。作为一个多目标优化问题,加上上面多目标粒子群算法的仿真测试表明。这里有两个目标函数,一个是燃料花费,一个是污染气体的排放。而等式约束和不等式约束也应该加入到程序当中去对所更新的粒子进行约束。在全局最优和自身最优的选取上采用同样的方法,由于多目标问题不存在绝对唯一的最优解,所以先求出它的非劣解集。并对这些解利用拥挤距离进行删除,这些解所组成的归档集可以找到燃料花费的最小值或者气体排放量的最小值。
通过实际问题与测试函数的之间的比对,简要概括粒子群算法在环境经济调度的基本原理。这是个六维的问题,六台发电机考虑产生总的花费做为一个粒子,这个粒子有两个目标函数即燃料花费目标函数和污染气体排放目标函数,分别采用公式(2-1)和(2-2)进行计算,也就是说有两个适应值。因为同时有不等式和等式约束两个条件,所以在初始化的时候要对每个粒子进行限制。每次随机产生的粒子需要做这个工作六台发电机随机产生的功率要满足条件(2-5),也就是不等式约束,而其总共要产生283.4MV的电量也就是等式约束,而在等式约束也要把网络损耗考虑进来。
详细操作步骤如下:
在系统中制定系统参数,并给定每一个变量的上限和下限;
给系统中的每个微粒随机给予一个原始的位置以及速度;
用B系数法迭代求取种群中所有粒子的网损;
对每个微粒的自身的最佳位置按照目标函数进行测试看是否满足函数值要求;
将所有的满足函数值要求的非劣解集放进一个数据集合A中;
对粒子进行初始化迭代得到找到粒子自身最优值和局部的最优值;
反复进行迭代获取新一代的粒子
产生的粒子判断是否满足条件约束,满足约束的粒子记录该粒子并计算其网络损耗;
将粒子迭代出的新的自身最优值(适应值)粒子自身作比较的到的所有非劣解集放入集合B中;
把集合B中的非劣解集与上一代中的非劣解集作比较,得到的新的非劣解集放进集合C中,并将集合C中数据放进A中以方便比较;
实用拥挤距离删除策略对得到的所有解集进行删除;
判断迭代次数是否满足设置值,如果达到最大值,则集合A中的所有非劣解集;否则,转到步骤二继续循环。
2.2.3多目标粒子群算法解决电力系统环境经济问题
在具有多个目标的环境经济调度的问题优化中比较常用的优化方法是采用加速因子的方法和利用惯性权重对目标函数进行加权。用这些方法来确定多个目标的优化比重。
惯性权重法(ω)的特点在于能加快粒子群算法的收敛速度。ω表示比例因子,与迭代的前一次速度相关,随着ω的变化粒子群的搜索速度也跟着变化,粒子群进行全局搜索时ω的值相对较大,需要迭代的次数越来越少时,ω值越来越小,这就保证了粒子群能进行快速的局部搜索。由于ω值的变化促使粒子群的搜索能力能根据自身情况进行调节,者不仅加快了粒子群算法(PSO)的收敛速度,保证算法产生早熟现象陷入局部极值。该算法越来越收到广大学者的青睐和应用,是一个随着时间变化调整搜索速度的多目标粒子群算法(时变多目标粒子群算法)(TV-MOPSO)[3],其数学表达式如下:
从上面两个表格数据看出污染排放以及调度的花费的值都比选用文献中稍微低一点。表明此次设计的有效性和真实性。
2.2.4存在的问题和改进
从图形描述中得到的结果表明图形的最优前沿不平滑,也不够均匀,就这个问题分析,还有很多的不足,不管是从实际问题还是从粒子群算法的仿真来说,都可以从下面三个方面进行改进:
考虑到实际问题时在燃料花费的目标函数中应该考虑发电机发电时的阀点效应
在全局最优的选取时应该选取拥挤距离最大的点,这样有利于最优前沿的均匀性[4]。
对于这样的实际问题,可以看到粒子群算法容易陷入局部收敛,也就是常说的早熟现象,所以可以采用一些混合算法对粒子群算法进行优化[5]。
2.3电力系统环境经济调度的展望
此文中我只对电力系统优化设计做了极其小的部分分析,我只把成本的最低和对环境的污染最小作为目标函数,但是在实际问题中还需要关注更多的其他因素制约。
电力系统环境经济调度的问题存在多种多样的复杂性。在电力系统正常工作是,我们可以把有功网损最小,对环境污染最小,或者煤耗最小等作为我们的优化目标。而假设在电力系统发生故障后,怎样减少故障所带来的损失、怎样预防故障可能带来的灾害,以及怎样减小节点电压或者如何保证负荷能继续正常工作更具有探讨的意义。
参考文献:
[1]郑向伟,刘弘.多目标进化算法研究进展[J].计算机科学,2007,34(7):187-192.
[2]苏鹏,刘天琪,赵国波.基于改进粒子群算法的节能调度下多目标负荷最优分配电网技术学报,2009.
[3]李彩华,郭志忠.电力系统优化调度概述(I)一经济调度与最优潮流.电力系统及其自动化学报第14卷第2期2002年4月.
[4]叶彬,张鹏翔,赵波,曹一家,多目标混合进化算法及其在经济调度中的应用,电力系统及其自动化学报,2007年第19卷第二期.
[5]公茂果1,2+,焦李成1,2,杨咚咚1,2,马文萍,进化多目标优化算法研究ISSN1000-9825,CODENRUXUEWJournalofSoftware,Vol.20,No.2,February2009,pp.271-289.
作者简介:杨冬冬,男,贵州省毕节市人氏,2017年毕业于贵州大学,本科。