[發明專利]基于隱馬爾科夫模型和多目標進化算法的軟件自適應方法有效
| 申請號: | 201410454223.5 | 申請日: | 2014-09-05 |
| 公開(公告)號: | CN104239046B | 公開(公告)日: | 2017-07-18 |
| 發明(設計)人: | 張鵬程;周宇鵬;馮鈞;朱躍龍;萬定生;劉宗磊;莊媛;肖艷 | 申請(專利權)人: | 河海大學 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44;G06N3/00 |
| 代理公司: | 南京蘇高專利商標事務所(普通合伙)32204 | 代理人: | 李玉平 |
| 地址: | 211100 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 隱馬爾科夫 模型 多目標 進化 算法 軟件 自適應 方法 | ||
技術領域
本發明涉及一種軟件自適應技術,尤其涉及對運行時的軟件系統進行動態的自適應,屬于軟件工程技術領域。
背景技術
自適應軟件是能隨著軟件系統運行時的內部、外部環境的變化,動態調整自己的運行方式的軟件系統,跨越了軟件監控、上下文敏感計算、決策和控制理論、軟件演化和維護等多個科學分支。軟件自適應過程以MAPE-K(監控、調整、計劃、執行、知識庫)為基本周期主線。在一些特定的領域(如消防、工業控制)中,自適應軟件有著非常重要的應用。由于需要面對龐大、復雜的軟件邏輯和應對諸多的環境變化和不確定性因素,自適應軟件有著其獨特的優勢。
在應急系統中,需要高度的系統可靠性,目前的自適應方法主要存在以下的不足:
設計時的自適應無法更好應對動態環境的變化;
基于模糊集合等監控方法,精確性不能保證;
單目標的計劃模塊不能應對普遍存在的多目標調整需求。
發明內容
發明目的:針對現有技術中存在的問題與不足,為提高軟件系統的可靠性和安全性,提供一種在系統運行時有效動態自適應的運行時軟件動態自適應方法。
技術方案:一種基于隱馬爾科夫模型和多目標進化算法的軟件自適應方法,包括:
a)HMM監控方法:應用隱馬爾科夫模型根據運行時的上下文參數實時地對系統的各個組件進行可靠性建模,并計算得出其可靠性數值;
b)DTMC分析方法:根據上一個HMM監控模塊對每個系統組件得出的可靠性,根據各個組件的互相調用關系構建離散時間馬爾科夫鏈模型,最后根據此模型的狀態轉移矩陣計算系統可靠性。
c)MOAE監控方法:應用多進化目標優化算法,根據多種系統需求(如可靠性、能耗等)來選擇和生成符合該目標的系統配置,從而替換當前配置,是完成自適應過程中重要的環節。
所述HMM為隱馬爾科夫模型的簡稱,DTMC為離散時間馬爾科夫模型的簡稱。
有益效果:與現有技術相比,本發明所提供的方法在應用HMM監控組件可靠性,同時加入考慮了多目標優化問題,為原本單一指標的配置選擇加入多種目標,平衡多種非自適應需求。
附圖說明
圖1為本發明實施例的整體框架圖;
圖2為本發明實施例的HMM監控方法工作流程圖;
圖3為本發明實施例的DTMC分析方法工作流程圖;
圖4為本發明實施例的MOEA規劃方法工作流程圖。
具體實施方式
下面結合具體實施例,進一步闡明本發明,應理解這些實施例僅用于說明本發明而不用于限制本發明的范圍,在閱讀了本發明之后,本領域技術人員對本發明的各種等價形式的修改均落于本申請所附權利要求所限定的范圍。
如圖1所示,本實施例提供的自適應方法包含下列三個主要部分:
HMM監控方法、DTMC分析方法、MOEA規劃方法。
a)HMM監控方法:應用隱馬爾科夫模型根據運行時的上下文參數實時地對系統的各個組件進行可靠性建模,并計算得出其可靠性數值;
b)DTMC分析方法:根據上一個HMM監控模塊對每個系統組件得出的可靠性,根據各個組件的互相調用關系構建離散時間馬爾科夫鏈模型,最后根據此模型的狀態轉移矩陣計算系統可靠性。
c)MOEA規劃方法:應用多進化目標優化算法,根據多種系統需求(如可靠性、能耗等)來選擇和生成符合該目標的系統配置,從而替換當前配置,是完成自適應過程中重要的環節。
如圖2所示,此方法工作過程分為以下幾個過程:初始化HMM、判斷系統是否運行、獲取觀測序列、HMM動態訓練、計算可靠性、傳遞給DTMC模塊。
此方法需要在運行時得到觀測序列并應用BM算法動態訓練隱馬爾科夫模型,從而計算組件可靠性。可靠性取值在0-1之間。
具體步驟如下:
如圖2所示,HMM監控方法的工作步驟如下:
步驟101,根據各組件的設計時的狀態轉移關系來初始化HMM;
步驟102,判斷系統是否處在運行狀態;
步驟103,循環開始,根據運行時上下文環境得到組件的觀測序列;
步驟104,根據得到的觀測序列對HMM應用BM算法進行訓練,使其收斂;
步驟105,根據步驟104可得到收斂的HMM狀態轉移矩陣,并由此計算得到該組件可靠性;
步驟106,將計算得出的可靠性數值傳遞給DTMC模塊;
如圖3所示,DTMC分析方法的工作步驟如下:
步驟201,初始化各組件調用關系;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于河海大學,未經河海大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410454223.5/2.html,轉載請聲明來源鉆瓜專利網。





