基于多智能體并行搜索的軟件自適應機制
發(fā)布時間:2020-03-25 12:13
【摘要】:隨著硬件計算水平的提升和軟件工程技術的不斷發(fā)展,越來越多的軟件系統(tǒng)運行在以互聯(lián)網、云環(huán)境等為代表的動態(tài)、不可控且時變的開放環(huán)境(Open Environment)中,致使軟件系統(tǒng)面臨的用戶需求具有動態(tài)性和不確定性,管理的計算資源呈現出高度分布、組成異構等特點,所在的硬件環(huán)境具有動態(tài)多變、難以控制等特點,進而導致軟件系統(tǒng)需要動態(tài)適應具有“來源多樣,影響各異;同時發(fā)生,潛在影響;不可預測,不可確定”等新特征的復雜軟件變化。因此,運行在開放環(huán)境下的軟件系統(tǒng)更加迫切地需要一種軟件自適應機制,使得該類軟件能夠在運行過程中通過對系統(tǒng)參數、對外行為或體系結構的自主調整,從而在線適應復雜軟件變化。目前,這一研究問題受到了學術界眾多高校和領域頂級學術會議以及產業(yè)界重要研究機構的關注,已成為軟件工程領域和自主計算領域亟待解決的難點問題之一。軟件自適應機制是自適應軟件系統(tǒng)的核心,眾多研究學者已從不同角度開展了大量研究工作。然而,在建立面向開放環(huán)境下軟件系統(tǒng)的自適應機制過程中,存在諸多新的關鍵問題,突出表現在:(1)現有自適應框架存在調整層次單一、限制系統(tǒng)研發(fā)狀態(tài)、無法支持自適應全過程等問題。因此,如何建立面向開放環(huán)境下軟件系統(tǒng)的專用自適應框架?(2)現有方法忽略了不同變化特征與系統(tǒng)結構特點,采用集中統(tǒng)一方式感知并分析變化,造成了感知效率低、分析開銷高等問題。因此,如何快速感知并準確分析“來源多樣,影響各異”的軟件變化?(3)現有方法忽略了變化間關聯(lián)關系及變化對系統(tǒng)的潛在影響,無法有效處理“同時發(fā)生,潛在影響;不可預測,不可確定”的復雜軟件變化。因此,如何針對復雜軟件變化實現在線權衡決策?(4)如何為開放環(huán)境下自適應軟件系統(tǒng)的研發(fā)與自適應過程,提供切實的工程化?本文從軟件工程層面出發(fā),交叉融合了基于控制論的軟件自適應理論、基于搜索的軟件工程和面向智能體的軟件工程等多個學科的方法與技術,針對上述關鍵問題重點研究了基于多智能體并行搜索的軟件自適應機制,并研制了支持該機制應用到實際系統(tǒng)中的自適應軟件開發(fā)與運行支撐環(huán)境,為建立開放環(huán)境下的自適應軟件系統(tǒng)提供了理論方法指導與工程化支持。本文主要研究工作及創(chuàng)新點如下。(1)提出一種基于多智能體的開放環(huán)境軟件自適應框架,指導建立自適應機制。本文開展了關于自適應機制設計方法、開發(fā)方法與使能技術的現狀綜述,并在此基礎上,結合軟件系統(tǒng)特征與運行環(huán)境特點,建立了一種基于多智能體的開放環(huán)境軟件自適應框架,可指導建立該類軟件的自適應機制并提供了體系結構參考模型。與同類框架相比,該框架可處理處于各種研發(fā)狀態(tài)的軟件系統(tǒng)、可支持自適應全過程并實現了系統(tǒng)分層調整,且具有較好的在線修正能力與運行穩(wěn)定性。(2)提出面向開放環(huán)境的變化感知與事件分析方法,實現層次感知與精準識別。本文建立了針對運行環(huán)境和系統(tǒng)資源的建模方法,并運用感知框架技術快速獲取感知數據。針對現有方法普遍忽略的需求變化問題,本文建立了需求模型并可實時獲取需求變更情況。為提升事件分析的準確性,本文對感知數據進行了去缺失,去噪聲和模糊化處理,并提出了基于樸素貝葉斯分類的異常檢測方法,可快速判別系統(tǒng)運行狀態(tài)并減少不必要開銷。針對系統(tǒng)異常狀態(tài),本文提出了基于規(guī)則推理與模糊推理的事件識別方法,可在具有不確定性的運行時上下文中準確識別多種自適應事件。(3)提出面向主從規(guī)劃模式的決策與執(zhí)行方法,支持權衡決策并在線調整系統(tǒng)。本文提出了基于策略的自適應決策方法,可快速決策并在線修正策略。本文引入基于搜索的軟件工程技術,提出了基于搜索的自適應決策方法以同時處理多種互相關聯(lián)的軟件變化。與現有方法相比,該方法系統(tǒng)性地建立了自適應決策問題模型并實現了在線權衡決策。本文引入后優(yōu)化技術,針對不同決策問題特點,建立了四種方案選擇方法,可保證選出唯一最優(yōu)策略。本文建立了基于頂層指導和自主協(xié)同的策略執(zhí)行方法,可依據策略快速調整系統(tǒng),并動態(tài)獲取策略執(zhí)行效果,在線修正不同決策方法。(4)建立基于并行搜索的自適應決策效率優(yōu)化方法,可快速產生最優(yōu)策略。本文改進了Spark計算框架作業(yè)層的調度算法,并建立了基于加權輪轉的任務分配與調度方法,可支持多項決策任務的并行執(zhí)行,從而提升了整體決策效率。并且,本文建立了基于種群劃分的并行搜索方法,可通過多種群協(xié)作實現對自適應策略的并行搜索,提升了單次決策效率。經實驗驗證,該決策優(yōu)化方法可顯著提升決策效率,較傳統(tǒng)串行方式可獲得線性加速比,且能夠獲得質量更好的決策結果。(5)實現一種自適應軟件系統(tǒng)的開發(fā)與運行支撐環(huán)境ADAPT,提供工程化支持。ADAPT提供了一套自適應軟件開發(fā)工具集可支持軟件快速研發(fā),并提供了兩類運行支持平臺可輔助系統(tǒng)實現自適應過程。本文選取了自主計算領域的經典案例系統(tǒng),以及運行在開放環(huán)境下的典型軟件開展了多項實驗,驗證了自適應機制快速感知變化、準確識別事件、針對不同事件實現在線權衡決策與調整等多方面的能力,表明了本文提出的自適應機制及ADAPT可有效支持系統(tǒng)動態(tài)適應軟件變化,實現平穩(wěn)運行。本文圍繞如何建立開放環(huán)境下軟件系統(tǒng)的自適應機制,從多個方面開展了研究工作,特別引入了基于搜索的軟件工程理論,為解決軟件自適應問題提供了新穎的研究思路,并有效解決了技術交叉融合所引發(fā)的多項新問題。最后,根據在領域經典案例系統(tǒng)和典型實際系統(tǒng)中開展的應用驗證可知,本文提出的自適應機制及其支撐環(huán)境可支持自適應軟件的研發(fā)及自適應過程,具有一定的可行性、有效性和實際應用價值。
【圖文】:
圖 7.7 數據庫讀寫時間變化情況展示系統(tǒng)在第152.7秒發(fā)生了“數據訪問超時”的局部事件,自適應機制采用策略“001”在時刻 152.7 進行調整。但調整后,數據庫讀取時間并未降低。這說明策略“001”執(zhí)行后并未獲得預期效果。底層控制循環(huán)中的驗證環(huán)節(jié)通過對數據讀取時間的監(jiān)控,,發(fā)
圖 7.14 用戶登錄界面訪問錯誤率變化情況展示因此,根據策略的優(yōu)先級和有效性,功能智能體在第 529 秒,選擇了策略“002”,啟用了作為備份服務器的第 2 號用戶服務器。當策略在第 551 秒執(zhí)行完畢后,錯誤率已降低,表明該事件已被處理,并增加策略“002”的有效次數。在 846 秒再次發(fā)生200 392 584 776 958 1160
【學位授予單位】:西安電子科技大學
【學位級別】:博士
【學位授予年份】:2018
【分類號】:TP311.5
本文編號:2599888
【圖文】:
圖 7.7 數據庫讀寫時間變化情況展示系統(tǒng)在第152.7秒發(fā)生了“數據訪問超時”的局部事件,自適應機制采用策略“001”在時刻 152.7 進行調整。但調整后,數據庫讀取時間并未降低。這說明策略“001”執(zhí)行后并未獲得預期效果。底層控制循環(huán)中的驗證環(huán)節(jié)通過對數據讀取時間的監(jiān)控,,發(fā)
圖 7.14 用戶登錄界面訪問錯誤率變化情況展示因此,根據策略的優(yōu)先級和有效性,功能智能體在第 529 秒,選擇了策略“002”,啟用了作為備份服務器的第 2 號用戶服務器。當策略在第 551 秒執(zhí)行完畢后,錯誤率已降低,表明該事件已被處理,并增加策略“002”的有效次數。在 846 秒再次發(fā)生200 392 584 776 958 1160
【學位授予單位】:西安電子科技大學
【學位級別】:博士
【學位授予年份】:2018
【分類號】:TP311.5
本文編號:2599888
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/2599888.html