粒子群算法研究概述

2024-10-04

粒子群算法研究概述(共11篇)

粒子群算法研究概述 篇1

引言

由简单个体组成的群落与环境以及个体之间的互动行为称群智能(swarm intelligence)。群智能算法作为一种新兴的演化计算技术已成为越来越多研究者的关注焦点,群智能在没有集中控制且不提供全局模型的前提下,为寻找复杂的分布式问题求解方案提供了基础。目前,群智能理论研究领域主要有两种算法:蚁群算法(Ant Colony Optimization,ACO)和粒子群算法(Particle Swarm Algorithm,PSO),前者是蚂蚁群落食物采集过程的模拟,后者是鸟群觅食过程的模拟。本文对这两种算法的原理、模型、应用等方面进行比较分析,并对这两种算法的改进以及与其它算法的混合做出总结。

一、蚁群算法

蚁群算法是由Colorni、Dorigo和Maniezzo通过对蚁群觅食行为的研究,于1991年提出的一种仿生进化算法[1],利用蚁群在搜索食物源的过程中所体现出来的寻优能力来解决一些离散系统优化中的问题。蚂蚁是一种社会性昆虫,通过一种特有的通信机制,其群体行为展现出高度协作性,能够完成复杂的任务,并且,蚂蚁还能够适应环境变化随时调整搜索路径。作为一种随机搜索处算法,与其他模型进化算法一样,ACO也是通过侯选解组成的群体的进化过程来寻求最优解。

蚁群算法首先被成功应用于旅行商问题(TSP)上,以此为例算法的寻优过程[2]:设有m只蚂蚁,每只蚂蚁根据信息素浓度选择下一个城市(tij(t)为t时刻城市i和j之间路径上残留的信息素浓度,dij(i,j=1,2,...,n)表示城市i和j之间的距离),规定蚂蚁走合法路线,除非周游完成,不允许转到已访问城市。完成周游后,更新蚂蚁访问过的每一条边上的信息素。

初始时刻,各路径的信息量tij(0)相等,m只蚂蚁被放置到不同的城市上。蚂蚁k(k=1,2...,m)在运动过程中,根据各条路径上信息量决定转移方向,表示在t时刻蚂蚁k由位置i转移到j的概率。

其中,allowedk表示蚂蚁k下一步允许转移到的城市集合,随k的行进而改变;信息量τij(t)随时间的推移会逐步衰减,用1-ρ表示它的衰减程度;α,β分别表示蚂蚁在运动过程中积累信息量及启发式因子在蚂蚁选择路径中所起的不同作用;ηij为由城市i转到j的期望程度,可根据某种启发算法而定。

经过n个时刻,蚂蚁k走完所有城市,完成一次循环。此时,根据式(2)一(4)更新各路径的信息素:

其中:ρ表示信息素挥发系数,Δtij表示本次循环中路径ij上的信息量增量,表示蚂蚁k在本次循环中在城市i和j之间留下的信息量,其计算方法根据不同模型而定,最常用的是ant-cycle system:

其中:Lk表示蚂蚁k环游一周的路径长度,Q为常数。

算法流程如图1所示:

二、粒子群算法

Kennedy和Eberhart于1995年受鸟群觅食行为的启发提出了粒子群优化算法(Particle Swarm Optimization,PSO)[3]。PSO中,每个优化问题的解视为d维搜索空间中的一个粒子,粒子在搜索空间中以一定速度飞行,所有的粒子都有一个由被目标函数决定的适应值,并且知道自己到目前为止发现的最好位置,每个粒子利用个体和全局最好位置更新位置和速度。

假设m个粒子组成一个种群并在D维空间搜索,第i个粒子在第t代的位置表示为一个D维的向量Xi(t)=(xi1,,xi2,…,xD),飞翔速度为Vi(t)=(vi1,vi2,...,vD),粒子本身历史最佳位置为Pi(t)=(pi1,pi2,...,pD),群体历史最佳位置为Pg(t)=(pg1,pg2,...,pD)。PSO算法迭代公式如下:

其中,w为惯性权重,使粒子保持运动的惯性,使其有扩展搜索空间的趋势;c1和c2为加速系数,代表了将每个粒子拉向Pi和Pg的随机加速项的权重;r1和r2是两个独立的介于[0,1]之间的随机数,t为进化代数。

算法流程如图2所示:

三、两种算法的比较分析

1算法各自优缺点

(1)由于群智能算法采用的是概率搜索算法,ACO和PSO具有共同的优点[4]:

①鲁棒性:由于算法无集中控制约束,不会因个别个体的故障而影响整个问题的求解。

②扩展性:信息交流方式是非直接的,通信开销少。

③并行分布性:可充分利用多处理器,适合于网络环境下的工作状态。

④优化过程无需依赖具体问题的数学特性,例如可微、线性等。

⑤算法简单容易实现:系统中个体能力简单,执行时间短。

另外,PSO还具有如下优点:

①群体搜索,并具有记忆功能,保留个体和全局的最优信息;

②协同搜索,同时利用个体和全局的最优信息指导进一步搜索。

(2)ACO和PSO也存在着局限性:

①优化性能在很大程度上依赖于参数设定,受初始值影响较大。

②容易产生早熟收敛。

另外,ACO收敛速度慢,只有小部分的ACO算法能够被证明是值收敛的,并且在实际应用中常常出现一种有害的搜索偏向现象,即二级欺骗现象。

PSO局部搜索能力差,搜索精度不高,并在理论研究上尚未完善,缺少算法设计的指导原则。

2应用领域

●ACO本质上适合于求解离散组合优化问题,在旅行商问题上取得成功应用后陆续渗透到其它领域。在指派、调度、子集、带约束满足等组合优化问题时达到了高效的优化性能。并在图着色、电路设计、二次分配问题、数据聚类分析、武器攻击目标分配和优化、大规模集成电路设计、网络路由优化、数据挖掘、车辆路径规划、区域性无线电频率自动分配、集合覆盖等优化领域得到了成功应用。

●PSO本质上适合于处理连续优化问题,但如果对求解问题进行变形或修正速度和位置更新公式也能将其应用于离散优化问题上。并且,鉴于其通用性和有效性,在解决一些典型优化问题时,其性能甚至超过了遗传算法,已成功应用于训练人工神经网络、函数优化、约束优化、多目标优化、动态优化、参数优化、组合优化、模糊系统控制、电力系统、信号处理、模式识别、生物医学等领域中。

3与其它算法混合

由于ACO与PSO具有容易与其它算法结合的特点,根据各算法的优缺点,在算法中结合其它优化技术,以提高算法的优化性能。

①蚁群算法与差分演化结合:针对蚁群算法对参数控制的依赖性、早熟和停滞等现象,以及易与其他算法结合的特点,将差分演化算法应用到蚁群算法的参数选取中,将蚁群算法的参数作为差分演化算法解空间的向量元素,自适应地寻找蚁群算法最优参数组合的同时求解问题的最优解。

②蚁群算法与粒子群算法结合:针对蚁群算法容易出现早熟现象以及算法执行时间过长的缺点,将粒子群算法引入到蚁群算法中,让蚂蚁也具有粒子的特性。

③粒子群算法与模拟退火结合:先利用PSO算法的快速搜索能力得到一个较优的群体,然后利用SA的突跳能力对部分较好的个体进行优化。

④粒子群算法与遗传算法结合:针对PSO容易早熟的缺点,在PSO中引入启发性变异机制,以扩展了算法的搜索区域,提高了算法的速度和精度且不容易陷入局部最优。

⑤粒子群算法与差分演化结合:针对粒子群算法易陷入局部极小点、搜索精度不高等缺点,在算法改进方面引用差分演化算法的变异操作,从而避免算法收敛到局部。

四、展望

群智能算法采用分布式计算机制、鲁棒性强、可扩充性好、优化效率高、并且简单易于实现,为解决实际优化问题提供了新的途径和方法。除了本文提出的ACO和PSO,群智能算法还包括研究蜜蜂通过与环境之间的信息交互实现安排工作的蜂群算法[5]、李晓磊博士通过模拟鱼群觅食行为和生存活动提出的鱼群算法[6]。作为一门新兴领域,群智能算法尚缺乏系统的分析和坚实的数学基础,实现技术不规范,在适应度函数选取、参数设置、收敛理论等方面还需要做进一步研究与探索。在此基础上,对算法加以改进或混合其他技术,以提高算法优化性能也是值得深入研究的一个方向。并且需不断拓宽其应用领域,以进一步推广群智能算法的应用。

参考文献

[1]A.Colorni,M.Dorigo,G.Theraulaz.Swarm intelligence: From natural to artificial systems[M].New York:Oxford Universyty Press,1999.

[2]宋雪梅,李兵.蚁群算法及其应用[J].河北理工学院学报,2006年2月,第28卷第1期:42-45.

[3]Kennedy J,Eberhart R.Particle Swarm Optimization[R].In:IEEE International Conference on Neural Networks,perth,Australia 1995:1942-1948.

[4]高尚,杨静宇.群智能算法及其应用[M].中国水利水电出版社,2006年2月.

粒子群算法研究概述 篇2

蚁群算法(ACO)是受自然界中蚂蚁搜索食物行为的启发,是一种群智能优化算法。它基于对自然界真实蚁群的集体觅食行为的研究,模拟真实的蚁群协作过程。算法由若干个蚂蚁共同构造解路径,通过在解路径上遗留并交换信息素提高解的质量,进而达到优化的目的。蚁群算法作为通用随机优化方法,已经成功的应用于TSP等一系列组合优化问题中,并取得了较好的结果。但由于该算法是典型的概率算法,算法中的参数设定通常由实验方法确定,导致方法的优化性能与人的经验密切相关,很难使算法性能最优化。

蚁群算法中每只蚂蚁要选择下一步所要走的地方,在选路过程中,蚂蚁依据概率函数选择将要去的地方,这个概率取决于地点间距离和信息素的强度。

(t+n)=(t)+ Δ(t+n)上述方程 表示信息素的保留率,1- 表示信息素的挥发率,为了防止信息的无限积累,取值范围限定在0~1。Δ ij 表示蚂蚁k在时间段t到(t +n)的过程中,在i到j的路径上留下的残留信息浓度。

在上述概率方程中,参数α和β:是通过实验确定的。它们对算法性能同样有很大的影响。α值的大小表明留在每个节点上信息量受重视的程度,其值越大,蚂蚁选择被选过的地点的可能性越大。β值的大小表明启发式信息受重视的程度。这两个参数对蚁群算法性能的影响和作用是相互配合,密切相关的。但是这两个参数只能依靠经验或重复调试来选择。

在采用蚁群-粒子群混合算法时,我们可以利用PSO对蚁群系统参数α和β的进行训练。具体训练过程:假设有n个粒子组成一个群落,其中第i个粒子表示为一个二维的向量 xi =(xi1 , xi2), i = 1, 2, ⋯,n,即第i个粒子在搜索空间的中的位置是xi。换言之,每个粒子的位置就是一个潜在的解。将xi带入反馈到蚁群系统并按目标函数就可以计算出其适应值,根据适应值的大小衡量解的优劣。

蚁群算法的优点:

蚁群算法与其他启发式算法相比,在求解性能上,具有很强的鲁棒性(对基本蚁群算法模型稍加修改,便可以应用于其他问题)和搜索较好解的能力。

蚁群算法是一种基于种群的进化算法,具有本质并行性,易于并行实现。蚁群算法很容易与多种启发式算法结合,以改善算法性能。

蚁群算法存在的问题:

TSP问题是一类经典的组合优化问题,即在给定城市个数和各城市之间距离的条件下,找到一条遍历所有城市且每个城市只能访问一次的总路程最短的路线。蚁群算法在TSP问题应用中取得了良好的效果,但是也存在一些不足:(1),如果参数α和β设置不当,导致求解速度很慢且所得解的质量特别差。(2),基本蚁群算法计算量大,求解所需时间较长。(3),基本蚁群算法中理论上要求所有的蚂蚁选择同一路线,该线路即为所求的最优线路;但在实际计算中,在给定一定循环数的条件下很难达到这种情况。

另一方面,在其它的实际应用中,如图像处理中寻求最优模板问题,我们并不要求所有的蚂蚁都找到最优模板,而只需要一只找到最优模板即可。如果要求所有的蚂蚁都找到最优模板,反而影响了计算效率。

蚁群算法收敛速度慢、易陷入局部最优。蚁群算法中初始信息素匮乏。蚁群算法一般需要较长的搜索时间,其复杂度可以反映这一点;而且该方法容易出现停滞现象,即搜索进行到一定程度后,所有个体发现的解完全一致,不能对解空间进一步进行搜索,不利于发现更好的解。

粒子群优化具有相当快的逼近最优解的速度,可以有效的对系统的参数进行优化。粒子群算法的本质是利用当前位置、全局极值和个体极值3个信息,指导粒子下一步迭代位置。其个体充分利用自身经验和群体经验调整自身的状态是粒子群算法具有优异特性的关键。PSO算法的优势在于求解一些连续函数的优化问题。

PSO算法存在的问题:

问题最主要的是它容易产生早熟收敛(尤其是在处理复杂的多峰搜索问题中)、局部寻优能力较差等。PSO算法陷入局部最小,主要归咎于种群在搜索空间中多样性的丢失。

不同算法的混合模型主要分为两类:(1)全局优化算法与局部优化算法混合;(2)全局优化算法与全局优化算法混合。纵观各种与PSO算法相关的混合算法,大多数基本上采用一种策略对其改进,要么与其他算法,要么加入变异操作,同时采用两种策略的混合算法较少。

上述策略中,两者之间有一定的矛盾性,全局算法与局部算法相混合,尽管可以提高局部收敛速度,但也加剧了陷入局部极小的可能;全局算法与全局算法的混合,算法的局部细化能力仍然没有改善。但如果只加入变异操作,则算法的探测能力得到提高,但也损害了其局部开发能力。

因此如果将局部搜索和变异操作同时混合到PSO算法中,通过适当的调节,发挥各自的优点,提高算法的开发能力,增加变异操作防止算法早熟,来共同提高PSO算法的全局寻优能力。

融合策略:

(1)针对蚁群算法初始信息素匮乏的缺点,采用其他算法生成初始信息素分布,利用蚁群算法求精确解,从而提高时间效率和求解精度。(使用的其他算法的求解结果以什么规则转换成蚁群算法的信息素初值,需要通过多次实验)

(2)将其他算法(如遗传算法)引入到蚁群算法系统的每次迭代过程中。以蚁群系统每一代形成的解作为其他算法的初始种群,然后经过其他算法的多次迭代,试图寻找更好的解,从而加快蚁群系统的收敛速度,提高求解速率。

(3)蚁群算法中α,β的选取往往是通过经验来取得的,而选取不当时会造成算法的性能大大降低,因此可以利用其他算法对蚁群系统参数α,β进行训练。

(4)对于蚁群算法出现过早收敛于非全局最优解以及时间过长的缺点,可以通过使用蚁群算法进行搜索,然后用其他算法对蚁群算法得到的有效路由路径,通过选择、交叉、变异等优化过程,产生性能更优的下一代群体。

粒子群算法研究概述 篇3

关键词 粒子群算法;水资源优化配置;水稻

中图分类号 S344 文献标识码 A

Optimal Allocation of Rice Water Based on PSO

LUO Yongheng1,ZHANG Mi2,ZHOU Jianhua2

(1. Economic College of Hunan Agricultural University,Changsha,Hunan 410128,China;

2. School of Economics and Management,Changsha University of Science & Technology,Changsha,Hunan 410114,China)

Abstract This article aimed to achieve the optimal allocation of rice water resources. The optimal allocation of rice water not only exists in different types of rice such as early rice, season rice and late rice, but also exists in different growth stages of the same type. Particle swarm optimization has the advantages of high efficiency and precision in the calculation and is relatively easy to operate,so it was applied to the optimal allocation of rice water model solution. The specific example of optimal allocation of rice water in GaoLu village of HengYang verifies the feasibility of the algorithm.

Key words particle swarm optimization;the optimal allocation of water resource; rice

1 引 言

作为农业大省的湖南省,其主要农作物是水稻,故水稻用水量十分巨大.虽然湖南省全境地处亚热带季风湿润气候区,降水较为丰沛,但在季节性干旱时节中,全省不少农村地区普遍存在着水稻用水困难问题.

在科学地对水稻进行用水的前提下,有限的灌溉水量既要在早稻、一季稻和晚稻等不同类型的水稻之间进行优化配置,也要在同一类型水稻在不同的生长阶段进行优化配置.为此就要构建一种大系统、多目标的高维非线性优化配置模型.在以往的文献中,在求解模型的方法选择中,一般采用大系统分解协调原理和动态规划相结合的方法.该方法虽然将大系统分解为一个个的子系统并减少了变量个数,便于优化求解,但协调的过程需要多次从低阶模型中返回信息,而且对于每层的寻优求解过程存在难以克服的矛盾,状态变量离散过少会降低计算精度,使计算结果偏差太大;离散过多,则又会大大降低计算效率.因此有学者应用基于粒子群的大系统优化模型来求解.粒子群优化算法具有较强全局寻优能力,应用于水稻用水的优化配置模型的求解.粒子群优化算法一方面提高了计算效率和计算精度,另一方面也比较容易操作.本研究以湖南省衡阳县高炉村的水稻用水优化配置为具体算例.结果表明,本文所用方法运算快速,程序实现简单可行,评价结果准确,没有陷入局部最优解的局限,

2 粒子群优化算法

粒子群优化算法(Particle Swarm Optimization)是由Kennedy和Eberhart于1995年提出的一种新型的群智能进化算法,它可以灵活方便地处理具有大量等式约束、不等式约束和同时包含连续变量、离散变量的混合整数优化问题.因此,对于水稻的用水优化配置间题,采用粒子群优化算法也是一种可行方案,其为水稻用水优化配置提供了一种很有前景和潜力的新型方法[1-7].

粒子群算法的规则比遗传算法还要简单.粒子群算法从随机解出发,由迭代公式计算最优解,通过适应度来评价解的品质,通过追随当前搜索到的最优值来寻找全局最优.

粒子群优化算法中,其迭代公式是:

vij(t+1)=wvij(t)+c1v1j(t)(pij(t)

-xij(t))+c2v2j(t)(pgj(t)-xij(t)),

xij(t+1)=xij(t)+vij(t+1),

其中,i表示粒子i,j表示粒子的第j维,t表示第t代,c1,c2为加速常数.w为惯性权重:w(iter)=wmax -(wmax -wmin )/imax ·iter.wmax 为最大惯性权值,imax 为最大进化代数;wmin 为最小惯性权值,iter为代数.r1和r2为两个随机函数,并且相互独立.vij∈[-vmax ,vmax ], vmax =kvmax ,0.1≤k≤1.0.

3 水稻用水优化配置的模型构建

水稻用水优化配置的出发点和立足点就是,灌溉水稻的用水能够产生最大的经济效益.然而,灌溉水稻的用水量与其带来的经济效益,存在着复杂的非线性关系,较难用函数关系对其进行描述.有时使用动态规划法、线性与非线性规划法等方法,也可以用离散的表格形式表达水稻用水量与其经济效益之间的关系,但前提就是都要把灌溉水稻的用水作为连续变量,为此往往使水稻的用水配置决策与实际的用水情况不相适应.

由一季稻和晚稻打成的大米(简称为一季稻米和晚稻米.同样,由早稻打成的米是早稻米),因为煮熟后米饭较软、黏,得到消费者的偏爱,因而一季稻米和晚稻米其市场价格要比早稻米高出不少.一季稻米由于其生长周期长,加之其米饭口感好,营养比晚稻米丰富,因而其市场售价又比晚稻米贵一些.目前,在我国南方地区,尤其是湖南省的中南部地区,农户在全年当中,有的只是种植一季稻,也有不少农户种植水稻两次,即分别种植早稻和晚稻.这样在每年的3月至10月当中,水稻的存在形式是,既有早稻,也有一季稻和晚稻.除了早稻和晚稻不能同时存在以外,早稻和一季稻、一季稻和晚稻,均有一段交差重叠的时期.本研究因为数据采集的关系,没有考虑大米的市场价格,因而也就没有经济效益的价格因素.而只是把灌溉水稻的用水能够产生最大的经济效益,仅仅等同于水稻的产量.

基于上述情况的考虑,本研究把不同类型的水稻(早稻、一季稻和晚稻)看作一个用水单位,对不同类型的水稻进行用水量最优配置.同类型水稻的用水,分阶段进行用水量最优配置.

3.1 同类型水稻用水优化配置模型

同类型的水稻,处于不同阶段(本研究把水稻的生长期划分为四个生长阶段,具体的阶段划分,见下文),其用水量是不同的.水稻的用水原则是:第一阶段,深水返青;第二阶段,浅水分蘖;第三阶段,有水壮苞;第四阶段,干湿壮籽[8].

1)第一阶段的深水返青.移栽后的水稻,吸引水分的能力大大减弱,这是由于水稻的根系受到大量损伤,大大减弱了稻根吸收水分的能力.这时候需要对稻田大量灌水,以增加稻根吸收水分的机会.此时田中如果水量不多的话,禾苗的稻根因为吸收水分困难,就会造成禾苗返青期延长.也因为禾苗叶片丧失的水分多,禾苗出现卷叶死苗的现象.因此,水稻禾苗移栽后必须深水返青.不过,深水返青一般以水深3~4 cm为适宜,并不是灌水越深越好.

2)第二阶段的浅水分蘖.分蘖期的水稻,在稻田灌水过深的情况下,往往会由于土壤缺氧闭气,禾苗基部光照弱,禾苗养分分解缓慢,禾苗分蘖困难.但分蘖期也不能没有水层.一般以保持1.5 cm深的浅水层为宜,并要做到“后水不见前水”,以利协调土壤中水、肥、气、热的矛盾.

3)第三阶段的有水壮苞.水稻稻穗形成期间,是水稻生长期中大量耗费水的时期,特别是减数分裂期,对水分的反应更加敏感.这时如果缺水,就会造成颖花退化,穗短、粒少、空壳多等.所以,水稻孕穗到抽穗期间,一定要保持田间有3 cm左右的水层,以保花增粒.

4)第四阶段的干湿壮籽.水稻抽穗扬花以后,叶片停止长大,茎叶不再伸长,颖花发育完成,禾苗需水量减少.为了加强田间透气,减少病害发生,提高根系活力,防止叶片早衰,促进茎秆健壮,应采取“干干湿湿,以湿为主”的用水管理方法,以期达到的以水调气,以气养根,以根保叶,以叶壮籽的目的.

为了理论证明的方便以及建模的需要,本研究把水稻的生长期划分为N个阶段,这N个阶段也就是建模中的粒子群维度.N个阶段形成N维向量的粒子,每个阶段的用水量设为粒子的一维,随机选取5N组N维向量组形成整个粒子群.

设:Si为计划湿润层内可供水稻利用的土壤储水量,Si1、Si2为降雨前后第i个天然土层的土壤含水量,以占干容重的百分数表示.θ为计划湿润层内土壤平均含水率,以占干土重的百分数计.CKi为第i阶段的地下水补给量,θw为土壤含水率下限,约大于凋萎系数,以占干容重的百分数计.θf为田间持水量,以占干土重百分数计.H为计划湿润层深度,Hi从为第i个天然土层的土壤厚度.Pei为第i阶段的有效降雨量,Pi为自然降雨量.α为降雨入渗系数α值与一次降雨量、降雨强度、降雨延续时间、土壤性质、地面覆盖及地形等因素有关。并且一般地,一次降雨量小于5 mm时,α为0;当一次降雨量在5~50 mm时,约为1.0~0.8;当次降雨量大于50 mm时,α=0.70~0.80。.γ为土壤干容重.n为天然土层数.WZi为第i阶段计划湿润层增加而增加的水量.WZi为零时,表明当时段内计划湿润层深度一致.

F(x)=max

(ETa)i=Si-Si+1+mi+pei+CKi-Ki,(2)

式(1)、(2)中,λi为第i个阶段水稻产量对缺水的敏感指数,(ETa)i为第i阶段的实际蒸发蒸腾量/mm,(ETm)i为第i阶段的潜在蒸发蒸腾量/ mm,Pei=αPi,Si=10γH(θi-θω).式(1)和式(2)中的约束条件为∑Ni=1mi=Q以及θw≤θ≤θf.

3.2 不类型水稻用水优化配置模型

不同类型的水稻,其用水优化配置的模型构建如下:

以不同类型水稻的生长期为一个完整的时期(稻谷从播种到收获有 3~5 个月的周期.一般早稻的生长期为 90~120 天,一季稻为 120~150 天,晚稻为 150~170天).假设有M种水稻(由于稻是人类的主要粮食作物,目前世界上可能超过有14万种的稻,而且科学家还在不停地研发新稻种,因此稻的品种究竟有多少,是很难估算的.尽管农户一般种植早稻、一季稻和晚稻,但也不排除农户种植其他类型的水稻),阶段变量K=1,2,…,M,所有类型水稻的种植面积为已知条件,C0为水稻灌区总的可供水量(m3),不同类型水稻的可分配水量为Ck(m3),实际分配给每种类型水稻的净灌溉水量为Qk(m3),所有种植面积的水稻全部得到灌溉,则有所有类型水稻之间水量平衡方程

Ck+1=Ck-Qkη, (3)

式(3)中,初始条件Cl=C0.η为水稻用水的有效利用系数,η一般取0.8~0.9.

在不以单个农户为收益单位、而以某个地域(比如某个县、乡,或者某个村)为收益单位,则可以以各种类型水稻所带来的经济效益之和G最大为目标,建立目标函数

G=max ∑Mk=1F(Qk)·AK·YMk·PRk, (4)

式(4)中,G的单位为万元,F(Qk)为由第一层反馈回来的效益指标(最大相对产量),Ak为第k种水稻的优化种植面积,YMk为第k种水稻的充分供水条件下的产量,PRk为为第k种作物的单价.输入灌区总的可用水量为Q、灌区内水稻种类数量为M,YMk及PRk分别为第K种类型水稻充分供水条件下产量(kg/hm2)及单价(元/kg).式(3)和式(4)中的约束条件为0≤Qk/η≤Ck,0≤Ck≤C0以及0≤∑Qk/η≤C0.

4 衡阳县高炉村的水稻用水优化配置算例

衡阳县地处五岭上升和洞庭湖下陷的过渡地带,“衡阳盆地”北沿.“衡阳盆地”属于南方湿热丘岗地易侵蚀退化脆弱区,是典型的红壤丘陵盆地.衡阳县地貌类型以岗、丘为主,海拔100~500 m之间的土地面积占全县土地总面积46.4%,坡度在15°以上的土地面积比重为52.6%.高炉村地处衡阳县洪罗庙镇南侧,地貌属于南方丘陵区类型.目前,全村人口1 217人,309户,分属于12个村民小组.全村耕地面积1 428亩,其中水田794亩,早地634亩.蒸水河从村的北边流过,池塘水域面积53亩.高炉村的水田,均种植水稻.不过,多数农户同时种植早稻和晚稻,也有不少农户种植一季稻.2009年以前,高炉村在各种水稻用水时,全是采取粗放型管理方法管理用水[9,10],各种水稻(早稻、一季稻、晚稻)的用水量及产量,见表1.2010年,该村在衡阳县政府有关部门的倡导和大力推动下,采取了精细化的水稻用水管理措施,应用了基于粒子群算法的用水量管理.该算法对衡阳县高炉村782亩水稻田(794亩水田中,有12亩田,因为各种原因,并没有种植水稻)进行了水稻用水优化配置应用研究,见表2和表3.衡阳县高炉村的水稻用水优化配置算例,验证了本文的算法.

通过表2和表3可以发现,本文所使用的粒子群优化算法,在早稻、一季稻和晚稻等不同类型水稻的用水优化配置以及同一类型的水稻在不同的生长阶段用水的优化配置方面,产生了较好的实际效果,表现为水稻产量得到提高.这说明粒子群优化算法寻优能力和优化效率更高,该算法在不同类型的水稻和同一类型水稻的不同生长阶段的用水优化配置,均是可行的.参考文献

[1] 刘玉邦,梁川.免疫粒子群优化算法在农业水资源优化配置中的应用[J].数学的实践与认识, 2011,41(20):163-171.

[2] 陈晓楠,段春青,邱林,等.基于粒子群的大系统优化模型在灌区水资源优化配置中的应用[J].农业工程学报,2008,24(3):103-106.

[3] 崔远来,李远华.作物缺水条件下灌溉供水量最优分配[J].水利学报,1997,28(3):37-42.

[4] 李霆,康绍忠,粟晓玲.农作物优化灌溉制度及水资源分配模型的研究进展[J].西北农林科技大学学报:自然科学版,2005,33(12):148-152.

[5] 贺正楚,翟欢欢.基于DEA三阶段模型的两型农业生产效率——以湖南省为例[J].农业系统科学与综合研究,2011,27(4):395-400.

[6] 苏里坦,宋郁东,愈双思.大型灌区高产节水灌溉优化配水决策模型研究[J].水利学报(增刊),2005:369-373.

[7] 刘玉邦.农业水资源高效利用理论及其在川中丘陵区的应用[D].成都:四川大学水利水电学院,2011.

[8] 水稻全生育期如何管水[EB/OL].[2008-01-04]http://data.jinnong.cc/mspx/d9539.shtml.

[9] 贺正楚.基于数据包络分析法的湖南省“两型”农业生产效率评价[J].农业现代化研究,2011,32(3):344-347.

粒子群算法的改进算法研究 篇4

基本PSO算法虽然比较简单,实现相对容易,不需要调整太多的参数,同时算法的早期收敛速度也比较快;但算法后期会受到随机振荡现象的影响,导致算法搜索到全局最优解的时间比较长,减慢了收敛速度;并且在一定程度上使其局部搜索能力表现较差,极易陷入局部最小值,精度降低,易发散[2]。针对基本粒子群算法的收敛精度问题,该文提出了一种新的改进粒子群优化算法—LPSO。

1 改进PSO算法研究

1.1 基本PSO算法

随机初始一群粒子,每个粒子均不包括体积和质量信息,将每个粒子都看作为优化过程中的一个可行解,粒子的好坏通过一个事先设定好的适应度函数来进行确定。优化过程中,每个粒子都将在可行解空间中进行运动,由一个速度变量决定其方向和距离。通常情况下粒子将追随当前的最优粒子,并经过不断的迭代搜索最后得到全局最优解。在每一次迭代过程中,粒子都将会跟踪两个最优值:一个是粒子本身迄今为止找到的最优解,即局部最优解;另一个是整个粒子群体到目前为止找到的最优解,即全局最优解[3]。

假设一个由n个粒子组成的粒子种群在d维的搜索空间中按照一定的速度进行飞行。粒子i在t时刻的状态属性设置如下:

位置:

Xi(t)=(xi1(t),xi2(t),…,xid(t)

xid (t)∈[Ld,Ud]

其中Ld为搜索空间的下限,Ud为搜索空间的上限;

速度:

其中:vmin为最小速度,vmax为最大速度;

个体最优值位置:

Pi(t)=(pit(t),pi2(t),…,piD(t))

全局最优值位置:

pg(t)=(Pgt(t)pg2(t)…,pgD(t))其中:1≤d,1≤i≤M。

那么粒子在t+1时刻的位置可以通过下式来得到:

式中,r1、r2都为均匀分布在(0,1)区间的随机数;c1、c2是学习因子,一般取2。

基本的PSO算法尽管比较简单,实现也相对容易,并且不需要调整太多的参数,早期收敛速度快;但同时也存在其局限性,由于粒子在移动时没有选择性,即使下一个粒子位置的评价函数值较差,粒子还是利用逐个位置来代替当前位置,这样就使得粒子很容易跳出最优解附近的某一邻域,因此在一定程度上表现出较差的局部搜索能力,比较容易陷入局部最小值,降低了精度,也易发散[4]。鉴于基本粒子群算法还存在一些不足之处,该文提出了一种新的改进的粒子群算法,下面将对其做具体介绍。

1.2 粒子群算法的改进算法研究

该文所提出的改进的粒子群算法主要是在基本粒子群算法基础上,对以下几个方面做了改进:

(1)惯性权重模型。

由于惯性权重w较大时,算法具有较强的全局搜索能力;w较小时,则算法局部搜索能力较强。所以本文中采用线性模型,随着迭代次数的增加,将w由初始的0.9线性递减至0.4,以达到期望的优化目的。权重函数w由下式确定:

式中Wmax为最大惯性权重,一般取0.9,wmin为最小惯性权重,一般取0.4。

(2)学习因子模型。

学习因子c1、c2表示粒子向个体最优值和全局最优值进化的随机加速权值。当c1、c2都等于0时,粒子会按照当前速度进行飞行,直到运动至边界处。当学习因子较小时,粒子将会在远离最优值区域内发生振荡现象;较大的学习因子则可以促使粒子快速向最优解区域内移动。所以该文中采用自适应模型,如下式所示:

式中cmax为最大学习因子,Cmin为最小学习因子,MaxDT为最大迭代次数,t为当前迭代次数。

(3)粒子位置更新方程的改进。

基本PSO算法前期,精度较低,易发散。如果参数较大的话,在后期收敛速度会变慢,从而无法继续进行优化。在进化规划中,算法中若带有高斯变异和柯西变异算子时,算法都会取得较好的收敛效果,因此,该文中对个体最优解加入了高斯算子,每次找到一个个体最优值时,将在其周围利用高斯算子进行局部搜索。这样不仅可以提高算法前期的收敛精度,还可以改进算法后期的收敛速度,可以有效避免后期在最优解附近发生振荡。所以该文中的粒子位置通过下式来进行更新:

是均值为0,方差为1的高斯变量,fmin是n个粒子中的最小适应函数值,即当前最优值,β是尺度因子,通常取0.6。

(4)早熟收敛的改进策略。

PSO运行过程中,如果其中一个粒子发现一个当前最优位置,此时其他的粒子会快速向其聚集。如果该最优位置是个局部极值点,或者两个粒子均处于局部极值点,此时整个粒子种群将不可能在解空间内重新进行寻优,导致算法失去了搜索能力,陷入局部最优,这一现象就称为早熟收敛。该文对会与当前最优解重叠的粒子加入交叉操作过程,这样可以使该粒子状态重新更新,寻找新的搜索区域,从而跳出函数的局部极值点。首先给定一个阈值,如果其中一个粒子与当前最优粒子的位置距离小于之前设定的阈值,则对其进行交叉操作。具体的交叉公式如下:

式中x是粒子位置,x为粒子速度,pi是介于[0,1]之间的一个随机数,x'ibest为局部最优解。

2 仿真实验

(1)粒子群算法性能比较仿真。

为了验证改进粒子群算法的有效性,该文中选取标准的测试函数,分别利用基本粒子群算法和改进后的粒子群算法对函数进行优化,寻找适应度函数的最优解。

测试函数:Griewank函数

式(6)中的X表示一个粒子,xi为粒子的每个分量,d为每个粒子的维数[3]。

首先在[-10,10]的区间内均匀生成两组数,作为初始的粒子种群,数的个数为生成粒子的个数,每个粒子都是二维的,则该函数的三维图形如图1所示。由图可以看出:该函数存在多个局部极值点,但只存在唯一的全局最优点在(0,0)处。

该文在进行仿真实验过程中的相关参数设置如下:学习因子cimin=2,cimax=5,粒子个数n=100,粒子维数D=10,粒子位置范围xi∈[-100,100],最大迭代次数选取为100次,交叉操作过程中的阈值g取0.5,尺度因子β取0.6。仿真结果如下,图2中描述的是函数的最优适应值与迭代次数之间的关系。

由上述仿真结果可以看出,改进的粒子群算法(LPSO)较基本粒子群算法,不管是收敛精度还是循环迭代次数,都有所提高,验证了改进算法的有效性。

3 结语

该文在基本PSO的基础上,对参数的选择进行了调整,同时引入高斯算子及交叉操作过程。仿真结果证明,改进后的算法收敛效果较好。

参考文献

[1]张必兰.改进的粒子群优化算法及应用研究[D].重庆:重庆大学,2007.

[2]李丽,牛奔.粒子群优化算法[M].北京:冶金工业出版社,2009.

[3]吴进华,吴华丽,周仕.基于模拟退火的粒子群算法[J].仪器仪表学报,2008.

[4]Yumao Li.Particle swarm optimization algorithm research and improvement[D].Northwestern university master degree thesis,2009.

[5]任小波,杨忠秀.一种动态扩散粒子群算法[D].银川:宁夏工程学院,2010.

粒子群算法研究概述 篇5

摘 要:针对目前配电网中存在的分布式电源规划问题,在最大化电压静态稳定性、最小化配电网损耗以及最小化全年综合费用三个方面建立了分布式电源规划的优化模型。在规划模型的基础上,采用拥挤距离排序的多目标量子粒子群优化算法(MOQPSO-CD)以及基于量子行为特性的粒子群优化算法(QPSO),来更新和维护外部存储器中的最优解,通过对全局最优最小粒子的选择引导粒子群能够对分布式电源的配置容量与接入点位置的真实Pareto最优解集进行查找,获得对多个目标参数进行合理优化。最后采用IEEE33节点的配电系统,在模拟仿真实验过程中获得了分布式电源容量配置以及介入位置的合理方案,验证了优化算法的可行性。

【关键词】分布式电源规划 Pareto最优解 配电网

分布式电源(Distributed Generation,DG)由于其在减少环境污染、节约成本、发电方式灵活、减少发电输送中的线路损耗、改善电网中的能源质量以及提高电网供电稳定性等方面具有优点,在配电网中发展迅速。然而,在配电网中加入分布式电源会使电网中原有的结构发生改变,从而导致节点电压、线路损耗与网络损耗产生了不同程度的变化。如果分布式电源注入容量与接入点位置的配置出现问题,会加大电网中线路与网络等损耗,并且会对电网供电的可靠性产生严重影响,因此,针对这一现象,对DG的容量与配置参数进行合理的优化具有重要意义。

国内外许多学者曾对DG的参数配置优化问题进行了较为深入的研究并取得了一定进展。文献[1]针对分布式电源中的地址定容问题采取了单一目标的优化方法,但是该方法在实际电网中的可行性存在问题。文献[2]采用传统的模糊理论提出将电网中具有多目标优化方案转变为只有单一目标的优化方法,并且采用遗传算法,优化了分布式电源中的容量与位置。文献[3]对于配电网中DG的容量与选址通过改进遗传算法进行优化,但是该方法存在计算时间长、算法过于复杂有时会计算得出局部的最有求解等缺点。文献[4]通过改进的自适应遗传算法,搭建了基于DG环境效益与政府关于可再生能源补贴的最小化经济模型。

在实际应用中,对于配电网中分布式电源的优化需要考虑许多变量,一般都具有比较复杂的目标函数,对其进行优化时将多个目标函数转化为单一函数非常困难,因此必须采取有效措施节约分布式电源多目标模型建立中的相关问题。本文以分布式电源的配置容量及其在配电网中的接入位置为两个切入点进行研究,建立配电网在单位年中的费用最小、电网网络以及线路损耗最低、静态电压在最优系统中的稳定性3个目标函数的分布式电源优化模型。在粒子群优化(QPSO)算法中量子行为特性的理论上加入拥挤距离排序技术,维护与更新外部存储器中的最优解,将生成分布式电源的最优配置方案问题转化为求解全局最优的领导粒子问题。最后,运用Matlab仿真软件对本文所提出的方案进行验证。配电网中DG的多目标规划模型

1.1 目标函数

1.1.1 网络损耗最小目标函数为

那么,求解出配电网中电压稳定指标的最小值minL即可知最大化静态电压的稳定裕度。

1.2 约束条件

1.2.1 等式约束

约束方程可以用潮流方程表示为:

式中,Pdi、Qdi为配电网中第 台发电机的有功、无功输出,PDGmax为分布式电源有功输出上限,PDGmin为分布式电源有功输出下限,QDGmax为分布式电源无功输出上限,QDGmin为分布式电源无功输出下限,Uimax为节点i电压上限Uimin为节点i电压下限,SDGi为配电网中拟接入的第i个DG的容量大小,SDGmax为配电网中可以接入的DG最大装机容量,Pl为线路l的传输功率。基于拥挤距离排序的粒子群优化算法

2.1 量子行为特性的粒子群优化算法

传统的粒子群优化(PSO)算法在求解方面具有不同程度的缺点,如容易陷入局部求解最优,收敛精度低等。为了防止粒子群算法进入早熟,并且尽可能加快算法的收敛减少计算时间,文献[10-11]给出了改进粒子群算法,使得具有量子行为特性的粒子群算法的实用性大大提高,在局部精度方面得到明显的提高,并且与PSO相比较仅具有一个位移更新公式。在本文中基本粒子群的集合设定为不同负荷节点处DG的输入功率,因此得到的集合为:

其中,i(i=1,2,???,P)为粒子群中的第i个粒子,j(j=1,2,???,N)为粒子在粒子群中的第j维,N为搜索空间的维数;ui,j(t)和φi,j(t)均为在区间[0,1]上随机均匀分布的数值,t为进化代数,xi(t)为在t代进化时粒子i的当前位置,pi(t)为在t代进化时粒子i的个体吸引子位置,yi(t)为在t代进化时粒子i的个体最好粒子位置,为群体在t代进化时的最好位置,C(t)为粒子在第t代进化时的平均最好位置,定义为全部粒子个体位置最好时的平均位置;α为扩张-收缩因子,是在迭代次数与除群体规模以外的唯一参数。

2.2 MOQPSO-CD算法

由于粒子群算法具有记忆特性,利用这一特性可以解耦特性粒子的解空间,求出解空间后可以适时调整控制策略,并能够通过记忆功能对当前动态进行搜索,同时具有优良的鲁棒特性和在全局范围内的搜索能力。然而,QPSO收敛的速度过快,导致了算法收敛过快,因此Pareto的解不具有多样性特点。为了寻找该问题的解决方案,本文通过利用外部存储器储存Pareto在求解过程中所产生的非劣解,从而可以较快地达到Pareto前沿。这样可以达到减少计算时间,更快获得领导粒子的目的。由于领导粒子是在所有粒子中表现最好的个体中得到的,它可以体现出整体粒子群体的认知能力,对于群体在搜索中的方向起着引导作用。为了即时更新外存储器中的非劣解,本文所采用的拥挤距离排序算法属于第2代非支配排序遗传算法(NSGA-II),通过对其进行操作,可以尽快地通过领导粒子找到Pareto的最优解。与此同时,为了使多样性在粒子种群中得到丰富,基于此算法的基础上加入高斯变革算子对粒子种群寻优过程中解的多样性进行扩充。

2.2.1 领导粒子的选择

在领导粒子选择的过程中即时对新外部存储器中粒子集进行维护更新是很有必要的。其目的在于保证粒子群的多样性,并能确保Pareto最优解集的合理分布。在此算法条件下,外部存储器中的粒子集必然会存在当前代数最优的粒子,然后通过拥挤距离值算法计算器内部粒子集中每个个体距离值,通过计算拥挤距离值的方法,将粒子集合内的个体进行量化,当出现拥挤距离值最大的粒子时,表明在目标空间中该粒子成为领导粒子可能性增加。当有两个或多个领导粒子的拥挤距离值相等时,领导粒子将会在之对应的最优粒子中随机选取。

2.2.2 拥挤距离值的计算

拥挤距离排序方法描述了在一个最优解周围分布其他最优解的密度情况。以下简单阐述了本文所用到的拥挤距离计算方法,具体实现可参考文献[13]。Gj(i)(j=1,2,3)依次表示网络损耗、年综合费用和静态电压稳定指标3个目标函数值;P为粒子群集合的大小,亦可描述可行解的数量。首先,对于存储在外外部存储器的全部最优粒子,在所有需要优化目标上的函数取值进行升序排列,然后可以得到在所有优化空间上与最优粒子相接近的其它最优粒子,然后可以计算得出在统一空间内两个优化粒子的距离;最后最优粒子的拥挤距离可以通过所有最优粒子距离的求和方式得出。以本文为例详细说明拥挤距离值的特征,逐一计算并遍历相邻最优粒子的空间距离,粒子i和相邻粒子i+1在优化目标空间的距离:

2.2.3 外部存储器更替算法

在本文中人为设定两条存储器更新规则,以便满足外部存储器中存在最优粒子的目的,规则如下:

(1)位于存储器中的粒子被新生成的粒子支配时;

(2)如若外部存储器已满,则需运用拥挤距离排序算法对其内部所有进行重新排序,根据公式(16)计算所有粒子的拥挤距离值,并且按照计算出数值的大小进行排列。

2.2.4 算法实施步骤

本文选用借鉴第2代非支配排序遗传算法的基于量子行为特性的粒子搜索解空间算法对配电网中的分布式电源进行优化配置,图1所示为算法具体流程,计算过程为:

(1)初始化起始数据,数据内容为事先已规划内容,初始化算法基本参数(粒子群的规模、粒子群的初始位置、并设定最大迭代次数),系统对分布式电源位置,以及初始粒子群数据集进行随机采样。

(2)依照步骤(1)中设置的规则,对外部存储器中的粒子进行初始化设置。

(3)需要对粒子进行排位,排位的算法由公式(1)~(4)给出,可以计算出目标函数值,同时,根据公式(16)可以计算出拥挤距离值,根据以上两个参数进行排位。“2.2.1节”的方法选出粒子群中的领导粒子,最后利用QPSO位移更新方程对每个粒子进行重置。以上计算过程将会计算采样粒子集合内任意粒子的拥挤距离值。评价其是否达到Gauss变异算法条件,若达到该算法条件,则进行Gauss变异操作(Gauss mutation operator),否则转到步骤④。

(4)对③中运用QPSO位移更新算法计算出的所有粒子进行评价,并算出所有粒子的潮流数值,将其接入位置以及配置容量用数值量化,并对比量化后的函数值,按照柏拉图最优解定律计算出个体最优粒子及外部存储器最优粒子集。与计算出的上一个最优粒子相比较,新产生的粒子群中某粒子更优,则将新出现粒子作为最优粒子;若二者不能相互支配,那么二者中任意一个将被选为最优粒子,并将其放入外部存储器,然后转步骤⑤;否则舍弃更新后的粒子并转⑥。

(5)对已进入外部存储器中的粒子,按照公式(16)对其进行计算,已达到随时更新存储器中粒子的目的。通过步骤(5)可以达到将最优粒子存入外部存储器的目的。

(6)计算进化代数,若满足终止代数,则将存储器中现有的粒子作为输出,此时输出的粒子集就是所寻找的柏拉图最优输出集;否则转步骤③。算例分析

利用本文建立的模型,对IEEE 33节点配电系统进行模拟仿真,配电网系统如图2所示,对分布式电源的位置以及其容量进行重新配置。该配电系统中,额定电压为12.66kV,有功负荷的取值为3715kW,总无功负荷的取值2300kVar,总节点数为33个,总支路数为32条(其中5条为联络开关)。配电系统基准容量设为10MVA,其中平衡节点选在0号节点,分布式电源接入比例小于30%,安装节点集合为?x1,2,???,31?y(图2中的32节点将不会接入分布式电源中,因为该节点是尾端节点,并且同变压器支路侧相连,因此不需接入)。根据文献[3]可知,在计算分布式电源时,可以将其近似看成负的PQ节点,根据经验公式,选取功率因数值为0.9。初始采样粒子群集合规模为90,进行100次迭代。

按照本文所搭建的数学模型及算法计算出分布式电源配置的柏拉图最优解,及其目标函数的空间分布,如图3所示。根据图3可知,计算出的所有解相互独立分布,每个不同解均可表示出当前条件下的配置效果。以图中所列出的解

1、解2及解3为例,说明不同情况下的DG配置结果。解1情况下电压稳定指标大于0.02,相比其他两种情况最不稳定,网络损耗为80kW,损耗过大,但是年综合用最小;解3和解2相比较而言,解3在网络损耗和电压稳定性方面要优于解2,然而解3在年综合费方面是三种情况中最大的;对于解2来说,无论是年综合费用或者网络损耗以及电压稳定性指标这三个参数指标适均介于解1和解3之间,因此,考虑综合因素以解2最好。表1所示为解

1、解2和解3的DG配置方案,3个解分别与3个方案对应。

通过对比表1中的方案配置可以看出,不同DG配置方案会对年综合费用、网损和电压稳定性产生影响。在对电源在辐射线路中放置位置的分析后发现,放置位置越靠前,线路潮流受到的影响就越小。根据表1配置DG方案接入配电网,配电网络损耗将会有一定幅度下降,同时电压稳定性指标也会达到满意的效果,按照该配置方案规划,最为突出的优点是电网网络损耗方面,按照方案3配置后,电网网络损耗下降了80%。

结语

以减少电网网络损耗及年综合费用为优化目标,同时兼顾静态电压稳定性为原则,建立了DG规划的模型,在计算方面选取具有量子行为特性的粒子群优化算法(QPSO),以及基于拥挤距离排序的多目标量子粒子群优化算法(MOQPSO-CD),同时采用模拟仿真对33节点配电系统进行优化,得出了基于DG配置的Pareto最优解集,由此实现了对DG优化规划的目的。并得出以下结论:为了尽可能的降低电网损耗,同时提高电压稳定性,需要将DG配置在主变电站远端位置,即馈线末端,此时DG配置收益最高。

参考文献

[1]QIAN Ke-jun,ZHOU CHENG-KE,ALLAN MALCOLM,et al.Effect of load models on assessment of energy losses in distributed generation planning[J].Electrical Power and Energy Systems,2011,33:1243-1250.[2]陈海焱,陈金富,杨雄平,等.配电网中计及短路电流约束的分布式发电规划[J].电力系统自动化,2006,30(21):16-21.[3]邱晓燕,夏莉丽,李兴源.智能电网中分布式电源的规划[J].电网技术,2010,34(4):7-10.[4]李德泉,徐建政,罗永.含分布式电源的配电网扩展规划[J].电力系统及其自动化学报,2012,(5).[5]孙俊.量子行为粒子群优化算法研究[D].无锡:江南大学信息工程学院,2009.[6]武晓朦,刘建,毕棚翔.配电网电压稳定性研究[J].电网技术,2006,30(24):31-35.[7]KENNEDY J,EBERHART R C.Particle swarm optimization[C].IEEE IntConf of Neural Networks.Perth,1995:1942-1948.[8]ABGELINE P J.Using selection to improve particleswarm optimization[C]/Proc IEEE CongrEvolComput.Anchorage.AK.USA"IEEE Service Center,1998:84-89.[9]MIRANDA V,FONSECA N New evolutionary particle swarm algorithm applied to voltage control[C].Proc 14th Power SystComputConf.Spain:IEEE Service Center,2002:1865-1873.[10]LIjun-jun,WANGxi-huai.Amodified particle swarm optimization algorithm[J].Intelligent Control and Automation,2004,1:354-356.[11]候云鹤,鲁丽娟,熊信艮,等.改进粒子群算法及其在电力系统经济负荷分配中的应用[J].中国电机工程学报,2004,24(7):95-100.[12]DEB K,PRATAP A,AGRAWAL S,et al.A fast and elitist multiobjective genetic algorithm:NSGA-II[J].IEEE Trans on Evolutionary Computation,2002,6(2):182-197.[13]张君则,艾欣.基于粒子群算法的多类型分布式电源并网位置与运行出力综合优化算法[J].电网技术,2014,38(12):3372-3377.[14]刘幸.基于量子粒子群算法的分布式电源多目标优化[D].北京:华北电力大学,2012.[15]ROUHANI A,HOSSEINI S H,RAOOFAT M.Composite generation and transmission expansion planning considering distributed generation[J].International Journal of Electrical Power & Energy Systems,2014,62(11):792-805.[16]叶德意,何正友,臧天磊.基于自适应变异粒子群算法的分布式电源选址与容量确定[J].电网技术,2011,(06):155-160.[17]BJELIC I B,CIRIC R M.Optimal distributed generation planning at a local level-A review of Serbian renewable energy development[J].Renewable & Sustainable Energy Reviews,2014,39(6):79-86.[18]朱艳伟,石新春,但扬清,等.粒子群优化算法在光伏阵列多峰最大功率点跟踪中的应用[J].中国电机工程学报,2012,32(4).[19]黄平.粒子群算法改进及其在电力系统的应用[D].广州:华南理工大学,2012.[20]施展,陈庆伟.基于QPSO和拥挤距离排序的多目标量子粒子群优化算法[J].控制与决策,2011,26(4):540-547.[21]ZHANG L G,ZUO H.Pareto optimal solution analysis of convex multi-objective programming problem[J].Journal of Networks,2013(02).[22]李中凯,李艾民,朱真才.拥挤距离排序的多目标文化粒子群优化算法[J].控制与决策,2012,27(09):1406-1410.[23]慕彩红.协同进化数值优化算法及其应用研究[D].西安:西安电子科技大学,2010.作者单位

粒子群算法研究概述 篇6

关键词:计算机神经网络;粒子群优化算法;应用

中图分类号:TP183

粒子群优化算法是一种相对简单、有效的随机全局优化技术,通过对粒子群优化算法进行相应的改进,以此确保其收敛性,然后再将粒子群优化算法应用到神经网络的学习训练中,能够更有效的找出最优化解。粒子群优化算法和遗传算法相比,粒子群优化算法并没有遗传算法复杂的交叉、变异以及编码,而是对粒子所在解空间的具体位置进行搜索,不需要对众多的参数进行调整,其收敛速度相对较快。

1 粒子群优化算法的基本原理以及优化改进

1.1 粒子群吧优化算法的基本原理

PSO中,每一个优化问题的解都是搜集空间中的一个“粒子”的状态,粒子群优化算法是对群体的全局进行考虑,通过迭代搜寻选取最优值,通过将系统转化成一组随机的例子,由于例子在解空间追随最优的例子进行凑所,所以粒子群优化算法是一种具有全局寻优能力的优化工具。例子群优化算法的基本原理表现为:假设在一个D维的目标搜集中间中,由N个不同的粒子组成了一个特定的群体,其中第i个粒子表示成其在这个D维空间中的向量(xi),也就是该粒子在D为空间中的位置,每一个粒子的位置都存在一个特定的解,通过将xi带入到相应的目标函数中,通过适当的函数计算就能得到其适应度值,然后根据该xi适应度值的大小,以此衡量xi的优劣程度。其中,第i个粒子飞行的速度表示D维中的另一个向量,表示为vi,将在D维空间中搜索到的第i个粒子的最有位置记录为pi,则整个粒子群搜索到的最有位置pi的粒子群优化算法表现为:公式一:vi=ci+c1r1(pi-xi)+c2r2(pg-xi);公式二:vik+1=vik+c1×rand()×(pbest-xik)+c2×rand()×(gbest-xik);公式三:xi=xi+vi,其中i=1,2,…N;r1和r2为学习因子,rand()表示介于[0,1]之间的随机常数,c1和c2表示为非负常数。其中迭代的终止条件是根据选择的最大迭代次数决定的,表示的为第i个李在迄今为止搜索到的最优化位置应该满足的适应度的最小值。

从社会学角度方面来说,粒子群优化算法公式中的表示的是粒子的记忆项以及自身认知项,能够表示上次速度的方向以及大小对粒子造成的影响,还能够将当前的指向粒子当作自身的最优化矢量,以此表示粒子的动作来源于自身的经验,能够反映粒子之间的协同作用以及知识共享,粒子能够根据粒子群中相邻粒子的最好经验,然后再结合自身的经验,以此来决定自身的下一步运动,从而形成PSO的标准形式。

1.2 粒子群优化算法的改进

粒子群粒子群优化算法需要用户确定的参数相对较少,并且其操作相对简单,因此该种方法使用起来非常方便,但是,由于粒子群优化算法容易陷入局部极值点,导致搜索的收敛性相对较低,并且粒子群优化算法的收敛性分析已经收到众多学者的重视,因此,为了增强粒子群优化算法的收敛性,可以将抗体多样性保持机制引入到粒子群优化算法中,其步骤表现为:首先,确定参数值,记忆粒子个数M,即常数因子c1和c2粒子群的个数N,粒子的浓度概率选择阀值Pi,其随机产生的N个粒子xi的飞行速度表示为vi,以此计算粒子的适应度函数值;根据公式计算粒子的选择概率,将粒子群体中前M个最大适应度的粒子当作记忆细胞进行储存,将概率大于Pi的粒子根据相应的方法进行计算,从而把M个记忆细胞替换成适应度最差的M个粒子,以此形成全新的粒子群,最终判断其能付满足相应的选择条件,如果满足输出适应度值最好的要求,则选定该粒子。由此可见,通过上述的方法对粒子群优算法进行改进,能够保证粒子群优化算法的精确性,并且通过实践证明,经过改进后的粒子群优化算法,其计算机的仿真结果显示,该种粒子群优化算法的收敛速度明显优于没有改进的粒子群优化算法的收敛速度。

2 粒子群优化算法在计算机审计网络中的应用

计算机神经网络能够模拟大脑的思维能力,然后通过对各种数据进行分析,从而建立其相应的数学模型,计算机神经网络中除了包含许多处理器以外,还包含了许多与人脑神经相似的节点,这些节点按照一定的规律进行连接。如果将计算机神经网络中的每一个过程都细分为若干个微程序,并且将所有的微程序都交付于处理器进行处理,那么处理器处理所有的微程序的过程,就是一条微程序的处理流水线,这样计算机处理信息的速度也将会显著的提高。粒子群优化算法在计算机神经网络中的应用,包括的内容有组合优化、参数优化、神经网络训练、学习算法、网络拓扑结构和传递函数、链接权重等,通过把个体转化成微粒,其中包括计算机神经网络中的所有能够用到的参数,然后经过一些列的复杂、重复的程序,最终达到最终的训练目标。相对于传统的神经训练法来说,由于BP算法需要可微的函数以及梯度信息等大量的数据,只有通过大量的计算才能得到相应的训练结果,其运行难度较大、程序相对复杂,而采用离子群优化算法,其处理信息的速度显著的提升,能够有效的克服其运行效率低的问题。粒子群优化算法在计算机神经系统网络中的应用,主要表现在两个方面:其一,粒子区优化算法在参数优化中的应用,能够通过解决计算机神经网络中的各种离散型问题,从而进行参数优化;其二,粒子群优化算法在组合优化中的应用,其中典型的应用表现为其在工程经济问题中的应用,其能够通过将各种资源进行科学的组合,通过设置一定的约束条件对这些组合进行排序,通过不断的尝试最终能够找到最有效的解决方案,然后合理的利用所有的组合实现经济效益的最大化。此外,粒子群优化算法不仅能够应用在计算机神经网络中,还能够应用在更多的领域中,例如软件编辑、游戏开发、电力系统等领域中。

3 结束语

文章对计算机神经网络中粒子群优化算法的应用进行了研究,对粒子群优化算法进行了相应的改进,有效的提高了粒子群优化算法的收敛速度。将粒子群优化算法应用在计算机神经网络中,其操作相对简单,比较容易实现,并且其还能够更快的收敛于最优解,有效的克服了传统遗传算法缺点。因此,在计算机神经网络学习训练中,广泛的推广和应用粒子群优化算法具有很大的现实意义。

参考文献:

[1]丁玲,范平,闻彬.粒子群优化算法在计算机神经网络中的应用[J].理论与算法,2013(17):39-41.

[2]曹大有.一种免疫粒子群优化算法及在小波神经网络学习中的应用[J].计算机应用于软件,2009(06):189-192.

[3]刘爱军,杨育,李斐.混沌模拟退火粒子群优化算法研究及应用[J].浙江大学学报(工学版),2013(10):1722-1729.

[4]虞斌能,焦斌,顾幸生.改进协同粒子群优化算法及其在Flow Shop调度中的应用[J].华东理工大学学报(自然科学版),2009(03):468-474.

[5]刘宝宁,章卫国,李广文.一种改进的多目标粒子群优化算法[J].北京航空航天大学学报,2013(04):458-473.

作者简介:张小军(1980.01-),男,河南人,讲师,研究方向:云计算,数据挖掘,通信技术。

改进粒子群算法的应用研究 篇7

Kennedy和Eberhart于1995年提出了粒子群优化算法 (Particle Swarm Optimization, PSO) [1]。由于该算法描述简单、需要较少的调整参数, 具有较快的收敛速度等优点, 目前己在自适应控制、组合优化、模式识别、管理决策等领域得到了大范围的应用, 被证明是解决全局优化问题的有效方法之一。

随着研究的不断深入, 学者们也发现了粒子群算法在优化过程中存在的一些弊病。粒子群算法参数的选择对优化的结果会产生很大的影响, 参数选择的合适与否会导致收敛速度和精度不同。针对上面提出的问题, 学者们也作出了很多改进的措施, 通过实验表明, 改进后的算法大多取得了理想的效果, 随着对理论的深入研究以及工程领域的不断实践, 显示出了自身无比广阔的应用前景和研究价值[2]。

2 粒子群算法基本原理

标准粒子群优化算法的理论产生于对动物群体智能觅食行为的模拟。对于鸟群的捕食行为, 我们可以设置如下场面:一个鸟群在一个森林里随机地寻找食物, 但是这个森林里只有一个地方有食物。没有一个鸟知道这个有食物的地方的具体位置, 但是它们知道他们的位置与有食物地点之间的距离。怎么能找到这个地方?最简单的办法就是找到哪只鸟离这个有食物地点的距离最小。粒子群优化算法就是从这种问题中得到启发并且应用到优化问题中。

在粒子群优化算法中, 每一个需要优化的问题的可能解都是解空间中的一个“粒子”。每个粒子都会对应一个适应值, 这个适应值由适应函数计算得到, 适应值的优劣决定了粒子位置的好坏。寻优过程中每个粒子都有两个描述粒子状态的量, 即寻优的速度和当前的位置。每个粒子都会不断的去追踪当前位置最优的粒子, 从而不断地向最优位置移动。

在解空间中初始化一个具有M个粒子的粒子群体。在优化的过程中, 群中每个粒子的状态都通过两个N维向量表示出来, 即当前的位置和移动的速度, 记作:X= (X11, X12, …, X1M) 和V1= (V11, V12, …, V1M) 。前者为粒子自身到目前为止经过的最好位置, 表示粒子自身的搜索经验, 即个体极值Pk1, 记为P1= (P11, P12, …P1M) ;后者为当前所有粒子经过的最好位置, 表示其他粒子的搜索经验, 即全局极值PK, 记为P1= (P1, P2, …PM) 。每个粒子都要追踪这两个极值来更新搜索的速度, 从而更新自身的位置, 直至搜索到全局最优解。

3 改进粒子群算法

禁忌搜索算法的收敛效果较好, 但计算的结果很大程度上依赖于设定的初始解, 一个合适的初始解很有可能会帮助禁忌搜索算法快速地收敛, 并找到全局最优解, 而一个不恰当的初始值会很大程度地使算法的收敛速度降低, 收敛效果变差。介于此, 我们考虑运用其他智能优化算法进行前期的计算来求得一个较好的初始解, 从而来完善禁忌搜索算法的优化效果。粒子群优化算法计算到后期时收敛速度变得缓慢, 局部搜索能力差, 但是粒子群优化算法的操作简单、易于实现、全局搜索能力强。分析了两种算法的各自特点后, 本文在粒子群优化算法的后期加入局部寻优能力较强的禁忌搜索算法, 把两种算法融合在一起, 这样以来就解决了粒子群算法后期收敛难的问题。

4 仿真分析

本文利用Matlab编程, 采用下图所示的含DG的IEEE-33节点配电网系统进行仿真。其电网额定电压为12.66kV, 网络总负荷为3715.0kW+j2300.0kVar。在系统的7、17、19、29节点处接有DG。进行重构前, 支路7-20、8-14、11-21、17-32、24-28打开。

在分布式电源接入配电网时, 由于DG和节点上的负荷支路距离非常近, 所以支路7-33、17-36、19-34、29-35上的电阻与电抗忽略不计, 视为零计算;DG的注入功率按照负荷进行计算, 并标记符号为负。

经过重构后, 得到最优结果为打开开关6-7、8-9、13-1424-28、31-32。系统不接DG前的初始网损为203.55kW, 接入DG后系统网损降低到90.99kW, 与之前相比减少了55%, 可见DG的接入降低了网络损耗。

实验结果表明本文提出的改进方法较之基本粒子群算法对降低网络损耗和提高节点电压具有明显的效果。

摘要:粒子群优化算法是由Kennedy和Eberhart于1995年提出的一种基于智能的进化算法。目前, 在自适应控制、组合优化、人工生命、管理决策等领域得到了广泛的应用。本文在粒子群算法后期加入了禁忌表思想, 形成了改进粒子群算法, 并将改进后的粒子群算法应用于配电网重构问题。通过对含分布式电源的IEEE-33节点系统进行仿真, 结果表明分布式电源的接入能够提高节点电压, 降低网络损耗, 证明本文算法对含分布式电源的配电网重构问题具有良好效果。

关键词:粒子群算法,配电网重构,分布式电源

参考文献

[1]曾建潮.微粒群算法[M].北京:科学出版社, 2004.

粒子群算法的边界问题研究 篇8

粒子群算法 (Particle Swarm Optimization Algorithm) , 缩写为PSO, 是近年来发展起来的一种新的进化算法。它是Kennedy和Eberhart受人工生命研究结果的启发、通过模拟鸟群觅食过程中的迁徙和群聚行为而提出的一种基于群体智能的全局随机搜索算法, 1995年IEEE国际神经网络学术会议发表了题为Particle Swarm Optimization的论文, 标志着PSO算法诞生。[1]该算法具有很好的生物社会背景, 对非线性、多峰问题均具有较强的全局搜索能力, 在科学研究与工程实践中得到了广泛的关注和应用。[2]

在粒子群算法的进化计算过程中, 经常会遇到被搜索空间边界约束的情况。边界问题理论上并不会对粒子群算法的造成巨大的破坏, 但在实际应用中却会造成计算资源的极大浪费。同时, 在有限的进化次数限制下, 会对算法效果产生较大影响。

本文就粒子群算法的边界问题进行了研究和分析, 并提出一些解决方案以供参考。

1 粒子群算法原理

粒子群算法最初是受到飞鸟集群活动的规律性启发, 进而利用群体智能建立的一个简化模型。其生物学模型主要源于生物学家Frank Heppner提出的鸟类栖息模型。[3]社会心理学研究成果揭示了社会性群体中的个体之间会发生信息交流, 并产生趋同认知。以鸟群为例, 每只飞鸟之间会通过声音或动作交流其个体的认知信息, 同时, 独立的飞鸟个体会趋向于跟随群体的大方向飞行。这样, 每个个体就会在自身经验的基础上, 获得了群体的经验知识, 增加了觅食的成功率。如果将每只飞鸟作为一个智能计算体 (agent) , 将这样的一组智能体作为族群, 用计算机来模拟其觅食过程, 就构建了基本的粒子群算法思想, 而所谓食物就是算法的目标函数。这样的基本粒子群算法也被称之为鸟群算法。

在粒子群算法中, 每个粒子都是一个智能体, 具有以下几个功能:

1) 运动功能:能在计算空间中自由运动。

2) 判断功能:能判断自身的适应度。

3) 记忆功能:能记忆自身的历史经验。

4) 交流功能:能和整个群体交流各自的经历。

这样的粒子集合就构成了粒子群, 该粒子群是一个智能体的群落, 同时具有个体不具备的群体智能。

基于以上思想, 基本粒子群算法表述如下:

vij (t+1) =wvij (t) +c1r1j (t) [pbest, ij (t) -xij (t) ]+c2r2 (t) [gbest, j (t) -xij (t) ]

xij (t+1) =xij (t) +vij (t+1)

其中vij (t) 代表第i个粒子在第t次进化时的速度;xij (t) 表示第i个粒子在第t次进化时的位置;pbest, ij (t) 是第i个粒子的个体历史最佳值;gbest, j (t) 是群体历史最佳值;w是粒子运动的惯性因子;c1是自身记忆影响因子;c2是群体影响因子;r1j (t) , r2 (t) 是随机因子;i是粒子序号;j是计算空间的维度序号。

2 边界问题的产生和分析

由上一章节可以看到, 基本粒子群算法兼顾了种群中每个粒子的惯性、自身经验和群体经验, 在进化计算过程中模拟了鸟群觅食的社会性群体机制, 达到了全局搜索的目的。但是在实际应用中, 有一个情况不可忽略, 那就是实际问题的搜索空间一般都是是有界的, 也就是说群体是被限制在了一个封闭的空间中, 单独的个体并不能任意运动。当单个个体突破了空间界限的限制, 就会给算法结构带来破坏, 造成以下一些问题:

1) 适应度函数失效:超出适应度函数的定义域, 导致判据失效, 得到错误的结论。

2) 解区间错误:在搜索空间之外, 无法得到有效解。

3) 计算资源浪费:在搜索空间之外不会得到有效经验, 也不会对群体知识进行改进, 这样的计算完全是浪费。

4) 延误进化进程:粒子个体在走出限制空间之后, 由于惯性原因, 会在错误的空间产生滞留, 严重影响算法收敛速度。

针对这样一些问题, 在算法上有必要增加一定的机制加以限制, 使粒子的运动限制在搜索空间范围内, 增加算法效率, 改善优化搜索效果。在实践过程中, 笔者发现可以采用以下一些方式对算法加以改进:

1) 增加搜索空间外的适应度定义, 可以将该区域的适应度设为最小值。这样, 可以依靠粒子自身的智能回归正确的空间。

2) 当粒子运动到空间边界时, 强制该粒子停止运动, 当前速度置为0, 粒子的适应度用当前所处的边界位置计算。

3) 将空间边界设置为反射面, 当粒子碰撞到空间边界时, 就产生反射作用, 让粒子根据一定的机制反弹回原空间, 并保持一定的速度。

以上几种方式从不同的的角度来处理粒子群算法的边界问题, 各有优缺点。

增加适应度定义的方法可以保持粒子群算法机制上的完善, 充分发挥粒子的智能和自主性。但是这样会牺牲一部分算法效率, 也就是牺牲掉粒子自主纠错的计算时间。强制粒子停止的方法可以最大化的节约边界问题的错误纠正时间, 但是, 粒子一旦停止后, 就会丧失原运动过程的惯性体系, 影响种群的多样性。让粒子反射的方法可以杜绝边界问题的产生, 同时, 也有利于保持种群多样性。但是反射过程的运动计算在一定程度上增加了计算时间消耗。

3 结语

通过上述研究可知, 粒子群算法是一种优秀的群体智能优化算法, 它机理清晰, 应用广泛。粒子群算法的边界问题影响到算法的效率和最终结果, 必须加以重视。在实际应用中, 采用适当的方法可以对边界问题加以处理, 使算法更加完善。

摘要:粒子群算法是一种实现容易、精度高、收敛快的新型进化算法。该算法在实际应用时会遇到粒子运动超出搜索空间的边界问题。边界问题对算法的效能产生了一定的影响, 需要对其加以研究和解决。

关键词:粒子群算法,边界问题,群体智能优化算法

参考文献

[1]Kennedy J, Eberhart R.Particle swarm optimization[C]//Proceedings of the 4th IEEE International Conference on Neural Networks.Piscataway:IEEE Service Center, 1995:1942-1948.

[2]Garnier S, Gautrais J, Theraulaz G.The biological principles of swarm intelligence[J].Swarm Intelligence, 2007, 30 (1) :3-31.

浅析粒子群优化算法的研究和应用 篇9

粒子群算法 (Particle Swarm Optimization;PSO) , ) 是一种新型的群体智能算法, 由Eberhart博士和kennedy博士于1995年提出, 其基本思想起源于对鸟群捕食行为的研究。与其他优化算法相比, PSO收敛速度快、易实现并且仅有少量参数需要调整, 因而一经提出就成为智能优化与进化计算领域的一个新的研究热点, 目前己经被广泛应用于目标函数优化、动态环境优化、神经网络训练、数据挖掘、模糊控制系统等许多领域。

(二) 基本粒子群算法

标准 (PSO) 粒子群算法主要根据下面两个式子进行演化计算的:

即每个粒子的新位置由原有位置加上速度组成, 而速度由其原速度、粒子最优位置以及所有粒子最优位置共同决定。其中:ω为惯性权值, iv (t) 粒子i于t时刻的飞行速度, ix (t) 为粒子i当前的位置, ip (t) 为粒子i所经过的位置中的最好位置, p g (t) 为所有粒子经历过的位置中的最好位置, 1c和2c为加速系数, ω、1c和c2为一固定常数, 1r和r2是两个在[0, 1]范围内变化的随机数。式 (1) 的第1部分由粒子先前速度的惯性引起, 为“惯性”部分;第2部分为“认知”部分, 表示粒子本身的思考, 即粒子本身的信息对自己下一步行为的影响;第3部分为“社会”部分, 表示粒子间的信息共享和相互合作, 即群体对粒子下一步行为的影响。

(三) 粒子群优化算法的改进

到目前为止, 对PSO算法的改进非常多, 但是总共可以归结为以下几种目的:增强算法自适应性的改进, 增强收敛性的改进、增加种群多样性的改进、加强局部搜索的改进、与全局优化算法相结合、与确定性的局部优化算法融合等。以上所述的是对于算法改进的目的讨论的, 实际改进中应用的办法有基于参数的改进, 即对PSO算法的迭代公式的形式上作改进:还有从粒子的行为模式进行改进, 即粒子之间的信息交流方式, 如拓扑结构的改进、全局模式与局部模式相结合的改进等;还有基于算法融合的粒子群算法的改进, 算法融合可以引入其他算法的优点来弥补PSO算法的缺点, 设计出更适合问题求解的优化算法。下面主要介绍儿种具有代表性的改进PSO算法。

1. 加入惯性权重的粒子群模型

shi等对式 (1) 做了如下的改动:

其中w是非负数, 称为惯性权重 (inertiaweight) 。

惯性权重w是用来控制粒子以前速度对当前速度的影响的, 即粒子对自己以前速度的信任程度, 它将影响粒子的全局和局部搜索能力。较大的w值有利于全局搜索, 较小的w有利于局部搜索。选择一个合适的w可以平衡全局和局部搜索能力, 即平衡算法的收敛速度和收敛精度, 这样可以以最少的迭代次数找到最优解。

2. 压缩因子PSO算法

PSO算法来源于模拟社会系统, 算法本身缺乏坚实的数学基础。直到最近几年才开始尝试建立算法的数学基础。Clerc于1999年对算法的数学研究证明, 提出了压缩因子的概念[20]。该方法描述了一种选选择ω和cl、c2的方法, 以保证算法收敛。算式如下:

其中为压缩因子, 的作用类似于Vmax的作用, 用来控制与约束粒子的飞行速度, 同时增强算法的局部搜索能力。Shi和Eberhart将惯性权重PSO模型和带收敛因子PSO模型进行了比较, 通过对Sphere, Rosenbroek, Rastrigrin, Griewank和sehaffer F6等五个测试函数的实验后指出, 当将Vmax端限定为Xmax时, 收敛因子PSO模型的计算结果好于惯性权重PSO模型的计算结果。因而压缩因子方法控制群体行为最终收敛, 且可以有效搜索不同的区域, 该算法能得到高质量的解, 较好的克服PSO算法的早熟收敛。

3. 带选择机制的PSO

基本PSO没有选择机制, 粒子个体不会被别的粒子个体所取代, 迭代时, 每个粒子不断地改变自己的位置直到搜索结束。带选择机制的PSO算法依据某些预定的规则, 将每个个体的适应值, 基于其当前位置, 与其它个体进行比较, 然后根据定义的规则将所有个体排序, 得分最高的出现在群体的前面。一旦群体排序完毕, 群体中当前得分低的一半被群体中当前得分高的另一半取代。带选择机制的PSO在解决单峰函数的优化问题时效果明显, 但并不一定对所有的优化问题都很有效。这种算法由于有了选择机制, 加快了对当前较好区域的开发过程使得收敛速度较快, 但也增加了陷入局部极值解的可能性。

借鉴遗传算法的思想, 提出了杂交PSO的概念, 将基本PSO和选择机制相结合, 进一步提出具有繁殖和子群的杂交PSO。杂交PSO的选择机制与遗传算法十分相似。该法按预定的准则, 给粒子群中的每个粒子赋予一个繁殖概率, 在每次迭代中, 依据繁殖概率的高低选取一定数量的粒子放入一池中。池中的粒子随机地两两杂交, 产生与父代粒子数目相同的子代粒子, 并用子代粒子代替父代粒子, 以保持种群的粒子数目不变。子代粒子的位置由父代粒子位置的算术加权和计算。实验结果显示, 杂交PSO的收敛速度比较快, 搜索精度相对比较高, 对一些非线性优化问题可以得到满意的结果, 尤其是对多峰值函数优化问题具有更好的性能。

4. 带空间邻域的PSO

尽管PSO能比其它进化算法更快地得到较为理想的解, 但当迭代次数增加时, 并不一定能进行更精确的搜索。为此, 可引入一个变化的邻域算子, 在迭代的初始阶段, 一个粒子的邻域就是它本身;随着迭代的进行, 根据候选个体与邻域中心的距离, 逐步引入距离近的个体, 邻域逐渐变大, 包含越来越多的粒子, 最后包含所有的粒子。这样, 原来的全局历史最好位置搜索就变成了粒子邻域的局部历史最好位置搜索。

结合空间邻域和环状拓扑结构, 提出了具有社会模式的聚类分析PSO。该法将粒子群体中的一些粒子作为中心, 再将离它最近的N个粒子和中心粒子作为一簇, 然后计算每个簇的中心位置, 并用这些中心位置替代个体历史最优位置和全局历史最优位置。

5. 其它方面的改进

文献[4]提出适应性粒子群寻优算法 (APSO) , 社会性的群体寻优是秩序与混沌之间的平衡, 适应性微粒群寻优算法 (APSO) 是在标准PSO上添加反映适应性的随机项, 并引入小概率因子, 使微粒飞行到粒子群的中心, 平衡秩序和随机两个行为, 从而使得寻优的决策尽可能模拟社会性群体寻优的复杂行为。典型复杂函数优化的仿真结果表明, APSO算法具有较好的稳定性, 但精确度不高。

(四) 粒子群优化算法的应用

粒子群优化 (PSO) 算法具有很强的通用性, 且无需问题的特殊信息, 因此, 其应用领域非常广泛。目前主要的应用领域包括: (1) 训练人工神经网络。PSO可完成人工神经网络中的各种任务, 包括连接权值的训练、结构设计、学习规则调整、输入特征选取、连接权值的初始化和规则提取等。 (2) 跟踪动态系统。 (3) 解决多目标优化问题。 (4) 求解约束满足问题。 (5) 与控制工程问题的结合, 如PID调节问题的研究、ARMAX模型的辨识和预报研究等。 (6) 应用到动力系统, 包括供电系统的工作条件、反应动力和电压的控制、电容器的布置等。 (7) 数据挖掘。总的说来, 其他进化算法能够求解的问题或者能够转化为优化的问题, PSO算法均能够求解。

Kassabalidis等利用PSO实现对卫星无限网络路由的自适应调整, 提高网络容量的有效利用率。Robinsonj, SintonS和Rahmat Samii将PSO用于PCHA (剖面波状喇叭天线) 的优化设计, 并与GA的优化效果进行了比较, 在此基础上又研究了二者混合应用的可行性。其中所完成的一系列实验证实PSO作为一种新型的优化算法具备解决复杂工程优化问题的能力。Engelbrechtap利用PSO实现了对人工神经网络权值和网络模型结构的优化, 并将研究结果应用于“自然语言组词”的分析方法设计。Hux采用经PSO优化的神经网络实现了对人类肢体颤抖现象的分析, 并完成了对正常颤抖和帕金森氏症的诊断功能。在疾病和乳腺肿瘤是良性和恶性的判断、心脏病的诊断, PSO训练的神经网络也取得了较高的诊断成功率。EIHawary, ME Sallam, KalaS同样采用PSO对神经网络进行了优化, 并利用其设计了电力变压器的智能保护机制。YoshidaH, KawataK, FukuyamaY, Nakanishi利用PSO实现了对各种连续和离散控制变量的优化, 从而达到了控制核电机组电流稳定输出电压的目的。

除了以上领域外, PSO在自动目标检测、生物信号识别、决策调度、系统辨识以及游戏训练、分类、信号处理、机器人应用等方面也取得了一定的成果。目前在模糊控制器设计、车间作业调度、机器人实时路径规划、自动目标检测、语音识别、烧伤诊断、探测移动目标、时频分析和图象分割等方面己经有成功应用的先例。

(五) 结束语

PSO算法通过个体之间的协作来搜寻最优解, 它利用了生物群体中信息共享的思想, 其概念简单, 易于实现, 同时又有深刻的智能背景, 即适合科学研究, 又特别适合工程应用。因此, 越来越受到人们的重视, 而且应用也越来越广泛。但是, PSO的发展历史尚短, 在理论基础与应用推广上都还存在一些问题有待解决。

摘要:文章介绍了传统的粒子群算法的基本原理、数学模型、算法流程、算法参数等, 并且介绍了传统算法存在的一些问题及近年来进行改进和研究工作, 以及粒子群算法的应用。

关键词:粒子群,收敛速度,应用

参考文献

[1]Kennedy J, Eberhart R.Particle Swarm Optimization[A].IEEE Int Conf on Neural Networks[C].Perth, 1995:1942-1948.

[2]Angeline P J.Evolutionary Optimization Versus Particle Swarm Optimization:Philosophy and Performance Differences[J].Evolutionary Programming, 1998, 256-260.

[3]任斌, 丰镇平.改进遗传算法与粒子群优化算法及其对比分析[J].南京师范大学学报, 2002, 2 (2) :14-2.

[4]罗辞勇, 陈民铀.适用性粒子群寻优算法[J].控制与决策, 2008, 23 (10) :1135-1138.

粒子群算法研究概述 篇10

演化算法是经典的不确定性算法, 通过将大自然中各类事物的演化规律与求解问题的过程相结合, 能够保证在多项式时间内得到实际问题的高精度近似解。其中遗传算法、模拟退火算法、蚁群算法等演化算法都在生产实践中得到了广泛的应用。而粒子群算法因其结构简单易于实现, 成为当今研究的热点。但是, 粒子群算法参数优化方案仍然处在热烈讨论之中。针对这个问题, 本文选择了Linwpso以及Asylncpso两种优化算法[1]进行实验对比, 提出了粒子群算法参数优化的研究方向。

2 粒子群算法

粒子群算法, 也称粒子群优化算法 (Particle Swarm Optimization) , 缩写为PSO, 属于进化算法的一种, 1995年由Eberhart博士和kennedy博士提出, 源于对鸟群捕食的行为研究[1,2]。群体中的个体通过对信息的共享使整个群体的运动在问题求解空间中产生从无序到有序的演化过程, 从而获得最优解。

PSO模拟鸟群的捕食行为, 每个粒子就是解空间的一个解, PSO初始化为一群随机粒子 (随机解) , 然后通过迭代找到最优解。在每一次迭代中, 每个粒子根据自己的飞行经验和同伴的飞行经验所产生的两个“极值”来调整自己的飞行。一个是粒子本身所找到的最优解叫做个体极值p Best, 另一个是整个种群目前找到的最优解叫全局极值g Best。实际操作中通过由优化问题所决定的适宜性 (fitness value) , 来评价粒子的“好坏”程度。

在找到这两个最优值时, 粒子根据如下的公式来更新自己的速度和新的位置, 标准粒子群算法表达式如下所示:

其中, v是粒子的速度, w是惯性权重, present是当前粒子的位置。pbest是个体极值。gbest是全局极值。c1, c2是学习因子, 通常c1=c2=2。rand是 (0, 1) 间的随机数。

3 优化方案

W惯性权重控制了粒子的全局搜索能力与局部搜索能力之间的平衡。w值较大, 全局寻优能力强, 局部寻优能力弱;w值较小反之。初始时, w取为常数, 后来实验发现, 动态能够获得比固定值更好的寻优结果。动态可以在PSO搜索过程中线性变化, 也可根据PSO性能的某个测度函数动态改变。

c1、c2协同控制算法向最优解演化, 决定了收敛精度。

3.1 惯性权重优化方案

惯性权重优化方案的优化函数如下所示:

其中wmax表示惯性权重系数最大值, wmin表示惯性权重系数的最小值, t表示当前迭代次数, M表示迭代总次数。由此方案可见, 迭代过程开始时, 惯性权重系数取最大值wmax, 且惯性权重系数随着迭代次数线性递减。

3.2学习因子优化方案

学习因子优化方案函数如下所示:

4实验分析

本实验以求解单目标函数作为实验对象求出该函数的低误差近似最优解为算法终止目标。设定优化算法最大迭代300次。实验将粒子群标准算法、惯性权重优化的粒子群算法以及学习因子优化的粒子群算法进行对比, 分别利用三种粒子群算法求解实验对象最优解300次, 比对各个算法获得最优解的迭代次数, 以此评价3种算法的执行效率;对比3种算法的求解过程, 以此评价算法的可靠性和有效性。

实验中所采用的测试函数如公式 (1) 所示:

该函数在x=0.9350-0.9450达到最大值y=1.3706。

首先, 在群体中个体数量为3、5和8的情况下执行300次实验得到的迭代次数平均计算结果曲线, 由结果可见学习因子优化方法在每个实验场景中都有最高的变化率, 而权重优化方法的变化率则相对稳定, 而标准PSO算法变化率介于两者之间。但是当群体个体数量为3时, 学习因子的变化率过快则更倾向于算法早熟, 收敛于局部最优解;而惯性权重优化方法则用比标准算法更少的迭代次数就得到了相对准确的最优解。而当种群数量增加到8的时候, 学习因子优化方法展示出了它极大的优越性, 算法利用更少的迭代次数求得了实验对象函数的最优解。

接下来我们对群体中含有8个个体的情况进行进一步分析。观察300次实验过程, 发现学习因子优化方案仅通过平均14次迭代就能获得最优解, 且最高经过49次迭代。而标准粒子群算法需要17次迭代, 且最高近70次迭代。惯性权重优化算法需要24次迭代, 最大83次迭代。

综上所述实验可见, 当个体数量较少时, 惯性权重优化方案能够有效的改善算法效率且保障算法的有效性, 而当个体数量较高时, 学习因子优化方案能够改善算法效率。

5总结与展望

通过实验我们发现权重优化方案会让我们得到稳定的优化效果, 但是如果需要更高的求解效率时, 学习系数优化方案是一个不错的切入点。但是要用更为有效的方法控制系数的变化率。智能算法能够有效的求解NP问题获得不错的近似解, 同时也很容易和机器学习算法相结合, 各取所长。

参考文献

[1]龚纯, 精通MATLAB最优化计算[M].北京:清华大学出版社, 279-291.

[2]R Eberhart, J Kennedy.A new optimizer using particle swarm theory.In:Proc of the 6th Int’l Symposium on Micro Machine and Human Science.Piscataway, NJ:IEEE Service Certer, 1995.39-43.

智能算法中粒子群优化研究和实现 篇11

有优化作用的粒子群算法是主要应用在计算智能领域中。相比早期的智能算法如经典的蚁群算法和鱼群算法等, 它又是又一类群体智能的优化算法。该算法最早由Kennedy和Eberhart在1995年提出的。该算法的灵感来源于对鸟类捕食行为的研究。我们观察在鸟类捕食时, 对所有鸟来说, 找到食物最有效、简单的的数据信息就是由当前距离食物最近的周围区域的鸟群提供。粒子群算法就从这种生物种群行为特征受到启发并借鉴应用于求解优化问题的。在算法中可知优化问题每次的潜在存在的解集合都是由搜索空间中假定的“粒子”的状态决定, 每个粒子的适应度值由目标函数决定的, 它们飞翔的方向和距离由粒子的速度决定了。粒子由自身及同群同伙伴的飞行经验协调性地且动态地调整进行, 即粒子自己单个个体具备的最优解和整个种群所具备的最优解。如此反复在解空间中不断搜索, 如遇满足要求停止。本测试用例就是用PSO算法来求标准测试函数的极值, 表明该算法在系统极值寻优中的有效作用。

2 原理

放在N维的一个目标搜索空间中, 任意选取m个粒子组成一个群落, 把第i个粒子表示N维的向量, 从这样的表示中可得出第i个粒子在N维搜索中的空间位置即是。作为潜在的解存在的每个粒子, 只要带入一个目标函数就对应计算出相应的适应值, 权衡的优劣也就是在比较适应值的大小。速度方面第i个粒子的同样用一个N维的向量表示, 速度取决于粒子在搜索空间单位迭代次数的位移, 我们通常理解为“步长”。记录在第i个粒子群搜索到截止当前的自身的最优位置为。整个粒子群搜索到截止当前的最优位置为。粒子根据如下公式来替换更新其速度和位置:

其中, i=1, 2, ...m, n=1, 2, ...N;c1, c2是学习因子, 通常为非负常数, r1, 和r2是[0, 1]服从随机分布的随机数, 是常数, 由用户自我设定.选择中止的时机一般选为粒子群到目前为止所能找到的最优化位置 (此时它满足适应特定阂值) 或者事先指定好的最大迭代次数

由于是粒子群体的最优值, 上述PSO算法有“全局PSO算法”的提法。可以视为第i个粒子的周围附近粒子所能得到的最优位置, 上述方法也有“局部PSO算法”的提法。比较而言, 全局PSO算法收敛快, 数值在局部最优附近容易聚集。相反局部PSO收敛速度会慢一点, 但不易走入局部最优。

3 算法实现

3.1 算法流程

(1) 群算法参数初始化, 群体规模, 每个粒子的位置xi和速度, Vi

(2) 对应计算每个粒子的适应度值Fit[i];

(3) 对应于每个粒子, 比较它的适应度值和个体极值, 如存在Fit[i]>pbes (i) , 则用Fit[i]替换掉pbes (i) ;

(4) 对应于每个粒子, 比较它的适应度值Fit[i]和全局极值gbes (i) , 如存在Fit[i]>pbes (i) 则用Fit[i]代替gbes (i) ;

(5) 根据公式 (1) , (2) 更新替换粒子的速度xi和位置Vi;

(6) 如遇结束条件满足退出 (误差足够好或到达最大循环次数) , 否则重复步骤 (2) 。

3.3 实现结果

在本实验中, 采用matlab实现该算法, 如下是算法的显示结果:

4 应用

PSO算法简易实现, 没有太多参数需要调整, 且不需要可微可导信息和与之相关的此类的信息。PSO可作为连续优化和混合整数非线性问题和排列组合优化问题的优化方法[2]。PSO早期应用于诸如神经等网络初步训练上, 稍后PSO进一步可以用来确定在神经网络中的实质结构。如今广泛应用于在神经网络训练为后的函数优化、模糊性系统控制与其他智能算法的应用领域。

4.1 函数优化

粒子群算法原理与收敛性的研究都是为了更好研究和解决函数的优化问题, 通常象这一类问题都是相当复杂的, 问题特征表现为规模之大、维数之高、数学性质上可体现为非线性、非凸和不可微等微积性质, 大量极小局部存在函数分布里。相对早期的传统的优化确定性算法解决这类问题速度较快, 反应灵敏度高, 初值的选择上体现出相应的的要求, 局部特性上可见易陷入局部最小。提到另外具有优化全局性的算法, 如智能遗传算法、退火模拟算法、进化规划等, 它们各自的不同的机理和结构单一, 难以实现在高维复杂函数等方向上的高效优化。但PSO算法综合这些优缺点, 实现高效优化对复杂高维函数的作用。

4.2 神经网络的训练

PSO算法现在主要是在训练神经网络的3个大的方面 (网络几何拓扑结构及函数传递、连接时权重的设置、智能学习采用算法) 。每个粒子可完整勾勒表达出神经网络的相关的所有参数, 反复更新来实现对这些参数的优化, 由此达到训练的功效。相比同类型的学习算法如误差反向传播算法, 使用粒子群算法在神经网络的方面的优点在于不借助于可微可导等微分性质, 进而使用一些不可微的在函数之间传递信息。大概率情况下所能得到的结果比误差反向传播算法要好, 速度也更快些。

4.3 参数优化

粒子群算法选用在连续的各类问题和离散的各类问题的参数优化。目前有信号处理机器人路径规划、模糊控制器的设计和模式识别等问题

4.4 组合优化

由“01”串的编码方式实现的粒子群算法在许多组合优化问题中有序结构的表达问题以及约束条件处理问题等上尚需有更合理的解决方案和措施。所以问题的不同, 提相应问题的特定粒子表达方式不同, 也可以通过重新定义算子来解决。已解决了多种TSP、VRP以及车间调度等问题的优化方案。

5 结束语

粒子群算法是新型的群体智能的进化算法, 其研究也开始兴起, 远没有像遗传算法和模拟退火算法稳健发展, 有一定的系统的分析方法和一定的数学基础, 许多问题要进一步地分析, 给出方法。

可喜的是目前我国大量学者在对PSO算法的适用性和方法性的研究上有了新的研究动态[4], 能让粒子群算法能在更多优化研究工作上带来更多的新的启发和思路。

摘要:粒子群优化 (PSO) 算法是一种新颖的演化算法, 它属于一类随机全局优化技术, 通过粒子间的相互作用在复杂搜索空间中发现最优区域。该文介绍了PSO算法的基本原理、应用领域, 并用matlab实现了该过程。

关键词:粒子群算法优化应用,智能算法,编程语言matlab

参考文献

[1]Kennedy J, Eberhart R C.Particle Swarm Optlmization.Proc[R].IEEE Int, Lconf.on Neural Networks.IEBE Service Center, Pisca-taway, NJ, 1995 (4) :1942-1948.

[2]Eberhart R, Kennedy J.A New Optimizer Using Particle Swarm Theory[C].In:Proc of the Sixth International Symposium on Micro Machineand Human Science, Nagoya, Japan, 1995:39-43.

[3]Richards M, Ventura D.Choosing a starting configuration for particle swarm optimization[A].in:Proc.IEEE Int.Joint.Conf.Neural Net work[C], 2004 (3) :2309–2312.

[4]何妮, 吴燕仙.粒子群优化算法的研究[J]科技信息, 2008 (6) :179-220.

[5]王万良, 唐宇.微粒群算法的研究现状与展望[J].浙江工业大学学报, 2007, 35 (2) :136-141.

[6]谢晓锋, 张文俊, 杨之廉.微粒群算法综述[J].控制与决策, 2003, 18 (2) :129-134.

上一篇:中专生的课堂情感教育下一篇:时间与空间的徘徊