行程规划方法、装置、介质及电子设备与流程

文档序号:17824582发布日期:2019-06-05 22:32阅读:156来源:国知局
行程规划方法、装置、介质及电子设备与流程

本发明涉及数据处理技术领域,具体而言,涉及一种行程规划方法、装置、介质及电子设备。



背景技术:

随着人们生活水平的提高,旅游出行成为常态。目前,用户通常需要根据时间和费用的要求自行查询规划旅行路线,比如规划游览哪些景点、景点的游览顺序、住哪些酒店、去哪儿吃饭等,这些前期的准备工作需要花费很多精力和时间。

同时,虽然跟团游能够在导游的带领下出行,解决了自己规划旅行路线的问题,但是跟团游往往会失去旅行的一些乐趣。

因此,如何能够根据用户的需求自动向用户规划行程成为亟待解决的技术问题。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。



技术实现要素:

本发明实施例的目的在于提供一种行程规划方法、装置、介质及电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。

本发明实施例的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本发明的实践而习得。

根据本发明实施例的第一方面,提供了一种行程规划方法,包括:根据用户输入的行程规划请求,确定用于行程规划的资源约束条件和兴趣约束条件;获取与所述兴趣约束条件相匹配的各个兴趣点的信息;基于所述资源约束条件和所述各个兴趣点的信息进行行程规划。

在本发明的一些实施例中,基于前述方案,基于所述资源约束条件和所述各个兴趣点的信息进行行程规划,包括:基于所述资源约束条件和所述各个兴趣点的信息,从所述各个兴趣点中选取资源消耗总和满足所述资源约束条件的至少一个兴趣点;根据所述至少一个兴趣点的信息进行行程规划。

在本发明的一些实施例中,基于前述方案,基于所述资源约束条件和所述各个兴趣点的信息,从所述各个兴趣点中选取资源消耗总和满足所述资源约束条件的至少一个兴趣点,包括:按照优先级由高到低的顺序,逐个选取所述各个兴趣点;在选取任一兴趣点之后,根据已选取的所有兴趣点的资源消耗总和判断是否满足所述资源约束条件;若确定满足所述资源约束条件,则将所述任一兴趣点作为所述至少一个兴趣点中的一个,并继续选取下一个兴趣点进行判断;若确定不满足所述资源约束条件,则剔除所述任一兴趣点,并继续选取下一个兴趣点,直到所述各个兴趣点全部遍历完毕。

在本发明的一些实施例中,基于前述方案,在选取任一兴趣点之后,根据已选取的所有兴趣点的资源消耗总和判断是否满足所述资源约束条件,包括:对已选取的所有兴趣点进行串线处理,以确定所述已选取的所有兴趣点的最少资源消耗;根据所述最少资源消耗和所述资源约束条件,判断所述已选取的所有兴趣点的资源消耗总和是否满足所述资源约束条件。

在本发明的一些实施例中,基于前述方案,对已选取的所有兴趣点进行串线处理,以确定所述已选取的所有兴趣点的最少资源消耗,包括:基于旅行商问题的解法确定所述已选取的所有兴趣点的行程顺序;根据所述已选取的所有兴趣点的行程顺序、所述已选取的所有兴趣点中每个兴趣点的资源消耗,以及前往所述每个兴趣点的资源消耗,确定所述已选取的所有兴趣点的最少资源消耗。

在本发明的一些实施例中,基于前述方案,基于所述资源约束条件和所述各个兴趣点的信息,从所述各个兴趣点中选取资源消耗总和满足所述资源约束条件的至少一个兴趣点,包括:按照优先级由高到低的顺序,对所述各个兴趣点进行排序;基于二分法在排序后的各个兴趣点中查找目标兴趣点,其中,所述各个兴趣点中优选级高于所述目标兴趣点的兴趣点集合的资源消耗总和满足所述资源约束条件,且所述兴趣点集合和所述目标兴趣点的资源消耗总和不满足所述资源约束条件;将所述兴趣点集合作为所述至少一个兴趣点。

在本发明的一些实施例中,基于前述方案,所述的行程规划方法还包括:获取基于所述资源约束条件和所述各个兴趣点的信息规划的包含至少一个兴趣点的行程安排;根据所述行程安排和预定的出发时间,预测在预定时刻的预定时间偏移范围内用户所在的位置;根据所述位置获取向用户推荐的指定类型的地点,并将获取的地点加入所述行程安排中。

在本发明的一些实施例中,基于前述方案,所述的行程规划方法还包括:在所述用户的出行过程中,获取所述用户的位置信息和对应的时间信息;根据向所述用户规划的行程安排、所述位置信息和所述时间信息,判断所述用户实际的行程进度是否正常;根据所述用户实际的行程进度是否正常,执行相应的操作。

在本发明的一些实施例中,基于前述方案,根据所述用户实际的行程进度是否正常,执行相应的操作,包括:若所述用户实际的行程进度比所述行程安排提前,则根据所述位置信息向所述用户推荐其它兴趣点。

在本发明的一些实施例中,基于前述方案,根据所述用户实际的行程进度是否正常,执行相应的操作,包括:若所述用户实际的行程进度落后于所述行程安排,则根据所述实际的行程进度调整所述行程安排,或根据所述行程安排向用户推荐符合正常进度的兴趣点。

在本发明的一些实施例中,基于前述方案,所述资源约束条件包括时长约束信息和/或费用约束信息;所述兴趣约束条件包括:目的地和/或目的地的指定兴趣点;所述各个兴趣点的信息包括所述各个兴趣点的时长消耗和/或费用消耗,以及所述各个兴趣点的位置信息。

根据本发明实施例的第二方面,提供了一种行程规划装置,包括:确定单元,用于根据用户输入的行程规划请求,确定用于行程规划的资源约束条件和兴趣约束条件;第一获取单元,用于获取与所述兴趣约束条件相匹配的各个兴趣点的信息;处理单元,用于基于所述资源约束条件和所述各个兴趣点的信息进行行程规划。

根据本发明实施例的第三方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中第一方面所述的行程规划方法。

根据本发明实施例的第四方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中第一方面所述的行程规划方法。

在本发明的一些实施例所提供的技术方案中,通过根据用户输入的行程规划请求确定用于进行行程规划的资源约束条件和兴趣约束条件,并获取与兴趣约束条件相匹配的各个兴趣点的信息,以根据资源约束条件和各个兴趣点的信息进行行程规划,使得能够根据用户的需求自动向用户规划行程,解决了现有技术中需要用户自行规划行程而花费较多时间和精力的问题,同时也使得规划的行程能够满足用户的个性化需求。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1示意性示出了根据本发明的第一个实施例的行程规划方法的流程图;

图2示意性示出了图1中所示的步骤s14的具体实现流程图;

图3示意性示出了图2中所示的步骤s142的具体实现流程图;

图4示意性示出了根据本发明的第二个实施例的行程规划方法的流程图;

图5示意性示出了根据本发明的第三个实施例的行程规划方法的流程图;

图6示意性示出了根据本发明的第四个实施例的行程规划方法的流程图;

图7示意性示出了根据本发明的实施例的路径规划算法的流程图;

图8示意性示出了根据本发明的实施例的串线算法的流程图;

图9示意性示出了根据本发明的实施例的整合吃住行的流程图;

图10示意性示出了根据本发明的实施例的实时规划调整的流程图;

图11示意性示出了根据本发明的实施例的行程规划装置的框图;

图12示意性示出了适于用来实现本发明实施例的电子设备的计算机系统的结构示意图。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。

此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。

附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。

图1示意性示出了根据本发明的第一个实施例的行程规划方法的流程图。

参照图1,根据本发明的第一个实施例的行程规划方法,包括:

步骤s12,根据用户输入的行程规划请求,确定用于行程规划的资源约束条件和兴趣约束条件。

在本发明的实施例中,可选地,用户输入的行程规划请求中可以包含用户的个人需求,比如输入资源约束条件、兴趣约束条件等,进而可以根据用户的需求来进行行程规划。其中,若用户输入的行程规划请求中包含了资源约束条件和兴趣约束条件,则可以提取出资源约束条件和兴趣约束条件。若用户输入的行程规划请求中不包含资源约束条件和兴趣约束条件,则可以根据用户的画像(该画像根据用户的历史行为数据确定)来确定这些条件。

在本发明的实施例中,资源约束条件包括时长约束信息(如计划游览的时长)和/或费用约束信息(如预计的游览费用)。兴趣约束条件包括:用户选定的目的地和/或目的地的指定兴趣点。需要说明的是,用户选定的目的地可以是一个或多个城市,也可以是一个或多个国家等;指定兴趣点可以是景点信息,也可以是酒店信息、饭店信息等。

步骤s14,获取与所述兴趣约束条件相匹配的各个兴趣点的信息。

在本发明的实施例中,若兴趣约束条件包含用户选定的目的地,则可以将该目的地的各个景点信息作为相匹配的兴趣点的信息。当然,也可以将目的地的饭店信息、酒店信息等作为相匹配的兴趣点的信息。若兴趣约束条件包含目的地的指定兴趣点,则将这些指定兴趣点作为相匹配的兴趣点;若兴趣约束条件既包含目的地,也包含用户指定的兴趣点,则将用户指定的兴趣点和目的地的相关兴趣点(包括景点、酒店、饭店等)作为相匹配的兴趣点。

需要说明的是:各个兴趣点的信息包括各个兴趣点的时长消耗和/或费用消耗,以及所述各个兴趣点的位置信息。

其中,各个兴趣点的时长消耗可以是在各个兴趣点停留的时长,如浏览景点花费的时长,在饭店吃饭的时长等。各个兴趣点的费用消耗可以是在各个兴趣点花费的费用,如浏览景点花费的费用,在饭店吃饭花费的费用等。在本发明的实施例中,可以根据已经游览过的用户游览每个景点所花费的时长和费用,来确定各个景点的游览时长和游览费用,比如将所有游览过的用户的平均游览时长和平均游览费用作为景点的游览时长和游览费用。

步骤s16,基于所述资源约束条件和所述各个兴趣点的信息进行行程规划。

根据本发明的示例性实施例,参照图2所示,步骤s16可以包括:

步骤s162,基于所述资源约束条件和所述各个兴趣点的信息,从所述各个兴趣点中选取资源消耗总和满足所述资源约束条件的至少一个兴趣点。

步骤s164,根据所述至少一个兴趣点的信息进行行程规划。

以下对图2中所示的步骤s162和步骤s164进行详细说明。

对于步骤s162,本发明实施例提供了如下两种实现方式:

实现方式一:

参照图3所示,步骤s162可以包括:

步骤s1621,按照优先级由高到低的顺序,逐个选取各个兴趣点。

在本发明的实施例中,兴趣点之间的优先级可以是根据用户画像和大众的点评来确定的,比如根据用户的喜好来确定各个兴趣点的优先级,根据各个兴趣点的好评率来确定各个兴趣点的优先级等。此外,若用户指定了兴趣点,则可以将这些兴趣点的优先级设置为最高。

步骤s1622,在选取任一兴趣点之后,根据已选取的所有兴趣点的资源消耗总和判断是否满足所述资源约束条件。

根据本发明的示例性实施例,步骤s1622可以包括:对已选取的所有兴趣点进行串线处理,以确定所述已选取的所有兴趣点的最少资源消耗;根据所述最少资源消耗和所述资源约束条件,判断所述已选取的所有兴趣点的资源消耗总和是否满足所述资源约束条件。

可选地,在对已选取的所有兴趣点进行串线处理时,可以基于旅行商问题的解法来确定已选取的所有兴趣点的行程顺序,进而根据所述已选取的所有兴趣点的行程顺序、所述已选取的所有兴趣点中每个兴趣点的资源消耗,以及前往所述每个兴趣点的资源消耗,确定所述已选取的所有兴趣点的最少资源消耗。

需要说明的是,本发明实施例中所述的资源消耗可以包括时间消耗和/或费用消耗。

步骤s1623,若确定满足所述资源约束条件,则将所述任一兴趣点作为所述至少一个兴趣点中的一个,并继续选取下一个兴趣点进行判断。

步骤s1624,若确定不满足所述资源约束条件,则剔除所述任一兴趣点,并继续选取下一个兴趣点,直到所述各个兴趣点全部遍历完毕。

实现方式一的技术方案使得能够在满足资源约束条件的前提下,尽量为用户安排较多的景点。

实现方式二:

在本发明的实施例中,步骤s162可以包括:按照优先级由高到低的顺序,对所述各个兴趣点进行排序;基于二分法在排序后的各个兴趣点中查找目标兴趣点,其中,所述各个兴趣点中优选级高于所述目标兴趣点的兴趣点集合的资源消耗总和满足所述资源约束条件,且所述兴趣点集合和所述目标兴趣点的资源消耗总和不满足所述资源约束条件;将所述兴趣点集合作为所述至少一个兴趣点。

实现方式二的技术方案能够快速确定选择出的至少一个兴趣点。

需要说明的是,在本发明的实施例中,在查找上述的目标兴趣点时,也可以使用实现方式一中所述的串线处理的方案,以便找到上述兴趣点集合的最佳游览顺序,同时也能够尽量保证兴趣点集合中的兴趣点数量最多。

在本发明的实施例中,对于图2中所示的步骤s164,在选取到至少一个兴趣点之后,可以基于旅行商问题的解法来进行行程规划,比如可以通过双调欧几里得旅行商问题动态算法来进行求解。

参照图4所示,在上述实施例的基础上,本发明实施例的行程规划方法还包括如下步骤:

步骤s402,获取基于所述资源约束条件和所述各个兴趣点的信息规划的包含至少一个兴趣点的行程安排。

在本发明的实施例中,行程安排可以包括各个兴趣点的停留时长、停留时间段等。如景点的游览时长、游览时间段等。

步骤s404,根据所述行程安排和预定的出发时间,预测在预定时刻的预定时间偏移范围内用户所在的位置。

在本发明的实施例中,预定时刻可以是饭点时刻和/或就寝时刻。饭点时刻即为通常需要吃饭的时刻,就寝时刻即为通常需要睡觉的时刻,预定时间偏移范围可以是根据实际情况确定的一个时间范围。比如饭点时刻为中午十二点,预定时间偏移范围为前后半小时,那么可以根据预定的出发时间和至少一个兴趣点的行程安排,预测中午十一点半到中午十二点半期间用户所在的位置。

步骤s406,根据所述位置获取向用户推荐的指定类型的地点,并将获取的地点加入所述行程安排中。

在本发明的实施例中,指定类型的地点可以是饭店或酒店,向用户推荐的饭店和/或酒店可以是评分最高的饭店和/或酒店,也可以是根据用户的喜好确定的饭店和/或酒店。

参照图5所示,在上述实施例的基础上,本发明实施例的行程规划方法还包括如下步骤:

步骤s502,在所述用户的出行过程中,获取所述用户的位置信息和对应的时间信息。

需要说明的是,在获取用户的位置信息和对应的时间信息时,可以是实时获取的,也可以是周期性获取的。

步骤s504,根据向所述用户规划的行程安排、所述位置信息和所述时间信息,判断所述用户实际的行程进度是否正常。

需要说明的是,行程安排中一般都安排了在哪些时间段游览哪些景点,因此可以根据行程安排、用户的位置信息和对应的时间信息来确定用户的实际行程进度是否正常。

步骤s506,根据所述用户实际的行程进度是否正常,执行相应的操作。

在本发明的实施例中,比如若用户实际的行程进度比行程安排提前,则根据所述位置信息向所述用户推荐附近的其它兴趣点;若用户实际的行程进度落后于行程安排,则根据所述实际的行程进度调整行程安排,或根据行程安排向用户推荐符合正常进度的兴趣点;若用户实际的行程进度正常,则可以向用户提供导游等服务。

本发明上述实施例的技术方案使得能够根据用户的需求来自动向用户规划合适的行程安排,不仅能够解决现有技术中需要用户自行规划行程而花费较多时间和精力的问题,而且也使得规划的行程能够满足用户的个性化需求。

以下以资源约束条件为时间和费用,兴趣约束条件为想去的目的地和想玩的景点为例,对本发明实施例的技术方案进行详细说明:

通常情况下,用户出行一般都有两大要素:资源和意愿。资源包括用户的时间、费用;意愿即兴趣,包括用户想去的目的地和想玩的景点。因此本发明实施例的规划算法要做的就是:在用户费用和时间约束下,尽可能使用户意愿价值最大化。因此,参照图6所示,根据本发明的实施例的行程规划方法,包括:

步骤s602,接收用户输入的时间、地点、必去景点和费用要求。

步骤s604,路径规划算法计算符合用户需要的行程单。

步骤s606,输出行程列表。

在上述三个步骤中,重点在于步骤s604,在本发明的实施例中,通过路径规划算法计算符合用户需要的行程单的流程可以如下:

假设目的地景点列表数组为a,a中的每一个景点都满足在用户时间费用要求内至少可以被访问。

在本发明的一个实施例中,将a中的景点按优先级降序排列,路径规划算法开始遍历a:从a中逐个取景点放入c列表,然后对c列表执行串线算法。其中,每从a中取一个元素放入c,都对c中的元素执行一次串线算法,求出花费的最小时间和费用,以便确认是否满足用户的时间和费用约束。如果满足,则继续从a里面取元素;如果不满足,则放弃取出的景点,然后继续从a中取元素,直到将a中的元素全部遍历一遍。

上述算法可以实现尽可能多的景点被安排到用户的行程里面,其时间复杂度为o(n^3)。

上述路径规划算法的流程如图7所示,包括:

步骤s701,提升必去景点优先级。

步骤s702,按优先级排序景点得到a列表。

步骤s703,按顺序从a列表中选一个景点放入c中。

步骤s704,对c中的元素执行串线算法。

步骤s705,判断c中的元素进行串线之后是否满足时间及费用约束,若是,则执行步骤s707;否则,执行步骤s706。

步骤s706,从c中删除最后添加的景点。

步骤s707,判断a中元素是否取完,若是,则执行步骤s708;否则,返回步骤s703。

步骤s708,输出最优的行程列表c。

在本发明的另一个实施例中,路径规划算法的策略可以是:如果a数组中第n+1景点不满足,则中断遍历。这样可以用二分法遍历a,直到找到最大可访问的数组下标,也即找到数组a中的目标景点,该目标景点之前(按照优先级由高到低排序)的所有景点(可以包括该目标景点)花费的最小时间和费用满足用户的事件和费用约束,该算法的复杂度为o(n^2*logn)。

需要说明的是,在处理优先级时,除了根据用户画像和大众点评计算出景点优先级外,还可以处理用户输入的景点的优先级,以及删除的景点的优先级。比如:用户目的地为北京,他输入必去景点为长城和故宫,那么就可以把这两个景点优先级提到最高,然后再进行路径规划。如果为用户规划好景点后,用户有不喜欢的景点,同样也需要降低相应优先级然后再进行路径规划。

此外,在本发明的实施例中,在处理必吃餐厅或必住酒店以及购物等其它非景点时,可以将这些非景点类型临时转变成景点类型,并加入景点规划列表中进行处理。在处理城市间规划或国家间规划时,可以将国家和城市作为一个大景点,加入到景点列表进行规划处理。同样,本发明实施例的路径规划方案也适用于周边游规划,并且可以选择任意时间粒度进行计算和规划。

需要说明的是,在本发明的实施例中,对于景点通常考虑的是游览时间、游览费用、所在位置等,那么在将非景点转换为景点时,可以根据去非景点所花费的时间、费用,以及非景点所在的位置来将非景点转换为景点。

在本发明的实施例中,串线是旅行商问题,在本发明的实施例中使用双调欧几里得问题动态归化算法来进行求解。具体执行步骤如下:

1、输入集合c,例如:集合c中包含景点1、2、3、4、5。

2、按照下式的动态规划转移方程,计算并标记路线序列。假设路线序列为:2、1、4、5、3。

设j>=i

在上述公式中,将集合c中的景点进行排序(具体可以按照景点的位置的x坐标从小到大进行排序),得到从左到右的景点序列,其中i表示第i个景点;j表示第j个景点;k表示第k个景点;c[i,j]表示从景点i到景点1,再从景点1到景点j,遍历景点j左边所有景点的时间消耗;w(i,j)表示景点i直接到景点j的时间消耗。

3、假如起点为1,则还需要将序列进行循环移位变为:1、4、5、3、2。

4、最终串线结果d序列就为1、4、5、3、2。

该过程具体如图8所示,包括:

步骤s801,输入集合c。

步骤s802,双调欧几里得问题动态规划算法进行求解。

步骤s803,记录计算得到的路径。

步骤s804,递归获得路径序列d。

步骤s805,对序列d循环移位起始点到第一个位置。

步骤s806,输出最优路径d。

在实际的应用场景中,用户除了游玩还需要吃住、购物等其它消费和娱乐行为。假如用户要求的总天数为d,一天中游玩时间为t1,吃饭时间为t2,其它为t3,则总时间t=(t1+t2+t3)*d,在构造前述的景点序列c时所用的时间约束为t1*d。

在本发明的实施例中,在构造包含景点的行程之后,还可以在行程中整合吃住,如下所述:

1、遍历序列d,依次取序列d中的景点x加入到序列数组e中。

2、根据e中的景点安排,累加e中的活动时间,同时根据出发时间可以得到一天中游览景点x的时刻。

3、用实际的时间和饭点时间比较,按偏移程度选择当前景点或下个景点附近且满足t2时间的最优饭店,然后加入到e数组中。

4、用同样方法计算是否到傍晚,然后取附近的酒店加入到e数组中,直到遍历完d序列。

整合吃住的具体流程如图9所示,包括以下步骤:

步骤s901,遍历景点行程序列d。

步骤s902,从d中取一个景点x放入e中。

步骤s903,判断d中元素是否取完,若是,则执行步骤s909;否则,执行步骤s904。

步骤s904,累加得到当前时间t=路程+景点游玩时间。

步骤s905,t是否在饭点,若是,则执行步骤s906;否则,执行步骤s907。

步骤s906,取景点x附近的最优餐厅加入e中,然后返回步骤s902。

步骤s907,t是否到就寝时间,若是,则执行步骤s908;否则,返回步骤s902。

步骤s908,取景点x附近的最优酒店加入e中,然后返回步骤s902。

步骤s909,输出整合后的行程e。

需要说明的是,在图9中,先判断t是否在饭点,然后再判断t是否到就寝时间,本领域技术人员需要理解的是,此处仅为示例,在本发明的其他实施例中,也可以先判断t是否到就寝时间,再判断t是否在饭点;或者可以同时判断t是否到饭点或就寝时间。

图9所示的技术方案实现了整合吃住行的智能行程规划,极大地提高了用户的使用体验。

当用户按照规划的行程进行出行时,本发明的实施例中还可以根据用户行程的实际进度来进行实时的规划调整,具体思想是:根据用户当前位置和当前时间确定用户是否偏离路线,从而进行实时的行程规划,同时还可以结合景点内的导游服务来提供高质量的出行。具体过程如下:

1、将用户终端返回的位置和当前时间与规划的行程列表e进行比较。

2、判断当前进度是否正常,如果正常就提供导游服务,当然还可以提供其他服务,或者还可以向用户推荐下一个景点及到达下一个景点的交通方式。

3、如果当前进度提前,则执行操作a,比如:推荐附近其它的景点、商场等。

4、如果当前进度落后,则执行操作b,比如:给出到达下个可达景点的路线方案、或者对行程单进行调整等。

对应的流程图如图10所示,包括:

步骤s1001,获取用户位置p和当前时间t。

步骤s1002,将p、t与行程列表e进行比较。

步骤s1003,判断行程进度是否正常,若是,则执行步骤s1004;否则,执行步骤s1005。

步骤s1004,推荐下一个景点和/或到达下一个景点的交通方式,当然还可以提供导游服务等。

步骤s1005,判断行程进度是否提前,若是,则执行步骤s1006;否则,执行步骤s1007。

步骤s1006,推荐附近的休闲娱乐场所,或者推荐附件的其它景点,并返回步骤s1002继续进行比较。

步骤s1007,给出到下个可达景点的路线方案,并返回步骤s1002继续进行比较。

图10所示的技术方案能够实现实时动态地指导用户出行,进而能够向用户提供高质量的出行方案。

此外,本发明实施例的技术方案还提供了一种行程规划装置,具体参照图11所示,该行程规划装置1100包括:确定单元1102、第一获取单元1103和处理单元1104。

具体地,确定单元1102用于根据用户输入的行程规划请求,确定用于行程规划的资源约束条件和兴趣约束条件;第一获取单元1103用于获取与所述兴趣约束条件相匹配的各个兴趣点的信息;处理单元1104用于基于所述资源约束条件和所述各个兴趣点的信息进行行程规划。

在本发明的一些实施例中,基于前述方案,处理单元1104包括:选取单元和规划单元。具体地,所述选取单元用于基于所述资源约束条件和所述各个兴趣点的信息,从所述各个兴趣点中选取资源消耗总和满足所述资源约束条件的至少一个兴趣点;所述规划单元用于根据所述至少一个兴趣点的信息进行行程规划。

在本发明的一些实施例中,基于前述方案,所述选取单元配置为:按照优先级由高到低的顺序,逐个选取所述各个兴趣点;在选取任一兴趣点之后,根据已选取的所有兴趣点的资源消耗总和判断是否满足所述资源约束条件;若确定满足所述资源约束条件,则将所述任一兴趣点作为所述至少一个兴趣点中的一个,并继续选取下一个兴趣点进行判断;若确定不满足所述资源约束条件,则剔除所述任一兴趣点,并继续选取下一个兴趣点,直到所述各个兴趣点全部遍历完毕。

在本发明的一些实施例中,基于前述方案,所述选取单元配置为:对已选取的所有兴趣点进行串线处理,以确定所述已选取的所有兴趣点的最少资源消耗;根据所述最少资源消耗和所述资源约束条件,判断所述已选取的所有兴趣点的资源消耗总和是否满足所述资源约束条件。

在本发明的一些实施例中,基于前述方案,所述选取单元配置为:基于旅行商问题的解法确定所述已选取的所有兴趣点的行程顺序;根据所述已选取的所有兴趣点的行程顺序、所述已选取的所有兴趣点中每个兴趣点的资源消耗,以及前往所述每个兴趣点的资源消耗,确定所述已选取的所有兴趣点的最少资源消耗。

在本发明的一些实施例中,基于前述方案,所述选取单元配置为:按照优先级由高到低的顺序,对所述各个兴趣点进行排序;基于二分法在排序后的各个兴趣点中查找目标兴趣点,其中,所述各个兴趣点中优选级高于所述目标兴趣点的兴趣点集合的资源消耗总和满足所述资源约束条件,且所述兴趣点集合和所述目标兴趣点的资源消耗总和不满足所述资源约束条件;将所述兴趣点集合作为所述至少一个兴趣点。

在本发明的一些实施例中,基于前述方案,还包括:第二获取单元和预测单元。具体地,第二获取单元用于获取基于所述资源约束条件和所述各个兴趣点的信息规划的包含至少一个兴趣点的行程安排;所述预测单元用于根据所述行程安排和预定的出发时间,预测在预定时刻的预定时间偏移范围内用户所在的位置;所述处理单元1104还用于根据所述位置获取向用户推荐的指定类型的地点,并将获取的地点加入所述行程安排中。

在本发明的一些实施例中,基于前述方案,还包括:第三获取单元、判断单元和执行单元。具体地,第三获取单元用于在所述用户的出行过程中,获取所述用户的位置信息和对应的时间信息;所述判断单元用于根据向所述用户规划的行程安排、所述位置信息和所述时间信息,判断所述用户实际的行程进度是否正常;所述执行单元用于根据所述用户实际的行程进度是否正常,执行相应的操作。

在本发明的一些实施例中,基于前述方案,所述执行单元用于在所述用户实际的行程进度比所述行程安排提前时,根据所述位置信息向所述用户推荐其它兴趣点。

在本发明的一些实施例中,基于前述方案,所述执行单元用于在所述用户实际的行程进度落后于所述行程安排时,根据所述实际的行程进度调整所述行程安排,或根据所述行程安排向用户推荐符合正常进度的兴趣点。

在本发明的一些实施例中,基于前述方案,所述资源约束条件包括时长约束信息和/或费用约束信息;所述兴趣约束条件包括:目的地和/或目的地的指定兴趣点;所述各个兴趣点的信息包括所述各个兴趣点的时长消耗和/或费用消耗,以及所述各个兴趣点的位置信息。

下面参考图12,其示出了适于用来实现本发明实施例的电子设备的计算机系统1200的结构示意图。图12示出的电子设备的计算机系统1200仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图12所示,计算机系统1200包括中央处理单元(cpu)1201,其可以根据存储在只读存储器(rom)1202中的程序或者从存储部分1208加载到随机访问存储器(ram)1203中的程序而执行各种适当的动作和处理。在ram1203中,还存储有系统操作所需的各种程序和数据。cpu1201、rom1202以及ram1203通过总线1204彼此相连。输入/输出(i/o)接口1205也连接至总线1204。

以下部件连接至i/o接口1205:包括键盘、鼠标等的输入部分1206;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至i/o接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装入存储部分1208。

特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。在该计算机程序被中央处理单元(cpu)1201执行时,执行本申请的系统中限定的上述功能。

需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的行程规划方法。

例如,所述电子设备可以实现如图1中所示的:步骤s12,根据用户输入的行程规划请求,确定用于行程规划的资源约束条件和兴趣约束条件;步骤s14,获取与所述兴趣约束条件相匹配的各个兴趣点的信息;步骤s16,基于所述资源约束条件和所述各个兴趣点的信息进行行程规划。

又如,所述电子设备可以实现如图2-图10中所示的各个步骤。

应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本发明实施方式的方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

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