李承民,張 濤,張 斌,張書媛
(1.中國(guó)科學(xué)院大學(xué) 北京 100049;2.中國(guó)科學(xué)院空間應(yīng)用工程與技術(shù)中心 北京 100094;3.武漢大學(xué)經(jīng)濟(jì)與管理學(xué)院,湖北 武漢 430072)
基于HLA的光學(xué)設(shè)施運(yùn)控仿真聯(lián)邦成員設(shè)計(jì)與優(yōu)化
李承民1,張 濤2,張 斌2,張書媛3
(1.中國(guó)科學(xué)院大學(xué) 北京100049;2.中國(guó)科學(xué)院空間應(yīng)用工程與技術(shù)中心 北京100094;3.武漢大學(xué)經(jīng)濟(jì)與管理學(xué)院,湖北 武漢430072)
巡天類光學(xué)載荷是空間天文觀測(cè)的重要載荷,運(yùn)控系統(tǒng)是其中的重要組成。在利用HLA分布式仿真技術(shù)對(duì)巡天觀測(cè)仿真過(guò)程中發(fā)現(xiàn),空間中復(fù)雜的環(huán)境以及較多的成像約束使得運(yùn)控類聯(lián)邦成員任務(wù)負(fù)擔(dān)較重,計(jì)算需求大,該聯(lián)邦成員的運(yùn)算效率直接影響整體仿真效率。因此,本文通過(guò)設(shè)計(jì)樂(lè)觀約束判別算法以及基于openMP多線程技術(shù)優(yōu)化該成員的運(yùn)控運(yùn)算方式,提高運(yùn)行效率。實(shí)驗(yàn)表明,改進(jìn)后的運(yùn)控聯(lián)邦成員大幅提高了光學(xué)設(shè)施仿真任務(wù)執(zhí)行效率,仿真聯(lián)邦成員的運(yùn)算時(shí)間減少55%,仿真聯(lián)邦整體運(yùn)行時(shí)間減少了27.4%。
HLA;光學(xué)設(shè)施;聯(lián)邦設(shè)計(jì);openMP;樂(lè)觀策略
隨著我國(guó)載人航天事業(yè)的迅速發(fā)展,空間載荷呈現(xiàn)出高復(fù)雜性、高精確性以及對(duì)工作環(huán)境高要求的特點(diǎn)。為了高效地驗(yàn)證和優(yōu)化載荷的設(shè)計(jì)方案,國(guó)內(nèi)外均采用仿真方法開展了大量的工作[1-4]。但是,對(duì)某些復(fù)雜的空間載荷,如本文涉及的光學(xué)設(shè)施,其在軌觀測(cè)任務(wù)受到多種因素的限制,且各約束條件之間存在交叉耦合關(guān)系,使用傳統(tǒng)的單機(jī)方法進(jìn)行仿真時(shí),運(yùn)算速度和模型相似度都受到很大限制,以至于結(jié)果可信度并不高。因此需要采用分布式仿真,并對(duì)仿真框架以及每個(gè)仿真模型進(jìn)行合理的設(shè)計(jì)和優(yōu)化。基于HLA的分布式仿真系統(tǒng)是解決此類問(wèn)題的良好方案。
在利用HLA分布式仿真技術(shù)對(duì)光學(xué)載荷巡天觀測(cè)進(jìn)行仿真的過(guò)程中發(fā)現(xiàn),控制聯(lián)邦成員負(fù)責(zé)巡天任務(wù)總體規(guī)劃、復(fù)雜約束條件判斷和仿真流程控制,是整個(gè)仿真聯(lián)邦的核心。但由于觀測(cè)要考慮到如光學(xué)平臺(tái)位姿、天區(qū)劃分、日月雜散光影響、帆板視場(chǎng)遮擋、結(jié)構(gòu)干涉、SAA區(qū)影響、停機(jī)時(shí)間等眾多因素,無(wú)論是任務(wù)規(guī)劃還是運(yùn)行時(shí)狀態(tài)監(jiān)測(cè)均需考慮這些約束,使得運(yùn)控聯(lián)邦成員計(jì)算量巨大,成為整個(gè)仿真系統(tǒng)的瓶頸。
文中采用了基于openMP的并行算法和樂(lè)觀約束判別算法,對(duì)運(yùn)控聯(lián)邦成員進(jìn)行了優(yōu)化,降低了運(yùn)控聯(lián)邦成員的計(jì)算復(fù)雜度,提高了運(yùn)算效率,從而使得整個(gè)仿真聯(lián)邦運(yùn)算效率提高。
為了驗(yàn)證現(xiàn)有設(shè)計(jì)方案,充分考慮任務(wù)運(yùn)行中的能源、雜散光等約束條件,設(shè)計(jì)了基于HLA的分布式仿真系統(tǒng),仿真系統(tǒng)設(shè)計(jì)如圖1所示。仿真系統(tǒng)以完成科學(xué)目標(biāo)的任務(wù)時(shí)間定量分析為結(jié)果,給出最終的大致結(jié)論,并對(duì)運(yùn)營(yíng)規(guī)劃算法給出評(píng)估。整個(gè)仿真聯(lián)邦分為3個(gè)模塊:計(jì)算模塊、相機(jī)模擬模塊和運(yùn)行時(shí)監(jiān)測(cè)模塊。各模塊之間數(shù)據(jù)通過(guò)RTI進(jìn)行交互。
1.1計(jì)算模塊
計(jì)算模塊包括軌道計(jì)算聯(lián)邦成員、日月位置計(jì)算聯(lián)邦成員、姿態(tài)計(jì)算聯(lián)邦成員和意外事件聯(lián)邦成員。
1)軌道計(jì)算聯(lián)邦成員計(jì)算J2000坐標(biāo)系下光學(xué)設(shè)施的位置和姿態(tài)。
2)日月位置計(jì)算聯(lián)邦成員利用DE405星歷庫(kù)計(jì)算太陽(yáng)月球的位置。
3)姿態(tài)計(jì)算聯(lián)邦成員根據(jù)姿態(tài)算法計(jì)算出當(dāng)前大型光學(xué)設(shè)施的姿態(tài)。
4)意外事件聯(lián)邦成員按照預(yù)定概率產(chǎn)生意外事件。
1.2仿真模塊
仿真計(jì)算模塊包括運(yùn)控聯(lián)邦成員、相機(jī)聯(lián)邦成員和數(shù)據(jù)統(tǒng)計(jì)聯(lián)邦成員。
1)運(yùn)控聯(lián)邦成員根據(jù)光學(xué)設(shè)施的位姿、日月位置以及歷史觀測(cè)記錄利用任務(wù)規(guī)劃算法計(jì)算出下一次要觀測(cè)的目標(biāo)區(qū)域,是整個(gè)仿真聯(lián)邦的核心。
2)相機(jī)聯(lián)邦成員模擬相機(jī)實(shí)際拍攝時(shí)工作方式。
3)數(shù)據(jù)統(tǒng)計(jì)聯(lián)邦成員記錄整個(gè)仿真聯(lián)邦運(yùn)行中的數(shù)據(jù),用于結(jié)果分析和錯(cuò)誤處理。
1.3監(jiān)測(cè)模塊
監(jiān)測(cè)模塊包括SAA區(qū)聯(lián)邦成員、帆板監(jiān)測(cè)聯(lián)邦成員、約束條件判斷聯(lián)邦成員和虛擬目標(biāo)聯(lián)邦成員。
1)SAA區(qū)聯(lián)邦成員用來(lái)判斷光學(xué)載荷是否在 SAA區(qū)中,用來(lái)控制光學(xué)設(shè)施工作狀態(tài)。
2)帆板監(jiān)測(cè)聯(lián)邦成員根據(jù)太陽(yáng)位置計(jì)算帆板狀態(tài),并判斷帆板是否出現(xiàn)在視場(chǎng)中。
3)約束條件判斷聯(lián)邦成員用于修正樂(lè)觀約束判斷算法帶來(lái)的誤差。
4)虛擬目標(biāo)聯(lián)邦成員用來(lái)對(duì)被觀測(cè)目標(biāo)行為進(jìn)行模擬。
圖1 仿真聯(lián)邦結(jié)構(gòu)圖Fig.1 Structure diag ram of the simulation system
HLA(High Level Architecture,高層體系結(jié)構(gòu))是分布式仿真的高層體系結(jié)構(gòu),用于實(shí)現(xiàn)大型復(fù)雜仿真系統(tǒng)的聯(lián)合系統(tǒng)仿真及擴(kuò)展。其基本思想就是使用面向?qū)ο蟮姆椒?,設(shè)計(jì)、開發(fā)及實(shí)現(xiàn)系統(tǒng)不同層次和粒度的對(duì)象模型,來(lái)獲得仿真部件和仿真系統(tǒng)高層次上的互操作性與可重用性[5-6]。
在整個(gè)大型光學(xué)設(shè)施仿真聯(lián)邦中,運(yùn)控聯(lián)邦成員負(fù)責(zé)天區(qū)規(guī)劃以及部分約束條件判斷,為整個(gè)聯(lián)邦的核心。運(yùn)控聯(lián)邦成員設(shè)計(jì)的好壞直接影響到整個(gè)仿真聯(lián)邦的工作效率以及仿真結(jié)果的可信程度。
運(yùn)控聯(lián)邦的整體流程設(shè)計(jì)如圖2所示,在接收到來(lái)自其它聯(lián)邦成員的數(shù)據(jù)之后,根據(jù)任務(wù)規(guī)劃算法計(jì)算出目標(biāo)天區(qū),發(fā)送給其它聯(lián)邦成員,并根據(jù)從其它聯(lián)邦成員接收到的消息來(lái)判斷觀測(cè)是否成功。重復(fù)此過(guò)程,直到完成整個(gè)仿真任務(wù)。
其中計(jì)算目標(biāo)天區(qū)模塊為整個(gè)運(yùn)控聯(lián)邦成員甚至是整個(gè)仿真系統(tǒng)的核心。在光學(xué)載荷整體的設(shè)計(jì)方案確定之后,目標(biāo)天區(qū)規(guī)劃算法是唯一影響任務(wù)完成時(shí)間的因素,并且計(jì)算目標(biāo)天區(qū)所用時(shí)間占運(yùn)控聯(lián)邦成員運(yùn)行時(shí)間的70%。所以目標(biāo)天區(qū)計(jì)算模塊設(shè)計(jì)的好壞直接影響到整個(gè)仿真的結(jié)果與仿真的速度。
圖2 運(yùn)控聯(lián)邦成員流程圖Fig.2 Flow chart of the control federation
運(yùn)控聯(lián)邦成員需要對(duì)大量天區(qū)進(jìn)行約束條件計(jì)算,為整個(gè)聯(lián)邦中計(jì)算量最大的聯(lián)邦成員,成為了提升整個(gè)仿真速度瓶頸,因此如何對(duì)運(yùn)控聯(lián)邦成員進(jìn)行優(yōu)化是運(yùn)控聯(lián)邦成員設(shè)計(jì)的關(guān)鍵。針對(duì)運(yùn)控聯(lián)邦成員可以從計(jì)算方法優(yōu)化以及約束判別算法兩個(gè)方面進(jìn)行優(yōu)化。本文分別使用基于openMP的并行算法和樂(lè)觀約束判別算法對(duì)上述兩個(gè)方面進(jìn)行了優(yōu)化。
3.1基于openMP的優(yōu)化
OpenMP是一個(gè)為在共享存儲(chǔ)的多處理機(jī)上編寫并行程序而設(shè)計(jì)的應(yīng)用程序接口,是可移植多線程應(yīng)用程序開發(fā)的行業(yè)標(biāo)準(zhǔn),在細(xì)粒度與粗粒度線程技術(shù)上具有很高的效率[7-8]。
3.1.1算法并行可行化分析
通過(guò)對(duì)整個(gè)聯(lián)邦成員各部分運(yùn)行時(shí)間統(tǒng)計(jì)可知,計(jì)算可見天區(qū)是整個(gè)運(yùn)控聯(lián)邦成員中計(jì)算量最大的部分,約占整個(gè)運(yùn)控聯(lián)邦運(yùn)行時(shí)間的50%。
對(duì)可見天區(qū)觀察的實(shí)質(zhì)為對(duì)劃分好的每一個(gè)子天區(qū)進(jìn)行約束條件的計(jì)算,此部分計(jì)算相互獨(dú)立,且各個(gè)天區(qū)的計(jì)算之間并沒(méi)有前后的邏輯關(guān)系,適合于將其計(jì)算并行化以提高計(jì)算效率[9-13]。
3.1.2并行程序設(shè)計(jì)串行化算法代碼為:
對(duì)坐標(biāo)為(I,j)的天區(qū)進(jìn)行可見性判斷
若本串行代碼的基礎(chǔ)上通過(guò)嵌入指令語(yǔ)句將外層循環(huán)并行化,雖然工作量小,但是在算法的內(nèi)層循環(huán)中,啟動(dòng)數(shù)據(jù)規(guī)約仍然需要系統(tǒng)開銷,如果能夠避免該操作,將進(jìn)一步提高并行效率。對(duì)并行算法進(jìn)行重新設(shè)計(jì)可解決此問(wèn)題。改進(jìn)后的算法并行的粒度較原來(lái)相比更細(xì),并行程度更高。
重新設(shè)計(jì)后代碼:
對(duì)坐標(biāo)為(I,j)的天區(qū)進(jìn)行可見性判斷
針對(duì)改進(jìn)后的算法,使用嵌入指令語(yǔ)句#pragma omp paraellel for將計(jì)算并行化,可顯著提高計(jì)算效率。
3.1.3實(shí)驗(yàn)結(jié)果
實(shí)驗(yàn)平臺(tái)如表 1所示,openMP優(yōu)化選項(xiàng)開啟,使用openMP優(yōu)化可見天區(qū)的計(jì)算,實(shí)驗(yàn)數(shù)據(jù)為程序多次運(yùn)行取平均值,如圖3所示。通過(guò)使用openMP使得計(jì)算效率提高了42%。
表1 實(shí)驗(yàn)平臺(tái)配置表Tab.1 The experimental platform configuration
3.2樂(lè)觀約束判別算法
3.2.1傳統(tǒng)約束判別算法
由于光學(xué)載荷自身成像需要,針對(duì)單一目標(biāo)的觀測(cè)需要連續(xù)拍攝N個(gè)仿真步長(zhǎng),且在拍攝過(guò)程中要時(shí)刻滿足觀測(cè)約束條件。因此,在對(duì)目標(biāo)天區(qū)進(jìn)行約束條件計(jì)算時(shí)要對(duì)未來(lái)N個(gè)仿真步長(zhǎng)中所有約束條件進(jìn)行計(jì)算,只有全部滿足約束的可見天區(qū)才能夠作為要觀測(cè)的天區(qū),仿真流程如圖3所示。這種約束判別算法可保證計(jì)算得出的目標(biāo)天區(qū)一定符合要求,但是使得計(jì)算復(fù)雜度大幅度提高。
圖3 openMP優(yōu)化運(yùn)行時(shí)間對(duì)比圖Fig.3 Comparison of run time about the optimistic about openMP
圖4 傳統(tǒng)約束判別算法流程圖Fig.4 Flow chart of traditional constrain judge algrithm
3.2.2樂(lè)觀約束判別算法
通過(guò)對(duì)運(yùn)行時(shí)數(shù)據(jù)分析發(fā)現(xiàn),在持續(xù)N個(gè)仿真步長(zhǎng)的觀測(cè)過(guò)程中太陽(yáng)、月亮的位置變化不到0.5%,即主要約束條件變化幅度非常小。對(duì)于絕大部分天區(qū)來(lái)說(shuō),如果能夠滿足初始時(shí)刻的約束條件,就能滿足整個(gè)觀測(cè)時(shí)間段內(nèi)的約束。
基于以上分析,設(shè)計(jì)了樂(lè)觀約束判別算法,即認(rèn)為滿足初始時(shí)間約束條件的天區(qū)為可觀測(cè)的目標(biāo)天區(qū),并在仿真系統(tǒng)中加入了運(yùn)行時(shí)約束條件判斷聯(lián)邦以修正此算法帶來(lái)的誤差,算法流程如圖 4所示。此算法在犧牲一定的觀測(cè)成功率的代價(jià)下,能夠降低計(jì)算復(fù)雜程度,提高仿真速度。
通過(guò)實(shí)驗(yàn)數(shù)據(jù)分析,在多色成像模式與無(wú)縫巡天模式下,因采用樂(lè)觀約束判別算法造成的觀測(cè)失效次數(shù)與總觀測(cè)次數(shù)如表2所示。引入樂(lè)觀的約束條件判斷機(jī)制之后而造成的觀測(cè)失效只占了全部觀測(cè)次數(shù)的0.67%。拍攝失敗次數(shù)完全在可以接受的范圍之內(nèi)。在本聯(lián)邦成員中,采用了樂(lè)觀約束判別算法。
3.2.3實(shí)驗(yàn)結(jié)果
由于計(jì)算可見天區(qū)耗時(shí)與觀測(cè)點(diǎn)選取有關(guān),且方差很大。所以統(tǒng)計(jì)了200次目標(biāo)天區(qū)計(jì)算,耗時(shí)累計(jì)值如圖 5所示,可見,樂(lè)觀約束判斷算法使得程序計(jì)算時(shí)間縮短了33.7%。
表2 樂(lè)觀約束判別算法觀測(cè)結(jié)果表Tab.2 Result of observation with optimistic constrain judge algorithm
圖5 樂(lè)觀約束判別算法流程圖Fig.5 Flow chart of optimistic constrain judge algorithm
圖6 樂(lè)觀約束判別算法耗時(shí)Fig.6 Time cost of optimistic judge algorithm
3.3實(shí)驗(yàn)結(jié)果
使用基于openMP的并行算法優(yōu)化和基于貪心的樂(lè)觀約束判別機(jī)制后,運(yùn)控聯(lián)邦成員完成200次觀測(cè)耗時(shí)如圖6所示??梢娛褂没趏penMP的并行算法優(yōu)化和基于貪心的樂(lè)觀約束判別機(jī)制使得整體運(yùn)行時(shí)間減少了55%。從而使得整個(gè)仿真聯(lián)邦仿真速度提高,最終使得仿真時(shí)間減少了27.4%。
在綜合考慮了空間中復(fù)雜的環(huán)境以及眾多成像約束對(duì)運(yùn)控聯(lián)邦成員運(yùn)行效率影響的基礎(chǔ)上,文中采用了基于openMP的并行優(yōu)化方法和基于貪心的樂(lè)觀約束判別算法對(duì)運(yùn)控聯(lián)邦成員進(jìn)行了優(yōu)化,降低了運(yùn)控聯(lián)邦成員的計(jì)算復(fù)雜度,使得仿真整體時(shí)間減少了27.4%。同時(shí)基于openMP的并行方法和樂(lè)觀約束判別算法對(duì)于其他復(fù)雜環(huán)境、多約束的大規(guī)模仿真系統(tǒng)也有一定的借鑒意義。
圖7 優(yōu)化前后耗時(shí)對(duì)比Fig.7 Time cost comparison before and after optimization
[1]張彩娟.STK及其在衛(wèi)星系統(tǒng)仿真中的應(yīng)用[J].無(wú)線電通信技術(shù),2007(4):45-46,61.
[2]張萬(wàn)鵬,陳瓂,沈林成.基于STK/VO的航天任務(wù)視景仿真系統(tǒng)[J].計(jì)算機(jī)仿真,2005(10):89-92.
[3]田八林,袁建平,岳曉奎.基于STK的GPS空間覆蓋特性仿真分析[J].計(jì)算機(jī)仿真,2008(6):46-49.
[4]鄧晶,張明智,李志強(qiáng),等.基于STK的信息作戰(zhàn)態(tài)勢(shì)三維可視化表現(xiàn)方法研究[J].系統(tǒng)仿真學(xué)報(bào),2010(11):2654-2659.
[5]史璐莎,張斌,張濤.MATLAB環(huán)境中HLA聯(lián)邦成員開發(fā)技術(shù)研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2013(10):10-14,18.
[6]IEEE Standard for Modeling and Simulation(M&;S)High Level Architecture(HLA)--Framework and Rules-Redline[J].IEEE Std 1516-2010(Revision of IEEE Std 1516-2000)-Redline,2010:1-38.
[7]殷順昌.OpenMP并行程序性能分析[D].國(guó)防科學(xué)技術(shù)大學(xué),2006.
[8]蔡佳佳,李名世,鄭鋒.多核微機(jī)基于OpenMP的并行計(jì)算[J].計(jì)算機(jī)技術(shù)與發(fā)展,2007(10):87-91.
[9]陳永健.OpenMP編譯與優(yōu)化技術(shù)研究[D].清華大學(xué),2004.
[10]徐磊,徐瑩,張丹丹.多核構(gòu)架下OpenMP多線程應(yīng)用運(yùn)行性能的研究[J].計(jì)算機(jī)工程與科學(xué),2009(11):50-53,57.
[11]李梅.基于OpenMP編程模型的多線程程序性能分析[J].電子設(shè)計(jì)工程,2014(23):42-44,50.
[12]楊秋虎.LabWindows/CVI多線程技術(shù)的應(yīng)用[J].電子科技,2015(3):19-21,37.
[13]韓旭,韋高,李瑞陽(yáng),等.基于多純程技術(shù)的天線實(shí)時(shí)測(cè)量系統(tǒng)[J].現(xiàn)代電子技術(shù),2013(13):115-119.
Design and optimization of HLA-Based optical facility control federate simulation
LI Cheng-min1,2,ZHANG Tao2,ZHANG Bin2,ZHANG Shu-yuan3
(1.University of Chinese Academy of Sciences,Beijing 100094,China;2.Technology and Engineering Center for Space Utilization,Chinese Academy of Sciences,Beijing 100094,China;3.Economics and Management School of Wuhan University,Wuhan 430072,China)
Sky survey optical facilities are becoming more and more important in astronomical observation,and control is the core of this kind of facilities.In the process of building the HLA-based astronomical observation simulation system,it is found that control federation's efficiency directly affects the overall efficiency,due to multi-constrain of the observation.For improving the simulation efficiency,the optimistic judging algorithm and openMP-based optimization method are designed. The result show that new control federation greatly improves the efficiency of optical facilities simulation,and the computational complexity is decreased;the overall running time is reduced by 43%.
HLA;optical facilities;federation design;openMP;optical judging algorithm
TP399
A
1674-6236(2016)01-0031-04
2015-04-09稿件編號(hào):201504083
國(guó)家重大專項(xiàng)(Y214102RN)
李承民(1989—),男,北京人,碩士。研究方向:系統(tǒng)仿真。