許凌云
(湖南環(huán)境生物職業(yè)技術(shù)學(xué)院,湖南 衡陽 421005)
在旅程開始之前,游客通常會通過網(wǎng)絡(luò)設(shè)備瀏覽旅游App,以尋找更適合自己的旅游攻略。但游客在享受網(wǎng)絡(luò)技術(shù)帶來便利的同時,也會因評論留言和網(wǎng)絡(luò)瀏覽痕跡主動或被動地留下數(shù)字足跡。因此,旅游業(yè)就可以利用數(shù)字足跡組建游客的行為圖譜,從而更直觀地了解游客的旅游習(xí)慣和消費(fèi)特征,進(jìn)而更好地為游客提供定制游覽路線等旅游服務(wù)[1]。旅途中的住宿、餐飲、交通以及景點游覽等環(huán)節(jié)構(gòu)成了形成鏈中的重要節(jié)點,只有科學(xué)規(guī)劃各節(jié)點,才能使行程鏈節(jié)點按照時間空間順序進(jìn)行線性排列,同時結(jié)合游客的個性化需求形成有序集合[2]。
為生成旅游規(guī)劃行程鏈的節(jié)點,讓旅游者最大化利用旅游時間,這就是設(shè)計的游玩最優(yōu)路徑。而在選取景區(qū)節(jié)點時,為了保證景區(qū)節(jié)點的聚集度,主要考慮節(jié)點之間的距離以及節(jié)點的綜合評價,這樣容易讓游客走回頭路,無法縮短路線[3],這就會影響旅游者的出行效率。于是,通過遺傳算法解決各節(jié)點時間相互擠壓沖突的問題,從而解決在游覽過程中多走重復(fù)路的問題。
X代表已經(jīng)選擇的n個旅游節(jié)點的集合,X={v1,v2,v3,…,vn},d為每個景區(qū)節(jié)點間的距離,記為d(v1,v2),f(x)即為目標(biāo)函數(shù),因此得出最短路徑如公式(1)所示。
式中:i為式子初始值;n為旅游節(jié)點。
首先,使用遺傳算法將隨機(jī)產(chǎn)生的初始群體生成順序遺傳編碼。其次,利用適應(yīng)度函數(shù)F計算景區(qū)節(jié)點的綜合評價值。最后,排列成順序表。其中,適應(yīng)度函數(shù)F如公式(2)所示。
式中:I為景區(qū)綜合評價值。
設(shè)節(jié)點間的最小距離為Lmin,平均距離為Lavg,上述函數(shù)運(yùn)算結(jié)束的條件如下:通過計算機(jī)的10次迭代運(yùn)算,Lmin不再改變且Lavg穩(wěn)定為一個值,此時停止計算,則可以確定景區(qū)多個節(jié)點位置距離的相對最優(yōu)解。
上述遺傳算法可以對最短路徑中的節(jié)點進(jìn)行排列,這樣可以縮短旅游者在路上中消耗的時間,為最優(yōu)的日程安排提供了時間基礎(chǔ)。
如圖1所示,圖1(a)表示利用動態(tài)篩選方法顯示景點節(jié)點安排順序,可以反映旅游者在實際游覽中的問題(包括線路重復(fù)問題)。圖1(b)表示利用遺傳算法重新安排的景點節(jié)點順序,可以解決線路重復(fù)問題。
旅游規(guī)劃行程鏈形成的最優(yōu)組合是利用旅游節(jié)點間的空間距離進(jìn)行篩選的,隨后進(jìn)行空間組合排列,從而生成最短的旅游路線路徑[4]。
利用遺傳算法在一定程度上可以解決旅游節(jié)點間線路重復(fù)的問題,因為對旅游出行的道路進(jìn)行了最短的計算優(yōu)化,所以在旅游時會產(chǎn)生大量的富裕時間,因此要討論旅游期間對富裕的旅游時間進(jìn)行分配的問題??梢酝ㄟ^迭代處理對上述問題進(jìn)行優(yōu)化,主要原理是利用剩余的旅游時間選擇景區(qū)節(jié)點,從而生成最優(yōu)路徑。結(jié)果如圖2所示,步驟如下:1)采用景區(qū)節(jié)點動態(tài)選擇法篩選景區(qū)節(jié)點,得到景區(qū)節(jié)點集合X={v1,v2,v3,…,vn}。如果設(shè)置旅游者的旅游總游時為T,那么節(jié)點的排列順序仍會存在路徑重復(fù)的情況,并非最優(yōu)路徑。2)為生成最優(yōu)路徑,使用遺傳算法獲得集合,因此得到優(yōu)化后的次序X1={v1,v2,v3,…,vn},優(yōu)化后的最優(yōu)路徑出行路線減少,交通所用時間縮短,總旅游時間T保持不變,游覽的活動時長即最優(yōu)路徑的時長Tcur。3)旅游的時差ΔT如公式(3)所示。接下來需要對富裕時差ΔT進(jìn)行重新分配。4)以最末尾節(jié)點Vn為起點,利用富裕時差ΔT再次計算ΔT的景區(qū)節(jié)點組合。5)根據(jù)第二個步驟重新計算,直到ΔT<0。
式中:T為總旅游時長;Th為住宿時長;Td為餐飲時長,ΔT為“富余”時間。
使用上述方法對景區(qū)節(jié)點、餐飲節(jié)點及住宿節(jié)點進(jìn)行優(yōu)化組合,在得到有序節(jié)點后,利用遺傳算法生成所選取旅游節(jié)點的旅游最優(yōu)路徑,即確定了最終的游覽線路。該最優(yōu)模型安排了已有行程中富裕時差的日程。
在旅游過程中,旅行者會因餐飲和住宿而暫停旅游,因此根據(jù)用餐和住宿所需時間把旅游時長分成3個時段,即全天時段、半天時段與活動時段,如圖3所示。
旅游時長是指游客從制定旅游計劃開始至整體行程結(jié)束的旅游整體花費(fèi)的時間總和,當(dāng)構(gòu)建基于數(shù)字足跡的旅游規(guī)劃行程鏈的模型時要將時間劃分方法作為旅游日程安排時的基礎(chǔ)方法,并將以往的景區(qū)旅游行程路線的設(shè)計原則和各城市景點游客的有臉規(guī)律等相關(guān)影響因素作為重要參考[5]。
將上午游覽時段DM、下午游覽時段DA和晚上游覽段DE歸納為總的游覽時段Dr,如公式(4)所示。
將早餐時段DB、午餐時段DL和晚餐時段DD歸納為餐飲時段DR,如公式(5)所示。
因為旅游者睡眠的時間連接2 d的旅游時段,所以將住宿時段作為中間時段。
根據(jù)各類型城市不同旅游節(jié)點的時間配置方式可劃分為靈活調(diào)整時間節(jié)點和相對固定時間節(jié)點,靈活調(diào)整時間節(jié)點通常對應(yīng)觀光景點類節(jié)點和物資保障類節(jié)點,是指在有固定旅游行程規(guī)劃的情況下,如果游客在旅途中出現(xiàn)新的需求變動,就可以靈活調(diào)整時間[6]。例如某景點中午用餐時間段用餐人數(shù)較多,可采取先游玩后就餐的方式錯峰安排行程。
3.2.1 判定處理浮動節(jié)點
景區(qū)節(jié)點、購物節(jié)點及娛樂節(jié)點構(gòu)成浮動節(jié)點,浮動節(jié)點一般在上午出現(xiàn)。如果當(dāng)天因特殊原因無法排入浮動節(jié)點,那么可以通過3個條件來判斷接下來的日程安排。
根據(jù)以下條件可以判斷能否將浮動節(jié)點作為候選節(jié)點,主要根據(jù)是否能滿足上訴的判定條件。能滿足一條,就代表該節(jié)點能夠納入半天時段的游覽計劃內(nèi),否則判定為候選節(jié)點,暫時不予處理。詳細(xì)流程安排如圖4所示。
先判斷該要素在當(dāng)天的哪個半天段(上午、下午或晚上),如公式(6)所示。
式中:Tw為所剩的半天段中待分配時長;Tt為景區(qū)的節(jié)點時長。
當(dāng)t>0時,代表當(dāng)前半天時段游覽安排有空余時間,那么可以安排待排節(jié)點,在分配空余時間時引入下一個節(jié)點。當(dāng)t<0時,代表當(dāng)前半天時段游覽安排沒有空余時間,那么不可以加入待排節(jié)點,Δt如公式(7)所示。
式中:Tc為半天的浮動要素時長;Δp為該節(jié)點時長的最大壓縮比例;Δt為該節(jié)點中的旅游時長。
利用公式(7)來判定經(jīng)過節(jié)點時長壓縮后,時段內(nèi)能否再安排該待排節(jié)點。
當(dāng)Δt<0時,將扣除所有被平均分配到半天中的浮動節(jié)點,此時Tc=Tc-t/n(n為浮動要素的數(shù)量),再對該要素的時間進(jìn)行分配,安排進(jìn)入下一個待排節(jié)點;當(dāng)Δt>0時,判定Δt-(Tdw+Taw)·Δp的值與0的關(guān)系(Tdw為用餐分配時間;Taw為住宿分配時間記),如果其值大于0,就表示該時間段有時間富余,此時可以將Tw平均分配到浮動節(jié)點中,引入下一個節(jié)點,如公式(8)所示。
如果Δt-(Tdw+Taw)·Δp<0,那么半天中所有浮動要素扣除Δp時間,如公式(9)所示。
半天時段中扣除用餐時間或住宿時間,分配該旅游節(jié)點時長,接著引入下一個節(jié)點,如公式(10)所示。
通過以上判斷方法及公式確定是否可以將浮動節(jié)點安排進(jìn)旅游行程,可以有效提高節(jié)點安排的合理性,促進(jìn)各浮動節(jié)點的有序組合。
3.2.2 用餐節(jié)點的選擇與安排
使用模型安排用餐節(jié)點,由于不同餐館的用餐時間不同,因此在運(yùn)用模型的過程中劃分了相應(yīng)的用餐時間。在餐飲節(jié)點時長的安排中,引出流程圖(圖5):1)判定研究要素處于哪個時間段。2)記旅游者實際用餐時間為Tdf,餐飲處于的半天時段時間為Tdw,如果Tdf<Tdw,則用餐時間較少,餐飲時段有空余時間可以安排節(jié)點,那么剩余的時間就被歸入下一時段中進(jìn)行優(yōu)化計算。3)如果Tdf>Tdw,則旅游者用餐時間較長,餐飲時段之后安排的節(jié)點只能被壓縮,該節(jié)點得到的最大壓縮比例時長為Δp,為滿足用餐時間,需要Δp最大且判斷Tdf·Δp是否大于Tdw,如果大于Tdw,則將從下一個時間段內(nèi)減去超出的時間。
3.2.3 住宿節(jié)點的選擇與安排
因為住宿節(jié)點是一天中最后的時段,所以利用剩余時間進(jìn)行安排,安排流程如圖6所示。
如果研究節(jié)點不處于晚上的時間段,則直接進(jìn)入下一個節(jié)點計算;如果研究節(jié)點屬于晚上的時間段,則將半天段剩余時間Tw按節(jié)點的時長比例分配給住宿節(jié)點以及半天時段的浮動要素,再引入下一個節(jié)點。
3.2.4 判斷安排交通時長以及特殊節(jié)點
特殊節(jié)點以及交通所需的時長因客觀因素而固定,因此安排行程時無法壓縮時長。當(dāng)壓縮時長時,首選浮動節(jié)點,然后扣除用餐、住宿時長的富裕時間,再對交通時長、特殊節(jié)點進(jìn)行時間安排。具體流程如圖7所示。
當(dāng)t>0時,對該節(jié)點分配時間并引入下一個節(jié)點,如公式(11)所示。
式中:Tw為半天段中所剩的待分配時間;Tt為該節(jié)點的時長。當(dāng)t<0時,如公式(12)所示。
式中:Tc為半天時段的浮動節(jié)點時長。
當(dāng)Δt>0時,半天時段中所有浮動節(jié)點除去Δp時間,如公式(13)所示。
式中:ΔP為研究節(jié)點最大壓縮比例時長;Δt為半天時段中用餐以及住宿的時間。
當(dāng)Δt<0時,對所有的半天段中浮動節(jié)點平均分配t后,對剩余待分配節(jié)點分配時間,引入下一個節(jié)點,如公式(14)所示。
如果此時待分配節(jié)點為0,就說明全部要素被安排完畢,可以判定所有半天段剩余待分配時間Tw與0的關(guān)系,如果不等于0,就可以將Tw均分給浮動節(jié)點。至此,結(jié)束各節(jié)點時長的安排過程。
基于上述算法,選用了一種用于驗證試驗結(jié)果的線路驗證分析方法。在此基礎(chǔ)上,利用行程規(guī)劃模型對試驗樣例的旅行路線進(jìn)行初步數(shù)據(jù)收集,然后利用旅行ID對游客的個人信息和行程基礎(chǔ)信息進(jìn)行匹配,并利用該模型對不同的旅行狀況進(jìn)行計算,從而得到行程規(guī)劃的結(jié)果。
當(dāng)進(jìn)行試驗驗證時,選用Microsoft Windows 7進(jìn)行系統(tǒng)操作,以Microsoft Visual Studio2010及其SP1升級包作為開發(fā)平臺,基于Microsoft SQL Server 2008 R2和ESRI Geodatebase數(shù)據(jù)庫中的數(shù)據(jù)信息,利用C#、Java、HTML以及JavaScript等開發(fā)語言構(gòu)建模型。
模型要求兼容性為IE6.0以上版本的瀏覽器,具備Firefox及Chrome瀏覽器。電腦的CPU頻率為300 MHz~600 MHz,頻率越高越好。瀏覽器分辨率大于或等于800×600 dpi,推薦分辨率配基本為1024×768 dpi。顯示器內(nèi)存大于或等于256 MRAM,推薦1 G RAM內(nèi)存運(yùn)行。
試驗以熟悉的旅游景點為首選目的地,并充分考慮了各節(jié)點所在區(qū)域的空間布局,結(jié)合遺傳算法和路網(wǎng)狀況進(jìn)行路線規(guī)劃。由計劃結(jié)果(表1)可知,在路線安排上,由于景區(qū)與分散的景點之間有一定的聯(lián)系,因此在路線上會優(yōu)先選擇相同的區(qū)域,而不是選擇相鄰的路線,以確保旅游的連續(xù)性。
表1 結(jié)合空間關(guān)系的節(jié)點旅游序列篩選方法
對圖3中的數(shù)據(jù)進(jìn)行分析可知,該方法以最短的路徑長度為基礎(chǔ),并對最佳路線進(jìn)行排序,以確保最短的路徑長度,節(jié)約道路交通時間。從線路排序的結(jié)果來看,該方法考慮了節(jié)點的空間和道路的距離,使該方法的優(yōu)化效果更顯著。
促進(jìn)數(shù)字足跡理念與旅游規(guī)劃行程鏈的有效結(jié)合有利于推動區(qū)域旅游產(chǎn)業(yè)的協(xié)調(diào)發(fā)展和旅游資源的優(yōu)化配置,更好地為旅游者提供旅游個性化定制服務(wù)。在模型構(gòu)建過程中,首先從時間、空間等方面確定旅游節(jié)點篩選辦法。其次,為綜合考慮游客的旅游需求,利用節(jié)點篩選法、時間安排模型法以及最優(yōu)路線設(shè)計法建立旅游規(guī)劃行程鏈的最優(yōu)模型。最后,對篩選出的節(jié)點進(jìn)行日程安排和線路規(guī)劃,最終形成同時考慮時間、空間因素的旅游行程規(guī)劃。通過測試可知,行程鏈模型構(gòu)建有利于基于游客的數(shù)字足跡為其提供更好的具有個性化需求的旅游行程。