亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于模型轉換的cps建模與驗證方法

文檔序號:6436651閱讀:167來源:國知局
專利名稱:一種基于模型轉換的cps建模與驗證方法
技術領域
本發(fā)明是一種基 于模型轉換的CPS建模與驗證方法,主要用于對CPS進行建模與驗證。
背景技術
信息物理系統(tǒng)(Cyber Physical System, CPS)將物理過程與計算相結合,通過嵌入式系統(tǒng)和網絡對物理設備進行監(jiān)測與控制,計算與物理過程通過反饋機制相互影響。CPS 能否滿足設計需求,對系統(tǒng)設計實施來說至關重要,驗證技術可以確定系統(tǒng)是否滿足某些屬性,彌補了傳統(tǒng)的測試技術無法證明系統(tǒng)不存在缺陷的不足,在提高和保障系統(tǒng)安全性, 可靠性等方面起到了關鍵的作用。形式化驗證方法利用數學方法來驗證規(guī)約的屬性是否正確。一般的模型檢驗技術應用于有限狀態(tài)的系統(tǒng),而CPS具有離散與連續(xù)的行為,存在無限的狀態(tài),對大規(guī)模CPS的驗證工作變的更有挑戰(zhàn)。越來越多的形式化的驗證方法應用于CPS驗證,其中基于微分動態(tài)邏輯(dL, Differential Dynamic Logic)的定理證明方法在對CPS進行驗證時能有效準確地適用于大規(guī)模CPS的屬性驗證,由于其操作模型Hybrid Programs (以下簡稱HP)難以進行通用直觀的建模工作,特別在CPS設計階段難以體現設計的一般化。

發(fā)明內容
本發(fā)明針對微分動態(tài)邏輯方法的缺陷,使用HybridUML對CPS進行建模,提出一種將HybridUML模型轉換為HP的模型轉換方法,利于轉換得到的HP進行CPS屬性的推理驗證。將通用的模型轉換為形式化的模型進行驗證也是軟件工程領域研究的熱點。HybridUML 是UML的一種擴展,彌補了 UML沒有精確語義和不能對連續(xù)狀態(tài)建模的不足,且同時保持了 UML通用直觀的特性。本發(fā)明的一種基于模型轉換的CPS建模與驗證方法,用于對CPS進行建模與驗證, 可以直接對CPS進行形式化建模,并且自動模型轉換為微分動態(tài)邏輯方法的操作模型,進而使用定理證明器進行驗證。與過去的方法相比,本發(fā)明既可以很好地對通用建模語言所建的CPS模型進行驗證,又彌補了 HP不夠通用、一般化的弱點。技術方案本發(fā)明的方法首先利用HybirdUML對CPS進行建模,再進行自動模型轉換為微分動態(tài)邏輯的操作模型HP (Hybrid Programs),然后生成輸入代碼作為定理證明器的輸入。本發(fā)明的具體步驟如下步驟1).分析給出微分動態(tài)邏輯方法驗證CPS的操作模型HP的形式化描述,包括 InitBlock表示初始化塊,DJ表示離散變遷的集合,CE表示連續(xù)變化的集合,HPSkeleton和 HPContent分別表示Hybrid Programs的框架禾口內容,步驟2).在HybridUML元模型數據結構表示基礎上,增加Mode和Agent分類、頂層Mode、變遷的源和目標Mode、變遷分類等的形式化表示,
步驟3).定義模型轉換規(guī)則的格式,包括RuleType表示規(guī)則的類型,分為映射規(guī)則和處理規(guī)則,Mapping/Processing表示規(guī)則的映射或處理過程,Return Result表示返回規(guī)則處理的結果,步驟4).建立共享 變量表規(guī)則CreateShareVariableTable,表的每一行表示 Agent之間共享的變量,用于解決HybridUML有變量有作用域限制,而Hybrid Programs中變量皆為全局變量的問題,步驟5).進行HybridUML模型中靜態(tài)結構到HPSkeleton的轉換,步驟6).建立規(guī)則CreateTransitionPath將一個變遷以別一個變遷的目標Mode 為源Mode的兩個變遷進行合并,步驟7).建立規(guī)則EliminateJunction將HybridUML的狀態(tài)圖中的分叉點進行合并步驟8).建立規(guī)則FlatHierarchyMode,根據變遷的種類將HybridUML狀態(tài)圖的層次進行展開步驟9).定義有向圖TransitionGraph表示展開后的簡單狀態(tài)圖,圖的頂點由 HybridUML中原子Mode組成,頂點之間的邊表示以該兩個頂點為源和目標的變遷,步驟10).建立變遷轉換的規(guī)則MappingTGtoHP將TransitionGraph中的變遷轉換為Hybrid Programs中的變遷,步驟11).生成規(guī)則應用的模板TemplateHUtoHP,組織步驟4)至步驟10)中建立的規(guī)則,對于輸入的HybridUML模型應用模板生成相應的Hybrid Programs模型,步驟12).利用微分動態(tài)邏輯公式對CPS屬性進行規(guī)約,步驟13).根據定理證明器KeYmaera的輸入格式要求,將得到的Hybrid Programs 模型和步驟12)中的屬性公式進行格式化,生成KeYmaera的輸入代碼,步驟14).將步驟13)得到的輸入代碼作為KeYmaera進行驗證。步驟4)至步驟10)模型轉換規(guī)則的建立將模型轉換規(guī)則分為映射規(guī)則和處理規(guī)則兩大類映射規(guī)則將HybridUML的動態(tài)行為映射為Hybrid Programs形式化描述中的 HPContent,將靜態(tài)結構映射為HPSkeleton ;處理規(guī)則對HybridUML靜態(tài)結構以及動態(tài)行為進行處理以幫助映射規(guī)則進行映射。步驟1)中,對Hybrid Programs形式化描述,將Hybrid Programs分為五大部分, InitBlock表示初始化塊,DJ表示離散變遷的集合,CE表示連續(xù)變化的集合,HPSkeleton和 HPContent分別表示Hybrid Programs的框架禾口內容。


圖1是轉換規(guī)則的格式定義圖。圖2是定理證明器KeYmaera輸入格式圖。圖3是ETCS列車MA動態(tài)分配示意圖。圖4是ETCS組成結構圖。
圖5是Agent Train的狀態(tài)圖。
圖6是Agent RBC的狀態(tài)圖。圖7是本發(fā)明流程示意圖。表1是HybridUML與Hybrid Program模型元素對應關系
權利要求
1.一種基于模型轉換的CPS建模與驗證方法,其特征包括如下步驟步驟1)分析給出微分動態(tài)邏輯方法驗證CPS的操作模型Hybrid Programs的形式化描述用InitBlock表示初始化塊; 用DJ表示離散變遷的集合; 用CE表示連續(xù)變化的集合;用HPSkeleton和HPContent分別表示Hybrid Programs的框架和內容; 步驟2)在HybridUML元模型數據結構表示基礎上,增加 Mode和Agent分類、頂層Mode、變遷的源和目標Mode、變遷分類的形式化表示; 步驟幻定義模型轉換規(guī)則的格式用RuleType表示規(guī)則的類型,規(guī)則的類型分為映射規(guī)則和處理規(guī)則; 用Mapping/Processing表示規(guī)則的映射或處理過程; 用Return Result表示返回規(guī)則處理的結果; 步驟4)建立共享變量表規(guī)則CreateShare VariableTable 表的每一行表示Agent之間共享的變量,用于解決HybridUML中變量有作用域限定,而 Hybrid Programs中變量皆為全局變量的問題;步驟5)進行HybridUML模型中靜態(tài)結構到HPSkeleton的轉換; 步驟6)建立規(guī)則CreateTransitiorfath,將一個變遷和以另一個變遷的目標Mode為源Mode的兩個變遷進行合并;步驟7)建立規(guī)則Eliminatejunction,將HybridUML的狀態(tài)圖中的分叉點進行合并; 步驟8)建立規(guī)則FlatHierarchyMode,根據變遷的種類將HybridUML狀態(tài)圖的層次進行展開;步驟9)定義有向圖TransitionGraph表示展開后的簡單狀態(tài)圖,圖的頂點由 HybridUML中原子Mode組成,頂點之間的邊表示以該兩個頂點為源和目標的變遷;步驟10)建立變遷轉換的規(guī)則MappingTGtoHPJf iTransitionGraph中的變遷轉換為 Hybrid Programs 中的變遷;步驟11)生成規(guī)則應用的模板TemplateHUtoHP,組織步驟4)至步驟10)中建立的轉換規(guī)則,對輸入的HybridUML模型應用模板生成相應的Hybrid Programs模型; 步驟12)利用微分動態(tài)邏輯公式對CPS屬性進行規(guī)約;步驟1 根據定理證明器KeYmaera的輸入格式要求,將得到的Hybrid Programs模型和步驟12)中的屬性公式進行格式化,最后生成KeYmaera的輸入代碼; 步驟14)將步驟13)得到的輸入代碼作為KeYmaera進行驗證。
2.根據權利要求1所述方法,其特征是所述步驟幻中,具體增加的形式化表示如下 (1)、Mode與Agent的分類根據Mode是否有子Mode將Mode分為復合Mode和原子Mode.子Mode不為空定義為復合Mode,反之定義為原子Mode.根據Agent是否有子Agent 將Mode分為復合Agent和原子Agent,原子Agent具有自己的行為,復合Agent則沒有;0)、頂層Mode的形式化表示只有原子Agent才包含頂層Mode,用來表示其行為 TMa A — behaviorA (J),Vo eA· kindA (α) = PrimitiveAgent(3)、變遷的源和目標控制點srcT和tarT分別表示變遷的源和目標控制點,新增變遷的源Mode和目標Mode的表示srcModeT :T — {Μ U MIjtarMode1 :Τ — {Μ U ΜΙ}變遷不僅在Mode與其子Mode實例間交換控制,子Mode實例之間也有控制交換, srcModeT 和 tarModeT 必需滿足Vi e Γ · srcModeT {t)&M a tarModeT ( ) € MIVsrcModeT (t) e MI Λ tarModeT(t) e MIVsrcModeT (t) e MI Λ tarModeT(t) e MG)、變遷集的分類根據變遷源和目標控制點的種類將Mode的變遷分為三種類型進入變遷集,退出變遷集和內部變遷集;■進入變遷集,表示變遷源為Mode的進入控制點,變遷目標為子Mode實例的進入控制點的變遷的集合;■內部變遷集,表示復合Mode內部子Mode實例之間變遷的集合;■退出變遷集,表示變遷源為子Mode實例的退出控制點,變遷目標為Mode的退出控制點的變遷的集合。
3.根據權利要求1所述方法,其特征是所述步驟5)中,HybridUML中Agent是分層和并行的,組合Agent自身沒有行為描述,原子Agent包含一個狀態(tài)機描述其行為;假設 AP 為原子 Agent 的有限集合,AP e A η ΚΙ,^α&ΑΡ · kindA (a) =PrimitiveAgent-,Agent之間是并行的,在HP中處理并行方法是設e AP為具有連續(xù)動態(tài)行為的原子Agent,徹的狀態(tài)的連續(xù)變化只受其它Agent離散時間點上與其通信的影響,而不必考慮通信過程;通過不確定選擇操作符(Π )和重復操作符(*)連結aO和其他原子Agent的狀態(tài),對每個可能的時間點進行建模,而不需要對通信過程建模。
4.根據權利要求1所述方法,其特征是步驟6)中,在HybridUML里變遷的源和目標控制點所屬Mode可能是原子Mode也可能是復合Mode,控制點也可能是交叉點,而HP模型中變遷的源和目標都為原子狀態(tài),所以需要將層次的狀態(tài)圖展開成原子Mode的組成的簡單狀態(tài)圖;經過Mode的層次約束繼承后,HybridUML狀態(tài)圖中的每個Mode都已繼承其上層 Mode的約;對于狀態(tài)圖內的每個變遷,若變遷的源或目標Mode為復合Mode,則需要向其上一層或下一層尋找變遷,直到變遷的源和目標都為原子Mode;在尋找變遷的路徑過程中, 如果變遷t2以變遷、的目標控制點為源控制點,則在變遷集T中加入以、的源控制點為源控制點,t2的目標控制點為目標控制點的變遷,待處理完畢后將t1; t2從變遷集中刪除。
5.根據權利要求1所述方法,其特征是步驟7)中,對于HybridUML變遷集里的每個變遷,如果變遷目標控制點為交叉點,則將該變遷與每個以此交叉點為源控制點的變遷應用規(guī)則CreateTransitiorfath,直到變遷集中沒有變遷以交叉點為源或目標控制點,滿足t e T · kindCP(cpCPI (srcT (t))) Φ· junction Λ kindCP(cpCPI (tarT (t))) Φ· junction。
6.根據權利要求1所述方法,其特征是步驟8)中,對于一個頂層Mode,將其所有子 Mode加入至隊列,首先處理其所有進入變遷,對于每個進入變遷,如果變遷的目標控制點所屬的Mode為復合Mode,尋找處理該復合Mode的所有進入變遷;再處理退出變遷,對于每個退出變遷,如果變遷的源控制點所屬Mode為復合Mode,尋找處理該復合Mode的所有退出變遷;最后處理內部變遷,對于內部變遷的目標Mode,如果是復合Mode則尋找處理復合Mode 的進入變遷,如果內部變遷的源Mode為復合Mode,尋找處理其退出變遷;對于處理過 程中遇到的每個復合Mode,都將其所有子Mode加入隊列,然后處理隊首每項并刪除直到隊列為空。
7.根據權利要求1所述方法,其特征是步驟9)中,Transiti0nGraph(MTC,Ttg)是狀態(tài)圖展開后由原子Mode及其之間的變遷組成的有向圖,其中圖的頂點集Mtc SHybridUML 模型中原子Mode的集合,VweMrc · kindM (m) = PrimitiveMode, Ttc為邊的集合 Vte Ttg · kindM (srcModer (0) = PrimitiveMode a kindM {tarMode τ (0) = PrimitiveMode,邊之間關系 t = {<v, w>|t e Ttg · ν = srcModeM(t), w = tarModeM(t)},表示以 ν 為源 Mode, w為目標Mode的變遷。
8.根據權利要求1所述方法,其特征是步驟10)中,經過步驟9)后,得到 TransitionGraph,其包含的HybridUML的兩類動態(tài)行為離散變遷和連續(xù)變化,分別對應于HP模型的離散變遷和連續(xù)變遷;HybridUML離散變遷中的觸發(fā)事件、變遷條件以及變遷執(zhí)行動作分別與HP離散變遷相對應元素;為了標識當前HP中當前活動的狀態(tài),在InitBlock中新增一個標識變量 ActiveState ;在HP變遷中,首先判斷變遷的源所在Mode是否為ActiveState,如果是才進行事件的觸發(fā),在執(zhí)行完變遷動作后,將ActiveState設置為變遷目標控制點所在的Mode,完成控制的轉移。
9.根據權利要求1所述方法,其特征是步驟11)中,步驟4)至步驟10)模型轉換規(guī)則的建立將模型轉換規(guī)則分為映射規(guī)則和處理規(guī)則兩大類映射規(guī)則將HybridUML的動態(tài)行為映射為Hybrid Programs形式化描述中的 HPContent,將靜態(tài)結構映射為HPSkeleton ;處理規(guī)則對HybridUML靜態(tài)結構以及動態(tài)行為進行處理以幫助映射規(guī)則進行映射;為了組織好建立的規(guī)則,新加兩個方法進行完成模板的建立AenameSharedVariables 方法將HP模型中共享的變量置為同名,MergeHPModel方法將對每個原子Agent轉換到的 HP模型合并成.根據得到的規(guī)則建立規(guī)則應用模板,按照模板執(zhí)行規(guī)則即可生成目標模型。
10.根據權利要求1所述方法,其特征是步驟13)中,轉換后得到的HP模型已經可以進行手工的推理驗證,作為定理證明器KeYmaera的輸入還需要對HP模型進行格式輸出,#號之間表示對該區(qū)域的說明.InitBlock對應于狀態(tài)變量和變量值的聲明和初始條件區(qū)域, HPSkeleton和HPContent對應于系統(tǒng)的動態(tài)行為,要驗證的屬性利用dL公式進行描述;此夕卜,特殊邏輯中所用到的符號必須替換為KeYmaera中相應的輸入。
全文摘要
本發(fā)明提出了一種基于模型轉換的CPS建模與驗證方法,主要用于處理CPS建模與屬性驗證問題,本發(fā)明涉及到的關鍵操作包括(1)采用HybridUML對CPS進行建模,并將所建HybridUML模型轉換為微分動態(tài)邏輯方法的操作模型混合程序Hybrid Programs。首先按照HybridUML和Hybrid Programs元模型元素之間的關系定義模型轉換的規(guī)則,并生成規(guī)則應用的模板,再在模型層次應用規(guī)則進行模型轉換自動生成Hybrid Programs;(2)將得到的Hybrid Programs根據定理證明器KeYmaera的輸入格式,生成輸入代碼,在KeYmaera中進行推理驗證。
文檔編號G06F9/44GK102436375SQ20111033233
公開日2012年5月2日 申請日期2011年10月28日 優(yōu)先權日2011年10月28日
發(fā)明者朱敏, 李加凱, 李必信, 翟小祥, 陳喬喬 申請人:東南大學
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1