滑行路线生成器的制作方法

文档序号:31969870发布日期:2022-10-29 01:20阅读:125来源:国知局
滑行路线生成器的制作方法
滑行路线生成器


背景技术:

1.当飞行器在机场起飞或降落时,飞行器可在跑道、滑行道和机坪上滑行,以往返于机场的各个位置,如停放区域、加油站、机库等。如本文所述,术语“滑行”指飞行器不在飞行时在地面操纵飞行器。如本文所述,跑道是指飞行器用于起飞和降落的机场处的预留空间的一部分。如本文所用,滑行道是指飞行器在机场使用的连接跑道、其他滑行道、机坪、停放区域和/或航站楼的道路。然而,当术语“滑行道”以复数形式使用时,或术语“滑行道系统”也可包括跑道、滑行道或多条滑行道、机坪、航站楼、停放区域、机库或其组合。如本文所用,机坪(ramp)是机场处的预留空间的一部分,通常比滑行道短,机坪将停放区域、航站楼或滑行道连接到另一条滑行道。如本文所用,航站楼是机场处乘客和/或机组人员上下飞行器的位置。如本文所述,机库或停放区域是在机场处的飞行器在不使用时或有时在维修时停放或存放的地方。
2.主要机场能够具有跑道、滑行道、机坪、航站楼、机库和飞行器停放区的高度复杂系统。该系统的复杂性可能会使飞行员难以导航,尤其是当许多滑行道间隔很近且相互交叉时。


技术实现要素:

3.一个或多个实施例提供了一种方法。该方法包括在计算机的图形用户接口(gui)中显示多个机场滑行道的地图。该方法还包括接收地图上的起点。该方法还包括接收地图上的终点。该方法还包括自动生成导航从起点到终点的多条滑行道所采用的飞行器的路径。该方法还包括在gui中的地图上叠加路径。
4.一个或多个实施例还提供了一种系统。该系统包括计算机,该计算机包括处理器;与处理器通信的数据存储库;以及与处理器通信并被配置为显示图形用户接口(gui)的显示设备。数据存储库存储计算机可读的程序代码,当由处理器执行时,该代码执行计算机实施的方法。计算机实施的方法包括在图形用户接口(gui)中显示多个机场滑行道的地图。计算机实施的方法还包括接收地图上的起点。计算机实施的方法还包括接收地图上的终点。计算机实施的方法还包括自动生成导航从起点到终点的多条滑行道所采用的飞行器的路径。计算机实施的方法还包括在gui中的地图上叠加路径。
5.一个或多个实施例还提供了一种存储计算机可读程序代码的非暂时性计算机可读存储介质,当由处理器执行时,该存储介质执行计算机实施的方法。计算机实施的方法包括在计算机的图形用户接口(gui)中显示多个机场滑行道的地图。计算机实施的方法还包括接收地图上的起点。计算机实施的方法还包括接收地图上的终点。计算机实施的方法还包括自动生成导航从起点到终点的多条滑行道所采用的飞行器的路径。计算机实施的方法还包括在gui中的地图上叠加路径。
6.从以下描述和所附权利要求中,一个或多个实施例的其他方面将是明显的。
附图说明
7.图1示出了根据一个或多个实施例的用于实施用于在图形用户接口(gui)上判断和显示滑行路线的自动化过程的计算系统。
8.图2a、图2b、图2c、图2d、图2e、图2f、图2g、图2h、图2i、图2j和图2k是根据一个或多个实施例的用于实施用于判断和显示gui上的滑行路线的自动过程的方法的流程图。
9.图3a和图3b是根据一个或多个实施例的示出在gui上自动计算和显示滑行路线,以及基于用户输入在gui上更新小部件的示例屏幕截图。
10.图4a和图4b是根据一个或多个实施例示出在gui上自动计算和显示滑行路线的示例屏幕截图。
11.图5是根据一个或多个实施例的用于生成可用于如图3a至图4b所示的自动计算滑行路线的图形数据库的方法。
12.图6a、图6b、图6c、图6d、图6e、图6f、图6g和图6h是根据一个或多个实施例,使用由图5所示的方法生成的图形数据库的未编辑基本层所导致的错误的图形表示,以及用于校正错误的技术的图形表示。
13.图7a和图7b示出了根据一个或多个实施例的计算系统和网络。
具体实施方式
14.现在将参考附图详细描述一个或多个实施例的具体实施例。为了保持一致性,各图中的相似元素用相似的附图标记表示。
15.在以下对实施例的详细描述中,阐述了许多具体细节,以提供对一个或多个实施例的更透彻理解。然而,可以在没有这些具体细节的情况下实践一个或多个实施例对于本领域的普通技术人员来说将是明显的。在其他情况下,未详细描述已知特征,以避免不必要地使描述复杂化。
16.在整个申请中,序数(例如,第一、第二、第三等)可以用作元素(即申请中的任何名词)的形容词。序数的使用并非暗示或创建元素的任何特定顺序,也不是将任何元素限制为单一元素,除非明确公开,例如使用“之前”、“之后”、“单一”和其他此类术语。相反,序数的使用是为了区分元素。举例来说,第一元素不同于第二元素,并且第一元素可以包含多个元素,并且在元素的排序中后于(或先于)第二元素。
17.术语“大约”,当关于可测量的物理特性使用时,指代由本领域普通技术的工程师或制造技术人员预期或判断的工程公差。工程公差的精确量化程度取决于生产的产品和测量的技术性能。对于非限制性示例,如果两个角度的值彼此在10%以内,则两个角度可能“大约全等”。然而,如果工程师判断特定产品的工程公差应更严格,那么“大约全等”可以是其值彼此在1%以内的两个角度。同样,在其他实施例中,工程公差可以放宽,使得“大约全等”的角度的值彼此在20%以内。在任何情况下,普通技工都能够评估特定产品的可接受工程公差,从而能够评估如何判断由术语“大约”预期的测量的偏差。
18.一般而言,一个或多个实施例涉及用于判断飞行器在机场处遵循的确切滑行路线并在图形用户接口(gui)上显示该路线的过程和系统。一个或多个实施例可以自动记录、保存和显示由空中交通管制塔台给出的滑行指令,并在滑行过程进行时调用、查看和/或更新gui上的显示的滑行路径。指示可由空中交通管制员给出,该管制员可能位于空中交通管制
塔台,也可能不位于空中交通管制塔台。请注意,在许多情况下,塔台管制员只控制对跑道的访问。另一个人可能担任负责给出滑行指令的地面管制员(可能是也可能不是塔台管制员的独立人员)的角色。因此,虽然本文使用术语“交通管制塔台”,但一个或多个实施例设想“空中交通管制员”或“交通管制塔台”自动设想地面管制员或负责管理机场处的地面或空中交通的任何人。此外,机场可能不受控制。在不受控制的机场(即不受空中交通管制的机场),飞行员可以根据他或她的选择的方式从起点滑行到终点(即飞行员没有得到空中交通管制员的指示)。然而,飞行员或其他来源可能会施加限制。
19.一个或多个实施例还能够经由用户提供或自动提供的输入,其包括通过来自用户的图形输入,根据需要快速改变路线。因此,例如,飞行员可以更改滑行路线,或者空中交通管制员可以发出自动命令,该命令将更改gui上显示的滑行路线。
20.现在,注意力转向这些图。图1示出了根据一个或多个实施例的用于实施用于在图形用户接口(gui)上判断和显示滑行路线的自动化过程的计算系统。图1所示的系统可以在一台或多台可能是分布式的计算机中实施。图1所示的系统可以实施为可移动的计算设备,诸如平板电脑、移动电话、膝上型计算机、台式计算机或机载飞行器计算机。图1所示的系统可以使用远程生成的处理数据,然后传输到平板电脑、移动电话、膝上型计算机、台式计算机或机载飞行器计算机以在gui上显示而部分远程地实施。
21.因此,计算机(100)包括处理器(102),其可能在分布式计算环境中表示一个或多个处理器。该系统包括存储由计算机(100)可使用的各种信息的数据存储库(104),如下所述。数据存储库(104)可以与计算机(100)分离,或者可以是计算机(100)的一部分。该系统还包括显示设备(106),其是被配置为显示gui(108)的物理监视器或屏幕。同样,术语“gui”意旨“图形用户接口”。无论是否是相同的计算系统的部分,计算机(100)、处理器(102)、数据存储库(104)和显示设备(106)都经由有线或无线连接彼此通信。
22.数据存储库(104)存储计算机可读程序代码(110),当由处理器(102)执行时,该程序代码执行一个或多个计算机实施的方法。关于图2a到图2k描述了一个或多个计算机实施的方法。
23.数据存储库(104)存储其他信息,诸如地图信息(112)。地图信息(112)是关于机场环境的数据,计算机可使用该数据以实施本文所述的方法,以在gui(108)上自动生成和显示滑行路线。因此,处理器(102)可用于在gui(108)中显示一个或多个机场滑行道(116)的地图(114)。如本文所用,术语“机场滑行道(116)”不仅指代滑行道,还指跑道、机坪、航站楼、停放区域和/或航站楼。
24.地图(114)还显示覆盖(118)。覆盖(118)是机场滑行道(116)在gui(108)上显示的地图(114)上的叠加。覆盖(118)是机场滑行道(116)本身的高亮显示、在机场滑行道(116)之上绘制的一条或多条线,或者用户可以看到的关于沿着从地图(114)上显示的起点(122)移动到终点(124)的机场滑行道(116)所需的路径(120)的一些其他指示。路径是可以满足当前限制和/或起点(122)和终点(124)之间的路径最小化的一组机场滑行道的视觉表示。起点(122)是路径生成开始或改变的点,不一定是飞行器降落或停放的位置。终点(124)是飞行员或空中交通管制员指定飞行器滑行的位置。终点(124)可以随时间改变,或者可以根据需要重新定义,在这种情况下,计算机(100)将自动更新满足可用约束和/或最小化的路径(120)。
25.数据存储库(104)还可以存储路径生成程序(126)。路径生成程序(126)是处理器(102)可以执行以便生成路径(120)的计算机可读程序代码(110)的示例。因此,路径生成程序(126)是可执行的,用于自动生成导航从起点到终点的多条滑行道所采用的飞行器的路径。路径生成程序(126)是可执行的程序代码,用于实施图2a到图2k中表示用于生成路径的算法的一个或多个步骤,如本文所述。路径生成程序(126)的示例是图形数据库遍历程序。
26.数据存储库(104)还可以存储图形程序(128)。图形程序(128)是计算机可读程序代码(110)的示例,处理器(102)可以执行该程序代码以将路径(120)叠加在gui(108)中的地图(114)上。路径生成程序(126)是可执行的程序代码,用于实施图2a到图2k中表示用于生成路径的算法的一个或多个步骤,如本文所述。
27.数据存储库(104)可以存储其他信息。例如,数据存储库(104)可以存储计算机可读的图形输入(130),以指定起点(122)和终点(124)。图形输入(130)可以采取用户直接操纵地图(114)的形式,但也可以经由一些其他用户输入设备接收,或者可能在飞行器到达或以其他方式位于机场时预先存储和加载。
28.数据存储库(104)还存储关系数据库(132)。关系数据库(132)是存储计算机可读信息的计算机数据结构。具体地,关系数据库(132)存储定义机场滑行道(116)的地图(114)的点和边的信息。因此,在一个实施例中,关系数据库(132)可用于存储部分或全部地图信息(112)。
29.关于路径生成程序(126),计算机可读程序代码(110)可以包括将关系数据库(132)转换为图形数据库(134)的可执行代码,诸如有向图形。以这种方式,路径生成程序(126)可以通过查询有向图形来生成路径(120)。
30.在特定示例中,关系数据库(132)到图形数据库(134)的转换可以通过生成基本层(136)来执行。基本层(136)是在被校正和最终判断之前的初始有向图形。基本层(136)通过导入滑行道引导线、滑行道等待位置、跑道出口线和跑道中心线并将其标准化,以及使用关系数据库(132)中的点之间的边分配持久标识符来生成。
31.数据存储库(104)不仅可以存储基本层(136),还可以存储校正的基本层(138)。通过自动校正基本层(136)来生成校正的基本层(138)。关于图2a到图2k描述了校正的基本层(138)的校正。
32.基本层(136)和校正的基本层(138)都可以包括节点和边,诸如校正的基本层(138)中的节点(140)和边(142)。节点是地图信息(112)中的位置。边(142)是两个节点之间的连接。
33.返回到计算机可读程序代码(110),该代码还可以包括gui更新程序(144)。gui更新程序(144)是可执行的以基于生成的路径(120)更新gui(108)上的键盘。因此,例如,当用户输进用于路径(120)的要求时,当某些节点和边(例如航路点、目的地和可能的路径)改变时,则不再显示地图(114)的不再适合最优路径(120)约束的那些部分。因此,例如,某些航路点或节点可能会变灰或根本不显示,使得用户不会意外地选择不再可用的选项。由于空中交通管制员、规则或条例、用户选择或策略(诸如最小化节点之间的距离)施加的约束,选项可能不可用。关于图2a到图2k描述生成修改后的键盘或gui(108)的其他部分的过程。
34.如上所述,数据存储库(104)还可以存储一个或多个约束(146)。如上所述,约束是限制用于生成路径(120)的选项的任何规则或策略。因此,路径(120)在生成时将遵守一个
或多个约束(146)。
35.虽然图1示出了部件的配置,但在不脱离一个或多个实施例的范围的情况下,可以使用其他配置。例如,可以组合各种部件来创建单个部件。作为另一示例,由单个部件执行的功能可以由两个或多个部件执行。
36.图2a、图2b、图2c、图2d、图2e、图2f、图2g、图2h、图2i、图2j和图2k是根据一个或多个实施例的用于实施用于判断和显示gui上的滑行路线的自动过程的方法的流程图。关于图2a到图2k描述的方法可以使用图1的系统和/或关于图7a和图7b所示的计算系统和网络来实施。因此,关于图2a到图2k描述的各种操作由一个或多个计算机处理器自动执行。
37.步骤200包括在计算机的图形用户接口(gui)中显示机场滑行道的地图。使用渲染应用程序显示地图,该应用程序获取地图信息并显示表示滑行道的布局的地图。
38.步骤202包括接收地图上的起点。起点可以通过用户经由用户输入设备输进地图坐标或起点位置,从用户图形化操纵gui或者从自动程序或过程来接收。自动过程的示例可能是在飞行器上使用全球定位系统(gps)设备的程序,当飞行器降落或抵达机场时,或当飞行器开始或准备开始滑行到跑道或从跑道滑行时,该程序将飞行器的当前位置放在地图上。自动或部分自动过程的另一个示例可以是空中交通管制员或控制系统向系统传输起点和/或任何路径约束。
39.步骤204包括接收地图上的终点。可以以与接收起点类似的方式接收终点。
40.步骤206包括自动生成导航从起点到终点的多条滑行道所采用的飞行器的路径。可以通过遍历地图信息的图形数据结构来生成路径。如关于图5所解释的,可以从地图信息的关系数据库构造图形数据结构。图形数据结构也可以从机场的地图的图像构建。可以使用其他数据结构和用于生成数据结构的方法。
41.步骤208包括在gui中的地图上叠加路径。可根据多种不同方法来叠加路径。例如,地图上的路径可以高亮显示或以其他方式指出。可以将彩色、阴影或散列线或图案叠加在飞行器沿其行驶的相关滑行道、跑道、机坪等上。
42.在一个实施例中,该方法可在此后终止。然而,图2a的方法可以扩展或更改。
43.例如,图2b可以在图2a所示的方法中的步骤202之后的任意点执行。图2b包括在步骤2b02中,基于生成的路径更新gui上的键盘。术语“基于生成的路径”具体考虑了作为正在生成的路径的部分的步骤,例如接收起点。因此,例如,输进起点、终点或任何其他约束可能会导致gui上显示的键盘发生变化。例如,受接收信息约束的航路点可以从gui中移除,或者基于新信息变得可用的航路点可以导致向gui中添加键盘命令。图3a和图3b中示出了一个示例。
44.键盘的更新或对gui的其他动态改变可以通过使用图形和/或渲染程序在受限或可能的路径选项被移除或可用时从gui中添加或删除小部件来完成。此外,高亮显示路径的形状、外观、感觉和方法也可以随新信息而动态改变。例如,如果用户设置了一个航路点,那么高亮显示的路径能够改变颜色或形状。此外,能够示出用于路径的多个选项。
45.图2a的方法也可以动态地执行。换句话说,图2a的方法可以在接收到新信息时更新路径。
46.例如,步骤2c02包括基于用户与gui的交互来接收航路点或路径改变命令。可经由用户与gui交互来接收航路点或路径改变命令。例如,用户可以与更新键盘交互,并且选择
航路点、起点或终点,或发出其他命令。航路点或路径改变命令可由空中交通管制员请求或施加。
47.步骤2c04包括通过基于航路点或路径改变命令修改路径来生成修改后的路径。如上所述,可以通过重新遍历图形数据库来生成修改后的路径。修改基于航路点或路径改变命令,因为航路点或路径改变命令改变了图形数据库的遍历方式,以便将起点连接到终点,同时包括航路点或路径改变命令以及对图形数据库的遍历方式施加的任何指令或策略。
48.步骤2c06包括在gui中的地图上移除路径的叠加。可以通过不再高亮显示最初高亮显示的路径来移除重叠。在一些实施例中,可以跳过步骤2c06。在这种情况下,之前呈现的路径和修改后的路径都将在gui中突出显示。为了便于比较,突出显示这两条路径可能对飞行员有用。
49.步骤2c08包括在gui中的地图上叠加修改后的路径。修改后的路径以类似于在图2a中的步骤208处执行的方法叠加在gui上。
50.在图2d的变型中,当用户与gui交互并且路径被更新时,gui的其他方面可以被更新。例如,步骤2d02包括更新gui,以仅显示可用于随后改变终点或路径的所有可能航路点或路径改变命令的子集,该子集包括允许的终点、航路点和路径命令。换句话说,地图本身被更新,使得一旦设置了某些起点、终点或其他航路点,仅显示可选择的航路点等。用户能够清除此类自动更新,以便再次查看所有可用选项。
51.参考图2e,在图2a的另一个变体中,步骤2e02包括在生成之前接收来自空中交通管制员的约束。该约束也可以从其他来源接收。经由无线通信接收约束。一旦接收到,生成路径还包括生成服从约束的路径。通过这种方式,空中交通管制员可以控制飞行员将对机场的滑行道进行导航的方式。在一个实施例中,完全或部分由空中交通管制员控制的路径可以用不同的颜色或标记高亮显示,使得飞行员知道当时在机场处需要选择特定路径或避免特定路径。
52.一个或多个实施例还可用于缩短从起点到终点沿滑行道行驶的距离。例如,参考图2f,在图2a的步骤206处生成路径的部分可以包括在步骤2f02处,使用有向图形来最小化用于起点和终点之间的路径的距离。
53.图2a的方法还可以包括预处理操作。例如,参考图2g,步骤2g02包括在显示之前接收定义多个机场滑行道的地图的点和边的关系数据库。可以通过访问本地硬盘驱动器、从远程来源请求关系数据库、甚至通过从有图片的地图信息生成关系数据库来接收关系数据库。
54.步骤2g04包括将关系数据库转换为有向图形,以便可以通过查询有向图形来生成路径。可以根据许多不同的方法将关系数据库转换为有向图形。例如,计算机可以通过编程将关系表示从一个数据库转换为另一个数据库。更具体地说,关系数据模型的外键可用于构建边,从而将松散耦合的数据记录转变为有界的节点组。节点构成图形数据库体系结构的基础,边是节点之间的连接。
55.一旦形成图形数据结构,生成路径的方法可能会有所不同。例如,参考图2h,可以在步骤2h02通过应用扩展的dijkstra算法来执行图2a的步骤206处的生成路径,该dijkstra算法是受延迟标签支配算法约束的dijkstra算法,该算法使不受欢迎的可能路径受到惩罚。不受欢迎的可能路径包括违反约束的路径。如果支配标签(基于成本)与支配标
签相比,具有剩余滑行道(约束)的超集,则延迟标签支配算法通过不允许标签(计算边)支配来操作。只有当支配标签具有相同或更少的剩余滑行道可供访问时,才允许所考虑的标签支配具有更大成本的另一个标签。
56.现在,将注意力转向延迟标签支配算法的一种更具技术性的表示。如果与成本较高的标签相比,考虑中的标签具有超集约束(访问的滑行道),则在某一点上成本较低的标签无法支配成本较高的另一标签。该政策确保以正确的顺序访问已清除的滑行道。
57.例如,假设标签a在节点x中有成本为100的目标(在本示例中,单位并不重要)。未访问的已清理的滑行道为c1和d1。进一步假设标签b在节点x中有成本为120的目标。未访问的已清理滑行道为d1。
58.当创建标签a时,将标签a与具有x中的目标的其他标签进行比较。通常,在dijkstra算法中,标签a可以支配标签b,因为标签a成本更低。然而,由于与标签b(未访问的滑行道d1)相比,标签a具有一个约束超集(未访问的c1和d1),因此不能保证标签a会导致访问所有已清除滑行道的最短路径。因此,标签a不能支配标签b。
59.在这种情况下,两个标签将在搜索中保持打开状态。如果标签a也只需要访问滑行道d1,则标签a可能会支配标签b,因为两个标签具有相同的缺失约束。如果标签a的路径中不具有任何缺失的已清除滑行道,同样的结果也适用。
60.在另一个变体中,参考图2i,步骤2i02可以包括在接收起点和终点的同时更新有向图形,以确保起点和终点之间的至少一个连接。换句话说,如果起点和终点之间不存在路径,则可以更新图形以确保起点(即起点节点)和终点(即终点节点)之间存在一条或多条边的路径。图6a至图6h中示出了该过程的示例。
61.除上述技术外,还可以使用不同的技术将关系数据库转换为有向图形。例如,参考图2j,步骤2j02包括通过导入滑行道引导线、滑行道等待位置、跑道出口线和跑道中心线并使其标准化,以及使用关系数据库中的点之间的边分配持久标识符,来生成基本层。步骤2j02可以使用自动算法来完成。
62.步骤2j04包括通过自动校正基本层来生成校正的基本层。校正的基本层可以通过多种不同的方式生成,其包括以下一种或多种方式。可以通过强制接近的边在相应节点处相遇来替换有向图形的不完整部分来全部或部分地生成校正的基本层。可以通过移除无效边或无效节点来全部或部分生成校正的基本层。可以通过重命名未知标签来全部或部分生成校正的基本层。可以通过接收对基本层的手动校正来全部或部分生成校正的基本层。也可以采取这些措施的组合。
63.步骤2j06包括从校正的基本层中的图形数据生成节点和边。如上所述,可以通过使用关系数据模型的外键来构建边,从而将松散耦合的数据记录转变为有界的节点组来生成节点和边。节点形成图形数据库体系结构的基础,边是节点之间的连接。
64.步骤2j08包括验证节点和边是否已连接且可路由。换句话说,图形被遍历多次,以确保每个节点经由至少一条边连接到至少一个其他节点。以这种方式,可以通过至少一条路径选择从任何一个节点到任何其他单个节点的路径。
65.步骤2j10包括将节点和边导出为有向图形。导出可以通过以有向图形的形式保存节点和边来执行。然而,替代地,可以通过将有向图形转换为一些其他数据结构(诸如另一个关系数据库或压缩文件),然后在使用有向图形时重新集成或扩展其他数据结构来执行
导出。
66.作为校正基本图形的示例,或作为在图2j的步骤2j08处验证的变体,参考图2k。步骤2k02包括添加边或节点,以确保所有节点和所有边都已连接且可路由。例如,当图形数据表明两个节点可以通过边连接时,即使关系数据库未示出该边的存在,也可以在两个节点之间添加边。替代地,或者另外,可以将节点添加到图形中,使得两条边可以连接,可能以不同于最初在基本层中呈现的方式连接。同样,可以使用图形数据在适当的地方添加节点,然后确保来自添加的节点的边是适当的。在某些情况下,例如当关系数据库包含旧信息时,在生成校正的基本图形时,可能会删除一个或多个节点。
67.现在从概要开始描述图2a到图2k的方法的其他变化。一个或多个实施例的算法使用所选机场的滑行道计算从飞行器的当前位置到目的地的路径。数据基础可以是关系数据库,该数据库包含机场的点和边,其包括边的名称和类型。数据被转换成机场静态的图形(如邻接列表)。
68.该图形将重新用于所选机场的所有计算。使用dijkstra算法执行最短路径计算。dijkstra算法计算从选定来源位置到选定目标位置的路径。来源位置和目标位置通常是自定义位置,并动态连接到静态图形。
69.最短路径可以采取多条已清除的滑行道作为约束条件,由算法找路线。滑行道的顺序在路径中遵循。如果使用滑行道的顺序找不到任何路线,算法将退回到即不使用滑行道作为通路部分,但只查找到最短路径的解决方案。
70.一个或多个实施例的dijkstra算法用延迟标签支配算法扩展,如上文关于图2h所述,以确保使用清除的滑行道的最短路径被使用。然而,可以使用其他方法。
71.例如,一个或多个实施例考虑使用树数据结构而不是有向图形将路径发现划分为多个路径发现,其中每个已清除的滑行道作为目标。然而,由于单个滑行道有许多边,这种方法可能无法在所有情况下生成解决方案。另一种方法可能是增加除清理的滑行道以外的所有边的成本,但这种方法也不能保证在所有情况下都有完整的解决方案。
72.为了保证滑行道的使用顺序正确,可以使用延迟标签支配算法。如上所述,如果与受支配标签相比,支配标签(基于成本)具有剩余滑行道(约束)的超集,则延迟标签支配算法由不允许标签(计算边)支配运行。只有当支配标签具有相同或更少的剩余滑行道可供访问时,它才被允许支配具有更大成本的另一个标签。
73.路径查找器具有用于计算标签的成本的一组约束,以便影响路径的查找方式。这些约束如下所述。如果提供了初始航向(在跑道降落时),算法将倾向于继续在该方向上的路径一段时间,以避免降落时在跑道上出现急转弯。在跑道上或靠近来源位置时,与初始航向相比具有锐角的边将受到惩罚。
74.如果跑道被设定为目标,则应执行交叉口起飞。当查找到指定用于交叉口起飞的跑道的路径时,将标记该路径,并为从该标签到目标的其余标签分配较低的成本。
75.当已经查找到目标的最短路径,并且指定跑道用于交叉口起飞时,标记为交叉口起飞的标签后的路径中的边将被移除。因此,当查找到用于交叉口起飞的跑道时,路径停止。
76.每个标签上都添加了保持短距离位置,以指示路径上的“保持短距离”的位置。“保持短距离”是一种空中交通管制程序。飞行器在交叉跑道或跑道上的某个点处停止滑行
(“保持短距离”,以平衡机场容量和系统效率。当滑行道穿过跑道或多条滑行道相交时,也可能会发出等待短间隙。
77.在查找到最短路径后计算连接的滑行道,以便指示哪些滑行道位于查找到的路径附近。该应用程序使用连接的滑行道,基于当前查找到的路径,建议最有可能清除哪些滑行道。
78.该应用程序还使用广度优先搜索算法(bfs)以查找距当前路径不超过预定距离(例如500英尺)的附近连接的滑行道。当查找到与当前路线中的滑行道不同的连接的滑行道时,搜索树中该分支中的搜索将停止。因此,与当前路径不同的每条路径只将查找到一条连接的滑行道。
79.调试信息将添加到结果中。调试信息指示查找到的路径的边及其成本。
80.一个或多个实施例的算法可受制于一个或多个约束,以改进服从空中交通管制员或预期飞行器操作实践施加的约束的查找到的路径。例如,已清除的滑行道(通路部分)的重量低于其他标签。在另一个示例中,改变滑行道会受到惩罚,以便尽量减少滑行道过渡的次数。在另一个示例中,使用未命名的边(非滑行道)将受到惩罚。在另一个示例中,使用急转弯将受到惩罚。在另一个示例中,如果对于后滑行操作的跑道未清除,则使用跑道将受到惩罚。在另一个示例中,已经访问的边的递归路径将受到惩罚。在另一个示例中,如果已清除滑行道的顺序与最短路径相反,则最短路径将被覆盖。此外,保持短距离命令也可能形成额外的约束,诸如滑行道过渡(滑行道中用于过渡的保持短距离位置)、跑道保持短距离(穿越跑道的保持短距离位置)和滑行道交叉口(穿越其他滑行道的保持短距离位置)。还考虑了其他限制。
81.还有其他可能的变化。因此,虽然流程图中的各个步骤是按顺序呈现和描述的,但普通技术人员将理解,可以以不同的顺序执行部分或全部步骤,可以组合或省略,并且可以并行执行部分或全部步骤。因此,一个或多个实施例不一定受到本文提供的示例的限制。
82.图3a到图6h呈现了上述关于图1到图2k的技术的具体示例。以下示例仅用于解释目的,并不旨在限制一个或多个实施例的范围。
83.现在请注意转向图3a和图3b,它们是根据一个或多个实施例的示例屏幕截图,示出了在gui上自动计算和显示滑行路线,以及基于用户输入更新gui上的小部件。图3a和图3b应一并考虑。可以使用图1的系统、图2a到图2k的方法和/或图7a和图7b所示的计算系统和网络来生成关于图3a和图3b描述的屏幕截图。
84.屏幕截图(300)包括滑行道系统的地图(302),其包括跑道、滑行道、机坪、航站楼、停放区域和机库。在终点(306)和起点(307)之间定义并高亮显示路径(305)。由于观察了多个航路点,诸如航路点(308)和航路点(310),路径(305)发生了几次转弯,这些航路点被施加在路径选择上。可出于多种原因选择航路点,其包括在源点和终点之间施用最短路径的航路点、由用户选择的航路点、由空中交通管制员施加的航路点,或可能的其他来源。在一个实施例中,由用户选择的航路点出现在显示窗口(320)中。在图3a的实施例中,飞行器(312)的当前位置被示为高亮显示的圆圈,尽管示出飞行器(312)的当前位置的其他方法是可能的。
85.屏幕截图(300)中示出的gui还包括作为gui的部分的交互式键盘(314)。交互式键盘(314)包括多个小部件,例如小部件(316)。小部件是按钮、杠杆、滚动条等,允许用户与屏
幕截图(300)中示出的gui进行交互。因此,例如,用户可以选择小部件(316)作为约束或期望的航路点。该选择在显示窗口(320)中示出为条目(318)。作为小部件(316)的部分的结果,路径(305)被更新。
86.此外,当注意转向图3b时,交互式键盘(314)也可以用小部件的不同选择、显示窗口(320)中的信息的条目、或从空中交通管制员或其他数据源接收的约束来更新。在图3b的示例中,随后的屏幕截图(322)示出了调整的键盘(324)现在包括已经移除小部件的区域(326)。小部件被移除是因为小部件(316)的选择使得区域(326)中的小部件的命令不可用,这是由于一旦小部件(316)被选择后出现的路径(305)上的约束。以这种方式,用户可以更快速地判断用于进一步细化路径(305)的可用选项。
87.用户可以使用“清除”小部件(328)以清除显示窗口(320),从而重置所有可用选项,尽管这样做可能导致路径(305)消失。随着用户提供更多数据或指令,诸如起点、终点或航路点的条目,路径(305)不断更新。可选地,可以示出两点之间的替代多条路径,并且用户可以在随后的屏幕截图(322)中与gui显示交互,以选择用户想要采取的路径。
88.图3a和/或图3b所示的编辑视图允许gui改变和可视化给定机场的滑行路线。在视图的顶部是当前滑行路线中的元素。每个气泡都可以点击,以暴露“移除”动作。
89.在这些气泡的右边是“清除”、“撤消”和“重做”按钮。“清除”按钮将删除所有路线元素。撤消/重做工作会改变对这些元素所做的最新编辑。可以将“撤消/重做”设置为适用于当前编辑会话(如果用户关闭并重新打开“编辑”视图,则会重置为撤消/重做而跟踪的改变的历史记录)的工作。
90.滑行路线元素气泡下方是智能键盘。智能键盘会提示添加到滑行路线或路径的位置。滑行路线首先具有添加到滑行路线的两个位置:起点和终点。如果所有权位于机场属性上,它将自动假定为起点(并且未示出为元素气泡)。否则,经由智能键盘添加的第一位置将是起点。添加的下一个位置将是终点(例如,目的地)。
91.一旦已经添加了两个位置,地图上将示出自动计算的路径。然后,智能键盘将开始示出要添加的路径选项,如滑行道或后退滑行指令。预计飞行员将按照空中交通管制员给出的相同顺序,直接在该路线编辑器中键入来自地面管制(或其他机场管理局)的许可,尽管此类信息可能会根据空中交通管制员提供的数据自动输进。
92.智能键盘正上方是解释下一步需要什么路线元素(起点、终点或清除元素)的文本。智能键盘中示出为选项的位置包括跑道终点、固定基地操作员和机场上的用户航路点。
93.如果所有权不在机场上,并且选择了跑道作为起点位置,则编辑器假定跑道正在用于降落。在这种情况下,路线可能从跑道的一半开始,在跑道的方向上。在下降或降落过程中,在机场处飞行并试图接近滑行路径时,此功能非常有用。
[0094]“编辑”视图的底部处的地图视图用作视觉辅助。可能支持也可能不支持在地图上点击,并且可以编程平移或缩放手势。
[0095]“反馈”按钮抓取当前编辑视图的屏幕截图,并提示用户通过电子邮件传输该信息,以及有关用户所关心问题的任何注释。如果用户不具有可用的电子邮件帐户,则gui上可能会示出标准共享表,以便用户可以使用一些其他电子邮件应用程序或其他消息服务传输反馈。
[0096]
当路线完成时,编辑视图可以被取消,因为路线是自动保存的。路线将显示在主地
图和该机场的任何机场示意图上。路线将继续示出在这些位置,直到用户在编辑视图中清除路线。
[0097]
路线可能会被保留。换句话说,如果应用程序被停止,然后重新启动,应用程序将自动恢复在应用程序重新启动之前的预定时间内建立的任何滑行路线。
[0098]
现在请注意转向图4a和图4b,它们是根据一个或多个实施例的示例屏幕截图,示出了在gui上自动计算和显示滑行路线。图4a和图4b应一并考虑。可以使用图1的系统、图2a到图2k的方法和/或图7a和图7b所示的计算系统和网络来生成关于图4a和图4b描述的屏幕截图。
[0099]
图4a示出了屏幕截图(400a)。屏幕截图(400a)示出了机场的部分的图像。因此,与图3a的屏幕截图(300)不同,一个或多个实施例可以仅示出机场的扩展或缩放部分,而不是整个机场滑行道系统。图4a是两个机坪连接之间的动态连接的示例。
[0100]
在图4a的示例中,起飞位置(402a)(即,起点)被示为通常位于机库附近的停放区域的区域中。未示出的目标位置(即终点),位于屏幕截图(400a)中示出的缩放区域之外。在图4a的示例中,从起飞位置(402a)到终点(未示出)的多个可行路径是可用的,诸如路径(404a)、路径(406a)、路径(408a)、路径(410a)、路径(412a)、路径(414a)、路径(416a)和路径(418a),每个路径如图所示高亮显示。
[0101]
从技术角度来看,起飞位置(402a)和目的地位置(未示出)动态连接到静态图形,以便允许起飞位置(402a)为飞行器的当前位置,目的地位置为机场处的自定义指定位置。为了判断起飞位置(402a)和目的地位置(未显示)的连接位置,计算从这些位置到静态图中所有边的距离。通过计算到每条边的源节点和目标节点的距离,将两个距离相加,然后减去边的长度来计算距离。对于边源和目标都靠近相应位置(起飞位置(402a)或目的地位置(未示出))的边,结果距离较低。因此,当位置直接位于边源和目标之间时,边的距离为零。
[0102]
然后使用最近的边(与起飞位置(402a)或目的地位置(未示出)的相应距离)来判断应使用哪些边以及使用多少边。如果最近的边位于滑行道或跑道上,则只有该边将用于连接起飞或抵达。如果最近的边的边的源或目标的出度为1(未连接到任何其他边),则在这种情况下,该边是机坪连接边。当检测到机坪连接边时,应用程序将搜索其他机坪连接边,其长度不超过到第一边的距离加上设定的距离(例如,1000英尺)。因此,如果飞行器和/或起飞位置(402a)相对于飞行器所在区域的大小接近任何给定的机坪,则机坪可以连接到多个滑行道。
[0103]
图4b示出了屏幕截图(400b)。屏幕截图(400b)示出了机场的部分的另一个图像,在这种情况下,相对于图4a的屏幕截图(400a)进一步放大。图4b是连接到机坪位置的起飞位置(402b)的示例。
[0104]
起飞位置(402b)示出在所示的停放区域内。图4b中的起飞位置(402b)已经相对于图4a中的起飞位置(402a)移动。起飞位置(402b)已从起飞位置(402a)移动,以更好地图示路径段之间的连接性,并且还因为被跟踪的单个飞行器已在图4a和图4b之间的停放区域内移动。
[0105]
图4b还示出,由于各种原因,路径(404b)可以被分成不同高亮显示的段,其包括路径段(406b)、路径段(408b)、路径段(410b)和路径段(412b)。继续图4a的技术描述,当在表示起飞位置(402b)和目的地位置(未示出)的示意图中已经查找到(一个或多个)最近边时,
示意图中的最近边将连接到起飞位置(402b)和目的地位置(未示出)。特别是,(一个或多个)最近边上的一个点在连接到起飞位置(402b)或目的地位置(未示出)时会导致垂直边。在无法在边上查找到会导致垂直边的位置的情况下,如果边将用于查找到垂直边,则在外插路径上指定一个点。
[0106]
在图4b的示例中,路径段(412b)是滑行道,路径段(410b)是机坪连接,并且路径段(408b)是来自机坪连接的外插边(即路径段(410b))。路径段(406b)是上述的垂直边。
[0107]
现在将注意力转向图5,图5是根据一个或多个实施例的用于生成可用于如图3a到图4b所示的自动计算滑行路线的图形数据库的方法。图5的方法表示一种可能的技术手段,用于在显示机场跑道、滑行道、机坪、航站楼、停放区域和/或机库系统的图形用户接口(gui)上自动生成所选路线的显示。一个或多个实施例考虑了其他类型的数据结构,其包括其他类型的数据库、链表、对象等。因此,图5的示例不一定限制一个或多个实施例。可以使用图1的系统、图2a到图2k的方法和/或图7a和图7b所示的计算系统和网络来实施关于图5描述的技术。
[0108]
在步骤500处,其包括生成基本层。基本层是通过将关系数据库转换为初始图形数据库而生成的,如上所述。
[0109]
替代地,通过从机场地图数据库(amdb)导入源数据来创建基本层,amdb是一种特定的关系数据库。导入的滑行道引导线、滑行道等待位置、跑道出口线和跑道中心线被标准化,并分配持续标识符。使用数据库中的边、几何形状和识别特征来计算标识符。标识符用于步骤502处的校正,以便正确地执行分层,并允许手动校正在源数据的周期中持续。
[0110]
步骤502包括应用自动校正。如上文图2a至图2k所指示的,基本图形可受益于校正。由于仅从基本层生成的图形通常不完整且未优化,因此预计基本图形通常会从校正中受益。
[0111]
校正作为导出过程的指令,提供在不修改源图层的情况下,删除、更新或从头创建滑行道边的指令。自动校正主要有两类:替换不完整的部分和重命名未知标签。图6a至图6d中示出了替换不完整部分的示例。图6e和图6f示出了重命名未知标签的示例。
[0112]
步骤504包括应用手动校正。在某些情况下,缺失足够的信息来生成校正。可以由技术人员进行手动校正,或从其他自动化过程中输入,以改进机场的路线图形的生成。与自动校正或基本层不同,手动校正会无限期地应用,或者直到基本层不支持某些手动校正。
[0113]
步骤506包括导出可路由图形。要导出可路由图形,将基本层和校正层组合。然后使用来自每条边的图形数据生成可路由的节点和边。可路由节点(主要节点和次要节点)和边的示例在图6g中示出。
[0114]
步骤508包括使用视觉提示验证可路由图形。图6h中给出了视觉提示的示例。步骤508处的验证测试导出的图形是否完全连接且可路由。通过多次传递图形来执行验证,以确保可以从任何给定的目的地点到达任何给定的终点。
[0115]
步骤510包括在步骤508处判断图形是否已成功验证。如果不是,(步骤510处的“否”判断),则步骤512包括生成报告。该报告指出了故障位置,或以其他方式提供了在步骤508处导致验证失败的未校正错误的人类可读描述。在步骤504处,通过应用一个或多个手动校正,将报告传递给一个或多个分析师或技术人员以校正图形。然后重复这个过程。
[0116]
返回到步骤510,如果图形被验证(在步骤510处的“是”判断),则过程终止。然后将
图形存储起来以供以后使用。当飞行器降落或以其他方式位于该图形应用的机场时,可以调用或检索该图形。随着机场处的滑行道系统的变化,也可以根据图5的方法根据需要更新该图形。在一些实施例中,可以定期或持续地更新该图形,以说明空中交通管制员指示的持续变化或其他变化的条件。
[0117]
现在将注意力转向图6a、图6b、图6c、图6d、图6e、图6f、图6g和图6h,它们是根据一个或多个实施例的由于使用由图5所示方法生成的图形数据库的未编辑基本层而产生的错误的图形表示,以及用于校正错误的技术的图形表示。因此,图6a到图6h示出了用于细化上面生成的基本层图形数据库的技术。如上所述,关于一个或多个实施例,其他类型的数据结构是可能的;因此,关于图6a到图6h描述的技术不一定限于这些示例。关于图6a到图6h描述的技术可以使用图1的系统、图2a到图2k的方法和/或关于图7a和图7b所示的计算系统和网络来实施。
[0118]
首先将注意力转向图6a到图6f,其示出了应用自动校正的图5的步骤502的示例。图6a、图6b、图6c和图6d示出了自动校正不完整部分。图6e和图6f示出了自动校正剩余未知标签。
[0119]
图6a示出了滑行道系统(600),其具有应连接但不连接的潜在路径。例如,已知路径(602)连接到路径(604)。路径606还连接到路径604。然而,路径(602)和路径(606)都没有连接到滑行道系统(600)中的路径(604)。已知但未表示的连接可由计算机从潜在的关系数据库中的数据或元数据(从该数据库生成基本层)或从其他信息源(诸如滑行道系统的有图片的表示或滑行道系统中的已知交叉口列表)收集。
[0120]
自动校正过程可用于向滑行道系统(600)中的路径添加连接。具体地,图6b中的路径段(608)被自动放置以连接路径(602)和路径(604)。类似地,路径段610被自动放置以将路径606连接到路径604。
[0121]
因此,图6a和图6b示出了更换滑行道系统(600)的不完整部分的示例。由于将关系数据库转换为图形数据库的性质,基本层中的许多边彼此接近,但从未真正相遇。其中一个校正是在这些边之间添加连接点,使得在它们之间生成路线。
[0122]
然而,通过一系列检查,路径的某些部分被判断为无效。无效部分将替换为删除和创建校正的组合。一个或多个实施例考虑了许多校正类型,诸如没有边在路面多边形内,没有连接路面多边形内的所有边,也没有连接具有彼此接近的边的所有相邻多边形。
[0123]
现在请注意转向图6c和图6d,它们示出了校正不完整部分的另一个示例。图6c示出了另一滑行道系统(612)。滑行道(614)边与跑道路径(616)边相邻。如图6d所示,自动添加连接路径,诸如连接路径(618)。
[0124]
现在请注意转向图6e和图6f,它们示出了自动分配标签的示例。在图6e的滑行道系统(622)中,滑行道路径(624)边连接到跑道路径(626)边。类似地,滑行道路径(628)边连接到跑道路径(626)。在图6e的示例中,跑道和两条滑行道之间的连接路径已经被自动检测到,其包括连接路径(630)边和连接路径(632)边。然而,没有为潜在关系数据库中的连接路径(630)边和连接路径(632)边指定标签。
[0125]
然而,图5所示的自动校正过程使用在滑行道路径(624)、跑道路径(626)和滑行道路径(628)的关系数据库中提供的标签来导出连接路径(630)边和连接路径(630)边的标签。因此,例如在图6f中,为连接路径(630)边生成标签(634),并且为连接路径(632)边生成
标签(636)。标签是已标记的滑行道和跑道的现有标签的组合。
[0126]
此外,为了清晰或其他原因,滑行道系统中的标记路径可能会重新标记。例如,在图6e中,穿过跑道13.31的滑行道上具有标签“$na”。在图6f中,相同的滑行道已经重新标记为“a”。
[0127]
现在请注意转向图6g。图6g示出了叠加在滑行道系统的地图上的导出可路由图形(638)的示例。要导出图形,首先要合并基本层和校正层。然后,来自每个边的图形数据用于生成可路由节点(诸如节点(640)和节点(642))以及边(诸如边(644)和边(646))。节点和边定义图形数据库,然后将其导出以用于根据图2a到图2k所述的方法生成路径。
[0128]
现在请注意转向图6h。图6h示出了验证可路由图形(648)的示例。验证步骤判断导出的图形是否完全连接且可路由。如果没有,将生成一份报告,精确指出故障位置,供分析师经由手动校正进行校正。
[0129]
在图6h的示例中,虚线框(652)中所示的路径段(650)没有像路径段(650)应该连接到可路由滑行道系统的其他部分。通过注意地图上示出的潜在滑行道,而不是道路,诸如道路(654)和道路(656),人类可以看到缺失的连接。然而,无论出于何种原因,计算机都不会自动供应缺失的路径段,这些路径段将路径段(650)连接到图6h所示的可路由滑行道系统的其他部分。
[0130]
因此,图形数据库将返回给人类技术人员,然后他们可以填写缺失的路径段及其相应的标签。一旦图形数据库被完成,图形数据库被导出以供以后使用,如关于图2a到图2k所述。
[0131]
图7a和图7b是根据一个或多个实施例的计算系统和网络的示例。一个或多个实施例可以在专门设计用于实现改进的技术结果的计算系统上实施。当在计算系统中实施时,本发明的特征和要素相对于未实施本公开的特征和要素的计算系统提供了显著的技术进步。通过包括本公开中描述的特征和元件,可以改进移动设备、台式机、服务器、路由器、交换机、嵌入式设备或其他类型硬件的任何组合。例如,如图7a所示,计算系统(700)可以包括一个或多个计算机处理器(702)、(一个或多个)非持久性存储设备(704)(例如,易失性存储器,诸如随机存取存储器(ram)、高速缓存存储器)、(一个或多个)持久存储设备(706)(例如硬盘、光盘驱动器(诸如cd驱动器或数字多功能磁盘(dvd)驱动器)、闪存等)、通信接口(708)(例如蓝牙接口、红外接口、网络接口、光学接口等),以及实施本公开的特征和要素的许多其他要素和功能。
[0132]
(一个或多个)计算机处理器(702)可以是用于处理指令的集成电路。例如,(一个或多个)计算机处理器(702)可以是处理器的一个或多个内核或微内核。计算系统(700)还可以包括一个或多个输入设备(710),诸如触摸屏、键盘、鼠标、麦克风、触摸板、电子笔或任何其他类型的输入设备。
[0133]
通信接口(708)可以包括集成电路,用于将计算系统(700)连接到网络(未示出)(例如,局域网(lan)、广域网(wan),诸如互联网、移动网络或任何其他类型的网络)和/或另一台设备(诸如另一台计算设备)。
[0134]
此外,计算系统(700)可以包括一个或多个输出设备(712),诸如屏幕(例如,液晶显示器(lcd)、等离子显示器、触摸屏、阴极射线管(crt)监视器、投影仪或其他显示设备)、打印机、外部存储装置或任何其他输出设备。一个或多个输出设备(712)可以与(一个或多
个)输入设备(710)相同或不同。(一个或多个)输入和输出设备(710和712)可以本地或远程连接到(一个或多个)计算机处理器(702)、(一个或多个)非持久性存储设备(704)和(一个或多个)持久性存储设备(706)。存在许多不同类型的计算系统,并且(一个或多个)前述输入和输出设备(710和712)可以采用其他形式。
[0135]
执行一个或多个实施例的计算机可读程序代码形式的软件指令可以全部或部分临时或永久地存储在非暂时性计算机可读介质上,诸如cd、dvd、存储设备、软盘、磁带、闪存、物理存储器、,或任何其他计算机可读存储介质。具体地,软件指令可对应于计算机可读程序代码,当由(一个或多个)处理器执行时,该程序代码被配置为执行一个或多个实施例。
[0136]
图7a中的计算系统(700)可以连接到网络或是网络的一部分。例如,如图7b所示,网络(720)可以包括多个节点(例如,节点x(722)、节点y(724))。每个节点可以对应于计算系统,诸如图7a所示的计算系统(700),或者组合的一组节点可以对应于图7a所示的计算系统(700)。作为一个示例,,一个或多个实施例可以在连接到其他节点的分布式系统的节点上实施。作为另一个示例,一个或多个实施例可以在具有多个节点的分布式计算系统上实施,其中一个或多个实施例的每个部分可以位于分布式计算系统内的不同节点上。此外,前述计算系统(700)的一个或多个元件可以位于远程位置,并通过网络连接到其他元件。
[0137]
尽管在图7b中未示出,但该节点可以对应于服务器机箱中的刀片,该刀片经由背板连接到其他节点。作为另一示例,该节点可对应于数据中心中的服务器。作为另一示例,该节点可对应于具有共享存储器和/或资源的计算机处理器或计算机处理器的微核。
[0138]
网络(720)中的节点(例如,节点x(722)、节点y(724))可以被配置为向客户端设备(726)提供服务。例如,这些节点可能是云计算系统的一部分。这些节点可以包括从客户端设备(726)接收请求并向客户端设备(726)传输响应的功能。客户端设备(726)可以是计算系统,诸如图7a所示的计算系统(700)。此外,客户端设备(726)可以包括和/或执行一个或多个实施例的全部或部分。
[0139]
图7a和图7b中描述的计算系统(700)或计算系统组可以包括执行本文公开的各种操作的功能。例如,(一个或多个)计算系统可以在相同或不同系统上的过程之间执行通信。采用某种形式的主动或被动通信的各种机制可以促进相同的设备上的过程之间的数据交换。表示这些过程间通信的示例包括但不限于文件、信号、套接字、消息队列、管道、信号量、共享存储器、消息传递和存储器映射文件的实施方式。下面提供了与这些非限制性示例中的几个有关的更多详细信息。
[0140]
基于客户端服务器网络模型,套接字可以用作接口或通信通道端点,实现相同的设备上过程之间的双向数据转移。首先,遵循客户端服务器网络模型,服务器过程(例如,提供数据的过程)可以创建第一个套接字对象。接下来,服务器过程绑定第一个套接字对象,从而将第一个套接字对象与唯一的名称和/或地址相关联。创建并绑定第一个套接字对象后,服务器过程将等待并侦听来自一个或多个客户端过程(例如,查找数据的过程)的传入连接请求。此时,当客户端过程希望从服务器过程获取数据时,客户端过程通过创建第二个套接字对象开始。然后,客户端过程继续生成连接请求,该连接请求至少包括第二套接字对象和与第一套接字对象相关联的唯一名称和/或地址。然后,客户端过程将连接请求传输到服务器过程。根据可用性,服务器过程可以接受连接请求,与客户端过程建立通信通道,或者忙于处理其他操作的服务器过程可以在缓冲区中将连接请求排队,直到服务器过程准备
就绪。已建立的连接通知客户端过程通信可能开始。作为响应,客户端过程可以生成数据请求,指定客户端过程希望获得的数据。数据请求随后被传输到服务器过程。接收到数据请求后,服务器过程分析请求并收集请求的数据。最后,服务器过程生成至少包括请求的数据的应答,并将应答传输给客户端过程。更常见的是,数据可以作为数据报或字符流(例如字节)转移。
[0141]
共享存储器指代分配虚拟存储器空间,以便证实数据可由多个过程进行通信和/或访问的机制。在实施共享存储器时,初始化过程首先在持久或非持久存储中创建一个可共享段。在创建之后,初始化过程将装载可共享段,随后将可共享段映射到与初始化过程相关联的地址空间。装载之后,初始化过程继续识别并向一个或多个授权过程授予访问权限,这些授权过程也可以向可共享段写入数据并且从其读取数据。一个过程对可共享段中的数据所做的改变可能会立即影响其他过程,这些过程也会链接到可共享段。此外,当其中一个授权过程访问可共享段时,可共享段映射到该授权过程的地址空间。通常,在任何给定时间,只有一个授权过程可以装载可共享段,而不是初始化过程。
[0142]
在不脱离一个或多个实施例的范围的情况下,可以使用其他技术在过程之间共享数据,诸如本技术中描述的各种数据。这些过程可以是相同或不同应用程序的一部分,并且可以在相同或不同的计算系统上执行。
[0143]
执行一个或多个实施例的计算系统可以包括从用户接收数据的功能,而不是或除了在过程之间共享数据之外。例如,在一个或多个实施例中,用户可以经由用户设备上的图形用户接口(gui)提交数据。通过用户使用触摸板、键盘、鼠标或任何其他输入设备选择一个或多个图形用户接口小部件或将文本和其他数据插入图形用户接口小部件,可以经由图形用户接口提交数据。响应于选择特定项,计算机处理器可从持久或非持久存储装置获取关于特定项的信息。在用户选择项目时,响应于用户的选择,可以在用户设备上显示关于特定项目的获得的数据的内容。
[0144]
作为另一示例,获取关于特定项目的数据的请求可以被发送到通过网络操作地连接到用户设备的服务器。例如,用户可以在用户设备的web客户端内选择统一资源定位器(url)链接,从而发起发送到与该url相关联的网络主机的超文本转移协议(http)或其他协议请求。作为对请求的响应,服务器可以提取关于特定选定项目的数据,并将数据传输到发起请求的设备。一旦用户设备已经接收到关于特定项目的数据,则响应于用户的选择,可以在用户设备上显示关于特定项目的接收的数据的内容。除上述示例之外,在选择url链接之后从服务器接收的数据可以提供超文本标记语言(html)的网页,该网页可以由web客户端渲染并显示在用户设备上。
[0145]
一旦例如通过使用上述技术或从存储装置获得数据,计算系统在执行一个或多个实施例的一个或多个实施例时,可以从获得的数据中提取一个或多个数据项。例如,可以由图7a中的计算系统(700)如下执行提取。首先,判断数据的组织模式(例如,语法、模式、布局),其可以基于以下一个或多个:位置(例如,位或列位置、数据流中的第n个令牌等)、属性(其中该属性与一个或多个值相关联),或层次/树结构(由不同细节级别的节点层组成,如嵌套的数据包头或嵌套的文档节)。然后,在组织模式的上下文中,将原始的、未经处理的数据符号流解析为令牌流(或分层结构)(其中每个令牌可以具有关联的令牌“类型”)。
[0146]
接下来,提取标准用于从令牌流或结构中提取一个或多个数据项,其中提取标准
根据组织模式进行处理,以提取一个或多个令牌(或分层结构中的节点)。对于基于位置的数据,提取由提取标准标识的(一个或多个)位置处的(一个或多个)令牌。对于基于属性/值的数据,将提取与满足提取标准的(一个或多个)属性相关联的(一个或多个)令牌和/或(一个或多个)节点。对于分层的/经分层的数据,将提取与匹配提取标准的(一个或多个)节点相关联的(一个或多个)令牌。提取标准可以简单到标识符字符串,或者可以是呈现给结构化数据存储库的查询(其中,数据存储库可以根据数据库模式或数据格式进行组织,诸如可扩展标记语言(xml))。
[0147]
提取的数据可用于计算系统的进一步处理。例如,图7a的计算系统(700)在执行一个或多个实施例时,可以执行数据比较。数据比较可用于比较两个或多个数据值(例如a、b)。例如,一个或多个实施例可以判断a》b,a=b,a!=b、a《b等。可以通过将a、b和指定与比较相关的操作的操作码提交到算术逻辑单元(alu)(即,对两个数据值执行算术和/或位逻辑运算的电路)来执行比较。alu输出操作的数值结果和/或与数值结果相关的一个或多个状态标志。例如,状态标志可指示数值结果是否为正数、负数、零等。通过选择适当的操作码,然后读取数值结果和/或状态标志,可执行比较。例如,为了判断a》b,可以从a中减去b(即a-b),并且可以读取状态标志以判断结果是否为正数(即,如果a》b,则a-b》0)。在一个或多个实施例中,b可被视为阈值,并且如果a=b或如果a>b,则a被视为满足阈值,如使用alu判断的。在一个或多个实施例中,a和b可以是向量,并且将a与b进行比较需要将向量a的第一元素与向量b的第一元素进行比较,将向量a的第二元素与向量b的第二元素进行比较,等等。在一个或多个实施例中,如果a和b是字符串,则可以比较字符串的二进制值。
[0148]
图7a中的计算系统(700)可以实施和/或连接到数据存储库。例如,一种类型的数据存储库是数据库。数据库是为便于数据检索、修改、重新组织和删除而配置的信息集合。数据库管理系统(dbms)是一种软件应用程序,为用户提供定义、创建、查询、更新或管理数据库的接口。
[0149]
用户或软件应用程序可以向dbms中提交语句或查询。然后dbms解释该语句。该语句可以是选择语句,用于请求信息、更新语句、创建语句、删除语句等。此外,该语句还可以包括指定数据的参数、数据容器(数据库、表、记录、列、视图等)、标识符、条件(比较运算符)、函数(如链接、完全链接、计数、平均等)、排序(如升序、降序)或其他。dbms可以执行该语句。例如,dbms可以访问存储器缓冲区、文件的引用或索引以进行读、写、删除或其任何组合,以响应该语句。dbms可以从持久性或非持久性存储装置加载数据,并执行计算以响应查询。dbms可以将(一个或多个)结果返回给用户或软件应用程序。
[0150]
图7a的计算系统(700)可以包括呈现原始数据和/或处理的数据的功能,诸如比较和其他处理的结果。例如,呈现数据可以通过各种呈现方法来实现。具体地,数据可以通过计算设备提供的用户接口呈现。用户接口可以包括在显示设备上显示信息的gui,诸如在手持计算机设备上的计算机监视器或触摸屏。gui可能包括各种gui小部件,用于组织示出的数据以及向用户呈现数据的方式。此外,gui可以直接向用户呈现数据,例如,通过文本呈现为实际数据值的数据,或者由计算设备渲染为数据的可视表示,诸如通过可视化数据模型。
[0151]
例如,gui可以首先从软件应用程序获取通知,请求在gui中呈现特定的数据对象。接下来,gui可以判断与特定数据对象相关联的数据对象类型,例如,通过从数据对象内的识别数据对象类型的数据属性获取数据。然后,gui可以判断指定用于显示该数据对象类型
的任何规则,例如,由软件框架为数据对象类指定的规则,或者根据gui定义的用于呈现该数据对象类型的任何本地参数。最后,gui可以从特定数据对象获取数据值,并根据针对该数据对象类型的指定规则在显示设备内呈现数据值的视觉表示。
[0152]
数据也可以通过各种音频方法呈现。具体地,数据可以被渲染成音频格式,并通过可操作地连接到计算设备的一个或多个扬声器以声音的形式呈现。
[0153]
数据也可以通过触觉方法呈现给用户。例如,触觉方法可以包括由计算系统生成的振动或其他物理信号。例如,可以使用手持式计算机设备生成的振动向用户呈现数据,该振动具有预定的持续时间和强度,以对数据进行通信。
[0154]
上述功能描述仅呈现了由图7a的计算系统(700)和图7b中的节点(例如,节点x(722)、节点y(724))和/或客户端设备(726)执行的功能的几个示例。可以使用一个或多个实施例来执行其他功能。
[0155]
虽然已经针对有限数量的实施例描述了一个或多个实施例,但是本领域技术人员将理解,受益于本公开,其他实施例可以被设计不偏离本文所公开的一个或多个实施例的范围。因此,一个或多个实施例的范围应仅限于所附权利要求。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1