上海虹桥机场的数学建模问题解决
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、问题背景与重述
1.1问题背景
虹桥国际机场采用的是东西两条跑道分工进行飞机起降的任务,所以大多数飞机的起降都要实现跑道穿越的过程,同时在飞机起降的高峰时期,此时人工指挥进行飞机调度就存在着一定的困难和安全隐患。
1.2问题重述
1.设计一个跑道的智能调度模型,内容包括:飞机降落时间及落地后的运动规划,飞机起飞前的运动规划和起飞时间,所有航班的起降(次序、时间、地面滑行路径)。在保证跑道上飞机安全的基础上,考虑准点率和起降效率的提高;
2.对附件2的航班起降时间重新编排,在安全的基础上,计算出所有航班起降完需要的最短时间和调度安排(次序、时间、地面滑行路径)。
二、问题分析
进近道对于参数较多,图形结构复杂的虹桥机场使用树状图,将其简化为三条主跑道与多条进近道,在此基础上,由南向北的行进过程中分析可能存在的道路,并考虑单一支路上的冲突情况与交叉冲突情形,并将多条可能的选择路线转化为时间效率,接着分析转弯节点处的约束条件与单一跑道的约束条件,将两者结合。每次选定不同的覆盖航班数,在覆盖范围内唯一确定已经按计划起飞的航班,在此基础上,再对剩余的航班进行规划即可得到目标函数的最佳效益,通过改变每次覆盖的航班数量与可移动覆盖的航班数量,由此得到不同的目标效益最值。
三、模型假设
所有斜进近跑道长度相等;
飞机的机头调转不能超过90°;
飞机在南北方向跑道上是匀速滑行的。
四、符号说明
符号说明
J第i架飞机的效益值
i
R最小尾流间隔
i
表示转弯角
i
v表示初始速度
't起飞客机滑行时间
''t降落客机的滑行时间
五、模型建立与求解
5.1 动态调度模型的建立与求解
5.1.1 对虹桥机场跑道的简化
(1)飞机起飞
上海虹桥机场的跑道图显示,起飞飞机滑行的终点是指定的起飞跑道,此时飞机需要等待跑道被清空后才能完成飞行过程。根据以上对飞机起飞过程的描述,可得到起飞
图5-2 起飞飞机状态图
为了简化问题,本文规定由T2机场起飞的飞机只能由H6与H7进近跑道进入滑行跑道,而由T1机场起飞的飞机只能由H7进近跑道进入滑行跑道,并且此时的飞机始终保持匀速滑行。
(2)飞机降落
对于飞机的降落来说,当飞机达到预计降落的时间时,需要事先判断跑道是否被清空,若跑道被清空时,飞机可以开始降落,降落飞机开始滑行,与起飞飞机起飞时一样,降落飞机在滑行过程中,一样存在可能沿原有路线行驶的情况,也可能存在变道的情况,或者在交叉口为避免与其它飞机相撞而减速、停止滑行等情况。依照飞机起飞的方式,本文可以得到飞机降落的状态图5-3如下所示:
图5-3 飞机降落状态图
5.1.2机场冲突分析
飞机只从南向北起飞,此时飞机在降落返回机场的过程中掉转角度不超过90°,所以本文仅考虑如下图5-4与5-5两种可能的冲突类型,并对这两种可能的冲突类型进行分析与约束:
图5-4 追尾冲突 图5-5 交叉冲突
ijk w 表示飞机k 从节点i 处滑向节点j 处的距离,ijk v 表示飞机k 由节点i 处滑向节点j 处时的速度,ijk t 表示飞机k 从节点i 处滑向节点j 处所花费的时间,此时可以得到滑行的时间公式:
ijk ijk ijk t w v =
考虑到上文所提及的飞机间的最小尾流间隔情况,此处采用1,k k t -表示飞机1k k -与之间的安全间隔时间,采用jk t 表示飞机k 滑向节点j 处的时刻,则可以得到完全滑行的间隔限制如下5-4:
,11,j k jk k k t t t ---≥ (5-4)
从上式5-4中可以看出不仅是顺序上相邻的航班间需要满足这样的约束条件,而且那些顺序不相邻的航班也应该满足这样的约束条件。
为了便于表示飞机是否滑向某个节点与滑向的开始与终结状态,此时设1ijk x =表示飞机k 由节点i 处滑向节点j 处;否则0ijk x =表示飞机k 不由节点i 处滑向节点j 处。 虽然由假设本文已经规定飞机在转向时不能超过90°,但在实际计算中仍会出现这样的情况,为了消除本文这样的情形,可以进行如下5-5的对头约束,保证不存在两架飞机在同一跑道上出现对撞的情形:
,1,1ij k j k ijk jk x t x t --⨯≥⨯ (5-5)
在不允许下一架飞机超越前一架的大前提下,本文得到的超越约束条件如下5-6:
,1,1,1,1()()0ij k j k ijk jk ij k i k ijk ik x t x t x t x t ----⨯-⨯⨯-⨯≥ (5-6) 值得注意的是并非所有航班都进入T 2航站楼,在运行时刻表上的部分进入T 1航站楼的飞机并不存在交叉冲突的情形。
此时只需考虑追尾冲突即可,为了对这一过程进行描述,本文引入变量k M ,当第k 架飞机进入某一航站楼时,此时1k M =;当第k 架飞机不进入某一航站楼时,此时
0k M =,以此来进行选择约束。
从总体时间来看,起飞客机时间为1t ,降落客机时间为2t ,则飞机在转弯即将穿越跑道前所耗时间分别为跑道直行时间与转弯时间,起飞客机与降落客机滑行所花时间分别为'''t t 与,进站飞机转弯时间由前述计算可得,此时设其时间为'''t ,则在保证安全的情况下可得临界时间公式:
''''''21()t t t t t -≥-+
5.1.5双向滑动排序算法的确定
本文针对附件中所给的54架航班进行时间上的窗口排序,规则如下:
Step1:选取初始排列的起飞飞机数量为n(n的值不宜太大),同时选取降落飞机数量为n,组成一个2n的航班表,对这2n个飞机进行有约束的CP排序得到这2n个飞机的所有可能排序情况,在依据最小成本函数的情况下唯一确定这2n个飞机的排列顺序(起飞与降落分别排序);
Step2:对起飞飞机进行长度为m的等距移动,在Step1中选取的n架飞机的基础上进行
-架飞机,选取新的n架飞机,对降落飞机进行同样的剔除,剔除原有排列的前n m
操作,得到新一组的2n架飞机;
Step3:对新得到的2n架飞机同样进行CP算法,唯一需要确定的是新的n架飞机中第一架飞机与之前一架被剔除先前排列的飞机应满足追尾冲突限制,所以在保证与前一架飞机之间不存在追尾冲突与交叉冲突的前提下,对新的2n队列进行原有的CP 算法排列;
Step4:重复Step2的步骤,不断向后移动相同的步长m;
Step5:重复Step3,对新的队列中的2n架飞机进行相同规则的CP算法排列;
Step6:循环至末尾处,在末尾移动m队列无法满足所在序列的情况下,只对末尾剩余的序列数进行移动;
Step7:得到一个在长度为n,移动数为m下的排序可能计算全局成本;
>)得到不同的队列效果,计算不同的队列的Step8:不断改变长度n与移动数m(n m
全局满意度,比较不同长度n与m下的总体成本的最小值。
为了更好的说明双向滑动排序算法的实际操作过程,给出了如下流程图5-11:
图5-11 双向滑动排序算法流程图