林逍
摘 要:通信網(wǎng)絡(luò)的發(fā)展將網(wǎng)絡(luò)的維護(hù)和操作變得復(fù)雜化,在網(wǎng)絡(luò)管理中減少人工操作有利于提高效率,規(guī)避錯(cuò)誤。隨著人工智能技術(shù)的發(fā)展和網(wǎng)絡(luò)設(shè)備的智能化,網(wǎng)絡(luò)管理的智能化將逐漸成為可能。
本文首先提出網(wǎng)絡(luò)管理系統(tǒng)智能化需求點(diǎn):動(dòng)態(tài)資源分配。要實(shí)現(xiàn)的是對(duì)信道資源的合理分配,以降低全網(wǎng)小站申請(qǐng)、占用資源的平均時(shí)間。
本文對(duì)動(dòng)態(tài)資源分配問(wèn)題的模型進(jìn)行抽象,據(jù)此仿真搭建了神經(jīng)網(wǎng)絡(luò),并以強(qiáng)化學(xué)習(xí)算法進(jìn)行訓(xùn)練,與傳統(tǒng)的先到先分配、短任務(wù)優(yōu)先分配、小任務(wù)優(yōu)先分配、隨機(jī)分配等算法共同進(jìn)行測(cè)試,對(duì)所產(chǎn)生的結(jié)果進(jìn)行對(duì)比分析。
關(guān)鍵詞:網(wǎng)絡(luò)管理系統(tǒng),機(jī)器學(xué)習(xí),動(dòng)態(tài)資源分配
1 需求分析
對(duì)于網(wǎng)絡(luò)管理系統(tǒng),智能化就是指那些具有能動(dòng)地滿足網(wǎng)絡(luò)管理員的各種需求的屬性。
為保證通信系統(tǒng)長(zhǎng)期可靠地服務(wù),極為關(guān)鍵的一點(diǎn)功能需求有:對(duì)信道資源進(jìn)行高效地分配管理。針對(duì)功能需求,本文希望網(wǎng)管能夠能在其中能動(dòng)地實(shí)現(xiàn)一些智能化。
資源分配的本質(zhì)是資源的有限性,目標(biāo)是使得整體價(jià)值最大。資源的目標(biāo)有時(shí)候是互斥的,比如一項(xiàng)決定對(duì)A目標(biāo)實(shí)現(xiàn)是有利的,而對(duì)B目標(biāo)達(dá)成是有害的,所以需要對(duì)互斥的目標(biāo)設(shè)定權(quán)重,從而決定是否要采取這項(xiàng)決定。
目前在網(wǎng)絡(luò)管理系統(tǒng)中,可能存在約上千個(gè)終端小站,當(dāng)有需要時(shí),這些小站將通過(guò)返向鏈路傳輸文件,這就需要向中心站申請(qǐng)信道資源。而中心站所能分配的信道資源是有限的,這就不可避免地會(huì)存在傳送任務(wù)需要排隊(duì)的問(wèn)題。
為了使得在最短時(shí)間內(nèi),完成所有終端小站的文件傳輸任務(wù),分配算法的選擇至關(guān)重要。目前常見(jiàn)的資源分配算法有先到先分配算法(First Come First Served,F(xiàn)CFS)、最短任務(wù)優(yōu)先分配算法(Shortest Job First,SJF)、最小任務(wù)優(yōu)先分配算法(Minimum Job First,MJF)及隨機(jī)分配算法(Random)。
顯然,在何時(shí)給哪個(gè)任務(wù)分配資源,這是一個(gè)非常典型的智能決策問(wèn)題,非常適合采用強(qiáng)化學(xué)習(xí)方法進(jìn)行。
2 模型設(shè)計(jì)
在本實(shí)驗(yàn)中,本文將動(dòng)態(tài)資源分配問(wèn)題抽象為以下模型:
已知網(wǎng)絡(luò)管理系統(tǒng)中的各個(gè)終端小站,在有需求會(huì)向中心站申請(qǐng)資源傳送文件,中心站所能分配的信道資源是有限的。將小站的文件傳送申請(qǐng)稱作一個(gè)任務(wù),將中心站可分配的信道資源稱為資源池。當(dāng)任務(wù)申請(qǐng)到達(dá)中心站時(shí),若資源池已滿,則任務(wù)進(jìn)入等待池。設(shè)定任務(wù)在每一個(gè)離散的時(shí)間步長(zhǎng)t到達(dá)。智能體將在每一個(gè)時(shí)間步長(zhǎng)選擇一個(gè)或多個(gè)等待的任務(wù)進(jìn)行分配。
假設(shè)每個(gè)任務(wù)的信道資源需求在它到達(dá)時(shí)是已知的,更具體地,對(duì)每個(gè)任務(wù)j,其所需要的資源是rj,它的任務(wù)持續(xù)時(shí)間,也就是所需要占用信道的時(shí)間是Tj。模型所分配的各個(gè)任務(wù)是同一優(yōu)先級(jí)的,換句話說(shuō),同一優(yōu)先級(jí)的任務(wù)將進(jìn)入同一等待池。以任務(wù)平均完成時(shí)間的最小化作為網(wǎng)絡(luò)訓(xùn)練的目標(biāo)。
用當(dāng)前資源池中的實(shí)時(shí)占用情況、等待資源分配的申請(qǐng)隊(duì)列及后臺(tái)日志來(lái)描述系統(tǒng)狀態(tài)。如圖1是資源池的初始狀態(tài)及等待池中任務(wù)的示意圖。不同顏色代表不同的任務(wù)。任務(wù)塊橫向格數(shù)代表資源需求,縱向格數(shù)代表時(shí)間需求。
行動(dòng)空間用A = {? ? ?,1,...,M}表示,其中a = i表示“對(duì)等待池第i個(gè)任務(wù)分配資源”; a =? ? ? ?表示資源池已滿,即不可再分配任務(wù)。在每一個(gè)時(shí)間步,時(shí)間被凍結(jié),直到智能體做完這些選擇。一旦智能體選擇了行動(dòng)a =? ?,則行動(dòng)結(jié)束,進(jìn)入下一個(gè)時(shí)間步,資源池圖像上的任務(wù)下移一步,任何新到達(dá)的工作都會(huì)顯現(xiàn)出來(lái)。
對(duì)能夠降低所有任務(wù)平均完成時(shí)間的行動(dòng)給予正的獎(jiǎng)賞,反之給予負(fù)的懲罰。在每一個(gè)時(shí)間步設(shè)置獎(jiǎng)勵(lì)為-J,在這里J是當(dāng)前系統(tǒng)中的任務(wù)數(shù)量總和,包括資源池、等待隊(duì)列及后臺(tái)日志中的所有任務(wù)。
3.仿真訓(xùn)練
將智能體的策略表示為一個(gè)神經(jīng)網(wǎng)絡(luò),它的輸入是環(huán)境當(dāng)前狀態(tài)空間構(gòu)成的矩陣,輸出是可能采取行動(dòng)的概率分布。訓(xùn)練過(guò)程中,在每一個(gè)episode中,都有固定數(shù)量的任務(wù)到達(dá),根據(jù)策略進(jìn)行安排。當(dāng)所有作業(yè)均執(zhí)行完畢后,episode終止。本實(shí)驗(yàn)設(shè)置了多組不同的任務(wù)到達(dá)序列,每組稱為一個(gè)任務(wù)序列。
在每次訓(xùn)練迭代中,模擬每個(gè)任務(wù)序列在每個(gè)episode里使用當(dāng)前策略的可能操作,并使用結(jié)果數(shù)據(jù)來(lái)改善分配之后所有任務(wù)序列的策略。記錄每個(gè)episode的每個(gè)時(shí)間步長(zhǎng)的所有環(huán)境狀態(tài)、行動(dòng)及獎(jiǎng)勵(lì)信息,并使用這些值計(jì)算在每個(gè)episode每個(gè)時(shí)間步t的累計(jì)獎(jiǎng)勵(lì)vt。然后使用強(qiáng)化學(xué)習(xí)算法里的梯度下降策略來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò)。
4.測(cè)試結(jié)果
當(dāng)?shù)却刂械淖畲笕蝿?wù)數(shù)量M取5時(shí),整個(gè)實(shí)驗(yàn)過(guò)程,用各個(gè)算法進(jìn)行分配,所有的任務(wù)平均完成時(shí)間與任務(wù)到達(dá)率關(guān)系如圖:
5.結(jié)論
以縮短全部任務(wù)平均完成時(shí)間為目標(biāo),本文所測(cè)試的幾種不同的分配算法中,先到先分配(FCFS)算法表現(xiàn)最差,平均任務(wù)完成時(shí)間最長(zhǎng);次差為隨機(jī)分配(Random)算法;當(dāng)任務(wù)負(fù)載率較低時(shí),強(qiáng)化學(xué)習(xí)所訓(xùn)練的RM算法、短任務(wù)優(yōu)先算法(SJF)及小任務(wù)優(yōu)先算法(MJF)的表現(xiàn)幾乎沒(méi)有區(qū)別;當(dāng)任務(wù)負(fù)載率較高時(shí),MJF算法的表現(xiàn)顯著不如RM算法及SJF算法,此時(shí)RM算法優(yōu)于SJF。而當(dāng)任務(wù)負(fù)載率進(jìn)一步提高之后,RM算法與SJF算法的表現(xiàn)趨于一致。
故而,本文所用的強(qiáng)化學(xué)習(xí)算法,在動(dòng)態(tài)資源分配問(wèn)題中,對(duì)于降低任務(wù)平均完成時(shí)間有著較好的表現(xiàn),證明了強(qiáng)化學(xué)習(xí)算法的有效性。而強(qiáng)化學(xué)習(xí)算法在本實(shí)驗(yàn)中的表現(xiàn),完全可以遷移到網(wǎng)絡(luò)管理系統(tǒng)中的信道資源分配。
參考文獻(xiàn):
[1] 聞新,周露,王丹力,熊曉英等 MATLAB神經(jīng)網(wǎng)絡(luò)應(yīng)用設(shè)計(jì).北京科學(xué)出版社,2001.5.
[2] 張文鴿,吳澤寧,途洪波神經(jīng)網(wǎng)絡(luò)的改進(jìn)及應(yīng)用河南科學(xué)Vol.21,No2,2003.
[3] 戚涌,李千目,劉鳳玉基于BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)智能診斷系統(tǒng).微電子學(xué)與計(jì)算機(jī),2004,21(10):10-13,18.
[4] 焦李成,神經(jīng)網(wǎng)絡(luò)計(jì)算[M].西安:西安電子科技大學(xué)出版社,1993.9.
[5]陳樺,程云艷.BP神經(jīng)網(wǎng)絡(luò)算法的改進(jìn)及在Matlab中的實(shí)現(xiàn).陜西科技大學(xué)學(xué)報(bào).Vol.22,No.2,2004.4.