技術領域
本發明涉及計算機信息技術領域,具體地說是一種實用性強、基于遺傳算法的旅游行程規劃系統。
背景技術:
隨著經濟的發展和人民生活水平的提高,旅游休閑逐漸成為人們生活的重要組成部分。在國內,大多數游客都只是進行類似周邊游、當地游的短途旅游,然而在交通不斷完善、網絡迅猛發展、旅游配套設施日益齊全以及旅游接待服務規范化的影響下,自助游的發展日趨成熟。旅游業已經從單一的觀光旅游形式逐漸向多元化結構擴展,原有的傳統旅游已逐漸被自駕游、自助游等多樣化的旅游形式所替代。
目前,人們自助旅游最為關心的就是考慮時間、消費傾向等因素制定出一個比較周詳的游玩行程規劃,行程制定必須對旅游目的地的吃、住、行、游、娛、購幾個方面進行信息查詢,獲取上述信息的方法多數游客都是通過旅游資訊網站和搜索引擎網站獲得,可見自己制定行程是非常耗時耗力的。國內有一些提供行程規劃服務的旅游網站,如百度旅游、窮游網等,但普遍缺少人性化與合理化的考慮,基于此,現提供一種科學高效、基于遺傳算法的旅游行程規劃系統。
技術實現要素:
本發明的技術任務是針對以上不足之處,提供一種實用性強、基于遺傳算法的旅游行程規劃系統。
一種基于遺傳算法的旅游行程規劃系統,包括存放游客興趣點的數據庫,該數據庫根據用戶的約束條件建立,所述約束條件包括用戶所選出發地、游玩目的地、游玩時間、游玩消費;行程規劃模塊,根據遺傳算法,生成滿足用戶要求的自助游行程路線。
所述數據庫是指從網絡上獲取系統所必需的信息,并將其作提取、分類處理,最后保存到本地按照必需信息劃分的興趣點數據庫中。
從互聯網上獲取系統所必需的信息步驟中的必需信息包括景點信息、餐館信息、賓館信息,并將其作提取、分類處理,最后保存到本地的興趣點數據庫中,即對應的景點信息數據庫、餐廳信息數據庫、旅館信息數據庫;然后進行周期性維護。
當游客輸入出行的約束條件時,行程規劃模塊首先判斷游客輸入的信息集合是否合理:若合理則根據游客選擇的規劃關鍵信息集,在線獲取所選的興趣點之間的最新的交通信息存儲到本地,再根據已有的興趣點信息數據庫運行行程規劃算法程序,即基于遺傳算法的計算引擎算法,得到并以直觀的方式輸出規劃結果。
行程規劃模塊運行在客戶端上并與游客實現交互,在用戶輸入約束條件后,通過基于遺傳算法的計算引擎算法計算并展示規劃結果,該規劃結果包括用戶輸入的各類興趣點的位置、行程規劃結果、交通信息,所述客戶端安裝在包括智能手機、平板電腦的智能終端上。
所述行程規劃模塊采用的基于遺傳算法的計算引擎算法具體為:
1)首先基于貪婪算法生成初始種群;
2)每一次迭代過程首先計算種群中個體的適應函數值;
3)執行選擇算子:根據精英個體保存策略,將適應值最高的個體納入待交叉操作的個體中,對于所有個體,按照適應函數值比例執行賭輪選擇算子,得到待交叉的父代個體;
4)執行交叉算子:動態調整交叉概率大小,根據交叉概率對父代個體執行貪婪交叉算子,得到交叉后子代群體,采用精英個體保留策略,用交叉前的精英個體替換子代中適應函數值最差的個體;
5)執行變異算子:計算當前變異概率大小,對發生變異的個體執行逆序變異算子。
本發明的一種基于遺傳算法的旅游行程規劃系統,具有以下優點:
本發明提供的一種基于遺傳算法的旅游行程規劃系統,豐富了旅游市場上的行程定制服務,不僅具有良好的易操作性,而且行程規劃功能非常個性合理,顯著減輕自助游游客制定個人行程的繁瑣程度,實用性強,適用范圍廣泛,易于推廣。
附圖說明
附圖1為本發明的實現示意圖。
具體實施方式
下面結合附圖及具體實施例對本發明作進一步說明。
如附圖1所示,本發明的一種基于遺傳算法的旅游行程規劃系統,根據用戶所選游玩目的地、游玩時間、游玩消費等約束條件,建立游客興趣點數據庫,采用遺傳算法,生成滿足用戶要求的人性化(不違背人的日常的作息時間)的自助游行程路線,為游客節省大量的出行前準備時間。
包括游客興趣點數據庫模塊與基于遺傳算法的行程規劃模塊。其中:
游客興趣點數據庫模塊,從網絡上獲取系統所必需的信息,并將其作提取、分類等處理,最后保存到本地的興趣點數據庫。
基于遺傳算法的行程規劃模塊,采用精英個體保留策略優化傳統的遺傳算法,提高遺傳算法的尋優效果。
本系統主要功能是自助游行程規劃,游客可以使用該規劃服務進行行程規劃。由游客選擇規劃關鍵出行信息(如出發地、目的地、旅行時間、旅行預算等),系統首先判斷所選擇的信息集合是否合理,這里的合理是指根據實際情況判斷,比如旅行預算設置上下閾值,合理即為旅行預算在上下閾值之間的范圍內;旅行時間設置游覽時間的閾值,合理即為旅行時間在游覽時間的閾值范圍內;出發地與目的地之間的交通實現方式是否合理等可由設計人員在系統中錄入標準值后與游客輸入信息進行對比即可。若合理則根據游客選擇的規劃關鍵信息集,在線獲取所選的興趣點之間的最新的交通信息存儲到本地,再根據已有的興趣點信息數據庫運行行程規劃算法程序,得到并以直觀的方式輸出規劃結果。
游客興趣點數據庫維護模塊的主要功能是從互聯網上獲取系統所必需的信息,并將其作提取、分類等處理,最后保存到本地的興趣點數據庫(景點信息數據庫、餐廳信息數據庫、旅館信息數據庫)。選擇國內LBS服務最全面、最優秀的兩家公司(百度、高德)提供的數據作為搜索的目標源。每間隔一段時間進行一次更新維護,以保證數據的最新性。
系統最重要的模塊是行程路線規劃服務,系統組織交互平臺向用戶提供基本規劃需求選項列表,如有景點列表、餐廳列表等。用戶在交互平臺上完成交互操作后,行程規劃模塊根據用戶的選擇和其它基本規劃需求,如旅游目的地、旅游總時間安排等,運用基于遺傳算法的計算引擎進行規劃行程并輸出規劃結果。這個模塊主要運行在客戶端上,客戶端實現這個交互,在客戶端上可以直觀的查看各類興趣點的位置、行程規劃結果、交通信息等,并且可以方便的操作。
基于遺傳算法的計算引擎算法基本流程如下:
1)基于貪婪算法生成初始種群。
2)每一次迭代過程首先計算種群中個體的適應函數值。
3)執行選擇算子:根據精英個體保存策略,將適應值最高的個體納入待交叉操作的個體中,對于所有個體,按照適應函數值比例執行賭輪選擇算子,得到待交叉的父代個體。
4)執行交叉算子:結合當前進化情況動態調整交叉概率大小,根據交叉概率對父代個體執行貪婪交叉算子,得到交叉后子代群體。采用精英個體保留策略,用交叉前的精英個體替換子代中適應函數值最差的個體。
5)執行變異算子:結合當前進化情況計算當前變異概率大小,對發生變異的個體執行逆序變異算子。
上述具體實施方式僅是本發明的具體個案,本發明的專利保護范圍包括但不限于上述具體實施方式,任何符合本發明的一種基于遺傳算法的旅游行程規劃系統的權利要求書的且任何所述技術領域的普通技術人員對其所做的適當變化或替換,皆應落入本發明的專利保護范圍。