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