用于公交路径规划的方法、装置和计算设备与流程

文档序号:18179838发布日期:2019-07-17 05:08阅读:109来源:国知局
用于公交路径规划的方法、装置和计算设备与流程

本说明书的实施例涉及公共交通规划领域,并且具体地,涉及用于公交路径规划的方法、装置和计算设备。



背景技术:

城市公共交通是城市交通系统中的一个重要组成部分。公共交通一般包括公交巴士或地铁等方式。在进行公共交通路径规划时,通常需要构建公共交通线网图(在本文中也可以简称为公交线网图)。公交线网图是指表示公交网络的连通图,其通过节点和边来表示公交巴士或地铁的站点以及站点之间运行的公交线路。

然而,随着公共交通的发展,公交线路日益复杂,那么如何在公交线网图中简单高效地表示出这些复杂的公交线路成为需要解决的问题之一。



技术实现要素:

考虑到现有技术的上述问题,本说明书的实施例提供了用于公交路径规划的方法、装置和计算设备。

一方面,本说明书的实施例提供了一种用于公交路径规划的方法,包括:确定第一站点是n条线路的公共站点,其中,n为大于1的正整数;生成公交线网图;其中,所述公交线网图包括所述n条线路和第一虚拟节点,所述第一站点由分别位于所述n条线路中的n个节点来表示,所述n个节点各自与所述第一虚拟节点之间具有换乘边,所述n个节点中的任何两个节点之间不具有换乘边;基于所述公交线网图,进行公交路径规划。

另一方面,本说明书的实施例提供了一种用于公交路径规划的装置,包括:确定单元,用于确定第一站点是n条线路的公共站点,其中,n为大于1的正整数;生成单元,用于生成公交线网图;其中,所述公交线网图包括所述n条线路和第一虚拟节点,所述第一站点由分别位于所述n条线路中的n个节点来表示,所述n个节点各自与所述第一虚拟节点之间具有换乘边,所述n个节点中的任何两个节点之间不具有换乘边;规划单元,用于基于公交线网图,进行公交路径规划。

另一方面,本说明书的实施例提供了一种计算设备,包括:至少一个处理器;与所述至少一个处理器进行通信的存储器,其上存储有可执行指令,所述可执行指令在被所述至少一个处理器执行时使得所述至少一个处理器实现上述方法。

可见,在该技术方案中,通过使用不同的节点来表示多条线路的公共站点,能够在公交线网图中有效地描述各条线路之间的差异性。而且,由于在表示公共站点的各个节点与虚拟节点之间具有换乘边,而表示公共站点的各个节点之间不具有直接的换乘边,所以不仅能够准确地表示各条线路在公共站点之间的换乘情况,而且能够极大地减少换乘边的数量,有效地简化公交线网图的结构。这样,在需要添加线路或修改线路时,也能够极大地减少处理工作量,从而有利于高效地进行公交路径规划。

附图说明

通过结合附图对本说明书的实施例的更详细的描述,本说明书的实施例的上述以及其它目的、特征和优势将变得更加明显,其中,在本说明书的实施例中,相同的附图标记通常代表相同的元素。

图1a示出了一种简单的场景的示意图。

图1b示出了针对图1a的场景构建的公交线网图的一个例子的示意图。

图1c示出了针对图1a的场景构建的公交线网图的另一例子的示意图。

图1d示出了公交线网图的另一例子的示意图。

图2是根据一个实施例的用于公交路径规划的方法的示意性流程图。

图3a是根据一个实施例的公交线网图的局部示意图。

图3b是根据另一实施例的公交线网图的局部示意图。

图3c是根据另一实施例的公交线网图的局部示意图。

图4是根据一个实施例的用于公交路径规划的装置的示意框图。

图5是根据一个实施例的用于公交路径规划的计算设备的硬件结构图。

具体实施方式

现在将参考各实施例讨论本文描述的主题。应当理解的是,讨论这些实施例仅是为了使得本领域技术人员能够更好地理解并且实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离权利要求书的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个实施例可以根据需要,省略、替换或者添加各种过程或组件。

公交线网图可以表示公交网络的连通图。在公交线网图中,可以通过节点来表示公交巴士或地铁的站点。节点之间可以通过连线进行连接,这种连线可以称为边。边可以表示站点之间运行的公交线路。边还可以具有权重,权重可以表示站点之间的距离或运行时长。由于公交线路都具有方向性,因此边可以是具有方向性的连线。

随着公共交通的发展,公交线路日益复杂,这可能导致公交线网图也变得越来越复杂。例如,不同的公交线路可能具有公共站点,这样,这些线路之间可以通过公共站点进行换乘,这种情况可以被称为同站换乘。在公交线网图中,为了表示出这种换乘情况,可能会增加图的复杂度。

在第一种实现方式中,在公交线网图中,可以使用一个节点来表示不同线路的公共站点,那么这些线路可能会共享公共站点的边。在这种情况下,可能无法在公交线网图中体现出不同线路的差异性。例如,对于快速公交和普通公交而言,虽然经过两个相同的站点,但是其在这两个站点之间的运行时长是不同的,而共享的边是无法表达这种差异的。再例如,不同线路的发车间隔可能不同,等候时间也可能不同,那么对于同站换乘的情况,共享的边也无法表达出不同线路的等候时间。

在第二种实现方式中,在公交线网图中,可以使用不同的节点来表示各条线路的站点。对于能够进行线路换乘的站点,可以在对应节点之间添加换乘边。

为了便于说明,下面通过具体例子进行说明。应当理解的是,在下面的图1a-1c中,为了便于描述,示出了一定数量的线路和站点,然而,应当理解的是,在不同的场景中可以存在不同数量的线路和站点。

图1a示出了一种简单的场景的示意图。在图1a的场景中,示出了2条线路,每条线路具有4个站点。例如,线路1可以具有站点1a、2a、3a和4a,线路2可以具有站点1b、2a、3a和4b。可见,线路1和线路2可以具有公共站点2a和3a,即线路1和线路2共享站点2a和3a。

对于图1a的场景,可以采用上述两种方式来构建公交线网图。

图1b示出了针对图1a的场景构建的公交线网图的一个例子的示意图。

图1b示出的公交线网图110可以是使用上述第一种实现方式来构建的。即,每个公共站点使用一个节点来表示。

如图1b所示,在公交线网图110中,线路1中的站点1a、2a、3a和4a可以使用节点a、b、c和d来表示,线路2中的站点1b、2a、3a和4b可以使用节点e、b、c和f来表示。可见,线路1和线路2共享的站点2a可以使用一个节点b来表示,线路1和线路2共享的站点3a可以使用一个节点c来表示。相应地,线路1和线路2也共享节点b和c之间的边。

由于线路1和线路2共享节点b和c之间的边,所以公交线网图110无法描述线路1和线路2在节点b和c之间的运行时间的差异性。此外,在节点b表示的站点2a或节点c表示的站点3a处,可以在线路1和线路2之间进行换乘。但是,在公交线网图110中,无法描述在节点b或节点c处进行换乘时的换乘时间,即线路1或线路2的等待时间。

图1c示出了针对图1a的场景构建的公交线网图的另一例子的示意图。

图1c示出的公交线网图120可以是使用上述第二种实现方式来构建的。即,每条线路的站点都使用不同的节点来表示。

如图1c所示,在公交线网图120中,线路1中的站点1a、2a、3a和4a可以使用节点a、b1、c1和d来表示,线路2中的站点1b、2a、3a和4b可以使用节点e、b2、c2和f来表示。可见,针对线路1和线路2,可以分别使用节点b1和b2来表示线路1和线路2共享的站点2a。此外,针对线路1和线路2,可以分别使用节点c1和c2来表示线路1和线路2共享的站点3a。

由于在站点2a或3a处,可以在线路1和线路2之间进行换乘。因此,可以在节点b1和b2之间添加换乘边(即,节点b1和b2之间的两条具有方向性的连线121和122),并且可以在节点c1和c2之间添加换乘边(即,节点c1和c2之间的两条具有方向性的连线123和124),从而表示这种同站换乘情况。

在这种公交线网图120中,节点之间的边的权重可以明确地表示在相应线路中站点之间的距离或运行时长。另外,由于通过不同节点来表示公共站点,所以这些节点之间的换乘边的权重可以描述换乘时间。例如,换乘边121的权重可以描述在节点b1表示的站点2a处,从线路1换乘到线路2的换乘时间;换乘边122的权重可以描述在节点b1表示的站点2a处,从线路2换乘到线路1的换乘时间。对于换乘边123和124也是类似的情况。

虽然这种实现方式解决了上述第一种实现方式中存在的问题,但是通过这种方式构建的公交线网图的结构相对复杂。例如,当很多线路共享同一站点时,由于换乘的组合方式很多,所以需要引入很多换乘边,这会导致公交线网图变得非常复杂,不易管理。而且,在需要添加线路或修改线路时处理工作量也较大。

为了说明这种情况,图1d示出了公交线网图的另一例子的示意图。

在图1d中,假设4条线路共享一个站点。在公交线网图中,可以使用4个节点g1、g2、g3和g4来表示该站点。可以在节点g1、g2、g3和g4之间添加换乘边,以便表示4条线路之间可以在共享的站点处进行换乘。

应当理解的是,为了便于说明,图1d仅仅示出了节点g1、g2、g3和g4以及它们之间的换乘边,而并没有示出完整的公交线网图。

如图1d所示,对于4条线路共享一个站点的情况,需要使用12条换乘边。那么,假设共享同一站点的线路数量为k,则换乘边的数量将为k*(k-1)。可见,随着公交线路日益增多,具有同一公共站点的线路数量可能非常多,这样,公交线网图会非常复杂,不仅不易管理,而且在需要更改线路或添加线路时工作量也是非常大的。

对此,本说明书提供了一种用于公交路径规划的技术方案。在该技术方案中,可以确定第一站点是n条线路的公共站点,其中,n为大于1的正整数。然后,生成公交线网图。该公交线网图可以包括上述n条线路和第一虚拟节点。第一站点可以由分别位于n条线路中的n个节点来表示。n个节点可以各自与第一虚拟节点之间具有换乘边,而n个节点中的任何两个节点之间不具有换乘边。

具体而言,在所生成的公交线网图中,每条线路的站点可以使用不同的节点来表示。那么,对于n条线路共享的第一站点而言,可以使用n个节点来表示。由于n条线路之间可以通过第一站点进行换乘,为了在公交线网图中表示出这种情况,可以添加第一虚拟节点。表示第一站点的n个节点可以分别与第一虚拟节点之间具有换乘边,而n个节点中的任何两个节点之间不具有换乘边。

显然,在该技术方案中,通过引入虚拟节点,同站换乘边的数量变为2n。这样,不仅能够在公交线网图中描述不同线路之间的差异以及换乘信息(比如换乘时间),而且能够简化公交线网图,从而便于管理。此外,在需要添加线路或修改线路时,也能够极大地减少工作量。

之后,可以基于所生成的公交线网图,进行公交路径规划。例如,可以结合用户的出行数据(比如出发站点和到达站点),基于公交线网图,确定两个站点之间的最短路径,作为用户的模拟出行线路。这样,通过分析得到大量用户的模拟出行路线,可以确定不同出行线路上的估计客流量。由此,可以进一步合理地规划公交路径,比如,调整站点、公交运行时间或发车频次、添加线路等等。

图2是根据一个实施例的用于公交路径规划的方法的示意性流程图。

如图2所示,在步骤202中,可以确定第一站点是n条线路的公共站点,其中,n为大于1的正整数。

在步骤204中,可以生成公交线网图。

其中,该公交线网图可以包括上述n条线路和第一虚拟节点。第一节点可以由分别位于上述n条线路中的n个节点来表示。n个节点可以各自与第一虚拟节点之间具有换乘边,而n个节点中的任何两个节点之间不具有换乘边。

在步骤206中,可以基于所生成的公交线网图,进行公交路径规划。

可见,在该技术方案中,通过使用不同的节点来表示多条线路的公共站点,能够在公交线网图中有效地描述各条线路之间的差异性。而且,由于在表示公共站点的各个节点与虚拟节点之间具有换乘边,而表示公共站点的各个节点之间不具有直接的换乘边,所以不仅能够准确地表示各条线路在公共站点之间的换乘情况,而且能够极大地减少换乘边的数量,有效地简化公交线网图的结构。这样,在需要添加线路或修改线路时,也能够极大地减少处理工作量。

除了同站换乘的情况,可能还存在异站换乘的情况。异站换乘可以是指线路之间换乘时需要通过两个不同的站点。例如,从站点1步行到站点2,从而换乘经过站点2的线路。在公交线网图中,对于异站换乘,可以通过在相应的节点之间添加换乘边来表示。比如,可以使用节点1表示站点1,节点2表示站点2。在节点1和节点2之间可以添加换乘边,从而表示经由站点1的线路与经由站点2的线路之间的换乘情况。下面将针对异站换乘情况进行描述。

在一个实施例中,可以确定第一站点和第二站点之间能够进行线路换乘。第二站点可以属于与上述n条线路不同的第二线路,第二站点可以是非公共站点。

在步骤204中,所生成的公交线网图还可以包括第二线路。第二站点可以由位于第二线路中的第二节点来表示。为了表示异站换乘情况,第一虚拟节点与第二节点之间可以具有换乘边。这样,仅需要引入两条异站换乘边来表示n条线路与第二线路之间的换乘情况。

然而,如果采用上文的第二种实现方式来生成公交线网图,则表示第一站点的n个节点与第二节点之间都需要添加异站换乘边,那么将引入2n条异站换乘边。

可见,通过引入虚拟节点,能够极大地减少公交线网图中的异站换乘边的数量,从而简化公交线网图的结构,便于进行管理。

在另一实施例中,可以确定第一站点和第三站点之间能够进行线路换乘。第三站点可以是与上述n条线路不同的m条线路的公共站点,m为大于1的正整数。

在步骤204中,所生成的公交线网图还可以包括m条线路和第二虚拟节点。第三站点可以由分别位于m条线路中的m个节点来表示,m个节点可以各自与第二虚拟节点之间具有换乘边,而m个节点中的任何两个节点之间不具有换乘边。为了表示第一站点和第三站点之间的异站换乘情况,第一虚拟节点和第二虚拟节点之间可以具有换乘边。这样,仅需要引入两条异站换乘边来表示上述n条线路和上述m条线路之间的换乘情况。

在这种情况下,如果采用上文的第二种实现方式来生成公交线网图,则需要在n个节点和m个节点之间都添加异站换乘边,这样异站换乘边的数量将是2*n*m。

可见,在该实施例中,通过引入虚拟节点,能够极大地减少公交线网图中的异站换乘边的数量,从而有效地简化公交线网图,便于进行管理。

可以理解的是,可以在所生成的公交线网图中包括各个边的权重。例如,可以将权重标注在相应的边处。

为了便于理解,下面将结合具体例子进行描述。应当明白的是,这些例子仅是为了帮助本领域技术人员更好地理解本说明书的技术方案,而并不限制其范围。

图3a是根据一个实施例的公交线网图的局部示意图。

在图3a的场景中,假设4条线路共享站点1。在所生成的公交线网图中,针对这4条线路,可以分别使用节点h1、h2、h3和h4来表示站点1。此外,可以添加虚拟节点h’。

为了表示站点1的同站换乘情况,如图3a所示,节点h1、h2、h3、h4可以各自与虚拟节点h’之间具有换乘边,而节点h1、h2、h3、h4中的任何两个节点之间都不具有换乘边。可见,在图3a的场景中,仅需要8条换乘边来表示同站换乘情况。

另外,换乘边的权重可以描述换乘时间。例如,从节点h1到虚拟节点h’的换乘边的权重可以表示节点h1所在线路的下车时长。下车时长可以是根据实际情况或经验等因素而预设的值,比如1分钟。从虚拟节点h’到节点h1的换乘边的权重可以表示节点h1所在线路的等候时间。

可见,通过这种方式,不仅清楚地表示出同站换乘情况,而且有效地减少了同站换乘边的数量,极大地简化了公交线网图。

应当明白的是,为了便于说明,图3a仅示出了相关的节点和换乘边,而并未示出完整的公交线网图。

另外,应当理解的是,为了简化附图,在图3a中并未示出各个边的权重。但是,在实际的公交线网图中,可以包括各个边的权重。例如,可以将每个边的权重标注在该边的附近。

图3b是根据另一实施例的公交线网图的局部示意图。

在图3b的场景中,假设4条线路共享站点1。在所生成的公交线网图中,针对这4条线路,可以分别使用节点h1、h2、h3和h4来表示站点1。此外,可以添加虚拟节点h’。为了表示站点1的同站换乘情况,节点h1、h2、h3、h4可以各自与虚拟节点h’之间具有换乘边,而节点h1、h2、h3、h4中的任何两个节点之间都不具有换乘边。

此外,假设站点1和站点2之间可以进行异站换乘。站点2是非公共站点。站点2可以使用节点i来表示。

为了表示站点1和站点2之间的异站换乘情况,如图3b所示,虚拟节点h’与节点i之间可以具有异站换乘边。可见,在图3b的场景中,仅需要2条换乘边来表示这种异站换乘情况。

此外,异站换乘边的权重可以描述从一个站点到另一站点的时间(比如,通过步行、骑自行车等方式)。例如,从虚拟节点h’到节点i的换乘边的权重可以表示从站点1到站点2的时间,而从节点i到虚拟节点h’的换乘边的权重可以表示从站点2到站点1的时间。

可见,通过这种方式,不仅清楚地表示出同站换乘和异站换乘情况,而且有效地减少了换乘边的数量,极大地简化了公交线网图。

应当明白的是,为了便于说明,图3b仅示出了相关的节点和换乘边,而并未示出完整的公交线网图。

另外,应当理解的是,为了简化附图,在图3b中并未示出各个边的权重。但是,在实际的公交线网图中,可以包括各个边的权重。例如,可以将每个边的权重标注在该边的附近。

图3c是根据另一实施例的公交线网图的局部示意图。

在图3c的场景中,假设4条线路共享站点1。在所生成的公交线网图中,针对这4条线路,可以分别使用节点h1、h2、h3和h4来表示站点1。此外,可以添加虚拟节点h’。为了表示站点1的同站换乘情况,节点h1、h2、h3、h4可以各自与虚拟节点h’之间具有换乘边,而节点h1、h2、h3、h4中的任何两个节点之间都不具有换乘边。

此外,在图3c的场景中,假设4条线路共享站点3。在所生成的公交线网图中,针对这4条线路,可以分别使用节点j1、j2、j3和j4来表示站点3。此外,可以添加虚拟节点j’。为了表示站点3的同站换乘情况,节点j1、j2、j3和j4可以各自与虚拟节点j’之间具有换乘边,而节点j1、j2、j3和j4中的任何两个节点之间都不具有换乘边。

此外,假设站点1和站点3之间可以进行异站换乘。

为了表示站点1和站点3之间的异站换乘情况,如图3b所示,虚拟节点h’与虚拟节点j’之间可以具有异站换乘边。可见,在图3b的场景中,仅需要2条换乘边来表示这种异站换乘情况。

此外,异站换乘边的权重可以描述从一个站点到另一站点的时间(比如,通过步行、骑自行车等方式)。例如,从虚拟节点h’到虚拟节点j’的换乘边的权重可以表示从站点1到站点3的时间,而从虚拟节点j’到虚拟节点h’的换乘边的权重可以表示从站点3到站点1的时间。

可见,通过这种方式,不仅清楚地表示出同站换乘和异站换乘情况,而且有效地减少了换乘边的数量,极大地简化了公交线网图。

应当明白的是,为了便于说明,图3c仅示出了相关的节点和换乘边,而并未示出完整的公交线网图。

另外,应当理解的是,为了简化附图,在图3c中并未示出各个边的权重。但是,在实际的公交线网图中,可以包括各个边的权重。例如,可以将每个边的权重标注在该边的附近。

图4是根据一个实施例的用于公交路径规划的装置的示意框图。

如图4所示,装置400可以包括确定单元402、生成单元404和规划单元406。

确定单元402可以确定第一站点是n条线路的公共站点,其中,n为大于1的正整数。生成单元404可以生成公交线网图。公交线网图包括n条线路和第一虚拟节点,第一站点由分别位于n条线路中的n个节点来表示,n个节点各自与第一虚拟节点之间具有换乘边,n个节点中的任何两个节点之间不具有换乘边。规划单元406可以基于公交线网图,进行公交路径规划。

可见,在该技术方案中,通过使用不同的节点来表示多条线路的公共站点,能够在公交线网图中有效地描述各条线路之间的差异性。而且,由于在表示公共站点的各个节点与虚拟节点之间具有换乘边,而表示公共站点的各个节点之间不具有直接的换乘边,所以不仅能够准确地表示各条线路在公共站点之间的换乘情况,而且能够极大地减少换乘边的数量,有效地简化公交线网图的结构。这样,在需要添加线路或修改线路时,也能够极大地减少处理工作量。

在一个实施例中,确定单元402还可以确定第一站点和第二站点之间能够进行线路换乘,其中,第二站点属于与n条线路不同的第二线路,第二站点是非公共站点。

生成单元404生成的公交线网图还可以包括第二线路,第二站点由位于第二线路中的第二节点来表示,第一虚拟节点与第二节点之间具有换乘边。

在另一实施例中,确定单元402还可以确定第一站点和第三站点之间能够进行线路换乘,其中,第三站点是与n条线路不同的m条线路的公共站点,m为大于1的正整数。

生成单元404生成的公交线网图还可以包括m条线路和第二虚拟节点,第三站点由分别位于m条线路中的m个节点来表示,m个节点各自与第二虚拟节点之间具有换乘边,m个节点中的任何两个节点之间不具有换乘边,第一虚拟节点和第二虚拟节点之间具有换乘边。

装置400的各个单元可以执行图2-3c的方法实施例中的相应步骤,因此,为了描述的简洁,装置400的各个单元的具体操作和功能此处不再赘述。

上述装置400可以采用硬件实现,也可以采用软件实现,或者可以通过软硬件的组合来实现。例如,装置400在采用软件实现时,其可以通过其所在设备的处理器将存储器(比如非易失性存储器)中对应的可执行指令读取到内存中运行来形成。

图5是根据一个实施例的用于公交路径规划的计算设备的硬件结构图。如图5所示,计算设备500可以包括至少一个处理器502、存储器504、内存506和通信接口508,并且至少一个处理器502、存储器504、内存506和通信接口508经由总线510连接在一起。至少一个处理器502执行在存储器504中存储或编码的至少一个可执行指令(即,上述以软件形式实现的元素)。

在一个实施例中,在存储器504中存储的可执行指令在被至少一个处理器502执行时,使得计算设备实现以上结合图2-3c描述的各种过程。

计算设备500可以采用本领域任何适用的形式来实现,例如,其包括但不限于台式计算机、膝上型计算机、智能电话、平板计算机、消费电子设备、可穿戴智能设备等等。

本说明书的实施例还提供了一种机器可读存储介质。该机器可读存储介质可以存储有可执行指令,可执行指令在被机器执行时使得机器实现上面参照图2-3c描述的方法实施例的具体过程。

例如,机器可读存储介质可以包括但不限于随机存取存储器(randomaccessmemory,ram)、只读存储器(read-onlymemory,rom)、电可擦除可编程只读存储器(electrically-erasableprogrammableread-onlymemory,eeprom)、静态随机存取存储器(staticrandomaccessmemory,sram)、硬盘、闪存等等。

应当理解的是,本说明书中的各个实施例均采用递进的方式来描述,各个实施例之间相同或相似的部分相互参见即可,每个实施例重点说明的都是与其它实施例的不同之处。例如,对于上述关于装置的实施例、关于计算设备的实施例以及关于机器可读存储介质的实施例而言,由于它们基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

上文对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

应当理解的是,对于本领域普通技术人员来说,对本说明书中的实施例进行的各种修改将是显而易见的,并且可以在不脱离权利要求书的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1