徐永琳,王斐然
(1.西北民族大學數學與計算機科學學院,甘肅蘭州730030;2.上海理工大學理學院,上海200090)
隨著西部旅游事業(yè)的不斷發(fā)展,蘭州市自助旅游開始被越來越多的人選擇.以蘭州市10個景點的旅游路線選擇問題為例,通過相關數據研究蘭州市及其附近的10個景點的最短游覽路線;對這10個景點的旅游價值作出較為合理的評估;結合評估結果,對追求旅游價值的游客給出合理的建議.
從goolge上查到蘭州市的電子地圖如圖1所示,從中確定10個景點作為研究對象,抽象出圖2所示的網絡圖.
圖1 蘭州市電子地圖Fig.1 Lanzhou electronic map
圖2 蘭州市網絡圖Fig.2 Lanzhou city network diagram
對于圖2的網絡圖,根據Kruskal算法找出連通各點間的最短路徑.由Kruskal算法[1-4]得出圖3就是連通這10個景點的最短路徑1.結合實際計算出D-E,E-F來回的路程為11.4 km,而J-F,F(xiàn)-E連線的路程為9.3 km,G-I來回的路程為4.6 km,而I-H之間的路程為4.1 km.得出如圖4的最短路徑2:即建議旅客從A點或從E點出發(fā)沿圖4所示的路線的路程最短.
圖3 景點最短路徑1Fig.3 A shortest path 1
圖4 景點最短路徑2Fig.4 A shortest path 2
對于圖2所示的網絡圖,根據Dijkstra[5-7]算法求解,最終得出結果如圖5所示.可以看出,根據Dijkstra和Kruskal算法所求解的結果一樣,但這僅是理論上得出的最短連通路徑,根據實際情況進行調整,計算出D-E,E -F來回的路程為11.4 km,而 J-F,F(xiàn)-E 連線的路程為9.3 km,G -I來回的路程為4.6 km,而 I-H之間的路程為4.1 km,得出如圖6的最短路徑4.
圖5 景點最短路徑3Fig.5 The shortest path 3
圖6 景點最短路徑4Fig.6 The shortest path 4
由于較難用價格來量化旅游價值,因此根據各個旅游景點的實際情況,綜合考慮各景點的異同點,給出如下模型:取評價集為:V={很值得去,值得去,去過,沒興趣};因素集為:R~={服務態(tài)度,設施,好客度,門票};
由上述模糊集構成模糊矩陣為:
則對此景點的模糊綜合評價為:
由于 0.4+0.3+0.2+0.2=1.1≠1,將綜合評價結果歸一化后變?yōu)?18,0.18).
這一評價結果表明37%的人覺得甘肅博物館很值得去,27%的人覺得值得去,18%的人去過,18%的人感覺沒興趣.將這些評價集看成變量X,并且用(1~4)的具體值將其進行量化,最后求出變量X的期望值如下: E(X1)=0.37 ×4+0.27 ×3+0.18 ×2+0.18 ×1=2.83.
因此將此期望值作為該景點的旅游價值.
對蘭州其它各旅游景點的旅游價值采用類似的方法,最終求得結果如下:
B:蘭州西關清真寺
評價結果表明25%的人覺得蘭州西關清真寺很值得去,30%的人覺得值得去,25%的人去過,20%的人感覺沒興趣. E(X2)=0.25 ×4+0.3 ×3+0.25 ×2+0.2 ×1=2.6.
C:蘭州西湖公園
評價結果表明32%的人覺得蘭州西湖公園很值得去,27%的人覺得值得去,27%的人去過,14%的人感覺沒興趣. E(X3)=0.32 ×4+0.27 ×3+0.27 ×2+0.14×1=2.77.
D:蘭州黃河鐵橋
評價結果表明33%的人覺得蘭州黃河鐵橋很值得去,25%的人覺得值得去,25%的人去過,17%的人感覺沒興趣. E(X4)=0.33 ×4+0.25 ×3+0.25 ×2+0.17×1=2.74.
E:蘭州白塔山公園
評價結果表明33%的人覺得蘭州白塔山公園很值得去,24%的人覺得值得去,24%的人去過,19%的人感覺沒興趣. E(X5)=0.33 ×4+0.24 ×3+0.24 ×2+0.19×1=2.71.
F:蘭州五一山升級森林生態(tài)旅游區(qū)
評價結果表明27%的人覺得蘭州白塔山公園很值得去,23%的人覺得值得去,27%的人去過,23%的人感覺沒興趣. E(X6)=0.27 ×4+0.23 ×3+0.27 ×2+0.23×1=2.54.
G:蘭山公園
評價結果表明40%的人覺得蘭州白塔山公園很值得去,20%的人覺得值得去,20%的人去過,20%的人感覺沒興趣. E(X7)=0.4 ×4+07.2 ×3+0.2 ×2+0.2 ×1=2.8.
H:蘭州博物館
評價結果表明29%的人覺得蘭州白塔山公園很值得去,30%的人覺得值得去,19%的人去過,19%的人感覺沒興趣. E(X8)=0.29×4+0.3 ×3+0.19 ×2+0.19 ×1=2.63.
I:蘭州五泉山公園
評價結果表明25%的人覺得蘭州五泉山公園很值得去,25%的人覺得值得去,30%的人去過,20%的人感覺沒興趣. E(X9)=0.25 ×4+0.25 ×3+0.3 ×2+0.2 ×1=2.55.
J:蘭州雁灘公園
評價結果表明30%的人覺得蘭州雁灘公園很值得去,30%的人覺得值得去,20%的人去過,20%的人感覺沒興趣. E(X10)=0.3 ×4+0.3×3+0.2 ×2+0.2 ×1=2.7.
根據以上模型的求解得出下表1.
由于在一天之內,游客并不能將十個景點游遍,上述模型所求結果可以作為其路線選擇的參考,對于具體的路線選擇問題的解決,則采用0-1背包算法進行求解.為了便于算法的實現(xiàn),將上述旅游價值表1中的數據進行放大100倍后得到表2.
為了便于研究,將各景點的旅游價值進行由大到小排序:
A:283、G:280、C:277、D:274、E:271、J:270、H:263、B:260、I:255、F:254.
對于于最求旅游價值最大化的游客而言,假設該游客的旅游起點為A,由于行駛路線多數處在市區(qū)中,因此綜合考慮各種交通因素的影響,假設該游客乘坐的交通工具的時速為5 km/h,并且在每個景點停留一小時,一天的旅游時間最多為10小時.在一天所行駛的路程為25 km,則沒有游遍十個景點.
采用0-1背包算法找出游客所能獲取的最大旅游價值,因此,將25 km作為背包的容量C.則在此容量內,考慮如何能使游客所經過的景點的旅游價值總和最大,即在25 km的路程范圍內所能囊括的景點的總價值最大.
方案1:
先選旅游價值最大的景點放入背包中,根據上述各景點的旅游價值大小順序,則其旅游路線為:
A→G→C→D→E→J→H→B→I→F
按此路線旅游,則在旅游總路程S≤25的約束條件下,該游客只能到達B景點,因為A→G→C→D→E→J→H→B→I的總路程為28.5km﹥C,因此A→G→C→D→E→J→H→B的總路程為21.6km,則其獲得總的旅游價值為:1908.
方案2:
按照Kruskal算法得出的最短旅游路徑作為旅游的路線為:
A→B→D→C→G→I→H→J→F→E,由于總路程為25.4 km>C,則該游客所能經過的景點為:A→B→D→C→G→I→H→J→F,其總路程為20.9 km,所能獲的總的旅游價值為2146.因此,通過比較分析,無論對于追求旅游路線最短還是追求旅游價值最大,方案二比方案一更優(yōu).因為方案二不僅旅游路程較短,而且所獲得旅游價值較大.
表1 各景點的旅游價值Tab.1 The scenic spots in the tourism value
表2 各景點的旅游價值Tab.2 The scenic spots in the tourism value
[1] 刁在筠,劉桂真,宿潔,等.運籌學[M].北京:高等教育出版社,2007:201-203.
[2] 李士勇.工程模糊數學及應用[M].哈爾濱:哈爾濱工業(yè)大學出版社,2004:96-101.
[3] 王曉東.算法設計與分析[M].北京:北京教育出版社,2008:92-94.
[4] 趙靜,但琦.數學建模與數學實驗[M].北京:高等教育出版社,2009:181-187.
[5] 李濤.Matlab工具箱應用指南——應用數學篇[M].北京:電子工業(yè)出版社,2000.
[6] 姜啟源,謝金星,葉俊.數學模型[M].北京:高等教育出版社,2003.
[7] 林浩,皮軍德.有向網絡上單源多匯的最優(yōu)連接問題[J].系統(tǒng)工程學報,2008,23(1):162-168.