本發(fā)明涉及電力電子技術、信息處理技術等領域,特別涉及一種機場飛行資源與飛機的調(diào)度方法和調(diào)度系統(tǒng)。
背景技術:
目前國內(nèi)民用機場對飛機的調(diào)度主要是靠人為管理。管理員根據(jù)掌握的現(xiàn)有信息,包括飛機速度、機場資源分布等等,對應以往的經(jīng)驗,人工給出排序方案。這種做法一方面缺乏科學依據(jù),很難保證結果的準確性,會造成資源使用沖突;另一方面由于人為思考的滯后性,也會造成長時間的飛行延遲。特別是在機場飛機起降的高峰期,多架次飛機同時起降出入,大大提高了機場的管理難度,這時候通過人工管理就更容易暴露出以上弊端。因此,一種科學有序高效的自動化調(diào)度系統(tǒng)對于民用機場來說就顯得尤為迫切。
技術實現(xiàn)要素:
本發(fā)明的目的是針對現(xiàn)有技術的不足,提出一種事故率低,規(guī)范度高的機場飛行資源與飛機的調(diào)度方法和調(diào)度系統(tǒng),使得所有飛行資源達到最高使用效率,在相同時間內(nèi)起降盡可能多架次的飛機,大幅度提高機場的吞吐量。
為實現(xiàn)上述目的,本發(fā)明所設計的機場飛行資源與飛機的調(diào)度方法,其特殊之處在于,所述方法包括如下步驟:
1)對整個機場進行范圍測定,建立機場平面圖,定義飛行資源和飛機的位置狀態(tài);
2)根據(jù)所述飛行資源和飛機的位置狀態(tài)安裝信息采集器;
3)將機場每架飛機編號,記錄并維護每架飛機每一時刻所處的位置和狀態(tài);
4)對飛機起飛與降落需要占用的所有飛行資源進行分類與編號,記錄并維護每類資源的數(shù)量和每個資源的使用情況;
5)對飛機起降的整個流程進行建模,根據(jù)使用的飛行資源劃分為不同的狀態(tài);
6)主機端指定飛行任務類型,選擇對應的調(diào)度算法并執(zhí)行,向每架飛機發(fā)出調(diào)度指令;
7)在計算機顯示界面顯示所有飛行資源的使用情況和每架飛機的位置狀態(tài)。
優(yōu)選地,所述步驟5)中飛機起降過程中的狀態(tài)包括:停機狀態(tài)、第一運輸狀態(tài)、飛行準備狀態(tài)、第二運輸狀態(tài)、起飛狀態(tài)、飛行狀態(tài)、著陸狀態(tài)、第三運輸狀態(tài)、維修狀態(tài)。
優(yōu)選地,所述步驟4)中飛行資源包括運輸車、維修點、起飛區(qū)、降落區(qū);每一個所述飛機、運輸車、維修點、起飛區(qū)、降落區(qū)單獨編號,具有匹配和空閑兩種使用情況。通過設定使用情況的狀態(tài)變量實現(xiàn)對飛行資源的互斥訪問,避免了資源的使用沖突。相比于一般的人工調(diào)控手段,事故率更低,規(guī)范度更高。
優(yōu)選地,所述步驟6)中的調(diào)度算法包括緊急狀態(tài)調(diào)度算法和常規(guī)狀態(tài)調(diào)度算法。
優(yōu)選地,所述緊急狀態(tài)調(diào)度算法包括如下步驟:
a)選擇處于停機狀態(tài)的飛機,查詢是否存在空閑狀態(tài)的運輸車,是則將飛機與運輸車匹配,轉第一運輸狀態(tài),記錄第一運輸時間;
b)判斷第一運輸時間是否大于預設值,是則查詢是否存在空閑狀態(tài)的維修點,是則飛機與維修點匹配,轉飛行準備狀態(tài),飛機與運輸車解除匹配,記錄飛行準備時間;
c)判斷飛行準備時間是否大于預設值,是則查詢是否存在空閑狀態(tài)的起飛區(qū),是則將飛機與起飛區(qū)匹配,飛機與維修點解除匹配,飛機進入第二運輸狀態(tài),記錄第二運輸時間;
d)判斷第二運輸時間是否大于預設值,是則轉起飛狀態(tài),記錄起飛時間;
e)判斷起飛時間是否大于預設值,是則將飛機與起飛區(qū)解除匹配,轉飛行狀態(tài),記錄飛行時間;
f)判斷飛行時間是否大于預設值,是則查詢降落區(qū)是否處于空閑狀態(tài),是則將飛機與降落區(qū)匹配,轉著陸狀態(tài),記錄著陸時間;
g)判斷著陸時間是否大于預設值,是則查詢是否存在空閑狀態(tài)的維修點,是則轉第三運輸狀態(tài),記錄第三運輸時間;
h)判斷第三運輸時間是否大于預設值,是則飛機與維修點匹配,轉維修狀態(tài),記錄維修時間;
i)判斷維修時間是否大于預設值,是則轉步驟c)查詢是否存在空閑狀態(tài)的起飛區(qū),進行下一輪飛行;
上述判斷過程中未滿足條件為否,則繼續(xù)等待直至滿足條件為是。緊急狀態(tài)調(diào)度算法使得所有飛行資源達到最高使用效率,在相同時間內(nèi)起降盡可能多架次的飛機,大幅度提高機場的吞吐量。
優(yōu)選地,所述常規(guī)狀態(tài)調(diào)度算法包括如下步驟:
a)選擇處于停機狀態(tài)的飛機,查詢是否存在空閑狀態(tài)的運輸車,是則將飛機與運輸車匹配,轉第一運輸狀態(tài),記錄第一運輸時間;
b)判斷第一運輸時間是否大于預設值,是則查詢是否存在空閑狀態(tài)的維修點,是則飛機與維修點匹配,轉飛行準備狀態(tài),飛機與運輸車解除匹配,記錄飛行準備時間;
c)判斷飛行準備時間是否大于預設值,是則查詢距離上次起飛的時間是否大于要求間隔時間t,是則查詢是否存在空閑狀態(tài)的起飛區(qū),是則將飛機與起飛區(qū)匹配,飛機與維修點解除匹配,飛機進入第二運輸狀態(tài),記錄第二運輸時間;
d)判斷第二運輸時間是否大于預設值,是則轉起飛狀態(tài),記錄起飛時間;
e)判斷起飛時間是否大于預設值,是則將飛機與起飛區(qū)解除匹配,轉飛行狀態(tài),記錄飛行時間;
f)判斷飛行時間是否大于預設值,是則查詢降落區(qū)是否處于空閑狀態(tài),是則將飛機與降落區(qū)匹配,轉著陸狀態(tài),記錄著陸時間;
g)判斷著陸時間是否大于預設值,是則查詢是否存在空閑狀態(tài)的維修點,是則轉第三運輸狀態(tài),記錄第三運輸時間;
h)判斷第三運輸時間是否大于預設值,是則飛機與維修點匹配,轉維修狀態(tài),記錄維修時間;
i)判斷維修時間是否大于預設值,是查詢是否存在空閑狀態(tài)的運輸車,是則將飛機與運輸車匹配,與維修點解除匹配,轉第四運輸狀態(tài),記錄第四運輸時間;
j)判斷第四運輸時間是否大于預設值,是則將飛機與運輸車解除匹配,飛機進入停機狀態(tài);
上述判斷過程中未滿足條件為否,則繼續(xù)等待直至滿足條件為是。在常規(guī)狀態(tài)下,盡可能減少資源在相同時間內(nèi)的使用次數(shù),以達到減少資源損耗,提高資源使用壽命的效果。
優(yōu)選地,所述維修點分為前部維修點和后部維修點,所述第二運輸時間包括飛機從前部維修點滑行至起飛區(qū)的第二前運輸時間和飛機從后部維修點滑行至起飛區(qū)的第二后運輸時間;所述第三運輸狀態(tài)包括飛機從前部維修點滑行至起飛區(qū)的第三前運輸時間和飛機從后部維修點滑行至起飛區(qū)的第三后運輸時間。
優(yōu)選地,所述維修點分為前部維修點和后部維修點,所述第四運輸時間包括飛機從前部維修點滑行至起飛區(qū)的第四前運輸時間和飛機從后部維修點滑行至起飛區(qū)的第四后運輸時間。
本發(fā)明所設計的一種機場飛行資源與飛機的調(diào)度系統(tǒng),其特殊之處在于,所述調(diào)度系統(tǒng)包括:
位置信息模塊:用于采集飛機的位置信息;
飛機狀態(tài)模塊:用于根據(jù)所述飛機的位置信息記錄并更新每架飛機的狀態(tài)信息;
資源狀態(tài)模塊:用于記錄并更新飛行資源的狀態(tài)信息,所述飛行資源包括停機區(qū)、運輸車、維修點和起飛區(qū)、降落區(qū);
資源調(diào)度模塊:用于根據(jù)每架飛機的狀態(tài)信息和飛行資源狀態(tài)信息進行計算,并向每架飛機發(fā)出下一步的行動指令;
顯示模塊:用于將每架飛機和飛行資源的狀態(tài)信息顯示在計算機顯示屏上。
進一步地,所述位置信息模塊的飛機的位置信息通過安裝于機場上的信號采集器采集,所述信號采集器包括停機區(qū)信號采集器、運輸區(qū)信號采集器、起飛區(qū)信號采集器、降落區(qū)信號采集器。
本發(fā)明提出一種能夠對機場各類資源進行合理分配、對飛機起降流程進行統(tǒng)一調(diào)度的方法和調(diào)度系統(tǒng);調(diào)度系統(tǒng)記錄運輸車、維修點、起降跑道等資源的使用情況以及飛機的位置和狀態(tài),在機場執(zhí)行飛行任務時,能夠記錄并更新每一時刻各類飛行資源的占用情況以及每架飛機的位置狀態(tài),調(diào)度系統(tǒng)根據(jù)資源狀態(tài)計算發(fā)出行動指令,每架飛機根據(jù)接收到的指令進行每一步操作,在避免飛機發(fā)生碰撞等事故、保證飛機成功起降的同時,提高機場各類資源的利用率。機場飛行資源與飛機的調(diào)度算法相對靈活,可根據(jù)不同的任務類型設計不同的調(diào)度算法以滿足任務需求。緊急狀態(tài)調(diào)度算法使得所有飛行資源達到最高使用效率,在相同時間內(nèi)起降盡可能多架次的飛機,大幅度提高機場的吞吐量。常規(guī)狀態(tài)調(diào)度算法則盡可能減少資源在相同時間內(nèi)的使用次數(shù),以達到減少資源損耗,提高資源使用壽命的效果。
附圖說明
圖1為本發(fā)明機場飛行資源與飛機的調(diào)度系統(tǒng)的結構框圖。
圖2為機場平面示意圖。
圖3為本發(fā)明機場飛行資源與飛機的調(diào)度方法中緊急狀態(tài)調(diào)度算法的流程圖。
圖4為本發(fā)明機場飛行資源與飛機的調(diào)度方法中常規(guī)狀態(tài)調(diào)度算法的流程圖。
其中:機場主體區(qū)域1,停機區(qū)2,運輸車3,維修區(qū)4,前維修區(qū)4-1,后維修區(qū)4-2,起飛區(qū)5,降落區(qū)6,信號采集器7,停機區(qū)信號采集器7-1,運輸區(qū)信號采集器7-2,起飛區(qū)信號采集器7-3,降落區(qū)信號采集器7-4,位置信息模塊8,飛機狀態(tài)模塊9,資源狀態(tài)模塊10,資源調(diào)度模塊11,顯示模塊12。
具體實施方式
以下結合附圖和具體實施例對本發(fā)明作進一步的詳細描述。
如圖1和圖2所示,本發(fā)明一種機場飛行資源與飛機的調(diào)度系統(tǒng)包括位置信息模塊8、飛機狀態(tài)模塊9、資源狀態(tài)模塊10、資源調(diào)度模塊11、顯示模塊12。
位置信息模塊8:用于采集飛機的位置信息,包括每架飛機的位置狀態(tài),供其他模塊調(diào)用;位置信息模塊8的飛機的位置信息通過安裝于在機場上不同位置的信號采集器7采集。信號采集器7為激光雷達,在停機區(qū)前側安裝停機區(qū)信號采集器7-1,采集飛機位于停機區(qū)時的位置信息;在機場近停機區(qū)側的運輸區(qū)安裝運輸區(qū)信號采集器7-2,在機場前部起飛區(qū)5安裝起飛區(qū)信號采集器7-3、后部降落區(qū)6安裝降落區(qū)信號采集器7-4,分別采集飛機起飛和降落的位置信息。
飛機狀態(tài)模塊9:用于根據(jù)飛機的位置信息記錄并更新每架飛機的狀態(tài)信息。飛機狀態(tài)模塊9中設計的飛機狀態(tài)包括:停機狀態(tài)、第一運輸狀態(tài)、飛行準備狀態(tài)、第二運輸狀態(tài)、起飛狀態(tài)、飛行狀態(tài)、著陸狀態(tài)、第三運輸狀態(tài)、維修狀態(tài)、第四運輸狀態(tài)。具體內(nèi)容如下:
1.飛機初始位于停機區(qū)2中,此時飛機處于停機狀態(tài)inhangar;
2.通過運輸車3將位于停機區(qū)2中的飛機運送至機場維修點3中,此時飛機處于第一運輸狀態(tài)intransit,記錄并維護飛機所處的運輸車編號car、飛機處于運輸車狀態(tài)的時間transittime;
3.調(diào)入維修點3后,飛機在維修點3中作飛行準備,此時處于飛行準備狀態(tài)inprepare&&inslot,記錄并維護飛機所處的維修點編號slot、飛機處于準備狀態(tài)的時間preparetime;
4.準備完畢后,飛機自行滑動至起飛區(qū)5,此時飛機處于第二運輸狀態(tài),根據(jù)飛機出發(fā)位置不同,分別記為前第二運輸狀態(tài)inmove1tofly(實施例中,從前維修點4-1,編號為1、2、3移至起飛區(qū))和后第二運輸狀態(tài)inmove2tofly(實施例中,從后維修點4-2,編號為4、5、6移至起飛區(qū)5),記錄并維護飛機處于移動狀態(tài)的時間前第二運輸時間move1toflytime和后第二運輸時間move2toflytime;
5.移動至起飛區(qū)5后,飛機執(zhí)行起飛操作,此時飛機處于起飛狀態(tài)intakeoff,記錄并維護飛機處于起飛時間takeofftime;
6.起飛操作完畢后,飛機順利起飛,進入飛行狀態(tài)infly,記錄并維護飛機處于飛行狀態(tài)的時間flytime;
7.飛行結束后,飛機降落至維修點4,此時飛機處于著落狀態(tài)inland,記錄并維護飛機處于降落狀態(tài)的時間landtime;
8.降落完畢后,飛機在維修點進行維修,實施例中,若前維修點4-1未滿載,飛機自行移動到前維修點4-1,此時處于前第三運輸狀態(tài)inmove1toslot,記錄并維護飛機處于前第三運輸狀態(tài)的時間move1toslottime;若前維修點4-1滿載,飛機則移動到后維修點4-2,此時處于后第三運輸狀態(tài)inmove2toslot,記錄并維護飛機處于后第三運輸狀態(tài)的時間move2toslottime。
9.飛機在維修點4進行維修時處于維修狀態(tài)inrepair,記錄并維護飛機處于維修狀態(tài)的時間repairtime;
10.維修完畢后,飛機位于維修點4,處于準備完畢狀態(tài),準備新一輪起飛。
11.運輸車3將沒有起飛任務的飛機運送至停機區(qū)2,飛機處于第四運輸狀態(tài),記錄第四運輸時間。根據(jù)飛機出發(fā)位置不同,分別記為前第四運輸狀態(tài)inmove1tohangar(從前維修點4-1移至停機區(qū)2)和后第四運輸狀態(tài)inmove2tohangar(從后維修點4-2移至停機區(qū)2),記錄并維護飛機處于移動狀態(tài)前第四運輸時間plane.move1tohangartime或者后第四輸時間plane.move2tohangartime。
資源狀態(tài)模塊10:用于記錄并更新飛行資源的狀態(tài)信息,飛行資源包括停機區(qū)2、運輸車3、維修點4和起飛區(qū)5、降落區(qū)6。資源狀態(tài)模塊10將機場飛機起降所需的飛行資源簡化為如下幾類:
1.停機區(qū)2,存放所有飛機;
2.運輸車3,用于將飛機從停機區(qū)運輸?shù)綑C場(實施例中,兩輛運輸車分布于機場及停機區(qū)之間的前后兩側,編號分別為1和2);
3.維修點4,用于飛機作飛行前準備工作和降落后維修工作(實施例中,在機場前部包括三個前維修點4-1,編號為1、2、3,在機場后部包括三個后維修點4-2,編號為4、5、6);
4.起飛區(qū)5,用于飛機起飛的區(qū)域,位于機場前部;
5.降落區(qū)6,用于飛機降落的區(qū)域,位于機場后部。
每一個飛機、運輸車3、維修點4、起飛區(qū)5、降落區(qū)6單獨編號,具有匹配和空閑兩種使用情況的狀態(tài)變量。對于每單個資源設置使用情況的狀態(tài)變量busy,該資源被占用時busy置為1,處于匹配情況;使用者釋放資源時busy置為0,處于空閑情況。
資源狀態(tài)模塊10對飛機起降流程各階段所用時間設置了預設值。主要時間參數(shù)的預設值如下:第一運輸時間預設值transittime、飛行準備時間預設值preparetime、前第二運輸時間預設值move1time、后第二運輸時間預設值move2time、起飛時間預設值takeofftime、飛行時間預設值flytime、降落時間預設值landtime、前第三運輸時間預設值move1toslottime、后第三運輸時間預設值move2toslottime、維修時間預設值repairtime、前第四運輸時間預設值move1tohangartime、后第四運輸時間預設值move2tohangartime。
資源調(diào)度模塊11:用于根據(jù)每架飛機的狀態(tài)信息和飛行資源狀態(tài)信息進行計算,并向每架飛機發(fā)出下一步的行動指令。資源調(diào)度模塊11中設計了緊急狀態(tài)調(diào)度算法和常規(guī)狀態(tài)調(diào)度算法。
顯示模塊12:用于將每架飛機和飛行資源的狀態(tài)信息顯示在計算機顯示屏上。
本發(fā)明一種機場飛行資源與飛機的調(diào)度方法的具體步驟如下:
1)對整個機場進行范圍測定,建立機場平面圖,用于定義飛行資源和飛機的位置信息。
2)在機場預定位置安裝信息采集器7。
3)將機場每架飛機編號,記錄并維護每架飛機每一時刻所處的位置和狀態(tài)。
4)對飛機起飛與降落需要占用的所有飛行資源進行分類與編號,記錄并維護每類資源的數(shù)量和每個資源的使用情況。
5)對飛機起降的整個流程進行建模,根據(jù)其使用的飛行資源不同劃分為若干階段;飛機起降過程中的狀態(tài)包括:停機狀態(tài)inhangar、第一運輸狀態(tài)intransit、飛行準備狀態(tài)inprepare、第二運輸狀態(tài)、起飛狀態(tài)intakeoff、飛行狀態(tài)infly、著陸狀態(tài)inland、第三運輸狀態(tài)、維修狀態(tài)inrepair。
6)主機端指定飛行任務類型,選擇對應的調(diào)度算法并執(zhí)行,向每架飛機發(fā)出調(diào)度指令。調(diào)度算法包括緊急狀態(tài)調(diào)度算法和常規(guī)狀態(tài)調(diào)度算法。
7)在計算機顯示界面顯示所有飛行資源使用情況和每架飛機的位置狀態(tài)。
如圖3所示,緊急狀態(tài)調(diào)度算法包括如下步驟:
a)選擇處于停機狀態(tài)inhangar的飛機,查詢是否存在空閑狀態(tài)的運輸車3,是則將飛機與運輸車3匹配,飛機進入運輸車3,轉第一運輸狀態(tài)intransit,記錄第一運輸時間plane.transittime。
b)選擇處于第一運輸狀態(tài)intransit的飛機,判斷第一運輸時間plane.transittime是否大于預設值transittime,設定為300s,是則查詢是否存在空閑狀態(tài)的維修點4(此處指定為前部維修點4-1),是則飛機與維修點4匹配,轉飛行準備狀態(tài)inprepare,飛機與運輸車3解除匹配,記錄飛行準備時間plane.preparetime。
c)選擇處于飛行準備狀態(tài)inprepare的飛機,判斷飛行準備時間plane.preparetime是否大于預設值preparetime,設定為2100s,是則查詢是否存在空閑狀態(tài)的起飛區(qū)5,是則將飛機與起飛區(qū)5匹配,飛機與維修點4解除匹配,飛機離開維修點4向起飛區(qū)5移動,飛機進入第二運輸狀態(tài),記錄第二運輸時間。準備完畢后,將飛機移動至起飛區(qū),此時飛機處于移動狀態(tài),根據(jù)飛機出發(fā)位置不同,分別記為前第二運輸狀態(tài)inmove1tofly(從前維修點4-1,編號1、2、3移至起飛區(qū)5)和后第二運輸狀態(tài)inmove2tofly(從后維修點4-2,編號4、5、6移至起飛區(qū)5),記錄并維護飛機處于移動狀態(tài)的前第二運輸時間plane.move1toflytime或者后第二運輸時間plane.move1toflytime。
d)選擇處于前第二運輸狀態(tài)inmove1tofly的飛機,判斷前第二運輸時間plane.move1toflytime是否大于預設值move1time,設定為60s,若成立,查詢起飛區(qū)5是否處于空閑狀態(tài),若是,飛機進入起飛區(qū)5,轉起飛狀態(tài)intakeoff;選擇處于后第二運輸狀態(tài)inmove2tofly狀態(tài)的飛機,判斷后第二運輸時間plane.move1toflytime是否大于預設值move2time,設定為300s,若成立,查詢起飛區(qū)5是否處于空閑狀態(tài),若是,飛機進入起飛區(qū)5,轉起飛狀態(tài)intakeoff;
移動至起飛區(qū)5后,飛機執(zhí)行起飛操作,此時飛機處于起飛狀態(tài)intakeoff,記錄起飛時間plane.takeofftime。
e)選擇處于起飛狀態(tài)intakeoff的飛機,判斷起飛時間plane.takeofftime是否大于預設值takeofftime,設定為10s,是則將飛機與起飛區(qū)5解除匹配,起飛操作完畢后,飛機順利起飛,進入飛行狀態(tài)infly,記錄并維護飛行時間plane.flytime。
f)選擇處于飛行infly狀態(tài)的飛機,判斷飛行時間plane.flytime是否大于預設值flytime,設定為7200s,若成立,查詢查詢降落區(qū)6是否處于空閑狀態(tài),是則將飛機與降落區(qū)6匹配,此時飛機處于著陸狀態(tài)inland,記錄降落時間plane.landtime。
g)選擇處于著陸狀態(tài)inland的飛機,判斷降落時間plane.landtime是否大于預設值landtime,設定為30s,是則查詢是否存在空閑狀態(tài)的維修點4,是則轉第三運輸狀態(tài),記錄第三運輸時間。此時飛機處于移動狀態(tài),根據(jù)飛機到達位置不同,分別記為前第三運輸狀態(tài)inmove1toslot(從降落區(qū)6移至前維修點4-1)和后第三運輸狀態(tài)inmove2toslot(從降落區(qū)6移至后維修點4-2),記錄并維護飛機處于移動狀態(tài)前第三運輸時間plane.move1toslottime或者后第三輸時間plane.move2toslottime。
h)選擇處于前第三運輸狀態(tài)move1toslottime的飛機,判斷前第三運輸時間plane.move1toslottime是否大于預設值move1toslottime,設定為300s,若成立,則飛機與維修點4匹配,轉維修狀態(tài)inrepair,記錄維修時間plane.repairtime;選擇處于后第二運輸狀態(tài)inmove2tofly狀態(tài)的飛機,判斷后第三運輸時間plane.move2toslottime是否大于預設值move2toslottime,設定為60s,設定為300s,若成立,則飛機與維修點4匹配,轉維修狀態(tài)inrepair,記錄維修時間plane.repairtime。
i)判斷維修時間plane.repairtime是否大于預設值repairtime,1800s,維修完畢后,飛機位于維修點4,處于準備完畢狀態(tài),且plane.repairtime≥preparetime,轉步驟c)查詢是否存在空閑狀態(tài)的起飛區(qū)5,準備進行新一輪起飛。
上述判斷過程中未滿足條件為否,則繼續(xù)等待直至滿足條件為是。
在常規(guī)狀態(tài)下,為減少資源損耗,提高資源使用壽命,應盡可能減少資源在相同時間內(nèi)的使用次數(shù)。假定每日運輸量要求機場每隔時間t起飛一架飛機(本實施例中t為1h,故每架飛機只需起飛1次即可運回停機區(qū)),針對此需求,本發(fā)明在資源調(diào)度模塊4中設計常規(guī)調(diào)度算法如下。其中,時間變量currenttime表示當前時刻,tfly表示所記錄的上一架飛機的起飛時刻。
如圖4所示,常規(guī)狀態(tài)調(diào)度算法包括如下步驟:
a)選擇處于停機狀態(tài)inhangar的飛機,查詢是否存在空閑狀態(tài)的運輸車3,是則將飛機與運輸車3匹配,飛機進入運輸車3,轉第一運輸狀態(tài)intransit,記錄第一運輸時間plane.transittime。
b)選擇處于第一運輸狀態(tài)intransit的飛機,判斷第一運輸時間plane.transittime是否大于預設值transittime,設定為300s,是則查詢是否存在空閑狀態(tài)的維修點4(此處指定為前部維修點4-1),是則飛機與維修點4匹配,轉飛行準備狀態(tài)inprepare,飛機與運輸車3解除匹配,記錄飛行準備時間plane.preparetime。
c)選擇處于飛行準備狀態(tài)inprepare的飛機,判斷飛行準備時間是否大于預設值preparetime,設定為2100s,是則判斷currenttim-tfly>1h是否成立,1h為要求間隔時間t,currenttime-tfly為距離上次起飛的時間;若成立,則查詢是否存在空閑狀態(tài)的起飛區(qū)5,是則將飛機與起飛區(qū)5匹配,飛機與維修點4解除匹配,飛機離開維修點4向起飛區(qū)5移動,飛機進入第二運輸狀態(tài),記錄第二運輸時間,更新tfly=currenttime。準備完畢后,將飛機移動至起飛區(qū)5,此時飛機處于移動狀態(tài),根據(jù)飛機出發(fā)位置不同,分別記為前第二運輸狀態(tài)inmove1tofly(從前維修點4-1,編號1、2、3移至起飛區(qū)5)和后第二運輸狀態(tài)inmove2tofly(從后維修點4-2,編號4、5、6移至起飛區(qū)5),記錄并維護飛機處于移動狀態(tài)的前第二運輸時間plane.move1toflytime或者后第二運輸時間plane.move1toflytime。
d)選擇處于前第二運輸狀態(tài)inmove1tofly的飛機,判斷前第二運輸時間plane.move1toflytime是否大于預設值move1time,設定為60s,若成立,查詢起飛區(qū)5是否處于空閑狀態(tài),若是,飛機進入起飛區(qū)5,轉起飛狀態(tài)intakeoff;選擇處于后第二運輸狀態(tài)inmove2tofly狀態(tài)的飛機,判斷后第二運輸時間plane.move1toflytime是否大于預設值move2time,設定為300s,若成立,查詢起飛區(qū)5是否處于空閑狀態(tài),若是,飛機進入起飛區(qū)5,轉起飛狀態(tài)intakeoff;
移動至起飛區(qū)5后,飛機執(zhí)行起飛操作,此時飛機處于起飛狀態(tài)intakeoff,記錄起飛時間plane.takeofftime。
e)選擇處于起飛狀態(tài)intakeoff的飛機,判斷起飛時間plane.takeofftime是否大于預設值takeofftime,設定為10s,是則將飛機與起飛區(qū)5解除匹配,起飛操作完畢后,飛機順利起飛,進入飛行狀態(tài)infly,記錄并維護飛行時間plane.flytime。
f)選擇處于飛行infly狀態(tài)的飛機,判斷飛行時間plane.flytime是否大于預設值flytime,設定為7200s,若成立,查詢查詢降落區(qū)6是否處于空閑狀態(tài),是則將飛機與降落區(qū)6匹配,此時飛機處于著陸狀態(tài)inland,記錄降落時間plane.landtime。
g)選擇處于著陸狀態(tài)inland的飛機,判斷降落時間plane.landtime是否大于預設值landtime,設定為30s,是則查詢是否存在空閑狀態(tài)的維修點4,是則轉第三運輸狀態(tài),記錄第三運輸時間。此時飛機處于移動狀態(tài),根據(jù)飛機到達位置不同,分別記為前第三運輸狀態(tài)inmove1toslot(從降落區(qū)6移至前維修點4-1)和后第三運輸狀態(tài)inmove2toslot(從降落區(qū)6移至后維修點4-2),記錄并維護飛機處于移動狀態(tài)前第三運輸時間plane.move1toslottime或者后第三輸時間plane.move2toslottime。
h)選擇處于前第三運輸狀態(tài)move1toslottime的飛機,判斷前第三運輸時間plane.move1toslottime是否大于預設值move1toslottime,設定為300s,若成立,則飛機與維修點4匹配,轉維修狀態(tài)inrepair,記錄維修時間plane.repairtime;選擇處于后第二運輸狀態(tài)inmove2tofly狀態(tài)的飛機,判斷后第三運輸時間plane.move2toslottime是否大于預設值move2toslottime,設定為60s,若成立,則飛機與維修點4匹配,轉維修狀態(tài)inrepair,記錄維修時間plane.repairtime。
i)選擇處于維修狀態(tài)inrepair的飛機,判斷維修時間plane.repairtime是否大于預設值repairtime,設定為1800s,維修完畢后,查詢是否存在空閑狀態(tài)的運輸車3,是則將飛機與運輸車3匹配,與維修點4解除匹配,轉第四運輸狀態(tài),記錄第四運輸時間。
根據(jù)飛機出發(fā)位置不同,分別記為前第四運輸狀態(tài)inmove1tohangar(從前維修點4-1移至停機區(qū)2)和后第四運輸狀態(tài)inmove2tohangar(從后維修點4-2移至停機區(qū)2),記錄并維護飛機處于移動狀態(tài)前第四運輸時間plane.move1tohangartime或者后第四輸時間plane.move2tohangartime。
j)選擇處于前第四運輸狀態(tài)inmove1tohangar的飛機,判斷前第四運輸時間plane.move1tohangartime是否大于預設值move1tohangartime,設定為300s,是則將飛機與運輸車3解除匹配,飛機進入停機狀態(tài)inhangar。選擇處于后第四運輸狀態(tài)inmove2tohangar的飛機,判斷后第四運輸時間plane.move2tohangartime是否大于預設值move2tohangartime,設定為300s,是則將飛機與運輸車3解除匹配,飛機進入停機狀態(tài)inhangar。
上述判斷過程中未滿足條件為否,則繼續(xù)等待直至滿足條件為是。
在實施例中,采用本發(fā)明的調(diào)度系統(tǒng)考察一天內(nèi)飛機的起降情況。記任務持續(xù)時間為1天,一架飛機一次完整的起降時間約為2h40min,停機區(qū)內(nèi)放有24架飛機。則在不考慮資源限制的最理想情況下,1天內(nèi)機場可起降的最高飛機架次約為216架;在本發(fā)明中緊急狀態(tài)調(diào)度算法的調(diào)度下,1天內(nèi)飛機總起飛架次為201,總降落架次為183(統(tǒng)計結束時部分飛機還未降落)。由此可知,該調(diào)度算法性能很接近理論最優(yōu)。
本說明書中未作詳細描述的內(nèi)容屬于本領域專業(yè)技術人員公知的現(xiàn)有技術。