校莉
摘要:云計(jì)算是一種商業(yè)計(jì)算模型,云廠(chǎng)商一般都有自己的資源分配和任務(wù)調(diào)度模式,但并沒(méi)有統(tǒng)一的標(biāo)準(zhǔn)和規(guī)范。分析云計(jì)算系統(tǒng)資源調(diào)度,提出一種基于進(jìn)階的粒子群算法,采取集群動(dòng)態(tài)協(xié)作產(chǎn)生優(yōu)質(zhì)粒子及對(duì)粒子逆向作用平衡局部資源的策略,以達(dá)到全局及局部搜索雙向資源最優(yōu)。經(jīng)云仿真平臺(tái)測(cè)試表明,應(yīng)用該算法的調(diào)度策略可行且高效。
關(guān)鍵詞:粒子群優(yōu)化算法;云計(jì)算;資源調(diào)度
DOIDOI:10.11907/rjdk.161535
中圖分類(lèi)號(hào):TP301
文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-7800(2016)005-0016-02
0 引言
云計(jì)算作為一種并行計(jì)算技術(shù)實(shí)質(zhì)是網(wǎng)格計(jì)算的服務(wù)延伸,以滿(mǎn)足海量級(jí)信息化計(jì)算服務(wù)需求。云計(jì)算具有安全、可靠、高效的數(shù)據(jù)處理能力及靈活性和擴(kuò)展性,可以顯著節(jié)省單點(diǎn)計(jì)算的時(shí)間開(kāi)銷(xiāo)、降低計(jì)算成本。盡管通過(guò)VM(virtual machine)等虛擬化協(xié)議,可以將多臺(tái)服務(wù)器資源集群為一個(gè)高性能的資源池虛擬體,然而在大規(guī)模、多模式的資源系統(tǒng)中,良好的資源調(diào)度策略是提高平臺(tái)效能的必要條件,也是影響系統(tǒng)服務(wù)效能的重要因素。傳統(tǒng)粒子群優(yōu)化(PSO)算法[1]以其模型結(jié)構(gòu)清晰明了、計(jì)算傳參量小、語(yǔ)言實(shí)現(xiàn)容易等優(yōu)勢(shì)在數(shù)學(xué)建模、網(wǎng)格計(jì)算等諸多工程科學(xué)領(lǐng)域被廣泛應(yīng)用。但也有其局限性,主要體現(xiàn)在大量局部搜索情況下,系統(tǒng)可能處于局部最優(yōu)的極端狀況,同時(shí)收斂速度變慢。
本文在分析云計(jì)算系統(tǒng)的資源調(diào)度的基礎(chǔ)上,提出一種基于進(jìn)階的粒子群算法(Advanced PSO,縮寫(xiě)為A-PSO),相比傳統(tǒng)PSO算法,其在集群動(dòng)態(tài)協(xié)作產(chǎn)生優(yōu)質(zhì)粒子及對(duì)粒子逆向作用平衡局部資源的兩個(gè)方面做出了優(yōu)化,以達(dá)到全局及局部搜索雙向資源最優(yōu)。將改良后的A-PSO算法應(yīng)用于系統(tǒng)資源調(diào)度,使得云計(jì)算系統(tǒng)能夠快速響應(yīng)應(yīng)用端的資源請(qǐng)求,實(shí)時(shí)給出當(dāng)前優(yōu)質(zhì)資源,并考慮資源庫(kù)存,盡量規(guī)避負(fù)載失衡、局部死鎖、資源過(guò)早耗盡等風(fēng)險(xiǎn)。
1 云系統(tǒng)資源動(dòng)態(tài)部署
大多數(shù)云系統(tǒng)采用計(jì)時(shí)或計(jì)流量付費(fèi)的營(yíng)運(yùn)模式,通過(guò)資源共享服務(wù)用戶(hù)并盈利,應(yīng)用端開(kāi)發(fā)者僅需考慮軟件自身問(wèn)題,各類(lèi)資源占用和調(diào)度則均由云計(jì)算平臺(tái)統(tǒng)一處理。云平臺(tái)能根據(jù)用戶(hù)需求和系統(tǒng)實(shí)際負(fù)載情況進(jìn)行動(dòng)態(tài)部署、配置及調(diào)度資源。云計(jì)算資源調(diào)度是指在某個(gè)指定的集群中,根據(jù)既定規(guī)則對(duì)終端請(qǐng)求進(jìn)行動(dòng)態(tài)資源分配。如果制定的調(diào)度算法過(guò)于簡(jiǎn)單,容易造成分配不均;如果算法過(guò)于復(fù)雜,則由于過(guò)多的邏輯處理和關(guān)聯(lián)操作會(huì)造成較大時(shí)間開(kāi)銷(xiāo)和資源消耗,從而降低了整個(gè)系統(tǒng)的性能。因此,如何制定一個(gè)合理的調(diào)度規(guī)則,采用合適的算法實(shí)現(xiàn)智能、高效的資源調(diào)度是各云商亟待解決的難題。
2 粒子群優(yōu)化算法
粒子群算法是一種基于群體的自適應(yīng)搜索優(yōu)化算法[3]。其通過(guò)權(quán)重因子來(lái)調(diào)節(jié)算法的全局和局部尋優(yōu)能力,權(quán)重因子值高則利于全局尋優(yōu);反之,則利于局部尋優(yōu),通常權(quán)重因子值域一般為(0.4,0.9)。尋優(yōu)計(jì)算公式為:
3 A-PSO 算法下的云計(jì)算系統(tǒng)資源調(diào)度策略
粒子群優(yōu)化算法雖然算法設(shè)計(jì)較為簡(jiǎn)單,自適應(yīng)特性在許多工程應(yīng)用中具有明顯優(yōu)勢(shì),但算法隨機(jī)性較大,仍有很大優(yōu)化空間。本文從集群動(dòng)態(tài)協(xié)作和粒子逆向作用兩個(gè)方面對(duì)PSO算法進(jìn)行改進(jìn)。
3.1 改進(jìn)的粒子群優(yōu)化算法
通過(guò)集群中子群的動(dòng)態(tài)協(xié)作在一定程度上可以提升收斂速度及求解深度,同時(shí)粒子逆向作用效應(yīng)可以一定程度上沖散密集資源,避免系統(tǒng)陷入局部極優(yōu)而導(dǎo)致資源過(guò)早耗盡的風(fēng)險(xiǎn),維持系統(tǒng)的負(fù)載平衡。基于這種A-PSO算法,對(duì)資源申請(qǐng)者,云系統(tǒng)可以給出一個(gè)當(dāng)前資源背景下比較優(yōu)質(zhì)的資源。采用動(dòng)態(tài)協(xié)作算法,次群重點(diǎn)全局搜索,主群則重點(diǎn)局部搜索。一次循環(huán)中,所有次群最優(yōu)結(jié)果傳導(dǎo)給主群,主群則選出最優(yōu)子群資源粒子,流程如圖1所示。
4 仿真檢驗(yàn)
根據(jù)上述算法,設(shè)計(jì)一個(gè)基于云計(jì)算的仿真平臺(tái)CS3.0[4],在JDK1.8環(huán)境下使用Myeclipse2013工具編碼的仿真檢驗(yàn)實(shí)驗(yàn)。分別對(duì)DataCenter、DataCenterBroker、Cloudlet 等多個(gè)類(lèi)進(jìn)行重寫(xiě)并編譯成功。實(shí)驗(yàn)初始設(shè)定4個(gè)集群,其中主服務(wù)集群1個(gè),次群3個(gè),各群體規(guī)模固定為100,迭代上限500 次。主群學(xué)習(xí)因子均設(shè)定為4:3,次群學(xué)習(xí)因子均設(shè)定為2:1。實(shí)驗(yàn)比照數(shù)據(jù)為采用標(biāo)準(zhǔn)PSO算法,在同樣設(shè)置條件下的執(zhí)行時(shí)間開(kāi)銷(xiāo)。結(jié)果如圖3所示。
由實(shí)驗(yàn)結(jié)果可知,對(duì)比采用傳統(tǒng)PSO算法,A-PSO算法調(diào)度策略平均時(shí)間開(kāi)銷(xiāo)更小。
5 結(jié)語(yǔ)
分析云計(jì)算系統(tǒng)資源調(diào)度,提出一種基于進(jìn)階的粒子群算法,相比標(biāo)準(zhǔn)PSO算法而言,改進(jìn)后的APSO算法能夠更高效處理云系統(tǒng)資源搜索與分配,兼顧了資源分配的公平性和系統(tǒng)負(fù)載均衡,系統(tǒng)擴(kuò)展性更強(qiáng)。后續(xù)將研究學(xué)習(xí)因子和逆向粒子權(quán)重等,進(jìn)一步改進(jìn)該算法,為云系統(tǒng)開(kāi)發(fā)及管理提供參考借鑒。
參考文獻(xiàn):
[1]KENNEY J, EBERHART R. Particle swarm optimization[C].Proc. of IEEE International Conf. on Neural Networks. Perth, USA,1995.
[2]虛擬化與云計(jì)算小組. 虛擬化與云計(jì)算[M]. 北京: 電子工業(yè)出版社, 2009.
[3]李麗,牛奔.粒子群優(yōu)化算法[M]. 北京: 冶金工業(yè)出版社,2009.
[4]CLOUDS LAB. A framework for modeling and simulation of cloud computing infrastructures and services introduction[EB/OL]. http://www.buyya.com/gridbus/cloudsim/.
(責(zé)任編輯:陳福時(shí))