国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于云計算的資源調(diào)度算法優(yōu)化研究

2020-01-07 05:48宋麗萍
關(guān)鍵詞:蟻群任務(wù)調(diào)度螞蟻

宋麗萍

(阜陽職業(yè)技術(shù)學(xué)院,安徽 阜陽 236000)

隨著計算機網(wǎng)絡(luò)和虛擬化技術(shù)的迅速發(fā)展,云計算技術(shù)應(yīng)運而生,并被廣泛應(yīng)用于各大領(lǐng)域,給人民的生活和工作帶來了極大的影響,改變了人民的生活方式.云計算是一種把數(shù)據(jù)存儲、數(shù)據(jù)傳輸?shù)茸鳛橐豁椃?wù)向有需要的人們提供技術(shù)的商業(yè)計算模式,它依托于虛擬化技術(shù)的發(fā)展,它的本質(zhì)是把分散的資源集中到服務(wù)器端,構(gòu)成虛擬化的資源池,供客戶共享,人們可以根據(jù)各自需求進行訪問、計算、分析等,并按需付費,不用再購買安裝服務(wù)器,因此具有高可用性、安全性和按需付費的優(yōu)點.云計算技術(shù)的出現(xiàn)及應(yīng)用,大大的削減了人們在數(shù)據(jù)存儲和計算上的成本,促進了客戶之間的信息共享,因此具有很大的發(fā)展前景[1].

由于云計算面向的數(shù)據(jù)量較大,需要頻繁處理計算任務(wù),因此云計算中的任務(wù)調(diào)度策略極其重要,在任務(wù)資源調(diào)度過程中,如果選擇的資源調(diào)度算法不合理或采用的資源調(diào)度模型不正確,勢必會增加時間和成本的消耗,造成資源節(jié)點負載不均衡等問題.因此資源調(diào)度算法的選擇及優(yōu)化成為人們關(guān)注及研究的熱點,云資源調(diào)度算法分成傳統(tǒng)的調(diào)度算法和智能化的調(diào)度算法,目前傳統(tǒng)的調(diào)度算法已逐步被淘汰,人們更多的是采用智能化的調(diào)度算法,本文擬對云資源調(diào)度算法中的智能調(diào)度算法進行分析及更深入的探索優(yōu)化[2].

1 云計算資源調(diào)度

1.1 云計算資源調(diào)度過程

云資源調(diào)度就是在云平臺中部署運用時,選擇合適的物理機分配資源給對應(yīng)的虛擬機.云計算作為一種分布式計算,目前使用的大都是都是Google開發(fā)的Map/Reduce模式,在資源調(diào)度過程中,用戶通過Web訪問云平臺,選擇相應(yīng)的云任務(wù),首先在后臺利用工具將任務(wù)Map/Reduce化,云平臺將原云任務(wù)分割為若干個可以獨立運行的子任務(wù),然后發(fā)起虛擬機請求信號請求分布式處理,任務(wù)調(diào)度器收到請求信號后,首先檢查每個虛擬機的資源信息,然后選擇合適的資源調(diào)度算法調(diào)用虛擬機資源進行任務(wù)的處理,在云任務(wù)完成后,虛擬機資源信息需要及時更新,以保證后續(xù)的任務(wù)調(diào)度信息能被正確采用[3].

由上面過程可以看出,云資源調(diào)度過程主要經(jīng)過云任務(wù)提交、Map/Reduce化、子任務(wù)提交及調(diào)度分配幾個流程,其具體實現(xiàn)過程如圖1所示.

圖1 云計算資源調(diào)度過程

1.2 云計算資源調(diào)度評價指標(biāo)

由于“按需付費”是云計算的一個主要特點,因此作為客戶必定希望能夠通過選擇好的算法來提高資源的利用率,而云計算供應(yīng)商不但要考慮客戶的需求,還要考慮云計算所產(chǎn)生的消耗成本,以力保云資源的高利用率、低能耗.通常云計算資源調(diào)度主要使用下面幾個指標(biāo)來評價.

1)任務(wù)運行時間

每個云任務(wù)都有一定的時效性,而云計算具有分布式的計算環(huán)境,這種獨特的分布式計算環(huán)境給縮減任務(wù)運行時間提供了有利的條件.所以,任務(wù)執(zhí)行時間是云資源調(diào)度的重要評價指標(biāo)之一,好的資源調(diào)度算法應(yīng)該能在其約束條件下最大程度的降低任務(wù)的執(zhí)行時間[4].

2)完成任務(wù)所需的費用成本

在云計算中,云服務(wù)商的主要目標(biāo)是利用有限的資源獲取最大的利益,要想縮減云任務(wù)的執(zhí)行時間,最直接的方法就是將云任務(wù)調(diào)度到性能最佳的云資源上執(zhí)行.因此,任務(wù)調(diào)度后完成任務(wù)所需的成本也是調(diào)度算法優(yōu)劣的重要評價指標(biāo)[5].

3)任務(wù)分布的負載均衡程度

云計算過程中要把每個子任務(wù)調(diào)度到虛擬機節(jié)點上運行,降低響應(yīng)時間;另外由于每臺物理主機都存在著信息的差異,在資源調(diào)度時物理主機調(diào)度執(zhí)行的任務(wù)數(shù)量也就不相同,從而導(dǎo)致負載不均衡的問題存在,一般客戶在云計算時間和成本方面又都有一定的要求,在一定的條件下,保持負載均衡也是值得考慮的一項重要指標(biāo)[6].

4)用戶的服務(wù)質(zhì)量

服務(wù)質(zhì)量(Quality of Service,QoS)反映了客戶對云計算供應(yīng)商所提供的云計算服務(wù)的滿意程度,一般從時間、費用、安全性和可靠性等方面進行要求,云計算供應(yīng)商通過建立約束函數(shù)保障用戶的需求,因此,用戶的QoS要求也是云計算資源調(diào)度的一個值得關(guān)注的指標(biāo)[7].

2 云資源調(diào)度的經(jīng)典算法——蟻群算法

蟻群算法(Ant Colony Optimization,ACO),是通過模擬螞蟻在尋找食物過程中尋找最優(yōu)路徑的仿生算法[8].在自然界中,螞蟻在行走過程中可以通過前面螞蟻的分泌物快速找到兩地之間最短路徑,其概率與分泌物的濃度成正比,前面的螞蟻大都選擇某一條路徑時,后面的螞蟻擇該路徑的概率就更大,當(dāng)生存環(huán)境發(fā)生變化時,也能迅速的判斷出適合的新路徑,這是由于螞蟻在行走過程中的分泌信息素形成了路徑軌跡,它可以幫助螞蟻快速找到食物及返回的路線. 由此可見,蟻群算法是一種群體智能算法,螞蟻通過這種分泌信息尋找最短路徑的機制,在很多領(lǐng)域都得到了一定的應(yīng)用.在云計算環(huán)境下,資源調(diào)度這種非確定性問題就可以通過蟻群算法來進行解決, 但是傳統(tǒng)的蟻群算法存在有很多缺點,如在大規(guī)模環(huán)境下,計算量會大大的增加,路徑的搜索需要的時間就會更長,算法的時間復(fù)雜度就會增加,另外很存在參數(shù)選擇的不確定性、初始信息素缺乏及易陷入局部最優(yōu)解等缺點,因此本文提出了一種新的蟻群優(yōu)化算法[9].

3 改進的蟻群算法

3.1 算法描述

在標(biāo)準(zhǔn)蟻群算法的基礎(chǔ)上,在云計算任務(wù)調(diào)度的過程中,重新建立調(diào)度模型,以子任務(wù)集合與虛擬機節(jié)點建立一矩陣H,節(jié)點集合為Hij,其中i=(1,2,…,m),j=(1,2,…,n),通過對傳統(tǒng)蟻群算法進行優(yōu)化獲得一個使F的值最小的資源調(diào)度方案[10].

3.2 信息素初始化

在云計算開始之前,要隨機的將任務(wù)調(diào)度到云資源中的虛擬機節(jié)點上,為了保證螞蟻在行走過程中能夠順利的實現(xiàn)最優(yōu)路徑的尋找,在算法的初始化階段,將所有路線的信息素的初始值都設(shè)置為最大值max.

3.3 虛擬機的選擇概率

螞蟻在完成一次任務(wù)后,需要繼續(xù)為下一任務(wù)選擇虛擬機節(jié)點資源,此時就需要先對其它節(jié)點的信息素濃度的執(zhí)行能力及負載均衡因子進行計算,然后它們被再次選擇的概率才容易獲取,以此確定下一個任務(wù)的虛擬機資源.在每個節(jié)點上都存在有多只螞蟻進行最優(yōu)解的搜索,在t時刻,第k只螞蟻(任務(wù)) 為下一個任務(wù)選擇第j個節(jié)點資源Hij的概率公式為:

公式中α和β分別表示信息素濃度及預(yù)想值的影響因子;τij(t) 代表虛擬機節(jié)點在t時刻,螞蟻(任務(wù))在Hij節(jié)點位置所遺留的信息素的值;φij(t) 表示螞蟻(任務(wù))i選擇虛擬機節(jié)點j的期望值,tabk(k=1,2,L,m) 表示第k只螞蟻行走過程中淘汰的路徑表[11].

圖2 蟻群優(yōu)化算法流程圖

3.4 信息素更新規(guī)則

所有螞蟻(任務(wù))在一次循環(huán)結(jié)束之后得到最優(yōu)解,然后進行信息素更新,之后的每一次循環(huán)之后都要對螞蟻(任務(wù))與虛擬機間的映射路徑上的信息素進行及時更新,保證在找到全局最優(yōu)解的同時獲得更高的效率,信息素更新的規(guī)則設(shè)置如下:

公式中ρ表示信息素的揮發(fā)因子,ρ的取值范圍在0和1之間,1-ρ代表遺留的信息素濃度,如果ρ變小,遺留的信息素濃度就會變大,那么這條路徑就有可能是被選擇的最優(yōu)路徑;Fbest是指全局最優(yōu)解的值,信息素的全局更新,可以提高算法的執(zhí)行效率,縮短云計算時間[12].

3.5 蟻群優(yōu)化算法的流程

根據(jù)以上的分析,總結(jié)出利用蟻群優(yōu)化算法進行云資源調(diào)度的具體流程如圖2所示.

4 算法仿真驗證

為了驗證優(yōu)化算法的可行性和有效性,本文選擇開源的云仿真CloudSim平臺對優(yōu)化算法進行仿真驗證.在仿真驗證時,選用虛擬機節(jié)點的個數(shù)為30個,任務(wù)數(shù)為30個,螞蟻群的總數(shù)設(shè)置與節(jié)點數(shù)相同為30只,實驗循環(huán)次數(shù)為20次,結(jié)束的條件為滿足最大循環(huán)次數(shù).在實驗條件相同的情況下,將蟻群優(yōu)化算法和傳統(tǒng)的蟻群算法相比較,通過實驗仿真發(fā)現(xiàn),優(yōu)化的蟻群算法在計算成本方面明顯低于傳統(tǒng)的蟻群算法,其計算效率也得到了一定的提高,因此,優(yōu)化后的蟻群算法能在提高計算效率的同時縮減計算成本,具有一定的有效性和可行性,在云資源調(diào)度方面有一定的應(yīng)用意義.

5 小結(jié)

隨著云計算技術(shù)的發(fā)展,云計算的應(yīng)用領(lǐng)域也越來越廣,由于云計算依托于虛擬化的環(huán)境這一特殊特性,頻繁面臨大量的計算,因此當(dāng)前云計算的研究焦點是云資源調(diào)度策略的優(yōu)化研究,如何在提高資源調(diào)度效率的同時減少資源的調(diào)度成本花費.本文以傳統(tǒng)的資源調(diào)度算法—蟻群算法為基礎(chǔ),考慮其存在的缺點,從計算成本和調(diào)度效率方面進行考慮,提出了一種優(yōu)化的蟻群算法應(yīng)用于資源調(diào)度,并利用云平臺仿真工具CloudSim對優(yōu)化后的蟻群算法進行了可行性和有效性的驗證,隨著應(yīng)用的不斷深入與擴展,筆者將繼續(xù)從確保 QoS需求及減少云數(shù)據(jù)中心耗能等方面進行探索,對云計算資源調(diào)度算法進一步優(yōu)化,進一步提高資源的利用率,相信云計算的應(yīng)用視角也會越來越寬廣.

猜你喜歡
蟻群任務(wù)調(diào)度螞蟻
基于動態(tài)能量感知的云計算任務(wù)調(diào)度模型
游戲社會:狼、猞猁和蟻群
基于PEPA的云計算任務(wù)調(diào)度性能分析
螞蟻:比人類更有組織性的動物
復(fù)雜復(fù)印機故障信號的檢測與提取
我們會“隱身”讓螞蟻來保護自己
螞蟻
基于小生境遺傳算法的相控陣?yán)走_任務(wù)調(diào)度
基于混合粒子群算法的云計算任務(wù)調(diào)度研究
螞蟻找吃的等