改进的人工蜂群算法在多目标参数优化中的应用

合集下载

群智能优化算法及其应用

群智能优化算法及其应用

群智能优化算法及其应用随着复杂问题的不断涌现,传统优化算法往往难以求解出满意解。

而群智能优化算法作为一种新型的优化策略,以其强大的自组织、协作和学习能力,在解决这类问题上具有显著优势。

本文将介绍群智能优化算法的背景、概念及其应用,展望未来的研究方向和挑战。

群智能优化算法是一类基于群体行为启发的优化算法,通过模拟自然界中生物群体觅食、协作等行为来求解优化问题。

这类算法包括蚁群算法、粒子群算法、蜂群算法等,它们都具有以下特点:群体协作:群智能优化算法利用群体中个体的协作和信息共享机制,共同寻找最优解。

分布式计算:群智能优化算法采用分布式计算方式,将问题分解成若干个子问题,交由不同个体进行处理。

自适应调整:群智能优化算法能够根据问题的特性和解的分布情况,自适应地调整算法参数和策略。

蚁群算法是一种模拟蚂蚁觅食行为的优化算法,通过蚂蚁之间留下的信息素来指导寻优过程。

其应用领域广泛,包括函数优化、路径规划、任务调度等。

然而,蚁群算法易出现早熟收敛和信息素更新方式单一的问题。

粒子群算法是通过模拟鸟群飞行行为来求解优化问题的一种算法,每个粒子代表一个潜在解。

粒子群算法在求解多目标优化、约束优化等问题上具有较好表现,但可能陷入局部最优解。

蜂群算法是一种模拟蜜蜂觅食和酿蜜行为的优化算法,通过蜜蜂之间的协作和信息共享来寻找最优解。

蜂群算法在处理复杂优化问题时具有较高效率和鲁棒性,适用于多目标优化、约束优化等领域。

群智能优化算法在解决优化问题上具有广泛应用,除了上述的蚁群算法、粒子群算法和蜂群算法,还包括遗传算法、模拟退火算法、灰色狼群算法等。

这些算法在解决不同类型的问题时具有各自的优势和适用范围。

遗传算法是模拟生物进化过程的优化算法,通过选择、交叉和变异操作来产生新的解。

遗传算法在求解大规模、高维度优化问题时具有较好表现,但可能存在早熟收敛和计算效率低下的问题。

模拟退火算法是模拟固体退火过程的优化算法,通过引入随机因素来避免陷入局部最优解。

蜂群算法在函数优化问题中的应用

蜂群算法在函数优化问题中的应用

蜂群算法在函数优化问题中的应用作者:方群王慧来源:《电脑知识与技术》2016年第19期摘要:函数优化是算法应用中的基本问题,蜂群算法作为遗传算法与生物种群习性特征相结合的新算法,比较适合于此类问题的求解。

本文首先对蜂群算法进行了简单的描述,设计出基于蜜蜂婚配过程的计算机实现的同等模型。

使用实例测试蜂群算法的运行效果,并将其结果与基本遗传算法的结果进行比较。

实验结果表明,蜂群算法全局搜索能力强,具有较快较好的发现最优解的能力。

关键词:蜂群算法;遗传算法;函数优化中图分类号:TP18 文献标识码:A 文章编号:1009-3044(2016)19-0149-03Bee Colony Algorithm for Function OptimizationFANG Qun, WANG Hui( Bengbu Navy Petty Office Academy,Bengbu 233012, China)Abstract: Function Optimization is a basic problem in algorithm application. Bee Colony Algorithm is a combines generation algorithm and biological characteristics new algorithm. It is best of solution function optimization problem. A simple description of Bee Colony Algorithm is being in the article front. The corresponding model based bees marriage of computer is designed by us. The result of Bee Colony Algorithm is text by the function example. The experiment results show that using this algorithm in function optimization has better ability of global search and discovering best solution .Key words:bee colony algorithm; generationalgorithm; function optimization在人工智能的遗传算法领域中,有许多算法是通过对一些社会性昆虫的模拟而产生的,通过模拟蚂蚁的行为而产生的蚁群算法就是基于群体的成功的优化算法,此方法在解决许多复杂的组合问题中是成功的,研究和发展的前景也很好[1]。

《人工蜂群算法及其在语音识别中的应用研究》

《人工蜂群算法及其在语音识别中的应用研究》

《人工蜂群算法及其在语音识别中的应用研究》一、引言随着人工智能技术的快速发展,各种优化算法在各个领域得到了广泛的应用。

其中,人工蜂群算法作为一种新兴的优化搜索算法,因其优秀的全局搜索能力和良好的鲁棒性,在解决复杂优化问题中展现出独特的优势。

语音识别作为人工智能的重要应用领域,对优化算法的性能有着较高的要求。

本文将详细介绍人工蜂群算法的原理及其在语音识别中的应用研究。

二、人工蜂群算法概述人工蜂群算法是一种模拟蜜蜂觅食行为的优化搜索算法。

它通过模拟蜜蜂的采蜜过程,将搜索空间中的解看作食物源,通过蜜蜂的采蜜行为来寻找最优解。

人工蜂群算法包括蜜源搜索、蜜源选择、采蜜行为等步骤,具有较强的全局搜索能力和局部搜索能力。

此外,该算法还具有较好的鲁棒性和适应性,能够应对复杂的优化问题。

三、人工蜂群算法的原理及特点人工蜂群算法的原理主要包括蜜源初始化、蜜源选择、采蜜行为等步骤。

首先,算法随机生成一定数量的蜜源,每个蜜源代表一个可能的解。

然后,通过适应度函数对蜜源进行评价,选择出优质的蜜源。

接着,通过采蜜行为对优质蜜源进行进一步搜索和优化,寻找更好的解。

在搜索过程中,算法能够根据问题的特点和环境的变化,自适应地调整搜索策略,从而更好地找到全局最优解。

人工蜂群算法的特点主要包括以下几个方面:1. 全局搜索能力强:算法能够搜索到较优的解,且不易陷入局部最优。

2. 鲁棒性好:算法对初始解的选择和参数的设置不敏感,具有较强的适应性。

3. 适应度高:算法能够根据问题的特点和环境的变化,自适应地调整搜索策略。

4. 并行计算能力强:算法适合并行计算,能够快速地处理大规模的优化问题。

四、人工蜂群算法在语音识别中的应用研究语音识别是人工智能的重要应用领域之一,对优化算法的性能有着较高的要求。

人工蜂群算法在语音识别中的应用研究主要体现在特征参数提取、模型训练和语音信号处理等方面。

1. 特征参数提取:在语音识别中,特征参数的提取对识别性能有着重要的影响。

BP多目标人工群峰算法在建筑中应用

BP多目标人工群峰算法在建筑中应用

BP多目标人工群峰算法在建筑中应用摘要:在这个电子信息时代,各个领域都有对应的融合,在建筑方面通过研究发现BP多目标人工群峰算法加快了原有工程的进程,大大减少了人们进行复杂的数字运算与筛选的时间,对于多目标人工群蜂算法来说这是一个最好的时代,它化简了许多过程,在多方面领域对它的青睐程度很高,所以对于我们而言,我们很有必要去研究,开发和应用这个方法,将它的能力开发到极致,尤其是在建筑方面关键词:人工群峰算法节能多目标热舒适性1.人工群峰算法的概念及背景1.人工群峰算法的概念:人工蜂群算法(Aritifical Bee Colony Algorithm,简称ABC),通过模拟蜂群采蜜的过程,探索寻找优质食物源的一种新型的全局寻优群体智能算法,人工蜂群算法具有控制变量相少,收敛速度快,搜索能力强,容易实现和计算简洁等特点。

此外,人工蜂群算法还可以通过与其他算法相结合,来提高自身的优化性能。

人工蜂群:算法把优化问题的解看作蜜源,将优化问题的目标函数值度量成蜜源的花蜜量,将优化问题形象化和智能化,为解决现实中的复杂问题提供新思路。

人工蜂群算法具有广泛的应用,无论在理论分析研究中,还是在解决实际问题上,人工蜂群算法都具有重要的应用价值。

1.1.人工群峰算法在建筑中研究背景:随着我国经济和产业结构的调整,城镇化的发展和人类追求高含量的建筑空间,当前社会终端能源消费占20%的建筑能耗的比例将上升到30% ~ 40%民居建筑作为建筑的重要组成部分,其明亮的个性在居住建筑能耗不仅与建筑本身,更与居住者的行为意识、习惯等密切相关。

降低能源消耗,提高建筑经济性和舒适性的目的是积极响应国家发展政策,而改善居住环境的目的是满足人们对美好生活的追求。

在新时代背景下,在五大发展理念的指导下,节能居住建筑的多目标优化研究必将成为人们关注的焦点[1]。

传统的建筑节能优化研究集中在一个特定的研究方向上。

设计了几种实验方案,进行了一系列的仿真、测试和评价,选择了满足优化目标的结果。

一种改进的人工蜂群算法及其应用研究

一种改进的人工蜂群算法及其应用研究

( 2 ) 通 过分 享舞 池里 面 的信息 , 被其 它蜜 蜂招 募 ( R线 ) .
等待 峰被 招募 发现新 蜜 源后 , 迅速 开采 , 并转 变角 色为 雇佣 峰. 雇 佣峰 采蜜 归来后 , 回到峰巢 里面 卸载 所开 采 的蜜 , 通 过 比较所 开采 蜜量 的大 小 , 产 生 三种新 的选 择.

种 改 进 的 人 工 蜂 群 算 法 及 其 应 用 研 究
鄢 靖 丰
( 许 昌学院 计 算机科 学与技 术学 院 许 昌 河南 , 4 6 1 0 0 0 )

要: 针 对传统 的人 工蜂群 算 法具有较 强 的勘 探 能力 , 但 是 算 法局 部 开采 能 力较 弱 , 演化
后期 收敛 速度慢 , 容 易陷入局 部 最优 , 提 出了基 于混 沌算 法和逆 向 学习算 法相 结合 的初始 化种群
方法, 有 效改进种 群 的 多样性 ; 提 出了一 种新 型的搜 索策略 来 改进 观 察峰 与 侦察 蜂 的搜 索过 程 , 加快 了算 法的收 敛速度 ; 通过 5个 标准 函数 进行 测试 , 文 中算 法在搜 索效率 、 最优解质 量 、 稳 定性
均优 于传 统的人 工蜂群 算 法.
作者简介 : 鄢 靖丰 ( 1 9 8 2 一) , 男, 湖 北 天 门人 , 讲师 , 硕士 , 研究方向: 智 能算 法 、 网络 通信 .
第3 2卷 第 2期
鄢 靖丰 : 一种 改进 的人 工蜂 群算 法及 其应 用研 究
6 3
巢 附近蜜 源 的信息 , 它有 两种 可能 的选 择 : ( 1 ) 自发地 搜 寻蜂巢 附近 的蜜 源 ( s线 ) ;
法 的收敛 速度 .

蜂群优化算法在机器学习中的应用

蜂群优化算法在机器学习中的应用

蜂群优化算法在机器学习中的应用近年来,人工智能技术的飞速发展,使得机器学习在各个领域都得到广泛的应用。

而其中的优化算法,如粒子群优化、蚁群优化和蜂群优化等,也显得尤为重要。

其中,蜂群优化算法(BCO)因其出色的搜索性能和适应性,逐渐成为机器学习领域中一个热门的研究方向。

BCO算法是模拟蜜蜂觅食行为的一种新型的进化算法。

与其他进化算法相比,蜂群算法具有更高的收敛速度和更好的全局搜索能力。

因此,许多研究者已经成功将BCO算法应用于机器学习领域,例如分类、聚类、回归等任务中。

蜂群优化算法的基本原理是模拟蜜蜂寻找蜜源的过程。

在这个过程中,蜜蜂会通过观察和协作,找到最佳的蜜源。

与之类似的,BCO算法通过不断地调整探索和开发的权衡,使得每个个体都能发挥自己的特点,从而找到局部最优解和全局最优解。

在机器学习中,BCO算法主要分为两个阶段:初始化和迭代。

在初始化阶段,蜜蜂种群将被随机生成,并分配到随机的位置上。

接着,每个蜜蜂都会向之前最优蜜源的方向移动,从而快速发现优秀解。

在迭代阶段,蜜蜂们还会通过交换信息来进一步优化结果。

在分类问题中的应用,BCO算法能够在寻找特征组合方面,比其他算法更加出色。

蜂群算法通过调整特征权重和选取具有相似特征的点,从而提高分类的准确性。

同时,BCO算法还能在文本挖掘和图像识别中起到很好的作用。

在聚类问题中,BCO算法可用于分析复杂数据,挖掘数据的内在规律以及提供不同层次的聚类。

蜂群算法能够在聚类数据时,利用蜂群的交互和迭代方式,从而快速收敛到最优解。

在回归问题中,BCO算法则可以用于预测可能出现的结果。

例如,通过对数据进行训练和处理,BCO算法可以根据之前观测到的数据来预测未来数据的发展趋势。

尽管BCO算法在机器学习中的应用具有广泛的前景和应用价值,但其仍然存在一些局限性。

例如,在处理大规模数据时,需要大量的计算资源,同时也容易陷入局部最优解等问题。

因此,在未来的研究中,需要针对这些问题进行深入的探讨和研究,开发出更加高效和优化的算法模型。

改进的人工蜂群算法及其在坐标转换七参数计算中的应用

改进的人工蜂群算法及其在坐标转换七参数计算中的应用

改进的人工蜂群算法及其在坐标转换七参数计算中的应用汪继文;杜迪;邱剑锋【摘要】人工蜂群(artificial bee colony,简称ABC)算法是模拟蜂群在采蜜过程中所表现的群体智能行为来实现对实际问题求解的相对较新的优化技术.针对ABC算法收敛速度慢和容易陷入局部最优的缺点,结合坐标转换七参数计算的特点,作者对ABC算法的初始解的确定和观察蜂阶段选择策略进行了改进,并将此改进的ABC算法应用到坐标转换七参数的计算中.通过与其他两种方法计算的七参数进行坐标转换的精度对比实验,验证了论文方法计算的七参数实现了更高精度的WGS-84坐标系与BJ-54坐标系坐标的转换.【期刊名称】《安徽大学学报(自然科学版)》【年(卷),期】2015(039)006【总页数】6页(P23-28)【关键词】ABC算法;初始解;观察蜂阶段;七参数法;坐标转换【作者】汪继文;杜迪;邱剑锋【作者单位】安徽大学计算机科学与技术学院,安徽合肥230039;安徽大学计算机科学与技术学院,安徽合肥230039;安徽大学计算机科学与技术学院,安徽合肥230039【正文语种】中文【中图分类】TP18群体智能(swarm intelligence,简称SI)是以动物或昆虫群体的集体智慧为模型的一个研究领域,是一个涉及在分散系统中学习群体行为的计算智能技术.Bonabeau等[1]给出SI的定义:SI是指任何一种受社会昆虫群体和其他动物种群的社会行为启发而设计出的算法或以分布式方式解决问题的策略.在近几年产生了不少的SI算法,例如遗传算法(genetic algorithm,简称GA)[2]、粒子群优化算法(particle swarm optimization,简称PSO)[3]、蚁群算法(ant colony optimization,简称 ACO)[4]、调和搜寻算法(harmony search,简称 HS)[5]、ABC(artificial bee colony)算法[6]等.ABC算法是近几年发展起来的基于蜂群智能搜寻行为的群体优化算法,虽然该算法改进了参数优化的搜寻解决方案和获得了准确的预测,但仍然面临着一些挑战性的问题,其中两个最主要的问题是该算法容易陷入局部最优和收敛速度较慢.因此,跳出局部最优和加快收敛速度已经成为ABC算法研究中两个最重要的目标.在大地测量和地图制图的工作中,坐标系是不可缺少的,任何测量和地图制图的工作都是在一定的参考坐标系中进行的.随着全球定位系统(global positioning system,简称GPS)定位精度的不断提升,GPS技术在各种测量中的应用也越来越广泛,但是GPS测量到的坐标是世界大地坐标系84(world geodetic system 84,简称WGS-84)坐标,只能够在WGS-84坐标系统中表示.我国的国土测量成果和在进行工程施工时大都采用北京54(Beijing-54,简称BJ-54)参心坐标系的坐标.如何实现 WGS-84坐标系与BJ-54坐标系之间的精确转换,一直是相关行业应用必须解决的问题.目前完成不同空间直角坐标系的转换可采用三参数法、七参数法(布尔沙模型、莫洛琴斯基模型、范式模型)多项式逼近法等,其中布尔沙模型七参数转换法是坐标转换中常用的方法[7],七参数的最优计算是该方法完成高精度坐标转换的关键所在[8].但目前已有的方法计算出来的七参数的坐标转换精度尚有待提高.作者提出将改进的ABC算法用于布尔沙模型坐标系转换七参数的计算.首先针对基本的ABC算法的两个缺点,并结合坐标转换七参数的计算,对算法进行改进,即在初始化阶段随机选择重合点的时候,剔除部分误差较大的点,在观察蜂阶段选择概率计算公式中,加入了对重合点个数和重合点外接多边形面积因素的评估,使得算法在收敛速度上有明显加快,并有效防止算法陷入局部最优;然后将改进的ABC算法应用到坐标转换七参数的计算中,并将计算结果与其他两种方法的计算结果进行比较.可以看出论文方法计算的七参数实现了更高精度的WGS-84坐标系与BJ-54坐标系坐标的转换.1 布尔沙模型七参数坐标转换法坐标转换通常的途径是根据给定的重合点来确定转换公式的参数,从而实现坐标系之间的转换,这里的重合点是指在两套坐标系中坐标已知的相同点.设某重合点在WGS-84坐标系的空间直角坐标表示为(X84,Y84,Z84 ),在 BJ-54坐标系的空间直角坐标表示为(X54,Y54,Z54 ),布尔沙模型七参数转换法的计算公式[9-10]为上式中含有7个参数DX,DY,DZ,α,β,γ,K.其中:DX,DY,DZ分别表示坐标轴X ,Y,Z轴方向的偏移量;α,β,γ分别表示X,Y,Z轴方向的旋转量;K表示缩放因子.七参数计算的目标是根据给定的重合点,求出坐标转换精度较高的七参数.将至少3个重合点的坐标代入(1)式,应用最小二乘原理可以求出坐标转换七参数的解.七参数至少需要3个重合点坐标才能求出,使用4个及4个以上数量的点可以得到更多的观测值,可求出坐标转换精度更高的七参数.坐标转换精度可采用内符合精度和外符合精度评价.内符合精度是利用下面的重合点残差和残差中误差来检测残差中误差计算公式[11-12]为其中:MX,MY,MZ分别为空间直角坐标轴X,Y或Z的残差中误差,计算公式为MX(MY,MZ)=是第i个重合点的X ,Y或Z轴的残差值,n为重合点个数.为了便于比较,MP,MX,MY,MZ均取正值.内符合的检测依据计算转换参数的重合点残差和残差中误差的倍数关系评估坐标转换精度,残差小于3倍残差中误差的重合点精度满足要求.外符合精度通过下述评价函数来检测.定义第i个七参数所对应的坐标转换评价函数为其中:C1,C2为取值在[0,1]之间的权重系数.评价函数值越小,说明进行坐标转换的误差越小,坐标转换的精度也就越高.2 改进的ABC算法及其应用于坐标转换七参数的计算2.1 用于坐标转换七参数计算的ABC算法建模与改进在一个真正的蜜蜂群体中,有些任务是由专门的个体完成的.基本的ABC算法模拟蜜蜂群体采蜜的过程,将蜜蜂分为雇佣蜂、观察蜂和侦察蜂3种类型,3种蜜蜂根据各自的分工进行采蜜活动.每个蜜源代表优化问题的一个可行解,蜜蜂通过对蜜源信息的交流与共享最终达到找到最好的蜜源(最优解)的目的.初始化蜜源之后,雇佣蜂比较记忆中的最优解和邻域搜索解,当搜索解优于记忆最优解时,替换记忆解;反之,保持不变.所有的雇佣蜂搜索完之后,将蜜源信息通过舞蹈区与观察蜂共享,观察蜂按照一定的选择机制选择较好的蜜源,然后转化为雇佣蜂;如果一个蜜源在多次迭代中都未被更新,则该蜜源将被抛弃,依附于该蜜源的雇佣蜂成为侦察蜂,重新初始化一个新的蜜源[13].为应用ABC算法来计算七参数,论文建立七参数计算与ABC算法之间的对应关系如表1所示.表1 七参数计算与ABC算法对应关系Tab.1 Relationship between calculating seven parameters and ABC algorithm七参数计算 ABC算法七参数解候选解转换精度最高的七参数最优解七参数转换精度评价适应度值最优七参数计算速度收敛速度进一步,结合坐标转换七参数计算的特点,论文对基本的ABC算法进行改进,主要包括以下两个方面:(1)初始解的改进.基本的ABC算法的初始解是随机生成的,在坐标系转换七参数的计算问题中,随机选择的3个重合点计算出来的七参数中有很大一部分是不满足坐标转换精度要求的,再改进下去意义不大,不如在随机初始生成的解中剔除坐标转换精度不达标的七参数及其对应的重合点组,以便后续计算越来越好.剔除解的标准为如果Num>3,不符合内符合检测标准,应当舍弃该解及其对应的重合点组. (2)观察蜂选择策略改进.基本的ABC算法中观察蜂在进行蜜源选择时采用了随机贪婪策略,忽略了个体之间的位置关系[14],使得观察蜂有可能选择了对应重合点个数较少或者重合点构成的外接多边形面积较小的解,从而导致没能顾及整个测区的精确度,容易陷入局部最优的解中.针对此问题,作者提出,在观察蜂阶段选择机制中加入对重合点个数和重合点构成的外接多边形面积因素的评估,即依据如下公式计算解被选择的概率其中:SN 是整个测区初始解的个数;Ni表示当前解对应的重合点组所包含的重合点个数;Si为重合点组构成的外接多边形面积;R1,R2,R3为权重系数且fiti为第i个七参数的适应度值,计算公式如下其中:fi是(4)式给出的评价函数.2.2 改进的ABC算法应用到坐标转换七参数计算的流程步骤1 在测区内获取多个在两套不同坐标系下均匀分布的重合点坐标,随机选择3个重合点构成一个重合点组,选择SN 个重合点组,依据公式(1)计算每个重合点组对应的七参数;依据公式(3)计算当前七参数进行坐标转换的残差中误差值,根据公式(5)剔除精度不达标的解及其对应的重合点组,并再随机生成重合点组补充精度不达标的解,构成SN个符合条件的初始解;步骤2 设置外循环初始值m=0,设置内循环初始值n=0;步骤3 在重合点组任选一个重合点,在其附近随机增加一个点产生新的重合点组,根据公式(5)监测是否符合内检测标准,符合则继续;不符合,则再随机增加一个点,直至满足内符合标准,然后按照公式(7)计算新解适应度值,如果新解的适应度值大于旧解,则用新解对应的重合组代替旧解对应的重合组;否则,保持不变;步骤4 如果解没有改进,则limit=limit+1;否则limit保持不变;步骤5 根据公式(6),计算选择概率Pi,观察蜂根据选择概率Pi选择食物源,然后通过增加重合点的方法产生新解,并根据公式(7)计算适应度值;如果新解的适应度值大于旧解,则用新解代替旧解;否则,保持原解不变;步骤6 设置n=n+1,如果n<N,转步骤3;步骤7 判断解没有被改进的次数是否超过limit值,如果超过,则抛弃该解及其对应的重合点组,全局随机生成一个新解,转入步骤3;步骤8 所有搜索完毕后,记录当前最优解;步骤9 设置m=m+1,如果m<M,转至步骤3;否则,结束.3 性能分析及仿真实验3.1 性能分析为了验证改进的ABC算法的良好性能,在.NET环境下使用基本的ABC算法和论文改进的ABC算法进行坐标转换七参数计算,将得到的坐标转换精度结果进行对比.设置相关实验参数:种群大小SN=50,内循环次数N=100,外循环次数M =100,权重系数C1=0.4,C2=0.2,R1=0.5,R2=R3=0.25.输出迭代次数和评价函数值如图1所示,其中横轴为迭代次数,纵轴为评价函数值.由图1所示的实验结果可以看出,由于改进的ABC算法对于初始解进行了优化,及时剔除不满足条件的解,并考虑到最优解所包含的重合点个数和重合点构成外接多边形面积对于选择概率的影响,使得算法最后输出的解转换精确度有所提高并且收敛速度有了明显加快.图1 改进的ABC算法与基本ABC算法的对比Fig.1 The comparison of the improved ABC algorithm and basic ABC algorithm3.2 仿真实验为了验证改进的ABC算法在坐标系转换七参数计算中的能够计算出坐标转换精度较高的七参数,该研究对设定的算法进行了真实数据实验,根据所设定的算法,实验采用基于ArcGIS Enginge、.NET平台在 Visual Studio 2013中编程实验(计算机配置:Intel Core i5-3470 CPU 3.20GHz).实验数据集为某地区(大约100km×100km)的200个重合点坐标,它们是BJ -54坐标系下空间直角坐标和对应的由静态测量得到的WGS-84坐标系下的空间大地坐标.要实现从 WGS-84到BJ-54坐标系的坐标转换,要先将测得的WGS-84空间大地坐标转换成空间直角坐标[15].表2展示部分重合点数据(由于涉及国家机密,表中所给的数据非真实数据,只为了形象的表达而展示). 表2 部分重合点的BJ-54坐标和WGS-84坐标Tab.2 BJ-54coordinates andWGS-84coordinates of some coincidence pointsBJ-54点号WGS-84坐标系X/m Y/m Z/m坐标B L H/m Q1 3 549 978.047 6 85 300.346 3 83.991 8 36°48′39..076 9″N 114°42′35.538 6″E 98.220 4 171 2″N114°48′26.085 5″E 67.4573 Q2 3 557 015.892 3 79 019.233 6 87.937 6 36°50′26.647 1″N 114°30′21.868 3″E 74.304 5 Q3 3 548 451.765 7 51909.073 3 123.488 1 36°49′47.270 4″N 114°23′06.348 5″E 104.713 4 Q4 3 540 420.536 1 58 209.073 3 123.488 1 36°41′28算法实验的具体参数设置如下:种群大小SN=30,内循环次数N=40,外循环次数M=500,权重系数C1=0.4,C2=0.2,R1=0.5,R2=R3=0.25.基于改进的ABC算法计算七参数的计算结果列于表3(3次独立运行的实验结果,分别编号为1,2,3).为了验证改进的ABC算法是否相对已有方法有效地改进了坐标转换的精度,论文采用上述相同的实验数据集,使用改进的ABC算法计算七参数时所使用的相同的重合点,用基于非迭代法与迭代法联合估计方法[8]计算了七参数(编号为4),还直接由最小二乘法计算了七参数(编号为5),结果列于表4.表3 改进的ABC算法得到的七参数值Tab.3 Seven parameter values obtained by the improved ABC algorithm七参数编号 DX/m DY/m DZ/m α/″ β/″ γ/″ K/ppm 8.794 010 -2.459 687 -109.188 2 11.273 1 236.072 -462.174 -42.060 549 15.303 219 3.484 864 -84.844 3 -253.063 608.892 -790.464 -25.732 648 -22.1 1 -676.083 2 490.333 -2 252.545 -103.427 423 -2 49 684 -5.234 691 4.834表4 两种方法计算的七参数值Tab.4 Seven parameter values calculated bytwo methods七参数编号 DX/m DY/m DZ/m α/″β/″ γ/″ K/ppm 4-272.545 615.832 472.954 -59.629 434 -36.75 1 846 10.578 646 -64.555 6 566 -6.562 148 -89.287 5 68.952 3602.463 -692.485 -82.461 557 92.785由其他的所有未参与七参数计算的重合点中随机取出10、15、20、25、30、35、40、45、50个点,根据公式(4)计算表3、表4两个表中5个实验结果的七参数对应的评价函数值,其对比结果如图2所示.从图2中可以看出,直接由最小二乘法计算出的七参数误差相对较大,评价函数值在6~9cm;使用基于非迭代法与迭代法联合估计方法计算出来的七参数进行坐标转换的精度相对于直接由最小二乘法计算的结果要好,但也没有太大提高;而采用了改进的ABC算法计算出来的七参数在实际的坐标转换中能够保持相对较高的精度,评价函数值稳定在1~5cm,误差相对其他两种方法明显减少.图2 七参数转换坐标精度对比Fig.2 The contrast of seven parameter conversion coordinates accuracy4 结束语论文针对ABC算法收敛速度慢和容易陷入局部最优的缺点,并与坐标系转换七参数计算问题相结合,提出了对基本ABC算法的初始解和观察蜂选择策略两个方面的改进.实验表明,论文提出的改进的ABC算法应用到坐标系转换七参数计算上,与所比较方法求出的七参数计算坐标转换精度相比,具有良好的寻优性和稳定性,能够实现精度较高的坐标转换.参考文献:[1]Bonabeau E,Dorigo M,Theraulaz G.Swarm intelligence:from natural to artificial systems[M].London:Oxford University Press,1999. [2]Tang K S,Man K F,Kwong S,et al.Genetic algorithms and their applications[J].Signal Processing Magazine,IEEE,1996,13(6):22-37.[3]Kennedy J.Particle swarm optimization[C]//Encyclopedia of Machine Learning,Springer US,2010:760-766.[4]Dorigo M,Gambardella L M.Ant colony system:a cooperative learning approach to the traveling salesman problem[J].Evolutionary Computation,IEEE Transactions on,1997,1(1):53-66.[5]Geem Z W,Kim J H,Loganathan G V.A new heuristic optimization algorithm:harmony search[J].Simulation,2001,76(2):60-68. [6]Karaboga D.An idea based on honey bee swarm for numerical optimization[R].Technical Report-tr06,Erciyes University,Engineering Faculty,Computer Engineering Department,2005.[7]徐仕琪,张晓帆.关于利用七参数法进行 WGS84和BJ54坐标系转换问题讨论[J].测绘与空间地理信息,2007,30(5):33-39.[8]谭骏祥,李少达,杨容浩.基于非迭代与迭代法联合估计的七参数坐标转换方法研究[J].大地测量与地球动力学,2014,34(1):131-134.[9]柳光魁,王振禄,赵永强,等.BJ-54坐标系与 WGS-84坐标系转换方法及精度分析[J].测绘与空间地理信息,2007,30(3):167-168.[10]张敬伟.布尔莎模型坐标转换适用范围及精度分析[J].测绘与空间地理信息,2013(1):175-176.[11]高永甲.WGS-84坐标系和西安80坐标系转换方法及精度分析——基于新疆兵团C、D级GPS网成果[J].测绘工程,2009,18(3):32-35. [12]骆永炎.关于中误差公式的文字解释[J].测绘通报,1982(4):15. [13]汪继文,杨丹,邱剑锋,等.改进人工蜂群算法求解非线性方程组[J].安徽大学学报:自然科学版,2014,38(3):16-23.[14]张鹏,刘弘,刘鹏.改进的蜂群算法及其在 CBD选址规划中的应用[J].计算机科学,2013,40(8):210-213.[15]王解先,徐志京.三种坐标间转换的雅可比矩阵数值导数计算方法[J].大地测量与地球动力学,2005,24(4):19-23.。

人工蜂群算法

人工蜂群算法

⼈⼯蜂群算法⼈⼯蜂群算法⼀.算法的产⽣多⽬标优化是实际中⼴泛存在的NP求解难问题。

通常问题的最优解不是单个解,⽽是多个解,并且各个解之间的结果是不可⽐较的。

近年来出现了许多优秀的多⽬标有优化算法,⽐如遗传算法、鱼群算法、粒⼦群算法以及其改进的算法[1-5]。

但是这些算法还是存在收敛慢、容易陷⼊局部最优解等问题,有待进⼀步改进。

为了优化多变量、多模态数据函数,Karaboga在2005年⾸次提出采⽤⼈⼯蜂群(ABC)算法来描述该问题[6]。

该算法是模拟蜜蜂群觅⾷的智能算法,根据各⾃分⼯进⾏不同的活动,实现蜜蜂群信息的交流个体共享,从⽽找到问题的最优解。

函数优化结果表明该算法⽐遗传算法、粒⼦群算法、微分进化算法具有更好的优化性能。

蜜蜂是⼀种群居昆⾍,虽然单个昆⾍的⾏为极其简单,但是由单个简单的个体所组成的群体却表现出极其复杂的⾏为。

真实的蜜蜂种群能够在任何环境下,以极⾼的效率从⾷物源(花朵)中采集花蜜;同时,它们能适应环境的改变。

蜂群产⽣群体智慧的模型包含三个基本的组成要素:⾷物源、被雇佣蜂(employed foragers)和未雇佣蜂(unemployed foragers):两种最为基本的⾏为模型:为⾷物源招募(recruit)蜜蜂和放弃(abandon)某个⾷物源。

1)⾷物源:⾷物源的价值由多⽅⾯的因素决定,如:它离蜂巢的远近,包含花蜜的丰富程度和获得花蜜的难易程度。

使⽤参数“⾷物源的收益率”(profitability),来代表以上各个因素。

2)被雇佣蜂:也称引领蜂(Leader),其与所采集的⾷物源⼀⼀对应。

引领蜂储存有某⼀个⾷物源的相关信息(相对于蜂巢的距离、⽅向、⾷物源的丰富程度等)并且将这些信息以⼀定的概率与其他蜜蜂分享。

3)未雇佣蜜蜂:其主要任务是寻找和开采⾷物源。

有两种未被雇佣的蜜蜂:侦查蜂(Scouter)和跟随蜂(Follower)。

侦察蜂搜索蜂巢附近的新⾷物源;跟随蜂等在蜂巢⾥⾯并通过与引领蜂分享相关信息找到⾷物源。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本文来自中国月期刊网(http://www.yueqikan.com),请到月期刊网进行查询。

改进的人工蜂群算法在多目标参数优化中的应用 王耀光1,王振林2,李迅波2 摘要:本文在Pareto非支配集的基础上提出改进蜂群适应度算法操作,对蜂群算法产生的每一个个体进行局部搜索。为了提高算法的搜索率,采用精英选择加快多个目标的并行搜索。实验结果表明该方法与蜂群算法相比能快速地收敛于Pareto最优解。 关键词:多目标优化,蜂群算法,Pareto最优解 1引言

多目标优化是实际中广泛存在的NP求解难问题。通常问题的最优解不是单个解,而是多个解,并且各个解之间的结果是不可比较的。近年来出现了许多优秀的多目标有优化算法,比如遗传算法、鱼群算法、粒子群算法以及其改进的算法[1-5]。但是这些算法还是存在收敛慢、容易陷入局部最优解等问题,有待进一步改进。 为了优化多变量、多模态数据函数,Karaboga在2005年首次提出采用人工蜂群(ABC)算法来描述该问题[6]。该算法是模拟蜜蜂群觅食的智能算法,根据各自分工进行不同的活动,实现蜜蜂群信息的交流个体共享,从而找到问题的最优解。函数优化结果表明该算法比遗传算法、粒子群算法、微分进化算法具有更好的优化性能。

2 多目标人工蜂群算法 2.1多目标优化问题 考虑如下多目标优化问题:

12min()((),(),,())mfxfxfxfx,

(1) s.t.[,].xab,

其中,决策向量SNxR,即12(,,,)SNxxxx,目标向量()mfxR。多目标优化中,各个目标通常是相互制约的,一个目标得以优化,往往是牺牲其它目标的性能为代价,为了对多目标问题进行优化本文采用基于Pareto的人工蜂群算法 进行求解。 Pareto最优解集中的解是彼此不可比较的,解集中的解数量越多,分布越广泛,决策者的选择空间越大,越能对实际多目标问题进行合理求解。

2.2 个体适应度

本文来自中国月期刊网(http://www.yueqikan.com),请到月期刊网进行查询。

本文采用双倍排序和自适应密度法,对个体的适应度赋值,首先根据Pareto的支配关系,对群体中的每一个个体排序,再根据周围的拥挤情况计算适应度密度值,最后综合确定适应度。其方法如下:

1) 计算群体Q中每个个体i的排序()Ri

(){|,}RijjQjiiQ (2)

其中,符号""表示Pareto支配关系,即上式表示当前群体Q中支配个体i的个数。 2) 个体i的排序()Ri:

,()()()jQijRiRiRjiQ

(3)

上式表明个体i的排序数()Ri等于个体i的伪排序数与支配个体i的所有个体的伪排序数之和。 (3)根据种群的规模SN将目标空间划分成eeeknnn个网格,en表示

每维目标空间的网格数,设kSN的整数部分为a,小数部分为r则 010earnar





(4)

将每个个体所在的网格区域的个体数作为给个体的密度值。 (4)个体适应度值: 1exp(()*())ifitRii (5)

式中,()Ri表示个体i的排序号,()i表示个体i的密度值。 2.3基于Pareto的人工蜂群算法 在ABC算法中,人工蜂群由采蜜蜂、观察蜂和侦察蜂三部分组成。蜜源的位置代表优化问题的可能解,蜜源的花蜜量代表相应解的质量或适应度。采蜜蜂的数量和解的数量相等。首先ABC算法随机产生SN个初始解(SN为采蜜蜂数量)。每

个解(1,2)ixiSN是一个D维的向量,D是优化参数的个数。经过初始化后,蜂群的位置(解)随着采蜜蜂、观察蜂和侦察蜂搜索开始循环。采蜜蜂根据记忆中的局部信息调整其位置并检查新蜜源的花蜜量。如果新位置的花蜜量比原来的多,则蜜蜂记住新的位置忘记旧的位置,否则保留旧的位置。在所有采蜜蜂完成本文来自中国月期刊网(http://www.yueqikan.com),请到月期刊网进行查询。

搜索过程后,它们将在舞蹈区与观察蜂分享蜜源的花蜜信息和位置信息。观察蜂据此按与花蜜量相关的概率选择一个蜜源位置,像采蜜蜂那样根据记忆中的位置做一定的调整,并检查新候选位置的花蜜量。如果新位置的花蜜量优于旧位置的花蜜量则忘掉旧的位置记住新位置。 主要算法步骤如下: 1、 初始化种群的数量; 2、 循环搜索; 3、 将采蜜蜂放置到蜜源位置; 4、 根据观察蜂的记忆将其放置到蜜源位置; 5、 放出侦察蜂到搜索区域寻找新的蜜源; 6、 记住搜索过程中最好的蜜源位置; 7、 循环搜索直到满足要求。 本文利用Pareto最优概念,将优于某个体的个体适应度值作为该个体的适应

度值,一个观察蜂选择蜜源的概率取决于蜜源的概率值ip,其计算如下:

1iiSNnnfitpfit (6)

其中,ifit是第个体i的适应值,SN是采蜜蜂数量(或蜜源数量)。 为了从记忆中就得蜜源位置产生一个新的蜜源位置,ABC算法采用如下表达式:

()ijijijijkjvxxx, (7)

这里{1,2,)kSN,{1,2,,}jD是随机选择的下标,且ki;是在[-1,1]之间的随机数;它控制ijx领域内新的蜜源的产生并代表蜜蜂对两个可视范围内两个蜜源位置的比较,从(7)式中可以看出随着ijx与kjx之间的差距缩小,对位置ijx的扰动就越小,因此在解空间内随着最优解得逼近,步长将相应地减少。 在人工蜂群算法中,如果一个蜜源位置经过限定次数的循环后仍然不能被改进,那么该蜜源处的采蜜蜂成为侦察蜂,该蜜源位置将被解空间内随机产生的一

个位置所代替。设放弃的蜜源位置是ix,则侦察蜂发现新蜜源并替换ix的操作如下:

minmaxmin[0,1]()jjjjixxrandxx, (8)

式中,{1,2,,}jD。 本文来自中国月期刊网(http://www.yueqikan.com),请到月期刊网进行查询。

2.4 精英选择 精英选择的思想源于遗传算法的精英策略。精英策略就是在算法的迭代过程中,从上一代保留优秀的潜在解至下一代的过程,简单地从上一代中直接拷贝相应的解至下一代是常用的方法。从遗传算法的整个选择策略来看,精英选择是群体收敛到优化问题最优解的一种基本保障。如果下一代群体的最佳个体适应值小于当前群体最佳个体的适应值,则将当前群体最佳个体或者适应值大于下一代最佳个体适应值的多个个体直接复制到下一代, 随机替代或替代最差的下一代群体中的相应数量的个体。为了提高多目标解的质量和算法的收敛速度,本文提出基于精英选择的蜂群算法求解多目标优化问题,其方法如下: 每个单目标问题所生成的个体集合称为子种群,所有子种群的结合称为多目标种群,各个但目标的子种群规模是相同的,另外建立一个精英种群来保存Pareto最优解。在每生成新一代多目标种群后都将根据下列定义对精英种群中的个体进行更新,保证精英种群中的解都是目前意义上的Pareto最优解。

定义1 称[,]xab是多目标优化问题的Pareto最优解,如果不存在[,]yab,使

得()()1,2,iifyfxim,,且至少有一个严格不等式成立[7]。 基于上述思想,利用精英选择思想改进人工蜂群算法可以加快算法的搜索速度和有效地找到精确解。 该算法的基本步骤如下:

(1) 初始化种群:给定采蜜蜂的数量0n,观察蜂的数量1n,随机生成

01SNnn个解;评价初始种群,从中选出0n个构成初始蜜源位置

(解); (2) 确定放弃蜜源的位置,如果存在该蜜源,则该处的采蜜蜂变为侦察蜂,根据(8)式随机生成的蜜源替换该蜜源; (3) 采用(7)式寻找一个新的蜜源位置,并计算该位置的适应度,如果新位置优于原来的位置,则用新位置替换掉原来的位置,否则保留原来的位置; (4) 根据式(2)和(3)对蜜源位置排序; (5) 根据(6)式,观察蜂选择一个新的蜜源位置,并根据(7)式产生一个新的蜜源。

(6) 根据排序的适应度从群体的中选择loop+1(loop循环的次数)个蜜源位置,利用精英选择思想评价该位置是否优于观察蜂所选位置,是则替换所选位置; (7) 记住搜索过程中的最优蜜源位置(解); (8) 判断是否满足终止条件,否则转向步骤(2),否则停止计算。

3 实验验证 本文来自中国月期刊网(http://www.yueqikan.com),请到月期刊网进行查询。

为了验证本文提出的方法的有效性以及ABC算法改进前后性能的比较,采用参考文献[8]的测试函数。 (1)Sphere函数

niixxf12

)( -100ix100

是一个连续、单峰的凸函数,函数全局最小点为0,即12,,0,0,,0optnxxxx

.

(2)Rastrigin函数 )10)2cos(10()(12iniixxxf -5.12ix5.12

全局最优点为0,优化结果:12,,,0,0,,0optnxxxx



(3)Rosenbrock函数

2122111001niiiifxxxx



 -10ix10

全局最优点为0, 优化结果为12,,,1,1,,1optnxxxx

.

在改进前后的ABC算法中,最大循环次数为2000。为了统计算法收敛的平均误差和均值,每个测试函数均做30次实验。每次循环运算的时候观察蜂和采蜜蜂均为50%的种群数量。表1~3为不同种群数量的蜂群算法改进前后对比结果 表1:Sphere函数测试结果 Tab.1 Test results of Sphere function Sphere 函数 种群数10 种群数30 种群数50

改进前 本文方法 改进前 本文方法 改进前 本文方法 Mean 0.000750316 1.85669E-06 5.57868E-10 1.04213e-013 2.2408E-15 4.45573E-17 Std 0.000855695 1.39426E-05 7.79432E-10 2.83441E-15 3.54077E-15 2.89256E-17

表2:Rastrigin函数测试结果 Tab.2 Test results of Rastrigin function Rastrigin函数 种群数10 种群数30 种群数50 改进前 本文方法 改进前 本文方法 改进前 本文方法 Mean 2.48241 3.31653 0.524612 0.241352 0.008027 1.07643E-06

Std 2.373 2.97476 1.86301 0.97305 0.04359 1.47197e-005 表3:Rosenbrock函数测试结果 Tab.3 Test results of Rosenbrock function

相关文档
最新文档