應(yīng)衛(wèi)強,羅仕鑒,張玲燕
(1.浙江大學(xué)城市學(xué)院,浙江 杭州 310015;2.浙江大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,浙江 杭州 310058;3.浙江大學(xué) 軟件學(xué)院,浙江 杭州 310058)
系統(tǒng)網(wǎng)絡(luò)控制是指網(wǎng)絡(luò)可以連接攜帶閉環(huán)控制系統(tǒng)的環(huán)路[1]。在系統(tǒng)網(wǎng)絡(luò)控制中,控制環(huán)路中的信息是通過普通系統(tǒng)網(wǎng)絡(luò)傳輸?shù)?,可傳輸信息的普通系統(tǒng)復(fù)雜且不易設(shè)計,導(dǎo)致信息傳輸慢、傳輸過程較為復(fù)雜。在此背景下,無緩沖數(shù)字系統(tǒng)應(yīng)運而生[2]。
無緩沖數(shù)字系統(tǒng)設(shè)計簡便并且容易操作,但由于網(wǎng)絡(luò)信息傳輸量增加使網(wǎng)絡(luò)控制和網(wǎng)絡(luò)應(yīng)用上出現(xiàn)一些特殊的問題需要解決。網(wǎng)絡(luò)延時問題就是目前無緩沖數(shù)字系統(tǒng)中急需解決的一大難題[3]。由于大量數(shù)據(jù)都是通過公共介質(zhì)進行傳輸?shù)?,所以在信息交換的時候會出現(xiàn)時間延遲,且無緩沖數(shù)字系統(tǒng)中控制器的傳輸和控制器到執(zhí)行器的傳輸也會出現(xiàn)延遲。這種延遲偶爾是穩(wěn)定的,偶爾是有規(guī)律變化的,還可能是隨機的。這種延遲會直接導(dǎo)致無緩沖數(shù)字系統(tǒng)控制的穩(wěn)定性降低和性能下降。此外,另一大難題就是信息包丟失的問題[4]。眾所周知,網(wǎng)絡(luò)中的信息傳輸都是以數(shù)據(jù)包的形式進行傳遞[5],但由于信息通道狹窄等一系列問題,在傳遞數(shù)據(jù)包的過程中會丟失一些數(shù)據(jù)包,導(dǎo)致數(shù)據(jù)包不完整、部分信息會丟失,從而影響無緩沖數(shù)字系統(tǒng)的實時性,同時也會降低無緩沖數(shù)字系統(tǒng)的穩(wěn)定性。在上述背景下,若想提高系統(tǒng)穩(wěn)定性,需要控制無緩沖數(shù)字系統(tǒng)延時。
邱欣逸[6]等人提出了基于準(zhǔn)確時間戳的延遲控制模型。該模型使用控制器動態(tài)算出隨機2個交換機間的任意可達路徑,發(fā)送一個探測分組就可測量出任意路徑上的延遲。然而該模型沒有使用戳技術(shù)對延時進行記錄和預(yù)測,增加了平均誤差,也在一定程度上降低了擬合率。
劉文軍[7]等人提出了基于k跳支配集的MDC最小時延規(guī)劃控制模型。該模型通過k跳支配節(jié)點作為集結(jié)點緩存?zhèn)鞲泄?jié)點收集數(shù)據(jù),并在MDC到達時上傳,實現(xiàn)系統(tǒng)延時控制。然而該模型沒有采用延時預(yù)測器對無緩沖數(shù)字系統(tǒng)進行延時預(yù)測,存在網(wǎng)絡(luò)傳輸延時過長的問題。
石義龍[8]等人提出了基于延遲調(diào)度策略的reduce任務(wù)調(diào)度優(yōu)化算法的控制模型。該模型通過提高reduce任務(wù)的數(shù)據(jù)本地性來減少作業(yè)執(zhí)行時間以及提高作業(yè)吞吐量,降低信息數(shù)據(jù)傳輸時間,有效控制系統(tǒng)延遲時間。然而該模型未通過相關(guān)學(xué)習(xí)規(guī)則預(yù)測無緩沖數(shù)字系統(tǒng)的延時,導(dǎo)致無緩沖數(shù)字系統(tǒng)負載率較低。
為了解決傳統(tǒng)延時控制模型中存在的問題,本研究設(shè)計了基于神經(jīng)網(wǎng)絡(luò)的無緩沖數(shù)字系統(tǒng)延時控制模型。
無緩沖數(shù)字系統(tǒng)網(wǎng)絡(luò)所產(chǎn)生的隨機網(wǎng)絡(luò)傳輸延時是系統(tǒng)必須要解決的問題之一[9]。
首先利用神經(jīng)網(wǎng)絡(luò)對無緩沖數(shù)字系統(tǒng)延時進行預(yù)測,因為神經(jīng)網(wǎng)絡(luò)的計算比較簡單,所以可以用于在線網(wǎng)絡(luò)延時的預(yù)測。再通過使用時間戳技術(shù)記錄傳感器將數(shù)據(jù)包發(fā)出的時間和數(shù)據(jù)包被執(zhí)行器接收到的時間,網(wǎng)絡(luò)延時τ就是數(shù)據(jù)包從傳感器發(fā)送的時間和執(zhí)行器接收到數(shù)據(jù)包時間之間的時間差。延時預(yù)測器分別采用最簡易的三輸入、單輸入、單層線性神經(jīng)元結(jié)構(gòu)組成,如圖1所示。
圖1 三輸入單神經(jīng)元線性網(wǎng)絡(luò)結(jié)構(gòu)圖
圖1中,閾值用b表示,權(quán)值用ωi表示,通過線性函數(shù)代表神經(jīng)元傳遞函數(shù)。
無緩沖數(shù)字系統(tǒng)延時預(yù)測的流程如下:
第一步:記錄某個無緩沖數(shù)字系統(tǒng)網(wǎng)絡(luò)以往的三個采樣周期實際測量的網(wǎng)絡(luò)延時值,分別為τk-1、τk-2、τk-3,并將三個無緩沖數(shù)字系統(tǒng)網(wǎng)絡(luò)延時值當(dāng)作線性神經(jīng)網(wǎng)絡(luò)的輸入;
(1)
采用時間戳技術(shù)得到新的實際無緩沖數(shù)字系統(tǒng)網(wǎng)絡(luò)延時值,即可得到新的權(quán)值和閾值[10]。權(quán)值和閾值的更新的目的是為了順應(yīng)無緩沖數(shù)字系統(tǒng)網(wǎng)絡(luò)的改變,使無緩沖數(shù)字系統(tǒng)的實際網(wǎng)絡(luò)延時值與網(wǎng)絡(luò)延時預(yù)測值相對應(yīng)。而LMS算法又叫wid-row-hoff學(xué)習(xí)規(guī)則[11]。通過wid-row-hoff學(xué)習(xí)規(guī)則來訓(xùn)練線性神經(jīng)網(wǎng)絡(luò)?;诖耍僭O(shè){P(k-1),τk}為已知無緩沖數(shù)字系統(tǒng)網(wǎng)絡(luò)樣本,線性神經(jīng)網(wǎng)絡(luò)的輸入為
p(k-1)=[τk-1,τk-2,τk-3]T
(2)
(3)
其中,第k個采樣周期用k表示,從而得知訓(xùn)練誤差的方差梯度如下
(4)
其中,i=1,2,3。在近似梯度下降法的基礎(chǔ)上,分別將閾值b(k)和權(quán)值向量Ω(k)=[ω1(k),ω2(k),ω3(k)]T調(diào)整為
b(k)=2αe(k)+b(k-1)
(5)
Ω(k)=p(k-1)2αe(k)+Ω(k-1)
(6)
其中,第k個采樣周期的權(quán)值向量用Ω(k)表示,第k個采樣周期的閾值用b(k)表示,α代表學(xué)習(xí)率。
根據(jù)上述可知三輸入單神經(jīng)元線性網(wǎng)絡(luò)的輸出就是無緩沖數(shù)字系統(tǒng)網(wǎng)絡(luò)延時預(yù)測值,將數(shù)值代入式(1)中進行運算即可得出無緩沖數(shù)字系統(tǒng)網(wǎng)絡(luò)延時預(yù)測值。
通過SMITH預(yù)估補償原理可知,控制效果與模型精度相關(guān)[12]。因此,模型中的任何條件發(fā)生改變都會改變控制效果,特別是模型延時參數(shù)f的誤差極有可能導(dǎo)致無緩沖數(shù)字系統(tǒng)出現(xiàn)波動情況。而在SMITH估計模型中加入神經(jīng)網(wǎng)絡(luò),可有效提升SMITH估計模型的魯棒性。
為此,利用人工神經(jīng)網(wǎng)絡(luò)映射功能辨識復(fù)雜對象獲得延時補償模型。通過常規(guī)系統(tǒng)網(wǎng)絡(luò)延時控制模型,對復(fù)雜且有波動的變化延時目標(biāo)進行自適應(yīng)控制。過程如下
1)不確定目標(biāo)的延時因子e-fms。
圖2中,DNNM表示排除純延時的逼近目標(biāo)的神經(jīng)網(wǎng)絡(luò)模型;G′p(s)e-fs代表含延時f的不確定目標(biāo)。u(t)表示控制輸入,r(t)表示期望值,y(t)代表實際目標(biāo)輸出,fm=dTs中fm代表人工神經(jīng)網(wǎng)絡(luò)辨識出的延時,Ts表示采樣時間常數(shù)。
圖2 神經(jīng)網(wǎng)絡(luò)SMITH預(yù)估模型結(jié)構(gòu)示意圖
通過三層BP網(wǎng)絡(luò)去構(gòu)建逼近目標(biāo)的神經(jīng)網(wǎng)絡(luò)及在線學(xué)習(xí)模型,映射聯(lián)系如下所示
ym(k)=fm(ym(k-1),ym(k-2),…,
ym(k-n),u(k-h),u(k-h-1),…,
u(k-h-m))
(7)
網(wǎng)絡(luò)輸入為
XT=[ym(k-1),ym(k-2),…,
ym(k-n),u(k-h),u(k-h-1),…,
u(k-h-m)]T
(8)
其中,h代表假定的延時,n,m表示模型的近似階數(shù)。
在實際訓(xùn)練過程中,網(wǎng)絡(luò)訓(xùn)練的輸入需要從h=d的可能最大值h=dmax開始設(shè)置。訓(xùn)練后得出有差異的訓(xùn)練誤差平方和,在對比并分析平方和后可知fm的值。
2)排除延時目標(biāo)神經(jīng)網(wǎng)絡(luò)模型DNNM
需先將排除掉的延時目標(biāo)輸出反饋回去,才能使用延時系統(tǒng)模型補償算法,故無延時目標(biāo)如下所示
ym(k)=ff(ym(k-1),ym(k-2),…,
ym(k-n),u(k),u(k-1),…,u(k-m))
(9)
無延時的模型用神經(jīng)網(wǎng)絡(luò)DNNM來表示。網(wǎng)絡(luò)輸入仍舊用三層BP網(wǎng)絡(luò),則網(wǎng)絡(luò)輸入為
(10)
已知延時時間fm,已經(jīng)延時和將要延時的輸入樣本u作時間位移d。則d=fm/TS,由此可得到
yf(k)=fmf(yf(k-1),yf(k-2),…,
yf(k-n),u(k),u(k-1),…,u(k-m))
(11)
3)無緩沖數(shù)字系統(tǒng)延時控制模型的結(jié)構(gòu)
為已經(jīng)補償過的目標(biāo)設(shè)計控制模型,可按照普通無延時目標(biāo)控制的設(shè)計方式去設(shè)計。通過使用比例積分微分控制模型增量算法得到無緩沖數(shù)字系統(tǒng)延時控制模型,如下所示
(12)
PIP控制算法非常簡易,它是針對已知目標(biāo)特性的方法,其本質(zhì)是SMITH預(yù)估模型用在一階慣性演示系統(tǒng)的特例。PIP控制算法中只需增益K,延時參數(shù)F和時間常數(shù)T,就可得出無緩沖數(shù)字系統(tǒng)延時控制模型的參數(shù)。
神經(jīng)網(wǎng)絡(luò)PIP控制系統(tǒng)如圖3所示。
圖3 神經(jīng)網(wǎng)絡(luò)PIP控制系統(tǒng)
一階慣性純延時目標(biāo)如下
G(s)=Ke-fs/(Ts+1)
(13)
通過使用PIP控制算法對無緩沖數(shù)字系統(tǒng)延時控制模型求解,得出的控制信號如下
u(t)=-1/pT[u(t)-u(t-f)]+K(1/pT+1)
(14)
在上述方程中運算出延時控制模型的最優(yōu)解,就實現(xiàn)了對無緩沖數(shù)字系統(tǒng)延時的穩(wěn)定控制。
為驗證上述基于神經(jīng)網(wǎng)絡(luò)的無緩沖數(shù)字系統(tǒng)延時控制模型的整體有效性,在Simulink平臺中對所提模型展開性能測試。
為避免實驗結(jié)果的單一性,采用本文設(shè)計的基于神經(jīng)網(wǎng)絡(luò)的無緩沖數(shù)字系統(tǒng)延時控制模型(模型一)、基于準(zhǔn)確時間戳的延遲控制模型(模型二)和基于k跳支配集的MDC最小時延規(guī)劃控制模型(模型三)完成實驗對比。
無緩沖數(shù)字系統(tǒng)延時控制模型對延時樣本數(shù)據(jù)的擬合率越高該模型對延時控制越穩(wěn)定且有效,擬合率是指預(yù)測延時結(jié)果與實際發(fā)生情況的吻合程度的比率,也是檢測預(yù)測模型的有效指標(biāo)。因此,對比3種模型的擬合率,其結(jié)果如圖4所示。
圖4 不同模型的擬合率對比結(jié)果
分析圖4所示結(jié)果可知,3種模型在剛開始測試時擬合率波動較大且不穩(wěn)定,隨著時間推移,3種模型的擬合率都有所下降,但模型一的擬合率仍在95%以上。
產(chǎn)生這一結(jié)果的原因在于在無緩沖系統(tǒng)延時預(yù)測中,模型一采用時間戳技術(shù)對延時進行了記錄,從而減少了平均誤差,提高了模型的擬合率。
為進一步證明基于神經(jīng)網(wǎng)絡(luò)的無緩沖數(shù)字系統(tǒng)延時控制模型的有效性,以網(wǎng)絡(luò)傳輸延時為指標(biāo),對比采用3三種模型的延時程度,其結(jié)果如圖5所示。
圖5 不同模型的網(wǎng)絡(luò)傳輸延時對比結(jié)果
分析圖5所示結(jié)果可知,隨著節(jié)點緩存增大,3種模型的延時都有所增加,從而造成數(shù)據(jù)在緩存過程中等待傳輸數(shù)據(jù)時間大大升高。但模型一的延時基本可以忽略不計。
產(chǎn)生這一結(jié)果的原因在于模型一利用延時預(yù)測器對無緩沖數(shù)字系統(tǒng)進行了延時預(yù)測,最大程度的補償延時,減少了網(wǎng)絡(luò)傳輸延時,說明模型一延時控制性能更為優(yōu)越。
網(wǎng)絡(luò)負載率又叫網(wǎng)絡(luò)使用率,是當(dāng)前網(wǎng)絡(luò)工作狀態(tài)的重要標(biāo)志,是指當(dāng)前網(wǎng)絡(luò)可攜帶的數(shù)據(jù)量與額定容量的比值。因此對3種模型的負載率進行測試與比較,負載率越高說明可攜帶的數(shù)據(jù)量越多,無緩沖數(shù)字系統(tǒng)延時越少。測試結(jié)果如圖6所示。
圖6 不同模型的負載率對比結(jié)果
分析圖6所示結(jié)果可知,模型一在測試過程中獲得的網(wǎng)絡(luò)負載率均高于另外2種模型。
產(chǎn)生這一結(jié)果的原因在于模型一在系統(tǒng)延時預(yù)測的基礎(chǔ)上采用wid-row-hoff學(xué)習(xí)規(guī)則,更新了權(quán)值和閾值,得出網(wǎng)絡(luò)延時預(yù)測值,利用無緩沖數(shù)字系統(tǒng)延時控制模型提高實際網(wǎng)絡(luò)可攜帶的數(shù)據(jù)量,從而提高了網(wǎng)絡(luò)負載率。
隨著無緩沖數(shù)字系統(tǒng)的用戶日益增多,網(wǎng)絡(luò)所能承載的數(shù)據(jù)量已經(jīng)不能滿足用戶需求,現(xiàn)階段提出的系統(tǒng)網(wǎng)絡(luò)延時控制辦法中存在數(shù)據(jù)包被大量丟棄,冗余副本數(shù)量龐大等問題,導(dǎo)致無緩沖數(shù)字系統(tǒng)延時不能被穩(wěn)定控制。為此,本研究提出基于神經(jīng)網(wǎng)絡(luò)的無緩沖數(shù)字系統(tǒng)延時控制模型。
這一模型有效解決了數(shù)據(jù)包被丟棄的問題,采用時間戳技術(shù)去記錄采集到的數(shù)據(jù)包時間,有效控制數(shù)據(jù)包被丟棄的數(shù)量,并使用延時預(yù)測器對在線網(wǎng)絡(luò)延時進行預(yù)測,再通過神經(jīng)網(wǎng)絡(luò)的無緩沖數(shù)字系統(tǒng)對時間延遲進行補償。利用SMITH估計模型構(gòu)建出無緩沖數(shù)字系統(tǒng)延時控制模型,并求出模型的最優(yōu)解即可穩(wěn)定控制系統(tǒng)延時。
基于神經(jīng)網(wǎng)絡(luò)的無緩沖數(shù)字系統(tǒng)延時控制模型關(guān)注的重點是對網(wǎng)絡(luò)時間延遲的預(yù)測,但沒有考慮網(wǎng)絡(luò)的流量平衡問題,就有可能出現(xiàn)由于某節(jié)點數(shù)據(jù)流量過高導(dǎo)致網(wǎng)絡(luò)工作異常的情況。因此,在今后的研究中,結(jié)合網(wǎng)絡(luò)流量控制的算法是神經(jīng)網(wǎng)絡(luò)控制算法的主要研究方向。