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

?

基于K-means和蝙蝠算法的云計算虛擬機智能調(diào)度

2016-12-01 09:55王焱
現(xiàn)代電子技術 2016年21期
關鍵詞:蝙蝠利用率聚類

王焱

(漢江師范學院教育系,湖北十堰442000)

基于K-means和蝙蝠算法的云計算虛擬機智能調(diào)度

王焱

(漢江師范學院教育系,湖北十堰442000)

針對云計算虛擬機調(diào)度中存在的資源分配不均衡問題,提出了一種基于K-means和蝙蝠算法的云計算虛擬機智能調(diào)度方法。該方法充分考慮物理節(jié)點空閑資源和虛擬機所需資源的互補性,以物理節(jié)點作為初始聚類中心,使用資源的相關性定義二者的距離,利用蝙蝠算法的全局尋優(yōu)能力迭代尋優(yōu),達到合理調(diào)度虛擬機的目的。模擬實驗仿真的結果表明,該方法在降低物理節(jié)點數(shù)量和提高資源利用率方面具有一定的優(yōu)勢,是一種可行的方法。

K-means;蝙蝠算法;云計算;虛擬機;調(diào)度

0 引言

云計算是一種新型的商業(yè)計算模式,是分布式處理、并行處理和網(wǎng)絡計算的拓展和延伸,已成為工業(yè)界和學術界的研究熱點。云計算的本質是以虛擬化技術為基礎,實現(xiàn)數(shù)據(jù)共享和服務共享。云平臺通過虛擬機的方式,通過高速的互聯(lián)網(wǎng)互連,形成虛擬資源池。虛擬機調(diào)度問題是云計算的關鍵技術之一,主要實現(xiàn)將虛擬機有效映射到相應的物理機上,達到物理機的負載均衡,有效利用現(xiàn)有資源。由于虛擬機需求量與物理集群的異構,可行部署空間增大,使云計算虛擬機調(diào)度成為一個NP-hard問題。本文主要基于K-means和蝙蝠混合算法研究了云計算虛擬機調(diào)度問題,實現(xiàn)了資源的高效平衡分配。

1 相關研究

云計算中虛擬機調(diào)度策略對云系統(tǒng)的性能具有很大的影響,能夠提高資源的利用率,最大化滿足用戶的需求。目前已有不少學者對云計算的虛擬機調(diào)度機制進行了研究。文獻[1]提出了一種基于多屬性層次分析的虛擬機部署與調(diào)度策略,該算法將虛擬機按資源特點進行分類量化,根據(jù)量化后的權向量和服務器資源的使用記錄,實現(xiàn)虛擬機的調(diào)度。文獻[2]在分組遺傳算法的基礎上,提出了基于多維資源協(xié)同聚合的虛擬機調(diào)度策略,對均衡資源分配具有一定的優(yōu)勢。文獻[3]提出了云計算的改進的credit調(diào)度算法,根據(jù)空閑率、緩存等因素選擇與其相關的任務,能提高緩存效率和增加延遲敏感型任務的響應速度。文獻[4]提出基于能耗比例模型的虛擬機調(diào)度算法,并采用“最近最小能耗比例優(yōu)先”的策略進行調(diào)度,提高了云系統(tǒng)的能效。文獻[5]提出了基于改進NSGAⅡ的虛擬機調(diào)度算法,將該模型的求解轉化為一個多目標優(yōu)化問題,在任務執(zhí)行時間、負載均衡和能量消耗方面具有一定的進步。本文在以上研究的基礎上提出基于K-means和蝙蝠混合算法的云計算虛擬機調(diào)度方法,將虛擬機分配到與其資源互補的物理機上,充分利用物理機上的資源,達到最優(yōu)化目標。

2 蝙蝠算法和K均值算法

2.1蝙蝠算法

蝙蝠算法是劍橋大學學者Xin-She Yang于2010年提出的一種新型優(yōu)化算法,主要是受自然界中的蝙蝠搜尋、捕食行為啟發(fā)形成的新型優(yōu)化算法,每個優(yōu)化問題的解是搜索可行空間的一個蝙蝠[6-8]。

(1)蝙蝠的運動

蝙蝠算法在d維空間中定義了蝙蝠的位置和速度的變化情況,蝙蝠i在t時刻的位置和速度的變化通過下列公式描述:

式中:β表示在[0,1]之間的隨機變量;x*表示當前全局最優(yōu)位置;fi為頻率大小,根據(jù)要搜索的范圍大小確定其最大值和最小值。局部搜索時,蝙蝠位置的更新公式為:

式中:ε∈[-1,1]是隨機數(shù);At是所有蝙蝠在同一時間段的平均音量。

(2)音量和脈沖發(fā)生率

當蝙蝠i找到目標時,音量Ai就會降低,同時脈沖發(fā)生率ri就會增加,其更新公式如下:

式中:α和γ為常量,為簡化變化過程通常取α=γ=0.9。

2.2K-means算法

K-means算法以K為參數(shù),把n個對象分為K個類,通過距離大小衡量聚類結果的優(yōu)劣,聚類的距離越近,說明其相似度就越大,聚類效果越好[9-10]。聚類結果中在同一類中的對象相似度較高,而不同聚類中的對象相似度較小,其基本思想是在數(shù)據(jù)空間中任意選擇K個數(shù)據(jù)對象作為初始聚類中心,根據(jù)其余數(shù)據(jù)與對應聚類中心的相似度進行聚類劃分,然后再計算新的聚類中心,不斷重復執(zhí)行這一聚類過程,即可得到最終類別劃分結果。聚類結果實際上是尋找數(shù)據(jù)集的劃分過程,各聚類本身盡可能的緊湊,而各聚類之間盡可能的分開。

3 云計算虛擬機智能調(diào)度模型

云計算數(shù)據(jù)中心有m個物理節(jié)點,有n個虛擬機發(fā)送調(diào)度請求,每個物理節(jié)點的資源向量分為已使用的資源向量和空閑的資源向量,物量節(jié)點上的資源是多維的,包括CPU、內(nèi)存、帶寬和I/O等,每個物理節(jié)點已使用的資源等于分配到該節(jié)點的虛擬機資源之和[11-12]。設虛擬機集合為V={VMi|1≤i≤n},物理節(jié)點集合為M={PMj|1≤j≤m},虛擬機調(diào)度的目的是利用最少的物理節(jié)點獲得最大的資源利用率,并且保證物理節(jié)點分配的資源利用率不超過其資源的最大容量,其可以建立如下的目標和約束條件:

(1)目標函數(shù):

式中:ui表示第i個物理節(jié)點是否使用;ui,j表示物理節(jié)點在第j維度的利用率;qi,k表示虛擬機對資源k的需求量。

4 基于K-means和蝙蝠算法的虛擬機調(diào)度方法

4.1調(diào)度思想

本文提出的虛擬機調(diào)度方法的基本思想是將每個虛擬機分配到距離最近的物理節(jié)點上,通過多次迭代,每個虛擬機都與所在的物理節(jié)點最近。在本文中虛擬機與物理節(jié)點的距離用資源相關系數(shù)表示,相關系數(shù)越小,說明虛擬機所需資源與物理節(jié)點擁有的資源之間具有更多的互補,在空閑資源滿足條件的情況下,將其分配到相關系數(shù)小的物理節(jié)點,有利于更充分地利用資源。虛擬資源與物理節(jié)點之間的相關性采用皮爾遜相關系數(shù)表示,取值范圍為[-1,1]:

將虛擬機與物理節(jié)點的距離定義為:

則虛擬機與物理節(jié)點的距離取值范圍為[0,1]。本文將虛擬機到不活躍物理節(jié)點的距離定義為最大,將其取為1,表示只有當虛擬機無法放置時才分配到新物理節(jié)點。

4.2蝙蝠編碼規(guī)則

蝙蝠算法采用實數(shù)據(jù)編碼,一個編碼對應一個可行解。本文采用m個物理節(jié)點為初始聚類中心,這樣聚類對應的物理節(jié)點限定了聚類的大小,簡化了對資源的考慮,并且確定的聚類減少了遷移的次數(shù),使資源的分配更加穩(wěn)定。

每個蝙蝠由m個聚類中心構成。設當前虛擬機分為m類,每個數(shù)據(jù)為d維特征,用于實數(shù)進行編碼,以K均值聚類中心作為尋優(yōu)變量,每個可行解是由m個聚類中心構成,由于解的維數(shù)是d維,這里可行解的位置是m×d維向量,可行解的編碼示例,其結構如下:

其中Zm1,Zm2,…,Zmd代表第m類的d維聚類中心。

4.3虛擬機調(diào)度步驟

(1)蝙蝠初始化:給定含有n個虛擬機對象的數(shù)據(jù)集T和物理節(jié)點數(shù)m,基于蝙蝠算法的K-means聚類方法,將每類的聚類中心作為蝙蝠的位置編碼,反復進行多次,生成N個初始蝙蝠。以上聚類中心方法執(zhí)行多次,生成含有n個蝙蝠的初始化種群XI(I=1,2,…,n),其目標函數(shù)為f(X),X=(x1,x2,…,xd)T。

(2)初始化蝙蝠種群的速度、脈沖頻率、脈沖響度和脈沖發(fā)射速率。

(3)根據(jù)適應度公式計算每個蝙蝠的適應度值,保留最優(yōu)解,并利用速度和位置公式對其他蝙蝠進行更新。

(4)產(chǎn)生一個隨機數(shù)rand1,if(rand1>ri),則對當前群體中最佳蝙蝠位置進行隨機擾動得到替換當前蝙蝠的位置。

(5)通過隨意飛行產(chǎn)生新解,產(chǎn)生隨機數(shù)rand2,if(rand2

(6)利用K-means方法對蝙蝠位置進行優(yōu)化,按照最近鄰近法原則確定對應的聚類劃分,并重新計算聚類中心,更新蝙蝠的適應度,根據(jù)適應度函數(shù)排列蝙蝠,找到當前最佳位置,如果達到結束條件(滿足條件的位置或最大迭代次數(shù))則聚類完成,轉到步驟(7),否則轉到步驟(3)。

(7)輸出最優(yōu)的蝙蝠位置對應的數(shù)據(jù)聚類結果。

5 仿真實驗

采用CloudSim 3.0云平臺軟件對本文提出的調(diào)度方法進行模擬仿真,CloudSim是澳大利亞墨爾本大學的網(wǎng)格實驗室和Gridbus項目宣布推出的云計算仿真軟件。本仿真實驗將虛擬機分別設置為100,200,300, 400,500,每個實例取10次運算的平均值,將所需物理節(jié)點數(shù)量和系統(tǒng)資源綜合利用率兩方面與K-means調(diào)度方法進行比較。

(1)物理節(jié)點數(shù)據(jù)對比

物理節(jié)點使用數(shù)量的對比情況見圖1,可以看出,本文調(diào)度方法的物量節(jié)點的數(shù)量比K-means調(diào)度方法平均降低12%左右,有效地減少了資金投入,物理機節(jié)點的能耗也降低,使數(shù)據(jù)中心具有高密度、低成本的優(yōu)點。主要原因是本文調(diào)度方法通過聚類方法將虛擬機分配到服務器中,并且將虛擬機到不活躍物理節(jié)點的距離設置為最大,表示只有當虛擬機無法放置時才分配到新的物理節(jié)點,這樣有效地提高了數(shù)據(jù)中心物理節(jié)點的分配密度,降低了物理節(jié)點的節(jié)點數(shù)量。

圖1 物理節(jié)點使用數(shù)量對比

(2)系統(tǒng)資源綜合利用率比較

系統(tǒng)資源綜合利用率對比見圖2,可以看出本文調(diào)度方法系統(tǒng)資源綜合利用率比K-means調(diào)度方法平均提高了11%左右,有效地提高了資源的綜合利用率。主要是因為本文調(diào)度方法在調(diào)度時考慮了虛擬機與服務器資源的互補性,有效地防止了一種資源過于飽和導致其他資源不能使用的情況,通過資源互補分配虛擬機有效地提高了資源的綜合利用率。

圖2 系統(tǒng)資源綜合利用率對比

6 結語

在開放的云計算環(huán)境下,合理的虛擬機調(diào)度策略有利于提高資源的綜合利用率,并有效地降低能耗。本文提出了一種云計算環(huán)境中使用的虛擬機智能調(diào)度方法,考慮了虛擬機與服務器資源的互補性,降低了云服務提供者的運營成本,仿真實驗表明該方法在節(jié)省物理節(jié)點和提高綜合資源利用率方面都取得了較好的效果,是一種可行的方法。

[1]莊威,桂小林,林建材,等.云環(huán)境下基于多屬性層次分析的虛擬機部署與調(diào)度策略[J].西安交通大學學報,2013,47(2):28-32.

[2]袁愛平,萬燦軍.云環(huán)境下基于改進遺傳算法的虛擬機調(diào)度策略[J].計算機應用,2014,34(2):357-359.

[3]暴錫文.一種云計算環(huán)境下基于Xen的虛擬機調(diào)度機制[J].計算機測量與控制,2014,22(10):3381-3384.

[4]肖鵬,劉洞波,屈喜龍.云計算中基于能耗比例模型的虛擬機調(diào)度算法[J].電子學報,2015,43(2):305-310.

[5]殷小龍,李君,萬明祥.云環(huán)境下基于改進NSGAII的虛擬機調(diào)度算法[J].計算機技術與發(fā)展,2014,24(8):71-75.

[6]李煜,馬良.新型全局優(yōu)化蝙蝠算法[J].計算機科學,2013,40(9):225-228.

[7]金偉健,王春枝.基于蝙蝠算法的云計算資源分配研究[J].計算機應用研究,2015,32(4):1184-1187.

[8]全雪姣,孟凡榮,王志曉.對K-mean初始聚類中心的優(yōu)化[J].計算機工程與設計,2011(8):165-167.

[9]吳夙慧,成穎,鄭彥寧,等.K-means算法研究綜述[J].現(xiàn)代圖書情報技術,2011,31(5):30-35.

[10]宋旭東,朱文輝,邱占芝.大數(shù)據(jù)K-Means聚類挖掘優(yōu)化算法[J].大連交通大學學報,2015,36(3):91-94.

[11]李喬,鄭嘯.云計算研究現(xiàn)狀綜述[J].計算機科學,2011,38(4):32-37.

[12]徐文忠,彭志平,左敬龍.基于遺傳算法的云計算資源調(diào)度策略研究[J].計算機測量與控制,2015,23(5):1653-1656.

Cloud computing virtual machine intelligent scheduling based on K-means and bat algorithm

WANG Yan
(Department of Education,Hanjiang Normal University,Shiyan 442000,China)

To solve the resource allocation imbalance problem existing in cloud computing virtual machine scheduling,a cloud computing virtual machine intelligent scheduling method based on K-means and bat algorithm is proposed.The method fully considers the complementarity of the physical node idle resource and the resource needed by virtual machine,selects the physical node as the initial clustering center,and uses the resource correlation to define the distance between them.The global searching ability of bat algorithm is used for iterative optimization to achieve the goal of reasonable virtual machine scheduling. The scheduling method was simulated.The experiment results show that the method has certain advantages in reducing the quantity of physical nodes and improving the resource utilization,and is an effective method.

K-means;bat algorithm;cloud computing;virtual machine;scheduling

TN911-34;TP391

A

1004-373X(2016)21-0021-03

10.16652/j.issn.1004-373x.2016.21.005

2015-12-02

湖北省教育科學“十二五”規(guī)劃項目(2012B453)

王焱(1980—),女,碩士,副教授。主要從事現(xiàn)代教育技術及信息管理等方面的教學與研究。

猜你喜歡
蝙蝠利用率聚類
2019年全國煤炭開采和洗選業(yè)產(chǎn)能利用率為70.6%
化肥利用率穩(wěn)步增長
淺議如何提高涉煙信息的利用率
基于DBSACN聚類算法的XML文檔聚類
基于高斯混合聚類的陣列干涉SAR三維成像
蝙蝠
板材利用率提高之研究
蝙蝠女
一種層次初始的聚類個數(shù)自適應的聚類方法研究
蝙蝠為什么倒掛著睡覺?