浅析优化算法与航空公司正如我们每天看到的陆路上的交通一样,有路,有大大小小的车辆,有各种交通控制设施及交警等。在蔚蓝的天空中也同样有类似的东西,那就是航路,各家航空公司大大小小的飞机,以及空管局对空中飞机的指挥控制。) L' T0 q" c9 |, x8 H
& R3 Y" N, \2 q# g3 F
本篇只涉及从航空公司角度出发,应该如何正确理解和运用现代优化算法,至于从空管局角度出发思考如何应用现代算法优化的问题,我们今后讨论。& M0 l5 ]9 T- I b
+ X1 c3 K6 {$ N民航业本质是通过飞机将旅客和货物从起始点运输到指定目的地,以此盈利。所以航空公司真正盈利的部门只有两个,即客运部和货运部。其他部门都是维持整个公司健康有效运转的成本部门。 8 K/ w. H {' e) O2 h( {. n; T. A* l * {; c) H$ b& P9 K2 \对于航空公司而言,最有价值的三个问题,无非是收益管理分析、机组排班、大规模延误时的航班智能恢复。其中,收益管理分析是摆在重中之重的地位了,因为对于航空公司而言,“开源”比“节流”要重要。收益管理属于提高营收的“开源”项目,而其他运力上的优化则是“节流”项目。目前,国内航空公司在分析收益时大多数还是单个航段独立分析,但是所购买的(租用的)收益管理软件(主要是国外的)内核都是基于OD流的网络化联合分析。那这两者到底有什么区别和联系呢?其实收益的问题可以分解为两个子问题,即旅客流订座时间序列的预测和舱位开放数及其定价的决策两个方面。假如预测已经做得不错了,剩下来的就是如何决策的问题了,实质上就是在预测到未来近期订座人数大于飞机实际剩余座位数的情况下,请哪些旅客上飞机的问题。为了是该航班的收益期望最大化,当然是让最有价值的旅客上飞机,这无可厚非,这也是单航段独立分析的主要思想,这种思想在中国市场上已经主导了好久好久了。但是旅客的OD流通常伴有联程(两个航段一个航班号),当各种OD流在整个航线网络上交织的时候,单航段分析就会存在问题。比如,从单航段分析可能认为旅客A是本航段(leg1)最有价值的旅客,应该把票卖给他,但是旅客A买的票是联程票,即飞完leg1,飞下一个航段leg2。这时如果同时考虑leg1和leg2这种决策就可能不合算,他可能使得leg2用掉的那个座位没有获得其最佳收益,也许不让A上机,先满足leg2上的旅客是最佳决策。当这种事情在整个网络频繁发生时,各个OD流交错影响,那么由单个航段独立分析后再汇总的决策就不是最佳决策,最佳决策是基于整个网络做的,用线性规划的对偶变量找出所有紧俏航段统一分析才是正确的做法。 R3 o- z6 S. q0 l+ ?- a: C& T# E' f% A4 ^, B
接下来的另一个大问题就是机组排班问题。航空公司的运力由可以申请到航线,机场时刻,飞机数,飞行员数等决定的。各家航空公司运力问题面各有不同,反正跳不出以上几个。而国内航空公司目前的问题常常是飞行员不够,这种情况下,机组排班就非常重要。想象一下,飞行飞行任务都指定好了,结果没人飞,最终也会导致航班取消,飞机利用率下降(平均小时数减小)。对于航空公司而言,平均小时数下降30分钟,对于整个收益的影响都是非常巨大的。因为这种运力优化影响到收益,所以它排第二重要无可厚非。) C4 `: y6 N2 r5 s" e# n