飞行管理问题的非线性优化模型.docx
《飞行管理问题的非线性优化模型.docx》由会员分享,可在线阅读,更多相关《飞行管理问题的非线性优化模型.docx(21页珍藏版)》请在冰豆网上搜索。
飞行管理问题的非线性优化模型
飞行管理问题
的
非
线
性
优
化
模
型
摘要
本文研究了飞行管理问题的非线性优化模型。
在约10000米高空的某边长160公里的正方形区域内,经常有若干架飞机作水平飞行。
区域内每架飞机的位置和速度向量均由计算机记录其数据,以便进行飞行管理。
当一架欲进入该区域的飞机到达区域边缘时,记录其数据后,要立即计算并判断是否会与区域内的其它飞机发生相撞。
如果发生相撞,则应计算如何调整各架(包括新进入的)飞机的飞行方向角,以避免碰撞。
借鉴物理学中质点的概念,我们在空域平面建立了二维直角坐标系;我们讨论飞机不相撞的的条件时,将每一个飞机看作半径4km的圆,任意两架飞机不相撞的条件为两圆外切;进一步讨论约束条件,我们利用点的速度合成定理,任意两架飞机不相撞的条件化为两架飞机的相对速度和相对位移的夹角不小于两飞机相撞的临界角;模型求解过程中,我们结合多种数学软件(AutoCAD、MATLAB、SPSS、lingo)的特点,简化了算法。
用Lingo数学软件,我们求得了最优解,各个飞机的调整角均不大于17°,调整幅度平方和为9.46°,检验后比较符合实际情况,每架飞机的初始方向角和调整角及调整幅度如下表:
表1每架飞机的初始方向角和调整角及调整幅度
初始方向角
4.241000
4.118900
3.848300
2.775000
4.014100
0.9075000
调整后的方向角
4.240999
4.118899
3.619195
2.858334
3.722626
1.051778
调整幅度-
-0.0000
-0.0000
-0.2291
0.0833
-0.2915
0.1443
调整的角度
0°
0°
-13.13°
4.77°
-16.7°
8.27°
飞行管理问题的非线性优化模型
一、问题的重述
在约10000米高空的某边长160公里的正方形区域内,经常有若干架飞机作水平飞行。
区域内每架飞机的位置和速度向量均由计算机记录其数据,以便进行飞行管理。
当一架欲进入该区域的飞机到达区域边缘时,记录其数据后,要立即计算并判断是否会与区域内的其它飞机发生相撞。
如果发生相撞,则应计算如何调整各架(包括新进入的)飞机的飞行方向角,以避免碰撞。
现假设条件如下:
1.不相撞的标准为任意两架飞机的距离大于8公里;
2.飞机飞行方向角调整的幅度不应超过30度;
3.所有飞机的飞行速度均为每小时800公里;
4.进入该区域的飞机在到达区域边缘时,与区域内飞机的距离应在60公里以上;
5.最多需考虑6架飞机;
6.不必考虑飞机离开此区域后的情况。
请你对这个避免碰撞的飞行管理问题建立数学模型,列出计算步骤,对以下数据进行计算(方向角误差不超过0.01度),要求飞机飞行方向角调整的幅度尽量小。
二、符号说明
符号
含义
第i架飞机的初始方向角
第i架飞机调整后的方向角
第i架飞机与第j架飞机初始位置的距离
(,)
第i架飞机的初始位置
(,)
调整后第i架飞机相对于第j架飞机的速度
(,)
调整后第i架飞机相对于第j架飞机的位移
调整后第i架飞机相对于第j架飞机的速度与位移之间的夹角
调整后第i架飞机与第j架飞机不相撞的临界角
备注:
(1)i=1,2,…,6
(2)j=1,2,…,6(3)i≠j(4)角度均采用弧度值
三、模型的假设
(1)不相撞的标准为任意两架飞机的距离大于8公里;
(2)飞机飞行方向角调整的幅度不应超过30度;
(3)所有飞机的飞行速度均为每小时800公里;
(4)进入该区域的飞机在到达区域边缘时,与区域内飞机的距离应在60公里以上;
(5)最多需考虑6架飞机;
(6)不必考虑飞机离开此区域后的情况;
(7)计算机从记录新进入飞机数据到给飞机发指令的间隔时间忽略不计;
(8)新飞机进入时,每架飞机(包括新飞机)立即改变方向角,且至多改变一次;
(9)新飞机进入空域时,在空域中飞行的飞机(包括新飞机)方向已调合适,之后不会相撞。
四、模型的建立
1、模型分析
该模型是基于假设条件的非线性规划模型(参考文献一)。
飞机飞行的整个空域可以看成是一个二维平面,我们可以建立直角坐标系,顶点是(0,0),(160,0),(160,160),(0,160),飞机飞行的方向角是飞行方向与x轴正方向的夹角。
我们可以用向量、分别表示横纵坐标,则V可以表示成V=,S可以表示成S=。
每架飞机的位置都是时间T的函数,直接研究比较困难,为此我们引入相对运动。
我们根据点的速度合成定理(参考文献二):
动点在某瞬时的绝对速度等于它在该瞬时的牵连速度与相对速度的矢量和,即动点的相对速度可以由绝对速度与牵连速度的矢量差来确定。
(是绝对速度,是相对速度,是相对速度)。
任意两架飞机不相撞的条件是其距离大于8千米,因此我们考虑将每架飞机视为半径4千米的圆心,在相对运动的情形下,两架飞机不相撞的条件就为两圆相离,不相撞的临界条件是在它们之间的距离最小的时候,两圆相切。
如图1:
y
B
C
Ax图1
飞机相对飞机运动,图中虚线所示的位置既是与不相撞的临界位置。
这里我用到了解析几何中的向量夹角定理(参考文献三)求解两个向量之间的夹角:
COS(A,B)=(x1*x2+y1*y2)/(*)(其中A={x1,y1},B={x2,y2})
要使两架飞机不相撞,我们只需满足
>=。
由飞机飞行角度调整幅度不超过30度(即π/6),我们得到约束:
|-|<=π/6
根据决策目标飞机飞行方向角调整的幅度尽量小,得到目标函数(参考文献四):
min
2、总的目标函数与约束条件:
目标函数min
S.T.>=(i=1,2,…,6j=1,2,…,6i≠j)
(1)
|-|<=π/6(i=1,2,…,6)
(2)
0<=<=π(i=1,2,…,6j=1,2,…,6i≠j)(3)
五、模型的求解
为了简化求解过程,我们采用多种数学软件相结合的思路,分别用合适的软件计算不同的数据,从而减少计算时间,简化算法。
我们用到的数学软件有MATLAB、SPSS、AutoCAD和lingo,具体的模型求解过程如下:
1.用MATLAB求解任意两架飞机不相撞的临界角
(1)求解分析
如图1所示,RT▲ABC中,sin=8/,=arcsin(8/),故要求解,须先求得的大小。
由两点间的距离公式(参考文献2):
=,很容易求其大小,公式中的=-,=-,而每个飞机的初始位置(,)问题中已给出,见下表:
表2每个飞机的初始位置坐标
飞机编号
/km
/km
1
150
140
2
85
85
3
150
155
4
145
50
5
130
150
6
0
0
(2)MATLAB编程源代码见附录1
(3)MATLAB运行结果整理后如下表
表3第i架飞机与第j架飞机不相撞的临界角(弧度制)
1
2
3
4
5
6
1
0
0.0941
0.5625
0.0889
0.3659
0.0390
2
0.0941
0
0.0838
0.1154
0.1014
0.0666
3
0.5625
0.0838
0
0.0762
0.3985
0.0371
4
0.0889
0.1154
0.0762
0
0.0792
0.0522
5
0.3659
0.1014
0.3985
0.0792
0
0.0403
6
0.0390
0.0666
0.0371
0.0522
0.0403
0
2.用MATLAB求解相对位移的横纵坐标值
由相对运动,我们先求得两架飞机的相对速度和相对位移,然后利用两向量的夹角公式=arcos((*+*)/(*)),即可求得第i架飞机相对于第j架飞机的速度与位移之间的夹角。
为此,我们分别计算它们的相对速度和相对位移。
相对速度的求解:
相对速度的横坐标=-
相对速度的纵坐标=
相对速度(,)
相对位移的求解:
相对位移的横坐标=-
相对位移的纵坐标=-
相对位移(,)
我们可以得到相对位移的X及Y
表4相对位移的横坐标X(km)
X
1
2
3
4
5
6
1
0
65
0
5
20
150
2
-65
0
-65
-60
-45
85
3
0
65
0
5
20
150
4
-5
60
-5
0
15
145
5
-20
45
-20
-15
0
130
6
-150
-85
-150
-145
-130
0
表5相对位移的纵坐标Y(km)
Y
1
2
3
4
5
6
1
0
55
-15
90
-10
140
2
-55
0
-70
35
-65
85
3
15
70
0
105
5
155
4
-90
-35
-105
0
-100
50
5
10
65
-5
100
0
150
6
-140
-85
-155
-50
-150
0
3.lingo编程求解调整后每架飞机的方向角
(1)求解分析
由约束条件知,第i架飞机相对于第j架飞机的速度与位移之间的夹角需不小于
任意两架飞机不相撞的临界角,即>=,同时,调整后的方向角与初始方向角的差值不超过π/6,即|-|<=π/6。
(2)lingo编程源代码见附录2
(3)由lingo编程即可得最优解(见附录3),运行结果整理后如下
表6调整前后的方向角及调整幅度(弧度制)
飞机的编号
1
2
3
4
5
6
初始方向角
4.241000
4.118900
3.848300
2.775000
4.014100
0.9075000
调整后的方向角
4.240999
4.118899
3.619195
2.858334
3.722626
1.051778
调整幅度-
-0.0000
-0.0000
-0.2291
0.0833
-0.2915
0.1443
调整的角度
0
0
-13.13°
4.77°
-16.7°
8.27°
总的平方代价为:
0.1652067(弧度制)。
六、模型的检验及分析
1、模型的检验
我们对调整前的方向角度与调整的角度进行比较:
初始方向角
243°
235°
22.5°
159°
230°
52°
调整角度
0
0
-13.139°
4.77°
-16.7°
8.27°
用SPSS做出调整角度的变化曲线,见图2
图2
从结果中我们就可以看出,第一架和第二架调整的幅度为0,其它几架飞机调整的幅度<17°。
另外,我们得到的总的平方代价是9.46°,所以调度方案基本还是较令人满意的。
另外我们可以大致的作出调整后的飞机在区域内的路线图,见图3:
y
0x图3
2、模型的灵敏度分析
Lingo编程的松弛变量和对偶价格如下:
RowSlackorSurplusDualPrice
A10.1652067-1.000000
A20.0000000.000000
A30.0000000.000000
A40.0000