李伯虎院士:復雜系統高效能仿真技術

2016-09-16

      【引言】復雜系統,指的是一類具有“系統組成關系復雜、系統機理復雜、系統的子系統間以及系統與其環境之間交互關系復雜和能量交換復雜、總體行為具有涌現、非線性,以及自組織、混沌、博弈等特點的系統”。

      典型的復雜系統,如航空航天系統等復雜工程系統;經濟規劃等復雜社會系統;人、動物、植物等復雜生命系統;氣候、電磁等復雜環境系統;C4ISR、攻防體系等復雜軍事系統;物聯網等復雜網絡系統等 。復雜系統的研究與實施對促進國民社會經濟發展、鞏固加強國防建設、提高人民生活質量有著十分重大的意義。

      2005年6月,美國總統信息技術顧問委員會在給總統的建議報告《Computational Science: Ensuring America’s Competitiveness》中指出,由算法與建模仿真軟件、計算機與信息科學以及計算基礎設施等三大元素構成的計算科學,已經逐步成為繼理論研究和實驗研究之后認識、改造客觀世界的第三種重要手段。
      建模與仿真技術是以相似理論、模型理論、系統技術、信息技術以及建模與仿真應用領域的有關專業技術為基礎,以計算機系統、與應用相關的物理效應設備及仿真器為工具,根據對系統仿真的目標,建立并利用模型對系統(已有的或設想的)進行研究、分析、試驗、運行和評估(系統全生命周期活動)的一門綜合性、交叉性技術。建模與仿真技術正向“網絡化、虛擬化、智能化、協同化、普適化、服務化”的現代化方向發展。
      高性能計算技術是具有超高計算能力、存儲能力、交互能力的一類計算技術。目前,以天河等為代表的高性能計算機已達數千萬億次/秒的計算能力,并且世界各國還在爭相研發億億次/秒超級計算機。高性能計算技術正逐步向“高性能、高可靠、高節能、高可用”的高效能計算技術發展,以進一步解決高性能計算技術中的“內存墻、I/O墻、功耗墻、編程墻、可靠性墻、擴展性墻”等問題。高效能計算技術為仿真復雜問題提供了使能技術。
      在本文中,作者將復雜系統高效能仿真技術定義為融合高效能計算技術和現代建模與仿真技術,以優化復雜系統建模、仿真運行及結果分析等整體性能為目標的一類建模仿真技術。高效能仿真本質上是基于模型的科學活動,包括建立研究對象的仿真模型;構造與運行仿真系統;分析與評估仿真結果。高效能仿真技術是研究上述三類基本活動共性知識的一門綜合性技術。其發展需要高效能建模仿真系統的體系結構、硬件、軟件、算法和應用的綜合推動。
      復雜系統高效能仿真技術是國民經濟、國防建設、自然科學、社會科學等各個領域的系統論證、試驗、設計、分析、運行、維護、人員訓練等應用層次的不可或缺的重要科學技術,也是現代科學研究中求解高度復雜問題的重要科學技術,同時也是我國走“科技含量高、經濟效益好、資源消耗低、環境污染少、人力資源優勢得到充分發揮的新型工業化道路” 的通用性、戰略性科學技術。復雜系統高效能仿真技術正在逐步成為與理論研究、實驗研究并列的研究復雜系統的重要手段。
      一、復雜系統高效能仿真技術
      發展的需求

      復雜系統高效能仿真的出現主要源自于兩類用戶需求,一類是復雜系統高端建模仿真需求;另一類則是建立高效能云仿真中心,為海量用戶按需提供“云仿真服務”的需求。云仿真是作者團隊提出的一種基于云計算理念的新網絡化建模與仿真模式,是通過網絡、云仿真平臺,按需組織網上仿真資源與能力(仿真云),為用戶提供各類仿真服務的一種新的仿真模式。
      從技術角度來看,上述兩類用戶對發展復雜系統高效能仿真技術提出了許多具體的技術需求。下面將展開討論這些技術需求,并對相關的國內外技術概況進行介紹。
      1.1 復雜系統高端建模仿真技術需求
      隨著各領域復雜工程系統相關學科技術的快速發展、專業計算和仿真軟件復雜度的提高、復雜工程仿真和計算規模的增大,這就為復雜系統高端建模仿真技術提出了更好的需求,包括以下11個方面:
      1)高計算能力;
      2)高效、高帶寬、低延遲的同步、通信網絡;
      3)高性能、高容量、高可伸縮性的并行I/O系統;
      4)友好的復雜系統模型開發環境;
      5)多尺度、多學科異構系統協同運行;
      6)仿真系統多樣本并行運行(作業級并行)、仿真系統內實體間并行(MPI任務級并行)以及復雜模型解算的并行(多線程并行)的“三級并行”;
      7)面向各類應用問題,開發出能充分挖掘各類高效能系統能力的算法與軟件;
      8)海量數據的存儲與管理;
      9)仿真實驗可信性與結果的分析評估;
      10)高性能計算機低功耗;
      11)高性能計算機系統的安全、高可靠性。
      1.2 高效能云仿真中心的技術需求
      從技術角度來看,高效云仿真中心要求研究的技術包括:高效能仿真資源虛擬化技術;為海量用戶提供能按需動態組合的多類高效能仿真服務環境的構建技術;虛擬化高效能仿真可信協同運行技術;虛擬化高效能仿真結果分析評估技術等。如圖1所示。

圖1 高效能云仿真中心

_ueditor_page_break_tag_

      1.3 國內外技術研究概況
      國外方面,各國在高計算能力、高速通訊能力、充分挖掘并行計算系統能力、低功耗、高可靠性等方面取得較大進展。如IBM和洛斯-阿拉莫斯國家實驗室共同研制出浮點運算能力達1000萬億次的“走鵲”(Roadrunner) 的超級計算機。目前正積極研制萬萬億次的的超級計算機。此外,美國軍方也十分重視高效能/高性能仿真技術在體系攻防仿真中的應用,比較典型的高效能/高性能仿真環境有:SPEEDES、TWOS、IDES 等。
      當前國際上高效能計算的研究熱點包括采用FPGA和專用加速硬件提高應用系統的性能和降低功耗,可伸縮的全局并行I/O處理系統,高效能的編譯系統和高效能的并行計算環境,以及面向領域的應用支撐軟件系統等。然而總體來看,還未見能支持虛擬、構造、實裝三類仿真,二類仿真用戶的一體化的高效能建模與仿真系統。
      國內在高計算能力、高速通訊能力、充分挖掘并行計算系統能力、高可靠性等方面也取得較大進展。如2010年,天河高性能計算機速度名列世界第一。曙光4000A,星云等高性能計算機速度也名列世界前10名。2010年國防科大研制成功基于多CPU的“銀河高性能仿真計算機”(10萬億次/秒),并在體系結構、硬件和軟件設計等方面作了面向仿真的改進。與國外比較,國內在建模仿真支撐軟件技術的研究方向、關鍵技術攻關等方面與國外相比的差距不算很大,并有相關原型產品:SSS-RTI 、COSIM、KD-RTI、StarLink 、AST-RTI 等。開發了基于HLA++/MSLM的仿真支撐平臺/工具集。而且國內許多單位已逐漸開展了并行仿真相關技術的研究。在云仿真方面更是領先開展了研究工作。
      但針對于需求,總體上講,國內高效能建模與仿真技術研究方面還處于初級階段,還沒有能支持虛擬、構造、實裝三類仿真,二類仿真用戶的一體化高效的建模仿真系統。
      綜上所述我們認為,為滿足迫切的應用需求及技術需求,必須盡快組織立項,研制具有自主知識產權的“支持虛擬、構造、實裝三類仿真,二類仿真用戶的高效能建模與仿真系統”。
      二、復雜系統高效能仿真
      關鍵技術的研究

      當前復雜系統高效能仿真技術研究中值得關注的9類技術包括:1)復雜系統高效能仿真語言;2)復雜系統高效能仿真算法;3)高效能仿真系統體系結構;4)高效能仿真硬件優化技術;5)高效能仿真軟件支撐技術;6)高效能云仿真技術;7)復雜系統高效能仿真系統VV&A技術;8)海量數據管理技術;9)復雜系統仿真實驗及結果分析與評估技術等技術。下面本文將從高效能仿真建模技術、高效能仿真系統及支撐技術、高效能仿真應用工程技術等三個方面,對上述關鍵技術進行論述,包括其研究內容和作者所在團隊的研究成果與進一步的研究方向。
      2.1 高效能仿真建模技術方面
      復雜系統高效能仿真語言

      復雜系統高效能仿真語言是一種面向復雜系統建模仿真問題的高效能仿真軟件系統。目的是使系統研究人員專注于復雜系統仿真問題本身,大大減少建模仿真和高效能計算技術相關的軟件編制和調試工作。基于該語言能開發面向各類專用領域(如體系對抗、多學科虛擬樣機仿真等領域)的高級仿真語言。下面以本團隊正在進行的復雜系統建模仿真與優化語言COSIM-CsML為例來討論復雜系統建模仿真語言的主要研究內容。
      仿真語言框架結構
      高效能仿真語言通常由復雜系統建模環境(模型與實驗描述語言、翻譯/編譯程序)、庫(模型庫、算法庫、函數庫)、運行控制仿真引擎及后處理軟件等組成,如圖2所示。



圖2 仿真語言框架結構

      仿真語言中模型與實驗的描述語言
      仿真語言采用組件式的可擴展語言結構,由初始塊、模型塊和實驗塊三大部分組成,其中初始塊包含各種相關參數初始值及算法相關設置語法及語句;模型塊主要描述連續離散定性及混合的靜態動態描述語句及語法;實驗塊則是描述實驗操作的各種語句(如加初始值運行、停止、畫圖等實驗)及其流程。仿真語言通常采用問題本身(連續、離散、定性、混合系統)的語言(如在連續系統建模中的描述,dx/dt=f(x))。
      復雜系統仿真建模技術
      復雜系統多表現為連續離散混合、定性定量混合的系統,由于其規模大、構成和行為復雜、相關知識不完善,行為所具有的模糊性、不確定性、難以量化、自組織、進化、混沌、涌現、博弈等特點,提出定性定量混合系統仿真建模技術,主要的研究問題包括以下三個方面:
      1)定性定量統一建模方法:研究包括系統頂層描述和面向領域描述的建模理論和方法。本團隊研究成果:基于定量仿真組件進行定性規則/Agent擴展,形成Quan-Rule(定量-規則)和Quan-Agent(定量-Agent)建模方法,支持定性定量混合系統的層次化建模規范描述。
      2)定量定性交互接口建模:實現將定量定性交互數據轉化為定性模型與定量模型所要求的結構和格式。本團隊研究成果:擴展仿真標記語言SRML,添加定量定性數據接口的結構與格式描述語句,形成定量定性交互接口建模語言QQSRML。
      3)定量定性時間推進機制:研究不同消息傳遞順序、不同的時間推進方式、不同的時間管理策略、不同消息傳遞順序與傳遞方式組合的成員間互操作。本團隊研究成果:基于QR(定量-規則)和QA(定量-Agent)的頂層抽象模型對定量/定性異構模型的時間推進進行統一管理,實現層次化混合時間推進方法。
      高效動態并行化編譯技術
      高效動態并行化編譯技術主要包括仿真語言的詞法語法分析、復雜系統問題并行性分析以及目標代碼的動態并行化編譯。其核心功能是實現面向高效能并行計算環境的仿真語言編譯器,能夠自動將仿真描述的問題分解和并行化,并鏈接相應的函數庫、模型庫和算法庫;本團隊采用的方法是通過分析目標機體系結構(向量機/并行多處理機)以及問題的內在特性(依賴關系/循環等價變換等),基于C++文件流操作和string類實現文本轉換,基于OpenMP/TBB編譯指導語句和VC實現并行計算。
      參數化、組件化仿真模型庫/函數庫技術
      豐富的模型庫/函數庫是復雜系統高效能仿真語言的重要組成部分。建立面向各類領域、各層次的參數化、組件化、通用化的仿真實體與其環境的模型庫/函數庫研究已成為復雜系統仿真建模技術的研究熱點。國外的產品如Qualnet 、Modelica等仿真軟件中的模型庫/函數庫。國內的模型庫函數庫產品如本團隊研究的“體系對抗仿真系統參數化/組件化模型庫”。
      算法庫
      見1.2復雜系統高效能仿真算法。
      復雜系統高效能仿真算法

      復雜系統高效能仿真算法可分為同構并行仿真算法和異構并行仿真算法。各類并行仿真算法按模型種類可分為連續,離散,定性,混合,優化算法等;按問題對象可分為數值并行算法、非數值并行算法;按計算方式可分為同步并行算法、異步并行算法;按計算機類型則可分為SIMD、MIMD等。
      高效仿真算法的研究內容包括:
      1)針對連續、離散、定性等各領域算法特點,提出并實現新的高效并行仿真算法,如基于方程組右函數均勻負載的連續系統常微分方程并行算法;基于樂觀機制的離散系統并行算法;基于定性線性代數方程組和優化算法的定性系統并行算法;智能系統并行算法,例:并行人工神經網絡算法、并行深度/廣度優先搜索算法;并行優化算法,例:并行遺傳算法,并行蟻群算法,并行規劃算法。
      2)連續、離散、定性混合仿真系統并行仿真時間管理算法。
      3)面向領域的高性能并行仿真算法,如核能領域的高效能仿真,包括單核并行算法:提高多級存儲速度的并行算法(包括并行編程模型、數據結構和專用函數庫等);多核(成千上萬核)并行:多核并行算法(動態負載平衡、非規則數據通訊、降低計算規模等)。
      本團隊在高效仿真算法領域的研究成果包括基于網格的分布仿真算法(面向復雜電磁環境的EME并行加速算法,其特點是:綜合考慮地形、大氣等因素,采用二維自適應切片及并行加速技術,顯著提高三維電磁環境計算速度)、并行智能系統仿真算法(GA-BHTR: 基于Transitive Reduction和二叉堆維護的GA算法,其特點是:多種群、多核、多進程——具有并行性)、并行優化系統仿真算法(QMAEA: 量子多智能進化算法,其特點是:量子比特編碼——提高多樣性;多種進化策略——具備平衡全局搜索與局部搜索的能力;智能進化算子——提高了精度、效率等性能)。
      高效仿真算法進一步研究的焦點是圍繞提高并行仿真算法的效率,保持仿真算法的可伸縮性,實現動態負載平衡,減少并行計算中協同所需的通信量,同時兼顧可擴展、可移植的大粒度任務級并行和在每個進程中組織便于發揮單機性能的合理數據結構、程序設計和通信方式。
      2.2 高效能仿真系統及支撐技術方面
      高效能仿真系統體系結構
      本團隊認為,高效能仿真系統體系結構可以由硬件系統層、并行操作系統層、并行編譯系統層、仿真服務層和仿真門戶層組成,而相關的標準、規范、協議和安全機制貫穿所有層次。如圖3所示。


圖3 高效能仿真系統體系結構

_ueditor_page_break_tag_

      上述高效能仿真系統體系結構是一種網絡化、智能化、服務化的一體化仿真支撐平臺體系結構,其硬件系統包括基于多CPU/多GPU的模塊化計算節點、基于GPU/FPGA/DSP的專用加速部件、基于GPU的高速可視化子系統以及高速通信、協同、I/O,如圖4所示。軟件系統能夠支持實時仿真的并行操作系統,提供支持“高端”和“云仿真”二類用戶的各類仿真服務以及面向問題、用戶友好的仿真語言系統,并且有豐富的支持并行運行的模型庫、仿真算法庫為底層支撐。

圖4 高效能仿真系統的硬件系統結構

      高效能仿真硬件優化技術
      目前,高效能仿真硬件正向以FPGA、GPU及定制專用加速部件、通用商品化多核處理器為主導,通專結合、局部定制、針對性優化的高效節能方向發展。高效能仿真硬件優化技術主要針對復雜系統仿真的特點和需求,在硬件方面進行針對性優化設計,其主要研究內容包括:1)在線可重構仿真加速陣列設計技術;2)高帶寬、低延遲通信網絡技術;3)低延遲仿真協同機制設計技術;4)及高性能、高容量、高可伸縮性的全局并行I/O技術等。
      目前,國內外仿真硬件優化技術取得了一些成果:國外的典型仿真硬件優化實例包括RIKEN的Protein Explorer/MDGrape-3、分子動力學仿真專用機器Anton、Cray的XD1、IBM的SP tempest以及Pitt Parallel Simulator;國內代表性的成果則如由國防科技大學計算機學院設計開發成功的基于多CPU的銀河高性能仿真計算機。
      國內外的實際經驗表明針對復雜系統仿真的特點和需求,在硬件方面進行針對性優化設計,能夠取得很好的仿真加速效果。
      高效能仿真軟件支撐技術
      高效能仿真軟件支撐技術主要針對復雜系統仿真的特點和需求,在軟件平臺方面進行針對性設計。目前,高效能仿真軟件支撐技術正在向組件化,自動并行化方向發展,其主要研究內容包括:1)支持三級并行的軟件平臺體系結構技術;2)高效能并行化軟件技術;3)仿真應用組件化構建技術 。
      高效能“云仿真”技術
      本團隊基于仿真網格的研究成果,進一步融合虛擬化技術、普適計算技術和高性能計算技術等,引入“云計算”理念,構建一種基于云計算理念的網絡化建模與仿真系統——“云仿真系統”,以加強網絡化建模與仿真平臺的細粒度、各類資源(包括節點內的  CPU核、存儲器、軟件等子  資源)按需共享能力;充分支持多用戶能力;協同能力;容錯能力以及安全應用機制。
      云仿真系統的關鍵技術包括:總體技術,仿真資源與能力感知技術,仿真資源與能力的虛擬化與服務化技術,虛擬化仿真環境的構建與管理技術,虛擬化仿真環境運行技術,虛擬化仿真環境評估技術,可信虛擬化仿真技術,普適人機交互技術,服務平臺應用技術,系統運行的商業模式技術等十大類,具體如圖5所示。
圖5 云仿真系統關鍵技術

      基于上述關鍵技術的研究成果,本團隊研制開發了一個云仿真系統的原型COSIM- CSP并已經在多學科虛擬樣機協同仿真、大規模體系級協同仿真以及高性能仿真等領域開展了初步應用,驗證了三種云仿真應用模式,包括虛擬交互模式、批作業模式以及分布互操作模式。
      云仿真技術的進一步研究將以應用需求為牽引,融合現有建模與仿真技術及云計算、物聯網、新一代網絡、高效能計算、服務計算、人工智能等熱點/新興信息技術,為用戶的建模與仿真全生命周期活動提供可隨時快速獲取的、按需使用的、安全可靠的、優質廉價的智慧云服務。
      三、高效能仿真應用工程技術
      3.1 復雜系統高效能仿真系統VV&A技術
      仿真模型的VV&A技術主要包括了模型的校核、驗證與驗收,其中校核(Verification)表示確定仿真系統是否正確表達了開發者的概念;驗證 (Validation)表示確定仿真系統代表真實系統的準確程度;確認(Accreditation)則代表用戶對仿真系統資格的認可。VV&A 過程貫穿于建模與仿真的全生命周期,包括全生命周期VV&A、全系統VV&A、層次化VV&A、全員VV&A以及管理全方位VV&A。
      在國內,哈工大等單位開展了體系建模與仿真VV&A與可信度評估的研究工作,自主研制成體系對抗仿真系統可信度評估的工具集,顯著提高全生命周期內仿真系統的可信度。建模與仿真VV&A未來發展的趨勢包括:
      (1)更加有力的VV&A政策(Policy)支持。
      (2)深入的VV&A理論體系與框架。
      (3)更加成熟的VV&A過程模型。
      (4)嚴格客觀的VV&A方法與自動化工具。
      (5)更具指導性的VV&A標準系列。
      3.2 海量數據管理技術
      海量數據管理技術主要研究海量數據的存儲技術、海量數據的查詢及海量數據的分析、挖掘技術。 以本團隊研究研究的復雜系統仿真實驗數據管理系統COSIM-TDM為例,該系統是支撐協同仿真平臺從數字化設計領域向數字化仿真實驗驗證領域拓展的重要工具,提供多種模式實驗數據采集接口定制,數據組織管理,實現了實驗數據資源的有效管理和利用,同時為仿真模型VV&A提供支持。其特色在于支持HLA標準、支持基于Socket模式TCP/IP(UDP)協議等多種通訊協議的實驗數據采集接口;提供具備二維曲線、三維模型、表格等控件的可視化工具,支持實時顯示。
      3.3 復雜系統仿真實驗結果管理、分析與評估技術
復雜系統仿真實驗及結果管理、分析與評估技術面向復雜系統仿真應用,實現仿真實驗數據采集、實驗數據管理、可視化分析處理以及智能化評估等一系列功能,為應用人員提供仿真結果分析與評估優化提供全面支持。主要研究內容包括:仿真實驗數據采集技術、海量數據管理技術(存儲、查詢、分析、挖掘)、仿真實驗數據分析處理技術、仿真實驗數據可視化技術以及智能化仿真評估技術等。
      以本團隊研究的復雜系統仿真評估器為例,作為復雜系統仿真應用的有效評估工具,該仿真評估器提供了動態采集仿真數據,應用多種評估算法進行評估,以及仿真過程回放分析等功能,實現了復雜系統建模仿真工程實施中對原型系統的評估。其特色在于,支持組件技術開發實現復雜評估模型的建模、集成、部署和運行,具有開放性、可定制性、可重用性以及靈活性;支持動態數據采集、評估模型加載及仿真回放;支持以數據驅動方式有效連接各算法模型,實現評估過程自動運行。
      基于腦科學的智能評估技術將是未來復雜系統仿真實驗及結果分析與評估技術值得關注的一個發展方向。
      幾點建議
      1. 復雜系統高效能仿真技術是指融合高效能計算技術和現代建模與仿真技術,以優化復雜系統建模、仿真運行及結果分析等整體性能為目標的一類建模仿真技術。
      2.復雜系統高效能仿真技術是21世紀人類認識和改造世界的重要研究手段,是我國實現創新型國家戰略目標的重要科學技術。
      3. 提高復雜系統高效能仿真技術的作用,必須重視同時開展“被研究對象仿真模型、高效能仿真系統、應用工程”等三個方面的理論、方法和技術的研究。
      4.當前,復雜系統高效能仿真研究中值得關注的幾類技術:
      高效能仿真建模技術:
      (1)復雜系統高效能仿真語言
      (2)復雜系統高效能仿真算法
      高效能仿真系統及支撐技術:
      (3)高效能仿真系統體系結構
      (4)高效能仿真硬件優化技術
      (5)高效能仿真軟件支撐技術
      (6)高效能云仿真技術
      高效能仿真應用工程技術:
      (7)復雜系統高效能仿真VV&A技術
      (8)海量數據管理技術
      (9)復雜系統仿真實驗及結果分析與評估技術


轉載自《中國指揮與控制學會》,作者:李伯虎(中國工程院院士),李潭 侯寶存(北京仿真中心專家柴旭東),林廷宇 邢馳 張霖(北京航空航天大學專家),姚益平(國防科技大學專家)

本網站由阿里云提供云計算及安全服務 Powered by CloudDream
排列5历史比较器