收稿日期:2019 11 29;修回日期:2020 01 12 基金项目:四川省哲学社会科学重点研究基地、四川省教育厅人文社会科学重点研究基地———四川革命老区发展研究中心资助项目(SLQ2019B 26)
作者简介:侯翔(1983 ),男,四川达州人,副教授,硕士,主要研究方向为智能计算、人工智能(dzhouxiang@163.com);杨成福(1972 ),男,四川达县人,副教授,博士,主要研究方向为人工智能、语音信号处理;刘笃晋(1971 ),男,四川渠县人,副教授,博士,主要研究方向为数字图像处理、机器学习.
基于渗透式人工蜂群与蚁群优化
倾尽温柔
混合的负载平衡算法
侯 翔,杨成福,刘笃晋
(四川文理学院智能制造学院,四川达州635000)
摘 要:针对当前云计算负载平衡调度过程中出现的虚拟机迁移效率低和能耗高问题,提出了一种基于渗透式
人工蜂群与蚁群混合优化负载平衡算法,该算法将化学渗透行为与生物启发的负载平衡算法相结合,在充分利用人工蜂群和蚁群两种优化算法优点的同时,将渗透技术应用于负载均衡。由于渗透技术支持通过云基础设施迁移的虚拟机的自动部署,从而克服了现有仿生算法在实现物理机之间负载平衡方面的缺点,提高了迁移效率。实验结果表明,以现有负载平衡算法相比,提出的算法在迁移性能上提升明显。关键词:云计算;负载平衡;渗透技术;人工蜂群;蚁群优化中图分类号:TP393 文献标志码:A 文章编号:1001 3695(2021)02 021 0440 04doi:10.19734/j.issn.1001 3695.2019.11.0658
Hybridloadbalancingalgorithmbasedonosmoticartificial
beecolonyandantcolonyoptimization
HouXiang,YangChengfu,LiuDujin
(SchoolofIntelligentManufacturing,SichuanUniversityofArts&Science,DazhouSichuan635000,China)
Abstract:Aimingatthelowefficiencyandhighenergyconsumptionofvirtualmachinemigrationinthecurrentcloudcompu
tingloadbalancingschedulingprocess,thispaperproposedahybridloadbalancingalgorithmbasedonosmoticartificialbeecolonyandantcolony.Thealgorithmcombinedchemicalpermeationbehaviorwithbio inspiredloadbalancingalgorithmtoap plytheosmotictechniquetoloadbalancingwhilemakingfulluseoftheadvantagesofbothartificialbeecolonyandantcolonyoptimizationalgorithms.Becausetheosmotictechnologysupportedtheautomaticdeploymentofvirtualmachinesmigrated
throughthecloudinfrastructure
,itovercametheshortcomingsoftheexistingbioni
calgorithmsinrealizingtheloadbalancingbetweenphysicalmachinesandimprovedthemigrationefficiency.Theexperimentalresultsshowthatcomparedwiththeexis tingloadbalancingalgorithm,theproposedalgorithmhassignificantlyimprovedthemigrationperformance.Keywords:cloudcomputing;loadbalancing;osmotictechnique;artificialbeecolony;antcolonyoptimization
根据美国国家标准技术研究院(NIST)的定义,云计算被定义为按使用付费模式,它可以让可用的、方便的、按需的网络访问共享的可配置计算资源池(如网络、服务器、存储、应用程
序、服务)[1]
。由于资源共享和使用需求的快速增长,云计算在用户数量不断增加的情况下面临着诸多挑战。因此,资源之
间的负载平衡是一个重要的挑战
[2,3]
。云环境中的资源负载平衡是指通过算法将用户任务请求
平均分配到服务器上来提高资源利用率的技术[4]
。云计算的核心是资源池中资源的分配问题,云计算的调度就是实现数据中心内虚拟器之间的负载平衡。目前,许多云计算的负载平衡
是基于启发式优化算法提出的[5]。Sharma等人[6]
提出了一种基于负载均衡增强遗传算法的云任务调度策略,在尽量减少给定任务集有效时间跨度的同时,保持整个系统负载的平衡。
Sajjan等人[7]
提出了一种基于任务的云环境负载均衡方法,该方法使用K means聚类方法将虚拟机分组,然后采用遗传算法、模拟退火和粒子群优化三种启发式算法来降低完成时间。
Dam等人[8]
使用蚁群优化算法来平衡云计算中虚拟机的负载,该算法通过将动态工作负载平均分配到整个系统中来平衡
面开头的四字成语
负载并优化响应时间。Kong等人[9]
提出了一种基于零不平衡
方法的快速启发式算法,该算法侧重于最大程度地减少异构虚
拟机之间的完成时间差异,而无须优先级方法和复杂的调度决
策,从而有效地实现了负载平衡和任务调度。S
hen等人[10]
提出了一种基于负载均衡算法的人工蜂群优化问题,以提高系统的
整体负载均衡性能,获得更好的自适应性。Gamal等人[11]
提出了一种混合人工蜂群和蚁群优化的负载平衡算法,它依赖于蚁群优化和人工蜂群算法提高了系统的执行时间和资源利用率。
尽管当前许多启发算法在负载平衡系统中都具有明显的有效性,然而大多数算法的缺点也很突出,如人工蜂群算法在顺序处理中计算效率不高,而蚁群优化的收敛速度较慢。因此,本文提出了一种渗透
式人工蜂群(artificialbeecolony,ABC)与蚁群(antcolonyoptimization,ACO)混合优化负载平衡算法,在充分利用人工蜂群和蚁群优化两种算法优点的同时,将渗透技术应用于负载均衡。
1 渗透技术
在化学中,渗透表示分子从高浓度向低浓度无限制净运动的过程。如图1所示,当纯净水和葡萄糖液通过半透膜分开
时,水从高水活度向低水活度移动[12]
。为了保持平衡,通过在
第38卷第2期2021年2月 计算机应用研究
ApplicationResearchofComputersVol.38No.2
Feb.2021
溶液中施加渗透压以阻止水流过半透膜,数学公式可以表示为
π=icsoluteRT(1)其中:π表示渗透压;i表示校正系数;c
solute
表示溶液摩尔浓度;R为理想气体常数;T
为开尔文温度。
在云环境中,该过程可用于表示虚拟机(virtualmachine,
VM)在云计算之间的迁移过程,如图2所示。图2(a)显示了
物理机(physicalmachine,PM)负载过高和过少的两种液体,分
别定义为纯净水和葡萄糖液。图2(b)显示了渗透技术的工作
原理,通过在PM之间迁移VM,
实现更加平衡的云系统。
2 渗透式混合负载平衡算法
近年来,科研人员趋向于应用化学中的渗透理论来形成渗
透计算。本文的目标是根据渗透原理来实现负载均衡。此外,
还将ACO和ABC与渗透技术结合起来,在克服缺点的同时利
用它们的优势。云环境中的活动主机分为负载不足、过载和平
衡的主机,本文算法通过监视系统发现活动主机的状态,然后
将VM从过载主机上迁移到负载不足的主机,以实现负载均衡
的系统。提出的算法继承了ACO在多样性系统中快速发现解
决方案的优点和ABC通过建立知识库共享信息的行为。本文
算法应用具有渗透技术的知识库来根据能耗分类PM,避免了
ACO随机选择PM时产生收敛过慢的现象。同时,还将根据云
学前拼音练习
系统的状态考虑阈值的动态值。图3给出了本文算法的流程。
在云计算环境中,每个PM都有不同数量的VM。数据中
心中所有PM的集合表示为P={P
1
,P
2
,…,P
n
},数据中心中
所有VM的集合是VM={V
1
,
V
2
,…,V
m
},其中n、m表示物理
机和虚拟机的数量。在提出的算法中,侦查蜂负责计算每个
国际环境保护PM的标准差σ,目标是找到未充分利用和过度利用的主机。
这需要找到每个PM的负载,具体取决于部署到其中的VM的
负载。第i个PM中的第j个VM平均负载珔V
ij
计算如下:
珔V
ij
=Ucpu
j
+Umem
j
+UBw
j
(2)
其中:U
cpuj
、U
memj
和U
Bwj
分别表示第j个虚拟机VM
j
的CPU利用
率、内存利用率和带宽利用率。
PM
i
的平均负载珔P
i
和标准偏差σ
i
计算如下:
珔P
i
=
∑
m
j=1
珔V
j
m
, V1,2,…,m∈Pi(3)
σi=
1
n
∑
n
i=1
(珔PT-珔Pi)
槡2(4)
珔P
T
=
1
n
∑适合个人创业项目
n
i=1
珔P
i
(5
)
如果σ
i
小于下限阈值,则PM
i
未得到充分利用;如果σ
i
超过上限阈值,则PM
i
超出主机利用率。阈值计算如下:下限
阈值设定为所有PM中的最小珔P
i
,上限阈值设定为珔P
T
。
找到利用不足或者过度利用的主机后,人工蜂群中的侦查
蜂会在知识库中摆动,以告知所有蜂群有关其结果的信息。然
后,知识库通过式(6)利用渗透技术来安排主机,并考虑每个
PM的功耗,如图3所示。
πPMn=iPCPM
n
NPMsLPM
n
写植物的观察日记
(6)
其中:πPM
n
表示渗透压;i表示校正系数;PC
PMn
表示PM
n
的能
耗;N
PMs
表示云系统中PM数量的常数;L
PMn
表示PM
n
的负载。
然后,将新的主机列表发送到ACO,ACO根据列表开始寻
找所有渗透主机中合适的PM,以从中进行虚拟机迁移。ACO
根据PM的在利用率方面的高低分类计算其适应性:
Fi=
(τi)α×(ηi)β
∑
m
i=1
(τi)α×(ηi)β
,Fi=
(1/τi)α×(ηi)β
∑
m
i=1
(1/τi)α×(ηi)β
(7)
其中:α、β表示信息素τ
i
和边缘权重η
i
的系数;信息素τ
i
表
示PM
i
的负载;η
i
表示带宽。
通过选择最合适的PM
i
使其处于迁移状态并利用知识库
通知其他蚁群。然后更新信息素:
τi=(1-ρ)τi+Δτi,Δτi=
1
(ηi)γ
+Pi(8)
其中:ρ表示挥发速率;P
i
是PM的负载;γ是用于定义启发式
值与负载条件比例的参数。
之后,雇佣蜂执行计算,以通过最短迁移时间策略选择要
迁移到另一台主机的合适VM,该策略是VM使用的RAM数
量除以主机可用的备用网络带宽:
RAM(a)
neti
≤
RAM(u)
neti
, a,u∈Vj(9)
其中:V
j
是当前分配给主机P
i
的一组VM;net
i
是P
i
可用的备
用网络带宽;RAM(a)和RAM(u)分别表示VM
a
和VM
u
当前使
用的RAM量。随后,ACO计算适应度值,找到所选VM与相
匹配渗透主机PM之间的最佳映射关系:
fitness(VMj,PMi)=
PMcpu
i
-VMcpu
j
VMcpu
j
×
PMmem
i
-VMmem
j
VMmem
j
×
PMnet
i
-VMnet
j
VMnet
j
×
PMstorage
i
-VMstorage
j
VMstorage
j
(10)
·
1
4
4
·
第2期侯 翔,等:基于渗透式人工蜂群与蚁群优化混合的负载平衡算法
其中:VMcpuj、VMmemj、VMnetj和VMstoragej分别表示VM所需的CPU利用率、内存、带宽和存储大小;PMcpuj、PMmemj、PMnetj和PMstoragej分别表示PM具备的CPU利用率、内存、带宽和存储大小。最
后,观察蜂获取有关V
M的信息,根据这些信息将VM迁移至合适的P
M。3 实验结果与分析
3 1 实验环境
为了验证所提出算法的性能,在CloudSimAPI3.0.3实
现。模拟环境中包含5
0个PM,其中50%的主机是HPPro LiantML110G4(IntelXeon3040,2核@1860MHz,RAM4GB),另一种是HPProLiantML110G5(I
ntelXeon3075,2核@2660MHz,RAM4GB)。每个主机都有1Gbps的网络带宽。考虑数据中心中具有50个异构VM,所有VM的类型均为单核,RAM会根据VM的类型进行划分:超大型实例(2000
MIPS,3.75GB)、高CPU中型实例(2500MIPS,0.85GB)、小型实例(
1000MIPS,1.7GB)以及微型实例(500MIPS,613MB)。表1给出了算法的其他参数。
表1 提出算法的相关参数
Tab.1 Relevantparametersoftheproposedalgorithm
3 2 结果分析
本文通过两次实验将提出算法与现有方案进行比较。首
先,将本文算法与ACO[8]、ABC[10]、H_BAC[11]
和指数加权移
动平均(EWMA)[13]
以及多维回归主机利用率算法
(
MDRHU)[14]
进行对比,验证算法对主机过载检测的性能。其次,将算法与ACO[8]、ABC[10]、H_BAC[11]
的可变任务负载测试结果进行比较。3 2 1 主机过载检测
在第一个实验中,提出算法与其他算法在能耗、SLA违规(SLAV)、每个活动主机的SLA冲突时间(SLATAH)、迁移导致
关于燕子的诗句性能下降(
PDM)、主机关闭数和虚拟机迁移数等几个方面进行比较。该实验适用于固定参数,任务数、主机和VM的数量均等于50。在作出迁移决策时考虑SLA。当发生过载和欠载情况时,PM按其负载进行排序,以便根据SLA在其容量合适
时检测用于V
M迁移的合适PM。SLAV是一个有用的度量,用于评估IaaS云中VM交付的SLA。SLATAH是活动主机100%使用CPU的时间百分比,PDM是由于迁移而导致的性能下降的评价指标。三个指标的数学公式定义如下:
SLATAH=1N∑Ni=1Tsi
Tai
(11)PDM=
1M∑Mj=1Cdj
Crj
(12)SLAV=SLATAH×PDM
(13)
其中:N、M分别表示PM和VM的数量;Tsi
表示第i个PM被100%利用的时间;Tai是处于活动状态的第i个PM的总数;Cdj表示由于迁移导致的第j个VM性能下降的评估;Crj表示第j个VM所需的总体CPU容量。
表2给出了本文算法与其他算法进行比较的仿真结果。
结果表明,
H_BAC算法比ACO和ABC算法消耗更多的能量,而本文算法通过考虑每个PM的功耗并且选择最低功耗的PM,使得在所有算法中能量消耗最低。同时,本文算法增强了PDM,因为通过混合ACO和ABC算法可以选择最佳VM,以迁
移到最合适的P
M。但是,本文算法具有更高的SLATAH,根据式(
11)的结果,该结果取决于活动主机的数量,与其他确定活动主机然后关闭主机的算法相比,本文算法使活动主机的数量最小化。总体来说,与其他算法相比,本文算法提高了能耗、SLAV、VM迁移数和主机关闭数。但是,该算法具有更高的SLATAH,但对云系统的性能没有影响。
表2 不同主机过载检测算法的测试结果对比
Tab.2 Comparisonoftestresultsofdifferenthost
overloaddetectionalgorithms
算法能耗SLAVSLATAHPDMPM
关闭数量VM
迁移数量ABC28.633.5320.114491404ACO34.446270.177812355H_BAC4028260.115251532EWMA461990.2315492871MDRHU481780.2315282502本文算法
20
2
55
0.01
46
81
3 2 2 任务负载调度
在第二个实验中,随着任务数量从50个逐渐增加到250个,任务的负载是可变的。图4~9给出了能耗、SLAV、PDM、SLATAH、主机关闭数和虚拟机迁移数的测试结果。
图4给出了不同算法在能耗方面的测试结果。结果表明,与H_BAC算法相比,本文算法的性能提高了约27%,与ABC算法相比提高了21%,与ACO算法相比提高了18%。
图5
、6分别给出了不同算法在SLAV和PDM的测试结果。从图中可以看出,本文算法的优势明显,充分利用了A
CO和ABC优化算法的优点,并且改善了H_BAC
混合算法的性能。
与H_BAC、ABC和ACO算法相比,本文算法的SLATAH分别多了24%、34%和30%,如图7所示,但是,它不会影响云
系统的性能。根据式(
11)的结果,算法将活动主机的数量分别减少了93%、91%和94%,如图8所示。关闭的主机数与云环境中的主机数无关。如果此主机没有任何任务,则该主机将关闭,此过程可以在虚拟机迁移后完成。如果一个主机中的所有虚拟机都已迁移,则该主机将关闭以降低功耗。但是,如果有
一个V
M再次迁移到主机,则该主机可能会被激活。在算法中,如果有任何迁移,首先检查活动主机,然后如果所有活动主机都无法接受此虚拟机,
则它将检查未活动主机并打开一个。
实时虚拟机迁移是一个代价高昂的过程,它在源PM上包
含一定数量的CPU处理。此外,它还取决于源PM和目标PM
·244·计算机应用研究第38卷
之间的带宽。由于迁移VM进程会增加任务的响应时间,所以本文目标是最小化VM迁移数量。因此,VM迁移数量被认为是一个度量标准,用来评估算法的性能。如图9所示,在其他算法中,所提算法的VM
迁移数量最少。
4 结束语
本文提出了一种基于渗透式人工蜂群与蚁群混合优化负载平衡算法,用于解决当前云计算负载平衡调度过程中出现的虚拟机迁移效率低和能耗高问题。该算法在继承了ACO和ABC两种仿生优化算法
优势的基础上,引入了渗透技术,克服了两种算法在实现物理机之间负载平衡方面的缺点,有效提升了平衡算法的性能。实验结果表明,在固定和可变负载的两个实验中,本文算法均具有明显的优势。
参考文献:
[1]NashaatH,AshryN,RizkR.Smartelasticschedulingalgorithmforvirtualmachinemigrationincloudcomputing[J].TheJournalofSupercomputing,2019,75(7):3842 3865.
[2]XuXiaolong,LiuQingxiang,QiLianyong,etal.Aheuristicvirtualmachineschedulingmethodforloadbalancinginfog cloudcomputing[C]//Procofthe4thIEEEInternationalConferenceonBigDataSe curityonCloud,IEEEInternationalConferenceonHighPerformanceandSmartComputingandIEEEInternationalConferenceonIntelli gentDataandSecurity.Piscataway,NJ:IEEEPress,2018:83 88.[3]Ashourae
iM,KhezrSN,BenlamriR,etal.AnewSLA awareloadbalancingmethodinthecloudusinganimprovedparalleltaskschedu lingalgorithm[C]//Procofthe6thIEEEInternationalConferenceonFutureInternetofThingsandCloud.Piscataway,NJ:IEEEPress,2018:71 76.[4]YangZhexi,ZhangSuyin,JiXiaoye,etal.Researchoncloudser vicequalitycontrolimplementationbasedonimprovedloadbalancealgorithm[J].JournalofComputationalMethodsinSciencesandEngineering,2018,18(3):793 800.
[5]王红运,束永安.数据中心网络中基于蚁群算法的动态多路径负载均衡[J].计算机应用研究,2020,37(7):2148 2150.(WangHongyu,SuYong’an.Dynamicmulti pathloadbalancingbasedonantcolonyalgorithmindatacenternetwork[J].ApplicationRe searchofComputers,2020,37(7):2148 2150.)
[6]SharmaH,SekhonGS.Loadbalancingincloudusin
genhancedge neticalgorithm[J].InternationalJournalofInnovations&Ad vancementinComputerScience,2017,6(1):13 19.
[7]SajjanRS,YashwantraoBR.Loadbalancingusingclusterandheu risticalgorithmsinclouddomain[J].IndianJournalofScienceandTechnology,2018,11(15):1 7.
[8]DamS,MandalG,DasguptaK,etal.Anant colony basedmeta heuristicapproachforloadbalancingincloudcomputing[M]//Ap pliedComputationalIntelligenceandSoftComputinginEngineering.Hershey,PA:IGIGlobal,2018:204 232.
[9]KongLingfu,MapetuJPB,ChenZhen.Heuristicloadbalancingbasedzeroimbalancemechanismincloudcomputing[J].JournalofGridComputing,2019,7:1 26.
[10]ShenLuocheng,LiJiazhou,WuYan,etal.Optimizationofartificialbeecolonyalgorithmbasedloadbalancinginsmartgridcloud[C]//ProcofIEEEInnovativeSmartGridTechnologies Asia.Piscataway,NJ:IEEEPress,2019:1131 1134.
[11]GamalM,RizkR,MahdiH,etal.Bio inspiredbasedtaskschedu lingincloudcomputing[M]//MachineLearningParadigms:TheoryandApplication.Cham:Springer,2019:289 308.
[12]VillariM,CelestiA,FazioM.Towardsosmoticcomputing:lookingatbasicprinciplesandtechnologies[C]//ProcofConferenceonCom plex,Intelligent,andSoftwareIntensiveSystems.Berlin:Springer,2017:906 915.
[13]LuShinli,ChenJenhsiang.Hostoverloadingde
tectionbasedonEWMAalgorithmincloudcomputingenvironment[C]//Procofthe15thIEEEInternationalConferenceone BusinessEngineering.Pisca taway,NJ:IEEEPress,2018:274 279.
[14]谢兵.基于移动云计算的计算迁移能效算法[J].计算机应用研究,2020,37(10):3014 3019.(XieBing.Energyefficiencyalgo rithmofcomputingmigrationbasedonmobilecloudcomputing[J].ApplicationResearchofComputers,2020,37(10):3014 3019.)
(上接第429页)
[10]廖雯竹,崔诗好.考虑劣化因素的HMM在设备状态评估中的应用[J].计算机集成制造系统,2018,24(5):1147 1154.(LiaoWenzhu,CuiShihao.Age dependenthiddenMarkovmodelforma chinerydiagnosis[J].ComputerIntegratedManufacturingSys tems,2018,24(5):1147 1154.)
[11]董明,刘勤明.大数据驱动的设备健康预测及维护决策优化[M].北京:清华大学出版社,2019.(DongMing,LiuQinming.Bigdata drivendevicehealthpredictionandmaintenancedecisionoptimization[M].Beijing:TsinghuaUniversityPress,2019.)
[12]ArikiY,JackMA.EnhancedtimedurationconstraintsinhiddenMarkovmodellingforphonemerecognition[J].ElectronicsLetters,1989,25(13):824 825.
[13]RussellM,MooreR.ExplicitmodellingofstateoccupancyinhiddenMarkovmodelsforautomaticspeechrecognition[C]//ProcofIEEEInternationalConferenceonAcoustics,Speech,andSignalProces sing.Piscataway,NJ:IEEEPress,1985:5 8.
[14]TitmanAC,SharplesLD.Semi Markovmodelswith
phase typeso journdistributions[J].Biometrics,2010,66(3):742 752.
[15]JiangRui,KimMJ,MakisV.Maximumlikelihoodestimationfora
hiddensemi Markovmodelwithmultivariateobservation[J].QualityandReliabilityEngineeringInternational,2012,28(7):783 791.[16]KhalegheiA,MakisV.Modelparameterestimationandresiduallifepredictionforapartiallyobservablefailingsystem[J].NavalRe searchLogistics,2015,62(3):190 205.
[17]易东波,鲍玉昆.基于爱尔朗分布的随机动态批量决策研究[J].武汉理工大学学报:信息与管理工程版,2012,34(1):87 92.(YiDongbo,BaoYukun.StochasticdynamiclotsizingdecisionwithEr langdistribution[J].JournalofWuhanUniversityofTec
hnology:Information&ManagementEngineering,2012,34(1):87 92.)[18]BebbingtonM,LaiCD,ZitikisR.Reductioninmeanresiduallifeinthepresenceofaconstantcompetingrisk[J].StochasticModelsinBusinessandIndustry,2008,24(1):51 63.
[19]王少萍.液压系统故障诊断与健康管理技术[M].北京:机械工业出版社,2014.(WangShaoping.Hydraulicsystemfaultdiagnosisandhealthmanagementtechnology[M].Beijing:MechanicalIndustryPress,2014.)
[20]BurrusCS,GopinathRA,GuoHaitao.Introductiontowaveletsandwavelettransforms:aprimer[M].UpperSaddleRiver,NJ:PrenticeHall,1997.
·
3
4
肉夹馍的来历
4
·
第2期侯 翔,等:基于渗透式人工蜂群与蚁群优化混合的负载平衡算法