• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于遺傳蟻群算法的云計(jì)算任務(wù)調(diào)度優(yōu)化策略

      2014-04-29 20:27:08許樹堃
      商業(yè)2.0 2014年12期
      關(guān)鍵詞:蟻群算法云計(jì)算遺傳算法

      中圖分類號(hào):TP301 文獻(xiàn)標(biāo)識(shí)碼:A

      摘要:通過研究云計(jì)算的編程模型和多種分布式任務(wù)調(diào)度算法,提出一種改進(jìn)的遺傳蟻群算法,使用間接混合編碼方式讓每條染色體形成了單獨(dú)的任務(wù)調(diào)度方案,利用遺傳算法生成的優(yōu)化解,解決了蟻群算法的前期信息素聚集慢的問題,提高了云計(jì)算中任務(wù)調(diào)度的效率。實(shí)驗(yàn)結(jié)果證明,本算法取得了不錯(cuò)的的結(jié)果。

      關(guān)鍵詞:云計(jì)算;遺傳算法;蟻群算法

      一、引言

      近年來,互聯(lián)網(wǎng)行業(yè)快速發(fā)展,云計(jì)算作為一種新興的商業(yè)模式應(yīng)運(yùn)而生。云計(jì)算的特點(diǎn)是超大規(guī)模、虛擬化、高可靠性和通用性好等。目前,為人們所熟知的云平臺(tái)有Google云計(jì)算、Amazon彈性計(jì)算云EC2、百度云平臺(tái)和阿里巴巴云電子商務(wù)等[8]。

      云計(jì)算通過網(wǎng)絡(luò)將大型的計(jì)算任務(wù)拆分成較小的計(jì)算任務(wù),交給大型分布式服務(wù)器系統(tǒng)處理,經(jīng)過計(jì)算分析后將計(jì)算結(jié)果交給用戶。因?yàn)樵谠朴?jì)算的過程需要處理大量的任務(wù),如何保證這些大量的計(jì)算任務(wù)能夠正確、高效的被調(diào)度,成為了云計(jì)算之中的重點(diǎn)。本文采用遺傳蟻群混合算法(Generic Algorithm Ant Colony Optimization, GAACO),通過結(jié)合遺傳算法前期搜索速度快和蟻群算法后期搜索優(yōu)勢(shì)大的優(yōu)點(diǎn),對(duì)云計(jì)算中的任務(wù)調(diào)度進(jìn)行優(yōu)化,通過了仿真對(duì)比試驗(yàn),驗(yàn)證了良好的性能。

      二、算法

      1.云計(jì)算編程模型Map/Reduce

      隨著云計(jì)算的興起,越來越多的企業(yè)提出了自己的“云計(jì)劃”,大多數(shù)企業(yè)都以Map/Reduce編程模型的思想來開發(fā)自己的云,Map/Reduce特別適合產(chǎn)生和處理大規(guī)模的數(shù)據(jù)集。Map/Reduce首先在Map階段通過一個(gè)Map/Reduce函數(shù)把一個(gè)大型的計(jì)算任務(wù)分割成N個(gè)較小的子任務(wù)給多臺(tái)工作主機(jī)并行執(zhí)行。然后我們把在Map階段生成的中間文件在Reduce階段匯總分析處理,輸出M個(gè)(M與Reduce任務(wù)數(shù)量一致)輸出文件。

      2.染色體的編碼和解碼

      根據(jù)Map/Reduce編程模型的特點(diǎn),在遺傳算法執(zhí)行階段本文針對(duì)云環(huán)境中的資源和在資源中對(duì)任務(wù)的分配制定了一種間接編碼方式(worker-task-subtask),利用隨機(jī)函數(shù)隨機(jī)生成一定數(shù)量的種群。每一個(gè)染色體都是對(duì)任務(wù)的子任務(wù)在資源中的分配方式的抽象。假設(shè)有m個(gè)任務(wù),每個(gè)任務(wù)i的子任務(wù)數(shù)是subTask(i),子任務(wù)的總數(shù)n為:

      第i個(gè)任務(wù)中第j個(gè)子任務(wù)的編號(hào)是:

      假設(shè)云環(huán)境中資源總數(shù)為w,那么染色體的長(zhǎng)度為w+n。前w(1,2,…w)個(gè)整數(shù)代表資源(worker),w+1到w+n代表分配給資源執(zhí)行的子任務(wù)(subtask)。本文規(guī)定任務(wù)隊(duì)列中的子任務(wù)分配到當(dāng)前任務(wù)執(zhí)行總時(shí)間最少的資源中。

      假設(shè)w=3,m = 3, subTask (i) = i+1(i的范圍是1到3),n的總數(shù)為9。那么對(duì)染色體實(shí)例{1,4,5,9,2,6,12,3,7,8,10,11}做出如下解釋:任務(wù)1中的包含編號(hào)為1,2的子任務(wù),任務(wù)2中包含編號(hào)為3,4,5,的子任務(wù),任務(wù)3中包含編號(hào)為6,7,8,9的子任務(wù)。子任務(wù)1,2,6運(yùn)行在資源1中,子任務(wù)3,9運(yùn)行在資源2中,子任務(wù)4,5,7,8運(yùn)行在資源3中。對(duì)染色體的解碼能得到各個(gè)task的subTask在worker上的分布情況和各個(gè)worker上的任務(wù)執(zhí)行序列。對(duì)上述染色體實(shí)例的解碼為

      Worker(1):[1,2,6], Worker(2):[3,9], Worker(3):[4,5,7,8]

      通過解碼后的序列和ETC(Expect Time to Compute)矩陣(ETC[i,j]代表序號(hào)為i的subTask在第j個(gè)資源上執(zhí)行完成所需要的時(shí)間)可以計(jì)算出每個(gè)資源的任務(wù)隊(duì)列中所有nSub個(gè)子任務(wù)的執(zhí)行時(shí)間:

      則完成所有任務(wù)的總時(shí)間函數(shù)為:

      假設(shè)第t個(gè)任務(wù)一共有s個(gè)子任務(wù),第t個(gè)任務(wù)的完成時(shí)間為在w個(gè)資源中每個(gè)資源執(zhí)行t的子任務(wù)的時(shí)間最大值:

      任務(wù)的平均時(shí)間為:

      nTask表示任務(wù)數(shù)。

      3.遺傳算法操作

      3.1選取適應(yīng)度函數(shù)

      適應(yīng)度函數(shù)用來度量種群之中個(gè)體在優(yōu)化計(jì)算中有可能達(dá)到或者接近最優(yōu)解的程度,它關(guān)系著算法的效率的高低。本文在選取適應(yīng)度函數(shù)時(shí),考慮到了在云計(jì)算中需要為多個(gè)用戶執(zhí)行不同的任務(wù),在考慮到執(zhí)行所有任務(wù)的效率的同時(shí)也要保證每個(gè)任務(wù)的執(zhí)行效率在一個(gè)用戶相對(duì)滿意的范圍之內(nèi)。本文選用了所有任務(wù)(task)執(zhí)行的平均時(shí)間函數(shù)avgTime作為主要衡量標(biāo)準(zhǔn),并結(jié)合使用完所有任務(wù)完成總時(shí)間函數(shù)FTime來構(gòu)造適應(yīng)度函數(shù):

      在這里我們?nèi)=0.7。在云計(jì)算中,所有任務(wù)執(zhí)行的平均時(shí)間和任務(wù)完成的總時(shí)間不成正比,所以我們利用任務(wù)完成的總時(shí)間的平均值來調(diào)整平均任務(wù)執(zhí)行時(shí)間的值,u就是調(diào)整系數(shù)。

      3.2交叉與變異操作

      本文在這里先進(jìn)行普通的雙點(diǎn)交叉處理,再進(jìn)行維持原有訪問順序和編碼格式的修改,并同時(shí)采用均勻交換變異方法對(duì)個(gè)體進(jìn)行變異處理。利用隨機(jī)數(shù)生成函數(shù)生成r∈[0, 1],若r小于交叉概率x1,則進(jìn)行交叉操作,否則什么也不做。與交叉類似,若r小于變異概率x2,則進(jìn)行變異操作,否則保持原狀。交叉和變異操作完成之后,比較生成的新個(gè)體的適應(yīng)度函數(shù)值,留下新個(gè)體中適應(yīng)度增加的個(gè)體,拋棄適應(yīng)度降低的個(gè)體。經(jīng)過多次迭代,生成若干組優(yōu)化解,為蟻群算法做準(zhǔn)備。

      三、蟻群算法與遺傳算法的融合

      蟻群算法是根據(jù)蟻群集體尋找路徑的行為提出的仿生進(jìn)化算法,它具有提供正反饋,適合并行計(jì)算等特點(diǎn),所以蟻群算法很適合來優(yōu)化云計(jì)算中的并行任務(wù)調(diào)度效率。本文先采用遺傳算法對(duì)Map/Reduce模型上的任務(wù)進(jìn)行迭代調(diào)度,得到一些較優(yōu)解,減少蟻群算法前期階段積累信息素占用的時(shí)間。另外,蟻群算法在運(yùn)行后期的高效率也能彌補(bǔ)遺傳算法后期容易造成大量冗余迭代的缺點(diǎn)。

      1.遺傳算法與蟻群算法的銜接時(shí)機(jī)選擇

      遺傳算法的后期易產(chǎn)生冗余迭代,在遺傳算法運(yùn)行合適的迭代次數(shù)后融合蟻群算法會(huì)優(yōu)化算法的效率。在選擇遺傳算法和蟻群算法的銜接時(shí)機(jī)時(shí),本文在這里借鑒了一種動(dòng)態(tài)算法,首先設(shè)定遺傳算法的最小迭代次數(shù)Gmin和最大迭代次數(shù)Gmax,并規(guī)定迭代后必須達(dá)到的子代種群進(jìn)化率P,若迭代Gmin次后連續(xù)X代(0

      2.蟻群算法的信息素設(shè)置

      信息素更新模型:τjnew=ρ·τjold + Δτj,其中ρ是信息揮發(fā)系數(shù)(0≤ρ≤1)。在搜索過程中,蟻群算法根據(jù)每個(gè)資源上的信息量及啟發(fā)信息來計(jì)算任務(wù)在t時(shí)刻分配到每個(gè)資源上的概率:

      其中α是信息啟發(fā)因子,β是期望啟發(fā)因子,表示資源能見度的相對(duì)重要性。η作為啟發(fā)函數(shù),反映了任務(wù)分配到指定資源上的期望程度。

      四、小結(jié)

      本文根據(jù)云計(jì)算模型的特點(diǎn),優(yōu)化了遺傳算法的編碼方案;并改進(jìn)了遺傳蟻群算法的融合方法,讓兩者融合點(diǎn)的定位更加動(dòng)態(tài)化。通過讓云計(jì)算模型上各個(gè)資源節(jié)點(diǎn)上的負(fù)載更加均衡,任務(wù)調(diào)度更加高效。

      參考文獻(xiàn):

      [1]段海濱. 蟻群算法原理及其應(yīng)用[ M ]. 北京: 科學(xué)出版社, 2 005: 385- 390.

      [2]王小平, 曹立明. 遺傳算法 [ M ]. 西安: 西安交通大學(xué)出版社,2002 .

      [3]丁建立,陳增強(qiáng),袁著址. 遺傳算法與螞蟻算法的融合[J].計(jì)算機(jī)研究與發(fā)展1999,36 (10):1240-1245.

      [4]康嵐蘭.基于遺傳算法的混合蟻群算法研究[D].江西理工大學(xué)工學(xué)碩士學(xué)位論文.2008.

      [5]彭建,于曉翠. 基于遺傳算法與蟻群算法動(dòng)態(tài)融合的網(wǎng)格任務(wù)調(diào)度[J].計(jì)算機(jī)應(yīng)用與軟件,2009,26(7):121-124.

      [6]吳吉義,平玲娣,潘雪增,等.云計(jì)算: 從概念到平臺(tái)[J]. 電信科學(xué),2009,25( 12) :23-30.

      [7]田文洪,趙勇.云計(jì)算—資源調(diào)度管理[M].北京:國防工業(yè)出版社,2011.

      [8]張為民,唐劍鋒,羅治國,錢嶺.云計(jì)算:深刻改變未來[M].北京:科學(xué)出版社,2009.

      [9]房秉毅,張?jiān)朴?,程?云計(jì)算國內(nèi)外發(fā)展現(xiàn)狀分析[J].電信科學(xué).2010,8A:1-5.

      [10]王慶波,金涬,何樂,等.虛擬化與云計(jì)算[M]. 北京:電子工業(yè)出版社,2010.

      作者簡(jiǎn)介:

      許樹堃(1991—),男,漢族,內(nèi)蒙古呼倫貝爾人,工學(xué)碩士,單位:大連交通大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)專業(yè),研究方向:計(jì)算機(jī)管理信息系統(tǒng)。

      猜你喜歡
      蟻群算法云計(jì)算遺傳算法
      基于自適應(yīng)遺傳算法的CSAMT一維反演
      一種基于遺傳算法的聚類分析方法在DNA序列比較中的應(yīng)用
      基于遺傳算法和LS-SVM的財(cái)務(wù)危機(jī)預(yù)測(cè)
      云計(jì)算中虛擬機(jī)放置多目標(biāo)優(yōu)化
      基于蟻群算法的一種無人機(jī)二維航跡規(guī)劃方法研究
      蟻群算法基本原理及綜述
      一種多項(xiàng)目調(diào)度的改進(jìn)蟻群算法研究
      科技視界(2016年18期)2016-11-03 00:32:24
      基于云計(jì)算的移動(dòng)學(xué)習(xí)平臺(tái)的設(shè)計(jì)
      實(shí)驗(yàn)云:理論教學(xué)與實(shí)驗(yàn)教學(xué)深度融合的助推器
      云計(jì)算中的存儲(chǔ)虛擬化技術(shù)應(yīng)用
      科技視界(2016年20期)2016-09-29 13:34:06
      潞城市| 崇义县| 台东县| 乌兰察布市| 庄浪县| 略阳县| 嵊州市| 石台县| 延长县| 唐山市| 新乐市| 易门县| 五大连池市| 新绛县| 江达县| 广灵县| 永嘉县| 务川| 玉溪市| 黑龙江省| 达拉特旗| 颍上县| 育儿| 会宁县| 望都县| 容城县| 大港区| 泽库县| 永善县| 扶绥县| 连江县| 临沭县| 巴彦县| 土默特左旗| 辽阳县| 习水县| 英德市| 肥西县| 定州市| 高陵县| 高阳县|