王艷紅 張革文
(中國(guó)民航大學(xué)飛行技術(shù)學(xué)院 天津 300300)
隨著互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,計(jì)算機(jī)需要處理的任務(wù)量和數(shù)據(jù)量成倍增加,計(jì)算機(jī)的處理能力和處理速度已難以滿足用戶的需求。云計(jì)算作為虛擬技術(shù)的產(chǎn)物,可以針對(duì)海量數(shù)據(jù)和任務(wù)進(jìn)行處理。但是,由于計(jì)算量十分巨大,云環(huán)境在計(jì)算過程中需合理地將系統(tǒng)資源快速分配到每個(gè)客戶任務(wù)中,因此需要提高云計(jì)算對(duì)資源的利用效率和云計(jì)算速度[1]。同時(shí),由于云資源具有自主性、異構(gòu)性等特性,使得云計(jì)算資源調(diào)度優(yōu)化問題具有許多非確定因素,難以優(yōu)化,屬于典型的NP-Hard問題。因此如何有效提高云計(jì)算的資源利用問題,是云計(jì)算研究的核心問題[2]。
針對(duì)上述問題,國(guó)內(nèi)外許多研究學(xué)者提出了不同的資源調(diào)度策略。趙宏偉等[3]利用菌群優(yōu)化算法對(duì)云系統(tǒng)中的資源節(jié)點(diǎn)進(jìn)行復(fù)制和消亡,以此有效地控制資源節(jié)點(diǎn)對(duì)用戶任務(wù)的分配情況。聶清彬等[4]通過改進(jìn)蟻群的優(yōu)化算法,合理優(yōu)化云計(jì)算資源調(diào)度模型,提高了資源利用率,降低了資源能耗成本。喻德曠等[5]提出一種動(dòng)態(tài)粒子群算法對(duì)調(diào)度模型進(jìn)行求解,較高地均衡了云計(jì)算的負(fù)載,提高了云計(jì)算效率。齊平等[6]提出一類可靠性評(píng)估模型,對(duì)資源調(diào)度問題進(jìn)行求解,提高了云計(jì)算資源可靠性和利用率。陳暄等[7]提出一類改進(jìn)的煙花蜂群算法,并對(duì)云計(jì)算資源調(diào)度模型進(jìn)行求解,實(shí)驗(yàn)結(jié)果表明,該算法有效提高了云計(jì)算資源分配效率。Zhu等[8]提出一種三維虛擬資源的云計(jì)算資源調(diào)度策略。Kliazovich等[9]提出一種基于有向無環(huán)圖的云計(jì)算資源調(diào)度策略,有效提高了云計(jì)算資源調(diào)度效率,節(jié)約了計(jì)算時(shí)間。Lin等[10]提出一種快速遺傳算法的調(diào)度策略。此外還有改進(jìn)粒子群算法的優(yōu)化策略[11]、支持QoS的調(diào)度方法[12]、基于多租戶的云計(jì)算資源調(diào)度策略等[13]。但是單一機(jī)制的優(yōu)化算法在處理較大數(shù)據(jù)量或較大用戶任務(wù)數(shù)時(shí),難以得到有效的全局最優(yōu)解,導(dǎo)致優(yōu)化后的調(diào)度模型精度較差。因此本文提出一種改進(jìn)獅群優(yōu)化算法的云計(jì)算資源調(diào)度策略。
獅群優(yōu)化算法是一類新的群智能優(yōu)化算法,與傳統(tǒng)群智能優(yōu)化算法不同,該算法本身具有較強(qiáng)的局部搜索能力,且可以在一定程度自調(diào)節(jié)算法全局收斂能力和局部收斂能力,算法調(diào)整參數(shù)較少,易于實(shí)現(xiàn)。但基本獅群優(yōu)化算法全局收斂精度較差,常因較強(qiáng)的局部搜索能力導(dǎo)致算法在迭代后期早熟收斂,陷入局部最優(yōu)。本文針對(duì)上述問題對(duì)傳統(tǒng)獅群算法進(jìn)行改進(jìn),并將改進(jìn)后的獅群優(yōu)化算法優(yōu)化云計(jì)算資源調(diào)度模型。
云計(jì)算在運(yùn)算過程中,可利用的系統(tǒng)資源是有限的,并且云計(jì)算資源調(diào)度模型中的數(shù)據(jù)中心就是由有限個(gè)系統(tǒng)資源組成。計(jì)算機(jī)在接收用戶任務(wù)后,會(huì)將多個(gè)用戶任務(wù)同時(shí)在數(shù)據(jù)中心的多個(gè)節(jié)點(diǎn)上執(zhí)行,因此在計(jì)算過程中,如何根據(jù)計(jì)算資源、計(jì)算能耗以及計(jì)算時(shí)間等因素為用戶任務(wù)合理分配系統(tǒng)資源是云計(jì)算資源調(diào)度模型優(yōu)化的目標(biāo)。針對(duì)上述問題,對(duì)云計(jì)算資源調(diào)度模型進(jìn)行建模。
1) 定義用戶任務(wù)集合為TKs=[tk1,tk2,…,tks],其中s為用戶所提交任務(wù)總數(shù)。
2) 定義云計(jì)算數(shù)據(jù)中心計(jì)算節(jié)點(diǎn)個(gè)數(shù)為m,則計(jì)算節(jié)點(diǎn)集合可定義為VNm=[vn1,vn2,…,vnm],其中每個(gè)節(jié)點(diǎn)vnj(j=1,2,…,m)中包含多個(gè)屬性元素,例如CPU、RAM內(nèi)存大小以及磁盤存儲(chǔ)空間等,屬性元素可根據(jù)計(jì)算要求進(jìn)行增加或刪減。
3) 定義決策變量為di,j,其中i=1,2,…,s表示任務(wù)個(gè)數(shù),j=1,2,…,m表示資源節(jié)點(diǎn)數(shù)。當(dāng)di,j=1時(shí),表示在第j個(gè)資源節(jié)點(diǎn)上執(zhí)行第i個(gè)任務(wù)。當(dāng)di,j=0時(shí),表示在第j個(gè)資源節(jié)點(diǎn)上不執(zhí)行第i個(gè)任務(wù)。因此構(gòu)建決策矩陣為D=[di,j]。
4) 定義在第j個(gè)資源節(jié)點(diǎn)上執(zhí)行第i個(gè)任務(wù)所需的時(shí)間花費(fèi)為ei,j,則構(gòu)建s個(gè)任務(wù)的時(shí)間花費(fèi)矩陣為TimeCost=[ei,j],其中i=1,2,…,s,j=1,2,…,m。
5) 定義在第j個(gè)資源節(jié)點(diǎn)上執(zhí)行第i個(gè)任務(wù)所消耗的資源成本(CPU、內(nèi)存等)為Cali,j,則構(gòu)建s個(gè)任務(wù)的能源消耗成本矩陣為CalCost=[cali,j],其中i=1,2,…,s,j=1,2,…,m。
云計(jì)算資源調(diào)度目標(biāo)函數(shù)的建立應(yīng)根據(jù)兩個(gè)判定標(biāo)準(zhǔn)。
1) 時(shí)間成本。在云計(jì)算過程中,應(yīng)使執(zhí)行完全部s個(gè)任務(wù)所需時(shí)間最短,降低時(shí)間成本。
2) 資源成本。在云計(jì)算過程中,會(huì)將多個(gè)用戶任務(wù)同時(shí)在數(shù)據(jù)中心的多個(gè)節(jié)點(diǎn)上執(zhí)行,如計(jì)算資源分配不合理,會(huì)增加資源成本的浪費(fèi),降低計(jì)算效率。所以在建立云計(jì)算目標(biāo)函數(shù)時(shí),應(yīng)盡可能降低資源成本。
因此云計(jì)算資源調(diào)度模型的目標(biāo)函數(shù)如式(1)所示,目的是使綜合成本f的值最小。
(1)
式中:β01和β02為慣性權(quán)重。若β01較大,則在計(jì)算過程中更加側(cè)重計(jì)算時(shí)間花費(fèi);若β02較大,則在計(jì)算過程中更加側(cè)重計(jì)算資源成本的花費(fèi)。但目的是使綜合成本最小。
獅群優(yōu)化算法是模擬自然界獅群群體捕獵的一種新的群智能優(yōu)化算法。首先,自然界中獅群在狩獵過程中會(huì)分為三個(gè)部分協(xié)作捕獵,分別為雄獅、母獅、幼獅。雄獅作為首領(lǐng),占統(tǒng)治地位,主要負(fù)責(zé)保護(hù)領(lǐng)地以及與外來流浪獅等威脅作斗爭(zhēng)。母獅主要負(fù)責(zé)捕獵,幼獅通常跟隨母獅,協(xié)助母獅進(jìn)行捕獵,長(zhǎng)大后并對(duì)獅王的位置發(fā)起挑戰(zhàn)。因此,該算法中,首先對(duì)整個(gè)獅群個(gè)體的位置進(jìn)行初始化:
Xi=(Xi,1,Xi,2,…,Xi,D)
(2)
式中:獅群的種群規(guī)模為NP,因此i=1,2,…,NP,維數(shù)為D。因此Xi表示第i個(gè)獅子所在位置。從上述可知,獅王、母獅以及幼獅的分工各不相同,其位置更新方式也各不相同,因此,成年獅(獅王和母獅)以及幼獅在種群中的數(shù)量比在很大程度上影響了算法的收斂性能。根據(jù)大量的實(shí)驗(yàn)表明,成年獅所占比例越大,算法勘探能力越強(qiáng),而幼獅數(shù)量越多,則種群多樣性越強(qiáng)。因此定義成年獅的占比為ξ,ξ∈[0,1]。
首先,獅王為了保證食物來源以及領(lǐng)地的安全性,其移動(dòng)范圍一直保持在食物源附近,因此獅王的位置更新方式如下:
(3)
其次,母獅通常采用協(xié)同互助的方式捕獵,在尋找到食物源后,母獅會(huì)逐步縮小對(duì)食物源的包圍圈,這種行為可被描述為:
(4)
(5)
式中:max和min為獅群個(gè)體各維度的最大均值和最小均值;Tmax為最大迭代次數(shù)。
最后,幼獅按母獅和獅王的位置進(jìn)行選擇性移動(dòng),其計(jì)算方式為:
(6)
在傳統(tǒng)獅群優(yōu)化算法中,成年獅所占比ξ為[0,1]之間的隨機(jī)數(shù)。當(dāng)ξ越大,算法的勘探能力越強(qiáng);當(dāng)ξ越小,算法的局部開發(fā)能力越強(qiáng)。因此ξ在優(yōu)化過程中采用隨機(jī)化處理,一定程度上影響了算法的搜索能力。并且,若參數(shù)過于隨機(jī)化,會(huì)導(dǎo)致算法收斂速度降低,算法運(yùn)行后期的搜索區(qū)域無效。
混沌現(xiàn)象是非線性系統(tǒng)中一種普遍的現(xiàn)象,它的變化過程看似混亂,實(shí)際上其內(nèi)在具有規(guī)律性,能夠在一定范圍之內(nèi),按照自身規(guī)律不重復(fù)地遍歷所有狀態(tài)?;煦缬成涞男袨閺?fù)雜,類似隨機(jī)運(yùn)動(dòng),但相對(duì)于隨機(jī)運(yùn)動(dòng),它具有遍歷性的特點(diǎn),能夠很好地彌補(bǔ)隨機(jī)運(yùn)動(dòng)的缺陷,實(shí)現(xiàn)全局最優(yōu)。因此,在本文中,將混沌理論用于LSO,以提高LSO的搜索精度,并創(chuàng)造新的、不同的個(gè)體。
(a) 混沌映射后參數(shù)ξ的取值曲線
(b) 無混沌映射的參數(shù)ξ的取值曲線圖1 參數(shù)ξ取值對(duì)比圖
圖1(a)為無混沌映射處理的參數(shù)ξ的取值曲線。圖1(b)為在同一組隨機(jī)數(shù)下,按照式(7)的ξ的取值曲線。可以看出,在同一組隨機(jī)數(shù)下,原參數(shù)ξ的波動(dòng)幅度較大,大大增加了優(yōu)化過程中的不穩(wěn)定性。在改進(jìn)的參數(shù)調(diào)整中,減小了完全隨機(jī)的波動(dòng)幅度,能使算法在小范圍內(nèi)隨機(jī)波動(dòng),能夠提高LSO的局部搜索能力。
ξ=2rand2·sin(π·rand)
(7)
式中:rand為[0,1]之間的隨機(jī)數(shù)。利用混沌映射進(jìn)行參數(shù)調(diào)整,增加了參數(shù)ξ的規(guī)律性,從而在避免搜索過程中陷入局部最優(yōu)的基礎(chǔ)上,避免了隨機(jī)盲目搜索可能導(dǎo)致的收斂慢,搜索區(qū)域無效的問題。
根據(jù)式(5)可知,控制因子αf在迭代過程中,非線性單周期減小。目的是使算法在迭代前期具有較高的全局搜索能力,在迭代后期擁有較高的局部搜索能力。但傳統(tǒng)LSO中,控制因子αf并不能滿足母獅在捕獵過程中,需要多次協(xié)調(diào)圍捕,最終完成狩獵的現(xiàn)象。
根據(jù)研究表明,算法在迭代過程中,全局搜索能力和局部搜索能力的大小應(yīng)周期性多輪交替,保證算法在迭代前期,可以頻繁地轉(zhuǎn)變?nèi)炙阉髂芰途植克阉髂芰Φ拇笮?,但?yīng)更偏向全局搜索能力。在迭代后期,算法的全局勘探能力和局部開發(fā)能力之間的轉(zhuǎn)換速度應(yīng)相應(yīng)減小,且更應(yīng)偏向局部開發(fā)能力。目的是保證算法在平衡全局勘探能力和局部開發(fā)能力的同時(shí),避免算法在迭代后期因局部搜索能力過強(qiáng)導(dǎo)致算法陷入局部最優(yōu)的情況。因此改進(jìn)后的控制因子αf的數(shù)學(xué)表達(dá)式如下:
(8)
式中:K為算法全局搜索能力和局部搜索能力調(diào)節(jié)頻率。K越大,調(diào)節(jié)頻率越高;K越小,調(diào)節(jié)頻率越小。
(9)
式中:f(Xi)為飛蛾粒子在第i次迭代的適應(yīng)度值;t為第i次迭代時(shí)的溫度。將LSO中的所有粒子的初始適應(yīng)度最大值和最小值的差值定義為初始溫度,當(dāng)f(Xi+1)>f(Xi)時(shí),按概率P接受劣質(zhì)解。將LSO與模擬退火算法結(jié)合后,將在LSO求解之后再進(jìn)行退火處理,退火時(shí)會(huì)產(chǎn)生一個(gè)新的獅群種群并調(diào)整原種群位置,提高全局收斂精度。因此式(9)可修改為:
(10)
式中:fnew(Xi)是新種群第i個(gè)獅群個(gè)體的適應(yīng)度,fold為原始種群第i個(gè)獅群個(gè)體的適應(yīng)度。式(10)通過新舊位置適應(yīng)度的差值調(diào)整接受概率P。
改進(jìn)后的獅群優(yōu)化算法可記為ILSO(Improved Lion Swarm Optimization, ILSO)。ILSO的優(yōu)化過程如下:
Step1初始化獅群種群,包括種群S1的種群規(guī)模SN、最大迭代次數(shù)Tmax、維數(shù)D、調(diào)節(jié)頻率K。
Step2通過式(7)對(duì)成年獅占比ξ進(jìn)行混沌映射處理,并對(duì)種群中全部個(gè)體進(jìn)行位置初始化。
Step3計(jì)算獅群中全部個(gè)體的適應(yīng)度值,并按適應(yīng)度值的大小進(jìn)行排序。
Step4通過式(3)對(duì)獅王的位置進(jìn)行更新。
Step6通過式(6)對(duì)幼獅的位置進(jìn)行更新。
Step7模擬退火處理。定義一個(gè)新的獅群種群S2并隨機(jī)初始化粒子位置,計(jì)算S2的適應(yīng)度。
Step8若新種群S2中個(gè)體的適應(yīng)度值優(yōu)于種群S1中個(gè)體的適應(yīng)度,則將兩個(gè)個(gè)體進(jìn)行交換處理。否則,將有P概率接受S2中獅子個(gè)體的位置,并進(jìn)行退火降溫處理:t=0.99×t。
Step9判斷是否達(dá)到最大迭代次數(shù)。是則輸出最優(yōu)個(gè)體,即算法找到的最優(yōu)解;否則返回Step3。
為了驗(yàn)證本文所提ILSO的優(yōu)化性能,本文選取10個(gè)基準(zhǔn)測(cè)試函數(shù)作為評(píng)價(jià)函數(shù),對(duì)ILSO進(jìn)行數(shù)值仿真驗(yàn)證,并記錄結(jié)果的平均值和標(biāo)準(zhǔn)差。10個(gè)基準(zhǔn)測(cè)試函數(shù)如表1所示。其中函數(shù)f1-f4為單峰測(cè)試函數(shù),f5-f8為多峰測(cè)試函數(shù),f9-f10為固定維數(shù)測(cè)試函數(shù)。
表1 10個(gè)基準(zhǔn)測(cè)試函數(shù)
為了使實(shí)驗(yàn)結(jié)果更加具有說服性,本文將ILSO的實(shí)驗(yàn)結(jié)果與其他三種用于優(yōu)化云計(jì)算資源調(diào)度模型的優(yōu)化算法的實(shí)驗(yàn)結(jié)果進(jìn)行對(duì)比。對(duì)比算法分別為動(dòng)態(tài)粒子群算法[5](DRDPSO)、改進(jìn)蜂群優(yōu)化算法[16](IABC),以及改進(jìn)蛙跳優(yōu)化算法[17](ACO-SFLA)。為了保證算法的公平性,四種算法的種群規(guī)模均為50,最大迭代次數(shù)均為100,維數(shù)為100。DRDPSO中c1=c2=1,k1=k2=1,σ=0.7,μ1=4,μ2=1,εe=0.01,ετ=0.01。ACO-SFLA中A=1,B=5,τmax=0.000 9,τmin=0.000 1,r=5,t=0.5,r1=r2=0.3,r3=0.4,F(xiàn)1=F2=0.5。四種算法獨(dú)立運(yùn)行30次,取其結(jié)果的平均值和標(biāo)準(zhǔn)差,具體實(shí)驗(yàn)結(jié)果如表2所示,其中最優(yōu)解用加粗字體表示。
表2 數(shù)值實(shí)驗(yàn)對(duì)比結(jié)果
從表2中可得,對(duì)于單峰測(cè)試函數(shù)而言,ILSO取得的平均值明顯優(yōu)于IABC算法、DRDPSO、ACO-SFLA。證明ILSO相較其他三種算法而言,整體尋優(yōu)性能更優(yōu)。這是由于周期性收斂控制因子很好地平衡了算法的全局收斂能力和局部開發(fā)能力,使得算法全局/局部搜索性能極為平均。此外,算法通過混沌映射對(duì)算法中成年獅占比進(jìn)行合理分配,極大地豐富了種群多樣性。最后,ILSO取得的標(biāo)準(zhǔn)差同樣優(yōu)于其他三種算法,說明ILSO具有較強(qiáng)的尋優(yōu)穩(wěn)定性,算法魯棒性更強(qiáng)。
對(duì)于多封測(cè)試函數(shù)而言,ILSO取得的平均值同樣優(yōu)于其他三種算法,說明ILSO的全局收斂精度更強(qiáng)。同時(shí)對(duì)于測(cè)試函數(shù)f8而言,DRDPSO以及ACO-SFLA陷入局部最優(yōu),早熟收斂,IABC的收斂精度雖然同樣不高,但遠(yuǎn)優(yōu)于其他三種算法,說明ILSO跳出局部最優(yōu)的概率遠(yuǎn)大于其他三種算法,在迭代后期,ILSO依然具有較高的全局收斂能力。此外,對(duì)于多峰測(cè)試函數(shù)而言,ILSO取得的標(biāo)準(zhǔn)差同樣優(yōu)于其他三種算法,說明在多次迭代過程中,ILSO的尋優(yōu)穩(wěn)定性極強(qiáng),在陷入局部最優(yōu)時(shí),會(huì)通過模擬退火策略,有效幫助算法跳出局部最優(yōu)。
對(duì)于固定維函數(shù)而言,四種算法的收斂精度均有很大程度的提高,且對(duì)于測(cè)試函數(shù)f9而言,ILSO以及ACO-SFLA可以取得理論最優(yōu)解,這是由于測(cè)試函數(shù)維數(shù)較低,尋優(yōu)復(fù)雜度不高的原因?qū)е?。但I(xiàn)LSO的標(biāo)準(zhǔn)差更小,說明ILSO的尋優(yōu)穩(wěn)定性更強(qiáng)。
為了驗(yàn)證ILSO具有較強(qiáng)的整體尋優(yōu)性能,本文通過Wilcoxon秩和檢驗(yàn)分析了ILSO和其他三種算法在優(yōu)化性能方面的差異性。在D=100時(shí),在選定5%的顯著性水平下IABC、DRDPSO和ACO-SFLA所得的pvalue分別為0.032 7、0.049 7和0.010 9。
本文算法主要由混沌映射初始化、位置更新、模擬退火操作組成。設(shè)種群規(guī)模N為50,優(yōu)化問題維度D為100時(shí),ILSO的時(shí)間復(fù)雜度分析如下:種群混沌映射初始化的計(jì)算復(fù)雜度為O(2ND),位置更新為O(3ND),模擬退火操作為O(2N)。因此,ILSO的時(shí)間復(fù)雜度為O(N+5ND)。IABC算法、DRDPSO、ACO-SFLA的時(shí)間復(fù)雜度分別為O(N+2ND)、O(N2+2ND)、O(N2+ND)。根據(jù)大O的定義,ILSO時(shí)間復(fù)雜度的量級(jí)要略低于DRDPSO以及ACO-SFLA,與IABC算法的量級(jí)相同。
本文將ILSO用于云計(jì)算資源調(diào)度模型優(yōu)化,實(shí)驗(yàn)所需仿真平臺(tái)為MATLAB 2014b,CPU為Inter Core i5-5200U,主頻為2.20 GHz。為了驗(yàn)證ILSO可以有效優(yōu)化云計(jì)算資源調(diào)度模型,本文分別針對(duì)小規(guī)模任務(wù)量和大規(guī)模任務(wù)量?jī)煞N情況進(jìn)行優(yōu)化實(shí)驗(yàn),并對(duì)比兩組實(shí)驗(yàn)結(jié)果中資源調(diào)度所需的時(shí)間花費(fèi)和能耗花費(fèi),對(duì)ILSO的整體優(yōu)化性能進(jìn)行驗(yàn)證。
其中實(shí)驗(yàn)參數(shù)和實(shí)驗(yàn)過程如下所述:實(shí)驗(yàn)過程中,以任務(wù)量為單一變量,小規(guī)模任務(wù)量設(shè)定為100,大規(guī)模任務(wù)量設(shè)定為25 000。四種算法的種群規(guī)模設(shè)定為50,最大迭代次數(shù)為100。經(jīng)多次計(jì)算β01和β02分別為4和1時(shí),實(shí)驗(yàn)效果最佳。其余參數(shù)與3.5節(jié)所述一致。實(shí)驗(yàn)過程如下:
Step1依照云計(jì)算資源調(diào)度問題對(duì)ILSO進(jìn)行種群初始化。
Step2設(shè)定云計(jì)算資源調(diào)度方案初始解數(shù)目為50,因此ILSO的種群規(guī)模為50。
Step3以式(1)為目標(biāo)函數(shù),通過式(3)、式(4)和式(6)計(jì)算目標(biāo)函數(shù)值,并更新最優(yōu)解。
Step4判斷ILSO是否達(dá)到最大迭代次數(shù),若達(dá)到最大迭代次數(shù),則返回全局最優(yōu)位置,否則跳轉(zhuǎn)到Step3繼續(xù)優(yōu)化。
Step5輸出全局最優(yōu)解,即為云計(jì)算資源調(diào)度的最優(yōu)方案。
圖2和圖3分別為四種算法在小規(guī)模用戶任務(wù)下,對(duì)云計(jì)算資源調(diào)度模型優(yōu)化所得時(shí)間花費(fèi)和能源花費(fèi)的實(shí)驗(yàn)對(duì)比結(jié)果,其云計(jì)算資源數(shù)量為30。
圖2 四種算法完成時(shí)間對(duì)比圖
圖3 四種算法能量消耗對(duì)比圖
首先對(duì)于時(shí)間花費(fèi)而言,ILSO所需時(shí)間最短,僅為IABC算法的60%。說明ILSO具有較強(qiáng)的收斂速度以及收斂精度。很大程度降低了計(jì)算時(shí)間,提高了計(jì)算效率。其次,對(duì)于能源消耗而言,IABC算法、DRDPSO以及ACO-SFLA的消耗曲線隨任務(wù)量增加,波動(dòng)較大,但I(xiàn)LSO的能源消耗曲線上升坡度較為平緩,波動(dòng)不大。此外,ILSO的能源消耗僅為22.7 kNJ,遠(yuǎn)低于其他三種優(yōu)化策略所消耗的能源花費(fèi)。說明ILSO相較其他三種算法而言,可以更加有效地分配資源節(jié)點(diǎn),合理地對(duì)每個(gè)節(jié)點(diǎn)分配計(jì)算任務(wù),尋優(yōu)穩(wěn)定性更強(qiáng)。
圖4和圖5分別為四種算法在大規(guī)模用戶任務(wù)下,對(duì)云計(jì)算資源調(diào)度模型優(yōu)化所得時(shí)間花費(fèi)和能源花費(fèi)的實(shí)驗(yàn)對(duì)比結(jié)果,其云計(jì)算資源數(shù)量為60。
圖4 四種算法完成時(shí)間對(duì)比圖
圖5 四種算法能量消耗對(duì)比圖
從圖中可得,ILSO在時(shí)間花費(fèi)和能耗花費(fèi)上的優(yōu)化結(jié)果均優(yōu)于其他三種優(yōu)化算法的優(yōu)化結(jié)果。此外,隨任務(wù)量的急劇增加,四種算法的時(shí)間花費(fèi)曲線和能耗花費(fèi)曲線的上升趨勢(shì)均較為明顯,但I(xiàn)LSO的曲線斜率要更低于其他三種算法,說明ILSO相較其他三種算法而言,更加適合用于具有大規(guī)模用戶任務(wù)量的云計(jì)算資源調(diào)度優(yōu)化,這是由于ILSO的全局勘探能力和局部開發(fā)能力較為平衡,在處理具有復(fù)雜性、多約束性等特性的數(shù)學(xué)問題上,算法整體收斂性能更優(yōu),收斂精度更高,不會(huì)出現(xiàn)早熟收斂的問題。
為了更加突出ILSO的高效性,將四種算法進(jìn)行負(fù)載均衡對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)中,客戶任務(wù)數(shù)量為5 000,資源節(jié)點(diǎn)個(gè)數(shù)為5,分別為s1、s2、s3、s4和s5,每個(gè)節(jié)點(diǎn)的處理能力為{100,300,500,600,700}。實(shí)驗(yàn)結(jié)果如圖6所示。
圖6 四種算法負(fù)載均衡對(duì)比圖
由于5個(gè)資源點(diǎn)處理能力各不相同,導(dǎo)致每個(gè)節(jié)點(diǎn)的負(fù)載也各不相同。從圖6中可得,ILSO的負(fù)載均衡度遠(yuǎn)優(yōu)于其他三種算法,對(duì)于節(jié)點(diǎn)s2而言,ACO-SFLA所分配給節(jié)點(diǎn)的任務(wù)數(shù)遠(yuǎn)大于節(jié)點(diǎn)最大處理任務(wù)數(shù)量,導(dǎo)致處理能力較差的資源節(jié)點(diǎn)獲得了較大的任務(wù)量。對(duì)于節(jié)點(diǎn)s5而言,IABC算法所分配給節(jié)點(diǎn)的任務(wù)數(shù)遠(yuǎn)少于節(jié)點(diǎn)最大處理任務(wù)數(shù)量,導(dǎo)致處理能力較強(qiáng)的節(jié)點(diǎn),獲得的任務(wù)量較少,極大地浪費(fèi)了計(jì)算資源。因此,ILSO相較其他三種算法,對(duì)于云計(jì)算中的資源分配更加均衡、合理,很大程度提高了計(jì)算效率。
針對(duì)云計(jì)算資源調(diào)度不平衡,導(dǎo)致時(shí)間成本以及能量成本過度消耗的問題,本文提出一種改進(jìn)的獅群優(yōu)化算法,對(duì)云計(jì)算資源調(diào)度問題進(jìn)行優(yōu)化。首先,針對(duì)傳統(tǒng)獅群優(yōu)化算法全局收斂精度低以及算法在迭代后期易早熟收斂陷入局部最優(yōu)的問題,通過混沌映射、周期性遞減控制因子以及模擬退火策略進(jìn)行改進(jìn)。其次通過數(shù)值仿真實(shí)驗(yàn),對(duì)改進(jìn)后的獅群優(yōu)化算法進(jìn)行對(duì)比驗(yàn)證,結(jié)果表明,ILSO的整體性能有很大程度提高,收斂精度更高。最后,將ILSO用于云計(jì)算資源調(diào)度模型優(yōu)化實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,ILSO優(yōu)化后的資源調(diào)度模型,很大程度降低了計(jì)算過程中的時(shí)間成本和能源消耗成本,提高了資源利用率。