[发明专利]一种新型群智能优化算法-鸽群算法在审
申请号: | 201610261680.1 | 申请日: | 2016-04-22 |
公开(公告)号: | CN105930307A | 公开(公告)日: | 2016-09-07 |
发明(设计)人: | 伊廷华;温凯方;李宏男 | 申请(专利权)人: | 大连理工大学 |
主分类号: | G06F17/15 | 分类号: | G06F17/15;G06N3/00 |
代理公司: | 大连理工大学专利中心 21200 | 代理人: | 温福雪;李宝元 |
地址: | 116024 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明属于优化算法领域,提供了一种新型群智能优化算法‑鸽群算法。算法包括起飞、飞行、归巢三大过程。起飞过程包括初始化、腾空和上升三个子过程,用于初始化鸽群位置、飞行速度和最优解的方向;飞行过程包括平飞、转弯和追逐三个子过程,用于寻找局部最优解、全局最优解和改善全局最差解;归巢过程则避免算法陷入局部最优解。本发明算法具有如下特点:1)算法对目标函数的性质要求不高,可以是函数表达式,也可以是非函数形式的表示形式;2)对低维函数具有全局收敛性较强、算法循环次数少、收敛速度快的特点;3)对高维、多峰值、复杂问题具有较强的全局收敛性、较少的循环次数以及较高的稳定性。 | ||
搜索关键词: | 一种 新型 智能 优化 算法 鸽群 | ||
【主权项】:
一种新型群智能优化算法‐鸽群算法,其特征在于,步骤如下:(1)起飞过程:模拟鸽群起飞的特点,包含初始化、腾空和上升三个子过程,用来均匀化初始值并寻找最优解的方向;1)初始化定义N为鸽群中鸽子数量;向量Xi=(xi1,xi2,…,xij,…,xin),i=1,2,…,N,j=1,2,…,n为鸽子i的当前位置;n为未知数个数,即维度;每只鸽子的当前位置向量xi对应优化问题的一个可行解,并具有相同的维度n;向量Yi=(yi1,yi2,…,yin)为鸽子i当前最优位置;向量Pb=(pb1,pb2,…,pbn)为鸽群当前最优位置;向量Pw=(pw1,pw2,…,pwn)为鸽群当前最差位置;步骤1:鸽群位置的初始化对于一个多维函数,变量xij有定义域[xdown,xup],由于鸽群在起飞时有先有后,因此在定义域范围内,每只鸽子的初始定义域范围按式(1)递减,使得鸽群的初始化位置丰富,定义向量
将向量λ打乱顺序获得向量λ':![]()
式中:β为[0,1]内的随机数;步骤2:鸽群敏感度初始化鸽子反应灵敏,警觉性高,易受到惊吓,每只鸽子的敏感性不同;定义αi为鸽子i的敏感系数,αi从[0,1]中随机产生;步骤3:鸽群速度初始化定义向量Vi=(vi1,vi2,…,vij,…vin)为鸽子i的飞行速度,[‑Vmax,Vmax]为飞行速度的范围,vij从中随机产生,其表达式为:vij=δVmax (2)式中:δ为[‑1,1]内的随机数;2)腾空鸽群在起飞时,蹬地的高度有所不同;根据这一特性,均匀化初始值,定义[down,up]为鸽群的腾空区间;步骤1:ΔXi=(Δxi1,Δxi2,…,Δxij,…,Δxin)为鸽子i的腾空高度,ΔXi中的每一分量从腾空范围中随机产生,其表达式:Δxij=ε(up‑down)+down (3)式中:ε为[0,1]内的随机数;步骤2:更新每只鸽子的当前位置Xi,其表达式Xi=Yi+αi*ΔXi (4)若Xi优于当前最优位置Yi,则将当前位置Xi赋给当前最优位置Yi,即Yi=Xi,若Xi优于鸽群当前最优位置Pb,则令Pb=Xi;腾空区间[down,up]的精度与鸽群当前最优位置Pb分量pij的最大值相同;当Pb中pij的最大值的精确度为十分之一时,腾空区间[down,up]按下式保持相同的精确度:![]()
3)上升鸽群腾空后有上升过程,使鸽群朝更优的方向飞行;用伪梯度方法模拟,寻找最优解的方向,称为上升方向f′ij(Xi);步骤1:通过式(6),随机产生向量ΔCi=(Δci1,Δci2,…,Δcij,…,Δcin)
式中:ri为上升高度;步骤2:计算鸽子i在每一维度j的上升方向f′ij(Xi),其表达式:![]()
步骤3:更新每只鸽子的当前位置Xi,其表达式:xij=yij+ri*sign(f′ij(Xi)) (8)式中:sign(x)为符号函数,当x>0时sign(x)=1;当x=0时sign(x)=0;当x<0时sign(x)=‑1;若Xi优于当前最优位置Yi,则令Yi=Xi,若Xi优于鸽群当前最优位置Pb,则令Pb=Xi;步骤4:再循环一次步骤1至步骤3;为了避免随机向量ΔCi有较大的偏差对f′ij(Xi)准确度产生影响,重复操作;当腾空范围[down,up]的取值变化时,上升高度ri比腾空范围的精确度多一位;(2)飞行过程:模拟鸽群飞行的特点,包含平飞、转弯和追逐三个子过程;平飞用于局部寻优,转弯用于全局寻优,追逐用于改善全局最差解;当鸽群升空后,进入飞行阶段,鸽子在平缓飞行时,方向是听从邻居的,鸽子在急转弯时,方向是听从领导的;利用这一特点,令鸽群在平飞时寻找局部最优,转弯时寻找全局最优;1)平飞定义鸽子i的邻居范围为M,即鸽子周围的M只鸽子作为自身的邻居;Avei为邻居鸽群的平均位置;平飞次数为F1;步骤1:计算鸽子i的平均位置Avei,其表达式:
式中,M是一个非常重要的参数,它影响局部最优值的寻优;当M的取值过大时,Avei的值会趋近于全局最优,影响算法的收敛速度;当M的取值过小时,算法容易早熟收敛,影响算法的精度;在该公式中
是向下取整函数;步骤2:计算鸽子i的飞行速度Vi;Vi=w*Vi+c1*(Avei‑Xi) (10)式中:c1是局部飞行因子,w是飞行权重系数,从0.9到0.4递减,其表达式:![]()
式中:Mc是总迭代次数,cn是算法当前迭代次数;步骤3:更新每只鸽子的当前位置,其表达式:Xir+1=Xir+Vi (12)若Xir+1优于当前最优位置Yi,则令Yi=Xir+1,若Xi优于鸽群当前最优位置Pb,则令Pb=Xir+1;步骤4:重复步骤1至步骤3,直至达到平飞循环次数F1;2)转弯鸽群在飞行过程中经常转弯来保证鸽群的飞行方向,模拟这一特性,定义转弯次数为F2;步骤1:计算鸽子i的飞行速度Vi;Vi=c2(Pb‑Yi) (13)式中:c2是全局飞行因子;步骤2:更新每只鸽子的当前位置,其表达式同式(12);若Xir+1优于当前最优位置Yi,则令Yi=Xir+1,若Xi优于鸽群当前最优位置Pb,则令Pb=Xir+1;步骤3:重复步骤1至步骤2,直至达到转弯循环次数F2;3)追逐鸽子与其他鸟类相比,是“一夫一妻”制的鸟类,当雌鸽飞出巢穴后,雄鸽会有“逐妻”行为,称为追逐;设定鸽群最优位置Pb为雌鸽,鸽群最差位置Pw为雄鸽,让它们配对,改善全局最差解;步骤1:在n维空间向量的[n/2]~n维度之间随机产生一个整数位cp,作为位置替代点:cp=[n/2]+[φ(n/2)] (14)式中:φ为[0,1]内的随机数;步骤2:将Pb=(pb1,pb2,…,pbcp,…,pbn)中从cp~n位置的值直接复制到Pw=(pw1,pw2,…,pwcp,…,pwn)中cp~n相应位置,如果更新后的群体最差位置Pw优于之前的最差位置,则保留更新,否则不进行更新;(3)归巢过程:根据鸽子具有强烈归巢性的特点,在归巢的过程中避免算法陷入局部最优解;鸽子具有强烈的归巢性,飞行完成后总会返回自己的巢穴;定义[‑rg,rg]为归巢范围,归巢范围越小则最后着陆的范围越小,反之亦然;由于每只鸽子的记忆力都不同,因此引入平均位置差ΔHi,防止个别鸽子着陆时产生大的偏差;步骤1:对于鸽子i,在[‑rg,rg]中随机产生一个归巢系数ri;步骤2:根据每只鸽子的当前最优位置,判断个体位置与其他鸽子平均位置的差距;![]()
步骤3:更新鸽子i的当前位置;Xi=Yi+ΔHi (16)若Xi优于当前最优位置Yi,则令Yi=Xi,若Xi优于鸽群当前最优位置Pb,则令Pb=Xi;完整的一次鸽群算法流程即:起飞、飞行和归巢三大过程;反复迭代此过程,直到找到全局最优解或满足终止条件。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连理工大学,未经大连理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610261680.1/,转载请声明来源钻瓜专利网。
- 上一篇:专利撰写辅助系统及其辅助方法
- 下一篇:一种建立工程区域水准椭球的方法