本發(fā)明屬于計算機行程規(guī)劃技術(shù)領(lǐng)域,具體涉及一種基于條件和用戶偏好的行程規(guī)劃方法。
背景技術(shù):
隨著信息技術(shù)的不斷發(fā)展和進步,傳統(tǒng)的面向組件和系統(tǒng)的架構(gòu)模式逐漸演變成面向服務(wù)的設(shè)計模式,服務(wù)計算作為一種新興的計算模式應(yīng)運而生,并廣泛應(yīng)用于各個領(lǐng)域。服務(wù)計算興起之初,絕大多數(shù)研究主要關(guān)注于服務(wù)計算功能性需求的滿足;隨著服務(wù)計算被廣泛應(yīng)用,各種類型的應(yīng)用對系統(tǒng)和服務(wù)提出了越來越高的需求,其中以qos(qualityofservice,服務(wù)質(zhì)量)為代表的非功能性需求,逐漸被關(guān)注。如何對服務(wù)計算的系統(tǒng)進行優(yōu)化,選擇最佳的系統(tǒng)配置和服務(wù)解決方案,以適應(yīng)用戶和服務(wù)供應(yīng)商的需求,成為研究者們關(guān)注的問題。服務(wù)計算的優(yōu)化過程覆蓋服務(wù)系統(tǒng)的整個生命周期,涉及到多個學(xué)科,如運籌學(xué)、復(fù)雜系統(tǒng)建模、系統(tǒng)工程等。服務(wù)組合是服務(wù)計算領(lǐng)域中的一個重要研究問題,科研學(xué)術(shù)工作者對服務(wù)組合的不同場景和不同方法做了大量的研究,其中一個重要的場景就是行程規(guī)劃。但隨著用戶和服務(wù)提供商需求多樣化,關(guān)注的指標和屬性逐漸增加,如何對服務(wù)系統(tǒng)進行最佳配置,如何進行服務(wù)選擇和服務(wù)組合,越來越受到研究者的關(guān)注。研究者們開始考慮將多個目標綜合在一起進行優(yōu)化,如何解決服務(wù)計算的多目標優(yōu)化問題成為研究的熱點。多目標優(yōu)化問題不同于單目標優(yōu)化問題,不同的目標之間可能存在權(quán)衡和折中的關(guān)系,難以找到滿足所有目標的唯一最優(yōu)解。
行程規(guī)劃中的交通選擇和交通組合用到了服務(wù)計算中的服務(wù)選擇和服務(wù)組合技術(shù)。具體來說,行程規(guī)劃中每一階段的交通的選擇,包括路線、時間或車次選擇利用了服務(wù)選擇技術(shù),行程規(guī)劃中交通、酒店的組合及組合目標函數(shù)的確定利用了服務(wù)組合技術(shù)?,F(xiàn)有的自動化行程規(guī)劃方法很難完成細致、復(fù)雜和實用的行程規(guī)劃。一個好的行程規(guī)劃方法要考慮時間、地點、交通偏好、酒店偏好等因素,要在行程的每一環(huán)節(jié)滿足條件和用戶偏好,要符合實際情況并且可以基于用戶修改重新規(guī)劃。
技術(shù)實現(xiàn)要素:
鑒于上述情況,本發(fā)明結(jié)合服務(wù)計算中服務(wù)選擇和服務(wù)組合兩種技術(shù)充分考慮實際行程規(guī)劃中各種因素提出了一種基于條件和用戶偏好的行程規(guī)劃方法,更加切合實際。
一種基于條件和用戶偏好的行程規(guī)劃方法,包括如下步驟:
(1)獲取用戶的行程信息以及偏好信息;
(2)根據(jù)所述行程信息以及偏好信息,獲取所有可行的市際交通班次;
(3)根據(jù)所述行程信息以及偏好信息,生成每一市際交通班次所對應(yīng)的行程規(guī)劃方案;
(4)根據(jù)行程信息排除不滿足會議活動開始時間的行程規(guī)劃方案;
(5)根據(jù)行程信息以及偏好信息,確定剩余每一行程規(guī)劃方案所對應(yīng)的酒店入住信息;
(6)計算剩余每一行程規(guī)劃方案的qos,并依此對行程規(guī)劃方案進行排序并展現(xiàn)推薦給用戶。
所述行程信息包括出發(fā)地位置、目的地位置、會議活動的開始時間和結(jié)束時間;所述偏好信息包括交通偏好和酒店偏好,交通偏好包括出發(fā)城市內(nèi)的交通偏好、市際交通偏好以及到達城市內(nèi)的交通偏好。
所述步驟(2)中通過相關(guān)第三方api(applicationprogramminginterface,應(yīng)用程序編程接口)獲取所有可行的市際交通班次。
所述步驟(3)中通過相關(guān)第三方api生成每一市際交通班次所對應(yīng)的行程規(guī)劃方案。
所述行程規(guī)劃方案包括出發(fā)地位置-出發(fā)城市市際交通站點、出發(fā)城市市際交通站點-到達城市市際交通站點以及到達城市市際交通站點-目的地位置這三段行程所對應(yīng)的出發(fā)時間、到達時間、歷時和交通費用。
所述步驟(5)中通過相關(guān)第三方api確定剩余每一行程規(guī)劃方案所對應(yīng)的酒店入住信息。
所述酒店入住信息包括入住酒店的時間、天數(shù)以及費用。
所述步驟(6)中通過以下關(guān)系式計算剩余每一行程規(guī)劃方案的qos:
qos=ctrip+ehotel
ctrip=w1etrip+w2ttrip+w3dtrip
其中:ctrip為行程總開銷,ehotel為酒店住宿所需總費用,etrip為出發(fā)城市市際交通站點-到達城市市際交通站點的交通費用,ttrip為出發(fā)城市市際交通站點-到達城市市際交通站點的出發(fā)時間與用戶設(shè)定的出發(fā)時間偏好之差的絕對值;若用戶設(shè)定的市際交通方式偏好為火車,則dtrip為出發(fā)城市市際交通站點-到達城市市際交通站點的歷時;若用戶設(shè)定的市際交通方式偏好為飛機,則dtrip為對應(yīng)航班的準點率;w1~w3均為權(quán)重系數(shù)。上述關(guān)系式中的變量均通過歸一化后進行計算。
本發(fā)明的有益技術(shù)效果如下:
(1)本發(fā)明行程方案中的火車、航班、公交、打車、駕車和酒店等數(shù)據(jù)均是通過調(diào)用api獲得的實時數(shù)據(jù),相比于知識庫和經(jīng)驗,本發(fā)明中用于行程規(guī)劃的數(shù)據(jù)實時、準確、可靠。
(2)本發(fā)明考慮了行程方案中各個環(huán)節(jié)和因素,對出發(fā)時間、耗時、價格等因素進行qos量化處理,采用加權(quán)求和方式的多目標服務(wù)選擇方法計算行程方案的得分;相比于未采用服務(wù)計算技術(shù)的行程規(guī)劃方法,本發(fā)明中的多目標服務(wù)選擇方法考慮了多個維度的因素,并且可以對方案進行量化排序。
(3)本發(fā)明充分考慮了行程的出發(fā)具體地點、活動具體地點、活動開始時間、活動結(jié)束時間、交通偏好,以及候車、候機、候場時間等影響行程的因素,可以完成復(fù)雜的、細致的行程規(guī)劃,相比于僅考慮大致地點和日期的簡單行程規(guī)劃方法,本發(fā)明更加切合實際。
附圖說明
圖1為本發(fā)明行程規(guī)劃方法的實現(xiàn)架構(gòu)示意圖。
具體實施方式
為了更為具體地描述本發(fā)明,下面結(jié)合附圖及具體實施方式對本發(fā)明的技術(shù)方案進行詳細說明。
如圖1所示,本發(fā)明利用偏好信息和活動信息然后組合各種服務(wù)生成行程規(guī)劃方案,實施方式以2015年09月05日從杭州到北京出差的行程規(guī)劃為例,行程規(guī)劃包括如下步驟:
(1)設(shè)置偏好,不設(shè)置則使用系統(tǒng)默認偏好。具體如下:
1.1設(shè)置交通偏好,包括以下階段:出發(fā)城市交通單選選項包括公交、打車和自駕;市際交通單選選項包括火車、飛機、自駕;到達城市交通單選選項包括公交、打車和自駕。
1.2在偏好設(shè)置頁面的詳細設(shè)置區(qū)域設(shè)定行程的酒店偏好,酒店偏好多選選項包括快捷酒店、三星級酒店、四星級酒店、五星級酒店、青年旅社、旅館。
1.3在偏好設(shè)置頁面的詳細設(shè)置區(qū)域設(shè)定火車詳細偏好,其中:價格單選項包括低、忽略和高;開車時間單選項偏好包括早、中午、忽略和晚;歷時單選項包括短、忽略和長;車次類型多選項包括g、c、d、z、t、k和其他。
1.4在偏好設(shè)置頁面的詳細設(shè)置區(qū)域設(shè)定航班的詳細偏好,其中:價格單選項包括低、忽略和高;起飛時間單選項偏好包括早、中午、忽略和晚;準點率單選項包括高、忽略和低。
航空公司多選項包括中國國航、南方航空、東方航空、奧凱航空、首都航空、長龍航空、春秋航空、成都航空、大新華航空、東海航空、河北航空、海南航空、華夏航空、吉祥航空、昆明航空、青島航空、四川航空、山東航空、深圳航空、上海航空、天津航空、西部航空、西藏航空、幸福航空、廈門航空、祥鵬航空、英安航空和聯(lián)合航空。
1.5在偏好設(shè)置頁面的詳細設(shè)置區(qū)域設(shè)定住宿的詳細偏好,其中:酒店范圍從0至3000米;辦理入住時間從0至120分鐘;辦理離店時間從0至120分鐘。
1.6在偏好設(shè)置頁面的詳細設(shè)置區(qū)域設(shè)定時間偏好,其中:公交候車時間從0至60分鐘;打車候車時間從0至60分鐘;火車候車時間從0至120分鐘;航班候機時間從0至180分鐘;活動候場時間從0至60分鐘。
(2)新建活動。在新建活動頁面,設(shè)定行程的標題、出發(fā)地、目的地,活動的開始時間、結(jié)束時間。本實施例中活動為航空出差,行程從杭州市西湖區(qū)浙江大學(xué)玉泉校區(qū)到北京市海淀區(qū)清華大學(xué),活動時間從2015-09-0514:25至2015-09-0714:25。新建的活動會展示在活動列表里,用戶可以對活動進行修改和刪除。
(3)行程規(guī)劃。新建活動的同時,系統(tǒng)會根據(jù)本行程規(guī)劃方法、行程信息和偏好信息生成行程組合,包括交通組合和入住酒店方案;詳細過程如下:
3.1根據(jù)活動信息表中出發(fā)城市、前往城市以及用戶設(shè)置的航班偏好,獲取所有可行的航班信息。
3.2根據(jù)每個航班的機場信息、時間信息以及用戶設(shè)置的詳細時間偏好,計算出發(fā)城市打車、航班和到達城市打車的出發(fā)時間、到達時間、歷時和費用。
3.3根據(jù)活動信息表中的活動時間排除不滿足時間要求的交通組合。
3.4根據(jù)交通組合的時間信息以及用戶設(shè)置的酒店偏好和時間偏好計算入住酒店的天數(shù)和費用。
3.5根據(jù)目標函數(shù)計算不同交通組合的qos,對交通組合進行排序。根據(jù)最優(yōu)的交通組合計算入住和離開酒店的時間。
qos=ctrain/flight+ehotel
ctrain=w1etrain+w2ttrain+w3dtrain
cflight=w1eflight+w2tflight+w3rflight
其中,qos是行程組合的目標函數(shù)值,ctrain/flight為行程的開銷,ehotel為住宿費用,ehotel=price×days;ctrain為市際交通為火車時的單程開銷,cflight為市際交通為火車時的單程開銷,etrain為火車票的費用,ttrain為火車開車時間與用戶設(shè)定的開車時間偏好的差的絕對值,dtrain為火車的歷時,eflight為機票的費用,tflight為航班起飛時間與用戶設(shè)定的起飛時間偏好的差的絕對值,rflight為航班的準點率,wi是權(quán)重系數(shù),∑wi=1,值根據(jù)用戶設(shè)置的偏好信息確定。
3.6完成行程規(guī)劃,并以時間軸的方式展示給用戶,將規(guī)劃后的備選航班、酒店方案以列表形式展示給用戶。行程規(guī)劃信息包括交通組合方案、酒店方案,具體包括如下環(huán)節(jié):
a.行程開始及開始日期,本實施例中為2016年4月22日;
b.出發(fā)城市交通,本實施例中為打車,包含開始時間、距離、歷時和費用,點擊導(dǎo)航可以進行導(dǎo)航;
c.市際交通,本實施例中為航班,包含開始時間、機場到機場信息、航班、起飛時間和抵達時間,點擊預(yù)定可以進行機票預(yù)定;
d.到達城市交通,本實施例中為打車,包含開始時間、距離、歷時和費用,點擊導(dǎo)航可以進行導(dǎo)航;
e.入住酒店,包括開始時間、酒店名稱、電話、地址和評分,點擊預(yù)定可以進行酒店預(yù)定;
f.活動開始,包括開始時間、地址和備注;
g.活動結(jié)束,包括結(jié)束時間、地址和備注。
(4)隨后用戶可以在行程時間軸頁面對行程規(guī)劃進行修改,包括修改航班、酒店。在用戶修改航班后,系統(tǒng)會基于修改后的市際交通重新對行程進行規(guī)劃,然后再展示給用戶。在用戶修改酒店后,系統(tǒng)會保存更改后的方案。
上述對實施例的描述是為便于本技術(shù)領(lǐng)域的普通技術(shù)人員能理解和應(yīng)用本發(fā)明。熟悉本領(lǐng)域技術(shù)的人員顯然可以容易地對上述實施例做出各種修改,并把在此說明的一般原理應(yīng)用到其他實施例中而不必經(jīng)過創(chuàng)造性的勞動。因此,本發(fā)明不限于上述實施例,本領(lǐng)域技術(shù)人員根據(jù)本發(fā)明的揭示,對于本發(fā)明做出的改進和修改都應(yīng)該在本發(fā)明的保護范圍之內(nèi)。