基于遗传算法的飞机航班规划方法

文档序号:6470683阅读:216来源:国知局

专利名称::基于遗传算法的飞机航班规划方法
技术领域
:本发明涉及市场规划和智能计算两大领域,主要涉及一种运用遗传算法优化飞机航班规划的方法。技术背景航班规划是指对航空公司的有限资源(如飞机、航线、资金、人员等)进行配置,规定正班飞行的航线、机型、飞行频率及班期时刻。一般来说,广义的航班规划包括了五个方面的内容,按规划进行的先后顺序分别是市场分析和预测、航班频率和时刻的确定、机型的指派、飞机的排班和机组的排班,狭义的航班规划则只包含了前三个方面的内容。本发明只在狭义航班规划的范畴中进行讨论,根据市场分析和预测结果对航班的频率进行确定和机型进行指派。相应的优化问题就是研究如何对有限的资源进行合理的配置,即确定每条航线应该投入什么机型或者是机型的组合以及其飞行频率为多少才能提高工作效率和经济效益。在飞机调度问题的流程中,航班规划属于市场规划的范畴。通常由市场部根据机务部调度员提供的次日可用每种机型和飞机架数以及其它的具体的实际情况制定次日的航班计划。航班计划的制定在很多情况下依赖于工作人员的经验,而随着航空公司飞机数的增加以及航线的复杂化,人工排班已经满足不了要求。因此,研究一种算法,使得可以利用计算机科学、高效、合理地制定航班计划具有重大的意义。解决航班规划问题,传统的方法是整数规划及线性规划等数学规划方法。由于航班规划是一个动态多变的过程,随着问题规模的增大及目标函数的复杂化,传统的数学方法就出现了求解复杂度大、运算时间长等缺陷,难以适应实际的应用需求。近年来,智能计算方法逐渐开始在飞机调度问题上得到了应用。本发明针对飞机调度问题中的航班规划环节论述了如何用遗传算法解决航班规划的问题,实现在航班正常运行情况下,航空公司能实现最大的利益。利益最大化问题是一个最优化问题,因此遗传算法在其上可以得到很好的应用。
发明内容本发明将遗传算法运用到飞机航班规划问题的解决中。遗传算法求解飞机航班规划问题的步骤为(1)初始化算法的各个参数,建立遗传算法的第一代种群,其中每个个体为一种航班安排的方案。染色体的编码为C77=[乂u,义i2,…,XlW,义21,.义2W,','义層]=[X"义2,…,义A^W]其中,的具体含义为机型/在从城市A到城市/的航线上有次往返。(2)计算种群中每个个体的适应值。适应值函数的定义为其中A^S^是客座率乘以座位容量乘以票价再乘以班次,得到总收入。c,t;是小时飞行成本乘以飞行时间再乘以班次,得到总成本。公式前面带有系数2,这是由于表示的是往返次数,而不是单程次数。(3)根据一定的约束条件对种群内的非法解进行修补,考虑的约束条件如下。飞机数量和日利用率约束2l;7;j^^,,vu"似,其中7;.表示飞行时间,4表示飞机数量,c/,表示日莉用率。对于每一种机型,将其在所有航线上的飞行总时间加起来,必须不能超过总的日利用率。机型可用性约束当某机型S对于某航线」—Z不可用时,即为该机型在该航线上的航次&=0。需求实现约束^」|>,,y/,isys7v,其中£;为航线上的各机型飞机总数的下限。"降落条件限制C/;2|>y《J、iV,其中C/;为从城市A到城市_/的航班总数的上限。修补的方法为,对不满足公式的个体,将其适应度函数值置为0。(4)对种群执行轮盘赌选择算子,选择出下一代的种群。(5)对下一代的种群执行交叉和变异算子,其中交叉算子采用单点交叉而变异算子则采用均匀变异。(6)如果达到结束条件,则输出飞机航班调度的结果,否则回到步骤(2)。本发明采用整数型编码构造求解空间解向量,通过遗传算法的选择机制和遗传算子的作用实现优化目标。同时,根据实际情况的约束,使用基于惩罚方式的修补策略对结果进行筛选,使结果符合实际情况,具有实用性。本发明提出的一种基于遗传算法的航班规划方法,它将可以根据飞机机务调度员提供的关于可用机型的数据及市场实际的需求作为输入,输出一个具有较高参考价值的航班规划方案。-图1飞机航班规划示意图图2以广州为中心的简单航线网络示意图图3遗传算法优化飞机航班规划的流程图具体实施例方式以下结合附图进一步对发明的方法进行描述。飞机调度的过程包括许多环节,如图1所示。本发明考虑的是根据飞机的机型特性、航路的特性,在利益最大化的前提下,得到每种机型的飞机在每个航线上的初步班次安排,并在实际条件的约束下调整,最终得到具有比较大的现实参考意义的航班班次安排。考虑一个拥有M种类型的飞机的航空公司,并且以一个中心城市A向其它iV个城市的航线进行航班的规划。现在给定每种机型飞机的特性数据和每条航线的特性数据,如下表所示<table>tableseeoriginaldocumentpage6</column></row><table>飞行时间(航程)7;其中lS丌iV日利用率,即飞机每天飞行的小时数。日利用率要受到飞机性能及维修计划的影响,在航班规划问题中,这是一个最基本的约束。客座率,也称为客座利用率,指的是飞机承运的旅客数量与飞机可提供的座位数之比,反映飞机的利用程度,是航班效益的重要指标。在实际应用中,除了要考虑以上的机型特性及航线特性外,还要考虑到实际因素的影响。实际的飞机航班规划问题需要受到很多实际条件的约束。(1)机型可用性约束由于受各机型的飞机参数特性不同,航路的限制因素及机场的降落条件等因素的影响,在航班规划问题中存在着一个机型可用性问题。机型可用性,即某个机型的飞机是否适合飞某个航班。(2)需求实现约束所谓需求实现约束,是指航班的规划应使得旅客的乘坐需求得到满足。即在客流高峰期的时候,能尽量提供较多的航班满足需求,在客流量较少的时候也应能基本满足旅客出行对航班及时间的要求,即规划的某航线上的各机型飞机总数存在着一个下限A(1^/^A0。(3)最小飞行频率约束最小飞行频率构成了需求实现问题中飞机总数下限取值的一个底限。即使在淡季亏木的时候,在某航线上,仍需保留着至少一班的航班,这是出于飞机的市场约束考虑的。(4)降落条件约束机场降落条件因素包括机场的地理环境、天气状况及客流等。受其影响,航线的飞机总数存在着一个上限W(12^;、A0。使用遗传算法求解实际问题,首先要考虑到染色体编码的问题,即如何将问题求解的变量转化为染色体的基因置于染色体中进行求解。在本发明所要解决的问题中,由于最终的求解目标是在利益最大化的前提下,得到每条航线上的航班航次安排。因此,可以将问题考虑的求解变量定为每种机型的飞机在每条航线上的飞行的次数,记为,其中l^WM,l^j、7V,具体含义为机型/在从城市A到城市y的航线上有次往返(单位为往返,考虑的是飞机有返回的情形)。所以,每个染色体的编码如以下公式所示CH=IXl,乂12,…,XliV,X21,…义2W,…义層]=fX,义2,…,lA^w]上式中,第二个等号的后面部分将求解变量的矩阵形式转化为数组形式,更符合染色体的构造,更加有利于算法的实现。染色体C/f的每个基因都有其取值范围,遗传算法的目标就是在这些变量的范围内对这些变量进行取值,组合,构造出最优的解。对于各机型在各航线上的航次^来说,其取值应受到航班规划问题的约束条件的限制。对于飞机来说,最大的约束应该是其本身的特性。所以在该问题上,最基本的约束条件应该是飞机的架数以及日利用率。在完成对染色体的编码后,给定基因(变量)的求解范围。具体的方法如以下公式所示0Sjc..S2r4上式的上边界是基于这样考虑的每一架飞机/在航线y上的往返1次的时间为2T^,因此这架飞机在此航路最多往返Lf/,/27;.」次,而共有A架这种飞机,所以巧的上限是o^^&/27;J4。使用遗传算法求解问题的一个重要前提是构造出可以评价解的优劣程度的适应度函数,它反映了个体对环境的适应性。在航班规划这个问题上,适应度函数是和染色体编码中的基因直接关联的。根据"收益=总收入-总成本",可以得到如下的公式/=1y=l其中^^S^是客座率乘以座位容量乘以票价再乘以班次,得到总收入;c,j;xy是小时飞行成本乘以飞行时间再乘以班次,得到总成本。注意到公式前面的系数2,这是由于;表示的是往返次数,而不是单程次数。由于航班规划问题受到众多约束条件的限制,在此将上面提到的约束条件用数学表达形式表示出来。(1)飞机数量和日利用率约束根据相应的条件,可以得到该约束条件的函数表达式如下式所示2红5^",4,VU2"M对于每一种机型,将其在所有航线上的飞行总时间加起来,必须不能超过总的日利用率。(2)机型可用性约束根据该约束条件的含义,当某机型S对于某航线^"W不可用时,即为该机型在该航线上的航次&=0。这可以通过改变变量Xw的取值范围来实现,即若&e0则^的取值区间定为[O,O]。(3)需求实现约束由前面关于需求实现约束的表述,可以得到该约束条件的函数表达式如以下公式所示从城市A到城市y的航班总数不得小于下限^。(4)降落条件限制同上,约束函数如以下公式所示从城市a到城市y的航班总数不得超过所能承受的上限W。以上公式考虑的只是一些基本的约束条件,在实际的应用中,涉及到的约束条件是非常多的。但是无论是什么约束条件,都可以通过将它们以类似的方式表示出来并添加进去,然后通过相应的修补函数对非法解进行修补。这是算法可扩展性的一个体现。由于航班规划问题受到众多约束条件的限制,因此在使用遗传算法进行求解的过程中,往往会遇到求解结果不满足实际需要的情况,这是因为遗传算法在交叉操作和变异操作的时候不能保证新的解是合法的。为了解决该问题,必须采取一定形式的修补策略对非法解进行修补。最简9单的修补策略可以是随机选择一个,在其取值范围内进行减1或加1操作,在只有一个约束条件下,这种修补方法是简单有效的。但是当约束条件较多时,比如在本发明解决的这个问题中,需要考虑的往往不仅仅是一个约束条件,实际问题要受到许多约束条件的限制,而且出于对算法的可扩展性考虑,采用这种简单的修补策略在操作上是不可行的。对于多个约束条件的问题,修补策略往往很复杂。因此,本发明考虑使用惩罚函数。由于在考虑的问题中,不允许有非法解出现,因此,对出现非法解的结果进行惩罚。考虑以上四个约束条件,具体的做法是,对不满足公式的个体,将其适应度函数值置为0,使得它失去了竞争力和下一代被选中的可能。这种做法有可能破坏到群体的多样性,但是在问题考虑的规模和效果范围内,这造成的影响是不大的。遗传算法优化K机航班规划的流程图如图3所示。为了验证上文所叙述的算法的正确性与可行性,以广州新白云国际机场为出发点的一个测试实例,采用遗传算法对飞机航班规划问题进行求解与优化。如图2所示,给出一个以广州为中心,分别飞往3个大城市(北京、上海和广州)的简单航线网络。航空公司必须决定使用哪种机型来飞行以便满足需求,通过合理的航班规划,实现收益最大化。机型的相关特性如下表所示:<table>tableseeoriginaldocumentpage10</column></row><table>出发城市与目的城市之间的飞行时间和票价如下表所示:<table>tableseeoriginaldocumentpage11</column></row><table>问题的求解根据整体的算法流程来进行。遗传算法采用的群体规模为20,进行了100代的进化,参数交叉概率和变异概率分别为0.7和0.07。由于遗传算法是一种带指导的随机搜索算法,因此这里对求解过程进行了若干次的测试。运行结果如下表所示<table>tableseeoriginaldocumentpage11</column></row><table>从上表中可以看出,本发明的算法能够较好地满足到各个城市的往返航班要求。但是,从比较中还是可以看到,算法在满足北京、上海两个城市的航班要求的基础上,倾向于将多余的机力放到香港,这个看上去虽然有点不实际,因为到香港可能不需耍那么多航班,但是,在给定的上下限的条件下,算法要做的是尽量最大化总收益,所以这反而佐证了算法的有效性和高效性。至于需要限制到香港的航班次数,可以进一步采用相关的约朿条件加以约束。权利要求1、一种基于遗传算法的飞机航班规划方法,其特征在于,该方法包括以下步骤(1)初始化算法的各个参数,建立遗传算法的第一代种群,其中每个个体为一种航班安排的方案。(2)计算种群中每个个体的适应值。(3)根据一定的约束条件对种群内的非法解进行修补。考虑的约束条件包括飞机数量和日利用率约束,机型可用性约束,需求实现约束和降落条件限制。修补的方法为,对不满足约束条件的个体,将其适应度函数值置为0。(4)对种群执行轮盘赌选择算子,选择出下一代的种群。(5)对下一代的种群执行交叉和变异算子,其中交叉算子采用单点交叉而变异算子则采用均匀变异。(6)如果达到结束条件,则输出飞机航班调度的结果,否则回到步骤(2)。2、基于权利要求1所述的一种基于遗传算法的飞机航班规划方法,其特征在于染色体的编码为=,兀12,…,、JV,^21,…"^2W,…i層]=[义1,义2,',]其中,的具体含义为机型/在从城市a到城市_/的航线上有^次往返。3、基于权利要求1所述的一种基于遗传算法的飞机航班规划方法,其特征在于适应值函数的定义为其中/^表示客座率,f;表示座位容量,s,表示票价,c,表示小时飞行成本,7;.表示飞行时间。4、基于权利要求1所述的一种基于遗传算法的飞机航班规划方法,其特征在于约束条件的设定为飞机数量和日利用率约束2|]7;jc^c/,4,vu《^m,其中7;表示飞行时间,4表示飞机数量,t/,-表示日l3用率。对于每一种机型,将其在所有航线上的飞行总时间加起来,必须不能超过总的日利用率。机型可用性约束当某机型s对于某航线^—Z不可用时,即为该机型在该航线上的航次&=0。需求实现约束z7^^>y,y/,is7、iv,其中^为航线上的各机型飞机总数的下限。'—1降落条件限制^'^f;,y/,isy《7v,其中c/;为从城市A到城市y的航班总数的上限。'—全文摘要本发明运用遗传算法解决了飞机调度问题中的航班规划问题。通过对求解变量,即各机型在航线上的航次的整数编码,实现了求解目标在遗传算法中的表达。并且利用基于惩罚方式的有效修补策略对染色体的实用性进行修补,减少非法解的出现,使得求解结果符合实际情况。通过实例验证了本发明的算法是正确有效的,具有很强的可扩展性和实用性。文档编号G06N3/00GK101464966SQ20081022065公开日2009年6月24日申请日期2008年12月31日优先权日2008年12月31日发明者军张,詹志辉,韬黄申请人:中山大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1