一种求解旅游行程规划问题的新分支定界方法

文档序号:30096215发布日期:2022-05-18 10:56阅读:121来源:国知局
一种求解旅游行程规划问题的新分支定界方法
1决策变量z
ijm
(当游客i访问景点j时占用了资源n时为1,否则为0),0-1决策变量q
iljm
(在景点j时对于资源m,当游客i先于游客j被服务时为1,否则为0);s
ij
为游客i在景点j的起始服务时间;u
ij
是用于防止回环的辅助变量;tt
jk
.为景点j和k之间的旅行时间,r
ik
是游客i游玩景点k的效用;scj(为旅游资源的总负荷;stj为景点k的服务时间;tli.为游客i的总时长;n和 h为游客总数和景点的综述。
15.步骤s32:建立如下的总效用最大化优化模型(本模型为线性模型,可以用一般的求解器如cplex进行求解):
[0016][0017]
s.t.
[0018][0019][0020][0021][0022][0023][0024][0025][0026][0027][0028][0029][0030]
所述步骤s4所包括的新分支定界算法进一步包括如下步骤:
[0031]
步骤s41:构造算法的数据结构,具体如下:
[0032]
每个解采用n+h个部分排列来表示n个游客和h个景点之间的联系。每个游客从起点(景点0)出发,终止于终点(景点h+1)。每个游客的旅游路径用tk(k=1,2,...,n)表示,即
表示为一个景点的排列。因为资源限制约束,每个景点必须按照一定的次序来服务游客,这可以用一个游客排列来表示,即r
l
(l=1,2,...,h)。当一个游客访问一个景点时,他在旅游路径和游客排列上讲占用一个位置。例如,给定n=2和h=6,图1给出了一个解的表示反感。其中,t1和t2分别表示两个游客的旅游路径。因为两个游客都访问景点5或景点2,因此两个游客在景点5或景点2将产生队列,也存在一个排队的次序。 r5和r2表示了在景点5或景点2上的游客排列,即排队顺序。在图 1中,t2中的2表示景点2,r2中的的2表示游客2。游客2访问景点5时,他在游客路径(t2)中的第二个位置,在游客排列(r5)中的第一个位置。
[0033]
步骤s42:算法的分支过程具体如下:
[0034]
本发明的新分支定界算法依次为每个游客规划一条旅游路线,规划顺序对最终结果没有影响,因为所有可能的路线都会被测试。新分支定界算法按照先来先服务的基本原则为每个游客分配旅游路径,在每次迭代中,算法按照从小到大的序号从当前游客未访问的景点中选择一个景点。游客可以选择在本次迭代中访问选定的景点并生成分支。如果当前游客选择参观选定的景点,则算法进入下一次迭代;否则选择下一个景点,并生成一个新分支。如果当前游客选择不访问最后一个景点或已访问所有景点,则游客访问终点,算法开始为下一个游客分配路线。例如,给定n=2和h=2,图2中显示了算法为游客1 开发路线的过程。游客1的最大分支数为三个时才能拥有完整的路径。算法实现时,可以采用递归来实现分支。
[0035]
步骤s43:算法的定界过程如下:
[0036]
分支定界算法的效率主要取决于定界即剪枝的效率。本发明的新分支定界算法采取了与传统分支定界算法不同的思路,具体如下:当第p个游客的路径已经分配结束后,算法计算如下线性整数规划模型 (本模型为线性模型,可以用一般的求解器如cplex进行求解),用来在分支过程中中止没有效率的分支(即规划子问题)。
[0037][0038]
subject to:
[0039][0040][0041][0042][0043][0044][0045]
[0046][0047][0048][0049][0050][0051]
其中表示前p个游客已经指派方案确定时所对应的决策变量取值。
[0052]
求解上述混合线性整数规划模型,如果求解器无解,或当前对应的上界小于当前最好解,或者已经分配完了所有的游客,则算法回溯;否则算法继续为下一个游客指派路径。
[0053]
与现有技术相比,本发明从综合考虑全域旅游的角度为游客解决旅游路线规划问题,通过采用本发明的技术方案,可以为游客优化旅游路线规划,有助于提高旅游旅游服务系统的运营效率,减少游客的排队时间,提升游客的满意度。
附图说明
[0054]
图1为本发明的算法解的数据结构示意图;
[0055]
图2为本发明的算法的分支过程示意图。
[0056]
附图说明
[0057]
下面结合附图对本发明的具体实施方式做详细说明。
[0058]
参见图1和图2为一种求解旅游行程规划问题的新分支定界方法,具体包括如下步骤:
[0059]
步骤s1:在规划起始时刻之前采集所有游客的信息,其中,采集的游客信息至少包括每位游客的旅游总时长,每位游客在接受每个景点的服务后所能获得的效用等;
[0060]
步骤s2:在算法运行之前,确定算法计算所需的参数;其中主要包括每个景点服务一位游客所需的服务时间,每个景点的资源约束,即每个景点能够同时服务的游客的数量,所有任意两个景点之间的旅行时间;
[0061]
步骤s3:以所有游客的总效用为目标函数,建立混合整数线性规划模型;
[0062]
步骤s4:对上述优化模型,设计了新分支定界算法进行求解,最终得到游客总效用最大的旅游路线规划方案;
[0063]
所述s3中,混合整数线性规划模型进一步定义如下:
[0064]
步骤s31:定义0-1决策变量x
ijk
(当游客i选择从景点k到景点 j时为1,否则为0),0-1决策变量z
ijm
(当游客i访问景点j时占用了资源n时为1,否则为0),0-1决策变量q
iljm
(在景点j时对于资源m,当游客i先于游客j被服务时为1,否则为0);s
ij
为游客 i在景点j的起始服务时间;u
ij
是用于防止回环的辅助变量;tt
jk
.为景点j和k之间的旅行时间,r
ik
是游客i游玩景点k的效用;scj(为旅游资源的总负荷;stj为景点k的服务时间;tli.为游客i的总时长;n和 h为游客总数和景点的综述。
[0065]
步骤s32:建立如下的总效用最大化优化模型(本模型为线性模型,可以用一般的求解器如cplex进行求解):
[0066][0067]
s.t.
[0068][0069][0070][0071][0072][0073][0074][0075][0076][0077][0078][0079][0080]
所述步骤s4所包括的新分支定界算法进一步包括如下步骤:
[0081]
步骤s41:构造算法的数据结构,具体如下:
[0082]
每个解采用n+h个部分排列来表示n个游客和h个景点之间的联系。每个游客从起
点(景点0)出发,终止于终点(景点h+1)。每个游客的旅游路径用tk(k=1,2,...,n)表示,即表示为一个景点的排列。因为资源限制约束,每个景点必须按照一定的次序来服务游客,这可以用一个游客排列来表示,即r
l
(l=1,2,...,h)。当一个游客访问一个景点时,他在旅游路径和游客排列上讲占用一个位置。例如,给定n=2和h=6,图1给出了一个解的表示反感。其中,t1和t2分别表示两个游客的旅游路径。因为两个游客都访问景点5或景点2,因此两个游客在景点5或景点2将产生队列,也存在一个排队的次序。 r5和r2表示了在景点5或景点2上的游客排列,即排队顺序。在图 1中,t2中的2表示景点2,r2中的的2表示游客2。游客2访问景点5时,他在游客路径(t2)中的第二个位置,在游客排列(r5)中的第一个位置。
[0083]
步骤s42:算法的分支过程具体如下:
[0084]
本发明的新分支定界算法依次为每个游客规划一条旅游路线,规划顺序对最终结果没有影响,因为所有可能的路线都会被测试。新分支定界算法按照先来先服务的基本原则为每个游客分配旅游路径,在每次迭代中,算法按照从小到大的序号从当前游客未访问的景点中选择一个景点。游客可以选择在本次迭代中访问选定的景点并生成分支。如果当前游客选择参观选定的景点,则算法进入下一次迭代;否则选择下一个景点,并生成一个新分支。如果当前游客选择不访问最后一个景点或已访问所有景点,则游客访问终点,算法开始为下一个游客分配路线。例如,给定n=2和h=2,图2中显示了算法为游客1 开发路线的过程。游客1的最大分支数为三个时才能拥有完整的路径。算法实现时,可以采用递归来实现分支。
[0085]
步骤s43:算法的定界过程如下:
[0086]
分支定界算法的效率主要取决于定界即剪枝的效率。本发明的新分支定界算法采取了与传统分支定界算法不同的思路,具体如下:当第p个游客的路径已经分配结束后,算法计算如下线性整数规划模型 (本模型为线性模型,可以用一般的求解器如cplex进行求解),用来在分支过程中中止没有效率的分支(即规划子问题)。
[0087][0088]
subject to:
[0089][0090][0091][0092][0093][0094][0095]
[0096][0097][0098][0099][0100][0101]
其中表示前p个游客已经指派方案确定时所对应的决策变量取值。
[0102]
求解上述混合线性整数规划模型,如果求解器无解,或当前对应的上界小于当前最好解,或者已经分配完了所有的游客,则算法回溯;否则算法继续为下一个游客指派路径。
[0103]
下面通过随机产生案例来进行验证性实验。随机生成10个7景点10游客的案例。景点位置在100
×
100的网格图中随机生成,景点效用的范围是[1,20],服务时间的范围是[1,50],起点和终点均在网格图的(0,0)点,景点的资源限制时2,tli按照如下公式生成:
[0104][0105]
其中t为任意两个景点之间距离之和;是0到1之间的随机数;μ1和μ2是调整参数。
[0106]
表1.新分支定界算法与传统方法的比较结果
[0107][0108]
因为旅游规划问题是np难的,这里只能对小规模案例进行测试和验证。从表1的计
算结果可以看到本发明的新分支定界算法与 cplex求解以及现有分支定界算法的性能比较。其中,现有分支定界算法指的是wang et al.’s(2018)(wang,w.,lau,h.c.,&cheng,s.f. (2018).exact and heuristic approaches for the multi-agent orienteeringproblem with capacity constraints.paper presented at the computationalintelligence,ieee symposium series on computational intelligence (ieee ssci),honolulu,hi,nov 27-dec 01,2017.)中给出的分支定界算法。
[0109]
从表1中可以看到,三种精确算法都可以获得每个问题的全局最优解。本发明的新分支定界算法相对于cplex的平均改进率为 83.53%,说明比求解器直接求解效果要好。本发明的新分支定界算法相对于现有分支定界算法的平均改进率为30.79%,说明本发明的新分支定界算法具有很高的改进率。
[0110]
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明的范围内。本发明要求的保护范围由所附的权利要求书及其等同物界定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1