王 猛,譚躍生(內(nèi)蒙古科技大學(xué)工程訓(xùn)練中心,內(nèi)蒙古 包頭 014010)
基于簡化粒子群和蟻群優(yōu)化的云計算資源調(diào)度算法
王 猛,譚躍生
(內(nèi)蒙古科技大學(xué)工程訓(xùn)練中心,內(nèi)蒙古 包頭 014010)
為了提高云計算環(huán)境下資源調(diào)度的效率,將BPSO-ACO算法應(yīng)用到云計算的資源調(diào)度過程中,通過CloudSim平臺的仿真實驗,與粒子群算法和蟻群算法做比較,得到在同等條件下,簡化粒子群優(yōu)化和蟻群優(yōu)化算法(BPSO-ACO)比單獨的粒子群算法或蟻群算法在進行資源調(diào)度時,總?cè)蝿?wù)的完成時間更短、收斂性更好。
云計算;資源調(diào)度;粒子群算法;蟻群算法
云計算環(huán)境中有n個任務(wù)的集合T=(T1,T2, …,Tn) 分配到m個虛擬資源集合VM=(VM1,VM2, …,VMm) 上完成,其中Ti(i=1,2,3…n)表示第i個子任務(wù),VMj(j=1,2,3…m)表示第j個虛擬資源,粒子群中一個粒子位置就是一個可行解,即一個資源分配序列,任務(wù)集合T在虛擬資源VM上的分配關(guān)系可表示為:
這是一個N維向量,其中xij表示任務(wù)i被分配到虛擬資源VMj上,xij是一個可行的資源分配方案。
定義CTij(i∈{1,2,…,m},j∈{1,2,…,n})表示任務(wù)Ti在虛擬資源VMj的完成時間:
目標(biāo)是使得CTmax的值最小。
對于粒子群算法的優(yōu)化,大多數(shù)的改進是通過對參數(shù)自適應(yīng)調(diào)整或雜交、變異參數(shù)或增加操作算子獲得的。上述調(diào)整使得PSO算法越來越復(fù)雜,使得對于PSO收斂性的定量分析非常麻煩[2-3]。
通過分析粒子群算法可以發(fā)現(xiàn):在粒子群中 , 粒子速度概念不是必需的,因此 ,只需要考慮粒子位置的直接變化。參數(shù)vi代表粒子的速度,粒子速度的不能表示粒子趨近最優(yōu)解位置的趨勢。通過上述分析,粒子群算法可以優(yōu)化為公式2.1:
在粒子群中,每一個粒子就代表一個可行的調(diào)度方案,各虛擬資源節(jié)點VMj處理所有分配到該資源節(jié)點上的任務(wù)的總完成時間CTj,選取CTj{j=1,2,3,4,5}中完成時間最長的。
1.1 材料 試驗于2017年7月進行,材料選擇廣西南亞熱帶農(nóng)業(yè)科學(xué)研究所名優(yōu)茶種植基地1芽1葉黃觀音秋季鮮葉?;匚恢脤倌蟻啛釒Ъ撅L(fēng)氣候,海拔>100 m,全年平均氣溫21~22 ℃,地勢平坦,土壤pH 5.5~6.5。制茶主要設(shè)備:搖青機、6CR-35型揉捻機、YX-6CFJ-10B型全自動紅茶發(fā)酵機、理條機、6CTH型烘干機。檢測主要設(shè)備:氣相-質(zhì)譜聯(lián)用儀(GC- MS)、紫外分光光度儀、全自動化學(xué)分析儀、電子天平、茶葉審評用具。
3.1信息素初始化
初始階段,蟻群算法用粒子群算法的調(diào)度結(jié)果作為其初始節(jié)點,并對節(jié)點上的信息素加強若干倍數(shù),使得蟻群算法在初期的收斂速度變快,讓其盡快搜索到最優(yōu)解。
3.2路徑的選擇
現(xiàn)在假設(shè),在t時刻,螞蟻k選擇xij節(jié)點的概率如公式3.1所示。
3.3信息素更新規(guī)則
當(dāng)每只螞蟻經(jīng)過一個虛擬資源節(jié)點或遍歷過所有虛擬資源節(jié)點的時候,要對虛擬資源節(jié)點上的信息素更新。在t+1時刻信息素更新規(guī)則如公式3.3和公式3.4所示。
表示信息素的揮發(fā)系數(shù),1-ρ表示信息素的殘留系數(shù),通常ρ的取值范圍是0到1之間。
Δτj(t)表示t時刻,虛擬資源節(jié)點VMj上的信息素增量。
其中Q為常數(shù),表示所有任務(wù)執(zhí)行完的總時間,CTi表示任務(wù)Ti的執(zhí)行花費即時間。
本文選擇CloudSim仿真平臺進行仿真實驗,將簡化粒子群結(jié)合蟻群的算法(BPSO-ACO)云計算資源調(diào)度模型引入到CloudSim的資源調(diào)度系統(tǒng)中,通過仿真實驗驗證簡化粒子群結(jié)合蟻群的算法(BPSOACO)的云計算資源調(diào)度性能。
本實驗中,為了檢驗粒子群算法(PSO)、蟻群算法(ACO)與簡化粒子群結(jié)合蟻群算法(BPSO-ACO)的性能,在CloudSim平臺下設(shè)置3個虛擬資源節(jié)點和20到100個子任務(wù),對比分析。
各類算法的參數(shù)設(shè)置如下描述:
(1)對于簡化粒子群算法的參數(shù)設(shè)置如下:粒子的規(guī)模設(shè)置為100,c1=c2=2,迭代次數(shù)設(shè)置為30次。
(2)對于蟻群算法的參數(shù)設(shè)置如下:蟻群的規(guī)模設(shè)置為100,α=β=1,ρ=0.7,迭代次數(shù)設(shè)置為70次。
圖1 PSO與BPSO-ACO的對比
(3)對于簡化粒子群結(jié)合蟻群算法的參數(shù)設(shè)置如下:與粒子群算法和蟻群算法相同的參數(shù),設(shè)置為相同的值,迭代次數(shù)設(shè)置為100次。通過CloudSim進行20次仿真實驗,取平均值,進行測試,結(jié)果如圖1,圖2所示。
圖1與圖2可以看出,在初始狀態(tài),當(dāng)任務(wù)量較少的情況下,BPSO-ACO算法的完成時間與PSO算法、ACO算法的總完成時間相差不多,但是隨著任務(wù)量的增加,完成時間的差距越來越明顯,說明BPSO-ACO算法在任務(wù)量大的情況下的收斂性明顯好于PSO算法和ACO算法。
通過仿真實驗證明:BPSO-ACO算法能夠?qū)Y源進行合理的調(diào)度,總得完成時間要優(yōu)于PSO算法和ACO算法。
圖2 ACO與BPSO-ACO的對比
Arfeen M A, Pawlikowski K, Willig A. A Framework for Resource Allocation Strategies in CloudComputing Environment[J]. Computer Software and Applications Conference Workshops (COMPSACW),2011 IEEE 35th Annual.2011,261-266.
Clerc M, Kennedy J. The particle swarm: Explosion stability and convergence in a multi-dimensional complex space. IEEE Trans.on Evolution Computer, 2002,6(1):58-73.
Trelea IC. The particle swarm optimization algorithm:Convergence analysis and parameter selection. Information ProcessingLetters, 2003,85(6):317-325.
10.16640/j.cnki.37-1222/t.2016.14.116