專利名稱:空域運行仿真中沖突的自動檢測和調(diào)解系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明屬空中交通管理技術(shù)領(lǐng)域,具體涉及一種空域仿真運行過程中的飛行沖突
的自動檢測和調(diào)解系統(tǒng)及方法。
背景技術(shù):
目前,我國各種空管新技術(shù)的應(yīng)用層出不窮。雷達(dá)管制手段的逐步推進,數(shù)據(jù)鏈通 信技術(shù)的普及應(yīng)用,自動相關(guān)監(jiān)視(Automatic D印endentSurveillance Broadcast,簡稱 ADS-B)技術(shù)的推廣使用等,無不推動我國空管系統(tǒng)朝著更為有效、更為強大的方向發(fā)展。
民航運輸?shù)目焖侔l(fā)展,奧運空域保障的需要以及空管新技術(shù)的應(yīng)用,使得空域結(jié) 構(gòu)復(fù)雜化,對空域提出了更大的需求。進行空域的科學(xué)規(guī)劃,合理使用空域資源是提高空域 利用率、增大空域容量的主要途徑。而對空域的運行狀況進行仿真,模擬全國或某一區(qū)域的 空域運行情況,定量計算空域資源使用的瓶頸,測試空域規(guī)劃的結(jié)果、檢驗對飛行矛盾解決 的情況,并進一步進行科學(xué)的評估和論證,是進行空域設(shè)計和規(guī)劃重要的輔助工具和手段。
在現(xiàn)實環(huán)境中,飛機的飛行是在管制員的監(jiān)視和干預(yù)下進行的。管制員實時收集 軍民航各單位對于空域的使用申請,并通過對當(dāng)前空中交通態(tài)勢的把握和對未來一段時間 內(nèi)的空中態(tài)勢的主觀判斷,進行沖突探測并采取干預(yù)措施實施控制,從而達(dá)到規(guī)避風(fēng)險、保 證安全的目的。在虛擬環(huán)境下,要達(dá)到貼近實際的仿真效果,必須對管制員這一角色進行抽 象,模擬其在不同環(huán)境下的思考方式、判斷行為和發(fā)出的指令,來構(gòu)建一個逼近真實管制員 的"虛擬管制員",通過其自主判斷和行為來探測并化解空中交通沖突。同時,利用專家系統(tǒng) 技術(shù),通過建立管制規(guī)則庫,逼近模擬管制員探測、化解空中交通沖突的行為。
國外航空運輸比較發(fā)達(dá)的國家在空域管理方面都研究開發(fā)了空域管理和輔助設(shè) 計系統(tǒng),對空域的開發(fā)和管理方案進行科學(xué)、充分的評估和論證,以合理地利用有限的空域 資源。由歐洲研制開發(fā)的Reorganized ATCMathematical Simulator (RAMS)系統(tǒng),根據(jù)機型 的4維航跡精確計算,沖突檢測和仿真,3維空域劃設(shè)構(gòu)建和比較同一共享空域內(nèi)的4維信 息,動態(tài)的協(xié)調(diào)管制、流量和空域的沖突;由澳大利亞開發(fā)的Total Airspace andAirport Modeler (TAAM)系統(tǒng)具有先進的數(shù)據(jù)預(yù)處理技術(shù),3D圖形與仿真技術(shù),機場運行、終端區(qū)和 ATC扇區(qū)容量評估,容量和流量控制,動態(tài)劃設(shè)航路等功能;美國開發(fā)了一些全國空域系統(tǒng) (NAS)的仿真系統(tǒng),來測驗和推動流量管理的新方法和新系統(tǒng),主要有FAA技術(shù)中心主持研 發(fā)了SI匪OD系統(tǒng),MITRE公司開發(fā)了TMAC系統(tǒng),運籌學(xué)辦公室開發(fā)了NASPAC系統(tǒng),MIT開發(fā) 的ASCENT系統(tǒng),波音公司開發(fā)的TAAM系統(tǒng)等。其中ASCENT系統(tǒng)是麻省理工學(xué)院的Draper 實驗室的工作人員和研究生歷時10年建立起來的,已被NASA采用來對空域和流量管理方 法進行效益分析。這些系統(tǒng)的成功之處在于其對飛行過程中的隨機因素的充分考慮和較為 完善的空中交通管制邏輯,因此仿真效果比較貼近實際,經(jīng)常被FAA用來進行空域和機場 仿真。 近年來,我國軍民航先后開發(fā)了一些以空域容量評估為主的空域仿真系統(tǒng),例如, 民航總局空中交通管理局投資建設(shè)的"空域管理與評估系統(tǒng)"采用理論仿真結(jié)合雷達(dá)模擬機的方法,對影響民用航空的各種要素進行了綜合處理和建模,實現(xiàn)了機場、航路和單機場 終端區(qū)的理論容量評估,并在一些大機場的容量評估和管制員工作負(fù)荷評估方面得到了 成功的應(yīng)用。同時目前國內(nèi)也陸續(xù)開發(fā)出更符合實際應(yīng)用的空域運行仿真飛行流生成系 統(tǒng)(如中國專利申請200910085829.5 "—種空域運行仿真中飛行流引擎的實現(xiàn)系統(tǒng)及方 法"),以及空域運行仿真4D航跡推算系統(tǒng)(如中國專利申請200910078451. 6 "航班推演 系統(tǒng)和方法",和200910076686. 1 "083163GF飛行流樣本數(shù)據(jù)的獲取方法")。
在仿真飛行流形成系統(tǒng)和仿真航跡推算系統(tǒng)的基礎(chǔ)上,進一步地還可對空域運行 仿真中可能出現(xiàn)的沖突進行檢測和干預(yù),現(xiàn)有的這方面技術(shù)存在解脫算法(如最優(yōu)控制理 論方法)計算復(fù)雜度高、調(diào)解方案執(zhí)行繁瑣的缺陷,不能適應(yīng)大規(guī)??沼?qū)崟r仿真的要求。
發(fā)明內(nèi)容
本發(fā)明的目的是在現(xiàn)有空域運行仿真系統(tǒng)中已形成的航班仿真流以及航班4D航 跡推算數(shù)據(jù)的基礎(chǔ)上,提供一種算法簡單、并可更加貼近真實的空域運行情況的空域運行 仿真中沖突的自動檢測和調(diào)解系統(tǒng)及方法。 為實現(xiàn)上述目的,本發(fā)明提出的空域運行仿真中沖突的自動檢測和調(diào)解系統(tǒng)包 括 空域狀態(tài)預(yù)先仿真模塊,用于預(yù)測在未來一段時間內(nèi)仿真空域的運行情況;
沖突探測模塊,用于根據(jù)空域狀態(tài)預(yù)先仿真模塊預(yù)測的未來一段時間內(nèi)仿真空域 的運行情況數(shù)據(jù)探測某個時間點空域內(nèi)飛行流的沖突情況; 沖突調(diào)解模塊,用于根據(jù)沖突探測模塊的探測結(jié)果在規(guī)定允許的調(diào)解時間余量內(nèi) 調(diào)解已經(jīng)探測到的飛行沖突。 所述的空域狀態(tài)仿真模塊是根據(jù)已知的仿真航班流數(shù)據(jù)和仿真4D航跡推算數(shù)據(jù)
預(yù)測未來一段時間內(nèi)仿真空域的運行情況的。
進一步方案是所述沖突調(diào)解模塊具體包括 高度調(diào)整沖突調(diào)解單元,用于調(diào)整飛行器的巡航高度層來調(diào)解飛行沖突;
速度調(diào)整沖突調(diào)解單元,用于調(diào)整飛行器的巡航速度來調(diào)解飛行沖突;
盤旋等待沖突調(diào)解單元,用于使飛行器盤旋等待一段時間后來調(diào)解飛行沖突。
本發(fā)明空域運行仿真中沖突的自動檢測和調(diào)解方法包含下述內(nèi)容
預(yù)測在未來一段時間內(nèi)仿真空域的運行情況; 根據(jù)未來一段時間內(nèi)仿真空域的運行情況探測某個時間點空域內(nèi)飛行流的沖突 情況; 根據(jù)探測到的飛行流沖突情況在規(guī)定允許的調(diào)解時間余量內(nèi)調(diào)解已經(jīng)探測到的 飛行沖突。 本發(fā)明方法的進一步方案是 所述預(yù)測在未來一段時間內(nèi)仿真空域的運行情況的方法是采用離散仿真的方法 預(yù)測未來一段時間內(nèi)空域的運行狀況,先設(shè)定仿真刷新時間以及連續(xù)預(yù)測次數(shù)兩個變量, 以確定系統(tǒng)預(yù)先仿真的時間量"仿真刷新時間*連續(xù)預(yù)測次數(shù)",定義一個維數(shù)為連續(xù)預(yù)測 次數(shù)的空域狀態(tài)循環(huán)數(shù)組,每個數(shù)組項中保存有當(dāng)前空域中運行的飛行器對象,循環(huán)數(shù)組 中每一個數(shù)據(jù)項都比其之后的數(shù)據(jù)項增加仿真刷新時間的時間量,根據(jù)當(dāng)前空域中飛行器的運行狀況增加或刪除更新飛行器對象,或者根據(jù)沖突調(diào)解方案進行調(diào)整。 所述探測某個時間點空域內(nèi)飛行流的沖突情況的方法是假定飛行器在巡航過程
中始終位于RVSM指定的高度層上,因此飛行沖突探測僅在同高度層進行,判斷的標(biāo)準(zhǔn)是用
動態(tài)的Delaunay圖判斷某個時刻兩架飛行器的水平距離是否小于指定距離間隔標(biāo)準(zhǔn); 所述調(diào)解已經(jīng)探測到的飛行沖突的方法是首先為沖突飛機建立沖突圖,圖中的
點代表探測到飛行沖突的飛行器,邊代表兩飛行器之間探測到了沖突,每次選擇節(jié)點度最
大的飛行器作為調(diào)解對象;設(shè)計了調(diào)高、盤旋、調(diào)速三種調(diào)解方案,并設(shè)定三種調(diào)解方案使
用的優(yōu)先級,按優(yōu)先級順序使用調(diào)解方案調(diào)解沖突,沖突調(diào)解成功后,即將該飛行器從沖突
圖中刪除,繼續(xù)選擇節(jié)點度最大的飛行器調(diào)解直到?jīng)_突圖中沒有節(jié)點。 上述系統(tǒng)和方法是在已有的空域運行仿真飛行流生成系統(tǒng)和空域運行仿真4D航 跡推算系統(tǒng)的基礎(chǔ)上,針對一些現(xiàn)有的沖突檢測和解脫算法(如最優(yōu)控制理論方法)計算 復(fù)雜度高、調(diào)解方案執(zhí)行繁瑣的缺陷,在滿足飛行器性能約束、空中交通管制規(guī)則和一定的 管制員行為偏好的基礎(chǔ)上,提出了一種基于幾何最優(yōu)的、離散的、確定型的沖突檢測和調(diào)解 系統(tǒng),該系統(tǒng)和方法具有算法運算復(fù)雜度低的優(yōu)勢,能夠滿足大規(guī)??沼?qū)崟r仿真對算法 復(fù)雜度的要求。非常適合在全國空域仿真中對飛行沖突的自動檢測和調(diào)解。
本發(fā)明可在虛擬空域仿真環(huán)境中,實現(xiàn)空域仿真運行中飛行沖突的自動檢測和處 理,使得空域仿真更加貼近空域的實際運行情況,為空域運行的科學(xué)評估、科學(xué)規(guī)劃奠定基 礎(chǔ),并提供更加可行的輔助決策手段。 下面通過附圖和實施例,對本發(fā)明的技術(shù)方案做進一步的詳細(xì)描述。
圖1、本發(fā)明系統(tǒng)實施例方框示意2、圖1所示沖突調(diào)節(jié)模塊方框示意3 、為空域狀態(tài)預(yù)先仿真模塊提供數(shù)據(jù)的飛行流引擎模塊流程4、為空域狀態(tài)預(yù)先仿真模塊提供數(shù)據(jù)的4D航跡推算模塊流程5、圖1所示空域狀態(tài)預(yù)先仿真模塊流程6、圖1所示沖突探測模塊流程7、圖1所示沖突調(diào)解模塊流程8、圖1所示高度調(diào)整沖突調(diào)解單元流程9、圖1所示盤旋等待沖突調(diào)解單元流程10、圖1所示速度調(diào)整沖突調(diào)解單元流程圖
具體實施例方式
本實施例是一種空域運行仿真中沖突的自動檢測和調(diào)解系統(tǒng)。 現(xiàn)有空域運行仿真系統(tǒng),已有空域運行仿真飛行流生成系統(tǒng)和空域運行仿真4D
航跡推算系統(tǒng),其中仿真飛行流生成系統(tǒng)可生成類似航班時刻表的數(shù)據(jù),主要包括航班的
起飛目的機場、起飛降落時間、飛行器型號,并生成起降機場、起飛時間、機型等信息匯總形
成的模擬航班流;空域運行仿真4D航跡推算系統(tǒng)是在給定"航班時刻表"的情況下,推算出
航班中間運行的軌跡,包括中間各個時刻,飛機的位置、高度、速度、加速度、航向信息,本系統(tǒng)是在上述數(shù)據(jù)基礎(chǔ)上,進一步在虛擬空域仿真環(huán)境中,對管制員這一角色進行抽象構(gòu)建 "虛擬管制員",在掌握當(dāng)前空域交通態(tài)勢和未來一段時間內(nèi)空域仿真態(tài)勢的基礎(chǔ)上,模仿 真實管制員的行為,自動進行仿真空域內(nèi)的沖突檢測,并在滿足飛行器性能約束、空中交通 管制規(guī)則和一定的管制員行為偏好的基礎(chǔ)上自動采取干預(yù)措施化解仿真空域中的沖突,實 現(xiàn)空域仿真運行中飛行沖突的自動檢測和處理,
參見圖l,本系統(tǒng)包括 空域狀態(tài)預(yù)先仿真模塊,用于根據(jù)飛行流引擎模塊提供的仿真航班流數(shù)據(jù)和4D 航跡推算模塊提供的仿真航跡推算數(shù)據(jù)預(yù)測在未來一段時間內(nèi)仿真空域的運行情況;
沖突探測模塊,用于根據(jù)空域狀態(tài)預(yù)先仿真模塊預(yù)測的數(shù)據(jù)探測某個時間點空域 內(nèi)飛行流的沖突情況; 沖突調(diào)解模塊,用于根據(jù)沖突探測模塊的探測結(jié)果在規(guī)定允許的調(diào)解時間余量內(nèi) 調(diào)解已經(jīng)探測到的飛行沖突; 圖2所示的是沖突調(diào)解模塊的結(jié)構(gòu)圖,包括 高度調(diào)整沖突調(diào)解單元,用于調(diào)整飛行器的巡航高度層來調(diào)解飛行沖突;
速度調(diào)整沖突調(diào)解單元,用于調(diào)整飛行器的巡航速度來調(diào)解飛行沖突;
盤旋等待沖突調(diào)解單元,用于使飛行器盤旋等待一段時間后來調(diào)解飛行沖突。
圖3是為空域狀態(tài)預(yù)先仿真模塊提供數(shù)據(jù)的飛行流引擎模塊工作流程圖;該模塊 的主要工作流程包含下述內(nèi)容 確定航班流的要素信息,分析各要素的分布特征,確定相應(yīng)的數(shù)據(jù)概率模型;
根據(jù)航班流要素數(shù)據(jù)概率模型統(tǒng)計現(xiàn)行航班計劃中各要素的取值情況,確定分布 參數(shù); 根據(jù)統(tǒng)計得到的數(shù)據(jù)分別建立現(xiàn)行航班計劃中各要素的概率分布模型;并綜合形 成航班流建模模型。 在航班流要素建模模型基礎(chǔ)上依據(jù)用戶輸入的仿真流流量等引擎條件求解,隨機 生成符合用戶需求的航班流。 圖4是為空域狀態(tài)預(yù)先仿真模塊提供數(shù)據(jù)的4D航跡推算模塊工作流程圖,包含下 述步驟 步驟1、獲取推演時間點的航班對象集合;
步驟2、判斷集合中是否還有未處理的航班對象; 步驟3、獲取航班對象的當(dāng)前狀態(tài)包括航班號、航空器型號、巡航速度、航線、位置 信息、飛行航向信息和航班狀態(tài); 步驟4、根據(jù)航空器型號獲取航空器性能信息,根據(jù)航線獲取下一飛行航路;
步驟5、根據(jù)航班對象的當(dāng)前狀態(tài)和航空器性能推演出下一推演時間點的航班動 態(tài); 步驟6、存儲下一推演時間點的航班對象集合。
圖5所示的是空域狀態(tài)預(yù)先仿真模塊工作流程圖,具體包括 步驟301,設(shè)定系統(tǒng)更新時間步長tSt印,和循環(huán)狀態(tài)數(shù)組AirspaceStatus的維
數(shù)nStatus。由于本系統(tǒng)是離散仿真系統(tǒng),所以必須設(shè)定系統(tǒng)的刷新率tSt印,也即是說每
隔tSt印的時間間隔更新一次空域的狀態(tài),而由于是預(yù)先仿真,所以必須在系統(tǒng)中保存幾
10個連續(xù)系統(tǒng)刷新點空域的狀態(tài),連續(xù)刷新點的個數(shù)即為nStatus,也就是說系統(tǒng)預(yù)先仿真了 tStep*nStatus時間內(nèi)空域的狀態(tài); 步驟302,建立循環(huán)狀態(tài)數(shù)組AirspaceStatus,用于保存在nStatus個連續(xù)系統(tǒng)刷 新點空域的狀態(tài); 步驟303,設(shè)i = 0, time = 0, i為系統(tǒng)當(dāng)前刷新過的步數(shù),time為系統(tǒng)當(dāng)前仿真 的時間; 步驟304,判斷是否i < nStatus,如為真表示狀態(tài)數(shù)組AirspaceStatus正在初始 化階段,轉(zhuǎn)步驟305,如為假則空域仿真處于運行階段,轉(zhuǎn)步驟310 ; 步驟305,判斷是否i = 0,如為真則整個AirspaceStatus數(shù)組狀態(tài)為空,是空域 第一次初始化,轉(zhuǎn)到步驟308; 步驟306,拷貝AirspaceStatus [i-1]中的飛行器對象到AirspaceStatus [i]中;
步驟307,依據(jù)仿真航跡推算數(shù)據(jù)和當(dāng)前時間time更新AirspaceStatus [i]中的 飛行器狀態(tài)信息,下轉(zhuǎn)308 ; 步驟308,使用仿真航班流數(shù)據(jù)選擇在time時刻進入仿真空域的飛行器對象加入
AirspaceStatus [i],下轉(zhuǎn)309 ; 步驟309,設(shè)i = i+l, time = i襯St??; 步驟310,拷貝AirspaceStatus [ (i-1)mod nStatus]中的飛行器對象到 AirspaceStatus[i mod nStatus]中,由于AirspaceStatus為循環(huán)數(shù)組,在仿真運行中最多 只記錄連續(xù)nStatus個系統(tǒng)刷新點空域的狀態(tài),所以需要對i取模來進行循環(huán)利用;
步驟311,使用4D航跡推測模塊的接口 ,根據(jù)time更新AirspaceStatus [i mod nStatus]中的飛行器狀態(tài)信息; 步驟312,刪除AirspaceStatus [i mod nStatus]中達(dá)到終結(jié)狀態(tài)的飛行器對象;
步驟313,使用仿真航班流數(shù)據(jù)選擇在time時刻進入仿真空域的飛行器對象加入 AirspaceStatus [i mod nStatus],下轉(zhuǎn)314 ; 步驟314,使用沖突探測模塊,對AirspaceStatus[i mod nStatus]中飛行沖 突進行檢測,并使用沖突調(diào)解模塊在整個狀態(tài)數(shù)組中予以解決,系統(tǒng)預(yù)先仿真的時間為 tSt印^Status,這個時間同時也是系統(tǒng)預(yù)留的沖突調(diào)解的時間余量,探測到的飛行沖突必 須在tSt印^Status時間內(nèi)得以調(diào)解,否則將認(rèn)為調(diào)解失??;
步驟315,設(shè)i = i+l, time = i襯St??; 步驟316,判斷time是否達(dá)到仿真終止時刻,如為假則轉(zhuǎn)步驟304,如為真則結(jié)束。
飛行器的保護區(qū)采用ATC(Air Traffic Control,簡稱ATC)標(biāo)準(zhǔn),為一個以飛行器 為中心的虛擬的豎直圓柱體,圓柱體半徑為2. 5海里,高度為2000英尺,任何一架飛行器的 保護區(qū)進入到另一架飛行器的保護區(qū)則認(rèn)為發(fā)生了飛行沖突。由于本仿真系統(tǒng)假定飛行器 在巡航過程中,始終位于RVSM (Reduced Vertical S印aration Minimum,簡稱RVSM)高度層 中,所以巡航階段飛行沖突的判斷僅在同高度層進行。 傳統(tǒng)的任意兩飛機對距離判斷的方法其算法復(fù)雜度為0(n2),本例沖突探測模塊 采用了 Delaunay圖進行沖突檢測,采用Delaunay圖后沖突判斷僅需要對Delaunay邊進 行,將判斷局部化。構(gòu)建Delaunay圖最壞情況下算法的復(fù)雜度為0 (n2),而更新Delaunay 圖的算法復(fù)雜度僅為O(lg n),這樣就簡化了在沖突檢測上的運算,使得系統(tǒng)更加滿足實時
11沖突探測和解脫的需要。首先需要明確Delaunay圖的幾個概念
空圓平面上內(nèi)部沒有頂點的圓; Delaunay邊對于平面上給定一組生成點P生成的任意三角系T,若存在一個空圓 過T中一條邊的兩個頂點,那么這條邊為Delaunay邊; Delaunay圖對于平面上給定一組生成點P生成的任意三角系T,如果T中的每一 條邊都是Delaunay邊,則T為Delaunay圖。可以證明,如果在P中任意4點不共圓的情況 下,生成的Dela皿ay圖是唯一的; flip操作有公共邊的三角形,將其看作一個四邊形,公共邊看作一條對角線,則 當(dāng)另一條對角線于該邊交于邊上,則可擦去這條對角線換成另一條,使原來的三角形對變 成另一個三角形對。此過程稱為flip操作; 拓?fù)涫录﨑elaunay圖中的頂點在移動過程中,Delaunay圖只發(fā)生兩種類型的改
變,一種是形狀改變,但拓?fù)浣Y(jié)構(gòu)不發(fā)生變化,另一種是拓?fù)浣Y(jié)構(gòu)發(fā)生變化。使Delaunay圖
發(fā)生拓?fù)浣Y(jié)構(gòu)變化的頂點移動事件稱為拓?fù)涫录?圖6所示的是沖突探測模塊的流程圖,具體包括 步驟401,設(shè)仿真時刻time = O,仿真更新步長為tSt?。?步驟402,根據(jù)當(dāng)前全國空域飛行器的位置構(gòu)建Delaunay圖,對每個高度層單獨 構(gòu)建平面Delaunay圖; 步驟403,對于每一個以Delaunay邊為公共邊的三角對,初始化拓?fù)涫录?,按時間 順序加入事件隊列eventQueue ; 步驟404,對于每個Delaunay邊判斷其是否小于安全距離,如有則轉(zhuǎn)步驟405,如 無則轉(zhuǎn)步驟407 ; 步驟405,將沖突飛機對傳入沖突調(diào)解模塊進行沖突調(diào)解; 步驟406,刪除調(diào)解過的飛機對應(yīng)的拓?fù)涫录?,重新計算后按時間順序插入 eventQueue,由于飛行器的飛行狀態(tài)在調(diào)解前后發(fā)生了改變,其對應(yīng)的拓?fù)涫录矔l(fā)生 變化,所以需要重新計算; 步驟407,更新空域內(nèi)飛行器的位置,重新計算各Delaunay邊的長度; 步驟408,判斷當(dāng)前時間是否有eventQueue事件,有則轉(zhuǎn)步驟409 ; 步驟409,對拓?fù)涫录?yīng)的三角形對執(zhí)行flip操作來更新Delaunay圖,實現(xiàn)
Delaunay圖的拓?fù)浣Y(jié)構(gòu)更新; 步驟410,當(dāng)前時間飛行流生成模塊是否有新的飛行器生成進入仿真空域,有則需 要在Delaunay圖中增加一個頂點并相應(yīng)執(zhí)行更新,轉(zhuǎn)步驟411 ; 步驟411,加入一個新的飛行器頂點,找出當(dāng)前時刻所有外接圓包含新加入節(jié)點 的三角形并刪除,形成空的凸殼,將刪除三角形邊對應(yīng)的拓?fù)涫录h除;將凸殼頂點與新 加入頂點連接;對新生成邊為公共邊的三角形對計算其可能的拓?fù)涫录磿r間順序插入 eventQueue中; 步驟412,判斷當(dāng)前時間是否有飛行器達(dá)到終結(jié)狀態(tài)退出仿真空域,有則需要在 Delaunay圖中刪除相應(yīng)的頂點并更新,轉(zhuǎn)步驟413 ; 步驟413,更新Delaunay圖和拓?fù)涫录唧w操作與步驟411類似;
步驟414,設(shè)time = time+tSt??;
步驟415,判斷是否達(dá)到仿真終止時刻,否則轉(zhuǎn)步驟404,是則結(jié)束。
圖7所示的是沖突調(diào)解模塊的流程圖,具體包括 步驟501,建立沖突圖,節(jié)點為有沖突飛機,邊代表兩節(jié)點飛機之間有沖突; 步驟502,選擇節(jié)點度最大的沖突飛機t作為解脫對象,節(jié)點度越大表示與此飛機
沖突的飛機數(shù)量越多,首先對此飛機進行沖突調(diào)解可以達(dá)到最好的調(diào)解效果; 步驟503,確定各解脫算法的優(yōu)先級,按優(yōu)先級高低確定調(diào)解順序,各解脫算法的
優(yōu)先級排序反映了虛擬管制員的管制偏好,或者代表了某管制區(qū)既定的管制規(guī)則;步驟504,使用高度調(diào)整沖突調(diào)解單元解脫沖突;步驟505,使用盤旋等待沖突調(diào)解單元解脫沖突;步驟506,使用速度調(diào)整沖突調(diào)解單元解脫沖突;步驟507,判斷沖突是否已經(jīng)被調(diào)解,否則轉(zhuǎn)步驟508 ;步驟508,判斷是否還有其他優(yōu)先級較低的調(diào)解方案;步驟509,如調(diào)解失敗,則將調(diào)解失敗記錄寫入日志;步驟510,將沖突飛機t從沖突圖中刪除,并刪除與其直接相連的邊;步驟511,刪除圖中的孤立節(jié)點,刪除沖突圖中的某些邊以后,有些節(jié)點將被孤立,
這代表空域中已經(jīng)沒有其他節(jié)點飛機與此飛機沖突,所以將其刪除; 步驟512,判斷沖突圖中是否已經(jīng)沒有節(jié)點,有則說明還有其他沖突未調(diào)解,轉(zhuǎn)步 驟502,無則所有的沖突都已被調(diào)解,該模塊流程結(jié)束。 民航于2007年11月21日實施縮小垂直間隔RVSM飛行高度層配備標(biāo)準(zhǔn)以后,RVSM 空域可用的高度層有13個,其中向東航向的高度層為7個,向西航向的高度層為6個。按 照RVSM的要求,飛行器必須飛行在與其巡航方向相匹配的高度層上,這就是說飛行器可選 擇的高度層是非常有限的,所以本系統(tǒng)采取遍歷尋優(yōu)的方式來尋找可以解決飛行沖突的高 度層。 圖8所示的是高度調(diào)整沖突調(diào)解單元的流程圖,具體包括 步驟601 ,給定AirspaceStatus [i]中的一個沖突飛機t (數(shù)組AirspaceStatus的 第i個成員); 步驟602,隨機設(shè)定高度層調(diào)整方向upOrDown為up(向上)或者down(向下),設(shè) 定調(diào)整方向的目的是保證每次只朝同一個方向搜索(upOrDown是變量名稱,可以取up或 down兩個值); 步驟603,記錄飛機的歷史高度層layerHistory(變量名稱layerHistory是一個 高度值); 步驟604,判斷飛機的飛行方向,如向東則轉(zhuǎn)步驟605,如向西則轉(zhuǎn)步驟606 ;
步驟605,根據(jù)RVSM (Reduced Vertical S印aration Minimum,縮小垂直間隔標(biāo) 準(zhǔn))的規(guī)定,RVSM空域向東有7個高度層,也就是說可調(diào)整的高度層數(shù)量上限layerMax = 7 ; 步驟606,同理,RVSM空域向西有6個高度層,也就是說可調(diào)整的高度層數(shù)量上限 layerMax = 6 ; 步驟607,設(shè)定當(dāng)前已嘗試調(diào)整過的高度層數(shù)量layerNum二 l,當(dāng)前嘗試調(diào)整的高 度層layerNow = layerHistory ;
步驟608,如up0rDown值為up,則判斷是否已經(jīng)調(diào)整到同向的最高層,否則判斷是 否已經(jīng)調(diào)整到同向的最低層。如已經(jīng)達(dá)到調(diào)整上限則轉(zhuǎn)步驟609,否則轉(zhuǎn)步驟610 ;
步驟609,將飛機的高度層重置為layerHistory ;
步驟610,將調(diào)整方向upOrDown取反,如為up則置為down,反之則置為up ; 步驟611,按照upOrDown指示的方向調(diào)整layerNow到最近的同向的高度層; 步驟612, layerN咖=layerN咖+l ;
步驟613,查詢飛機t的飛行器性能表,獲得該機型的爬升率或下降率,將狀 態(tài)數(shù)組AirspaceStatus中飛機t的高度層按照時間順序和 一定的爬升或下降率,從 layerHistroy漸變?yōu)閘ayerNow ; 步驟614,判斷除AirspaceStatus [i]外其他數(shù)組項中,飛機t有沒有與其他飛機 產(chǎn)生沖突。高度層調(diào)整后,飛機t當(dāng)前的沖突被調(diào)解,但很有可能在調(diào)解過程中引發(fā)同其他 飛機的沖突,由于這個沖突只會產(chǎn)生在調(diào)解飛機與空域內(nèi)其他飛機之間,所以僅需要根據(jù) ATC標(biāo)準(zhǔn)(Air Traffic Control,空中交通管制)判斷調(diào)解過程中飛機t是否與其他飛機 有沖突。如沒有沖突,則調(diào)解成功,否則轉(zhuǎn)步驟615 ; 步驟615,判斷是否layerNum < layerMax,如為真則轉(zhuǎn)步驟608,繼續(xù)嘗試其他高 度層,如為假則調(diào)解失敗。 如果兩架飛機tl和t2發(fā)生沖突,以飛機tl為參照系,則飛機t2飛行的安全區(qū)域 為,與兩架飛機相對飛行方向平行的并且與飛機t2為圓心,安全距離為半徑的圓相切的兩 條直線之間的區(qū)域,稱為飛機t2的"影子"區(qū)域。采用飛機t2盤旋等待的方法解決飛行沖 突,相當(dāng)于飛機t2不動,而飛機tl飛出飛機t2的"影子"區(qū)域。而飛機t2盤旋等待的時 間也即為飛機tl離開飛機t2的"影子"區(qū)域所需要的時間。 設(shè)飛機tl的位置為(PwP^,速度為^,飛機t2的位置為(&,~),速度為~飛 機t2相對于飛機tl的速度v = v2_Vl,則
定義與速度v垂直但反向的兩個速度矢〗 為v在x軸上的坐標(biāo)分量和v在y軸上的坐標(biāo)分』 分別對應(yīng)飛機t2 "影子"區(qū)域的兩條邊界直線 (-Vy, vx)對應(yīng)x,-"義+々《+《=0
(-Vy, 禾P (Vy, _VX),其中Vx和Vy分別
,以飛機t2為坐標(biāo)原點,兩個速度矢量
<formula>formula see original document page 14</formula>
d為安全間隔。如果v, (-Vy, vx) X)則飛機tl須飛越邊界(l),垂直飛越速度
<formula>formula see original document page 14</formula>
飛機tl(PfP2x,P^-P2y)到邊界(1)的距離為
<formula>formula see original document page 14</formula>
飛越時間即盤旋等待時間0141]
distance
諷-。 -諷-尸2》+ 4+v;
0142] 如果Vi
0143]
v =-
(v5
'0\
(-vv')
,_vx) > 0則飛機tl須飛越邊界(2) , vpa ,一"
(3)
禾口 distance相應(yīng)變?yōu)?br>
0144] distance:
、+、
0145]
0146]
飛越時間即盤旋等待時間
distance
V
(4)
0147] 圖9所示的是盤旋等待沖突調(diào)解單元的流程圖,具體包括
0148] 步驟701,給定AirspaceStatus[i]中的一個沖突飛機對tl、 t2,更新時間步長 tSt印,以及循環(huán)數(shù)組維數(shù)nStatus ;
0149] 步驟702,根據(jù)公式(3)或(4)計算飛機tl需要盤旋等待的時間timel ; 0150] 步驟703,判斷是否滿足timel < tSt印^iStatus, tSt印^iStatus是系統(tǒng)預(yù)先仿 真的最大時間間隔,也是系統(tǒng)預(yù)留的最長沖突調(diào)解時間;
0151] 步驟704,計算nl = timel/tSt印+l,將沖突調(diào)解所需要的時間轉(zhuǎn)化為盤旋等待所 空歷的系統(tǒng)狀態(tài)刷新點的個數(shù);
0152] 步驟705,設(shè)定循環(huán)數(shù)組AirspaceStatus里面(i-nl)mod nStatus到(i-l)mod nStatus數(shù)據(jù)項中飛機tl的狀態(tài)為盤旋等待;
0153] 步驟706,判斷飛機tl改變狀態(tài)后是否與其他飛機產(chǎn)生沖突,由于沖突只會發(fā)生 在tl與其他飛機之間,所以僅需要判斷改變狀態(tài)tl與其他飛機直接的距離是否小于安全 間隔;
0154] 步驟707,根據(jù)公式(3)或(4)計算飛機t2需要盤旋等待的時間time2 ;
0155] 步驟708,判斷是否time2 < tStep*nStatus,是則轉(zhuǎn)709步,否則沖突調(diào)解失??;
0156] 步驟709,計算n2 = time2/tSt印+l ;
0157] 步驟710,設(shè)定循環(huán)數(shù)組AirspaceStatus里面(i-n2)mod nStatus到(i-l)mod nStatus數(shù)據(jù)項中飛機t2的狀態(tài)為盤旋等待;
0158] 步驟711,判斷飛機t2改變狀態(tài)后是否與其他飛機產(chǎn)生沖突,無則調(diào)解成功,,結(jié) 束,否則調(diào)解失敗。
0159] 速度調(diào)整解決沖突的方法就是在飛行器飛行性能允許的范圍內(nèi),調(diào)解一對沖突飛 機中的一架飛機來解決沖突的方法。設(shè)飛機tl的位置為(Plx, Ply),速度為Vl, Vl和x工分 別為大小和方向,飛機t2的位置為(P2x, P2y),速度為v2, v2和x 2分別為大小和方向,飛機 t2相對于飛機tl的速度v = Vli2, v和x分別為大小和方向,則滿足 v—v,2+V22-2v,v2咖(》_義2)
15<formula>formula see original document page 16</formula>
0165] 假設(shè)調(diào)整飛機tl的速度Vl為Vl*得到新的相對速度v*,則速度v*的最優(yōu)方向x :為經(jīng)過飛機tl,與飛機t2為圓心,安全距離d為半徑的圓相切的方向,亦滿足
<formula>formula see original document page 16</formula>
設(shè)rws為從飛機tl到飛機t2的方向向量,iy。s和x ws分別為大小和方向,則滿
<formula>formula see original document page 16</formula>
與公式(5)同理得<formula>formula see original document page 16</formula>
由于僅改變飛機tl的速度,變化前后;r; = A ,則對上式做代數(shù)變換得<formula>formula see original document page 16</formula>
0171] 根據(jù)飛機tl到飛機t2保護區(qū)邊緣的距離已經(jīng)速度調(diào)整后的相對速度大小不難算出沖突調(diào)解所需要的最短時間。
0172] 圖10所示的是速度調(diào)整沖突調(diào)解單元的流程圖,具體包括
0173] 步驟801,給定AirspaceStatus[i]中的一個沖突飛機對tl、 t2,更新時間步長tSt印,以及循環(huán)數(shù)組維數(shù)nStatus ;
0174] 步驟802,根據(jù)公式(6)計算飛機tl最優(yōu)速度改變量speedl,以及飛越t2保護區(qū)所需的時間timel ;
0175] 步驟803,判斷速度改變量speedl是否在飛行器性能的允許范圍以內(nèi);0176] 步驟804,判斷調(diào)解時間是否小于系統(tǒng)提供的調(diào)解時間余量;0177] 步驟805,計算<formula>formula see original document page 16</formula>
0178] 步驟806,改變循環(huán)數(shù)組AirspaceStatus里面(i-nl)mod nStatus至lj (i-l)modnStatus數(shù)據(jù)項中飛機tl的速度;
0179] 步驟807,判斷飛機tl改變狀態(tài)后是否與其他飛機產(chǎn)生沖突,否則調(diào)解成功,結(jié)束,是則轉(zhuǎn)808步;
0180] 步驟808,根據(jù)公式(6)計算飛機t2最優(yōu)速度改變量speed2,以及飛越tl保護區(qū)所需的時間time2 ;
0181] 步驟809,判斷速度改變量speed2是否在飛行器性能的允許范圍以內(nèi),是則轉(zhuǎn)810,否則轉(zhuǎn)508判斷是否還有其它優(yōu)先級低的解決方案;
0182] 步驟810,判斷調(diào)解時間是否小于系統(tǒng)提供的調(diào)解時間余量,是則轉(zhuǎn)811,否則轉(zhuǎn)508判斷是否還有其它優(yōu)先級低的解決方案;0183] 步驟811,計算<formula>formula see original document page 16</formula>
步驟812,改變循環(huán)數(shù)組AirspaceStatus里面(i—n2)mod nStatus至U (i—l)modnStatus數(shù)據(jù)項中飛機t2的速度; 步驟813,判斷飛機t2改變狀態(tài)后是否與其他飛機產(chǎn)生沖突,無則沖突調(diào)解成功,結(jié)束,否則失敗,轉(zhuǎn)508判斷是否還有其它優(yōu)先級低的解決方案。
權(quán)利要求
一種空域運行仿真中沖突的自動檢測和調(diào)解系統(tǒng),包括空域狀態(tài)預(yù)先仿真模塊,用于預(yù)測在未來一段時間內(nèi)仿真空域的運行情況;沖突探測模塊,用于根據(jù)空域狀態(tài)預(yù)先仿真模塊預(yù)測的數(shù)據(jù)探測某個時間點空域內(nèi)飛行流的沖突情況;沖突調(diào)解模塊,用于根據(jù)沖突探測模塊的探測結(jié)果在規(guī)定允許的調(diào)解時間余量內(nèi)調(diào)解已經(jīng)探測到的飛行沖突。
2. 根據(jù)權(quán)利要求1所述的空域運行仿真中沖突的自動檢測和調(diào)解系統(tǒng),其特征在于所述沖突調(diào)解模塊包括高度調(diào)整沖突調(diào)解單元,用于調(diào)整飛行器的巡航高度層來調(diào)解飛行沖突;速度調(diào)整沖突調(diào)解單元,用于調(diào)整飛行器的巡航速度來調(diào)解飛行沖突;盤旋等待沖突調(diào)解單元,用于使飛行器盤旋等待一段時間后來調(diào)解飛行沖突。
3. —種空域運行仿真中沖突的自動檢測和調(diào)解方法,其特征在于,包含下述內(nèi)容預(yù)測未來一段時間內(nèi)仿真空域的運行情況;根據(jù)仿真空域的運行情況探測某個時間點空域內(nèi)飛行流的沖突情況;根據(jù)飛行流沖突情況探測結(jié)果在規(guī)定允許的調(diào)解時間余量內(nèi)調(diào)解已經(jīng)探測到的飛行沖突。
4. 根據(jù)權(quán)利要求3所述的空域運行仿真中沖突的自動檢測和調(diào)解方法,其特征在于預(yù)測在未來一段時間內(nèi)仿真空域的運行情況的方法是采用離散仿真的方法預(yù)測未來一段時間內(nèi)空域的運行狀況,先設(shè)定仿真刷新時間以及連續(xù)預(yù)測次數(shù)兩個變量,以確定系統(tǒng)預(yù)先仿真的時間量"仿真刷新時間*連續(xù)預(yù)測次數(shù)",定義一個維數(shù)為連續(xù)預(yù)測次數(shù)的空域狀態(tài)循環(huán)數(shù)組,每個數(shù)組項中保存有當(dāng)前空域中運行的飛行器對象,循環(huán)數(shù)組中每一個數(shù)據(jù)項都比其之后的數(shù)據(jù)項增加仿真刷新時間的時間量,根據(jù)當(dāng)前空域中飛行器的運行狀況增加或刪除更新飛行器對象,或者根據(jù)沖突調(diào)解方案進行調(diào)整。探測某個時間點空域內(nèi)飛行流的沖突情況的方法是假定飛行器在巡航過程中始終位于RVSM指定的高度層上,因此飛行沖突探測僅在同高度層進行,判斷的標(biāo)準(zhǔn)是用動態(tài)的Delaimay圖判斷某個時刻兩架飛行器的水平距離是否小于指定距離間隔標(biāo)準(zhǔn);調(diào)解已經(jīng)探測到的飛行沖突的方法是首先為沖突飛機建立沖突圖,圖中的點代表探測到飛行沖突的飛行器,邊代表兩飛行器之間探測到了沖突,每次選擇節(jié)點度最大的飛行器作為調(diào)解對象;設(shè)計了調(diào)高、盤旋、調(diào)速三種調(diào)解方案,并設(shè)定三種調(diào)解方案使用的優(yōu)先級,按優(yōu)先級順序使用調(diào)解方案調(diào)解沖突,沖突調(diào)解成功后,即將該飛行器從沖突圖中刪除,繼續(xù)選擇節(jié)點度最大的飛行器調(diào)解,直到?jīng)_突圖中沒有節(jié)點。
5. 根據(jù)權(quán)利要求4所述的空域運行仿真中沖突的自動檢測和調(diào)解方法,其特征在于預(yù)測在未來一段時間內(nèi)仿真空域運行情況的的方法包含下述步驟步驟301,設(shè)定系統(tǒng)更新時間步長tSt印,和循環(huán)狀態(tài)數(shù)組的維數(shù)nStatus,預(yù)先仿真tStep*nStatus時間內(nèi)空域的狀態(tài),下轉(zhuǎn)302 ;步驟302,建立循環(huán)狀態(tài)數(shù)組AirspaceStatus,用于保存在nStatus個連續(xù)系統(tǒng)刷新點空域的狀態(tài),下轉(zhuǎn)303;步驟303,設(shè)i = 0, time = 0, i為系統(tǒng)當(dāng)前刷新過的步數(shù),time為系統(tǒng)當(dāng)前仿真的時間,下轉(zhuǎn)304 ;步驟304,判斷是否i < nStatus,如為是轉(zhuǎn)步驟305,如為否轉(zhuǎn)步驟310 ;步驟305,判斷是否i = O,如是轉(zhuǎn)到步驟308,如否轉(zhuǎn)306 ;步驟306,拷貝AirspaceStatus [i-l]中的飛行器對象到AirspaceStatus [i]中,下轉(zhuǎn)307 ;步驟307,依據(jù)仿真航跡推算數(shù)據(jù)和當(dāng)前時間time更新AirspaceStatus [i]中的飛行器狀態(tài)信息,下轉(zhuǎn)308;步驟308,使用仿真航班流數(shù)據(jù)選擇在time時刻進入仿真空域的飛行器對象加入AirspaceStatus [i],下轉(zhuǎn)309 ;步驟309,設(shè)i = i+l, time = i襯St印,并轉(zhuǎn)304 ;步驟310,拷貝AirspaceStatus [(i-l) mod nStatus]中的飛行器對象到AirspaceStatus [i mod nStatus]中,對i取模來進行循環(huán)利用,下轉(zhuǎn)311 ;步驟311,依據(jù)仿真航跡推算數(shù)據(jù)和當(dāng)前時間time更新AirspaceStatus[i modnStatus]中的飛行器狀態(tài)信息,下轉(zhuǎn)312 ;步驟312,刪除AirspaceStatus [i mod nStatus]中達(dá)到終結(jié)狀態(tài)的飛行器對象,下轉(zhuǎn)313 ;步驟313,使用仿真航班流數(shù)據(jù)選擇在time時刻進入仿真空域的飛行器對象加入AirspaceStatus [i mod nStatus],下轉(zhuǎn)314 ;步驟314,使用沖突探測模塊,對AirspaceStatus [i mod nStatus]中飛行沖突進行檢測,并使用沖突調(diào)解模塊在整個狀態(tài)數(shù)組中予以解決,下轉(zhuǎn)315 ;步驟315,設(shè)i = i+l, time = i襯St印,下轉(zhuǎn)316 ;步驟316,判斷time是否達(dá)到仿真終止時刻,否則轉(zhuǎn)步驟304,是則結(jié)束。
6.根據(jù)權(quán)利要求4所述的空域運行仿真中沖突的自動檢測和調(diào)解方法,其特征在于探測某個時間點空域內(nèi)飛行流的沖突情況的方法包含下述步驟步驟401,設(shè)仿真時刻time = O,仿真更新步長為tSt印,下轉(zhuǎn)402 ;步驟402,根據(jù)當(dāng)前整個管理空域飛行器的位置構(gòu)建Delaunay圖,對每個高度層單獨構(gòu)建平面Delaunay圖,下轉(zhuǎn)403 ;步驟403,對于每一個以Delaimay邊為公共邊的三角對,初始化拓?fù)涫录磿r間順序加入事件隊列eventQueue,下轉(zhuǎn)404 ;步驟404,對于每個Delaunay邊判斷其是否小于安全距離,是則轉(zhuǎn)405,否則轉(zhuǎn)407 ;步驟405,將沖突飛機對傳入沖突調(diào)解模塊進行沖突調(diào)解,下轉(zhuǎn)406 ;步驟406,刪除調(diào)解過的飛機對應(yīng)的拓?fù)涫录?,重新計算后按時間順序插入eventQueue,下轉(zhuǎn)407 ;步驟407,更新空域內(nèi)飛行器的位置,重新計算各Dela皿ay邊的長度,下轉(zhuǎn)408 ;步驟408,判斷當(dāng)前時間是否有eventQueue事件,否則轉(zhuǎn)410,有則轉(zhuǎn)步驟409 ;步驟409,對拓?fù)涫录?yīng)的三角形對執(zhí)行flip操作來更新Delaunay圖,實現(xiàn)Delaunay圖的拓?fù)浣Y(jié)構(gòu)更新,然后轉(zhuǎn)410 ;步驟410,當(dāng)前時間飛行流生成模塊是否有新的飛行器生成進入仿真空域,有則轉(zhuǎn)411,否則轉(zhuǎn)412 ;步驟411,在Delaunay圖中增加一個頂點并相應(yīng)執(zhí)行更新,然后轉(zhuǎn)412 ;步驟412,判斷當(dāng)前時間是否有飛行器達(dá)到終結(jié)狀態(tài)退出仿真空域,有則轉(zhuǎn)步驟413,否則轉(zhuǎn)414 ;步驟413,更新Delaunay圖和拓?fù)涫录?,然后轉(zhuǎn)414 ;步驟414,設(shè)time = time+tSt印,下轉(zhuǎn)415 ;步驟415,判斷是否達(dá)到仿真終止時刻,否則轉(zhuǎn)步驟404,是則結(jié)束。
7. 根據(jù)權(quán)利要求4所述的空域運行仿真中沖突的自動檢測和調(diào)解方法,其特征在于調(diào)解探測到的飛行沖突的方法包含下述步驟步驟501,建立沖突圖,節(jié)點為有沖突飛機,邊代表兩節(jié)點飛機之間有沖突,下轉(zhuǎn)502 ;步驟502,選擇節(jié)點度最大的沖突飛機t作為解脫對象,下轉(zhuǎn)503 ;步驟503,確定各解脫算法的優(yōu)先級,按優(yōu)先級高低確定調(diào)解順序;步驟504,采用高度調(diào)整方法解脫沖突,然后轉(zhuǎn)507 ;步驟505,采用盤旋等待方法解脫沖突,然后轉(zhuǎn)507 ;步驟506,采用速度調(diào)整方法解脫沖突,然后轉(zhuǎn)507 ;步驟507,判斷沖突是否已經(jīng)被調(diào)解,若是轉(zhuǎn)步驟510,若否轉(zhuǎn)步驟508 ;步驟508,判斷是否還有其他優(yōu)先級較低的調(diào)解方案;若是則按503確定的優(yōu)先級順序轉(zhuǎn)504、505或506,若否轉(zhuǎn)步驟509 ;步驟509,將調(diào)解失敗記錄寫入日志;并轉(zhuǎn)步驟510 ;步驟510,將沖突飛機t從沖突圖中刪除,并刪除與其直接相連的邊,下轉(zhuǎn)511 ;步驟511 ,刪除圖中的孤立節(jié)點,下轉(zhuǎn)512 ;步驟512,判斷沖突圖中是否已經(jīng)沒有節(jié)點,否則說明還有其他沖突未調(diào)解,轉(zhuǎn)步驟502,是則所有的沖突都已被調(diào)解,該流程結(jié)束。
8. 根據(jù)權(quán)利要求7所述的空域運行仿真中沖突的自動檢測和調(diào)解方法,其特征在于用調(diào)整高度調(diào)解沖突的方法包含下述步驟步驟601,給定AirspaceStatus[i]中的一個沖突飛機t,下轉(zhuǎn)602 ;步驟602,隨機設(shè)定高度層調(diào)整方向upOrDown為向上或者向下,以保證每次只朝同一個方向搜索,下轉(zhuǎn)603 ;步驟603,記錄飛機的歷 高度層layerHistory,下轉(zhuǎn)604 ;步驟604,判斷飛機的飛行方向,如向東則轉(zhuǎn)步驟605,如向西則轉(zhuǎn)步驟606 ;步驟605,根據(jù)RVSM的規(guī)定確定向東可調(diào)整的高度層數(shù)量上限layerMax = 7,然后下轉(zhuǎn)607 ;步驟606,根據(jù)RVSM的規(guī)定確定向西可調(diào)整的高度層數(shù)量上限layerMax = 6,然后下轉(zhuǎn)607 ;步驟607,設(shè)定當(dāng)前已嘗試調(diào)整過的高度層數(shù)量layerNum = 1,當(dāng)前嘗試調(diào)整的高度層layerNow = layerHistory,下轉(zhuǎn)608 ;步驟608,如upOrDown值為up,則判斷是否已經(jīng)調(diào)整到同向的最高層,否則判斷是否已經(jīng)調(diào)整到同向的最低層,如已經(jīng)達(dá)到調(diào)整上限則轉(zhuǎn)步驟609,否則轉(zhuǎn)步驟611 ;步驟609,將飛機的高度層重置為layerHistory,下轉(zhuǎn)610 ;步驟610,將調(diào)整方向upOrDown取反,如為up則置為down,反之則置為up,下轉(zhuǎn)611 ;步驟611,按照upOrDown指示的方向調(diào)整layerNow到最近的同向的高度層,下轉(zhuǎn)612 ;步驟612,設(shè)layerNum = layerNum+l,下轉(zhuǎn)613 ;步驟613,查詢飛機t的飛行器性能表,獲得該機型的爬升率或下降率,將狀態(tài)數(shù)組AirspaceStatus中飛機t的高度層按照時間順序和一定的爬升或下降率,從layerHistroy漸變?yōu)閘ayerNow,下轉(zhuǎn)614 ;步驟614,根據(jù)ATC標(biāo)準(zhǔn)判斷調(diào)解過程中飛機t是否與其他飛機有沖突,如沒有沖突,則調(diào)解成功結(jié)束,否則轉(zhuǎn)步驟615 ;步驟615,判斷是否layerNum < layerMax,如是則轉(zhuǎn)步驟608,繼續(xù)嘗試其他高度層,如否則調(diào)解失敗。
9. 根據(jù)權(quán)利要求7所述的空域運行仿真中沖突的自動檢測和調(diào)解方法,其特征在于用盤旋等待調(diào)解沖突的方法包含下述步驟步驟701,給定AirspaceStatus [i]中的一個沖突飛機對tl、t2,更新時間步長tSt印,以及循環(huán)數(shù)組維數(shù)nStatus,下轉(zhuǎn)702 ;步驟702,計算飛機tl需要盤旋等待的時間timel,下轉(zhuǎn)703 ;步驟703,判斷是否滿足timel < tStep*nStatus, tStep*nStatus是系統(tǒng)預(yù)先仿真的最大時間間隔,也是系統(tǒng)預(yù)留的最長沖突調(diào)解時間;是則轉(zhuǎn)704,否則轉(zhuǎn)707 ;步驟704,計算nl = timel/tSt印+l,將沖突調(diào)解所需要的時間轉(zhuǎn)化為盤旋等待所經(jīng)歷的系統(tǒng)狀態(tài)刷新點的個數(shù),下轉(zhuǎn)705 ;步驟705,設(shè)定循環(huán)數(shù)組AirspaceStatus里面(i-nl)mod nStatus到(i-l)modnStatus數(shù)據(jù)項中飛機tl的狀態(tài)為盤旋等待,下轉(zhuǎn)706 ;步驟706,判斷飛機tl改變狀態(tài)后是否與其他飛機產(chǎn)生沖突;是則轉(zhuǎn)707步,否則結(jié)束;步驟707,計算飛機t2需要盤旋等待的時間time2,下轉(zhuǎn)708 ;步驟708,判斷是否time2 < tStep*nStatuS,是則轉(zhuǎn)709步,否則沖突調(diào)節(jié)失敗結(jié)束;步驟709,計算n2 = time2/tSt印+l,下轉(zhuǎn)710 ;步驟710,設(shè)定循環(huán)數(shù)組AirspaceStatus里面(i-n2)mod nStatus到(i-l)modnStatus數(shù)據(jù)項中飛機t2的狀態(tài)為盤旋等待,下轉(zhuǎn)711 ;步驟711,判斷飛機t2改變狀態(tài)后是否與其他飛機產(chǎn)生沖突,無則調(diào)解成功,結(jié)束;否則沖突調(diào)解失敗結(jié)束。
10. 根據(jù)權(quán)利要求9所述的空域運行仿真中沖突的自動檢測和調(diào)解方法,其特征在于702和707步中計算飛機需要盤旋等待時間是采用下述公式計算 <formula>formula see original document page 5</formula>Vl (-Vy, Vx) > 0時使用公式(3) , Vl (V -vx) > 0時使用公式(4);其中(Plx, Ply)為飛機tl的位置,Vl為相應(yīng)速度,(P2x, P2y)為飛機t2的位置,v2為相應(yīng)速度,v為飛機t2相對于飛機tl的速度,(-Vy, vx)和(vy,-vx)是與速度v垂直但反向的兩個速度矢量,d為安全間隔,vpass為飛機tl垂直飛越危險碰撞區(qū)域的速度。
11.根據(jù)權(quán)利要求7所述的空域運行仿真中沖突的自動檢測和調(diào)解方法,其特征在于 用調(diào)整速度調(diào)解沖突的方法包含下述步驟步驟801,給定AirspaceStatus [i]中的一個沖突飛機對tl、t2,更新時間步長tSt印, 以及循環(huán)數(shù)組維數(shù)nStatus,下轉(zhuǎn)802 ;步驟802,計算飛機tl最優(yōu)速度改變量speedl,以及飛越t2保護區(qū)所需的時間timel, 下轉(zhuǎn)803 ;步驟803,判斷速度改變量speedl是否在飛行器性能的允許范圍以內(nèi);是則轉(zhuǎn)804步, 否則轉(zhuǎn)808步;步驟804,判斷調(diào)解時間是否小于系統(tǒng)提供的調(diào)解時間余量;是則轉(zhuǎn)805步,否則轉(zhuǎn)808止 少;步驟805,計算nl = timel/tSt印+l,下轉(zhuǎn)806 ;步驟806,改變循環(huán)數(shù)組AirspaceStatus里面(i-nl)mod nStatus到(i-l)mod nStatus數(shù)據(jù)項中飛機tl的速度,下轉(zhuǎn)807 ;步驟807,判斷飛機tl改變狀態(tài)后是否與其他飛機產(chǎn)生沖突;否則調(diào)解成功結(jié)束,是則 轉(zhuǎn)808步;步驟808,計算飛機t2最優(yōu)速度改變量speed2,以及飛越tl保護區(qū)所需的時間time2, 下轉(zhuǎn)809 ;步驟809,判斷速度改變量speed2是否在飛行器性能的允許范圍以內(nèi);是則轉(zhuǎn)810,否 則轉(zhuǎn)508判斷是否還有其他優(yōu)先級低的解決方案;步驟810,判斷調(diào)解時間是否小于系統(tǒng)提供的調(diào)解時間余量;是則轉(zhuǎn)811,否則調(diào)解失 敗,轉(zhuǎn)508判斷是否還有其他優(yōu)先級低的解決方案;步驟811,計算n2 = time2/tSt印+l,下轉(zhuǎn)812 ;步驟812,改變循環(huán)數(shù)組AirspaceStatus里面(i-n2)mod nStatus到(i-l)mod nStatus數(shù)據(jù)項中飛機t2的速度,下轉(zhuǎn)813 ;步驟813,判斷飛機t2改變狀態(tài)后是否與其他飛機產(chǎn)生沖突,無則沖突調(diào)解成功結(jié)束, 是則失敗,轉(zhuǎn)508判斷是否還有其他優(yōu)先級低的解決方案。
全文摘要
本發(fā)明公開了一種空域運行仿真中沖突的自動檢測和調(diào)解系統(tǒng),包括空域狀態(tài)預(yù)先仿真模塊,用于預(yù)測在未來一段時間內(nèi)仿真空域的運行情況;沖突探測模塊,用于探測某個時間點空域內(nèi)飛行流的沖突情況;沖突調(diào)解模塊,用于在規(guī)定允許的調(diào)解時間余量內(nèi)調(diào)解已經(jīng)探測到的飛行沖突;本系統(tǒng)實現(xiàn)了空域仿真運行中飛行沖突的自動檢測和處理,算法簡單,并可使得空域仿真更加貼近空域的實際運行情況,為空域運行的科學(xué)評估、科學(xué)規(guī)劃提供輔助決策手段。
文檔編號G08G5/00GK101694752SQ20091008865
公開日2010年4月14日 申請日期2009年7月6日 優(yōu)先權(quán)日2009年7月6日
發(fā)明者唐金翔, 張軍, 朱衍波, 李立群, 許有臣, 趙燦 申請人:民航數(shù)據(jù)通信有限責(zé)任公司;北京航空航天大學(xué);