999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

航天復雜系統(tǒng)測發(fā)控流程仿真引擎設計與評價

2023-12-04 05:07:58申立群田宇陽董偉鋒
系統(tǒng)工程與電子技術 2023年12期
關鍵詞:引擎評價系統(tǒng)

胡 濤, 申立群, 田宇陽, 董偉鋒

(哈爾濱工業(yè)大學儀器科學與工程學院, 黑龍江 哈爾濱 150001)

0 引 言

隨著時代發(fā)展,航天復雜系統(tǒng)越發(fā)完善,每種型號的航天復雜系統(tǒng)測發(fā)控系統(tǒng)都需要有對應的測試流程[1-2]。一個測試流程包含幾十上百個測試項,在構建流程時還需滿足測試項之間的邏輯約束、數(shù)據(jù)約束和資源約束。隨著測試設備的更迭和約束關系的變化,搭建好的測試流程也需要根據(jù)需求進行不斷的調(diào)整和更新。目前,測發(fā)控測試流程以人工搭建為主,人工搭建不僅耗時耗力,而且不一定能滿足邏輯和約束的正確性[3-4]。一旦有一處錯誤,就會對整個測試流程產(chǎn)生影響,需要重新排查,增添額外的開銷。航天復雜系統(tǒng)測發(fā)控流程以串行測試為主,同一時刻只能對一個測試項進行測試,在一次測試過程中,測試設備的平均閑置時間占到測試耗時的50%以上[5-6]。顯然,傳統(tǒng)的測發(fā)控流程構建方式和測試效率已經(jīng)不能滿足現(xiàn)代社會發(fā)展的需求。

隨著計算機水平的發(fā)展,計算機仿真應用給測試效率低下的問題提供了解決思路。仿真引擎是仿真領域的“操作系統(tǒng)”,在定義模型開發(fā)和運行規(guī)范基礎上,對仿真對象、事件、時間進行精確管理并對底層資源進行動態(tài)分配,使仿真系統(tǒng)能有條不紊地按要求運行[7]。20世紀80年代中期,美國研發(fā)了全球第一個并行作戰(zhàn)仿真操作系統(tǒng)——時間扭曲操作系統(tǒng)(time warp operating system, TWOS)。20世紀90年代,研發(fā)了具有里程碑意義的并行仿真引擎——佐治亞理工時間扭曲(Georgia tech time warp, GTW)。隨后,在此基礎上發(fā)布了μsik、擴展開發(fā)工具包(flexible development kit, FDK)等產(chǎn)品[8-10]。在國內(nèi),文獻[11]利用統(tǒng)一建模語言(unified modeling language, UML)對仿真模型可移植性(simulation model portability, SMP)仿真引擎進行擴展,取得一定的進展。文獻[12]提出利用支持并行與分布式仿真的仿真引擎,明顯提高了仿真的運行速度。文獻[13]發(fā)布了以事件為中心的仿真引擎,降低了引擎運行消耗,提升了運行效率和性能。仿真引擎技術的應用,使得航天復雜系統(tǒng)測發(fā)控流程的搭建和測試進入新的時代。

由于航天復雜系統(tǒng)測發(fā)控流程本身的結構、參數(shù)和屬性的復雜性等原因,目前國內(nèi)外對測發(fā)控流程評價的研究較少,無法制定統(tǒng)一的評價標準,流程評價的難度較大。Petri網(wǎng)是一個狀態(tài)變遷模型,也是一個并發(fā)模型,描述了一個系統(tǒng)中各異步成分之間的關系,也允許多個狀態(tài)變遷同時發(fā)生[14]。在分布式軟件系統(tǒng)[15-18]、并發(fā)并行計算[19-22]、柔性制造系統(tǒng)[23-26]、邏輯推理[27-29]等領域,Petri網(wǎng)都有許多成功應用的案例。文獻[30]針對民航飛機結構和故障機理復雜的特性,建立了基于Petri網(wǎng)的民航飛機故障診斷工作流模型,將工作流技術引入民航飛機故障診斷領域,提高了故障診斷的快速性和有效性。文獻[31]提出一種新的通用Petri網(wǎng)模型,用于生產(chǎn)系統(tǒng)的設計和性能評價,該模型允許對系統(tǒng)配置進行建模,確定每個工作站的交貨期、吞吐量和利用率。文獻[32]以系統(tǒng)建模語言(system modeling languange,SysML)活動圖模型為焦點,提出一種將活動圖模型自動轉(zhuǎn)換為Petri網(wǎng)模型的機制,然后使用Petri網(wǎng)驗證工具對轉(zhuǎn)換之后的模型進行形式化驗證,保證了指揮信息系統(tǒng)的正確性。本文基于Petri網(wǎng)提出流程邏輯評價算法,將測發(fā)控測試流程映射到Petri網(wǎng)上,通過模擬流程運行的過程,對測發(fā)控流程的邏輯正確性進行評價與分析。

為了提高航天復雜系統(tǒng)測試效率,本文將測發(fā)控流程并行測試與仿真引擎結合起來,設計了一款航天復雜系統(tǒng)測發(fā)控流程并行仿真引擎,對測發(fā)控流程的測試進行仿真模擬。相比實物實驗,仿真試驗可以更方便地獲得統(tǒng)計性數(shù)據(jù)。其次,仿真具有很高的效費比,可以讓測試人員擺脫實物設備的約束,靈活地對多種型號的航天復雜系統(tǒng)測發(fā)控流程進行調(diào)整,縮短并行測試流程設計時間。同時,為了能夠準確發(fā)現(xiàn)流程中存在的邏輯問題,本文通過建立相應的映射規(guī)則,設計了基于Petri網(wǎng)的測發(fā)控流程的邏輯評價算法,提高了流程設計的可靠度和效率,減少了流程設計人員的工作量。

1 并行仿真引擎總體設計

引擎是測試項任務的調(diào)度者,是測試對象的載體,航天復雜系統(tǒng)測發(fā)控流程并行仿真引擎以Activiti工作流引擎為核心,結合航天復雜系統(tǒng)測發(fā)控和工作流的特點,實現(xiàn)對測發(fā)控過程的仿真。航天復雜系統(tǒng)測發(fā)控并行仿真引擎的架構設計如圖1所示。

圖1 并行仿真引擎架構圖Fig.1 Parallel simulation engine architecture diagram

引擎規(guī)范是航天復雜系統(tǒng)測發(fā)控流程并行仿真引擎運行的基石,定義了引擎在設計開發(fā)階段需要遵守的規(guī)則。引擎規(guī)范包含3個部分:自動測試標記語言(automatic test markup language,ATML)規(guī)范、業(yè)務流程模型注解(business process model and notation,BPMN)規(guī)范和引擎運行規(guī)范。ATML規(guī)范是一項關于自動測試系統(tǒng)相關要素的描述標準,測發(fā)控流程中的測試對象描述、測試項描述、測試設備描述和約束條件描述都基于ATML規(guī)范,采用ATML規(guī)范方便與其他系統(tǒng)進行對接和交互。BPMN規(guī)范定義了工作流中包含哪些元素,以及元素之間的連接關系等內(nèi)容。目前,BPMN規(guī)范已經(jīng)演變?yōu)闃I(yè)務流程的通用語言,被大部分工作流引擎兼容(包括Activiti引擎)。引擎運行規(guī)范是在并行仿真過程中測試對象、測試項要遵守的準則,闡述仿真過程應該怎樣、該如何進行。

引擎解析ATML描述文件獲得測發(fā)控流程的元素描述,這些描述與BPMN元素結合,被封裝成流程測試項或測試設備,按照種類進行分類,供測試人員選擇。測試人員選取需要的測試項,在繪制界面進行繪制,指定測試項的代理類路徑和測試設備,完成測試流程構建。測試流程以XML文件形式進行保存,同時保存該流程的PNG格式圖片。

Activiti引擎是航天復雜系統(tǒng)測發(fā)控流程并行仿真引擎的核心。引擎對測試流程文件進行解析并得到BPMN文件,Activiti引擎加載BPMN文件進行流程部署并驅(qū)動。管理中心實現(xiàn)對并行仿真過程的管控,根據(jù)功能的劃分,將管理中心的職能劃分為5部分:仿真對象管理、仿真控制管理、時間管理、數(shù)據(jù)管理和約束管理。采用管理中心進行引擎控制的目的是實現(xiàn)功能之間的相互解耦,方便開發(fā)和后期維護。仿真顯示是對仿真結果進行可視化展示,包括仿真進度實時顯示、仿真日志輸出、仿真甘特圖和仿真數(shù)據(jù)展示。

航天復雜系統(tǒng)測發(fā)控流程優(yōu)化的目的是縮短流程設計時間、提升測試效率;流程的邏輯評價以Petri網(wǎng)為基礎,通過構建流程邏輯評價算法代替人工計算,檢驗流程邏輯是否合理,定位邏輯異常節(jié)點。

本文在并行仿真引擎架構的基礎上,基于Java語言,選擇圖形編輯框架(graphical editing framework, GEF)作為圖形化編輯框架,在Eclipse平臺上對航天復雜系統(tǒng)測發(fā)控流程的并行仿真引擎進行設計開發(fā)。引擎仿真運行界面實現(xiàn)圖如圖2所示。

圖2 流程仿真運行界面圖Fig.2 Interface diagram of process simulation running

2 測發(fā)控流程邏輯評價

2.1 BPMN流程元素與Petri網(wǎng)映射規(guī)則

航天復雜系統(tǒng)測發(fā)控流程以BPMN 2.0規(guī)范為基礎進行構建,本質(zhì)上可以將流程看作是一個有向圖。由Petri網(wǎng)定義可知,Petri網(wǎng)的結構與航天復雜系統(tǒng)測發(fā)控流程的結構具有一定的相似性,通過合理的映射規(guī)則,可以將測發(fā)控流程轉(zhuǎn)化為Petri網(wǎng)的表達形式。Petri網(wǎng)有著嚴密的數(shù)學基礎,可以通過數(shù)學的方式來描述流程仿真的過程,檢驗流程的邏輯正確性,給予科學準確的評價結果。測發(fā)控流程元素和Petri網(wǎng)映射規(guī)則如表1所示。

表1 測發(fā)控流程元素和Petri網(wǎng)映射規(guī)則

2.2 測發(fā)控流程邏輯評價指標

邏輯評價關心流程中是否存在邏輯錯誤,檢查流程可能到達的狀態(tài)和是否所有的測試項都能夠到達。流程邏輯評價的指標包含安全性、可達性、死鎖和死循環(huán)。對這4個指標的定義和驗證方法如下。

(1) 安全性

Petri網(wǎng)如果要滿足安全性的約束,要求網(wǎng)中的任意一個庫所的令牌數(shù)量不能超過1。映射在測發(fā)控流程中,表示測試流程中的任意一個測試項在一次仿真中不能被加載驅(qū)動兩次或多次。圖3是存在安全性問題的流程樣例。測試項1后是一個并行網(wǎng)關,測試項2和測試項3并行執(zhí)行,當兩者需要合并時未使用并行網(wǎng)關合并,而是連接到了測試項4。測試項4在執(zhí)行時會被實例化兩次,導致后邊的流程元素會被執(zhí)行兩次,仿真過程發(fā)生重復執(zhí)行。

安全性基于可達圖的驗證方法是在得到可達圖后,遍歷可達圖的所有節(jié)點,如果發(fā)現(xiàn)存在一個節(jié)點的標識向量中,有庫所包含兩個或者多個令牌,則表明該庫所不滿足安全性的要求,流程的安全性不能得到保證。

圖3 存在安全性問題的流程示例Fig.3 Process example with security issues

(2) 可達性

Petri網(wǎng)可達性驗證是保證從Petri網(wǎng)的初始狀態(tài)開始,每一個庫所可以經(jīng)過一系列的變遷到達。映射到測發(fā)控流程中,標識從初始狀態(tài),也就是流程的開始節(jié)點開始,都可以通過一個可執(zhí)行路徑到達結束節(jié)點。同時,到達結束節(jié)點時,不存在別的正在執(zhí)行的流程節(jié)點。圖4是存在不可達節(jié)點的流程樣例。開始事件和測試項1連接,測試項1任務又和結束節(jié)點連接,測試項1包含在一個從開始到結束的可執(zhí)行任務序列中。測試項2只和結束節(jié)點相連接,只有輸出并沒有輸入。沒有事件能夠觸發(fā)測試項2開始,因此其是一個不可達節(jié)點。

檢測可達圖中是否存在葉子節(jié)點,同時要求該葉子節(jié)點中所有包含令牌的庫所均是流程結束節(jié)點所對應的庫所,每個結束事件所對應的庫所都要包含令牌。如果滿足該要求,則說明該流程中的所有節(jié)點都是可達的。

圖4 存在不可達節(jié)點的流程示例Fig.4 Process example with unreachable nodes

(3) 死鎖

測發(fā)控流程死鎖是指在流程仿真過程中,由于競爭資源或者由于彼此通信而造成的一種阻塞現(xiàn)象。航天復雜系統(tǒng)測發(fā)控流程有著嚴格約束,測試項可能存在測試先后順序和數(shù)據(jù)依賴現(xiàn)象。當存在數(shù)據(jù)依賴關系時,流程設計不合理,會導致死鎖現(xiàn)象發(fā)生,仿真流程會卡在某個測試項停滯不前。圖5是存在死鎖的流程樣例。并行網(wǎng)關觸發(fā)要求滿足所有的前置條件,測試項2之前存在一個并行網(wǎng)關,并行網(wǎng)關和測試項1、測試項3相連,測試項3又依賴測試項2的數(shù)據(jù),這樣就形成了邏輯上的死鎖。測試項2一直在等待測試項3執(zhí)行,測試項3又一直在等待測試項2執(zhí)行。

圖5 存在死鎖的流程示例Fig.5 Process example with deadlock

基于可達圖的死鎖驗證方法比較簡單,只需驗證映射后的流程中的所有變遷是否都出現(xiàn)在可達圖中,未出現(xiàn)變遷所對應的測試項便是死鎖現(xiàn)象發(fā)生的節(jié)點。

(4) 死循環(huán)

Petri網(wǎng)中的死循環(huán)指的是在一次變遷序列中,同一個標識在不同的時間出現(xiàn)過兩次或者兩次以上。變遷序列指Petri網(wǎng)從初始標識M0開始,到結束標識截止。在測發(fā)控流程中,死循環(huán)指因為流程邏輯設計不合理而導致一個不能自動終止的循環(huán)。如果在流程設計階段忘記添加跳出判斷條件,則會發(fā)生死循環(huán)。死循環(huán)會讓仿真無法正常結束,需要進行人工干預。流程中存在死循環(huán),也有可能會導致死循環(huán)后邊的流程一直重復執(zhí)行,整個仿真都會出現(xiàn)錯誤。一個存在死循環(huán)的流程樣例如圖6所示。測試項2存在兩個輸出,連接結束節(jié)點和測試項3。流程在執(zhí)行完測試項2后,兩個輸出都會被觸發(fā)執(zhí)行,導致測試項1~測試項3形成一個循環(huán)。由于缺少判斷條件,循環(huán)會一直進行,無法跳出,結束節(jié)點也會一直被重復實例化。

圖6 存在死循環(huán)的流程示例Fig.6 Process example with an infinite loop

測發(fā)控流程中死循環(huán)在可達圖中的展現(xiàn)形式為可達圖的環(huán)路,只要檢測到可達圖中存在環(huán)路,則說明測發(fā)控流程中存在死循環(huán)。

2.3 邏輯評價算法流程

將測發(fā)控流程按照合理的規(guī)則映射到Petri網(wǎng),就可以通過數(shù)學的方式描述流程仿真的過程。基于Petri網(wǎng)的航天復雜系統(tǒng)測發(fā)控流程可以獲得流程的結構矩陣,根據(jù)矩陣中庫所、變遷的輸入輸出關系和流程初始標識,得到測發(fā)控流程的可達圖/可覆蓋樹。最后,根據(jù)可達圖/可覆蓋樹的性質(zhì)與特點,就可以對整個航天復雜系統(tǒng)測發(fā)控流程的安全性、可達性、死鎖和死循環(huán)進行邏輯評價。基于Petri網(wǎng)的航天復雜系統(tǒng)測發(fā)控流程的邏輯評價方案示意圖如圖7所示。

圖7 邏輯評價方案示意圖Fig.7 Schematic diagram of logical evaluation scheme

檢查可達圖中是否存在無界量w,可以判斷測發(fā)控流程中是否存在安全性問題。如果可達圖中存在環(huán)路,說明測發(fā)控流程中存在死循環(huán)。當可達圖中存在不可達節(jié)點時,需要進一步判斷才能確定是哪種邏輯問題。如果可達圖的葉子節(jié)點中測發(fā)控流程結束事件對應庫所的令牌不為0,則測發(fā)控流程存在不可達問題;如果令牌數(shù)為0,則是由于死鎖導致測發(fā)控流程未進行到結束節(jié)點導致。流程評價算法的流程圖如圖8所示。

圖8 邏輯評價算法流程圖Fig.8 Flowchart of logic evaluation algorithm

3 測發(fā)控流程構建與評價仿真

測發(fā)控流程實例搭建如圖9所示,流程實例最大并發(fā)數(shù)為5,共包含9個測試對象、59個測試項。依照約束規(guī)則,測試流程整體可分為3個測試環(huán)節(jié):單項檢查、單元測試和分系統(tǒng)測試。不同測試環(huán)節(jié)之間由并行網(wǎng)關進行連接,兩個相鄰并行網(wǎng)關包含的測試支路并行執(zhí)行。

圖9 測試流程實例圖Fig.9 Test process example diagram

利用開發(fā)的航天復雜系統(tǒng)測發(fā)控流程的仿真引擎和設計的基于Petri網(wǎng)的流程邏輯評價算法對搭建的測試流程進行仿真,仿真結果如圖10所示。

為進一步驗證流程邏輯評價算法評價結果的正確性,對圖9流程實例進行部分改動,驗證算法,檢驗流程的安全性、可達性、死鎖與死循環(huán)問題的正確性。修改后的流程實例部分連接圖如圖11所示。安全性問題改動如圖11(a)所示,將并行網(wǎng)關替換為單向網(wǎng)關;不可達改動如圖11(b)所示,刪除制導系統(tǒng)模擬飛行測試和彈載計算機自檢之間的連接線;死鎖改動如圖11(c)所示,將并行網(wǎng)關和伺服結構氣壓、油面檢查測試項之間的箭頭反向,構成死鎖;死循環(huán)改動如圖11(d)所示,在線振動測試和重力場測試之間構成死循環(huán)。

圖11 測試流程實例改動對比圖Fig.11 Test process example change comparison diagram

將改動后的流程實例帶入流程邏輯評價算法,驗證結果如表2所示。由表2可以看到,基于Petri網(wǎng)的邏輯評價算法能夠?qū)⒋嬖谶壿嬪e誤的測試項ID定位出來,并標識出現(xiàn)的邏輯錯誤。當獲取了存在邏輯錯誤的流程節(jié)點后,流程設計人員可以返回到航天復雜系統(tǒng)測發(fā)控流程的仿真引擎,對流程進行重新繪制和修改,為后續(xù)流程的優(yōu)化和調(diào)整提供更為可靠的依據(jù)。

表2 改動后的流程實例驗證結果

4 結 論

本文實現(xiàn)了航天復雜系統(tǒng)測發(fā)控流程并行仿真引擎的設計與評價,主要完成了以下工作:

(1) 結合工作流和并行仿真技術,利用Java語言開發(fā)設計了航天復雜系統(tǒng)測發(fā)控流程的仿真引擎;

(2) 通過建立相應的映射規(guī)則和邏輯評價指標,利用Petri網(wǎng)對航天復雜系統(tǒng)的測發(fā)控流程進行建模;

(3) 通過基于Petri網(wǎng)的流程評價算法驗證測發(fā)控流程邏輯的正確性;

(4) 利用設計的并行仿真引擎來搭建航天復雜系統(tǒng)的測發(fā)控流程實例,對發(fā)生邏輯錯誤的節(jié)點進行定位。

本文設計的航天復雜系統(tǒng)測發(fā)控流程并行仿真引擎,可以實現(xiàn)對流程的可視化繪制,更真實地模擬系統(tǒng)的測試流程,提高了測發(fā)控流程的測試效率。利用相應的映射規(guī)則,可以將測試流程表達為Petri網(wǎng)的形式,對測試流程的邏輯正確性進行驗證,并對其中存在邏輯錯誤的節(jié)點進行定位,為流程的設計和優(yōu)化提供更為可靠的依據(jù)。

猜你喜歡
引擎評價系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
SBR改性瀝青的穩(wěn)定性評價
石油瀝青(2021年4期)2021-10-14 08:50:44
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
藍谷: “涉藍”新引擎
商周刊(2017年22期)2017-11-09 05:08:31
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
無形的引擎
河南電力(2015年5期)2015-06-08 06:01:46
基于Moodle的學習評價
基于Cocos2d引擎的PuzzleGame開發(fā)
保加利亞轉(zhuǎn)軌20年評價
主站蜘蛛池模板: 欧美一区日韩一区中文字幕页| 国产微拍精品| 国产无码精品在线| 波多野衣结在线精品二区| 亚洲第一黄色网| 精品综合久久久久久97超人该| 色综合狠狠操| 国产亚洲欧美在线中文bt天堂| 午夜福利免费视频| 国产麻豆精品在线观看| 国产区91| 亚洲高清日韩heyzo| 国产精品成人免费视频99| 成人av专区精品无码国产| 亚洲色无码专线精品观看| 国内精品一区二区在线观看| 99久久精品久久久久久婷婷| 欧美日韩中文国产va另类| 亚洲第一中文字幕| 婷婷综合亚洲| 亚洲日本在线免费观看| 日本免费新一区视频| 久久精品免费国产大片| 欧美精品H在线播放| 四虎在线观看视频高清无码| 婷婷色一二三区波多野衣| 欧美成人一区午夜福利在线| 黄色网在线免费观看| 日韩精品成人在线| 色妺妺在线视频喷水| 欧美特级AAAAAA视频免费观看| 婷婷色婷婷| 久久永久视频| 韩国v欧美v亚洲v日本v| 日本欧美视频在线观看| 色综合网址| 亚洲免费福利视频| 国产精品亚洲а∨天堂免下载| 538国产视频| 成人免费午夜视频| 波多野结衣一区二区三区88| 亚洲欧洲自拍拍偷午夜色无码| 2020极品精品国产| 国产高潮流白浆视频| 久热中文字幕在线观看| 国产91在线免费视频| 国产精品999在线| 欧美中文一区| 久久精品嫩草研究院| 91美女视频在线| 国产小视频免费| 92精品国产自产在线观看 | 日本久久免费| 91在线视频福利| 91po国产在线精品免费观看| 99视频全部免费| 四虎免费视频网站| 国产美女久久久久不卡| 亚洲无线观看| 在线观看国产小视频| 青青青国产视频手机| 亚洲天堂777| 免费一极毛片| 国产精品女熟高潮视频| 午夜人性色福利无码视频在线观看| 爆操波多野结衣| 一本久道久久综合多人| 福利一区三区| 中文字幕2区| 91福利免费| 波多野结衣中文字幕一区二区 | 97se亚洲综合在线韩国专区福利| 美女内射视频WWW网站午夜| 欧美人人干| 2021国产精品自拍| 免费一级α片在线观看| 无码又爽又刺激的高潮视频| 久久亚洲黄色视频| 第一页亚洲| 无码又爽又刺激的高潮视频| 国产乱人免费视频| 波多野结衣一区二区三视频|