一种景区智能导游系统的设计与实现 您所在的位置:网站首页 景区智能导览设计方案范文图片 一种景区智能导游系统的设计与实现

一种景区智能导游系统的设计与实现

2024-06-30 08:17| 来源: 网络整理| 查看: 265

在大众旅游时代,越来越多的游客倾向于个性化自助旅游,并且对游览过程中的信息咨询、交通指引和安全保障等公共服务需求日益增加。传统的旅游地图册、人工导游和旅游门户网站已远不能满足游客的这些高层次和多样化需求,唯有以移动互联网和位置服务(location-based services, LBS)等技术为代表的智慧旅游服务平台的广泛应用,方能提升旅游公共服务水平,并满足游客的个性化深度旅游体验[1]。

早期,基于射频识别(radio frequency identification, RFID)的电子导览器在旅游景区得到了广泛应用,但是这种导览系统一般只提供文字介绍和语音讲解,设备制作和维护成本高、存储信息有限、表现形式单调[2]。在智能手机普及和通信网络广泛覆盖的时代,智能移动终端设备能够为大众提供随时随地的定位、信息检索和共享等服务,已经成为了游客旅游全过程中不可缺少的强大工具[3]。为此,国内外许多企业纷纷开始研发基于智能移动终端设备的导览系统。例如,国外的个性化移动旅游指南APP“Triposo”[4]将网络上的公开旅游信息聚合起来并以最相关的形式呈现给用户;“TripAdvisor”[5]APP则汇聚了包含景点、目的地、酒店和美食在内的大量旅游信息,并共享了3亿条全球旅游者的真实点评,利用该APP可随时随地获取全球最新旅游资讯。国内市场上成熟的“携程旅行”、“穷游”、“马蜂窝自由行”、“玩伴”、“iTravels-上海”等手机导游APP也涵盖了众多热门旅游目的地信息,提供酒店、机票、门票与景点的查询与预订等服务。

在智能导游相关技术研究方面,文献[1]提出了一套基于移动技术的Smart Tourist App,在收集意大利大量游客问卷调查数据的基础上,采用Kano模型和层次分析法来评估智能旅游APP对游客满意度的影响。文献[6]基于Android智能手机平台设计了一种智能云导游系统,但该系统需要在Android浏览器中安装插件运行,使用不够友好,且不支持苹果手机。文献[7]将Flickr网站上分享的带地理标签照片数据集转化为兴趣点(point of interest, POI),以此构建用户旅游轨迹,然后结合用户兴趣偏好、POI热度和旅行起止点等信息提出了一种个性化旅游推荐算法。

虽然旅游类APP层出不穷,且涵盖的景点数量庞大,但是大部分APP的地图导览功能使用Google、高德等第三方地图服务,而国内许多景区内的景点、服务设施和游览线路在这些地图上标注不全,难以提供全面细致的景区导航服务。有些APP虽有地图导览功能,但是不具备依据游客当前位置自动推送周边景点的智能服务;有些APP只提供热门或静态旅游线路推荐,不能根据游客的个性化需求进行景区内游览线路的动态规划;也有部分具备个性化推荐功能的旅游APP,但是往往偏重旅游目的地推荐。鉴于此,为了满足游客的自助深度旅游体验,本文充分利用GPS、GIS和云推送等技术,设计并实现了一款能在主流手机平台上运行的智能导游软件,为游客“吃、住、行、游、购、娱”提供全方位和个性化的自助导游服务。

1 智能导游系统总体设计 1.1 框架设计

智能导游系统的设计目标是整合旅游景区内的地理信息、景点介绍、旅游资讯和历史文化等各类空间和专题数据资源,借助GIS、GPS和云推送等技术,基于安卓(Android)和苹果(iOS)等主流手机系统终端,开发一套具有地图导航、景点导览、信息查询、游览路径分析、资讯推送、服务预订、在线评论与分享等功能的智能导游APP软件,为游客提供图形化、可视化和智能化的自助导游服务。整个系统采用层次化设计结构,自底向上分为支撑层、数据层、服务层和业务层,有利于系统的稳定性和可扩展性。系统架构如图 1所示。

图 1(Fig.1) 图 1 智能导游系统总体架构 Fig.1 Architecture of Intelligent Tourist Guide System

支撑层为支撑系统运行所需要的网络、硬件设施及其运行环境。数据层包括地理空间数据库、旅游专题属性数据库、系统维护数据库和多媒体文件资源等。服务层是系统的核心部分,为业务层提供数据读写、网络地图发布、最优路径分析、文件上传下载、云推送等各种服务。业务层应用包括移动端、Web端和局域网客户端,用户主要由游客、景区管理决策者、系统维护人员组成。游客是智能导游系统的用户主体,可通过智能导游APP或Web浏览器进行各种信息的查询、空间分析、在线交流等应用;景区管理者可根据APP的使用记录、相关数据的统计、游客的分布状况等,结合游客偏好等进行分析,并制定相应的决策管理和旅游规划,如高峰期分流、应急预案、开发新游玩项目等;系统维护人员主要对系统的用户、功能和数据等进行管理和维护,包括数据的录入、删除、更新和数据库备份等工作。

1.2 数据库设计

智能导游系统包括地理空间数据库和专题属性数据库两大类。其中,地理数据库存储景区内的景点、道路、商铺、公用电话亭、卫生间、医务室、绿化带、停车场等各类地物要素。这些空间数据通过高精度手持GPS设备采集获取,采用ArcGIS File Geodatabase进行分类存储和管理,制作完成的景区电子地图数据发布为WMS(Web Map Service)服务,供手机端和Web网页端调用显示。专题属性数据库是指景区介绍、景点描述、服务产品、餐饮住宿、周边交通、宣传活动、游客评论、服务产品、游客订单等各种关系数据,部分数据还包含文本、图片、音频、视频、全景照片和Flash动画等多种数字化形式,采用开源MySQL数据库进行存储和管理。数据库与景点密切相关的各类实体的关系如图 2所示(图中,1:N表示1对多关系;M:N表示多对多关系)。

图 2(Fig.2) 图 2 景点相关对象的ER图 Fig.2 Entity Relationship Diagram of Scenic Spot Related Objects

针对景点和服务设施这类既包含空间位置,又具有专题属性描述的数据,设计了一种5位数字的编码结构(SpotID)使其在空间数据库与属性数据库中进行关联,SpotID前两位标识景点类别,如自然景观、人文景观、售票处等,后3位代表景点顺序。与景点相关的音频、图片、视频、历史文化知识、评论等数据表均利用SpotID作为外键,与景点数据表进行关联。利用SpotID可实现地图与专题数据的双向查询与定位。为提高图片、音频、视频等多媒体文件的访问效率,将这些资源的源文件在服务器上分类存储,数据表中只记录其编号、名称和存储路径URL等信息,智能导游APP访问时通过流媒体方式快速下载。

2 系统实现关键技术

智能导游系统的设计与实现充分利用了GPS移动定位、GIS网络分析、云推送、空间数据挖掘和个性化推荐等关键技术。

2.1 基于A-GPS移动定位的景点智能推送

移动定位技术是实现游客定位、景点推送、游览线路分析等智能导航功能的关键。智能导游APP充分利用智能手机内置GPS定位模块来实现移动定位服务。基于智能手机GPS移动定位的基本原理为:智能手机开启GPS定位功能后,将不断接收周边导航卫星发射的星历参数和时间信息等信号,通过测定卫星信号传播的时间延迟或相位延迟来计算手机与不同GPS卫星间的距离。一般来说,知道手机与3颗卫星之间的距离,采用三维坐标中的距离计算公式组成方程式,即可求解手机所处位置的经纬度(X, Y)和高程(Z)。但是,由于卫星时钟与手机时钟之间存在误差,因此需要同时用到4颗卫星的观测数据建立伪距方程,才能求解观测点位置的(X, Y, Z)及时钟偏差(T)这4个未知数,从而实现手机定位[8]。

由于一般的GPS定位需要花费较长的时间来搜索当前区域可以使用的卫星,难以满足快速移动定位的需求。为此,出现了一种结合了网络基站信息和GPS信息对移动终端进行快速定位的A-GPS(Assisted GPS)技术。A-GPS可以在2G、3G和4G等移动网络中使用,利用网络向手机终端提供差分校正数据、卫星运行状态等GPS辅助信息,从而增强TTFF(Time To First Fix,第一次发回位置信息所需时间),使得手机终端可快速捕捉到GPS信号,并接收GPS卫星的测量信息,最后将测量信息通过无线网络发送给网络中的定位服务器,由它基于接收到的卫星导航信号计算出手机终端当前位置。A-GPS技术能够为手机用户提供高精度的移动定位信息,尤其是在网络提供的差分GPS或其他校正数据的辅助下,其定位精度在10 m以内[9]。

目前,各种智能手机基本都内置了GPS定位芯片,而且Android和iOS等手机系统也都提供了移动定位开发的相关接口。以Android系统开发为例,要具备定位功能,首先必须在AndroidManifest.xml中进行权限许可配置。例如:〈uses-permission android:name=“android.permission.ACCESS_FINE_LOCATION” /〉、〈uses-permission android:name=“android.permission.ACCESS_COARSE_LOCATION”/〉。其中,ACCESS_FINE_LOCATION表示可以利用GPS卫星进行精确定位,ACCESS_COARSE_LOCATION表示可以利用运营商移动基站或Wi-Fi热点进行粗定位。

Android SDK移动定位开发主要基于位置管理器LocationManager类实现。首先,初始化Criteria类,设置其Accuracy属性为ACCURACY_FINE,即高精度模式;然后将初始化的Criteria作为LocationManager的getBestProvider参数,获取当前最优的位置服务provider;将provider传入LocationManager的getLastKnownLocation方法,即可获取当前位置信息;位置的动态更新频率通过LocationManager的requestLocationUpdates方法设置。智能导游APP采用这种组合定位技术后,按照一定的频率间隔(如距离变化10米或时间间隔5秒)来动态获取游客当前位置信息,并在电子地图上用特定图标实时标注。

2.2 最优游览线路分析

路径分析是GIS中常用的空间分析方法之一,在汽车导航、物流运输和应急救援等领域有广泛应用,自助旅游者对参观游览线路的规划、查询和推荐等需求也日益旺盛。最短路径求解是数学中的NP难题,经典的Dijkstra算法虽然性能较稳定且通用性强,但是该算法时间复杂度与节点数N的幂次方成正比,对于节点较多的旅游景区道路网络,该算法的搜索效率不能满足实时分析与导航要求[10]。此外,还有A*、Bellman-Ford、SPFA和DAG图等一些有代表性的最短路径求解算法,但是它们对数据质量有严格要求,求解结果和算法效率等方面都有或多或少的缺陷,难以适应各种网络类型[11]。

对于旅游最优路径而言,仅仅考虑两点之间的最短距离还不够,因为还涉及到沿途观赏热门景点、停留时间、地形起伏、步行能量消耗[12]等因素。美国ESRI公司的ArcGIS软件具有强大的空间分析功能,其Network Analysis模块集成了最优路径分析功能,能够基于矢量网络数据提供多种方式的最优路径求解方案[13]。因此,本文基于ArcGIS提供的二次开发接口,依据景点热度、道路坡度和停留时间等因素为景区道路网络设置不同权重,编程实现景区最优路径分析功能。

主要步骤如下:

1) 采集景区内的景点、设施、道路等点状和线状空间数据,将其存储在File Geodatabase空间数据库的Feature Dataset中,实验数据共包含176条道路和277个节点,如图 3所示。

图 3(Fig.3) 图 3 景区道路网络数据集 Fig.3 Road Network Dataset of Certain Scenic Area

2) 根据道路连通、转弯、禁行等实际情况建立邻接关系,据此构建一个具有良好拓扑关系的道路网络数据集(network dataset)。对于网络数据集的每条线路,除了设置长度(Length)和步行时间(TravelTime)这两个基本网络属性(network attribute)之外,还根据道路周边景点热度和坡度添加两个新的属性,即SpotHot和Slope,这样将道路通行的成本(Cost)或阻抗(Impedance)指定为Length、TravelTime或SpotHot等不同属性时,即可实现最短距离、最少时间、景点热度最高等多种类型的最优路径分析。如果要基于道路长度、周边景点热度和坡度等多个因素来计算最优路径,也可以分别设置不同属性的权重,采用加权方法计算每条路段的综合通行成本,不过需要对参与加权计算的各种属性先进行归一化处理,以消除不同物理量纲的影响。

3) 发布路径分析WMS服务。利用ArcGIS Server软件将构建好的道路网络数据集发布为WMS服务。发布过程的参数设置中必须勾选Network Analysis,标识此服务具有网络分析功能。

4) 编程开发最优路径分析功能。以ArcGIS for Android为例,其API接口提供的RouteTask是实现最优路径分析的核心类。首先通过RouteParameters设置分析参数,包括起止点(Stops)、空间参考(SpatialReference),是否返回方向(ReturnDirections)等;其次,初始化RouteTask类,回到步骤3)中发布的Web URL;然后将设置的RouteParameters参数传入RouteTask的solve方法进行路径分析;最后,对分析结果RoutingResult进行解析。

这样,能够在地图上用高亮的折线和箭头来标注最优路径,并形成相应的线路描述说明。

3 实验及应用案例 3.1 实验

为了测试基于A-GPS移动定位的景点智能推送,笔者使用了Android SDK和ArcGIS for Android提供的API编程实现。主要在Android SDK提供的位置变化事件onLocationChanged中根据当前获取的位置,从地图服务中搜索周边景点,并根据景点SpotID查询数据库中的详细介绍信息,然后自动弹出景点介绍信息。具体实现步骤如下:

1) 构造搜索缓冲区:依据A-GPS定位技术获得的当前位置点LocationPoint,将APP设置的默认搜索距离(如10 m)作为搜索半径,利用ArcGIS for Android API的GeometryEngine接口提供的buffer方法,构造搜索圆形缓冲区对象bufGeometry,用Polygon几何类型存储。

2) 缓冲区查询:根据发布的景区地图服务构造一个QueryTask,将bufGeometry对象作为query类的geometry,再调用QueryTask的execute方法进行缓冲区分析,查找出落在缓冲区内的景点和服务设施等点要素。

3) 专题属性查询:获取缓冲区内景点要素的SpotID属性,再调用数据库查询接口获取该景点的文字介绍、缩略图和音频讲解URL等详细信息,并弹出信息框展示。

考虑到游玩过程中位置变化频率非常高,将该QueryTask定义为AsyncTask,在后台doInBackground事件中异步执行缓冲区分析,在不影响地图导航正常使用的同时,实时搜索缓冲区内的景点。若缓冲区内只搜索到一个景点,系统自动弹出该景点的介绍信息,如图 4(a)所示;若缓冲区内存在多个景点,系统将按照距离远近排序并弹出周边景点列表,游客可自行选择感兴趣的景点进行详情浏览,如图 4(b)所示。

图 4(Fig.4) 图 4 景点智能推送与路径规划示例 Fig.4 Intelligent Push Surrounding Spots and Optimal Tour Route Query

针对两点间游览线路动态规划功能,起止点包含3种输入方式:①使用当前位置(GPS定位);②从景点列表选择景点;③地图选点。输入完成后,APP将起点和终点经纬度坐标作为参数,调用服务器的路径分析WMS服务进行计算,APP对服务器返回结果进行解析,然后在地图上高亮显示最佳游览线路,见图 4(b)。如果选择的起点或终点不在道路上,后台会先计算出与该点最近的道路垂直交叉点,利用计算出的道路点参与路径分析,在最终结果显示时,需要将用户选择点与查询得到的附近道路点连接成一条线段,以保证路径分析结果的完整性。针对图 5所示的道路网络数据,笔者选取了距离远近不同的多个起止点测试,路径查询平均耗时在0.6 s以内,查询结果经人工分析与实地验证均正确,说明本方法能够满足游客进行景区游览线路动态规划的要求。

图 5(Fig.5) 图 5 天涯海角智能导游APP应用示例 Fig.5 Screenshots of Tianyahaijiao Intelligent Tourist Guide APP

除了游客自主选择起止点来动态获取最优路径之外,也可以综合景区规划的游览线路和依据大量游客游览轨迹数据挖掘分析得到的线路,在APP中预置几种热门游览线路供不同游客选择。例如,对于时间充裕的游客,推荐包含全部景点的完整游览线路;对于时间有限的游客,只推荐包含部分著名景点的游览线路;对于爱好历史文化的游客,可选择包含众多人文景点的游览线路。

3.2 应用案例

基于上述总体设计和关键技术研究,在大量实地调研和详细需求分析基础上,笔者为三亚市天涯海角游览区开发了一套智能导游APP,支持Android和iOS两大主流智能手机系统,目前该系统已经上线运营,可为游客提供详细的自助导游服务。

天涯海角智能导游APP包含地图导览、景区服务、景点列表、景区概况、宣传活动、在线评论、推送服务和门票预订等功能模块,由于该景区靠海,视野开阔,且景点较为分散,经实地测试,APP的移动定位误差在5 m左右,设置景点推送的默认缓冲距离为10 m,能够保障游客周边景点和服务设施均能智能感知与自动推送。旅游资讯、宣传活动、天气预报等各类信息的推送基于百度云推送SDK[14]二次开发实现。图 5(a)展示了该景区的所有热门景点列表,其中各景点的热度分级是依据对大量游客的游览轨迹空间数据进行空间聚类分析来定量设置,具体采用了聚类速度快,能处理噪声、可以进行空间任意形状聚类的DBSCAN聚类算法[15]。

点击景点列表中的某个景点可跳转到图 5(b)所示的详细介绍界面,展示景点的文字简介、音频、视频、图片和评论等。其中,点击文字介绍中的超链接(如“松江府”)可跳转到对应的维基(百度)百科详细介绍页面,进一步扩展与景点相关的历史文化知识。详情介绍突出了景点内涵的深度挖掘与可视化交互展示,能满足不同游客的个性化选择需求,如一些年长者倾向于听音频解说,部分年轻人喜欢看图片,而小孩可选择观看动画或360°全景照片。此外,系统提供的“分享”功能还可以让游客将喜欢的照片分享到微信和微博等社交平台。为满足不同游客的偏好,APP提供灵活的设置选项,如解说语言、景点推送类型和距离、周边查询半径、旅游资讯推送开关等。

4 结束语

综合利用移动GPS定位技术、基于ArcGIS的最优路径分析、百度云推送、空间聚类分析等技术实现的智能导游系统,能够实现旅游信息的图形化、可视化和智能化展示与应用,交互性强,可满足广大游客在某个具体旅游景区内的深层次和多元化旅游需求,同时也能大力提升旅游景区的公共服务水平。

除了目前广泛使用的GPS定位之外,随着北斗导航应用的逐步推广,今后还可以在智能导游系统中使用我国自主研发的高精度北斗卫星定位技术来改善移动定位精度。此外,针对部分GPS信号难以覆盖的室内景点的定位与推送,可以考虑使用超宽带定位、蓝牙室内定位和WiFi定位[16]等技术。随着智能导游APP在不同旅游景区的应用推广,下一步将考虑搜集大量游客的游览轨迹、停留时间、兴趣爱好及评论等各类数据,采用基于内容的推荐、基于关联规则的推荐和协同过滤推荐等各类数据挖掘和个性化推荐技术,实现针对不同群体和不同地理位置的游客进行旅游资讯和热门景点的个性化推送,从而进一步增强导游系统的智能性。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有