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

一种基于价值密度计算的旅游路线规划优化方法

2022-04-09 08:23:13 来源:中国专利 TAG:


1.本发明涉及旅游服务系统技术领域,尤其涉及一种基于价值密度计算的旅游路线规划优化方法。


背景技术:

2.根据世界旅游城市联合会2021年发布的报告,2020年全球旅游总人次降至72.78亿人次,同比下降40.8%。在基准情况下,预计2021年全球旅游总人次达到95.45亿人次,同比增长31.1%。一般来说,游客会单独选择自己喜欢的景点,并确定自己的行程。然而,如果在某些接待能力有限的景点或景点有大量游客,这可能会在特定时间段内造成严重的拥堵问题。因此旅游路线规划者如何根据游客偏好来提高乘客满意度是一个重要的决策问题。
3.目前,国内的主要分为以下几种。一种是不去做任何的路线规划,让游客各自规划自己的路线。这种方式虽然简便,但如果某一个景点对所有游客都吸引力强大,就可能会造成多数游客都优先访问这一景点儿出现旅游拥堵的问题,这一问题在大型节假日期间尤为突出。第二种即是旅行社或旅游软件为每个旅行团规划行程,这种方法虽然进行了最基础的路线规划,但缺乏对每位游客个人偏好的考虑,可能会导致某一些游客无法访问到自己心仪的景点。近年来还兴起了一种旅游路线规划方法,即私人订制的方式。这种方式主要是由有经验的专业人员为游客单独规划旅游路线,但这种方法价格较高,不能推广且主要依靠专业人员的经验来规划,不是一种科学的决策方式。
4.本发明从服务系统的角度解决了旅游路线规划问题,有助于提高旅游服务系统的运营效率,减少游客的排队时间,提升游客的满意度。


技术实现要素:

5.针对现存在的问题,本发明提供了一种基于价值密度计算的旅游路线规划优化方法,考虑到景点服务能力有限情况下进行路线规划,以所有游客总满意度最大为目标函数,建立混合整数线性规划模型,并对模型用变邻域搜索算法进行求解。
6.为解决现有技术存在的问题,本发明的技术方案是:
7.一种基于价值密度计算的旅游路线规划优化方法,包括如下步骤:
8.步骤s1:在规划起始时刻之前采集所有游客的信息,其中,采集的游客信息至少包括每位游客的可用总时长,每位游客在接受完每个景点的服务后所能获得的满意度;
9.步骤s2:在规划起始时刻,确定模型计算所需的参数;其中,该参数包括每个景点服务一位游客所需的时间,每个景点的资源约束,即每个景点能够同时服务的游客的数量,所有景点两两之间的距离;
10.步骤s3:以所有游客的总满意度最大为目标函数,建立混合整数线性规划模型;
11.步骤s4:对上述优化模型,利用变邻域搜索算法进行求解,最终得到游客总满意度最大的旅游路线规划方案;
12.所述s3中,混合整数线性规划模型进一步如下:
13.步骤s31:设置模型假设条件:所有游客都遵从系统规划的路线进行游览,且不会出现插队现象,可以直接从一个景点前往任意另一个景点,不需要途径其他景点,每个景点在服务完一个游客后可以立即服务下一个游客,服务过程中不会出现意外,游客在不同景点间,不同时间段的行程时间时已知的。
14.步骤s32:设置模型中的已知参数的符号及决策变量,具体说明如下:n表示游客的数量,h表示除起点和终点外的景点数量,tli表示游客i的可用时间上限,stj表示景点j服务一个游客所需的时间,scj表示景点j的资源限制,r
ij
表示游客i在景点j接受完服务后能够获得的满意度,tt
jk
表示从景点j出发到达景点k所需的时间, x
ijk
表示游客i是否从景点j出发前往景点k,是则为1,否则为0,是模型决策变量,i=1,2,...,n,j,k=1,2,...,h;
15.步骤s33:根据行程矩阵x
ijk
和步骤s2中预先确定的参数计算模型中的中间变量;其中所述中间变量至少包括游客使用资源的矩阵、游客排队顺序的矩阵、游客在不同景点开始接受服务的时间、用于防止子循环的变量;该步骤s33进一步包括如下步骤:
16.步骤s331:使用资源的矩阵的计算公式为:
[0017][0018]
步骤s332:游客排队顺序的矩阵的计算公式为:
[0019][0020][0021]
步骤s333:游客在不同景点开始接受服务的时间的计算公式为:
[0022][0023][0024]
步骤s334:用于防止子循环的变量的计算公式为:
[0025][0026]
步骤s34:建立游客旅游路线连续性约束及游客的时间约束,对目标函数进行建模,考虑所有游客总满意度最大;该步骤s34进一步包括:
[0027]
步骤s341:所有游客都需要从起点出发并需要到达终点的约束如下:
[0028][0029][0030]
步骤s342:所有游客在任意景点开始接受服务的时间及到达终点的时间小于可用时间的约束如下:
[0031][0032]
[0033]
所述步骤s4所包括的变邻域搜索算法进一步包括如下步骤:
[0034]
步骤s41:生成用于局部搜索的初始解;其中每个游客的行程路线用一条链表示,链每个位置为访问的景点的序号,每个景点的服务顺序用一条链表示,链每个位置为服务的游客的序号,初始化过程中要保证不会产生子循环。之前的初始解生成方式大多采用遍历所有可插入位置和所有可插入景点并计算插入增加满意度和增加时间的比值来选取插入景点及位置。这里,插入的位置只选取每个游客链和景点链的末尾,并使用选取景点一定距离以内的所有可用景点的价值总和代替原插入增加价值来计算比值。
[0035]
步骤s42:使用每个游客得到的满意度除以这个游客的可用时间上限计算每条游客链的价值密度,并以此为依据将所有游客链分为两部分:规划优良的链和欠规划的链。选择欠优化的链中价值密度最小的链作为被选择的链。
[0036]
步骤s43:邻域搜索使用四个邻域结构;该步骤s42进一步包括:
[0037]
步骤s431:在被选择的链上插入景点:该邻域结构随机选择所选游客未访问的景点,并将其插入该访客链接的最后一个位置和相应资源链接的最后一个位置。它允许任何欠规划的链接的使用时间超过其时间限制;
[0038]
步骤s432:改变景点在被选择链上的位置:首先,这个邻域结构采用和初始解构造算法中比值计算相似的方法计算链上所有的景点的比值并选择比值最小的点作为要改变位置的点。被选择的景点被尝试移动到所有可能的位置,如果移动操作减少了所选链路完成路线所用的时间,则接受移动,和前一个步骤类似,这个步骤也许任何欠规划的链接的使用时间超过其时间限制;
[0039]
步骤s433:从被选择链上删除景点:此邻域结构将不断地删除被选择链接上的最后一个景点,直到该游客的使用时间不超过时间限制;
[0040]
步骤s434:该邻域结构的目的是通过将一条随机选择的游客链上一个随机已访问的景点与未访问景点交换来实现以下目标之一:1) 通过将已访问景点与交换为满意度较高的未访问景点来增加总体满意度,2)如果已访问景点和未访问景点的满意度相同,则减少相应路线的总旅行时间。如果游客链没有可行的交换或未找到一个可行的交换,则此过程结束;
[0041]
步骤s44:震荡过程的目的是通过随机改变解,使解跳出可能的局部最优。震荡程序中有两种不同的震动:局部震荡和整体震荡。对于局部震荡,如果被选择链不能成为规划优良的链,则使用局部震荡过程让被选择链跳出当前景点选择。如果在一定迭代次数之后找不到更好的解决方案,则启动整体震荡。所述步骤s44进一步包括如下步骤:
[0042]
步骤s441:局部震荡。首先,将被选择链的时间限制与另一个欠规划链的时间限制进行交换,该链接的时间限制较小(交换不会违反时间限制,这意味着交换不会使访问者的使用时间超过其时间限制)。如果被选择链在交换后仍然无法成为规划优良的链,则此过程会随机删除多个景点,删除的景点数量由以下公式计算:
[0043]
nd=γ
τ
·n[0044]
其中n为被选择链上景点的数量,γ和τ是在(0,1]上均匀分布的两个随机数。在此过程中,用于防止重复插入相同的景点的禁忌列表将被清除。但是,如果被选择链已进入局部震荡程序超过ω次,则无论其价值密度如何,都可以将其视为规划优良的链;
[0045]
步骤s442:整体震荡。与局部震荡程序类似,此程序会随机删除每个访客链接的景
点,删除的景点数量等于局部震荡的一半。删除后,随机在插入每个游客链中插入未访问的景点;
[0046]
步骤s45:当得到比当前最优解更好的解时,更新最优解。
[0047]
与现有技术相比,本发明的有益效果如下:
[0048]
本发明从服务系统的角度来解决我国旅游路线规划问题,采用本发明的技术方案,能过解决旅游路线规划问题,有助于提高旅游服务系统的运营效率,减少游客的排队时间,提升游客的满意度。
附图说明
[0049]
图1为旅游路线规划问题示意图;
[0050]
图2为本发明提供的一种基于价值密度计算的旅游路线规划方法的流程图;
[0051]
图3为本发明提供的一种基于价值密度计算的旅游路线规划方法步骤s4变邻域搜索的详细流程图;
[0052]
附图说明
[0053]
下面结合附图对本发明的具体实施方式做详细说明。
[0054]
参见图1,所示为一种基于价值密度计算的旅游路线规划方法流程图,其包括如下步骤:
[0055]
步骤s1:在规划起始时刻之前采集所有游客的信息,其中,采集的游客信息至少包括每位游客的可用总时长,每位游客在接受完每个景点的服务后所能获得的满意度;
[0056]
步骤s2:在规划起始时刻,确定模型计算所需的参数;其中,该参数包括每个景点服务一位游客所需的时间,每个景点的资源约束,即每个景点能够同时服务的游客的数量,所有景点两两之间的距离;
[0057]
步骤s3:以所有游客的总满意度最大为目标函数,建立混合整数线性规划模型;
[0058]
步骤s4:对上述优化模型,利用变邻域搜索算法进行求解,最终得到游客总满意度最大的旅游路线规划方案;
[0059]
所述s3中,混合整数线性规划模型进一步如下:
[0060]
步骤s31:设置模型假设条件:所有游客都遵从系统规划的路线进行游览,且不会出现插队现象,可以直接从一个景点前往任意另一个景点,不需要途径其他景点,每个景点在服务完一个游客后可以立即服务下一个游客,服务过程中不会出现意外,游客在不同景点间,不同时间段的行程时间时已知的。
[0061]
步骤s32:设置模型中的已知参数的符号及决策变量,具体说明如下:n表示游客的数量,h表示除起点和终点外的景点数量,tli表示游客i的可用时间上限,stj表示景点j服务一个游客所需的时间,scj表示景点j的资源限制,r
ij
表示游客i在景点j接受完服务后能够获得的满意度,tt
jk
表示从景点j出发到达景点k所需的时间, x
ijk
表示游客i是否从景点j出发前往景点k,是则为1,否则为0,是模型决策变量,i=1,2,...,n,j,k=1,2,...,h;
[0062]
步骤s33:根据行程矩阵x
ijk
和步骤s2中预先确定的参数计算模型中的中间变量;其中所述中间变量至少包括游客使用资源的矩阵、游客排队顺序的矩阵、游客在不同景点开始接受服务的时间、用于防止子循环的变量;该步骤s33进一步包括如下步骤:
[0063]
步骤s331:使用资源的矩阵的计算公式为:
[0064][0065]
步骤s332:游客排队顺序的矩阵的计算公式为:
[0066][0067][0068]
步骤s333:游客在不同景点开始接受服务的时间的计算公式为:
[0069][0070][0071]
步骤s334:用于防止子循环的变量的计算公式为:
[0072][0073]
步骤s34:建立游客旅游路线连续性约束及游客的时间约束,对目标函数进行建模,考虑所有游客总满意度最大;该步骤s34进一步包括:
[0074]
步骤s341:所有游客都需要从起点出发并需要到达终点的约束如下:
[0075][0076][0077]
步骤s342:所有游客在任意景点开始接受服务的时间及到达终点的时间小于可用时间的约束如下:
[0078][0079][0080]
参见图2所述步骤s4所包括的变邻域搜索算法进一步包括如下步骤:
[0081]
步骤s41:生成用于局部搜索的初始解;其中每个游客的行程路线用一条链表示,链每个位置为访问的景点的序号,每个景点的服务顺序用一条链表示,链每个位置为服务的游客的序号,初始化过程中要保证不会产生子循环。之前的初始解生成方式大多采用遍历所有可插入位置和所有可插入景点并计算插入增加满意度和增加时间的比值来选取插入景点及位置。这里,插入的位置只选取每个游客链和景点链的末尾,并使用选取景点一定距离以内的所有可用景点的价值总和代替原插入增加价值来计算比值。
[0082]
步骤s42:使用每个游客得到的满意度除以这个游客的可用时间上限计算每条游客链的价值密度,并以此为依据将所有游客链分为两部分:规划优良的链和欠规划的链。选择欠优化的链中价值密度最小的链作为被选择的链。
[0083]
步骤s43:邻域搜索使用四个邻域结构;该步骤s42进一步包括:
[0084]
步骤s431:在被选择的链上插入景点:该邻域结构随机选择所选游客未访问的景点,并将其插入该访客链接的最后一个位置和相应资源链接的最后一个位置。它允许任何
欠规划的链接的使用时间超过其时间限制;
[0085]
步骤s432:改变景点在被选择链上的位置:首先,这个邻域结构采用和初始解构造算法中比值计算相似的方法计算链上所有的景点的比值并选择比值最小的点作为要改变位置的点。被选择的景点被尝试移动到所有可能的位置,如果移动操作减少了所选链路完成路线所用的时间,则接受移动,和前一个步骤类似,这个步骤也许任何欠规划的链接的使用时间超过其时间限制;
[0086]
步骤s433:从被选择链上删除景点:此邻域结构将不断地删除被选择链接上的最后一个景点,直到该游客的使用时间不超过时间限制;
[0087]
步骤s434:该邻域结构的目的是通过将一条随机选择的游客链上一个随机已访问的景点与未访问景点交换来实现以下目标之一:1) 通过将已访问景点与交换为满意度较高的未访问景点来增加总体满意度,2)如果已访问景点和未访问景点的满意度相同,则减少相应路线的总旅行时间。如果游客链没有可行的交换或未找到一个可行的交换,则此过程结束;
[0088]
步骤s44:震荡过程的目的是通过随机改变解,使解跳出可能的局部最优。震荡程序中有两种不同的震动:局部震荡和整体震荡。对于局部震荡,如果被选择链不能成为规划优良的链,则使用局部震荡过程让被选择链跳出当前景点选择。如果在一定迭代次数之后找不到更好的解决方案,则启动整体震荡。所述步骤s44进一步包括如下步骤:
[0089]
步骤s441:局部震荡。首先,将被选择链的时间限制与另一个欠规划链的时间限制进行交换,该链接的时间限制较小(交换不会违反时间限制,这意味着交换不会使访问者的使用时间超过其时间限制)。如果被选择链在交换后仍然无法成为规划优良的链,则此过程会随机删除多个景点,删除的景点数量由以下公式计算:
[0090]
nd=γ
τ
·n[0091]
其中n为被选择链上景点的数量,γ和τ是在(0,1]上均匀分布的两个随机数。在此过程中,用于防止重复插入相同的景点的禁忌列表将被清除。但是,如果被选择链已进入局部震荡程序超过ω次,则无论其价值密度如何,都可以将其视为规划优良的链;
[0092]
步骤s442:整体震荡。与局部震荡程序类似,此程序会随机删除每个访客链接的景点,删除的景点数量等于局部震荡的一半。删除后,随机在插入每个游客链中插入未访问的景点;
[0093]
步骤s45:当得到比当前最优解更好的解时,更新最优解。
[0094]
接下来进行验证性实验,本实验使用一个小规模问题的算例来比较变用cplex求解精确解,邻域搜索算法,算法设计相关参数为:变邻域搜索算法:算法终止条件20,算法步入全局搜索的条件50,初始规划优良的链的比例0.75.
[0095]
数值实验结果如表1所示。通过结果可以得知,变邻域搜索算法可以找到较优路线并且求解时间远少于cplex。
[0096]
表1
[0097][0098][0099]
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明的范围内。本发明要求的保护范围由所附的权利要求书及其等同物界定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献