專利名稱:一種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法
技術領域:
本發(fā)明涉及網(wǎng)格計算領域,特別是涉及ー種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法。
背景技術:
隨著網(wǎng)絡技術的發(fā)展,人們工作需要的資源越來越多,并且復雜多樣,如何充分地利用資源是我們需要亟待研究的問題,網(wǎng)格就是充分利用資源的ー種技木。
網(wǎng)格是繼萬維網(wǎng)之后出現(xiàn)的ー種新型的網(wǎng)絡計算平臺,它為用戶提供了ー種全面共享包括網(wǎng)頁在內(nèi)的各種資源的基礎設施。而計算網(wǎng)格是目前研究最多和實踐性最強的一種網(wǎng)格,它主要是針對前沿科學研究和大型行業(yè)應用,可以整合和共享地理上分布的計算資源。作為ー種為前沿科學研究、大型應用而設計的技木,計算網(wǎng)格能夠很好的支持高性能需求和分布特性。網(wǎng)格強大的計算能力是通過網(wǎng)格上任務的運行性能來體現(xiàn)。但是由于網(wǎng)格環(huán)境的動態(tài)性、分布性以及異構性等特點[I],網(wǎng)格任務調(diào)度面臨著巨大的挑戰(zhàn)。圖I是網(wǎng)格任務調(diào)度模型。用戶提交待調(diào)度任務序列給任務提交者,任務提交者中包含任務-資源映射機制,通過這個機制完成任務-資源的匹配,任務-資源映射機制中包含任務管理機制和資源信息管理機制,它們分別提供了任務和資源的描述信息,任務-資源匹配完成后,通過任務提交和傳輸控制機制將任務傳輸給遠程的節(jié)點,任務提交和傳輸控制機制中的GRAM(Globus Resource Allocation Manager)負責網(wǎng)格資源的分配管理,而GASS (Globus Access to Secondary Storage)負責將調(diào)度的結果返回給用戶。遠程節(jié)點在接收任務提交和傳輸控制機制提交的任務序列前,要用Globus GateKeeper進行相應的認證,若認證通過,遠程節(jié)點接受該任務序列,并使用Globus任務管理者在本節(jié)點上完成任務的調(diào)度;若果認證未通過,提交的任務和未通過的信息會傳遞給任務提交和傳輸控制機制,任務提交和傳輸控制機制會重新查找新的遠程節(jié)點提交任務。任務調(diào)度完成后,通過GASS將此次任務調(diào)度的結果返回給任務提交者。任務和資源的匹配是調(diào)度算法必須完成的。針對某ー計算子任務,從網(wǎng)格系統(tǒng)中發(fā)現(xiàn)滿足該任務執(zhí)行條件的可用資源集,滿足該任務執(zhí)行條件的可用資源可能不止ー個,同樣是滿足條件的資源,但是該任務在這些資源上執(zhí)行所獲得的性能、執(zhí)行代價是不一樣的。任務調(diào)度首先會根據(jù)任務的需求,選擇滿足條件的資源,然后從滿足條件的資源中根據(jù)選擇策略和定義的性能指標選擇最適的資源分配給該任務。任務獲得滿足條件的資源后,可以在資源上執(zhí)行,并且執(zhí)行的過程處在資源本地的任務管理機制的監(jiān)管下,任務執(zhí)行完畢后把占用的計算資源歸還給網(wǎng)格管理機構,網(wǎng)格任務管理模塊把任務執(zhí)行的結果和相關的信息告訴給任務提交者,從而實現(xiàn)計算網(wǎng)格共享地理上分布的資源協(xié)同完成某一任務的目標。網(wǎng)格任務調(diào)度是ー種NP-hard問題。近年來研究表明,對于此類NP-hard問題可能不存在既完整嚴格又不太慢的求解算法,因此,目前求解此類問題的方法多為近似或啟發(fā)式算法。這些算法本質(zhì)上可以分為兩類隨機算法和確定性算法。遺傳算法、模擬退火算法[2] [3]、粒子群算法[4]、粗粒度并行遺傳算法[5]等都屬于隨機算法,這類算法的本質(zhì)是設計一種高效的捜索算法,具有捜索整個解空間而不至于陷于局部最優(yōu)的能力。梯度下降法、分支限界法[6]等屬于確定性算法,其關鍵在于確定一種規(guī)則,使得在允許的時間范圍內(nèi)求解問題的近似最優(yōu)解。確定性算法與隨機算法相比較,其搜索速度快、精確度高,但是普適性不強,且易陷入局部極小點;隨機算法具有全局捜索的優(yōu)點,且適應面廣,但是缺乏有效的局部捜索機制,且收斂速度慢。分析上述兩種算法的優(yōu)缺點可知,確定性算法的普適性不強,不宣應用在網(wǎng)格任務調(diào)度中,而隨機算法缺乏有效的局部捜索機制。
發(fā)明內(nèi)容
本發(fā)明主要解決的技術問題是提供一種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法,能夠提供一種新的多點交叉方法,并采用精英策略保持種群最優(yōu)解的遞增性;在變異階段采用采用ー種基于任務遷移的定向變異方法,防止種群的退化,同時引進統(tǒng)計學中“移動平均”的原理,預測種群進化若干代后適應度值的變化趨勢。提出的方法性能高,且計算能力 和收斂速度優(yōu)于傳統(tǒng)隨機算法。為解決上述技術問題,本發(fā)明采用的一個技術方案是提供一種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法,包括以下步驟步驟I :任務提交者輸入待調(diào)度任務集合、可用的計算資源集合、任務在計算資源上的執(zhí)行時間集合、最大迭代次數(shù)、閾值δ和熵值ε ;步驟2 :任務調(diào)度者將任務分配給資源執(zhí)行的調(diào)度問題表示在優(yōu)化目標、約束條件下成標準的最小值求解問題;步驟3 :用啟發(fā)式粗粒度并行算法的迭代過程求解網(wǎng)格任務調(diào)度問題;步驟4 :算法結束,輸出任務調(diào)度結果。優(yōu)選的是,所述步驟2中優(yōu)化目標為調(diào)度策略中所有任務執(zhí)行完畢花費時間最小化,即所有任務執(zhí)行完畢花費的時間最短;所述約束條件為任務的數(shù)目要大于計算資源的數(shù)目,任務集合中的任務都是元任務,即每個任務都不可再拆分為更小的子任務,并且每個任務可以利用任何資源進行計算,但每個資源在同一時間只能處理ー個任務,并且任務未完成計算前不允許中斷。優(yōu)選的是,所述步驟3所述用啟發(fā)式粗粒度并行算法求解網(wǎng)格任務調(diào)度問題包含ー個迭代過程,其迭代過程步驟如下步驟3. I :對啟發(fā)式粗粒度并行算法的初始化;步驟3. 2:算法迭代開始,如果熵值Et小于給定的熵值ε,迭代結束,輸出網(wǎng)格任務調(diào)度的結果;如果熵值Et大于給定的熵值ε,t = t+1,進入下一歩;步驟3. 3 :選擇操作,用期望值法來確定參與遺傳操作的個體;步驟3. 4:交叉操作,采用多點交叉算子,定義掩碼樣本時,保證樣本與模式中確定位置相同的位置上的值為1,其余位置上的值隨即生成,同時采用精英策略;步驟3. 5 :變異操作,采用基于任務遷移的定向變異方法,用使變異位對應的子任務執(zhí)行時間最短的資源編號替代變異位上的基因值;步驟3. 6 :評估子種群個體適應度值的方差S和熵值Et,t為當前代數(shù);
步驟3. 7 :若S大于δ,轉到步驟3. 2 ;如果S小于δ,進入下ー步;步驟3. 8 :子種群遷移,令遷移規(guī)模為2,用子種群中最優(yōu)個體替換相鄰子種群中最差的兩個個體,值得注意的是,如果這兩個個體比相鄰子種群中最差的兩個還要差的話,則不予替換,然后轉到步驟3. 2。優(yōu)選的是,步驟3. I所述啟發(fā)式粗粒度并行算法初始化通過如下步驟進行步驟3. I. I :染色體編碼,采用ー維整數(shù)間接編碼,對任務占有的資源號進行編碼;步驟3. I. 2 :適應度函數(shù)的設計,算法根據(jù)適應度值的大小來決定個體進行遺傳操作的可能性,適應度值越大,個體參與遺傳操作的可能性越大,因而將適應度函數(shù)設計為 任務執(zhí)行時間的倒數(shù);步驟3. I. 3 :子種群的劃分,采用基于小生境遺傳算法的模糊聚類算法劃分種群,生成若干個子種群,使這些子種群獨立并行地進行遺傳操作。本發(fā)明的有益效果是本發(fā)明ー種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法具有以下優(yōu)點(I)本方法具有良好的伸縮性。運用種群適應度方差來平衡收斂速度和全局捜索能力之間的關系,以及利用熵值的大小來判斷種群是否得到最優(yōu)解。無論是單目標優(yōu)化問題還是多目標優(yōu)化問題,種群收斂時,熵值均很小。(2)實驗表明,本方法可行性高,其收斂速度和尋優(yōu)空間,以及計算結果的精度上都優(yōu)于傳統(tǒng)并行遺傳算法,可用于元任務網(wǎng)格任務調(diào)度中。
圖I是現(xiàn)有技術中網(wǎng)格任務調(diào)度方法模型流程圖;圖2是本發(fā)明一種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法的流程圖;圖3是本發(fā)明一種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法染色體編碼結構圖;圖4為傳統(tǒng)粗粒度并行算法適應度-種群進化代數(shù)變化曲線圖5為本發(fā)明是本發(fā)明一種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法適應度-種群進化代數(shù)變化曲線;圖6為本發(fā)明實施中本發(fā)明是本發(fā)明ー種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法與傳統(tǒng)粗粒度并行算法的對比;圖7為本發(fā)明是本發(fā)明一種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法實施中適應度值方差的變化情況。
具體實施例方式下面結合附圖對本發(fā)明的較佳實施例進行詳細闡述,以使本發(fā)明的優(yōu)點和特征能更易于被本領域技術人員理解,從而對本發(fā)明的保護范圍做出更為清楚明確的界定。請參閱圖2,本發(fā)明實施例包括一種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法提出的動態(tài)確定種群遷移與否的啟發(fā)式粗粒度并行算法包括下述步驟,流程如下所示步驟I :任務提交者輸入待調(diào)度任務集合、可用的計算資源集合、任務在計算資源上的執(zhí)行時間、最大迭代次數(shù)和閾值5 ;步驟2 :任務調(diào)度者將任務分配給資源執(zhí)行的調(diào)度問題在優(yōu)化目標、約束條件下表示成標準的最小值求解問題;本發(fā)明方法與目前大多數(shù)任務調(diào)度算法一祥,都是以彼此間沒有依賴關系的元任務組為研究対象,即任務之間無任何通信或者數(shù)據(jù)往來,并且任務都不可再分。任務調(diào)度的實質(zhì)是將η個任務分配給m個計算資源,調(diào)整任務和資源之間的映射關系以使所有計算任務完成的時間最短。假設任務集合為T = {Tl,T2,T3,-, Tj,…,Tn} (Tj表示第j個子任務, I彡j彡n),資源集合為R = {Rl,R2,R3,…,Ri,.··,Rm} (Ri表示第i個計算資源,I彡j彡η),用ー個n*m的矩陣C[n, m]來表示任務的執(zhí)行時間(C[i, j]表示任務Ti在資源Rj上的執(zhí)行時間),若C(p)表示在調(diào)度策略P下所有任務執(zhí)行完畢花費的時間,則C(p) = max (Cp (Ri))(I)其中,Cp(Ri)為在調(diào)度策略P下,分配到資源i上的所有任務執(zhí)行完畢花費的時間。網(wǎng)格任務調(diào)度的目的就是在所有的調(diào)度策略中找到某一使得C(p)最小的調(diào)度策略,用C表不最小的調(diào)度時間,即C = min (C(p))(2)步驟3 :用啟發(fā)式粗粒度并行算法的迭代過程求解網(wǎng)格任務調(diào)度問題。其中迭代過程,包括如下步驟步驟3. I :對啟發(fā)式粗粒度并行算法的初始化;該步驟初始化染色體編碼、適應度函數(shù)設計以及子種群的劃分。如圖3所示,染色體編碼方法有多種,根據(jù)上面對調(diào)度問題的分析,采用ー維整數(shù)間接編碼,對任務占有的資源號進行編碼,染色體的結構,其中j為染色體的基因位,同時也代表第j個任務,I ^ j ;i代表任務j占有的資源號,I ^ i 假設有6個子任務和3個計算資源,任務編號和資源編碼分別為別為1-6和1-3,圖3表示的染色體結構的意思是子任務1、2、3、4、5、6分別占有的資源號為2、3、1、3、2、1。該方法中根據(jù)個體適應度值的大小來選擇個體進行遺傳操作的可能性,適應度值越大,個體被選中的概率越大;反之,適應度值越小,個體被選中參與遺傳操作的概率則越小。而任務調(diào)度的目標是使C(p)最小,即C(p)越小,調(diào)度策略被選擇的概率越大,因此,我們將適應度函數(shù)定義為fp(i) = 1/min (max (Cp (Ri))) I く i く m(3)對于標準的并行算法而言,子種群的分布及其捜索空間的大小直接影響著算法的收斂速度?,F(xiàn)有隨機方法產(chǎn)生的子種群不易分散到整個解空間,這樣會降低算法的收斂性能。因此,采用基于小生境遺傳算法的模糊聚類算法劃分種群,生成若干個子種群,使這些子種群獨立并行地進行遺傳操作。采用基于小生境遺傳算法的模糊聚類算法[7]來劃分子種群。隨機生成c個個體,以這c個個體作為聚類的中心,在解空間進行聚類,將初始種群劃分為c個模糊子集,即c個子種群。將這c個模糊子集記為SI,S2,S3,……,Sc,然后使c個子種群獨立并行的進行下述的遺傳操作。基于此方法的子種群的劃分不僅滿足初始種群劃分的原則[8],使子種群在捜索空間內(nèi)盡量分散,還可以提高算法的收斂速度,有效地避免早熟收斂現(xiàn)象的出現(xiàn)。步驟3.2 :算法迭代開始,如果熵值Et小于給定的熵值ε,迭代結束,輸出網(wǎng)格任務調(diào)度的結果;如果熵值Et大于給定的熵值ε,t = t+1,進入下一歩。雖然方差可以反映解群的空間偏移程度,但還不能完全刻畫解群的多祥性。一般初始解群的方差和熵都很大,單目標優(yōu)化問題中當解群的方差和熵都很小時,解群收斂;多目標優(yōu)化問題收斂時,解群方差很大,而熵很小??梢?,無論是單目標優(yōu)化問題還是多目標優(yōu)化問題,當解群熵值很小時,采用一定的多祥性保持策略均能得到均勻分布的Pareto最優(yōu)解集,因而在給定的最大迭代次數(shù)內(nèi),以熵值的大小判斷算法是否得到最優(yōu)解。步驟3. 3:選擇操作。有實驗證明[9],采用期望值法的遺傳算法在離線性和在線性方面的性能都高于采用另外兩種方法的遺傳算法性能,因此,本文采用期望值法。用下面的方法判斷個體是否被選擇參與遺產(chǎn)操作(I)計算子種群中每個個體在下一代生存的期望數(shù)目M(n為子種群的規(guī)模)
權利要求
1.一種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法,其特征在于包括以下步驟 步驟I:任務提交者輸入待調(diào)度任務集合、可用的計算資源集合、任務在計算資源上的執(zhí)行時間集合、最大迭代次數(shù)、閾值S和熵值e ; 步驟2 :任務調(diào)度者將任務分配給資源執(zhí)行的調(diào)度問題表示在優(yōu)化目標、約束條件下成標準的最小值求解問題; 步驟3 :用啟發(fā)式粗粒度并行算法的迭代過程求解網(wǎng)格任務調(diào)度問題; 步驟4 :算法結束,輸出任務調(diào)度結果。
2.如權利要求I所述的啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法,其特征在于所述步驟2中優(yōu)化目標為調(diào)度策略中所有任務執(zhí)行完畢花費時間最小化,即所有任務執(zhí)行完畢花費的時間最短;所述約束條件為任務的數(shù)目要大于計算資源的數(shù)目,任務集合中的任務都是元 任務,即每個任務都不可再拆分為更小的子任務,并且每個任務可以利用任何資源進行計算,但每個資源在同一時間只能處理一個任務,并且任務未完成計算前不允許中斷。
3.如權利要求I所述的啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法,其特征在于所述步驟3所述用啟發(fā)式粗粒度并行方法求解網(wǎng)格任務調(diào)度問題包含一個迭代過程,其迭代過程步驟如下 步驟3. I :對啟發(fā)式粗粒度并行算法的初始化; 步驟3. 2 :算法迭代開始,如果熵值Et小于給定的熵值e,迭代結束,輸出網(wǎng)格任務調(diào)度的結果;如果熵值Et大于給定的熵值e,t=t+l,進入下一步; 步驟3. 3 :選擇操作,用期望值法來確定參與遺傳操作的個體; 步驟3. 4:交叉操作,采用多點交叉算子,定義掩碼樣本時,保證樣本與模式中確定位置相同的位置上的值為1,其余位置上的值隨即生成,同時采用精英策略; 步驟3. 5 :變異操作,采用基于任務遷移的定向變異方法,用使變異位對應的子任務執(zhí)行時間最短的資源編號替代變異位上的基因值; 步驟3. 6 :評估子種群個體適應度值的方差S和熵值Et,t為當前代數(shù); 步驟3. 7 :若S大于5,轉到步驟3. 2 ;如果S小于5,進入下一步; 步驟3. 8 :子種群遷移,令遷移規(guī)模為2,用子種群中最優(yōu)個體替換相鄰子種群中最差的兩個個體,如果這兩個個體比相鄰子種群中最差的兩個還要差的話,則不予替換,然后轉到步驟3. 2。
4.如權利要求3所述的啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法,其特征在于步驟3.I所述啟發(fā)式粗粒度并行算法初始化通過如下步驟進行 步驟3. I. I :染色體編碼,采用一維整數(shù)間接編碼,對任務占有的資源號進行編碼;步驟3. I. 2 :適應度函數(shù)的設計,算法根據(jù)適應度值的大小來決定個體進行遺傳操作的可能性,適應度值越大,個體參與遺傳操作的可能性越大,因而將適應度函數(shù)設計為任務執(zhí)行時間的倒數(shù); 步驟3. I. 3 :子種群的劃分,采用基于小生境遺傳算法的模糊聚類算法劃分種群,生成若干個子種群,使這些子種群獨立并行地進行遺傳操作。
全文摘要
本發(fā)明公開了一種啟發(fā)式粗粒度并行網(wǎng)格任務調(diào)度方法,其特征在于包括以下步驟步驟1任務提交者輸入待調(diào)度任務集合、可用的計算資源集合、任務在計算資源上的執(zhí)行時間集合、最大迭代次數(shù)、閾值δ和熵值ε;步驟2任務調(diào)度者將任務分配給資源執(zhí)行的調(diào)度問題表示在優(yōu)化目標、約束條件下成標準的最小值求解問題;步驟3用啟發(fā)式粗粒度并行方法的迭代過程求解網(wǎng)格任務調(diào)度問題;步驟4算法結束,輸出任務調(diào)度結果。通過上述方式,本發(fā)明能夠提供一種新的多點交叉方法,并采用精英策略保持種群最優(yōu)解的遞增性;在變異階段采用采用一種基于任務遷移的定向變異方法,防止種群的退化,提出的方法性能高,且計算能力和收斂速度優(yōu)于傳統(tǒng)隨機算法。
文檔編號G06F9/50GK102662743SQ201210108008
公開日2012年9月12日 申請日期2012年4月13日 優(yōu)先權日2012年4月13日
發(fā)明者劉芳芳, 薛勝軍 申請人:南京信息工程大學