董春華,麻朝光,王冠華,梁康發(fā),任宇杰
(天津城建大學(xué),天津 300384)
旅游業(yè)作為我國(guó)的重要產(chǎn)業(yè)之一,已成為推動(dòng)我國(guó)GDP 增長(zhǎng)的重要推動(dòng)力.自駕游、自助游等形式的自助旅游的發(fā)展,推動(dòng)自助旅游市場(chǎng)成為新的旅游熱點(diǎn),同時(shí),也促使旅游產(chǎn)業(yè)供給與需求的矛盾更加突出.目前廣泛應(yīng)用的旅游平臺(tái)多為自助游用戶提供旅游資源的文字圖片等信息,現(xiàn)有的路線規(guī)劃服務(wù)大多是由旅游機(jī)構(gòu)提供的旅游產(chǎn)品,用戶一般無(wú)法參與對(duì)這些內(nèi)容的規(guī)劃和設(shè)計(jì);部分旅游網(wǎng)站提供了基本的旅游行程路線功能,但對(duì)于自助游規(guī)劃也基本是通過(guò)網(wǎng)友們?nèi)翰呷毫θ斯ね瓿?自助游發(fā)展的此種現(xiàn)狀與智慧旅游產(chǎn)業(yè)化、信息化的趨勢(shì)是背道而馳的,亟需更加智能化的旅游服務(wù)平臺(tái)填補(bǔ)空白.
互聯(lián)網(wǎng)產(chǎn)業(yè)的蓬勃發(fā)展促使旅游產(chǎn)業(yè)科技化含量越來(lái)越高,基于移動(dòng)端的旅游方式已經(jīng)突破了傳統(tǒng)的旅游模式.在這樣的背景下,在移動(dòng)端旅游的基礎(chǔ)上科學(xué)地規(guī)劃最優(yōu)的旅游路線,既滿足游客虛擬旅游的體驗(yàn)需求,同時(shí)為游客提供實(shí)際旅游中花費(fèi)最小而且旅游體驗(yàn)最好的旅游路線,具有十分重要的意義.
本文以天津市為研究對(duì)象,實(shí)現(xiàn)基于智能旅游線路規(guī)劃及可視化方法,為自助游客智能化查詢旅游信息及規(guī)劃旅游路線提供有力工具.
旅游路線規(guī)劃問(wèn)題是基于經(jīng)典TSP 問(wèn)題演化而來(lái).目前國(guó)內(nèi)外對(duì)TSP 問(wèn)題研究較多,如最鄰近算法、插入法、動(dòng)態(tài)規(guī)劃算法、遺傳算法以及蟻群算法等,在一定程度上滿足游客的出游條件,如吳澎等基于多目標(biāo)規(guī)劃算法對(duì)201 個(gè)國(guó)家5A 級(jí)景區(qū)進(jìn)行旅游線路設(shè)計(jì)研究[1].劉忠花等提出三階段TSP 模型,利用遺傳算法對(duì)201 個(gè)國(guó)家5A 級(jí)景區(qū)進(jìn)行了合理的旅游路線設(shè)計(jì)[2]. 郝標(biāo)等基于蟻群優(yōu)化算法對(duì)井岡山旅游區(qū)進(jìn)行了路線規(guī)劃系統(tǒng)設(shè)計(jì)[3]. 睢先先等結(jié)合改進(jìn)的蟻群優(yōu)化算法、百度地圖API 以及Android 開(kāi)發(fā)等技術(shù),實(shí)現(xiàn)了基于Android 智能終端的城市內(nèi)自助游規(guī)劃系統(tǒng)[4].Beatriz Rodriguez 從應(yīng)用角度出發(fā),利用數(shù)學(xué)模型和交互式多目標(biāo)技術(shù)設(shè)計(jì)了個(gè)人旅游路線規(guī)劃系統(tǒng),可以生成一條基于用戶選擇的行程路線[5]. 黃騰基于遺傳算法對(duì)河南省13 個(gè)5A 景點(diǎn)進(jìn)行無(wú)約束條件下的旅游路線規(guī)劃,再利用蟻群算法進(jìn)行有費(fèi)用約束條件下的旅游路線規(guī)劃[6].萬(wàn)慧云等基于蟻群算法對(duì)全國(guó)5A景點(diǎn)進(jìn)行了旅游路線規(guī)劃方案規(guī)劃設(shè)計(jì)[7]. 這些研究為智能旅游路線規(guī)劃發(fā)展奠定了基礎(chǔ),但其中基于實(shí)際旅游景點(diǎn)數(shù)據(jù)進(jìn)行規(guī)劃的算法對(duì)旅游目的地的針對(duì)性比較強(qiáng),并且對(duì)于路線的可視化顯示并不盡人意,目前仍沒(méi)有一個(gè)解決TSP 問(wèn)題的完美方案.
蟻群算法是一種利用正反饋信息在圖中尋找優(yōu)化路徑的概率型算法,是由意大利Marco Colorni 等通過(guò)模擬自然界中螞蟻集體尋徑行為而提出的一種基于種群的啟發(fā)式仿生進(jìn)化算法[8]. 螞蟻在尋找食物的過(guò)程中釋放信息素,蟻群之間通過(guò)信息素進(jìn)行交流,并選擇信息素濃度較大的路徑,大量螞蟻表現(xiàn)出一種協(xié)同搜索最短路徑的正反饋現(xiàn)象,路徑越短信息素濃度疊加越快,從而導(dǎo)致最后所有的螞蟻均集中到最短路徑.
利用蟻群算法解決TSP 問(wèn)題原理為:假設(shè)蟻群中螞蟻個(gè)數(shù)為m,風(fēng)景區(qū)個(gè)數(shù)為n,風(fēng)景區(qū)i 與j 之間路徑距離為Rij(i,j=1,2,…,n),在t 時(shí)刻,該路徑的信息素濃度為τij(t),設(shè)各風(fēng)景區(qū)之間的信息素初始濃度相同,均為 τij(t)= τ0.螞蟻 k(k=1,2,…,m)可通過(guò)各風(fēng)景區(qū)的路徑之間的信息素濃度大小決定要訪問(wèn)的下一景區(qū)(t)表示 t 時(shí)刻螞蟻 k 從風(fēng)景區(qū) i 轉(zhuǎn)移到風(fēng)景區(qū)j 的概率.螞蟻釋放信息素的過(guò)程中,信息素同時(shí)逐漸揮發(fā),設(shè)信息素?fù)]發(fā)程度為參數(shù)ρ(0 <ρ <1),當(dāng)所有螞蟻均完成一次循環(huán)之后,對(duì)各風(fēng)景區(qū)間路徑的信息素濃度進(jìn)行更新[7]. 信息素濃度最高路徑為最優(yōu)路徑.
針對(duì)該問(wèn)題,為考慮區(qū)域景點(diǎn)的各種旅游資源信息,實(shí)現(xiàn)自助游客旅游行程路線的自助規(guī)劃,本文基于蟻群算法建立動(dòng)態(tài)路線規(guī)劃算法,并將規(guī)劃路線以二維地圖和交通方式相結(jié)合的方式進(jìn)行可視化展示,從而為游客提供智能路線規(guī)劃服務(wù).
平臺(tái)的開(kāi)發(fā)環(huán)境操作平臺(tái)選用Windows 與Linux結(jié)合使用;前端開(kāi)發(fā)工具選用HBuilderX,前端管理開(kāi)發(fā)工具選用IntelliJ-IDEA13,Web 服務(wù)器使用阿里云提供的輕量級(jí)應(yīng)用服務(wù)器、nginx 和tomcat;數(shù)據(jù)存儲(chǔ)采用MySQL 關(guān)系數(shù)據(jù)庫(kù). 平臺(tái)的設(shè)計(jì)模式采用SSM框架,客戶端采用 HTML5 技術(shù),使用jQuery 的JavaScript 框架建立,后臺(tái)數(shù)據(jù)服務(wù)交互通過(guò)Ajax 技術(shù)對(duì)后臺(tái)發(fā)出請(qǐng)求,后臺(tái)按照邏輯需求調(diào)用庫(kù)并使用Json 格式進(jìn)行數(shù)據(jù)傳輸,從而實(shí)現(xiàn)客戶端與數(shù)據(jù)服務(wù)層的數(shù)據(jù)交互.
根據(jù)平臺(tái)需求,平臺(tái)提供的各種景點(diǎn)信息,使用戶能夠了解景點(diǎn)描述、位置、交通及評(píng)論等相關(guān)信息,通過(guò)選擇意向景點(diǎn)進(jìn)行行程規(guī)劃,獲得旅游體驗(yàn).功能模塊主要包括景點(diǎn)信息展示、附近景點(diǎn)、景點(diǎn)推薦、行程規(guī)劃、路線展示、用戶管理等. 平臺(tái)功能如圖1 所示.
圖1 平臺(tái)功能
2.3.1 用戶管理
用戶管理部分包括用戶注冊(cè)、登錄及意見(jiàn)反饋.用戶使用平臺(tái)功能需在“用戶注冊(cè)”界面進(jìn)行注冊(cè),并通過(guò)郵箱驗(yàn)證.
2.3.2 景點(diǎn)信息展示
用戶可在景點(diǎn)信息顯示欄下瀏覽天津市各個(gè)景點(diǎn),選擇意向景點(diǎn),可看到該景點(diǎn)的詳細(xì)信息.如景觀圖片、景點(diǎn)描述、地址、開(kāi)放時(shí)間、聯(lián)系電話以及景點(diǎn)的地圖定位顯示,通過(guò)地圖縮放可以查看景點(diǎn)周?chē)母黝?lèi)地物,如圖2 所示.
圖2 景點(diǎn)詳情頁(yè)面
2.3.3 附近景點(diǎn)
在“附近好玩”界面,平臺(tái)通過(guò)獲取用戶的地理位置,以3 km 的距離為緩沖,查找用戶周?chē)木包c(diǎn)信息,并為用戶展示景點(diǎn)詳細(xì)列表,點(diǎn)擊意向景點(diǎn),可展示該景點(diǎn)的詳細(xì)信息,如圖3 所示.
圖3 附近景點(diǎn)顯示
2.3.4 行程規(guī)劃
用戶通過(guò)瀏覽景點(diǎn)信息,選擇多個(gè)意向景點(diǎn),所選景點(diǎn)將會(huì)傳輸?shù)揭?guī)劃模塊,在規(guī)劃模塊用戶可以選擇要規(guī)劃的景點(diǎn)或刪除意向景點(diǎn),選擇“幫我規(guī)劃”功能,后臺(tái)應(yīng)用蟻群算法,根據(jù)所選意向景點(diǎn)的空間位置規(guī)劃出合理的路線,并將結(jié)果返回到“我的行程”,將規(guī)劃好的景點(diǎn)ID 序列存儲(chǔ)在數(shù)據(jù)庫(kù)行程規(guī)劃表的placelist 字段.該模塊如圖4 所示.
圖4 景點(diǎn)選擇
2.3.5 我的行程
該模塊功能為接收行程規(guī)劃模塊的規(guī)劃結(jié)果,調(diào)用數(shù)據(jù)庫(kù)中的景點(diǎn)排序序列,將規(guī)劃好的游覽順序分段進(jìn)行地圖可視化顯示,并對(duì)每個(gè)分段配以交通狀況.顯示詳情如圖5 所示.
圖5 行程顯示界面
本文以天津市為研究對(duì)象開(kāi)發(fā)了城市旅游智能路線規(guī)劃平臺(tái),平臺(tái)利用蟻群算法實(shí)現(xiàn)旅游路線的智能規(guī)劃,調(diào)用百度地圖API 進(jìn)行規(guī)劃結(jié)果的可視化,為天津市自助游客提供便捷,具有很好的現(xiàn)實(shí)意義.該平臺(tái)利用網(wǎng)頁(yè)技術(shù)開(kāi)發(fā)實(shí)現(xiàn)功能需求,使其既能封裝成App 在移動(dòng)端使用,又能在Web 端基于瀏覽器使用,能夠輕松實(shí)現(xiàn)跨平臺(tái),方便用戶在各種平臺(tái)使用.