张敏辉 杨剑
摘 要:随着科技的快速发展,大数据时代已经到来。对于大数据的分析与处理推动社会经济的不断发展,在大数据背景下,数据规模、处理难点的优化问题也变得更加多样化,进而使优化方法成为人们日益关注的焦点。一种新型的计算技术——群智能算法,运用高效的优化算法对自然界社会性生物群体进行模拟,解决各个领域的实际问题。本文提出群智能算法中的自适应优化算法——粒子群算法,详细分析粒子群算法的原理,为了提高全局搜索能力及计算效率,本文加入了种群自适应增加/删除个体数目方法有效改进种群多样化,提高收敛速度及质量。基于逻辑斯谛模型的算子设计有效地增强了粒子群的多样性,自适应控制策略更具有一般性特征,可更好地应用到不同的群智能算法中,解决大数据问题的优化性。
关键词:大数据; 智能算法; 优化; 粒子群
Abstract: With the rapid development of science and technology, the era of big data has come. The analysis and processing of big data will promote the continuous development of society and economics. In the background of big data, the optimization of data size and processing difficulties has become more diversified, and the optimization method has become the focus of people's attention. A new computing technology, group intelligence algorithm, is used to simulate the social biological groups in nature by using efficient optimization algorithms to solve practical problems in various fields. In this paper, an adaptive optimization algorithm, particle swarm optimization (PSO) algorithm, is proposed. The principle of particle swarm optimization is analyzed in detail. In order to improve the global search ability and efficiency, this paper adds a population adaptive increase / delete individual number method to improve the population diversity and improve the convergence speed and quality. The operator design based on the logistic model can effectively enhance the diversity of the particle swarm. The adaptive control strategy has more general characteristics, and can be better applied to different swarm intelligence algorithms for better solving the optimization of big data problems.
Key words: big data; intelligent algorithm; optimization; particle swarm
引言
随着社会科技与经济的发展,优化在计算机等相关领域占有重要地位。群智能算法作为一种全新的演化算法作用于科学计算和解决社会经济中[1]。国外对于群智能领域的研究较早,美国科学家Kennedy和Eberhart提出全新的群智能进化计算思想—粒子群优化模型。该模型模仿群体的社会认知过程,對抽象概念进行建模[2];Eberhart R 与Shi Y 对粒子群算法进行研究,对应用与资源进行总结归纳,讨论惯性权重、动态跟踪系统与影响因子[3];Settles M等将遗传算法与粒子群算法在神经网络的性能方面进行对比,粒子群算法在小型网络性能中表现更好[4]。中国对于优化问题的研究起步较晚,王勇等人提出用微调机制改进粒子群算法,用以提高算法的局部搜索能力,改进粒子相似度过高的缺陷[5];郭文忠通过研究遗传算法的2点变异与交叉算子,提出混合粒子优化算法,用于解决电路规划问题[6]。
由于种群规模小导致种群搜索能力差,反之种群规模的扩大使得搜索范围扩大,提高了局部优越性,但也减慢了收敛速度,因此基于优化问题,文章提出一种种群规模自适应控制算法,能够有效地测试出传统粒子群算法的函数性能。
1 群智能算法—种群规模自适应优化算法
1.1 种群增长模型
1.1.1 种群指数式增长
一种“J”型增长是在理想种群环境下随种群密度变化而增长的种群指数增长。其增长方式分为指数增长和几何增长,用方程dN/dt=rN来表示[7],式中,dN/dt为某种群点时间的瞬时增长率;最大潜力种群增长率用r表示;N表示点时间的种群大小。假设在理想状态下,自然种群可在短时间呈现指数似的增长,且种群个体呈禀增长率增长,导致规模增大。有研究发现,没有一种种群是无休止增长的,都存在一定的局限性,受种群规模、密度、浓度等因素制约,因此,种群增长可达到一定的上限。
1.1.2 种群的逻辑斯谛增长
种群的逻辑斯谛增长用“S”型增长来表示[8]。“S”型增长的表现方式为由慢到快的逐渐式增长。由于受到外界因素的干扰,种群的增长速度随之下降,越来越靠近渐近线发展,此条渐近线称之为环境容纳量,用K来表示,也就意味着种群可以达到最大密度。在自然环境中,绝大部分种群是按照“S”型增长的。
“S”型增长用数学方程式表示:
dN/dt=rN(K-N/K)(1)
种群的增长曲线成“S”型,该曲线的特点表示当种群数量达到环境容纳量K之后,增长将会停止并保持稳定。“S”型种群的增长曲线具有以下特点:
(1)种群在开始进入某区域时,会进行短时期的调整,以适应该区域的增长环境。因此,该时期的种群呈现零增长态势,个体不繁殖。
(2)随着环境的改善,营养物质日益丰富,种群已适应了该环境并开始剧烈增长。导致种群密度增加,数量以等比形式增加(2n),此阶段生长曲线“J”表现为对数上升。
(3)由于种群密度增大,进而营养物质消耗殆尽,种群进入稳定状态。随着外界环境的阻力增大,种群间竞争更加激烈,密度达到最大量时,种群不再增长。
1.2 种群规模自适应粒子群算法研究
1.2.1 种群自适应增加/删除个体数目方法
种群的规模动态变化,不仅能提高搜索数据能力还能提高计算效率。一旦加入适合增加或者删除算子,将有效地增加种群多样性,迅速提高收敛速度和搜索质量。接下来介绍自适应增加或者删除个体方法。
(1)基于Logistic模型的自适应增加/删除个体方法
对于单个种群个体来讲,在进入初始区域会对环境有一个短暂的适应过程,此时种群的增长率较低;经过适应阶段之后,种群进入快速增长时期,单个个体会以等比例形式增加;而进入稳定期,种群增加相对剧烈,种群密度也达到最大值,种群将不再增长。然而种群个体的减少在生长初期表现的并不明显,由于生长环境相对优越,种群密度小,适合种群增长;进入快速发育期,数量发展迅速,进入稳定期后,种群竞争激烈,环境越来越差,导致个体死亡数量随之增加。
①基于Logistic模型的内在增长算子
种群个体的增加对生长率产生的抑制效应为1/K,设种群最大规模为K,种群数量为 N,个体所占空间为N/K,其余空间为(1-N/K),既而定义内在增长算子为(1-N/K)。
由方程可知,在初始阶段,种群密度小的前提下,种群容纳量的上限与种群的增长率成正比:随着种群密度的增大,种群的死亡率增加,距离上限K越近,死亡率越高。因此,当N=K时,死亡率接近1。
②基于Logistic模型的内在减少算子
内在减少算子用N/K来表示,其意义在于,当种群密度较小时,种群的可容纳量与种群的减少率成反比:也就是说种群密度增大,种群的减少率加快,接近容纳量上限K时,减少率最大,因此N=K时,减少率接近1。
③定义种群波动算子
在一段时间内,种群在没有适合种群觅食点的情况下,会通过提高减少率来适应种群环境。也就是说,在稳定期后,种群数量巨多,营养物质供不应求,导致个体在营养消耗殆尽的前提下,死亡率会增加。然而,在种群减少的同时,相应的种群密度也会减小,有新的营养物产生的话,种群的生长率又会增加,进而形成动态平衡现象。
(2)外部环境影响
在大自然的生态系统中,生存环境与种群发展规模相互制约。由于Logistic模型的局限性,不能全面反应制约种群规模发展的环境因素,因此,定义外部环境算子可更好地反映种群的增长规律。
(3)定义外部环境算子
外部环境影响率为F(t),假设F(t)>0.5,环境变化随着时间而改善,种群增长速度变快;反之F(t)<0.5,环境随时间变的恶劣,种群的增长速度则会减慢。
1.2.2 种群规模自适应粒子群算法描述
粒子群算法是由Kennedy和Eberhart提出的智能进化算法,是基于鸟类聚集与觅食的社会性行为的算法。在粒子群算法中,将粒子置于一个搜索空间中,每个粒子都具有适应度值,单个粒子的最佳位置和全局最佳位置与速度进行不断更新,粒子群随着最优的方向移动。粒子群作为整体像鸟儿合作觅食一样,寻找到目标函数的最优点。粒子群算法是基于迭代的优化算法,用于优化搜索空间。对于粒子群的数学描述如下[9]:
由m个粒子组成的种群以一定的速度飞翔,单个粒子以个体最优和全局最优位置进行不断更新。三维向量组成的粒子为[10]:
初始位置:
将APOS与POS算法进行对比,在函数的求解精度以及收敛速度方面,APOS算法均高于POS算法。对种群的自适应能力进行调整,测试数量有所减少,有效地提高了CPU的计算速度,更新了效率。使用自适应增加/删除个体的方法,增强了算法的有效性及适应性。APSO与PSO测试结果见表2。
2 结束语
本文提出的种群规模自适应控制方法,通过基于Logistic模型的自适应增加/删除个体方法,包括算法中的内增长算子、内在减少算子、波动算子和外部环境算子的环境,其测试在速度收敛、求解以及结果的鲁棒性方面都高于粒子群算法。该算子有效地增强了原粒子群的多样性,使得自适应控制策略更具一般性,能更好地適用于各种群智能算法中。
智能群算法可广泛地应用于大数据背景下的数据分析问题,利用数据分析提高对全局的搜索能力;可有效地解决数学模型所遇到的问题,提高数据处理能力。群智能算法在不断更新优化的同时,也使得该算法速度不断提高,能更好地应用到实际中,将对数据挖掘技术发挥重要的作用。
参考文献
[1] 王元卓,靳小龙,程学旗. 网络大数据:现状与展望[J]. 计算机学报,2013,36(6):1125-1138.
[2] PRADHAN B. A comparative study on the predictive ability of the decision tree, support vector machine and neuro-fuzzy models in landslide susceptibility mapping using GIS[J]. Computers & Geosciences, 2013, 51: 350-365.
[3] HE Liang, Van den BERG J. Meso-scale planning for multi-agent navigation[C]// 2013 IEEE International Conference on Robotics and Automation (ICRA). Karlsruhe, Germany:IEEE, 2013: 2839-2844.
[4] 吳建辉, 章兢, 李仁发, 等. 多子种群微粒群免疫算法及其在函数优化中应用[J]. 计算机研究与发展, 2012, 49(9): 1883-1898.
[5] 胡旺, YEN G G,张鑫. 基于Pareto熵的多目标粒子群优化算法[J]. 软件学报, 2014,25(5): 1025-1050.
[6] 徐晓晴, 朱庆保. 动态环境下基于多人工鱼群算法和避碰规则库的机器人路径规划[J]. 电子学报, 2012, 40(8): 1694-1700.
[7] ZHANG Peng, LIU Hong, DING Yanhui. Dynamic bee colony algorithm based on multi-species co-evolution[J]. Applied intelligence, 2014, 40(3): 427-440.
[8] GETZIN S, WEIGAND K, WIEGAND T, et al. Adopting a spatially explicit perspective to study the mysterious fairy circles of Namibia[J]. Ecography, 2015, 38(1): 1-11.
[9] 夏亚梅, 程渤, 陈俊亮, 等. 基于改进蚁群算法的服务组合优化[J]. 计算机学报, 2012,35(2): 270-281.
[10]GANDOMI A H, YUN Gunjin, YANG Xinshe, et al. Chaos-enhanced accelerated particle swarm optimization[J]. Communications in Nonlinear Science and Numerical Simulation, 2013, 18(2): 327-340.