一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种批量调整班机航线的方法与流程

2022-12-10 20:09:53 来源:中国专利 TAG:


1.本发明涉及一种计算机数据处理方法,特别是涉及一种批量班机航线的自动处理方法。


背景技术:

2.班机航线是由我国民航管理部门发布的,主要用于规定我国国内机场之间,或国内与境外机场之间的飞行路线,是各航空公司和空中交通管制部门申请、审批、指挥空中运行线路的重要法规性文件。我国目前公布的班机航线超过12000条,总里程超过2000万公里,每条班机航线由起落机场、航路、航路点、走向路由等数十项数据组成,数据体量庞大,数据关联性很强。
3.我国目前班机航线调整比较频繁,每次航路走向调整、空域结构调整都会涉及大批量班机航线调整。而目前我国各空管部门和航空公司主要以人工逐条、逐项修改班机航线及路由的方式进行班机航线处理工作。每次班机航线大规模调整都会牵涉全国各空管部门、航空公司大量人力对上万条班机航线进行筛选、比对和逐项修改。现行以人工处理班机航线的方法耗时巨大、效率低下,容易发生出错或遗漏现象,对航空运输的效率和安全产生不利影响。
4.引证文件1:中国发明,《一种换季班机航线的数字化处理方法》 ,公开号:cn113554242b。该发明公开了一种对换季班机航线原始文件逐步进行数字化处理的方法。该方法没有涉及对班机航线路由的批量查询和替换操作,无法解决班机航线批量调整需要大量人工处理的问题。
5.引证文件2:学术论文,《中国民航班机航线数据维护系统完善升级浅析》,《空中交通》,2014年第8期。该论文介绍了民航空管单位的班机航线数据维护系统,该系统对班机航线的维护操作主要依靠对班机航线数据的逐条处理,未能批量自动处理班机航线调整数据。


技术实现要素:

6.为解决目前对班机航线数据的修改只能人工逐条处理,无法对大批量班机航线数据调整任务进行自动化处理的弊端,本发明提供一种批量调整班机航线的方法,该方法可以根据班机航线调整需求生成查询条件和替换条件,根据查询条件和替换条件生成班机航线点串并进行批量替换,从而自动完成班机航线调整任务,节省了人工处理工作量,提高了班机航线数据处理效率和准确性。
7.为了实现上述目的,本发明的技术方案包括以下步骤:步骤1:在数据库中创建班机航线路由表、航路走向表和航路点表。其中,班机航线路由表至少包括班机航线编号、航路入点、航路和航路出点字段;航路走向表至少包括航路、序号和航路点字段;航路点表至少包括航路点id和航路点字段。将民航局公布的班机航线路由数据存入班机航线路由表中,将航路走向数据存入航路走向表中,将航路点数据存
入航路点表中。其中,班机航线路由表定义了所有班机航线的走向信息,是班机航线调整任务的主要处理对象。
8.步骤2:将班机航线路由表中的数据解析成班机航线点串数据,班机航线点串由多条结构为航线编号-航路点-当前航路-下段航路的数据组成。班机航线路由数据只记录班机航线每条经过航路的进入航路点和离开航路点,未记录所经过的所有航路点。而班机航线点串数据则记录了班机航线经过的每个航路点及对应航路,是后续查询与替换操作的基础。
9.进一步的,步骤2包括以下步骤:步骤2-1:在数据库中新建班机航线点串表,包括班机航线编号、航路点、当前航路和下段航路四个字段。
10.步骤2-2:从班机航线路由表中取出第一条班机航线的全部路由数据,创建航路点串表pointlist,pointlist数据项包括航路点、当前航路和下段航路。
11.步骤2-3:根据每段班机航线路由的航路入点、航路和航路出点数据,从航路走向表中检索出该航路从航路入点到航路出点间的全部航路点;对每个航路点补充当前航路信息,生成航路点-当前航路-null结构的数据存入pointlist中。
12.步骤2-4:若存在后续路由数据,用后续路由数据的航路替换pointlist末条数据中的null,得到航路点-当前航路-下段航路结构的数据,返回步骤2-3处理下一条路由数据。
13.步骤2-5:若不存在后续路由数据,将pointlist存入班机航线点串表中,返回步骤2-2处理下一条班机航线。
14.步骤3:设置班机航线的查询条件和替换条件匹配规则,这些规则用于将班机航线调整需求文本转换为结构化数据,并确保批量替换后班机航线路由的连通性和正确性,包括:规则1:查询条件和替换条件必须由航路点和航路交替组成,且首末两端必须是航路点。
15.规则2:若查询条件和替换条件都包含多个航路点,则查询条件和替换条件的首末航路点必须相同。
16.规则3:若查询条件只有一个航路点,而替换条件包含多个航路点:若替换条件末点与查询条件航路点相同,则必须指定起飞机场;此情形用于将起飞机场到查询航路点之间的多种班机航线走向替换为替换条件描述的一种走向。若替换条件首点与查询条件航路点相同,则必须指定落地机场;此情形用于将查询航路点到落地机场之间的多种班机航线走向替换为替换条件描述的一种走向。
17.规则4:若查询条件包含多个航路点,而替换条件只有一个航路点:若查询条件末点与替换条件航路点相同,则必须指定起飞机场;此情形用于将起飞机场到查询条件末点之间的班机航线走向截除,由替换航路点充当起飞后首个航路点。若查询条件首点与替换条件航路点相同,则必须指定落地机场;此情形用于将查询条件首点到落地机场之间的班机航线走向截除,由替换航路点充当落地前最后一个航路点。
18.步骤4:若班机航线调整由航路走向调整引发,保存航路走向调整前和调整后数据。航路走向调整前数据用于生成查询条件,航路走向调整后数据用于生成替换条件。
19.步骤5:根据班机航线的查询条件和替换条件匹配规则,将班机航线批量调整需求转换为查询条件和替换条件。
20.步骤6:根据查询条件,从班机航线路由表中检索出所有需要调整的班机航线。
21.进一步的,步骤6包括以下步骤:步骤6-1:新建查询航路点串pointlistquery、替换航路点串pointlistreplace和班机航线编号查询结果列表airlinequery。
22.步骤6-2:若查询条件包括多个航路点,按照步骤2-3到步骤2-4的方法,将查询条件的航路点-航路-航路点结构数据转换为pointlist并存入pointlistquery中,从班机航线点串表中搜索与pointlistquery一致的所有班机航线点串,将对应的班机航线编号去重后存入airlinequery中。
23.步骤6-3:若查询条件只包括一个航路点,根据规则3指定起飞机场或落地机场。如果设置的是起飞机场,从班机航线点串表中查询出所有从起飞机场出发并经过此航路点的班机航线点串;如果设置的是落地机场,查询出所有经过此航路点并到达落地机场的班机航线点串。将查询出的班机航线点串存入pointlistquery中,将对应的班机航线编号去重后存入airlinequery中。
24.步骤6-4:若替换条件包括多个航路点,按照步骤2-3到步骤2-4的方法,将替换条件的航路点-航路-航路点结构数据转换为pointlist并存入pointlistreplace中。
25.步骤6-5:若替换条件只有一个航路点,根据规则4指定起飞机场或落地机场;如果指定的是起飞机场,将此航路点作为班机航线点串的首点存入pointlistreplace中;如果指定的是落地机场,将此航路点作为班机航线点串的末点存入pointlistreplace中。
26.步骤7:根据替换条件,对需要调整的班机航线重新生成班机航线路由数据,完成班机航线批量调整。
27.进一步的,步骤7包括以下步骤:步骤7-1:逐一从班机航线编号查询结果列表airlinequery中取出班机航线编号airlinenumber。
28.步骤7-2:从班机航线点串表中提取班机航线编号为airlinenumber的所有班机航线点串,将其中与pointlistquery重合的部分用pointlistreplace进行替换,形成新的班机航线点串airlinepointnew。
29.步骤7-3:将airlinepointnew中第1条数据转换为结构为班机航线编号-航路入点-航路-null的不完整班机航线路由数据。
30.步骤7-4:从第2条数据开始遍历airlinepointnew,若该条数据的下段航路不为null,将该条数据的航路点作为航路出点替换当前班机航线路由中的null,使其成为一条完整的班机航线路由数据;同时生成该条数据对应的新的结构为班机航线编号-航路入点-航路-null的不完整班机航线路由数据。
31.步骤7-5:将airlinepointnew最后一条数据的航路点作为航路出点替换当前班机航线路由中的null,使其成为一条结构为班机航线编号-航路入点-航路-航路出点的完整班机航线路由数据。
32.步骤7-6:将所有完整的班机航线路由数据存入班机航线路由表,该班机航线调整结束,返回步骤7-1处理下一条班机航线。
33.本发明具有如下优点:采用本方法开发的计算机程序可实现对大批量班机航线调整工作进行计算机自动处理。数据处理的效率和准确性大大超过目前的人工处理方法。本方法可用于全国各空管单位和航空公司的班机航线处理、航线规划、航线审批、航线指挥等工作。
附图说明
34.图1为本发明实施例批量调整班机航线的主要步骤图。
35.图2为本发明实施例批量调整班机航线的流程示意图。
36.图3为班机航线查询条件只有一个航路点时的匹配规则示意图。
37.图4为班机航线替换条件只有一个航路点时的匹配规则示意图。
38.图5为从航路中删除航路点后调整班机航线走向的示意图。
具体实施方式
39.为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图和具体实施例对本发明做进一步详细说明。应当理解,此处所描述的具体实施例仅用于解释本发明,并不用于限定本发明。
40.我国班机航线数量庞大,数据关联复杂,目前班机航线调整比较频繁,每次班机航线调整都需要各空管单位和航空公司修改、维护本单位班机航线数据库,否则无法进行正常航班申请和飞行指挥。但目前缺乏一种高效快捷的班机航线批量处理方法,各单位班机航线管理系统基本都是以人工逐条修改班机航线数据项的方式进行。这种逐条处理班机航线的方法效率低下,容易出错,对航空运输的效率和安全产生不利影响。
41.基于此,本发明提出一种批量调整班机航线的方法,采用该方法的计算机系统可自动处理大批量班机航线调整任务,提高班机航线处理效率,提升数据准确性,保障航行安全。
42.本发明的一种实施例是一套采用本方法开发的计算机系统,用于各民航班单位大批量处理班机航线调整任务。
43.如图1所示,本发明的一种实施例批量调整班机航线包括以下步骤:步骤1:在数据库中创建班机航线路由表、航路走向表和航路点表;步骤2:将班机航线路由表中的数据解析成班机航线点串数据;步骤3:设置班机航线查询条件和替换条件匹配规则;步骤4:保存航路走向调整前、调整后数据;步骤5:将班机航线批量调整需求转换为查询条件和替换条件;步骤6:检索需要调整的班机航线;步骤7:对需要调整的班机航线重新生成班机航线路由数据。
44.本实施例的详细处理过程如图2所示:步骤1:在数据库中创建班机航线路由表airline_direction、航路走向表airway和航路点airway_point表,将民航局公布的班机航线数据分别存入这3张表中。
45.其中,班机航线路由表包括班机航线名称、序号、班机航线编号、航路入点、航路和航路出点字段。该表定义了所有班机航线的走向信息,是班机航线调整任务的主要处理对
象,如表1所示:表1:班机航线路由表airline_direction班机航线名称序号班机航线编号航路入点航路航路出点秦皇岛-济南1zbdh-zsjn-01秦皇岛vorj38滦县vor秦皇岛-济南2zbdh-zsjn-01滦县vorj81p516秦皇岛-济南3zbdh-zsjn-01p516j82天津ndb秦皇岛-济南4zbdh-zsjn-01天津ndbw34大王庄vor秦皇岛-济南5zbdh-zsjn-01大王庄vorw40济南vor天津-烟台1zbtj-zsyt-01elkurw40gusir天津-烟台2zbtj-zsyt-01gusirw40黄城vor天津-烟台3zbtj-zsyt-01黄城vorw589蓬莱vor
……
ꢀꢀꢀꢀꢀ航路走向表至少包括航路、序号和航路点字段,如表2所示:表2:航路走向表airway航路序号航路点w341大王庄vorw342ladixw343天津ndb
………………
w1571dalimw1572tumlow1573p148
………………
航路点表至少包括航路点id和航路点字段。
46.步骤2:将班机航线路由表airline_direction中的数据解析成班机航线点串数据,班机航线点串由多条结构为航线编号airlinenumber-航路点airwaypoint-当前航路curroute-下段航路nextroute的数据组成。班机航线路由数据只记录班机航线每条经过航路的进入航路点和离开航路点,未记录所经过的全部航路点。而班机航线点串数据则记录了班机航线经过的每个航路点及对应航路,是后续查询与替换操作的基础。
47.步骤2包括以下步骤:步骤2-1:在数据库中新建班机航线点串表airline_point,包括班机航线编号airlinenumber、航路点airwaypoint、当前航路curroute和下段航路nextroute四个字段;步骤2-2:从班机航线路由表airline_direction中取出第一条班机航线的全部路由数据,创建航路点串表pointlist,pointlist数据项包括航路点airwaypoint、当前航路curroute和下段航路nextroute。
48.步骤2-3:根据每段班机航线路由的航路入点enterpoint、航路curroute和航路出点outpoint数据,从航路走向表airway中检索出航路curroute从航路入点enterpoint到航路出点outpoint间的全部航路点;对每个航路点curpoint补充当前航路curroute信息,生成curpoint-curroute-null结构的数据存入pointlist中。
49.例如,表1中秦皇岛-济南班机航线的第4段路由:天津ndb-w34-大王庄vor,航路入点enterpoint为天津ndb,航路curroute为w34,航路出点outpoint为大王庄vor。从表2中检索航路w34从天津ndb到大王庄vor共有3个点,按从航路入点到航路出点排序:天津ndb、ladix、大王庄vor,并生成pointlist如下:表3:航路点串表pointlist(天津ndb-w34-大王庄vor)航路点airwaypoint当前航路curroute下段航路nextroute天津ndbw34nullladixw34null大王庄vorw34null步骤2-4:若存在后续路由数据,用后续路由的航路nextroute替换pointlist表末条数据中的null,得到curpoint-curroute-nextroute结构的数据,返回步骤2-3处理下一条路由数据。
50.例如,表1中秦皇岛-济南班机航线存在序号为5的后续路由,该路由航路为w40,用w40替换表3末行的null,并将w40经过的航路点补充进pointlist,如表4:表4:pointlist表(天津ndb-w34-大王庄vor-w40-济南vor)航路点airwaypoint当前航路curroute下段航路nextroute天津ndbw34nullladixw34null大王庄vorw34w40elkurw40nulldoxabw40nullpankiw40null济南vorw40null步骤2-5:若不存在后续路由数据,将上述pointlist表补充班机航线编号zbdh-zsjn-01后存入班机航线点串表airline_point中,返回步骤2-2处理下一条班机航线。如表5:表5:班机航线点串表airline_point表
班机航线编号序号航路点airwaypoint当前航路curroute下段航路nextroutezbdh-zsjn-011天津ndbw34 zbdh-zsjn-012ladixw34 zbdh-zsjn-013大王庄vorw34w40zbdh-zsjn-014elkurw40 zbdh-zsjn-015doxabw40 zbdh-zsjn-016pankiw40 zbdh-zsjn-017济南vorw40 zbtj-zsyt-011igmorw36 zbtj-zsyt-012envavw36 zbtj-zsyt-013lotgow36w575zbtj-zsyt-014gotsuw575w201
zbtj-zsyt-015黄城vorw201
ꢀ……ꢀꢀꢀꢀ
步骤3:设置班机航线查询条件和替换条件匹配规则,这些规则用于将班机航线调整需求文本转换为结构化数据,并确保批量替换后班机航线路由的连通性和正确性,包括:规则1:查询条件和替换条件必须由航路点和航路交替组成,且首末两端必须是航路点。
51.规则2:若查询条件和替换条件都包含多个航路点,则查询条件和替换条件的首末航路点必须相同。
52.规则3:如图3所示, 查询条件只有一个航路点,而替换条件包含多个航路点:规则3.1:若替换条件末点与查询条件航路点相同,则必须指定起飞机场。此情形用于将起飞机场到查询航路点之间的多种班机航线走向替换为替换条件描述的一种走向;规则3.2:若替换条件首点与查询条件航路点相同,则必须指定落地机场。此情形用于将查询航路点到落地机场之间的多种班机航线走向替换为替换条件描述的一种走向。
53.规则4:如图4所示,查询条件包含多个航路点,而替换条件只有一个航路点:规则4.1:若查询条件末点与替换条件航路点相同,则必须指定起飞机场。此情形用于将起飞机场到查询条件末点之间的班机航线走向截除,由替换航路点充当起飞后首个航路点;规则4.2:若查询条件首点与替换条件航路点相同,则必须指定落地机场。此情形用于将查询条件首点到落地机场之间的班机航线走向截除,由替换航路点充当落地前最后一个航路点。
54.步骤4:若班机航线调整由航路走向调整引发,保存航路走向调整前和调整后数据。航路走向调整前数据用于生成查询条件,航路走向调整后数据用于生成替换条件。如图5所示,调整w66航路,从w66中删除航路点磴口vor,w66航路调整前局部走向为:包头vor-磴口vor-额济纳旗vor(实线部分),w66航路调整后局部走向为:包头vor-额济纳旗vor(虚线部分)。此航路调整将导致原先从磴口vor经过w66航路的所有班机航线必须调整走向,否则无法连通。首先保存w66原航路走向,从中删除磴口vor后保存为w66新航路走向。原航路走向用于生成班机航线查询条件,新航路走向用于生成班机航线替换条件。
55.步骤5:根据班机航线的查询条件和替换条件匹配规则,将班机航线批量调整需求转换为查询条件和替换条件。如图5所示,班机航线调整的查询条件为:磴口vor-w66-nukti,替换条件为:磴口vor-a596-雅布赖vor-v67-嘉峪关vor-b215-nukti。查询条件和替换条件由航路点和航路交替组成,且首末两端均是航路点,满足规则1;查询条件和替换条件首末航路点均为磴口vor和nukti,满足规则2。
56.步骤6:根据查询条件,从班机航线路由表中检索出所有需要调整的班机航线,包括以下步骤:步骤6-1:新建查询航路点串pointlistquery、替换航路点串pointlistreplace和班机航线编号查询结果列表airlinequery。
57.步骤6-2:因查询条件包括多个航路点,按照步骤2-3到2-4的方法,将查询条件的磴口vor-w66-nukti转换为pointlist并存入pointlistquery中,如表6:表6 查询航路点串pointlistquery
航路点airwaypoint当前航路curroute下段航路nextroute磴口vorw66null额济纳旗vorw66nullnuktiw66null从表5班机航线点串表airline_point中查询出与pointlistquery一致的所有班机航线点串,将对应的班机航线编号去重后存入airlinequery中,经查询,与pointlistquery一致的班机航线有15条,形成的airlinequery表如表7:表7:班机航线编号查询结果表airlinequery序号班机航线名称班机航线编号1鄂尔多斯-乌鲁木齐zbds-zwww-012呼和浩特-乌鲁木齐zbhh-zwww-013济南-乌鲁木齐zsjn-zwww-01
……ꢀꢀ
步骤6-3:若查询条件只包括一个航路点,根据规则3设置起飞机场或落地机场。如果设置的是起飞机场,从班机航线点串表airline_point中查询出所有从起飞机场出发并经过此航路点的班机航线点串;如果设置的是落地机场,查询出所有经过此航路点并到达落地机场的班机航线点串。将查询出的班机航线点串存入pointlistquery中,将对应的班机航线编号去重后存入airlinequery中。例如,查询条件只包含一个航路点黄城vor并指定落地机场为烟台蓬莱,从表5班机航线路由表airline_direction中查询所有经过黄城vor且落地机场为烟台蓬莱的班机航线,得到天津-烟台的班机航线,编号为zbtj-zsyt-01。
58.步骤6-4:因替换条件包括多个航路点,按照步骤2-3到步骤2-4的方法,将替换条件:磴口vor-a596-雅布赖vor-v67-嘉峪关vor-b215-nukti转换为pointlist并存入pointlistreplace中,如表8:表8:替换航路点串pointlistreplace航路点airwaypoint当前航路curroute下段航路nextroute磴口vora596null雅布赖vora596v67嘉峪关vorv67b215nuktib215null步骤6-5:若替换条件只有一个航路点,根据规则4设置起飞机场或落地机场;如果设置的是起飞机场,将此航路点作为班机航线点串的首点存入pointlistreplace中;如果设置的是落地机场,将此航路点作为班机航线点串的末点存入pointlistreplace中。
59.步骤7:根据替换条件,对需要调整的班机航线重新生成班机航线路由数据,完成班机航线批量调整。包括以下步骤:步骤7-1:逐一从班机航线编号查询结果列表airlinequery中取出班机航线编号airlinenumber,如取出表7中的鄂尔多斯至乌鲁木齐的班机航线编号zbds-zwww-01。
60.步骤7-2:从班机航线点串表airline_point中提取此班机航线编号airlinenumber对应的所有班机航线点串,将其中与pointlistquery重合的部分用pointlistreplace进行替换,形成新的班机航线点串airlinepointnew。如将表6的查询航
路点串以表8替换航路点串代替后,形成鄂尔多斯至乌鲁木齐新的班机航线点串表airlinepointnew,如表9:表9:新的班机航线点串airlinepointnew
班机航线编号序号航路点airwaypoint当前航路curroute下段航路nextroutezbds-zwww-011鄂尔多斯vora596nullzbds-zwww-013磴口vora596nullzbds-zwww-014雅布赖vora596v67zbds-zwww-015嘉峪关vorv67b215zbds-zwww-016nuktib215nullzbds-zwww-017奇台vorb215w99zbds-zwww-018阜康vorw99b215zbds-zwww-019乌鲁木齐vorb215null
步骤7-3:将airlinepointnew中第1条数据转换为结构为班机航线编号-航路入点-航路-null的班机航线路由数据:如[zbds-zwww-01]-鄂尔多斯vor-a596-null。
[0061]
步骤7-4:从第2条数据开始遍历airlinepointnew,若该条数据的下段航路nextroute不为null,将该条数据的航路点作为航路出点替换上条班机航线路由中的null,使其成为一条结构为班机航线编号-航路入点-航路-航路出点的完整班机航线路由数据,如表9中第4条数据的nextroute为v67不为null,用雅布赖vor替换当前班机航线路由中的null,形成完整的班机航线路由:[zbds-zwww-01]-鄂尔多斯vor-a596-雅布赖vor。同时生成第4条数据对应的新的不完整班机航线路由数据[zbds-zwww-01]-雅布赖vor
ꢀ‑
v67-null。
[0062]
步骤7-5:将airlinepointnew最后一条数据的航路点作为航路出点替换当前班机航线路由中的null,使其成为一条完整的班机航线路由数据,形成如表10的班机航线zbds-zwww-01的所有完整路由:表10:鄂尔多斯-乌鲁木齐班机航线的新路由airline_direction班机航线名称序号班机航线编号航路入点航路航路出点鄂尔多斯-乌鲁木齐1zbds-zwww-01鄂尔多斯vora596雅布赖vor鄂尔多斯-乌鲁木齐2zbds-zwww-01雅布赖vorv67嘉峪关vor鄂尔多斯-乌鲁木齐3zbds-zwww-01嘉峪关vorb215奇台vor鄂尔多斯-乌鲁木齐4zbds-zwww-01奇台vorw99阜康vor鄂尔多斯-乌鲁木齐5zbds-zwww-01阜康vorb215乌鲁木齐vor
……
ꢀꢀꢀꢀꢀ步骤7-6:将所有完整的班机航线路由数据存入班机航线路由表airline_direction中,该班机航线调整结束,返回步骤7-1处理下一条班机航线。
[0063]
由此可将表7中查询出的15条班机航线批量处理完成,比原来人工逐条处理班机航线,逐个修改每个路由的入点、出点、航路的方法效率和准确性都大大提高。
[0064]
以上所述,仅是本发明的一种实施例,并非对本发明做任何形式的限制,凡是依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化与修饰,均仍属于本发明
技术方案的保护范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献