数学建模报告-飞行问题
我们对这个思路整合后用 lingo 编出程序(程序见附录 2),运行得出结果:如果 飞机在区域内按照原飞行方向角沿原航线继续飞行,那么是会发生一次飞机碰撞的。
是在第 88 个 5 秒时,第 5 架和第 6 架飞机会发生碰撞。 所以需要调整飞机的飞行方向角来避过这次相撞。
一时刻两架飞机之间的距离小于 8 公里,因此要调整飞行方向一定角度,保证任意两架飞机在区域
内任意时刻,两者的距离均不小于 8 公里,避免相撞。考虑到调整角度应尽量小,可以简化飞行方 向调整策略,降低调整难度,同时减轻机内乘客及工作人员的不适。此外由此初步确定了调整目 标:所有六架飞机的飞行方向调整角度均尽量小。
6
明显是从一开始就改变α角度使得 | a(i) | 更小,所以越早调整越好,即在第六架飞 i 1
机进入时即可调整角度。
如图:
A α
β B
D C
2、模型建立 由问题一,我们首先判断在第 6 架飞机进入正方形区域后会否发生飞机碰撞。 我们依照数据,用 matlab 画出大致的航线图形(程序见附录 1)。其中灰线代表 飞机向上飞行,黑线代表飞机向下飞行。(如图 1)
飞机编号
横坐标 x
纵坐标 y
1
150
140
2
85
85
3
150
155
4
145
50
5
130
150
新进入
0
0
注:方向角指飞行方向与x轴正向的夹角。
方向角(度) 243 236 220.5 159 230 52
二、问题分析
根据问题容易知道,这显然是一个优化问题,当两架飞机可能发生碰撞时,即在规定区域内某
3 / 12
三、模型假设与符号约定
(1)假设飞机进入控制区域后完全服从地面控制台的调度,其他任何因素或人都不能 改变飞机的飞行方向角。 (2)假设从飞机管理处发出的信息飞机马上可以接收并执行(此处忽略飞机在执行过 程中所需耗费的时间),不存在滞后或延迟,即可以实现实时控制。 (3)不考虑本组设计的程序在实时控制中运行的时间。 (4) 不碰撞的标准为任意两架飞机的距离大于 8km。 (5)所有飞机飞行速度均为每小时 800km。 (6)飞机在区域外靠雷达自动与其他飞机保持距离大于 60km,进入区域后由地面控制 台进行统一控制,保证飞机距离大于 8km。 (7)假设飞机在区域内改变方向,在飞出区域后驾驶人员会自觉调整方向回归原航线 继续飞行。 (8)为了表达清晰,我们对符号作出以下说明:
2 / 12
6. 飞行管理问题(优化模型) 在约10000米高空的某边长160km的正方形区域内,经常有若干架飞机作水平飞行.区域 内飞行的每架飞机的位置和速度向量均由计算机记录其数据,以便进行飞行管理.当一 架欲进入该区域的飞机到达区域的边界时,记录其数据后,须立即判断是否将与区域内 的飞机相碰撞.若可能发生碰撞,则应计算如何调整各架飞机的飞行的方向角,以避免 碰撞。 作如下假设: (1)任意两架飞机的安全飞行距离为8公里; (2)所有飞机的飞行速度为800公里/小时; (3)进入该区域的飞机在到达区域边界时,与区域内的飞机的距离应在60公里以上; (4)最多考虑6架飞机; (5)不必考虑飞机离开此区域后的情况. 请你对这个避免碰撞的飞行管理问题建立数学模型,列出计算步骤,对以下数据进行 计算(方向角误差不超过0.01),要求飞机飞行方向角调整的幅度尽量小。 设该区域四个顶点的坐标为:(0,0),(160,0),(160,160),(0,160) 记录数据为:
6ቤተ መጻሕፍቲ ባይዱ
就进行飞行角度的调整,并且达到了优化目标: min | a(i) | 。 i 1 由题意,我们找到约束条件,然后把这些约束条件在 lingo 中用语言描述出来,
再针对运算方面进行改进,得到我们的 lingo 程序,运行后我们得到了飞机调整的飞 行方向角和方案。 关键词:简化,最小调整幅度,最优
一、问题重述
《数学建模》课程设计 报告
课题名称:___飞行管理问题 系 (院): 理学院 专 业: 数学与应用数学 班 级: 10122111 学生姓名: 邵仁和 学 号: 1012211122 指导教师: 陈宏宇 开课时间: 2011-2012 学年 二 学期
飞行管理问题的优化模型
摘要
为了避免较多飞机在区域内会发生碰撞,让飞机在某正方形区域内安全飞行,便 于进行飞行管理,所以在飞机飞行过程中,要适当调整各架飞机的方向角(调整幅度 尽量小),所以这是个优化问题。
符号
p i
xi
t
,
y i
t
v
ai
ai
含义 区域内的第 i 架飞机
备注
第 i 架飞机在时刻 t 时的坐 此处记第 6 架飞机进入区域时为
标
t =0
飞机飞行速度
按题中所给条件为 800 km/ h
各飞机未调整方向前的的 飞机头与 x 轴正向间的夹角 方向角
第 i 架飞机方向角的调整值
1、问题简化
四、模型的建立和求解
4 / 12
明显我们不可能每时每刻都对每架飞机进行调整,当然希望调整的次数越少越 好,调整的飞机数越少越好,角度越小越好。
第一,我们需要知道哪些飞机会在飞行过程中与其他的飞机相撞(距离小于 8km)。
6
第二,我们需要调整哪些飞机和多少角度来使 | a(i) |最小。 i 1
假使飞机要从 A 点向 C 飞行,途中想要偏离 C 点,由图α<β(外角大于内角),
本文我们根据题目所给的数据,利用 matlab 软件绘制出飞机的位置图标及飞行路 径,并利用 lingo 软件找出了碰撞发生的飞机、碰撞发生的点和时间。同时再寻找判 断两架飞机是否会相撞的方法,我们发现可以在飞机飞出区域之前每隔一段较短的时 间对飞机进行监控,看是否与别的飞机相撞。
然后,我们根据问题讨论了飞行方向角的调整时间和次数对最优解的影响,发现 调整时间越早,调整角度就越小,所以我们决定在第六架飞机刚飞到区域边缘的时候
5 / 12
图 1:
把飞机速度 v 800km/ h 转化成 v 0.2222...km/ s ,由此我们可以知道飞机在 5
秒内仅飞行 1km 多,根据这个我们将飞机飞行时间分成 5 秒一段,由这种分段来达到 近乎实时监控的目的,知晓每一架飞机每一个 5 秒的飞行情况,尽可能精确地求出有 可能发生碰撞的飞机及碰撞发生的时间段,方便调整。