1 / 6
文档名称:

人工蜂群算法的应用.docx

格式:docx   页数:6页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

人工蜂群算法的应用.docx

上传人:w3332654 2015/10/5 文件大小:0 KB

下载得到文件列表

人工蜂群算法的应用.docx

文档介绍

文档介绍:人工蜂群算法的应用
【摘要】人工蜂群算法(ABC)是建立在蜜蜂自组织型和群体智能基础上的一种非数值优化计算方法。自1995年提出蜂群算法后,该算法引起了学者们的极大关注,并已在组合优化、网络路由、函数优化、机器人路径规划等领域获得了广泛应用。本文首先介绍了蜂群算法的研究背景、基本原理、要素构成、算法流程和优缺点,然后,介绍蜂群算法在实际中的应用,并且最后用Matlab实现人工蜂群算法对Griewank函数的优化,最后,本文对蜂群算法领域存在的问题进行了总结,并提出了未来蜂群算法的研究方向。
【关键词】人工蜂群算法;函数优化;Matlab;研究方向
研究背景
群体智能(SwarmIntelligence)是指具有简单智能的个体通过相互协作和组织表现出群体智能行为的特性,具有天然的分布式和自组织特征,在没有集中控制且不提供全局模型的前提下表现出了明显的优势。虽然目前针对群体智能的研究还处于初级阶段,且存在许多困难,但群体智能的研究代表了计算机研究发展的一个重要方向。 2005年Karaboga成功地将蜜蜂采蜜原理应用于函数的数值优化,并提出比较系统的人工蜂群算法(ArtificialBeeColonyAlgorithm,简称ABC算法)。目前,关于ABC算法研究与应用还处于初级阶段,但由于其控制参数少、易于实现、计算简洁、鲁棒性强等特点,已成为群体智能领域的研究热点之一,被越来越多的学者所关注。
基本原理
自然界中的蜂群总是能自如发现优良蜜源(或花粉)。Von Frisch研究揭示蜜蜂以跳舞的方式来传达蜜源的信息。采集到花粉的蜜蜂,返回后在蜂巢上翩然起舞;蜜蜂沿直线爬行,然后再转向左这一种舞蹈,其动线呈“8”字形,并摇摆其腹部,舞蹈的中轴线与地心引力的夹角正好表示蜜源的方向和太阳的夹角。这种舞被称为“摇摆舞”,蜂群实现采蜜的集体智能行为包含3个基本部分:蜜源、采蜜蜂EF、待工蜂UF。此外引入3种基本的行为模式:搜索蜜源、为蜜源招募和放弃蜜源。

蜜蜂采蜜工作图
模仿蜂群的算法原理
(1)食物源初始化
初始化时,随机生成SN个可行解(等于雇佣蜂的数量)并计算适应度函数值。随机产生可行解的公式如下:

式中,xi(i=1, 2, . . . , SN)为D维向量,D为优化参数的个数,j ∈{1, 2, …, D}。
(2)新蜜源的更新搜索
蜜蜂记录自己到目前为止的最优值,并在当前蜜源邻域内展开搜索,基本ABC在蜜源附近搜索新蜜源的公式为:
式中,j∈{ 1, 2, …, D },k∈{ 1, 2, …, SN },k为随机生成且k≠i,为[ - 1, 1]之间的随机数。
(3)跟随蜂选择引领蜂
跟随蜂选择引领蜂的概率公式:
式中,fit(xi)为第i个解的适应值对应蜜源的丰富程度。蜜源越丰富,被跟随蜂选择的概率越大。
(4)产生侦查蜂
当某蜜源迭代limit次没有改进时,便放弃该蜜源, 并且将该蜜源记录在禁忌表中,同时该蜜源对应的雇用蜂转变为侦察蜂按式(1)随机产生一个新的位置代替原蜜源。
基本ABC算法的流程为:
1: 根据式(1)初始化种群解xi,i =1,…,SN
2: 计算种群中各个蜜蜂的适应值
3: cycle = 1
4: repeat
5: 雇佣蜂