懷永成 程鵬 王奕為 梁梓博 聶晨 喬龍
中國民航大學 300300
正文:
對于機場運行效率來說,合理有效的分配停機位,及在航班延誤的情況下在原有方案上進行有效調整,是提高機場運行效率的重要途徑。針對延誤問題,機場一般進行人工調整,此方法是將延誤班機直接分配到遠機位,此方法雖然簡單可行,但會給機場運行帶來諸多問題,機場運行效率降低,旅客滿意度下降,因此開發一套停機位再分配系統對機場來說就顯得極為重要
關于機位分配問題,國內外很多學者在此方面已經做了很多研究。我們閱讀了近四十篇關于停機位分配的文獻來了解機場運行相關的一些專業知識,了解停機位初次分配的機理,并考慮能否再機位再分配的過程中加以運用。在模型的最終目標方面:航班延誤成本、機場運行的安全性、航班間晚點傳播、航班延誤和停機位空閑時間、跑道頭滑行到停機位的時間與停機位到達航站樓的時間、機跑道行駛路程及時間、飛機油耗量、機場系統運行擾動大機位利用率、航班的分配次序及機場的收益都曾被專家學者納入考慮范疇加以研究;模型的約束條件需要考慮的因素頗為相近,航班與機位的獨占性、機型與機位的匹配要求及航班運行的緩沖時間是研究重點
在航班再分配問題中大多數作者都基于航班延誤,根據提高機場運行效率和顧客滿意度的優化原則,進行優化設計求解。劉長有,曹強考慮了停機坪的航班數最少和停機位分配擾動最少及占用時間均衡的目標函數,其創新于在其模型中引入了安全性的約束條件避免潛在的航班雙推沖突,利用粒子群遺傳算法求解。衛東選,也考慮了分配到遠機位的航班數最少及擾動性最小為優化目標,采用混合算法求解。
為了全面地分析掌握機場停機位再分配模型的目標和約束條件,滿足機場的真正需求。我們小組特意開展了實地調研活動,派出代表分別以天津濱海國際機場、南京祿口國際機場和深圳寶安機場為對象深入調研。聶晨在天津濱海國際機場為期一周的實習過程中,在天津機場的應急救援指揮中心進行見習,旁觀了每日的例行民航總局會議,并參觀了停機坪及停機位,認真地參加了機場工作人員的講座。懷永成通過與深圳寶安機場的宋兆康學長的多次交流,吸取了很多寶貴的一線經驗。梁梓博、喬龍去到南京祿口國際機場開展了為期三天的調研活動,深入到南京機場的運行指揮中心,同運行指揮中心的學長認真地探討了停機位的分配問題。通過與這三個機場的一線人員的交流以及小組成員之間的討論,我們最終確定了停機位再分配模型的最為迫切需要改進的兩個目標(變動機位最少、近機位使用最多)和一個約束條件(緩沖時間約束)。
同時,為了使我們的分配模型更有科學依據和說服力,我們查閱了大量相關資料和與指導老師深入探討和推敲,最終確定了停機位再分配模型的另外一個目標(旅客行走距離最短)和兩個約束條件(獨立性約束條件,每個航班必須分配到一個機位;機位匹配約束)。至此,停機位分配模型的目標和約束條件基本確立。
針對機場機位分配問題的特性,直接求解多目標優化問題的優化較為困難,本文采用YALMIP工具箱進行求解。
目標函數是YALMIP工具箱中求解最優解問題的關鍵。本文以旅客行走距離最短,表示為,Ni為航班fi進港或離港的旅客總人數,Lkl為停機位fk到fl的距離;變動機位最少,表示為,當機位改變時Si=1,機位不變時Si=0;近機位使用最多,表示為,Zi表示航班fi分到近機位為1,否則為0;以上三個條件為目標構建目標函數。
YALMIP工具箱求解多目標線性優化需要設立求解的約束條件。此處為作機位的獨立性約束、機位匹配約束和機位緩沖時間約束。獨立性約束即每個航班必須分配到一個機位,表示為,yik表示航班i分配到k機位時值為1,否則為0;機位匹配約束主要體現為機位大小對停靠飛機限制的約束。表示為bi>ai,成立時為1,不成立時為0。
確定了目標函數和約束條件后,調用YALMIP工具箱函數。使用binvar命令生成初始機型分配矩陣,在約束條件下計算目標函數的最小值,此時最小值對應的機位分配矩陣就是最優的分配方案。
我們從北京首都機場的某一天航班信息中篩選了40個在T3航站樓運行的航班,航班號、計劃到達時間、預計分配機位,我們假設這些航班一共使用20個機位,其中5-15機位是近機位,其他機位為遠機位,并按相對情況假設各個機位間的距離。
由于天氣或其他原因,一部分航班有不同程度的延誤,導致初次分配的機位不再適用,我們設置航班延誤時間超過15分鐘要進行機位的再次分配,通過我們的模型的到的再分配機位如表4-1

表4 -1
Python 3.7
Spyder
Matlab
Tkinter:應用tkinter庫所帶控件和函數,在維持主界面不斷刷新的同時,將航班再分配信息讀入,分條顯示在屏幕左右兩個區域。左區按條顯示初始航班信息,包含序號,航班號,航班計劃時間,航班使用機型以及計劃分配機位。再點擊更新按鈕后,逐條顯示再分配信息在右側區域,包含航班實際時間和實際分配機位,并適當滾動,與左側同步顯示。
整合航班再分配信息,在可視化界面顯示
主界面->初始航班信息->讀入運行在分配算法后的結果->點擊更新->按條輸出顯示