[0067] 如图1所示,基于群智感知的旅游路线个性化推荐方法包括以下步骤:
[0068] S1、对实际路网进行ArcGIS建模,如图2所示。
[0069] S2、构建用户ud的多元约束兴趣模型。
[0070] 在本发明实施例中,我们以图3为参照, 为用户ud起始位置,接下来在{a1,a2,…,an}中选取若干个点,加入到路径集合中。
[0071] 约束1时间约束
[0072] 记待加入点aj与上一点ai的之间的路程距离时间为T(ai,aj),(i∈{0,1,…,n};j∈{0,1,…,n};i<j),则
[0073]
[0074] 此约束针对加入路线集合的任意单个POI。
[0075] 在这里,景点aj满足条件加入旅游路线后,aj的到达时间是时刻变化的,为了更清晰地表示,记到达时间为 所以景点aj到达时间
[0076]
[0077] 相应地,游完景点aj的结束时间为
[0078]
[0079] 因此,景点aj须满足
[0080]
[0081]
[0082] 约束2费用约束
[0083]
[0084] 约束3景点约束
[0085] 景点个数约束
[0086] 路线集合每加入一个景点,景点个数N←N+1,因此
[0087]
[0088] 2)必去景点约束
[0089] 必去景点反映了用户的独特性偏好,因此,我们必须优先考虑必去景点。即首先考虑必去景点,将其纳入路线集合中。
[0090] 通过以上三种约束,我们可以得到整体行程约束
[0091]
[0092] 其中,TES为景点aj与用户ud起始点 的最短路网距离。
[0093] S3、根据用户多元约束兴趣模型以及POI相关信息,计算用户与景点、餐馆的兴趣匹配分值,融入POI的群智感知社交评分以及POI的群智感知区位评分,得到目标函数。
[0094] S31、首先构建用户‑项目(景点、餐馆)模型,在所述用户‑项目模型基础上构建兴趣匹配布尔矩阵
[0095] 其中,
[0096]
[0097] 通过公式
[0098]
[0099] 得到用户与景点、餐馆的兴趣匹配分值。
[0100] 如用户ud对景点的偏好为{历史建筑,城市公园,古迹,世界文化遗产},部分景点如故宫、颐和园、恭王府、北海公园,其标签如图4所示,则构成的兴趣匹配布尔矩阵如下所示:
[0101]
[0102] S32、通过公式
[0103]
[0104] 计算景点群智感知社交评分。其中 为景点ai的评价人数,用户uy对景点ai的评分为
[0105] 通过公式
[0106]
[0107] 将 归一化。
[0108] 通过公式
[0109]
[0110] 计算餐馆群智感知社交评分。其中, 为参与餐馆评分的用户总人数, 为用户uy对餐馆rj的评分, 为餐馆rj的综合评分, 表示口味评分 表示环境评分、 表示服务评分,口味、环境、服务评分等级为NR, 表示餐馆rj的评分星级。
[0111] 通过公式
[0112]
[0113] 计算宾馆群智感知社交评分。其中, 为宾馆hk的评价人数,用户uy对宾馆hk的评分为
[0114] S33、在POI已聚类的基础上给定半径r,通过公式
[0115]
[0116] 得到半径范围内景点对景点的群智感知区位评分。其中, 为景点ai半径范围内的景点个数。
[0117] 在POI已聚类的基础上给定半径r,通过公式
[0118]
[0119] 得到半径范围内餐馆对景点的群智感知区位评分。其中, 为景点ai半径范围内的餐馆个数。
[0120] 在POI已聚类的基础上给定半径r,通过公式
[0121]
[0122] 得到半径范围内宾馆对景点的群智感知区位评分。其中, 为景点ai半径范围内的宾馆个数。
[0123] S34、在景点、餐馆、宾馆对景点的群智感知区位评分的基础上,引入参数ka、kr和kh三个权重系数来平衡各类POI的群智感知评分,得到综合群智感知区位评分[0124]
[0125] S35、通过公式融合用户兴趣匹配分值、群智感知社交评分以及综合群智感知区位评分,即可以得到所述目标函数:
[0126]
[0127] 4、基于融合用户兴趣匹配分值、群智感知社交评分以及综合群智感知区位评分的目标函数,将距离评分融入目标函数得到综合评分,然后采用变近邻贪心旅游路线推荐算法,动态插入综合评分最高的景点得到符合用户偏好的最优路线。
[0128] S41、路网距离衰减函数,即距离评分
[0129]
[0130] 其中,λ为距离衰减系数,Dij为点i到第j点之间的实际路网距离,GD为距离衰减值,μ为权重。
[0131] 通过公式
[0132] GS=θGA+(1‑θ)GD(18)
[0133] 得到将距离因素融入目标函数得到综合评分。
[0134] S42、本发明实例在提出的变近邻贪心旅游推荐算法的基础上,假设用户u1打算去首都北京旅游,仅提供出发位置和结束位置,即北京火车站和北京火车西站。在这种情况下,采用变近邻贪心旅游路线算法,该算法默认出发时间为上午8点,旅游时间不超过12个小时,并且提供个人偏好和多种约束,偏好"历史建筑","园林","世界文化遗产","广场"的景点,要求所有景点的花费不超过200元人民币。如图5,该路线考虑到了用户的偏好,但仅针对无必去景点的情况。
[0135] S5、对于含必去景点的推荐,采用单/多PO I类型两段式贪心旅游路线推荐算:先利用随机分割旅游路线推荐算法得到只含必去景点的基础路线,再利用聚类排序插队旅游路线推荐算法对基础路线进行扩充从而得到最终的符合用户偏好的路线。
[0136] S51、假设用户u2打算去首都北京旅游,由于故宫博物院、颐和园、天安门广场世界闻名,故他希望北京游必须包括上述景点,不强调游玩顺序。鉴于由于其对北京景点不了解,所以仅提供一些其他的基本要求。如,早晨8点半在北京火车站下车,希望游玩的时间不超过12个小时,总花费不超过200元人民币,由于舟车劳顿,不想去太多景点,上限是6个。当然,他明确表示自己偏爱"历史建筑","园林","世界文化遗产","广场"的景点,并且自己必须在11:00‑13:00之间吃午饭,在18:00‑20:00之间吃晚饭,且午饭餐馆必须去满恒记(清真火锅店),晚饭和住宿宾馆希望系统推荐,个人偏爱吃“涮羊肉”,且餐馆费用不计入总花费。在单/多POI类型两段式贪心旅游路线推荐算法的基础上,再将整体路线分为北京火车站‑满恒记和满恒记‑宝瑞酒店(系统推荐的宾馆),在每一段中都调用算法2和3,先采用随机分割旅游路线推荐算法生成一条仅含必去景点的基本路线,由于采用贪心的思想,该路线符合局部最优的特点,如图6所示。
[0137] S52、在生成的局部最优的路线基础之上,采用聚类排序插队旅游路线推荐算法,将符合用户个性化偏好的可选景点依据目标函数进行排序,然后以必去景点为中心景点,依次插入符合用户约束的可选景点,并且根据用户偏好加入午饭餐馆和晚饭餐馆,得到最终的最优路线,如图7所示。
[0138] 本发明实施例在用户兴趣匹配的基础上,融入POI群智感知社交评分以及POI群智感知区位评分,使得评分细则更加全面。提出的适用于无必去景点的景点推荐算法即变近邻旅游路线推荐算法、适用于含有必去景点的单/多POI类型两段式贪心旅游路线推荐算法不仅时间复杂度低,并且更加符合用户的偏好以及更具合理性。
[0139] 上面结合附图对本发明进行了示例性描述,显然本发明具体实现并不受上述方式的限制,只要采用了本发明的方法构思和技术方案进行的各种非实质性的改进,或未经改进将本发明的构思和技术方案直接应用于其它场合的,均在本发明的保护范围之内。