混沌量子进化算法

2024-07-06

混沌量子进化算法(共7篇)

混沌量子进化算法 篇1

0 引言

量子计算是量子力学和信息科学相融合的产物, 自1994年Shor提出第一个量子算法和1996年 Grover提出随机数据库搜索的量子算法, 量子计算以其独特的计算性能迅速成为研究的热点, 引起了国际学者的广泛关注, 量子遗传算法是一种基于量子计算原理的概率进化算法, 现阶段的各类量子遗传算法, 大部分是选用基于量子位测量的二进制编码方式, 通过改变量子比特相位来完成其进化的。事实上, 由测量染色体上的量子位的状态来产生所需的二进制解, 会有极大的盲目性和不确定性。因此, 在群体进化的同时, 个体必然会产生退化的现象。此外, 现阶段的所有量子进化算法其量子态依旧是在实域Hilbert空间单位圆上的坐标描述, 仅有1个可变量, 因此量子特性在很大程度上被削减。

在实际的物理体系中, 量子是在空间运动的, 传统上采用在平面坐标上的单位圆描述其动态特性, 必定不利于更加客观、全面、生动地描述其量子的动态行为。为此, 本文提出一种基于量子位Bloch球面坐标的量子进化算法 (Bloch Quantum Evolutionary Algorithm, 简称BQEA) .。

1 BQGA的基本原理

1.1 BQGA量子染色体的三链基因编码方案

在量子计算中, 最小的信息单位是量子位, 即量子比特。一个量子比特可描述成

undefined

其中, undefined和undefined是复数, undefined和undefined分别代表量子位处于|0〉或|1〉的概率, 在Bloch球面上, 一个点p可由两个角度θ和φ来决定, 如图1所示。

由图1可知, 任何一个量子位都与Bloch球面上的一点对应。所以, 量子位可用Bloch球面坐标表示成|φ〉=[cos φsinθ sin φsinθ cosθ]T 。在BQEA中, 直接使用量子位的Bloch球面坐标编码。设pi是种群中的第i条染色体, 则BQEA的编码方法为:

undefined

其中, φi1=2π×rnd, θij=π×rnd , rnd为 (0, 1) 之间的随机数;i=1, 2, …, m, j=1, 2…, n, m是群体规模;n是量子位数。在BQEA中, 将量子位的3个坐标看成3个并列

的基因, 每条染色体包括3条并列的基因链, 分别是X链、Y链、Z链, 而每条基因链代表1个优化解。所以, 每条染色体同时代表搜索空间中的3个优化解:

undefined

分别将pix、piy、piz定义成X解、Y解、Z解。

1.2 解空间的变换

BQEA的优化限定在单位空间In=[-1, 1]n中, 所以在优化具体问题时, 要进行单位空间与优化问题解空间之间的变换。种群中的每条染色体包括n个量子比特的3n个Bloch球面坐标, 运用线形变换, 将这3n个坐标由n维单位空间In=[-1, 1]n映射至优化问题的解空间Ω, 每一个坐标对应着解空间中的一个优化变量。将第i条染色体pi上第j个量子位的Bloch球面坐标记为[xij, yij, zij]T, 那么对应的解空间变换公式为:

undefined

其中, i=1, 2, …, m, j=1, 2, …, n。

1.3 量子染色体的更新

量子染色体的更新是经过量子旋转门更新量子位的相位来完成的。量子位相位旋转的作用在于使当前种群中每一个染色体逼近当代最优染色体, 但在这种逼近过程中, 也有可能产生出更好的当代最优染色体, 从而使群体不断得到进化。因此, 提出了一种新的量子旋转门, 形式为:

undefined

undefined

可知, U的作用使量子位的相位旋转了Δφ和Δθ。

φ和Δθ的大小通常根据具体问题的变化而变化, 如果它们取值过小, 就会降低算法的优化效率;如果取值过大, 就会无法得到全局最优解或者出现早熟现象。对于这一缺陷, 提出了改善方法。首先找出目标函数在搜索点 (单个基因链) 处的变换趋势, 然后根据目标函数的变换趋势而改变转角步长的大小。如果搜索点处目标函数变化率比较大时, 适当减小转角步长, 反之适当地加大转角步长。提出如下转角步长函数为:

undefined

其中, Δθ0、Δφ0为迭代值, ∇f (Xundefined) 为评价函数f (X) 在点Xundefined处的梯度, ∇fjmax和∇fjmin分别定义为:

undefined

其中, Xundefined (i=1, 2, …, m, j=1, 2, …, n) (为解空间中的变量, 可根据当前全局最优解的类型在解空间变换的结果中确定是Xundefined、Xundefined、Xundefined三者之一, x0、y0、z0是当前搜索到的全局最优解中某量子位在Bloch球面上的坐标, x1、y1、z1为某个当前解中相应量子位的Bloch球面坐标。

1.4 量子染色体的变异

本文构造如下变异算子:

undefined

V的作用是实现量子相位沿Bloch球面的旋转, 在这种旋转中, 每条染色体不与当代最优染色体比较。且旋转幅度比较大, 所以有助于突破早熟收敛, 增加种群的多样性。

2 算法描述

实现上述过程的步骤如下:①初始化种群。将当前代数t置为0, 根据式 (2) 随机生成由m条染色体构成的初始种群Q (t) ;设定量子旋转门的转角大小为|Δφ|=φ0和|Δθ|=θ0;设定最大进化代数为Max-gen;②变换解空间。把每个染色体代表的3个近似解, 从单位空间In=[-1, 1]n映射至解空间Ω, 得出近似解集X (t) ;③计算所有3m个近似解的适应度, 得出当代最优解BX和当代最优染色体BC;④让BX作为全局最优解GX;让BC作为全局最优染色体GC;⑤在循环中, 令t←t+1, 经更新和变异Q (t-1) 生成新群体Q (t) ;⑥ BQGA在单位空间的优化结果Q (t) 通过解空间变换后得出优化问题的解X (t) ;⑦经过对X (t) 评价, 得出当代最优解BX和当代最优染色体BC;⑧若fit (BX)

3 数值实验

为测试基于量子位Bloch球面坐标的量子进化算法的性能, 选择两个常用的标准测试函数:

(1) Goldstein-Price函数:

undefined

该函数在给定区域内只有一个全局最小点, 最小值为3。若目标函数值小于2.95, 则理解为算法收敛。Goldstein-Price函数如图2所示。

(2) Shuberts函数:

undefined

此函数共有760个局部极小点, 其中18个为全局最小点, 最小值为-186.730 9。

图4和图5分别给出了Goldstein-Price函数的进化曲线和Shuberts函数的所有18个全局最优解。

从图4中可以看出, 尽管每条染色体包含3条基因链, 但由于没有选择运算和复制运算, 所以运行效率较高。从图5中可以看出, 使用三链基因编码提高了寻优能力, 而变异算子可使算法避免陷入局部最优解。可见, 基于量子位Bloch球面坐标的量子遗传算法在搜索能力和优化效率两方面的确优于普通的量子遗传算法。

参考文献

[1]SHOR P W.Algorithms for quantum computation[C].Discretelogarithms and factoring.Proc.Of the 35th Annual Symp.OnFoundations of Computer Science.New York, USA:IEEE Com-puter Society Press, 1994.

[2]GROVER L K.A fast quantum mechanical algorithm for databasesearch[C].Proc.of the 28th annual ACM Symp.on Theory ofComputing.New York, USA:ACM Press, 1996.

[3]HIRAFUJI M, HAGAN S.A global optimization algorithm basedon the process of evolution in complex biological system[J].Com-puters and Electronics in Agriculture, 2000 (10) .

[4]GRIGORENKO I, GARCIA M E.Calculation of the partition func-tion using quantum genetic algorithms[J].Physica A, 2002 (3) .

[5]RAMOS R V.Numerical algorithms for use in quantum informa-tion[J].Journal of Computational Physics, 2003 (9) .

[6]SAHIN M, TOMAK M.The self-consistent calculation of a spheri-cal quantum dot algorithm study[J].Physica E, 2005 (8) .

[7]张葛祥, 李娜, 金炜东.一种新量子遗传算法及其应用[J].电子学报, 2004 (3) .

[8]杨俊安, 庄镇泉, 史亮.多宇宙并行量子遗传算法[J].电子学报, 2004 (6) .

混沌量子进化算法 篇2

输电规划的目的在于以最小成本投入满足电力系统的负荷增长的需要,以此确定最优网络扩容方案。在电力市场环境下,输电规划面临众多不确定性因素,如负荷增长、发电计划、市场竞争以及系统可靠性要求[1,2,3,4,5]。机会约束规划是处理含有随机变量和模糊变量规划问题的有效手段,利用机会约束规划思想,可以实现规划目标以及约束条件不确定性的定量化模拟[6,7,8,9]。因此,应用机会约束规划技术研究输电规划问题具有较好的适应性。

国内外关于机会约束规划的输电规划问题的研究,主要集中于构造机会约束输电规划模型和利用模拟技术对问题进行求解两个方面。文献[10-13]分别研究了基于机会约束规划、模糊机会约束规划和灰度机会约束规划在输电系统规划中的应用。在输电规划模型构造方面,已有的研究在一定程度上有效地对输电规划中的模糊性和随机性因素做出了理论抽象,如引入线路功率约束的置信水平[11],同时在约束条件中考虑模糊因素和随机因素[10,12],进而对功率约束变量进行灰色处理,构造序列估计目标函数的最大值[13]。对于机会约束规划的求解算法,大多数研究采用模糊数学理论、灰色理论、神经网络等方法与遗传算法结合进行模拟求解[10,11,12,13,14,15,16],但这些方法存在一定的局限性,主要是由于遗传算法的收敛速度和全局收敛性的固有矛盾造成的。由Seeley提出的蜜蜂算法[17],经过学者的研究发展,人工蜜蜂算法在克服遗传算法中盲目设定交叉概率和变异概率的缺陷方面取得了很好的效果[18,19,20,21,22,23]。然而,单纯依靠人工蜜蜂算法寻优,容易产生过早收敛的问题,混沌搜索机制具有随机性、对初始值敏感和遍历性等特点,采用混沌量子计算,在避免搜索陷入局部最优的同时提高搜索精度[24,25,26,27]。

本文基于已有研究成果,建立随机模糊最小最大机会约束输电规划模型,该模型考虑了极大化最大可能的收益。在规划模型求解方面,结合蜜蜂算法和混沌量子优化的优点,提出混沌量子蜜蜂算法,在解决随机模糊机会约束输电规划问题中,该优化算法可以更好地求解优化复杂的不确定性问题,本文给出了该方法的具体计算步骤和求解方法,建立了一种新的基于梯度的量子旋转角的计算方法并利用高斯量子突变保持种群的多样性,为解决输电规划问题提供了新的尝试,并对算法的收敛性进行了证明。最后通过IEEE-30节点测试系统证明了该方法的可行性与有效性。

1 随机模糊机会约束输电系统规划及其模拟

1.1 随机模糊机会约束输电系统规划模型

文献[6]对随机模糊变量的相关概念等已有系统研究。在输电规划中,最主要的不确定因素是新增电源点的选取和发电装机容量以及对各节点新增负荷的预测[11,12,13]。本文以线路投资和建造成本最小为目标,建立基于随机模糊机会约束的输电系统规划模型。假设新增电源点的概率为p,可能出现的电源点为i,该点的预测发电装机容量为Pik(k=1,2,…,M),服从离散型概率分布;可能的装机容量出现的概率为αik;则有:Pr(x=pik)=αik,0<αik<1,∑Mk=1αik=1,k=1,2,…,M。规划期内节点i的负荷变化值服从正态分布ΔPDi~N(μi,σi2),则对于新增节点i,其负荷为PDi=ΔPDi。

与极大化收益函数乐观值的机会约束规划相对应,本文在建模输电系统规划问题时,研究极大化随机模糊收益的悲观值,即在最小可能的总投资成本中,找出一个最优的解决方案。这种情况下,把随机模糊规划决策系统建模成随机模糊minmax机会约束规划模型,

式中:Ch(·)为本原机会测度函数;x是决策向量;ξ是随机模糊向量;n是候选线路的数目;sj表示候选线路j的0-1决策变量,sj取0或1分别表示该线路不包括或包括在规划方案中;Cj为线路j的单位投资成本与运行费用;Lj为线路j的长度;PL为支路功率向量;PLmax为支路输电容量向量;B为节点导纳矩阵;θ为节点电压相角向量;P为节点净注入功率向量;PG为发电机出力向量;PGmax为发电机出力上限向量;αj是指定的置信水平;βj为线路j功率约束的置信水平。

1.2 随机模糊模拟

对于给定的决策变量x和置信水平αi与βj,需要找出(α,β)-悲观值,返回给函数f(x,ξ)。因此,设计一个随机模糊模拟来找出Ch{f(x,ξ)≤}(α≥β)中的最小值。显然,(α,β)-悲观值必须满足式(2)。

解决输电系统规划问题的主要难点是计算随机模糊事件Ch{PL≤PLmax}(αj)出现的机会以及随机模糊函数f(x,ξ)。在输电系统中,用解析方法很难或不可能获得这些确切的值。因此,采用随机模糊模拟来估算这些值。随机模糊模拟的过程如下:

1)按照概率Pr从Ω中取样本ω1,ω2,…,ωn,并定义式(3):

为一组随机变量序列(不是随机模糊变量),对于所有的n,n=1,2,…,N,都有上式成立且E[h(ωn)]=α。当N→∞时,由大数定律可得

需要注意的是:∑N n=1h(ωn)只是满足条件Pos{f(x,ξ(ωn))≤}≥β的nω个数的总和;

2)找出满足Pos{f(x,ξ(ωn))≤}≥β的最小值,n=1,2,…,N,分别进行模糊模拟;

3)令[N]为αN的整数部分,的值可以作为序列中第[N]个最小元素,由随机模拟求解

4)返回序列{1f,f2,…,fN}中第[N]个最小元素;

5)将步骤2)~4)重复N次;

6)返回的值。

2 混沌量子蜜蜂算法

一个典型的蜜蜂种群包括一个唯一的蜂王、雄蜂和工蜂(侦查蜂)。蜂群用有效的途径协调其觅食活动,目标是找到丰富的食物来源并获得最好的花蜜。觅食者被同时派遣到多个方向,以便涵盖更大的搜索范围。侦察蜂随机搜索食物来源,并从一个食物来源到另一个食物来源。当找到一个滋养丰富的食物来源后,它返回蜂巢并采取以下三项行为中的一个[26]:1)跳摇摆舞召集更多的觅食者到那个食物来源;2)如果食物质量较低,则放弃这个食物来源,这样其他的蜜蜂将不用再搜索这里;3)不告诉其他蜜蜂,直接飞往食物来源进行搜索。对优化问题进行解空间的搜索与蜜蜂觅食的过程十分类似。此外,借鉴蜜蜂交配过程对优化问题进行最优解的求取,蜂王代表了当前最优解,雄蜂则是被挑选的测试方案。与蜂王和雄蜂交配产生下一代的繁殖过程类似,量子交叉为找到更好的解决方案创造了机会。

基于此,模拟蜜蜂的觅食与交配过程,建立混沌量子蜜蜂算法来解决随机模糊输电系统规划的复杂不确定性规划问题。使用高斯量子变异保持了生物的多样性,提高了蜜蜂种群的全面适应性并设计了新的基于梯度的量子旋转角计算方法。在混沌量子蜜蜂算法中,携带一组量子比特的每一只蜜蜂代表一个解决方案,混沌优化围绕着选定迄今为止最佳的食物来源对空间进行搜索。在算法的整合过程中,在被选雄蜂与蜂王之间进行了随机干扰离散量子交叉。

量子的最小信息单元为量子比特(Q-bit),使用一对实数(α,β)定义一个量子位[25],则在第t次迭代中的第j个个体qjt被定义为:

式中,α,β为量子比特的概率幅,满足归一化条件|α|2+|β|2=1,|α|2给出了量子比特为0的概率,|β|2给出了量子比特为1的概率。

定理1当混沌量子蜜蜂算法用于n维空间的连续优化问题时,对于每个全局最优解X=(x1,x2,…,xn),存在相关的2n个量子比特。

证明从n维空间Rn=[-1,1]n到单位空间的连续优化问题的全局解如下所示,

存在两个量子比特与之相对应,

因此,对于每个全局最优解X=(x1,x2,…,xn),存在相应的2n个量子比特。

根据定理1,当混沌量子蜜蜂算法用于有M个全局最优解的特定优化问题时,在空间Rn=[-1,1]n中解的个数可以被扩充到2nM个。这使全局最优解的个数成指数倍增加,从而提高了获得全局最优解的概率。

3 基于混沌量子蜜蜂算法的输电系统规划问题求解

3.1 求解算法

整合随机模糊模拟与混沌量子蜜蜂算法,求解随机模糊输电系统机会约束规划问题的算法流程如图1所示。具体步骤如下:

1)设定种群初值。

2)设定混沌初值。依据Logistic映射构建混沌变量,

式中,u为混沌控制参量,当u=4时Logistic处于完全混沌状态。输出值δi+1的范围为[0,1],每种情形不重复出现。由r混沌变量的第一个量子比特开始,如式(8):

选择具有优先级的路径,并将具有最高优先级的解设为当前最优解。

3)将每个分向量xiL≤xi≤xiU划分到N个子空间,并随机分配Np个搜索到第一个分向量的N个子空间。第j个搜索穿越第一个分向量的第k1个子空间可以表示为:

4)从现有的(i-1)层到i层的ki子空间搜索路径的概率如下,

式中:Sij为与分向量i相连而未被搜索j访问的一组位置;dik为节点i和节点j之间的启发式距离;ρik为节点i和节点j之间的排列系数[27]。

式中:γ为常数,且0<γ<1;Ai(t)为与节点i相连的一组路径;Fi(t)为从属于节点i的一组首选路径。

5)逐次搜索直到最后一个,则电源点i被搜索到的概率为

6)用方差(αtji)2进行高斯变异

如果超出了解空间的可行域,则重复如下计算直到解位于可行域内:

如果新的解不如以前的解,用量子旋转门更新

式中:φ0为初始转角;∇f(x jt)为梯度。

7)对当前最优解进行随机离散交叉干涉

式中,pi为空间间隔(0,1)中的随机数。

8)随机模糊模拟用来估算约束函数的值。检查每个解的概率,如果解不可行,重复搜索直到得到可行解。

9)选择当前最优解fk和当前最优路径xk。如果,则令,其中是全局最优目标函数,是全局最优解。如果比当前最优解更好,则以它作为新的最优解。

10)回到步骤3)直到所有的迭代完成或达到收敛标准。

11)输出最优解,完成算法。

3.2 收敛性证明

用S表示状态空间,xi表示种群中第i个个体。令SN={A=(x1,x2,…,xN),xi∈S,1

定理2蜜蜂算法的状态向量(ρ(t),ω(t),f*(t)),t≥1是一个马尔可夫链,种群序列{A(t),t≥0}是一个有限均匀马尔可夫链。

证明令ρ(t)表示第t次迭代所有路径上节点的排列系数,ω(t)表示第t次迭代的路径向量,f*(t)表示第t次迭代的最优解。在混沌量子蜜蜂算法中,蜜蜂状态的变换可以表示为一个随机过程:

既然混沌量子蜜蜂算法采用量子比特且αji的值连续,从理论上讲状态空间是无限的,但是在实际的计算过程中,αji是有限精确的。假设αji的精确度是ε,它的维数是V=(αUji-αLji)/ε,其中αUji和αLji分别是αji的上限和下限。在量子比特表示法中αUji=1,αLji=-1。因此,V=2/ε。假设量子比特的长度为N且蜜蜂种群的规模为M,则种群序列是有限的。种群序列的计算如下,

其中,Tp,Ts,Tm,Tc与t无关。蜜蜂算法的状态向量(ρ(t),ω(t),f*(t)),t≥1仅与(ρ(t-1),ω(t-1),f*(t-1))有关,与t无关。同时,解序列如下:

其中i0=argminj{f(xj(t))},概率变换矩阵为:

由上式可知,A(t+1)只与A(t)有关而与t无关。因此,种群序列{A(t),t≥0}是一个有限均匀马尔可夫链。

定理3混沌量子蜜蜂算法以概率1收敛。

故:又因为概率值不能大于1,因此,算法以概率1收敛。

4 算例分析

为了检验本文提出的混沌量子蜜蜂算法的可行性,采用IEEE-30节点系统进行算例分析[28],如图2所示。

系统中线路已有容量及投资成本如表1所示。设规划期内节点1,2,5,8,11,13为有可能新增装机容量的待选节点,可能装机容量和运行成本、单位投资成本见表2;发电机组1,2,5,8,11和13已有的装机容量为30,40,50,30,60,40 MW。

根据算例所提供的基本情景,分别采用混沌量子蜜蜂算法与常规蜜蜂算法对输电机会约束规划问题进行求解,以检验其解的收敛性。给定一个置信区间[0.85,0.80],迭代次数为50次。图3显示了两种算法的收敛速度,可见混沌量子蜜蜂算法收敛性明显优于常规蜜蜂算法,且两种方法的最优收敛结果一致,表明在常规蜜蜂算法中引入混沌量子变量,有助于提高算法的收敛速度和最优解的获得,最优解为12 969.8万元。

进一步检验机会约束在输电规划中的优点与作用,分别设置三种方案的置信水平,考察在不同置信水平条件下方案必选的特点。设置三个方案的置信水平分别为[αj,βj]T=[0.85,0.80;0.90,0.85;0.95,0.90]T,按照本文所建立的最大最小机会约束规划模型,采用混沌量子蜜蜂算法,设定种群规模为100,迭代次数为50次,最终得到三种规划方案结果如表3所示。

优化结果表明,置信水平为[0.85,0.80]时,所采取的规划方案总投资成本最小。此时,需要增容的电源点为1和8,新增容量分别为40 MW和30MW,需要新建输电线路5-7,6-7,10-20,22-24,8-28,规划总成本为12 969.8万元。通过三个方案必选,可以发现置信度的高低直接影响规划成本,即置信度越高,规划成本越高,这样表明选择低成本就要冒高风险,从而反映出机会成本的本质。

5 结论

建立了随机模糊最小最大机会约束输电规划模型,借鉴蜜蜂种群觅食及交配的行为,引入混沌量子计算方法,提出了混沌量子蜜蜂算法,用以求解本文提出的输电系统规划问题。研究得到以下结论:

(1)考虑极大化随机模糊收益的悲观值情况下,建立了随机模糊机会约束输电规划模型,即在最小可能的总投资成本中,寻找最优的解决方案,能够有效兼顾电力市场环境下的众多不确定因素对输电规划的影响作用。

(2)在常规蜜蜂算法基础上引入混沌量子计算思想,研究了混沌量子蜜蜂算法求解的原理和步骤,基于梯度的量子旋转角的计算方法提高解的精度,利用高斯量子突变保持种群的多样性,证明了混沌量子蜜蜂算法以概率1收敛。

(3)通过IEEE-30节点系统测算表明,混沌量子蜜蜂算法求解机会约束输电规划问题比常规蜜蜂算法收敛速度更快,且规划结果与置信水平的设定密切相关。

摘要:电力市场环境下的众多不确定因素具有明显的随机性与模糊性,且对输电规划会产生重要影响。利用不确定规划理论建立了随机模糊最小最大机会约束输电规划模型,在最小可能的总投资成本条件下寻找最优规划方案。借鉴蜜蜂觅食与交配行为,引入混沌优化与量子计算方法,设计混沌量子蜜蜂算法实现了对上述输电规划问题的求解,研究给出具体求解步骤,基于梯度的量子旋转角的计算方法提高解的精度,利用高斯量子突变保持种群的多样性,并证明了该算法以概率1收敛。通过30节点系统测算表明,混沌量子蜜蜂算法求解机会约束输电规划问题具有收敛速度快、精度高的特点。

混沌量子进化算法 篇3

Kennedy博士和 Eberhart教授于1995 年提出了粒子群优化(Particle Swarm Optimization,PSO)算法[1]。粒子群优化方法自提出后,由于其收敛速度快、算法简单等优点,目前已成功应用到组合优化[2]、连续问题参数优化[3]、神经网络训练[4]、数据挖掘[5]、故障识别[6]等领域。但是在实际应用中发现PSO易“早熟”且精度不高。因此许多学者对算法提出了很多改进方法和策略。量子进化算法(QEA)[7]是新近发展起来的一种以量子计算的一些理论为基础的概率进化算法,同传统进化算法相比具有更好的群体多样性和全局寻优能力,群体规模较小但不影响算法的性能等优点。基于量子进化算法的优点,文献[8]提出了一种量子粒子群优化算法(Quantum Particle Swarm Optimization,QPSO)。该算法采用量子位的概率幅表示粒子,但惯性因子、自身因子及全局因子的设置仍沿用标准粒子群的设置方法,因此无法有效避免种群在搜索空间中多样性的丢失。因此,本文提出一种基于混沌优化的双种群量子粒子群(Dual Population Quantum Particle Swarm Optimization Based on Chaotic Optimization,BCQPSO)改进算法。首先,利用混沌序列产生两个种群规模相等的种群,以避免早熟收敛、保持种群的多样性;其二,对于其中一个种群采用线性递减的更改权重,对另一个种群利用本文建立的基于混沌序列的自适应惯性权重策略来更新;最后,对两个种群执行融合变异操作。用典型函数的极值优化问题进行仿真实验,结果表明改进算法在搜索能力和优化效率两方面均优于原粒子群优化算法。

1 量子粒子群算法

粒子采用文献[8]的编码方式:

undefined

,每个粒子代表解空间的两个解,分别对应量子态的|0>和[1]>的概率幅:

Pic=(cos(θi1),cos(θi2),…cos(θin)),

Pis=(sin(θi1),sin(θi2),…sin(θin))

由粒子编码方式可知其遍历空间每维均为[-1,1],则要比较粒子优劣需进行解空间变换。设待优化问题第j维变量的取值区间为undefined,粒子Pj上第i个量子位为[αundefined,βundefined]T,则按下式对粒子Pj的两组解进行变换:

undefined

粒子Pi上量子位幅角增量的更新:

Δθij(t+1)=ωΔθij(t)+c1r1(Δθl)+c2r2(Δθg)

粒子上量子位概率幅的更新:

undefined

故粒子Pi更新后的两个位置分别为:

Pic=(cos(θi1(t)+Δθi1(t+1)),cos(θi2(t)+Δθi2(t+1)),…cos(θin(t)+Δθin(t+1)))

Pis=(sin(θi1(t)+Δθi1(t+1)),sin(θi2(t)+Δθi2(t+1)),…sin(θin(t)+Δθin(t+1)))

粒子量子位幅角增量的更新由三个部分组成:惯性部分ω、自身部分c1和社会部分c2。如何选择和调整这三个参数关系到算法是否能避免早熟而又能快速地收敛。因此本文从如何保持粒子多样性,以及如何平衡算法全局搜索和局部搜索之间的矛盾为出发点,提出以下改进策略。

2 基于混沌优化的双种群量子粒子群算法

目前,大多数PSO粒子的初始位置都是采用随机方式初始化,这种方式有可能造成初始搜索解空间的分布程度不均衡。由于混沌序列具有混沌运动的遍历性、随机性、规律性等特点,利用混沌序列的随机性、遍历性来寻找问题的最优解,其随机性保证了大范围的搜索能力,遍历性使搜索过程能在一定范围内不重复地遍历所有状态[9] ,因此可以有效加强种群多样性,为进行全局搜索打下良好基础。本文引入Logistic混沌序列, Zt+1=μZt(1-Zt),t=0,1,2,…,其中,μ为控制参量,当μ=4时,z0≠0.5,产生的混沌序列可以遍历[ 0, 1] 区间。

2.1 基于混沌序列的双种群粒子位置初始化

在进化算法中,种群规模是一个十分重要的参数,种群规模的大小及多样性直接影响着算法的收敛率、收敛速度、可靠性等方面问题,本文提出以下基于混沌序列的双种群粒子位置初始化方法:

步骤1:用Logistic混沌序列代替原有随机数的方式来初始化各粒子。

步骤2:由于混沌序列产生的值在[0,1]区间,而解空间在[-1,1]区间,故对上面产生的初始解取反,产生[-1,0]区间的值,这样便产生两个种群。

步骤3:将上面两个种群合并,再通过随机分组方式分成种群数相等的两组种群。

步骤4:分别用这两组种群的粒子进行进化寻寻优。

由于混沌序列能在一定范围内不重复地遍历所有状态,因此大大增强了种群的多样性。

2.2 基于混沌序列的自适应惯性权重

惯性权重的引入是为平衡算法全局搜索和局部搜索之间的矛盾,惯性权重取值较大时,全局寻优能力强,局部寻优能力弱;反之,则局部寻优能力增强,而全局寻优能力减弱。文献[10]提出一种惯性权重线性改变方式:

undefined

其中,ωmax、ωmin分别是ω的最大值和最小值;t、tmax分别是当前迭代次数和最大迭代次数。这种递减策略虽然可以调节全局与局部的寻优能力,且运算速度快,但在运算的过程中,线性减小惯性系数ω,使得搜索步长逐渐减小,迭代慢慢地收敛到极值点[11]。故本文提出一种基于混沌序列的自适应改变惯性权重的方法,公式如下:

其中,undefined将权重与进化代数联系起来作自适应调整, 使算法在进化初期以较大的权重进行搜索;随着进化代数的增加, 惯性权重逐渐变小, 有利于进化后期的精细搜索;Zt是Logistic混沌序列值, 能让惯性权重在解空间内进行遍历, 有利于提高搜索效率;ωmax、ωmin分别是ω的最大值和最小值。对于两个种群的量子粒子分别用线性递减权重和自适应权重对ω进行更改,线性递减权重用于快速进化,获取最优解,自适应权重用于精细搜索,扩大解空间遍历性。

2.3 基于混沌序列的双种群融合变异

由2.1节产生的种群,在很大程度上增加了种群的多样性,并且通过2.2节的方式各自改变惯性权重,当两子种群独立进化若干代,需执行融合操作,这样可实现两个种群之间的信息交流,既能提高算法的收敛速度,又能在一定程度上保持种群的多样性,再按以下规则重新划分子种群和变异粒子。

(1)随机产生两个0-1之间的随机数α、β,α用于指导分组操作,β用于指导变异操作。

(2) 产生一个混沌序列值Zt,用Zt与α比较,如果大于则将该粒子从刚合并的种群中删除掉,并加入新种群中,该操作直到合并种群的粒子数与新生成的粒子数相等时停止,这样就又生成两个种群用于以后的进化。

(3)利用步骤(2)产生的混沌序列值Zt与β比较,如果大于则用量子Hadamard门对粒子群种群进行变异,公式如下:

undefined

,由上式可以看出,这种变异是一种旋转,对于第j个量子位,转角大小为undefined。

2.4 算法流程

(1)用2.1节的方法产生两个粒子个数相等的种群。

(2)对粒子进行解空间变换,计算适应度。

(3)根据公式进行调整粒子位置,对于种群1使用线性递减惯性权重策略,对于种群2使用自适应递减权重策略。

(4)根据2.3节合并两个种群,并记录最优粒子,如果满足终止条件则退出,否则转到步骤(2)继续进化。

3 对比试验

为验证提出本文算法的有效性,实验中采用如下2个典型函数作为仿真对象,对算法进行对比。

①Ackley:

undefined

②Rosenbrock :

undefined

对于函数(1)和(2),分别用BCQPSO、 QPSO和PSO各优化50次,然后统计平均结果、收敛次数、平均步数作为对比评价指标。三种算法的种群规模均取100,最大优化步数均取500,性能对比结果如表1所示。

从表1的对比结果可以看出,BCQPSO的优化效果最好。这是由于基于混沌序列生成的种群多样性好,并且通过两种惯性权重改变策略,既加速了寻优速度,又能扩大解空间的遍历性,最后又基于Hadamard门进行变异操作,从而提高了寻优能力。

4 结束语

提出了一种基于混沌优化的双种群量子粒子群优化算法。该算法通过引入混沌理论,采用双种群结构并行运行,每个子种群的惯性权重选用不同的更新策略,同时采用Hadamard门进行变异,这使算法在维持种群多样性的同时加快了收敛速度,扩展了解空间的遍历性,能使算法具有较好的全局搜索和跳出局部最优的能力。实验结果表明,BCQPSO算法的优化性能明显优于PSO算法。

参考文献

[1] Kennedy J,Eberhart R C.Particle swarms optimization[C]//Proceedings of IEEE International Conference on Neural Networks,USA,1995:1942-1948.

[2] Ammar W,Nirod C,Tan K.Solving shortest path problem using particle swarm optimization[J].Applied Soft Computing,2008,8(4):1643-1653.

[3] Marcio S,Evaristo C.Nonlinear parameter estimation through particle swarm optimization[J].Chemical Engineering Science,2008,63(6):1542-1552.

[4] Lin C J, Hong S J. The Design of Neuro-fuzzy Networks Using Particle Swarm Optimization and Recursive Singular Value Decomposition[J].Neurocomputing. 2007, 71(1-3):297-310.

[5] Souda T, Silva A, Neves A. Particle Swarm based Data Mining Algorithms for classification task[J]. Parallel Computing. 2004(30):767-783.

[6] Sahin F, Yavuz M &#x00C7;, Arnavut Z,et al. Fault Diagnosis for Airplane Engines Using Bayesian Networks and Distributed Particle Swarm Optimization. Parallel Computing, 2007,33(2):124-143.

[7] Hyun K,Kim J H.Quantum-inspired evolutionary algorithm fora class of combinational optimization[J].IEEE Transactions on Evolutionary Computing,2002,6(6):580-593.

[8] 李士勇,李盼池.求解连续空间优化问题的量子粒子群算法[J].量子电子学报,2007,24(5):569-574.

[9] 李广文, 贾秋玲, 刘小雄,等. 基于反馈和混沌变异的自适应进化策略[J] . 计算机应用研究, 2009, 26(6):2056-2058.

[10] Shi Yuhui, Eberhart R. A Modified Particle Swarm Optimizer[C]//Proc. of IEEE International Conference on Evolutionary Computation.Anchorage, Alaska, USA: [s. n.], 1998.

混沌量子进化算法 篇4

微粒群优化算法PSO属于群体智能方法的一个分类,是1995年首次由Kennedy与Eberhart等首次提出的[1],是一种新的进化算法。但当面临复杂的优化问题,由于目标存在很多的局部极值,也不可避免地存在早熟、收敛速度慢等一些缺陷。

本文针对这一问题,提出以全局性更好的小生境策略,小生境中各个子种群互相排斥,动态形成自己独立的搜索空间,各自追逐自己搜索范围内的极值点,使小种群在搜索空间有效地分布,避免了协同中的种群汇聚;进一步引入淘汰更新机制,迭代一定次数后更新最劣子种群,以保证整个种群不断向前进化,直至搜索到全局最优点;引入变尺度混沌变异,进一步提高了本文算法的搜索精度。

2004年Sun等在研究了Clerc等人关于粒子收敛行为的研究成果后,从量子力学的角度提出了一种新的PSO算法模型。认为粒子具有量子行为,并根据这种模型提出了量子粒子群算法(QPSO)[2],并且得到了很好的实验效果。

1 粒子群和量子粒子群算法

1.1 粒子群算法(PSO)

由Kennedy和Eberhart提出的PSO算法[3],是将寻优的参数组合成群体,通过对环境的适应度来将群体中的个体向好的区域移动。与其他进化算法不同,个体没有体积的微粒(点),结合微粒的历史最佳位置和群体历史最佳位置信息,以一定的速度向目标值逼近。

1.2 量子粒子群算法(QPSO)

从量子力学的角度提出了一种新的PSO算法模型[4,5]。认为粒子具有量子行为,并根据这种模型提出了量子粒子群算法(QPSO),在量子空间中粒子的满足聚集态的性质完全不同,它可以在整个可行解空间中进行搜索,因此QPSO算法的全局搜索的性能远远优于标准PSO算法。在量子空间中,粒子的速度和位置是不能同时确定的。通过波函数来描述粒子的状态,并通过求解薛定谔方程得到粒子在空间某一点出现的概率密度函数,又通过蒙特卡罗随机模拟方式得到粒子的位置方程。在具有量子行为的粒子群优化算法中,粒子的主要迭代公式:

undefined

Pid=ϕ*Pid+(1-ϕ)*Pgd ϕ=rand (2)

xid=Pid±β*|mbest-xidundefined

这里mbest是粒子群pbest的中间位置,Pid为Pid和Pgd之间的随机点,ϕ和μ都是[0,1]的随机数,β为QPSO的收缩扩张系数。

QPSO的算法流程可以这样描述:

(1) 初始化粒子群;

(2) 根据公式(1)计算mbest的值;

(3) 求每一个粒子的适应度值,比较求出Pid;

(4) 对于每一个粒子比较Pid,求得Pgd;

(5) 更新Pgd;

(6) 对于粒子的每一维,根据公式(2),在Pid和Pgd之间取得一个随机点;

(7) 根据公式(3)获得一个新的位置;

(8) 重(2)~(7)直到条件不满足,则迭代过程结束。

2基于混沌变异算子的小生境量子粒子群算法

2.1 RCS小生境进化策略

小生境策略以其能有效解决多峰函数优化问题而广泛应用于进化算法[6]。本文采用文献[7]提出的RCS(Real time Control System)策略作为构造小生境的基础。通过控制子种群之间的排挤和竞争,使各个子种群在进化中动态形成各自独立的搜索空间,从而实现对多个局部极值进行同步搜索,避免了算法的早熟收敛。

算法中的小生境半径定义了各个子种群独立的搜索空间,一旦某个小生境最优个体进入了其他小生境的搜索空间,则重置该个体,并在其所在的小生境内重新选择最优个体。从而使每个小生境子种群自然形成,减少了标准PSO算法和QPSO算法的所有个体作为整体种群陷入局部最优的概率。

2.2 变尺度混沌变异

混沌是自然界广泛存在的一种非线性现象,具有随机性、遍历性、初始条件敏感性等特点,已被广泛应用于随机优化[8],在局部寻优领域具有优越的性能。本文使用的混沌映射Logistic迭代方程为:

βundefined=μβundefined(1-βundefined) k=1,2,… (4)

β∈(0,1) β≠0.25,0.5,0.75

其中βundefined是对应于粒子Xundefined的第j个混沌向量,当μ=4时,logistic方程完全进入混沌状态。经过多次试验可以证明,利用混沌的遍历性,可以很好地实现局部搜索。

在寻优的过程中,对每个小生境的种群最优个体进行混沌迭代变异,变异空间随着代数的增加而逐渐减小。对第i个种群的最优个体Pibest=[x1,x2,…,xj,…,xn]进行混沌变异最优粒子Pnbest变量的搜索空间随着代数的增加而围绕小生境的极点逐渐缩小。这样,在进化初期变异尺度大,有利于算法在广阔的空间搜索全局最优解;在进化后期变异尺度小,在小空间内紧紧围绕局部极点精细搜索,有利于提高解的精度。

2.3 基于混沌变异算子的小生境量子粒子群算法

结合小生境策略全局优化与变尺度混沌变异精细搜索各自的优点,本文提出一种全新的粒子群算法,并在算法中引入了种群淘汰策略,结合小生境的子种群竞争策略一起使用。运行中首先利用RCS竞争策略,使各个小生境子种群形成独立的搜索空间,追逐不同的极值点;然后每隔一定代数,对陷入局部最优的最劣子种群进行随机初始化。这样可使种群在不断的竞争和更新中向前进化,从而避免了算法早熟收敛,保证了收敛到全局最优。而没有更新的小生境种群继续向前进化,又保证了搜索精度的连续提高。NCQPSO(Niche Chaotic mutation Quantum-Behaved Particle Swarm Optimization )算法具体流程如下:

(1) 初始化小生境粒子种群;

(2) 计算粒子适应度,找出每个小生境种群中的最优粒子;

(3) 实施RCS小生境淘汰选择进化策略,确定每个小生境独立搜索空间的最优个体;

(4) 如果迭代次数到达一定代数,则对最劣的小生境子种群进行更新初始化;

(5) 对所有小生境子种群的最优个体实行变尺度的混沌变异,进一步提高搜索的精度;

(6) 对每一个小生境子种群独立进行QPSO优化;

(7) 如果满足条件,则停止迭代,输出最优解,否则转向(2)。

3 实验结果和分析

为了测试基于混沌变异小生境的量子粒子群算法(NCQPSO)的性能,本文使用了3个典型测试函数来进行实验,并且将实验的结果和标准的PSO和原始的QPSO算法进行比较。所用函数如图1所示,Rosenbrock函数是一个经典复杂优化问题,其全局最优点位于一个平滑、狭长的抛物线形山谷内,由于函数仅仅为优化算法提供了少量信息,使算法很难辨别搜索方向,找到全局最小点的机会微乎其微,因此,Rosenbrock函数通常用来评价优化算法的执行效率。Rastrigrin和Griewank函数是典型的非线性多模态函数,它们具有广泛的搜索空间、大量的局部极小点和高大的障碍物,通常被认为是遗传算法很难处理的复杂多模态问题。表1给出的是3个测试函数的初始空间,以及理论值,维位置的上限。

本文比较了NCQPSO算法和标准的PSO算法,原始的QPSO 算法对于基准函数测试的结果。算法的粒子种群为25,分为5个子种群,每个子种群的粒子数是5。标准PSO的参数的设置如下:

c1=c2=2 wmax=0.9 wmin=0.1

算法统一的迭代的次数定为2000次,2000次以后认为算法停滞。各个算法分别运行50次,取平均结果来表示算法对函数测试的结果。与此同时,将各个种群的空间维数固定为20,以便于各个算法进行比较,同时设小生境的半径Rnich为10-4。另外还将在50次运算当中成功找到最优解的次数作为解的稳定性的衡量。

从表2可以看出NCQPSO与另外两种算法相比较具有更加优秀的搜索最优解的能力,即拥有更高的稳定性和更加精确的搜索精度。为了进一步说明NCQPSO的优越性,本文给出几种算法对于Rosenbrock函数的测试曲线,如图1所示。

4 结 论

本文算法利用广泛应用于多目标函数优化的小生境策略掌控粒子群的全局搜索方向,其竞争策略使子种群在搜索过程中自动追寻不同的极值点,形成不同的搜索空间;淘汰策略则使子种群不断更新。两种策略的有机结合,成功地避免了算法的早熟收敛,提高了全局寻优能力;变尺度混沌变异的引入,则显著提高了算法的搜索精度。实验结果表明,与传统的PSO算法和QPSO算法相比,本文算法寻优能力强、搜索精度高、稳定性好,适用于处理高维多极连续函数的优化问题。

摘要:针对粒子群算法早熟收敛和搜索精度低的问题,提出了基于混沌变异的小生境量子粒子群算法(NCQPSO)。该算法结合小生境技术并加入了淘汰机制。使算法具有良好的全局寻优能力。变尺度混沌变异具有精细的局部遍历搜索性能。使算法具有较高的搜索精度,实验结果表明,NCQPSO算法可有效避免标准PSO(Particle Swarm Optimization)算法的早熟收敛,具有寻优能力强、搜索精度高、稳定性好等优点。也优于原始的量子粒子群算法QPSO(Quantum-behaved Particle Swarm Optimization)。

关键词:混沌变异,小生境,粒子群优化算法,量子粒子群优化算法

参考文献

[1]Kennedy J,Eberhart RC.Particle Swarm Optimization[A].Proceed-ings of the IEEE Service Center,1995:1942-1948.

[2]Sun J,Feng B,Xu WB.Particle SwarmOptimization with Particles Hav-ing Quantum-Behavior[A].Proceedings of 2004 Congress on Evolu-tionary Computation,2004:325-331.

[3]Eberhart R,Kennedy J.A new optimizer using particle swarm theory[C].Proc of Int’1 Symp on Micro Machine and Human Science.Pis-cataway,IEEE Service Center,1995:39-43.

[4]Sun J,Xu WB.A Global Search Strategy of Quantum-behaved ParticleSwarm Optimization[A].Proceedings of the IEEE Congress on Cyber-netics and Intelligent System,2004:111-116.

[5]Maurice Clerc,James Kennedy.The Particle Swarm:Explosion,Stabili-ty,and Convergence in a Multi-Dimensional Complex Space.IEEETransactions on Evolutionary Computation,2002:58-73.

[6]陈辉,张家树,张超.实数编码混沌量子遗传算法[J].控制与决策.2005,20(11):1300-1303.

[7]Lee C G,Cho D H,Jung H K.Niche genetic algorithm with restrictedcompetition selection for multimodal function optimization[J].IEEETrans on Magnetics,1999,35(3):1122-l125.

混沌量子进化算法 篇5

光伏阵列在均匀光照情况下的P—V特性曲线为单峰值,传统的MPPT方法如扰动观测法、电导增量法、恒电压控制法等都能快速而准确地实现最大功率点跟踪[1]。然而在局部阴影的情况下,光伏阵列中各组件的光照度不均匀时,系统的P—V曲线将呈现多峰值特性,如果仍采用传统的MPPT方法将很容易使系统陷入局部最大功率点,从而降低发电效率。因此,研究适合于多峰值最大功率点跟踪的光伏MPPT算法已势在必行。

文献[2-4]对粒子群优化算法应用到多峰值最大功率点跟踪中的问题进行了研究,但是粒子群算法本身容易陷入局部最优,而且算法在运行到后期时粒子趋于同一化,很可能无法找到全局最大功率点。文献[5]将模糊控制与人工神经网络相结合,实现了多峰值最大功率点跟踪,但是该方法中的模糊规则较难确定。文献[6]提出一种基于模糊免疫算法的光伏阵列多峰值最大功率点跟踪方法,但是该算法控制复杂,跟踪精度较差。

基于以上分析可知,多峰值最大功率点跟踪是光伏发电系统中亟待解决的问题。本文提出了一种基于混沌量子蜂群优化SVR的多峰MPPT控制算法,该算法将多峰最大功率点跟踪问题当做典型的非线性预测控制问题进行处理。引入SVR回归模型对局部阴影条件下的光伏阵列最大功率点电压进行回归预测,使光伏阵列工作于全局最大功率点;利用混沌量子蜂群算法的全局优化能力对SVR的参数进行寻优预处理,保证SVR回归模型的预测精度和泛化性能;最后通过实验验证了基于混沌量子蜂群优化SVR的多峰MPPT控制算法的有效性。

1 光伏阵列最大功率点多峰特性分析

为了避免局部阴影条件下的热斑效应对光伏组件造成损害,实际运行中的每个光伏组件两端都并联有旁路二极管。当某些光伏组件被阴影遮挡时,旁路二极管导通并流过整个串联阵列的电流,从而保护被阴影遮挡的电池板不受损害。但是旁路二极管导通时,光伏组件或者阵列的输出特性相比均匀光照情况时将发生较大变化。由3个光伏组件串联而成的光伏阵列如图1所示。

在均匀光照的情况下,旁路二极管截止,光伏阵列中的每一个光伏组件通过的电流可以用下式描述:

式中:Ic为输出电流;IPH为光生电流;I0为光伏组件的反向饱和电流;q为电子电荷量,取1.6×10-19;Vc为输出电压;Rs为串联内阻;n为理想因子;k为玻尔兹曼常数,取1.38×10-23J/K;T为电池表面的绝对温度;Rp为并联内阻。

实际光伏电池中,并联内阻Rp的值非常大,因此(Vc+ IcRs)/Rp的值同Ic相比非常小,可以忽略不计。上式可以化简为

局部阴影时,光伏阵列中受阴影遮挡的光伏组件的旁路二极管将可能导通,若第i个光伏组件被遮挡,则其旁路二极管导通时的正向偏压Vb可以描述为

式中:nb为旁路二极管的理想因子;Tb为旁路二极管的温度;I0b为旁路二极管的反向饱和电流;Ic为光伏阵列总输出电流;IPHi为第i个光伏组件被阴影遮挡时的光生电流。

对于图1 所示的光伏阵列,假设3 个光伏组件温度相同,但所受的光照强度各不相同,且光生电流IPH1> IPH2>IPH3。随着光伏阵列外接负载电阻由小到大的变化,输出电流Ic逐渐减小,相应光伏组件的旁路二极管将会出现由导通到阻断的变化。根据文献[7]可知,输出电流Ic的大小决定了光伏阵列的输出特性,上述光伏阵列的输出功率可以用分段函数表示。

通过实际的光伏组件搭建上述光伏阵列电路,并在不同的辐照度下对电路进行实际测试,用测试数据对公式中的参数进行拟合,同时根据旁路二极管的性质确定反向饱和电流I0b。最后各参数确定如下:I0=0.022 μA,Rs=0.76 Ω,α =1.043,αb=0.104,I0b=5.95 μA。

光伏阵列数学模型各参数确定后,采用Mat-lab软件对两种局部阴影情况下的串联光伏阵列功率输出特性进行仿真,得到的P—V特性曲线如图2所示。

实验中的光伏阵列由3个参数一致的光伏组件串联而成,温度都设为25 °C。曲线1中的3个光伏组件所受光照情况如下:组件1 为标准光照强度(1 000 W/m2),组件2光照强度为700 W/m2,组件3 为400 W/m2。曲线2 中的3 个光伏组件所受光照情况如下:组件1 为标准光照强度(1 000W/m2),组件2 光照强度为600 W/m2,组件3 为200 W/m2。

由图2 中的曲线可以看出,当光伏阵列中的各组件所受光照不均匀时,系统的P—V曲线呈现出多峰特性。

如果仍按照传统的最大功率跟踪策略,可能会使系统陷入局部最大功率点,从而大大降低光伏系统的发电效率。对于曲线1 的情况,如果系统只跟踪到了第1 个局部极值点或第2 个极值点,则其输出功率仅为40 W和70 W左右,距离真正的最大功率点86 W相差了46 W和16 W,将造成输出功率的严重损失。因此,本文提出了一种基于混沌量子蜂群优化SVR的多峰最大功率点跟踪方法。

2 基于CQABC优化SVR的多峰最大功率点跟踪

支持向量回归机(SVR)是一种基于结构风险最小化原则、以统计学习理论为基础的机器学习方法,已经在非线性回归预测控制[8]、数据挖掘等领域得到了成功应用。SVR中的惩罚系数C、不敏感度系数ε以及核函数参数 σ2决定着算法的精度和泛化性能,但是目前对于这3 个参数的选取仍然缺乏有效的解决方案。针对此问题,本文提出了基于混沌量子蜂群算法的SVR参数优化选择方法,并将优化后的SVR模型用于光伏阵列的多峰最大功率点跟踪,从而提高MPPT控制的精度。

2.1 量子比特与量子蜂群算法

量子计算以量子力学的相关理论为基础,利用量子所独有的纠缠性、相干性和叠加性达到并行计算的目的,因此具有并行性和指数加速特征,并且表现出了强大的运算能力。相关研究表明,通过将量子计算与传统的智能算法相结合,能够大大提高智能算法的收敛速度和全局优化能力,满足寻优过程中的高性能和高精度的要求[9]。

在量子计算中,量子比特是信息的最小存储单元,它不但能处于“0”和“1”2种状态,还能够处于“0”和“1”之间的任意叠加态。这个叠加态是由“0”和“1”位的线性组合,其大小由概率幅 α 和β 决定。通常用Dirac记号“”表示量子态,一个量子比特可以表示为 φ = α 0 + β1 ,其中,α,β 表示量子比特在状态“ 0 ”和“ 1 ”的概率,α,β 必须满足:α2+ β2= 1。

量子空间中,通常采用量子旋转门实现量子比特的状态调整和改变。量子旋转门的数学模型为

量子比特的调整过程为

量子蜂群算法(quantum-inspired artificial bee colony,QABC)中,蜜源的位置可以用量子比特来表示,第i个蜜源的量子位置为

其中

量子蜂群的进化是通过调整量子旋转门从而改变量子比特的状态来实现的,而量子比特的状态代表了蜜源的量子位置,第i个蜜源量子位置的更新方式如下:

式中:Qit,Qit + 1分别为第t次和第t+1次循环时蜜源的量子位置;θtij和 θtij+ 1分别为第t次和第t+1次循环时的量子旋转门的角度;rij为0 到1 之间的随机数;k ∈[1 ,d],并且k ≠ j。

如果量子旋转门的角度 θtij+ 1=0,则蜜源位置用量子非门以某种较小的概率进行更新。

2.2 引入混沌搜索的混沌量子蜂群算法

在量子蜂群算法中,如果某个蜜源的量子位置经过limit次更新后,适应度值仍无法提高,则表示该蜜源已经陷入局部最优,需要放弃该蜜源,并随机产生新的蜜源来取代它。

本文提出的混沌量子蜂群算法(CQABC)采用了混沌搜索机制来产生新蜜源。该方法利用混沌搜索的随机性和遍历性,以当前陷入局部最优的蜜源位置为基础,通过Logistic映射迭代产生混沌序列,并提取混沌序列中适应度值最高的解作为新的蜜源位置。通过混沌搜索处理后,陷入局部最优的解得以继续进化,从而提升CQA-BC算法的收敛速度和精度。混沌搜索的迭代方程如下:

式中:n为混沌搜索的迭代次数,n = 0,1,2,…,d,z0∈(0,1);μ 为完全混沌搜索 μ =4。

该方程迭代运行d次后将产生一个混沌序列。

假设陷入局部最优的蜜源位置为xk=xk1,xk2, …, xkd, xki∈[ai,bi],对它进行混沌优化的主要步骤如下:

1)将Xk映射到混沌搜索的迭代方程的定义域[0,1]内,作为混沌搜索的迭代初值,即:

2)用混沌搜索迭代方程进行d次迭代操作,得到一个混沌序列Zk=(zk1,zk2,...,zkd) 。

3)将混沌序列Zk通过逆映射恢复为新蜜源,逆映射公式为

计算新蜜源X'k的适应度值,并将X'k和其对应的适应度值保存于临时向量Y中。

4)重复运行步骤3)L次,得到L个适应度值,找出最大的适应度值所对应的X'k作为新蜜源。

本文的CQABC算法中,除了将混沌搜索用于优化陷入局部极值的蜜源外,还将其用于混沌初始化蜜源种群。

2.3 混沌量子蜂群算法优化选择SVR参数

对于光伏阵列最大功率点预测的SVR模型,CQABC算法需要优化该模型的3 个参数C ,ε 和σ2,因此被优化问题的解为3 维向量,对应于CQABC算法中的蜜源位置也是3 维向量。具体的运算步骤如下。

Step 1:初始化量子蜂群参数。设定采蜜蜂、观察蜂以及蜜源的个数为N;算法的最大迭代次数为M;判断蜜源陷入局部最优的阈值参数limit;根据前面介绍的混沌搜索方法初始化蜜源位置并将其变为量子比特的形式。

Step 2:采蜜蜂根据式(4)和式(5)寻找新蜜源的量子位置,并计算新蜜源的适应度值,如果新蜜源的适应度值大于旧蜜源,则用新蜜源的量子位置代替旧蜜源,否则保持旧蜜源的位置不变。

Step 3:观察蜂根据概率公式选择一个质量较好的蜜源,并根据式(4)和式(5)在该蜜源附近寻找到一个新蜜源,通过计算新蜜源的适应度值确定是否保留该蜜源。

Step 4:判断是否有蜜源陷入局部最优,如果有,则该蜜源对应的采蜜蜂变为侦察蜂[10],并根据前面介绍的混沌搜索方法找到一个新蜜源取代陷入局部最优的蜜源。

Step 5:保存搜索过程中蜜源的最优量子位置(问题的全局最优解)。

Step 6:判断是否达到程序的终止运行条件(通常取决于初始化时设定的最大迭代次数M),如未满足终止条件,返回Step 2继续搜索;否则,输出全局最优位置(SVR的最优参数值),算法终止。

2.4 基于CQABC-SVR的多峰MPPT算法

基于CQABC-SVR的光伏系统最大功率点跟踪的实质是一个非线性预测控制问题。系统的输入为各光伏组件的光照度以及温度等环境参数,系统的输出则为上述环境参数下的最大输出功率。支持向量机回归算法以其优异的全局优化能力和泛化性能特别适合于光伏组件的最大功率点进行预测跟踪。

该算法流程如图3所示。其中模型的输入量为温度T和3 个串联组件各自的光照度S1,S2,S3共4 个变量,输出变量为对应于光伏阵列最大功率点的输出电压值Vmpp。

3 仿真分析

3.1 仿真系统构建

为验证上述CQABC-SVR多峰MPPT算法的有效性,在Matlab/Simulink环境下建立基于混沌量子蜂群优化SVR的MPPT控制系统模型见图4。该系统由几个模块组成:光伏阵列模块、基于混沌量子蜂群优化SVR的最大功率点预测模块、DC/DC模块和PWM驱动电路模块。其中基于混沌量子蜂群优化SVR的最大功率点预测模块采用m文件的形式嵌入到Simulink中。系统输入为各光伏组件的光照强度、组件温度T和组件的短路电流Isc,输出为SVR模型预测的最大功率点电压Vmpp。系统中的光伏阵列能够仿真光伏组件在各种光照和温度情况下的系统输出特性,实现光照不均条件下的光伏阵列多峰特性的模拟。

3.2 SVR参数的优化选择

为了选择SVR模型的最优参数,需要一定数据作为实验样本进行模型的训练和验证。本文中的样本数据来源于实际的串联光伏阵列实验数据,光伏阵列由3个相同的光伏组件串联而成。通过调整3个组件的不同光照度组合,得到30种不同组合情况下的1 500 组数据。取其中1 200 组数据作为训练数据,300组数据作为验证数据。

采用混沌量子蜂群算法对SVR模型的参数进行优化选择,算法的参数设置如下:采蜜蜂、观察蜂以及蜜源的个数为50,最大迭代次数为200,阈值参数limit=40。为了比较混沌量子蜂群算法的性能,同时采用交叉验证法和粒子群算法进行SVR参数的寻优实验。结果如表1 所示。

由表1 可以看出,3 种算法都能寻优得到SVR的参数,但是3 个参数的结果存在一定的差异。将相应的3个参数赋予SVR模型后,误差指标MSE差别较大:CQABC算法< PSO算法<交叉验证方法,运算时间也是CQABC算法最短。

3.3 基于CQABC-SVR的MPPT算法仿真分析

将经过参数寻优的SVR预测模型以m函数的形式嵌入到Simulink的MPPT控制系统模型中,并设定光伏组件如表2所示。

分别采用基于CQABC-SVR的MPPT算法和扰动观察法进行仿真,系统的最大功率跟踪结果如表3 所示。 表中本文方法代表基于CQA-BC-SVR的MPPT算法,P&O方法代表扰动观察法。通过表3中的结果比较可知,本文方法在各种情况下都能跟踪到全局最大功率点,而扰动观察法大多数情况下只能跟踪到局部峰值,而无法跟踪到全局最大功率点。

3.4 基于CQABC-SVR的MPPT算法在实际环境下性能验证

实际运行中的光伏发电系统所处的环境参数(温度,光照度等)时常发生变化。传统的MPPT算法在环境参数发生突变或者光照度不均匀时将无法实现准确的最大功率点跟踪,而基于CQABC-SVR的MPPT算法能够在任意工况下准确快速地实现最大功率点的跟踪控制。实验所用光伏系统的参数如下:DC/DC主拓扑电路为Boost变换电路,开关管选用MOSFET功率管IRF540N,开关频率为50 k Hz。当室外温度为29°C,光照强度由1 000 W/m2突变为600 W/m2时,本文提出的多峰MPPT算法使系统在0.018 s的时间内稳定于新的最大功率点。而传统的MPPT算法如扰动观察法虽然也在0.04 s左右的时间内趋于稳定,但是未能找到全局最大功率点。

图5 为基于CQABC-SVR的MPPT算法对实际运行的光伏阵列某一天中的最大功率进行跟踪的曲线。其中在13∶40—14∶20的时间段内,光伏阵列处于不均匀的光照情况下,虽然系统的最大功率点大大降低,但本文提出的算法仍能够对光伏阵列的最大功率点实现准确跟踪。

4 结论

光伏阵列在局部阴影的情况下会导致P—V曲线呈现多峰特性,传统的MPPT算法很难跟踪到系统的全局最大功率点。针对此问题,本文将支持向量回归机预测模型应用于多峰MPPT控制研究,提出一种基于混沌量子蜂群优化SVR的多峰MPPT控制算法。利用混沌量子蜂群算法的全局优化能力对SVR的参数进行寻优预处理,提高了支持向量回归机模型的预测精度和泛化性能。通过仿真实验和实际数据测试验证了所提算法的有效性。 实验结果表明:基于CQA-BC-SVR的MPPT算法在均匀光照或者局部阴影的情况下均能够准确地跟踪到全局最大功率点,且性能明显优于传统算法(扰动观测法),有效提高了光伏发电系统的输出效率,具有广阔的应用前景。

参考文献

[1]李春玲,石季英,武艳辉,等.模糊控制的扰动观察法在光伏MPPT中的应用[J].电气传动,2013,43(2):61-64.

[2]朱艳伟,石新春,但扬清,等.粒子群优化算法在光伏阵列多峰最大功率点跟踪中的应用[J].电机工程学报,2012,32(4):42-48.

[3]王雨,胡仁杰.基于粒子群优化和爬山法的MPPT算法[J].太阳能学报,2014,35(1):149-153.

[4]Miyatake M,Veerachary M,Toriumi F.Maximum Power PointTracking of Multiple Photovoltaic Arrays:a PSO Approach[J].IEEE Transactions on Aerospace and Electronic Systems,2011,47(1):367-380.

[5]Bidram A,Davoudi A,S Balog R.Control and Circuit Tech-niques to Mitigate Partial Shading Effects in Photovoltaic Ar-rays[J].IEEE Journal of Photovoltaics,2012,4(2):2612-2617.

[6]刘立群,王志新,张华强.部分遮蔽光伏发电系统模糊免疫控制[J].电力自动化设备,2010,30(7):96-99.

[7]翟载腾,程晓舫,丁金磊,等.被部分遮挡的串联光伏组件输出特性[J].中国科学技术大学学报,2009,39(4):398-402.

[8]唐贤伦,李洋,李鹏,等.多智能体粒子群优化的SVR模型预测控制[J].控制与决策,2014,29(4):593-598.

[9]Yao F.Quantum-inspired Particle Swarm Optimization for Pow-er System Operations Considering Wind Power Uncertaintyand Carbon Tax in Australia[J].Industrial Informatics,2012,8(4):880-888.

混沌量子进化算法 篇6

进化算法是以达尔文的进化论思想为基础, 通过模拟生物进化过程与机制的求解问题的自组织、自适应的人工智能技术。与传统的优化算法相比, 进化计算是一种成熟的具有高鲁棒性和广泛适用性的全局优化方法, 具有自组织、自适应、自学习的特性。尤其是在处理多目标优化问题时, 进化算法表现出很好的效果。

近年来, 出现了很多优秀的算法用于解决约束多目标优化问题, 其中Deb提出的NSGA-II算法是最为经典的一个算法。NSGA-II成功的将进化算法应用在约束多目标优化问题上, 在进化算法的基础上引入了约束偏离值。Hongguang Li提出了基于agent的进化算法用于求解约束多目标优化问题。算法利用agent概念认为每个个体与其种群内其他个体都有相互的作用和影响, 虽然算法精度不是很高但是计算速度很快。本文受到基于agent概念的启发, 希望设计出一个计算速度快, 精度高的算法。

2 量子进化算法

2.1 邻里竞争与邻里合作

agent-based模型是一种从底层到高层的数学模型, 模型更加注重的是每个个体对整个群体的影响, 通过改变个体的某些特征和表现从而影响整个整体。本算法在此基础上, 通过模仿自然界种群内部个体之间既有竞争又有合作的关系, 设计出了邻里竞争与邻里合作算子。邻里竞争算子采用的是吞并算子, 算子表示如下:

其中表示的是新产生的个体。公式表达的意义是:每个个体与其排名靠后一位的个体进行竞争, 将两者目标函数值进行对比, 目标函数值较小的个体成为这一位置上的新个体。

邻里合作算子如下:

2.2 量子计算

加入量子算子是为了加快计算速度, 希望通过更少的进化代数进化出更加优秀的种群。本算法通过设计出一个对周围区域具有自适应调整搜索步长的量子旋转门, 从而提升量子计算运行效率。量子计算首先需要将个体的基因编码从实数编码形式转换为量子编码形式, 之后通过量子旋转门的计算快速搜索周围空间寻找更加优秀的个体进行输出。

个体在完成量子旋转门的计算后, 个体的基因编码需要映射回实数域, 完成其他计算过程。量子算子的本质也就是通过将个体基因编码转换为量子域, 通过利用量子计算在量子域具有指数级加速和指数级存储的能力, 快速的寻找最优解的过程。

2.3 算法的主要流程

图1为本算法流程图。算法采用顺序结构设计, 结构简单, 在进化计算的基础上首先使用了约束偏离值的方法, 将约束多目标问题进行简化。其次借鉴了基于agent模型里种群中个体之间又相互的影响和作用, 设计了邻里竞争与邻里合作算子。又利用了量子计算的加速性能, 提升了算法的运行速度。

若为第一代种群, 本算法通过之前修正好的目标函数向量进行选择, 首先在可行解里选取非支配解, 形成种群Fea Pop, 并在全部种群中寻找非支配解, 放入种群Non Pop中;若不是第一代种群, 则将上一代产生的父代Fea Pop与当代的进化种群Pop合并形成NPop, 在合并之后的种群里再去寻找可行非支配解形成当代的Fea Pop种群, 寻找非支配解形成当代的Non Pop。变异算子对于防止种群陷入局部最优解起到了重要的作用, 本算法采用文献中非一致性变异算子。

3 仿真实验与结果分析

本文的测试问题是Deb提出的六个经典的约束多目标最小化问题, 算法参数设计为:初始种群大小为100, 合作概率为0.9, 合作指数为10, 变异概率为0.5, 非一致系数为2, 自我更新指数为20。最大的可行非支配解集Fea Pop大小为100, 非支配解集Non Pop大小为100。对比算法初始种群大小为100, 交叉概率为0.9, 交叉分布指数为15, 变异概率为0.1, 变异分布指数为20。

文中所有测试问题均独立运行30次, 我们采用的度量指标分别为GD和算法运行时间。世代距离指标 (GD) , 是度量算法所得Pareto前端与真实前端之间的距离。其数学表达式如下式所示:

表1给出本文算法与两种对比算法运行6测试问题的结果。

CTP2、CTP7是寻找离散的几个线段, CTP3、CTP4两个问题要寻找的Pareto前端都是离散的端点, CTP5是离散点和线段的组合, CTP6问题是寻找连续的直线。从表中我们可以看出几种算法对于处理CTP2问题都有不错的结果, 都可以很好地找到几个离散端点。对于CTP3和CTP4问题由于测试函数难度的加大, 算法[3]已不能很好地找出真实Pareto前端所在位置, 而NSGA-II、本算法还能找到真实Pareto前端所在区域, 不过已经无法做到很精准的定位Pareto前端的位置。对于CTP5, 几种算法在找离散点的能力都很不错。对于CTP6问题几种算法都找到了Pareto前端, 只是均匀性稍有差异。CTP7问题, 除了算法[3]之外也都很好的找到了前端所在区域。

4 总结与展望

本文算法用于处理约束多目标优化问题, 在设计上借鉴了agent-based模型, 更加注意种群中个体对整个种群的影响, 通过进行自我更新, 邻里协作与邻里竞争等操作来改变个体的基因编码, 从而改变了整个种群的进化方向进化速度, 共同朝着真实的Pareto前端进行进化。并且本算法融入了量子计算, 使得程序可以更高效更快捷更准确的去寻找最优解。在和现有的几种算法的对比上体现出了算法的优势, 在保证精度值的基础上减少了大量的程序运行时间。不过提高算法的精度仍然是之后研究的重点。如何更好地处理种群中个体之间的关系是我们今后需要进一步做的工作。

摘要:本文提出了一种用于解决约束多目标优化问题的方法。本算法在进化算法的基础上加入了邻里竞争与邻里合作算子, 并通过引入agent-based模型的设计理念, 更加注重个体变化对整个群体的影响。本算法首先使用约束偏离值的方法将约束多目标优化问题简化为多目标优化问题;然后使用自我更新算子, 当新产生的个体优于原先的个体时予以替换;之后通过邻里竞争与邻里合作加快种群内部的信息交流;最后加入量子加速算子, 通过使用量子旋转门来扩大计算搜寻范围提高程序计算速度。本文最后与两种已有算法进行对比, 实验结果表明, 本算法完成了设计目标。在运行时间和输出结果精度方面都有不错的表现。

关键词:约束多目标优化,量子计算,约束偏离值,邻里竞争

参考文献

[1]王勇, 蔡自兴, 周育人.约束优化进化算法[J]软件学报, 2009, 20 (1) :11-29.

[2]Venkatraman S and Yen GG.A Generic Framework for Constrained optimization Using Genetic Al gori thns.IEEE Trans.on Evolutionary Computation, 2005, 9 (4) :424-435.

[3]Woldesenbet YG, Yen GG, and Tessema BG.Constrained Handling in Multiobjective Evolutionary Optimization.IEEE Trans.on Evolutionary Computation, 2009, 13 (3) :514-525.

[4]Vargas Denis E.C., Lemonge Afonso C.C., Barbosa Helio J.C., Bernardi no Heder S.Differential evolution with the Adaptive Penalty Method for constrained multiobjective optimization.2013.CEC 2013. (IEEE Congress on Digital Object Identifier) , 2013:1342-1349.

[5]Deb K, Pratap A, Agarwal S, and Meyarivan T.A Fast and Elitist Multiobjective Genetic Algorithm NSGA-II.IEEE Trans.on Evolutionary Comput at ui on, 2002, 6 (2) :182-197.

[6]Hongguang Li, Hui Di ng, Agent-based evolutionary algorithms applied to constrained muliti-objective opti mi zation problems, Applied Artificial Intelligence, 2012, 26 (10) :941-951.

[7]Ling, S.H., Leung.F.H.F.;Lam, H.K;YimShu Lee;Tam, P.K.S A novel geneticalgorithm-based neural network for short-term load forecasting.IEEE Industrial Electronics Society, Aug.2003, 793-799.

混沌量子进化算法 篇7

电力系统负荷预测是电力系统调度、规划、供电等管理部门的基础工作,准确、有效的负荷预测不仅可以合理安排电网内部机组的启停、保持电网安全稳定地运行,还可以减少一些不必要的储备容量,合理安排检修计划,从而保证了正常的生产,有利于经济效益和社会效益的提高[1]。过去的几十年来,国内外学者将各种预测方法和模型运用到电力系统短期负荷预测中,使预测精度得到了很大的提高。文献[2]把粗糙集和神经网络结合建立短期负荷预测模型,采用粗糙集理论对各种影响负荷预测的因素变量进行识别,以此确定预测模型的输入变量;在此基础上通过属性约简和属性值约简获得推理规则集,再以这些推理规则构筑神经网络预测模型,并采用附加动量项的BP学习算法对网络进行优化,但是该方法没有对工作日和休息日的负荷预测加以区分,预测精度不够;文献[3]采用改进的粒子群算法和BP神经网络结合,提出了在算法迭代过程中,每个粒子会额外生成与迭代次数相同的粒子,并与当前粒子同方向不同速度飞行,利用适应度值保存粒子历史最优值。虽然也改善了粒子多样性,但这种方法是以显著增加计算量和牺牲系统内存为代价;文献[4]使用PSO算法优化基函数中心和宽度,再用最小二乘法确定隐含层与输出层间的权值,最后将改进算法应用于时间序列的预测中。但该方法初始粒子群随机产生,会导致算法收敛速度的不确定性,降低算法的平均收敛速度;文献[5]采用混沌神经网络对短期负荷进行预测,但是仅运用混沌时间序列分析作为神经网络日峰值预测模型选择最佳嵌入维数和延迟时间的必要理论依据,其不足之处是仅局限于日峰负荷预测,同时对于混沌网络的权值和阈值的确定较为困难且速度慢。

本文采用量子化粒子群算法不仅通过全同粒子系改善了初始种群的质量,而且通过对粒子的全局最优值与粒子的局部最优值的比较,限制粒子陷入局部最小搜索状态,提高粒子的局部搜索能力,节省了搜索时间,使粒子能够快速地搜索到最佳位置,从而增强了算法的局部寻优能力和收敛速度及计算精度;利用优化后的粒子群算法确定混沌神经网络的权值和阈值,克服混沌神经网络参数确定难度大、速度慢的缺点。本文在建立负荷预测模型的时候,考虑了休息日和工作日的日负荷不同的特点建立新的预测模型,提高了预测的精度。

2 基本粒子群算法及其改进

2.1 基本粒子群优化算法描述

在基本粒子群算法中,种群是由n个粒子组成的,粒子i的信息表示为d维向量[6]。位置用xi=(xi,1,xi,2,...,xi,d)(i=1,2,...,n)表示,速度为vi=(vi,1,vi,2,...,vi,d)(i=1,2,...,n),pi=(pi,1,pi,2,...,pi,d)表示第i个粒子的最优位置,其他向量类似。速度和位置更新公式为:

其中,vi,j(t)是粒子i在第t次迭代中第j维的速度;c1,c2是加速系数(或称学习因子),控制粒子群向全局最好粒子和个体最好粒子方向飞行的最大步长,适当的c1,c2取值能够加快粒子群的收敛速度并且使粒子群不易陷入局部最优;r1,r2是[0,1]之间的随机数;xi,j(t)是粒子i在第t次迭代中第j维的当前位置;pi,j是粒子i在第j维的个体极值点的位置;pg,j是种群在第j维的全局极点的位置。粒子的每一维速度v控制在(vmin,i,vmax,i)之间。vmax,i如果过大,粒子将会飞离最优解,太小将会陷入局部最优。假设将搜索空间的第d维定义为区间(xmin,i,xmax,i),每一维都用相同的设置方法。

2.2 量子行为粒子群优化算法

在基于量子行为的粒子群优化算法中,粒子的量子态通过波函数ψ(r,t)来表示。当ψ(r,t)确定后,粒子的所有力学分量和测值概率都可以确定,即xi,j(t)是由ψ(r,t)2决定的。在量子力学理论中,将属性相同的粒子称为全同粒子,由于全同粒子系具有交换对称性的特点,使得波函数具有很大的限制。一般来说,全同粒子系的波函数ψ(q1,q2,...,qn)不一定表示粒子pi,j的本征态,所有的pi,j处于完全平等的地位。然而,所有pi,j的共同本征态是存在的,即是完全对称波函数和完全反对称波函数。

全同粒子系的波函数约束条件为:

根据蒙特卡洛方法,粒子群的运动等式可以转化为式(4),另外引入式(5)和式(7)。

其中,C为常数因子;p,α, 分别根据式(5)、(6)和(8)求取;u∈[0,1],为随机数据;α为t变量收缩因子,随着时间的变化而变化。

其中,α1和α2为t变量收缩因子的初值和终值;Tmax表示最大迭代的次数。根据经验数据,通常取α1=2.5,α2=0.5,因此α∈(0.5,2.5)。pg,j表示每一个粒子全局搜索的最佳位置;pi,j表示每个粒子局部搜索到的最优位置;M表示种群的大小。

3 混沌神经网络模型

混沌神经元结构图如图1所示。

其中,vij、wij分别是第j个神经元的输入连接权值和反馈连接权值,xj(t+1)是神经元的输出[7]。

混沌神经元的输出函数为:

其中

式中,a表示神经元之间的联接强度,也称耦合因子。

在混沌神经网络结构中,包括输入层、隐层和输出层。其中,隐层的每一个神经元都会受到外部输入和内部反馈的影响,通过不停地调节神经元的权值和阈值,得到合适的混沌神经网络模型[8]。

混沌神经网络的输出函数为:

其中,xi是单个混沌神经元的输出值;wo是输出层神经元的阈值;wi是输出层神经元的权值;n1为隐层神经元的个数[9]。假设网络外部输入时间序列为u(t),隐层输出为o(t),网络输出为y(t),混沌网络表示为:

f1采用Sigmoid函数,即:y=1/[1+exp(-x)];f2采用线性函数:1W、2W和HW分别为输入层至隐层、隐层至输出层以及隐层节点之间的连接权矩阵。

4 基于量子行为粒子群优化算法-混沌神经网络负荷预测

4.1 基本原理

本文采用的混合算法中,将粒子群的位置向量x作为混沌神经网络的节点间连接权值和阈值,在每次的迭代过程中,利用优化后的粒子群算法求出权值和阈值,然后利用混沌网络,求出对应的权值和阈值的实际输出值fk(k=1,2,...,n)(n是神经网络输入输出的样本对数)。

粒子的适应度函数为:

式中,yk是混沌神经网络的目标输出;fk是混沌神经网络的实际输出。

4.2 混合算法模型

针对电力系统的负荷具有周期性的特征,同时工作日和休息日的日负荷不同的特点,本文采用的模型如图2所示,采用多输入、单输出[10]。

对于混沌网络的隐层节点数的确定采用经验公式:

其中,n1为输入层节点数;n2为输出层节点数;N为修正值。根据多次实验结果,同时保证运算的速度,当n=5时,运算速度和结果的误差能够满足需要。本文中,取n=5。

4.3 算法分析

在混合算法中,首先是将神经网络的权向量和阈值作为粒子群搜索空间中位置元素,然后应用粒子群优化算法计算出神经网络的权向量和阈值,即求出每一个粒子相应的实际输出值ok(k=1,2,...,n;n是神经网络输入输出的样本对数)。第i(i=1,2,...)个粒子的适应度函数为:

其中

其中,yk是神经网络的目标输出。

本文采用平均绝对百分误差EM和均方根误差ER作为评估指标[11]。

4.4 粒子群-混沌神经网络混合算法的流程

(1)根据网络的输入和输出关系,初始化混沌网络的拓扑结构[12]。确定粒子的初始位置xi,j(0)和速度,确定粒子数M、最大允许迭代次数Tmax、加速系数c1和c2;

(2)如果是基本粒子群优化算法则用式(1)和式(2)对每一个粒子的速度和位置进行更新;如果是具备量子行为的粒子,采用改进粒子群优化算法,用式(7)和式(8)分别确定每个粒子的全局最优位置、局部搜索位置;

(3)根据优化后的粒子群算法,求出混沌神经网络的权值和阈值;

(4)利用混沌神经网络计算出每个粒子对应的个体极值,将粒子群中个体极值最好的作为全局极值。记录该粒子的序号,用gbest(全局极值点)表示最好粒子的当前位置;

(5)根据粒子的适应度函数,计算每一个粒子的适应度值。如果粒子的适应度值优于该粒子的个体极值,则将pbest(个体极值点)设置为该粒子的位置,同时对粒子的个体极值进行更新。当全部粒子的个体极值优于此时的全局极值时,将gbest设置为该粒子的位置,记录该粒子的序号,同时对全局极值进行更新;

(6)判断是否满足流程结束条件。如果当前位置满足预定要求(迭代次数达到了给定的最大次数或达到最小误差要求)时,则停止迭代,输出最优解;如果不能满足结束条件,转到步骤(2)。

4.5 数据的归一化处理

为了确保输入量具有较好的作用,选用Sigmoid函数中间段的函数关系,从而避开其两端的饱和区域,必须对神经网络的输入量进行归一化处理[13]。

t时刻负荷数据采用如下归一化公式:

在输出层则用式(22)重新换算回负荷值:

式中,Lmax和Lmin分别为训练样本集中负荷的最大值和最小值。

5 应用实例及结果

本文预测模型中混沌神经网络的反馈过程是通过循环实现的,其停止的条件用精度来判断,即如果A(t)-A(t-1)

本文结合某地的实际情况,对其某日24h整点的电力负荷分别采用量子粒子群算法、混沌学习算法和本文提出的量子粒子群优化-混沌神经网络算法进行预测,评估指标对比情况如表1所示,负荷预测结果如表2所示。

由表1可知,量子粒子群-混沌学习算法在训练550次左右的EM值已经小于量子粒子群算法和混沌学习算法训练2500次的EM值。量子粒子群-混沌神经网络算法在训练1500次的EM值也小于量子粒子群算法和混沌学习算法训练5000次时的EM值,所用时间前者80s,后两者的时间分别为213s和256s。可见在收敛性和训练速度上,本文采用的混合算法优势明显。三种算法预测结果与实际值的平均百分绝对误差对比图如图4所示。

对比表2中预测结果和相对误差可知,采用量子粒子群-混沌神经网络算法训练400次时的负荷预测结果精度已经好于采用量子粒子群算法(3000次)和混沌学习算法(2000次)时的预测精度,表明本文采用的预测方法和模型在预测精度和速度方面,明显好于以上两种算法。

从图5可以看出,本文采用的量子粒子群-混沌神经网络的混合算法预测结果相对误差控制在4%以内,且误差波动较小。预测精度比量子粒子群算法和混沌学习算法要好很多。

从图6中可以看出,当迭代次数达到900时,量子粒子群-混沌神经网络算法的适应度函数就基本达到稳定。而量子粒子群算法和混沌学习算法迭代次数达到1700和2000次左右时候才达到稳定。将粒子群的适应度函数设定为训练误差,适应度函数越大,输出误差越大。由此可见,本文采用的混合算法模型的辨识精度远高于其他两种算法模型的辨识精度,表明本文采用的模型更加实用。

6 结论

上一篇:奶牛剖腹产手术的体会下一篇:长白山自然保护区