[發(fā)明專利]一種實時系統(tǒng)可用時間快速估算與優(yōu)化方法有效
| 申請?zhí)枺?/td> | 201710690737.4 | 申請日: | 2017-08-14 |
| 公開(公告)號: | CN107563511B | 公開(公告)日: | 2020-12-22 |
| 發(fā)明(設計)人: | 魏同權;梁文彬;周俊龍;鞠芊蕾 | 申請(專利權)人: | 華東師范大學 |
| 主分類號: | G06N3/08 | 分類號: | G06N3/08;G06N3/06 |
| 代理公司: | 上海藍迪專利商標事務所(普通合伙) 31215 | 代理人: | 徐筱梅;張翔 |
| 地址: | 200241 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實時 系統(tǒng) 可用 時間 快速 估算 優(yōu)化 方法 | ||
1.一種實時系統(tǒng)可用時間快速估算與優(yōu)化方法,其特征在于該方法包括以下步驟:
步驟1:靜態(tài)軟錯誤故障率模型建立;
步驟2:利用靜態(tài)軟錯誤故障率模型建立樣本,訓練BP神經(jīng)網(wǎng)絡作為動態(tài)軟錯誤故障率模型;
步驟3:在動態(tài)軟錯誤故障率模型基礎上進一步建立平均無臨時故障時間MTTFT模型,結合平均無永久故障時間MTTFP模型,建立系統(tǒng)可用時間MTTFSystem模型;
步驟4:建立優(yōu)化系統(tǒng)可用時間方法,優(yōu)化系統(tǒng)可用時間;其中:
所述步驟1具體包括:
步驟A1:設備層次靜態(tài)軟錯誤故障率模型的建立:
其中:Constant為常數(shù),其值為2.2*10-5,F(xiàn)lux為環(huán)境中中子通量的大小,Area為設備對軟錯誤故障敏感區(qū)域面積,為通過注入電流實驗確定不同設備的臨界電荷,Qcoll為由CMOS制造工藝確定的電荷收集效率;
步驟A2:系統(tǒng)層次靜態(tài)軟錯誤故障率模型的建立:
其中:SERsystem為系統(tǒng)軟錯誤故障率,為各類設備軟錯誤故障率,這里設備種類分為靜態(tài)存儲器、鎖存器、邏輯門電路三類,AVFi為各類設備的架構易損參數(shù),ωi為SERcomponent占SERsystem的比重,這里用三類設備數(shù)目與設備總數(shù)目的比值描述ωi;
所述步驟2具體包括:
步驟B1:根據(jù)靜態(tài)軟錯誤故障率模型建立樣本:
系統(tǒng)的臨界電荷由三類設備臨界電荷的平均值共同決定,公式如下:
其中:為三類設備臨界電荷的平均值,ωi為三類設備數(shù)目與設備總數(shù)目的比值;
在動態(tài)環(huán)境中,系統(tǒng)軟錯誤故障率SERsystem由系統(tǒng)的臨界電荷系統(tǒng)環(huán)境中中子通量Flux,系統(tǒng)操作電壓Voltage和溫度Temperature四個參數(shù)決定;系統(tǒng)的軟錯誤故障率與中子通量Flux成正比例關系,中子通量Flux越高,系統(tǒng)的軟錯誤故障率越高;系統(tǒng)的軟錯誤故障率與電壓Voltage成反比例關系,電壓Voltage越高,系統(tǒng)的軟錯誤故障率越低,反比例關系由設備的CMOS制造工藝決定;系統(tǒng)的軟錯誤故障率與溫度Temperature成正比例關系,溫度Temperature越高,系統(tǒng)的軟錯誤故障率越高;
不同的臨界電荷中子通量Flux、系統(tǒng)操作電壓Voltage和溫度Temperature四個參數(shù)決定該組合情況下系統(tǒng)的軟錯誤故障率SERsystem,這五個參數(shù)作為一個樣本;利用靜態(tài)軟錯誤故障率模型建立多組樣本;
步驟B2:利用樣本建立動態(tài)軟錯誤故障率模型:
BP神經(jīng)網(wǎng)絡分為三層:輸入層、隱含層、輸出層,輸入層包含四個神經(jīng)元節(jié)點,分別為系統(tǒng)的臨界電荷系統(tǒng)環(huán)境中中子通量Flux,系統(tǒng)操作電壓Voltage和溫度Temperature;輸出層包含一個神經(jīng)元節(jié)點,為系統(tǒng)的軟錯誤故障率;隱含層節(jié)點個數(shù)根據(jù)經(jīng)驗公式確定:
其中h為隱含層神經(jīng)元節(jié)點個數(shù),i為輸入層神經(jīng)元節(jié)點個數(shù),o為輸出層神經(jīng)元節(jié)點個數(shù),a為1~10之間任意常數(shù);
確定完BP神經(jīng)網(wǎng)絡拓撲結構,輸入層、隱含層、輸出層的節(jié)點個數(shù)后,利用靜態(tài)軟錯誤故障率樣本訓練BP神經(jīng)網(wǎng)絡,獲得動態(tài)軟錯誤故障率模型;
所述步驟3具體包括:
步驟C1:任務集模型的建立:
其中:n為任務集中獨立任務的個數(shù);每個任務τi表示為一個三元組,1≤i≤n;τi=(ci,pi,di);其中ci是任務在系統(tǒng)最大頻率下的執(zhí)行時間,pi是任務周期,即每經(jīng)過一個pi時間單元釋放一個該任務,di是任務的相對截止時間;
步驟C2:任務執(zhí)行時間模型的建立:
ti=ci/fi
其中:ti為任務τi在頻率為fi時的執(zhí)行時間,fi為處理器的操作頻率,fmin≤fi≤fmax;頻率以fmax為標準進行歸一化處理,頻率值范圍為[0,1],fmin為處理器最小操作頻率,fmax為處理器最大操作頻率,ci為任務τi在最大頻率fmax下執(zhí)行時間;
步驟C3:不同頻率下軟錯誤故障率模型的建立:
根據(jù)步驟B2訓練完的動態(tài)軟錯誤故障率模型,在確定完臨界電荷系統(tǒng)環(huán)境中中子通量Flux和溫度Temperature三個參數(shù)后,輸入不同的電壓vi后,輸出相應的軟錯誤故障率,由于fi=μ·vi,即系統(tǒng)頻率和電壓呈正比例,利用動態(tài)軟錯誤故障率模型可以獲得不同頻率下系統(tǒng)的軟錯誤故障率,當頻率為fi時系統(tǒng)的軟錯誤故障率為λ(fi);
步驟C4:任務τi臨時故障可靠性模型的建立:
任務τi臨時故障可靠性模型為:
其中:λ(fi)為操作頻率fi時的軟錯誤故障率,ci為任務τi在最大頻率fmax下執(zhí)行時間,fi為處理器的操作頻率;
步驟C5:任務集臨時故障率模型的建立:
其中:Ri為任務τi在執(zhí)行頻率為fi時的臨時故障可靠性;
步驟C6:平均無臨時故障時間MTTFT模型的建立:
其中:為任務集總的執(zhí)行時間,為首次故障發(fā)生在任務集的第一輪執(zhí)行中的期望時間;
步驟C7:平均無永久故障時間MTTFP模型的建立:
其中,T為溫度,V為電壓,ATDDB、θ1、θ2、A、B、C、ρ為經(jīng)驗參數(shù);
步驟C8:系統(tǒng)可用時間MTTFSystem模型建立:
其中MTTFT為平均無臨時故障時間,MTTFP為平均無永久故障時間,MTTRT為平均臨時故障修復時間,MTTRP為平均永久故障修復時間;令為一個常數(shù),則系統(tǒng)的可用時間簡化成如下關系:
系統(tǒng)可用時間即決定于和MTTFP兩者中的較小值;
所述步驟4具體包括:
步驟D1:時間約束條件的建立:
任務集可調度的充分必要條件形式化如下公式所示:
其中CPUrate為處理器利用率,ei為任務τi在頻率為fi時的執(zhí)行時間,根據(jù)任務集和處理器模型,對fmax進行歸一化處理,令fmax=1,在fmax時任務的執(zhí)行時間為ci,所以di為任務的周期;
步驟D2:優(yōu)化目標的建立:
MTTFDelt∈(-u,+u)
其中u為一個接近0的較小值;
步驟D3:Q-learning算法中在時刻t時狀態(tài)st的確定:
根據(jù)步驟3中的C5、C6、C7步驟,計算出在時刻t時和進一步算出根據(jù)的大小,Q-learning算法狀態(tài)空間S分為七個子狀態(tài),根據(jù)如下規(guī)則確定時刻t時狀態(tài)st:
1.當時,遠小于此時st=s1,即在時刻t時為s1狀態(tài);
2.當時,小于此時st=s2,即在時刻t時為s2狀態(tài);
3.當時,稍小于此時st=s3,即在時刻t時為s3狀態(tài);
4.當時,約等于此時st=s4,即在時刻t時為s4狀態(tài);
5.當時,稍大于此時st=s5,即在時刻t時為s5狀態(tài);
6.當時,大于此時st=s6,即在時刻t時為s6狀態(tài);
7.當時,遠大于此時st=s7,即在時刻t時為s7狀態(tài);
其中狀態(tài)空間S={s1,s2,…,s7},u為一個接近0的常數(shù),Δ為一個常數(shù),表示偏移合適范圍的程度,為時刻t時系統(tǒng)的平均無瞬時故障的時間,為時刻t時系統(tǒng)的平均無永久故障的時間,
步驟D4:Q-learning算法中在t時刻動作at的確定:
所述動作指調整電壓的策略,動作空間A分為四個動作:
1.a1動作:提高電壓V1;
2.a2動作:提高電壓V2;
3.a3動作:降低電壓V2;
4.a4動作:降低電壓V1;
其中,V1和V2為電壓值,并且V1大于V2,A={a1,a2,a3,a4}為行為空間;
根據(jù)如下方法確定在時刻t時的動作at:首先,根據(jù)步驟D3確定時刻t時的狀態(tài)st,接著,以ε概率在四個動作中隨機選擇一個動作執(zhí)行,即在a1,a2,a3,a4中隨機選擇一個動作作為時刻t時的at;或者以1-ε的概率選擇行為值函數(shù)Q(s,a)中估計值最大對應的動作作為時刻t時的at;
其中:Q(s,a)為行為值函數(shù),行為值函數(shù)Q(s,a)為一個二維數(shù)組,狀態(tài)s為七個子狀態(tài),a為四個動作,ε為函數(shù)探索行為值,at為時刻t時選擇的動作;
步驟D5:Q-learning算法中反饋函數(shù)的建立:
其中:為時刻t+1時系統(tǒng)的平均無瞬時故障的時間,為一個常數(shù),為時刻t+1時系統(tǒng)的平均無永久故障的時間,r為Q-learning算法中反饋函數(shù);
步驟D6:Q-learning算法優(yōu)化系統(tǒng)可用時間算法:
1)初始化Q(s,a)矩陣為0矩陣,創(chuàng)建數(shù)組ArrayA和ArrayB,時刻t=0;
2)for i=1 to k do;
3)在fmin至fmax中隨機選擇一個頻率作為時刻t時ft,ft對應的電壓為vt;
4)根據(jù)ft和vt計算和根據(jù)步驟D3確定時刻t時狀態(tài)st;
5)根據(jù)和利用ArrayA或者ArrayB存放這樣一條記錄;
6)Whilest≠s4 do;
7)根據(jù)步驟D4確定時刻t時動作at,執(zhí)行完動作at后對應的電壓為vt+1和ft+1;
8)根據(jù)vt+1和ft+1計算時刻t+1時和根據(jù)步驟D3確定時刻t時狀態(tài)st+1;
9)根據(jù)和利用ArrayA或者ArrayB存放這樣一條記錄;
10)根據(jù)和步驟D5確定反饋函數(shù)的值r;
11)根據(jù)反饋函數(shù)的值r和Q-learning算法中更新行為值函數(shù)的規(guī)則更新Q(s,a);
12)t=t+1;
13)st=st+1;
14)if st=s4 do;
15)break;
16)end if;
17)end while;
18)end for;
19)if ArrayA不為空集;
20)遍歷ArrayA選擇記錄中MTTFSystem最大值對應的頻率f作為系統(tǒng)運行電壓fopt,fopt對應的電壓為vopt,vopt運行時系統(tǒng)可用時間為
21)elseArrayA為空集;
22)if ArrayB不為空集;
23)遍歷ArrayB選擇記錄中MTTFSystem最大值對應的頻率f作為系統(tǒng)運行電壓fopt,fopt對應的電壓為vopt,vopt運行時系統(tǒng)可用時間為
24)end if;
其中:ft為時刻t的頻率,vt為時刻t時的電壓,為時刻t時的處理器利用率,為時刻t時系統(tǒng)的平均無瞬時故障的時間,為時刻t時系統(tǒng)的平均無永久故障的時間,Q(s,a)為行為值函數(shù),i為當前迭代次數(shù),k為迭代次數(shù)上限,t為系統(tǒng)所在的時刻;vopt為任務集最優(yōu)執(zhí)行電壓,為任務集在電壓為vopt時的系統(tǒng)可用時間,ArrayA、ArrayB為二個不定數(shù)組,用來存放迭代過程中的記錄,每條記錄由這樣的鍵值對構成,ArrayA存放使得的記錄,ArrayB存放的記錄,每進行一次調整電壓產(chǎn)生一條記錄;如果ArrayA不為空,遍歷ArrayA中的記錄,記錄中最大值作為對應的ft作為fopt,ft對應的電壓vt作為vopt;如果ArrayA為空,ArrayB不為空,遍歷ArrayB中的記錄,記錄中最大值作為對應的ft作為fopt,ft對應的電壓vt作為vopt。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華東師范大學,未經(jīng)華東師范大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710690737.4/1.html,轉載請聲明來源鉆瓜專利網(wǎng)。





