CN110569957A - 一种基于人工蜂群算法的优化方法 - Google Patents
一种基于人工蜂群算法的优化方法 Download PDFInfo
- Publication number
- CN110569957A CN110569957A CN201910825742.0A CN201910825742A CN110569957A CN 110569957 A CN110569957 A CN 110569957A CN 201910825742 A CN201910825742 A CN 201910825742A CN 110569957 A CN110569957 A CN 110569957A
- Authority
- CN
- China
- Prior art keywords
- solution
- value
- new
- dimension
- search
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 38
- 238000005457 optimization Methods 0.000 title claims abstract description 31
- 238000000034 method Methods 0.000 title claims abstract description 18
- 235000012907 honey Nutrition 0.000 claims description 30
- 230000003044 adaptive effect Effects 0.000 claims description 12
- 241000257303 Hymenoptera Species 0.000 claims description 9
- 238000011156 evaluation Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 4
- 239000011664 nicotinic acid Substances 0.000 abstract description 3
- 238000004364 calculation method Methods 0.000 abstract description 2
- 238000009826 distribution Methods 0.000 abstract description 2
- 230000002708 enhancing effect Effects 0.000 abstract 1
- 230000002028 premature Effects 0.000 abstract 1
- 230000006870 function Effects 0.000 description 24
- 238000012360 testing method Methods 0.000 description 8
- 238000004088 simulation Methods 0.000 description 3
- 238000009827 uniform distribution Methods 0.000 description 3
- 201000004569 Blindness Diseases 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种基于人工蜂群算法的优化方法,涉及仿生智能计算与优化领域。本发明采用一种新的初始化策略,从而获得较高质量的初始种群并减少寻优迭代次数;然后提出了两个新的搜索方程,其中一个用于增强局部搜索能力,另一个用于避免后期寻优过程的早熟收敛;进一步地,本发明对基本人工蜂群算法的框架进行了调整。本发明在于提供一种基于人工蜂群算法的优化方法,增强初始种群的多样性和分布性,提高搜索随机性,避免陷入局部最优,改进算法性能,无论在解的精度还是收敛速度方面,效果都有所提高。
Description
技术领域
本发明涉及仿生智能计算与优化领域,尤其涉及一种基于人工蜂群算法的优化方法。
背景技术
随着科学技术的日益发展,许多工程的核心问题最终都归结为优化问题。因此,最优化已经成为工程技术人员必不可少的计算工具。在计算机已经广为普及的今天,一些大规模的优化问题的求解可以在一台普通的计算机上实现,使得最优化方法得到了比以往任何时候都更加广泛的应用。
人工蜂群算法(Artificial Bee Colony,ABC)属于仿生智能算法的一种,是由Karaboga于2005年提出的一种新颖的基于群智能的全局优化算法,将蜂群的采蜜过程作为模拟对象。自然界中的蜜蜂的种群中的所有蜜蜂都有清晰的工作划分,不同分工的蜜蜂之间也有简单的信息交流,不同分工的蜜蜂也会转换职能,蜂群通过相互协作找到最优蜜源。人工蜂群算法模拟了蜜蜂种群的分工、信息交流、职能转换等过程,算法中包含的三个最基本的元素为:蜜源、雇佣蜂、未被雇佣蜂。蜜蜂根据各自的分工进行不同的活动,并实现蜂群信息的共享和交流,从而找到问题的最优解,具有具有控制参数少、容易实现,局部搜索能力强以及应用范围广的优点。
但是,传统人工蜂群算法仍存在种群初始化不均匀、搜索能力不平衡等等缺点。
发明内容
本发明要解决的技术问题,在于提供一种基于人工蜂群算法的优化方法,增强初始种群的多样性和分布性,提高搜索随机性,避免陷入局部最优,改进算法性能。
本发明是这样实现的:
一种基于人工蜂群算法的优化方法,包括:
步骤10、设置EeABC的参数,所述参数包括种群大小SN、最大迭代次数MCN、最大评估次数MFE、个体维数D、阈值limit;
步骤20、生成初始种群,同时产生一个解和所述解的反向解,公式如下:
其中,i∈{1,2,…,SN},表示蜜源的数量;j∈{1,2,…,D},表示个体维度;表示解xi第j维的值;表示的反向解,表示第j维变量的取值范围;rand(0,1)为0到1之间的随机数;k∈[0,1],为广义系数;[aj,bj]为第j维搜索空间的动态边界;
若反向解越界,采用公式(4)重新取值:
其中,rand(·)为随机函数,取值介于与之间;
步骤30、根据公式(5)分别计算个体的适应值,选取适应值较大的SN/2个个体作为初始雇佣蜂种群:
其中,fiti表示第i个个体的适应值,fi表示第i个个体的函数值;
步骤40、在由步骤30选择出来的雇佣蜂个体附近进行邻域搜索,得到新蜜源,搜索策略如公式(6)所示:;
其中,为新蜜源;下标r1为集合{1,2,...,SN}中的随机整数,且不等于i;系数取值范围为[-1,1];变量表示第r1个蜜源的第j维;变量表示最佳蜜源的第j维;
步骤50、按照公式(5)计算新蜜源中新个体的适应值,记作fit_new,若fiti<fit_new,采用新个体替换当前雇佣蜂个体,trial(i)=0;否则,进行随机搜索,当rand<fiti时,按照公式(7)进行搜索,trial(i)=0,若rand>fiti,trial(i)++:
其中rand为0到1之间的随机数,下标r2为集合{1,2,...,SN}中的随机整数,且不等于i,系数取值范围为[-1,1];变量表示第r2个蜜源的第j维;
步骤60、判断trial(i)>limit是否成立,若成立,则放弃当前蜜源,进入侦查蜂阶段,根据公式(8)生成新蜜源,若不成立,则当前的解为最优解,转至步骤7;
步骤70、记录最优解;
步骤80、判断评估次数≥MFE,若是,则输出最优解;否则,转至步骤40。
本发明具有如下优点:
1、通过在生成初始种群时,同时产生一个解和所述解的反向解,可以得到分布比较均匀初始种群,在一定程度上避免了ABC中随机初始化的盲目性;
2、采用两种改进的搜索策略,提高了搜索的随机性,增强了算法的全局搜索能力,提高了算法的寻优性能。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明一种基于人工蜂群算法的优化方法的流程简图;
图2-11为本发明对于10个测试函数在D=30情况下的进化曲线图。
具体实施方式
请参考图1至图11,本发明实施例公开的一种基于人工蜂群算法的优化方法(EeABC),能够达到搜索某一问题最优解的目的,通过MATLAB(商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境)对10个典型的函数最小化问题的仿真寻优,来测试本发明EeABC的性能,并与ABC(传统人工蜂群算法)、GABC(gbest引导的ACB算法)、ABC/Best/1、ABC/Best/2、MABC(改进的人工蜂群算法)进行比较。测试函数介绍如表1所示,其中,属性U表示单峰函数,属性M表示多峰函数。
表1测试函数
EeABC,ABC、GABC、ABC/Best/1、ABC/Best/2以及MABC用于优化上述函数,算法在相同的实验背景下运行,且每个测试函数独立运行30次以避免偶然性,并记录均值(Mean)和方差(SD),对比效果用“+/=/-”表示,分别代表EeABC“优于/相似/差于”对比算法。
图1为采用本发明的一种基于人工蜂群算法的优化方法对上述10个典型的函数最小化问题的仿真寻优过程,包括:
步骤10、设置EeABC的参数,所述参数包括种群大小SN(比如SN=40)、最大迭代次数MCN(比如MCN=5000)、最大评估次数MFE(MFE=MCN×D)、个体维数D(比如D=30)、阈值limit(比如limit=100);
步骤20、生成初始种群,同时产生一个解和所述解的反向解,公式如下:
其中,i∈{1,2,…,SN},表示蜜源的数量;j∈{1,2,…,D},表示个体维度;表示解xi第j维的值;表示的反向解,表示第j维变量的取值范围;rand(0,1)为0到1之间的随机数;k∈[0,1],为广义系数;[aj,bj]为第j维搜索空间的动态边界;
若反向解越界(即通过公式(2)计算出的反向解的值,超出所述测试函数的取值范围),采用公式(4)重新取值:
其中,rand(·)为随机函数,取值介于与之间;将公式(1)得到的解和公式(2)得到的反向解合并,得到初始种群;
步骤30、将步骤20得到的初始种群代入测试函数,即得到目标函数值fi,如ellipitic函数,目标函数值然后将fi代入公式(5)分别计算个体的适应值,记作fiti,选取适应值较大的SN/2个(比如20个)个体作为初始雇佣蜂种群:
其中,fiti表示第i个个体的适应值,fi表示第i个个体的函数值;其他测试函数用同样步骤计算每个个体的适应值;
步骤40、在由步骤30选择出来的雇佣蜂个体附近进行邻域搜索,得到新蜜源,搜索策略如公式(6)所示:;
其中,为新蜜源;下标r1为集合{1,2,...,SN}中的随机整数,且不等于i;系数取值范围为[-1,1];变量表示第r1个蜜源的第j维;变量表示最佳蜜源的第j维;
步骤50、按照公式(5)计算新蜜源中新个体的适应值,记作fit_new,若fiti<fit_new,采用新个体替换当前雇佣蜂个体,trial(i)=0;否则,进行随机搜索,当rand<fiti时,按照公式(7)进行搜索,trial(i)=0,若rand>fiti,trial(i)++:
其中rand为0到1之间的随机数,下标r2为集合{1,2,...,SN}中的随机整数,且不等于i,系数取值范围为[-1,1];变量表示第r2个蜜源的第j维;
步骤60、判断trial(i)>limit是否成立,若成立,则放弃当前蜜源,进入侦查蜂阶段,根据公式(8)生成新的蜜源,若不成立,则当前的解为最优解,转至步骤7;
步骤70、记录最优解;
步骤80、判断评估次数≥MFE,若是,则输出最优解;否则,转至步骤40。
在所述步骤20中,种群初始化采用的初始化策略,通过同时产生一个解和所述解的反向解,可得到分布比较均匀初始解,在一定程度上避免了ABC中随机初始化的盲目性导致陷入局部最优。
在所述步骤40和步骤50中,采用两种改进的搜索策略提高了搜索的随机性,增强了算法的全局搜索能力,提高了算法的寻优性能。
表2为D=30时,EeABC与ABC对比的实验结果。
表2 EeABC&ABC优化结果对比
由表2可看出,在单峰函数中,对于F1,EeABC与ABC都可以得到理论最优值,对于其他单峰函数,EeABC的精度和稳定性要优于ABC;在多峰函数中,EeABC的精度和稳定性方面均优于ABC,如图2至图11所示的收敛曲线可以更加直观地评价EeABC与ABC的性能,其中横坐标代表迭代次数,纵坐标代表每次得到的当前最优解。
表3和表4分别为D=30时,EeABC与GABC&MABC以及ABC/Best/1&ABC/Best/2对比的实验结果;其中,GABC、MABC、ABC/Best/1以及ABC/Best/2的实验数据采用相应算法原文章中数据,GABC出自Zhu G,Kwong S.Gbest-guided artificial bee colony algorithm fornumerical function optimization[J].AppliedMathematics and Computation,2010,
217(7):3166-3173;MABC出自Gao WF,Liu S Y.Amodified artificial beecolony algorithm[J].Computers and Operations Research,2012,39(3):687-697;ABC/Best/1以及ABC/Best/2出自Gao W,Liu S,Huang L.Aglobal best artificial beecolony algorithm for global optimization[J].Journal of Computational&AppliedMathematics,2012,236(11):2741-2753。
表3 EeABC与GABC&MABC优化结果对比
表4 EeABC与ABC/Best/1&ABC/Best/2优化结果对比
由表3和表4可以看出:对于F1-F5以及F7,EeABC在精度和稳定性方面优于其他所有比较算法,而且,EeABC可以达到F1的理论最优值。对于F6,EeABC优于ABC/Best/1,ABC/Best/2和MABC,并且与GABC具有相同的效果。对于F8,EeABC与其它比较算法一样高效。总体来说,本发明EeABC在解的精度和收敛速度方面都有所提高。
本发明通过在生成初始种群时,同时产生一个解和所述解的反向解,可以得到分布比较均匀初始种群,在一定程度上避免了ABC中随机初始化的盲目性;采用两种改进的搜索策略,提高了搜索的随机性,增强了算法的全局搜索能力,提高了算法的寻优性能。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (1)
1.一种基于人工蜂群算法的优化方法,其特征在于,包括:
步骤10、设置EeABC的参数,所述参数包括种群大小SN、最大迭代次数MCN、最大评估次数MFE、个体维数D、阈值limit;
步骤20、生成初始种群,同时产生一个解和所述解的反向解,公式如下:
其中,i∈{1,2,…,SN},表示蜜源的数量;j∈{1,2,…,D},表示个体维度;表示解xi第j维的值;表示的反向解,表示第j维变量的取值范围;rand(0,1)为0到1之间的随机数;k∈[0,1],为广义系数;[aj,bj]为第j维搜索空间的动态边界;
若反向解越界,采用公式(4)重新取值:
其中,rand(·)为随机函数,取值介于与之间;
步骤30、根据公式(5)分别计算个体的适应值,选取适应值较大的SN/2个个体作为初始雇佣蜂种群:
其中,fiti表示第i个个体的适应值,fi表示第i个个体的函数值;
步骤40、在由步骤30选择出来的雇佣蜂个体附近进行邻域搜索,得到新蜜源,搜索策略如公式(6)所示:;
其中,vi j为新蜜源;下标r1为集合{1,2,...,SN}中的随机整数,且不等于i;系数取值范围为[-1,1];变量表示第r1个蜜源的第j维;变量表示最佳蜜源的第j维;
步骤50、按照公式(5)计算新蜜源中新个体的适应值,记作fit_new,若fiti<fit_new,采用新个体替换当前雇佣蜂个体,trial(i)=0;否则,进行随机搜索,当rand<fiti时,按照公式(7)进行搜索,trial(i)=0,若rand>fiti,trial(i)++:
其中rand为0到1之间的随机数,下标r2为集合{1,2,...,SN}中的随机整数,且不等于i,系数取值范围为[-1,1];变量表示第r2个蜜源的第j维;
步骤60、判断trial(i)>limit是否成立,若成立,则放弃当前蜜源,进入侦查蜂阶段,根据公式(8)生成新蜜源,若不成立,则当前的解为最优解,转至步骤7;
步骤70、记录最优解;
步骤80、判断评估次数≥MFE,若是,则输出最优解;否则,转至步骤40。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910825742.0A CN110569957A (zh) | 2019-09-03 | 2019-09-03 | 一种基于人工蜂群算法的优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910825742.0A CN110569957A (zh) | 2019-09-03 | 2019-09-03 | 一种基于人工蜂群算法的优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110569957A true CN110569957A (zh) | 2019-12-13 |
Family
ID=68777352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910825742.0A Pending CN110569957A (zh) | 2019-09-03 | 2019-09-03 | 一种基于人工蜂群算法的优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110569957A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111291855A (zh) * | 2020-01-19 | 2020-06-16 | 西安石油大学 | 基于改进智能算法的天然气环状管网布局优化方法 |
CN111626500A (zh) * | 2020-05-25 | 2020-09-04 | 南京航空航天大学 | 一种基于改进人工蜂群算法的路径规划方法 |
CN111798120A (zh) * | 2020-06-30 | 2020-10-20 | 南京信息工程大学 | 基于改进人工蜂群算法的柔性作业车间调度方法 |
CN113156931A (zh) * | 2020-12-21 | 2021-07-23 | 重庆邮电大学 | 给含有离子-人工蜂群算法的移动机器人配置路径的方法 |
CN113673662A (zh) * | 2021-08-02 | 2021-11-19 | 南京邮电大学 | 一种基于反向学习的混沌蜂群Web服务组合优化方法 |
CN115310353A (zh) * | 2022-07-26 | 2022-11-08 | 明珠电气股份有限公司 | 一种基于快速多目标优化的电力变压器设计方法 |
-
2019
- 2019-09-03 CN CN201910825742.0A patent/CN110569957A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111291855A (zh) * | 2020-01-19 | 2020-06-16 | 西安石油大学 | 基于改进智能算法的天然气环状管网布局优化方法 |
CN111291855B (zh) * | 2020-01-19 | 2023-04-07 | 西安石油大学 | 基于改进智能算法的天然气环状管网布局优化方法 |
CN111626500A (zh) * | 2020-05-25 | 2020-09-04 | 南京航空航天大学 | 一种基于改进人工蜂群算法的路径规划方法 |
CN111798120A (zh) * | 2020-06-30 | 2020-10-20 | 南京信息工程大学 | 基于改进人工蜂群算法的柔性作业车间调度方法 |
CN113156931A (zh) * | 2020-12-21 | 2021-07-23 | 重庆邮电大学 | 给含有离子-人工蜂群算法的移动机器人配置路径的方法 |
CN113673662A (zh) * | 2021-08-02 | 2021-11-19 | 南京邮电大学 | 一种基于反向学习的混沌蜂群Web服务组合优化方法 |
CN113673662B (zh) * | 2021-08-02 | 2024-01-09 | 南京邮电大学 | 一种基于反向学习的混沌蜂群Web服务组合优化方法 |
CN115310353A (zh) * | 2022-07-26 | 2022-11-08 | 明珠电气股份有限公司 | 一种基于快速多目标优化的电力变压器设计方法 |
CN115310353B (zh) * | 2022-07-26 | 2024-02-20 | 明珠电气股份有限公司 | 一种基于快速多目标优化的电力变压器设计方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110569957A (zh) | 一种基于人工蜂群算法的优化方法 | |
CN111597698B (zh) | 一种基于深度学习的多精度优化算法实现气动优化设计的方法 | |
CN109617888B (zh) | 一种基于神经网络的异常流量检测方法及系统 | |
CN111210432B (zh) | 一种基于多尺度多级注意力机制的图像语义分割方法 | |
CN107391888B (zh) | 基于fs+wp__svm的数控机床主轴热误差建模方法 | |
Chu et al. | Method of image segmentation based on fuzzy C-means clustering algorithm and artificial fish swarm algorithm | |
CN111985064A (zh) | 一种永磁电机的代理辅助优化设计方法及系统 | |
CN108399304A (zh) | 一种基于克里金模型的多点加点优化采样方法 | |
CN107194415A (zh) | 一种基于拉普拉斯中心性的峰值聚类方法 | |
CN110110380B (zh) | 一种压电执行器迟滞非线性建模方法及应用 | |
CN111048117A (zh) | 一种基于目标适应子空间学习的跨库语音情感识别方法 | |
CN111985845A (zh) | 一种异构Spark集群的节点优先级调优方法 | |
CN117350929B (zh) | 一种基于改进元启发式算法的电力图像增强优化方法 | |
CN112148942A (zh) | 基于数据聚类的业务指标数据分类方法及装置 | |
CN110321799B (zh) | 一种基于sbr和平均类间距离的场景数选择方法 | |
CN117473415A (zh) | 基于融合特征和自适应权重的物联网流量分类方法 | |
Babichev et al. | A hybrid model of gene expression profiles reducing based on the complex use of fuzzy inference system and clustering quality criteria | |
CN111680846A (zh) | 一种基于l1和l2范数的简化宽度学习系统 | |
CN110047088A (zh) | 一种基于改进教与学优化算法的ht-29图像分割方法 | |
CN114581470B (zh) | 一种基于植物群落行为的图像边缘检测方法 | |
CN113222811B (zh) | 一种基于图像掩膜的人脸属性迁移方法 | |
CN113554104B (zh) | 一种基于深度学习模型的图像分类方法 | |
CN115423149A (zh) | 一种能源互联网负荷预测和噪声等级估计的增量迭代聚类方法 | |
CN115936303A (zh) | 基于机器学习模型进行暂态电压安全分析方法 | |
CN103617206A (zh) | 基于自适应小生境的遗传聚类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191213 |
|
RJ01 | Rejection of invention patent application after publication |