一种混沌人工蜂群最优数据获取方法、路径规划方法及资源调度方法与流程

文档序号:16471422发布日期:2019-01-02 23:08阅读:680来源:国知局
一种混沌人工蜂群最优数据获取方法、路径规划方法及资源调度方法与流程

本发明涉及一种混沌人工蜂群最优数据获取方法、路径规划方法及资源调度方法,涉及路径规划和资源调度领域。



背景技术:

人工蜂群算法是土耳其学者karaboga受到蜜蜂采蜜行为和跳舞传递信息行为的启发,在2005年提出来的群体智能算法,并且该算法因具有控制参数较少,实现简单,求解效果好等特性而受到广泛关注,并成功应用于参数优化、神经网络训练、车辆路径问题、最小属性约简等领域。但是传统的人工蜂群算法具有搜索速度慢,盲目搜索,在搜索过程中,会使检索的解具有重复性,重复解的危害会使算法在搜索过程中,易陷入局部最优。

近年来,研究人员对人工蜂群算法进行了各种改进。针对人工蜂群算法收敛速度慢、容易出现"早熟"的缺点,李荣等人提出具有全局最优值引导的混沌蜂群算法。使用混沌序列初始化食源,增加初始解的随机性和多样性;观察蜂采用具有全局最优值引导的搜索策略,提高算法的收敛速度和全局搜索能力;在观察蜂搜索结束后,选取最优食源,对其进行混沌局部搜索,防止算法早熟,提高算法的局部搜索能力。刘鑫等人提出了一种基于自适应随机优化策略的改进算法(srabc),通过利用自适应思想与双向随机优化机制以期改善算法的局部搜索能力,同时将粒子群算法引入到改进算法的初始阶段以期提高算法的收敛速度。高卫峰等人提出了一种混合的人工蜂群算法(habc)。在人工蜂群算法的迭代中引入淘汰规则和新的搜索策略,以提高算法的收敛速度;同时,为了维护群体的多样性,对种群中的个体采用差分进化。通过对一个调频(frequency-modulated,fm)合成器参数优化问题测试,表明该算法能够有效地克服"早熟"现象,提高了全局寻优的能力。综上所述,为了使算法能得到更好的可行解,解决算法易陷入局部最优值并提高收敛速度成为一个重要的研究课题。



技术实现要素:

本发明提供了一种混沌人工蜂群最优数据获取方法、路径规划方法及资源调度方法,具有收敛速度更好,能够更快找到可行解的特点。

一种混沌人工蜂群最优数据获取方法,在讨论机制的基础上实现,具体方法包括,

s1,初始化种群参数,蜜源数设置为2sn,循环迭代最大次数为limit,引领蜂和跟随蜂各占种群规模的一半,数量为sn,引入混沌机制来初始化蜜源:

ck=μck-1(1-ck-1)(1)

xij=xminj+ck(xmaxj-xminj)(2)

其中:μ为logistic方程的控制参数,表示方程陷入的混沌程度;k表示迭代次数,为大于等于1的自然数,xij代表第i个蜜源xi的第j维度值,i取值于{1,2,…,sn},j取值于{1,2,…,d},d为个体维度,xminj和xmaxj分别代表第j维的最小值和最大值;xk代表邻域蜜源,k取值于{1,2,…,sn},且k不等于i;是取值在[-1,1]的随机数,通过公式得到新的蜜源,使用贪心算法,比较新旧蜜源的适应度值,保留最优值;pi为蜜源选择的概率,fit(xi)为蜜源xi的适应度值,f(xi)是目标函数在vi上所取得的函数值;

s2,用公式(4)计算每个蜜源的适应度值fit,设置讨论机制参数,保存每个蜜源的最优值;

s3,对种群中的引领蜂平均分组,并进行组内讨论和组间讨论;

其中组内讨论的具体方法包括,遍历每一组每一个个体进行组内讨论,结合公式inew=θ×i1+(1-θ)×i2与组内随机选择个体进行融合,进行比较,根据判断适应度得到较好的个体并保留较好的个体,更新种群,达到迭代条件,组内讨论结束;其中,i1和i2表示旧的个体值,θ表示[0,1]之间的一个随机数,inew表示融合之后新个体的值;

组间讨论的具体方法包括,遍历种群并随机选择两个组,分别从两个组中挑选一个个体,结合公式inew=θ×i1+(1-θ)×i2,进行融合,对产生的新个体与旧个体比较,根据判断适应度得到最好的个体,保留最好的个体,更新种群,达到迭代条件,组间讨论结束;

s4,跟随蜂针对引领蜂反馈回来的信息,采用轮盘赌策略来选择蜜源;跟随蜂根据公式(3)在蜜源的附近区域进行搜索新的蜜源,如果找到更好的蜜源则替代旧的蜜源位置;蜜源拥有参数trial,当蜜源更新并被保留时,trail为0,反之,trail加1;根据统计得出一个蜜源没有被更新的次数;

s5,引领蜂保存最优值并判断trial值是否达到阈值limit值,如果达到阙值,放弃该蜜源,并转化为侦查蜂,根据公式(2)随机寻找新的蜜源;

s6,经过多次更新,若未达到最大迭代次数,转s3,否则,输出最优解。

所述μ取值范围于[0,4],当μ的取值为4时,方程完全陷入混沌状态。

一种路径规划方法,其特征在于,在上述混沌人工蜂群最优数据获取方法的基础上实现,包括机器人路径规划方法,将路径规划问题转化为人工蜂群算法的最优解,找到最优路径,连接最优路径,形成运动路径。

一种资源调度方法,其特征在于,在上述混沌人工蜂群最优数据获取方法的基础上实现,包括车辆调度方法,应急车辆调度时,构造算法对应的调度模型,利用蜂群算法进行优化求解,找到符合总费用最经济的运输线路。

与现有技术相比,本发明技术方案加快了算法的寻优能力,有效地避免算法陷入早熟,对蜂群种群的组间讨论,增加了算法跳出全局最优能力,提高了求解精度。

附图说明

图1为本发明其中一实施例的混沌人工蜂群最优数据获取方法示意图。

图2为采用本发明方案其中一实施例中,rastrigin函数30维全局极值效果图。

图3为采用本发明方案其中一实施例中,rastrigin函数60维全局极值效果图。

图4为采用本发明方案其中一实施例中,rastrigin函数30维收敛效果图。

图5为采用本发明方案其中一实施例中,rastrigin函数60维收敛效果图。

图6为采用本发明方案其中一实施例中,griewank函数30维全局极值效果图。

图7为采用本发明方案其中一实施例中,griewank函数60维全局极值效果图。

图8为采用本发明方案其中一实施例中,griewank函数30维收敛效果图。

图9为采用本发明方案其中一实施例中,griewank函数60维收敛效果图。

图10为采用本发明方案其中一实施例中,sphere函数30维全局极值效果图。

图11为采用本发明方案其中一实施例中,sphere函数60维全局极值效果图。

图12为采用本发明方案其中一实施例中,sphere函数30维收敛效果图。

图13为采用本发明方案其中一实施例中,sphere函数60维收敛效果图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例和附图,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本说明书(包括摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或者具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。

如图1所示的一种混沌人工蜂群最优数据获取方法,在讨论机制的基础上实现,具体方法包括,

s1,初始化种群参数,蜜源数设置为2sn,循环迭代最大次数为limit,引领蜂和跟随蜂各占种群规模的一半,数量为sn,引入混沌机制来初始化蜜源:

ck=μck-1(1-ck-1)(1)

xij=xminj+ck(xmaxj-xminj)(2)

其中:μ为logistic方程的控制参数,表示方程陷入的混沌程度;k表示迭代次数,为大于等于1的自然数,xij代表第i个蜜源xi的第j维度值,i取值于{1,2,…,sn},j取值于{1,2,…,d},d为个体维度,xminj和xmaxj分别代表第j维的最小值和最大值;xk代表邻域蜜源,k取值于{1,2,…,sn},且k不等于i;是取值在[-1,1]的随机数,通过公式得到新的蜜源,使用贪心算法,比较新旧蜜源的适应度值,保留最优值;pi为蜜源选择的概率,fit(xi)为蜜源xi的适应度值,f(xi)是目标函数在vi上所取得的函数值;

s2,用公式(4)计算每个蜜源的适应度值fit,设置讨论机制参数,保存每个蜜源的最优值;

s3,对种群中的引领蜂平均分组,并进行组内讨论和组间讨论;

其中组内讨论的具体方法包括,遍历每一组每一个个体进行组内讨论,结合公式inew=θ×i1+(1-θ)×i2与组内随机选择个体进行融合,进行比较,根据判断适应度得到较好的个体并保留较好的个体,更新种群,达到迭代条件,组内讨论结束;其中,i1和i2表示旧的个体值,θ表示[0,1]之间的一个随机数,inew表示融合之后新个体的值;

组间讨论的具体方法包括,遍历种群并随机选择两个组,分别从两个组中挑选一个个体,结合公式inew=θ×i1+(1-θ)×i2,进行融合,对产生的新个体与旧个体比较,根据判断适应度得到最好的个体,保留最好的个体,更新种群,达到迭代条件,组间讨论结束;

s4,跟随蜂针对引领蜂反馈回来的信息,采用轮盘赌策略来选择蜜源,来确保适应度值高的蜜源能够被开采的概率更大;跟随蜂根据公式(3)在蜜源的附近区域进行搜索新的蜜源,如果找到更好的蜜源则替代旧的蜜源位置;蜜源拥有参数trial,当蜜源更新并被保留时,trail为0,反之,trail加1;根据统计得出一个蜜源没有被更新的次数;

s5,引领蜂保存最优值并判断trial值是否达到阈值limit值,如果达到阙值,放弃该蜜源,并转化为侦查蜂,根据公式(2)随机寻找新的蜜源;

s6,经过多次更新,若未达到最大迭代次数,转s3,否则,输出最优解。

作为一种实施例,组间讨论的具体程序方法为:

作为一种实施例,组内讨论的具体程序方法为:

本发明合理选择三个标准基准函数作为样本,通过实验对我们的讨论机制的混沌人工蜂群算法进行实验,分别验证了算法的普遍适用性、有效性以及相应的性能指标,并将实验结果和传统abc算法进行比较,以及在自适应随机优化策略的改进人工蜂群算法中提出的srabc和混合人工蜂群算法文献中的habc进行比较。实验参数设置如下:将传统人工蜂群算法的种群规模s和循环搜索次数limit设置为60,算法做多完成2500次迭代,每个算法独立运行30次取其平均值。表1到表3分别表示了rastrigin函数、griewank函数和sphere函数在维数为30维和60维的情况下,并且跟据以上参数设定在运行30次后所得到的最小值、平均值、方差、最大值,并在表中对结果进行了对比。

其中,对于rastrigin函数,函数的最优解分布比较均匀,搜索范围在[-20,20],全局最优解为0。可通过其来验证算法的全局搜索能力,同时可以测试算法能否跳出局部的极值点,并判断算法是否具备可以有效避免过早地陷入局部的最优解能力。

对于griewank函数,函数本身具有非凸性,并且是一个非健康态的单峰函数,具有多个局部的极小值点且有多个最优解均匀地分布,但其局部最优解与维数的大小成正比例的关系。搜索范围在[-600,600],最优解为0。可以用来测试算法的收敛速度以及算法的执行效率。

对于sphere函数,函数也是一个单峰的优化函数只包含全局极值,函数具有连续性,可在区间范围[-100,100]进行搜索,函数全局最小的值为0。可以用于于测试算法的寻优精度以及算法的收敛速度。

从表1中可以看出,对于rastrigin函数本发明的dc-abc算法在30维时的仿真精度已经达到极值并优于habc算法与srabc算法,在60维时的仿真精度也达到了极值点,优于habc算法和srabc算法。从这里我们可以看出dc-abc在多峰函数较高维度时最小值精度依然非常优秀。

表1rastrigin函数

从图2和图3中我们可以看出dc-abc算法在30维和60维时在2500次迭代内发散且多次跳出rastrigin函数这个多峰函数的局部极值,到全局中去搜索避免陷入局部最小值,进行全局极值搜索。

从图4和图5看出dc-abc算法对rastrigin函数在30维和60维时随着迭代次数的增加一直收敛并且在45次迭代时候就收敛为0。表明本发明算法具有很好的收敛性和较高维度的精度。

从表2中可以看出,对于griewank函数dc-abc算法在30维时的仿真精度明显优于habc算法与srabc算法,在60维时的仿真精度也优于habc算法与srabc算法。在两个测试维度都能取到极值0。

表2griewank函数

从图6和图7中我们可以看出dc-abc算法在30维时进行到80次迭代和14200次迭代时候开始发散多次跳出griewank函数这个函数的局部极值,到全局中去搜索避免陷入局部最小值,而在60维时进行到到80次时开始发散进行全局极值搜索但在1500次迭代后就没有再发散了。

从图8和图9看出dc-abc算法对griewank函数在30维时的仿真精度明显优于habc算法与srabc算法,在60维时的仿真精度也优于habc算法与srabc算法。

从表3中可以看出,对于sphere函数dc-abc算法在30维时的仿真精度优于srabc、habc算法,在60维时的仿真精度也优于habc和srabc算法。

表3sphere函数

从图10和图11中我们可以看出dc-abc算法在30维和60时在2500次迭代过程中多次发散跳出这个函数的局部极值,到全局中去搜索避免陷入局部最小值。

从图12和图13看出dc-abc算法对sphere函数在30维和60维时在迭代进行到10次左右就收敛了,并且精度优于比较算法。

由于混沌具有“遍历性”,“随机性”和“规律性”的特点,并且在提高蜂群搜索的遍历性和种群的多样性种具有明显的优势,本发明在基本蜂群算法中加入混沌因子对种群进行初始化,加快了算法的寻优能力。

为了使算法能够跳出局部最优解,本发明引入了讨论机制,有效地避免算法陷入早熟,对蜂群种群的组间讨论,增加了算法跳出全局最优能力,提高求解精度。

选择三个标准基准函数作为测试用例:用三个常用的函数来检测算法的收敛能力和收敛精度,并与habc和srabc算法比较,从实验结果可以清晰的看出本发明在实验数据上的优异性,更好的论证本发明对现有算法的寻优能力的显著提升。

作为一种实施方式,所述μ取值范围于[0,4],当μ的取值为4时,方程完全陷入混沌状态。

一种路径规划方法,在上述混沌人工蜂群最优数据获取方法的基础上实现,包括机器人路径规划方法,将路径规划问题转化为人工蜂群算法的最优解,找到最优路径,连接最优路径,形成运动路径。

人工蜂群算法在众多领域运用广泛,特别是在机器人路径规划问题中,机器人路径规划是一个组合优化问题,人工蜂群算法在处理这方面有着先天的优势,通过将路径规划问题转化为人工蜂群算法的最优解,从而找到最优路径,传统的路径规划是将路径空间看成一个网格,分别对应蜂群算法中的可行解,利用蜜蜂的协同合作机制,遍历整个空间,根据适应度值判断蜜源的好坏,即路径点的优劣。最后连接最优路径,形成机器人运动路径。

一种资源调度方法,在上述混沌人工蜂群最优数据获取反复的基础上实现,包括车辆调度方法,应急车辆调度时,构造算法对应的调度模型,利用蜂群算法进行优化求解,找到符合总费用最经济的运输线路。

人工蜂群算法在解决资源调度问题中也表现出色。车辆调度是一个典型的n-p难问题,求解方案在不同限制中会得到明显差异的调度计划。具体实施过程中,应急车辆调度时,为了尽可能的在满足应急物流时间的条件下最大程度的节约成本,考虑运输费用,超载情况,配送时间限制等约束下,构造算法对应的调度模型,利用蜂群算法进行优化求解,找到符合总费用最经济的运输线路。吴斌等人将人工蜂群算法引入到现场服务调度问题中,考虑了客户满意度并结合前景理论和模糊理论,构建了有时间窗约束的现场服务调度问题模型。在现场服务调度的人工蜂群算法中,引入最廉价的插入法来初始化种群,为了防止算法易陷入局部最优解,在雇佣蜂和跟随蜂阶段通过交叉和变异来更新种群食物源。实验结果表明,现场服务调度的人工蜂群算法较传统的调度算法有更好的鲁棒性和有效性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1