本發(fā)明屬于時空數(shù)據(jù)管理,具體涉及一種基于深度強化學習的多關鍵字覆蓋下最優(yōu)路徑查詢方法,用來實現(xiàn)真實路網(wǎng)中滿足特定關鍵字需求的最短路徑查詢。
背景技術:
1、隨著支持gps的智能設備在日常生活中的廣泛普及,道路網(wǎng)絡中關于興趣點的信息變得越來越詳細。這種發(fā)展使得導航系統(tǒng)不僅僅局限于為用戶計算最短路徑或最快路徑,還能夠進一步滿足用戶在出行中多樣化和個性化的需求,例如基于不同偏好、興趣或目標的路線推薦。因此,新興的關鍵字感知路徑規(guī)劃近年來受到了廣泛關注,因為它在尋找具有最小成本的路徑方面表現(xiàn)出色。這種方法不僅可以優(yōu)化傳統(tǒng)的路徑成本參數(shù),例如距離和旅行時間,還能靈活地滿足用戶的多重關鍵字需求,在出行過程中覆蓋特定的興趣點或服務要求。這些關鍵字通常與用戶旅行期間希望訪問的特定興趣點或服務需求相關,使得導航系統(tǒng)能夠提供更加貼合用戶實際需求的解決方案。例如,用戶可能希望在旅行途中訪問若干指定類型的興趣點,如餐廳、加油站或旅游景點,而關鍵字感知路由能夠在滿足這些需求的前提下,規(guī)劃出一條成本最優(yōu)的路徑。
2、現(xiàn)有的解決方法主要分為兩大類:第一類為基于路徑擴展的算法,其通過逐步擴展已有路徑來尋找解決方案。其優(yōu)勢在于,由于路徑是按照長度遞增的順序形成的,因此通常在解決方案的質(zhì)量上能取得較好的結果。然而,由于現(xiàn)實中的道路網(wǎng)絡可能包含成千上萬個節(jié)點以及大量的關鍵字,其計算成本也顯著增加,從而嚴重限制了其實際應用。第二類是基于興趣點候選集合的算法,其通過不同的空間索引技術,從點集v中篩選出一組可能成為最終解決方案的興趣點候選點,然后基于這些候選點生成路徑。該方法通過避免路徑擴展顯著減少了計算時間,但路徑生成本質(zhì)上是一個是一個np難問題,因此其解決方案的質(zhì)量往往有所欠缺。
3、因此,在路徑質(zhì)量和計算時間之間找到一個有效的平衡策略仍然是一項具有挑戰(zhàn)性的任務。如果對興趣點候選集做進一步過濾,并利用深度強化學習模型來探索其中的組合空間,就可以解決以上問題。
技術實現(xiàn)思路
1、為了在多關鍵字覆蓋的最優(yōu)路徑查詢問題中取得路徑質(zhì)量和計算時間之間的平衡,本發(fā)明提出了基于深度強化學習的多關鍵字覆蓋下最優(yōu)路徑查詢方法,包括如下步驟,
2、步驟1:利用ig-tree結構對大規(guī)模路網(wǎng)進行區(qū)域劃分,同時結合輸入的關鍵字需求生成相應的興趣點候選集;采用高效的路網(wǎng)索引技術h2h計算每個興趣點與起終點及其他興趣點的距離關系對候選集進一步篩選,得到包括關鍵字信息以及相互距離信息的興趣點候選集的;
3、步驟2:建立基于編碼器-解碼器架構的深度學習模型,將經(jīng)過篩選的興趣點候選集輸入到該模型種,得到最優(yōu)的興趣點組合;通過強化學習對模型進行訓練和優(yōu)化,使其能夠在路網(wǎng)環(huán)境中自主調(diào)整策略并找到全局最優(yōu)路徑。
4、進一步的,在編碼器中,采用注意力機制來傳遞每個興趣點的關鍵字信息,并采用多層感知機來處理興趣點之間的距離信息;在解碼器中,利用注意力機制得到每個時間步下應訪問的興趣點;同時基于gpu的并行計算來同時生成多條路徑來提高結果質(zhì)量,最后將多條路徑的距離均值作為基線參與到強化學習的策略梯度計算得到全局最優(yōu)路徑。
5、進一步的,步驟1中,結合ig-tree結構與h2h算法得到過濾篩選候選集具體包括步驟如下:
6、步驟1.1:ig-tree以分層方式組織圖的分區(qū)來實現(xiàn)高效的k近鄰搜索,原始圖通過任意邊切算法被劃分成一組邊不相交的子圖;這些分區(qū)以層次化的方式合并成更大的分區(qū),其中原始圖是最大的分區(qū);合并關系會生成一棵樹來組織這些分區(qū),原始圖是樹的根節(jié)點;ig-tree的葉節(jié)點是每個分區(qū)內(nèi)的興趣點用于存儲關鍵字信息,并且被存儲為位圖;對于每個關鍵字,用一位二進制0或1來指示當前頂點是否包含該關鍵字;
7、為了獲取興趣點候選集,首先需要找到一個滿足包含起點和終點及所有關鍵字需求的子圖;因此,首先確定起點和終點的最近公共祖先節(jié)點;然后利用其對應的位圖來測試是否滿足查詢關鍵字;如果最近公共祖先分區(qū)中的興趣點無法覆蓋關鍵字集合,則遞歸地搜索最近公共祖先的父節(jié)點,直到找到一個可以完全滿足關鍵字需求的分區(qū)節(jié)點為止;隨后,將該分區(qū)中符合關鍵字需求的所有興趣點加入候選集中;
8、步驟1.2:利用最短路徑索引h2h算法計算兩點之間的距離;具體的,對于候選集中每個關鍵字的所有興趣點,首先計算每個興趣點與起點和終點之間距離的總和;之后計算到其他興趣點的距離的最大下界;隨后,將同一關鍵字下的候選點集合按距離總和的升序排序,并選擇距離總和最小的前k個點,得到對初始候選集形成過濾后的興趣點候選集。
9、進一步的,步驟2中,基于編碼器-解碼器的深度學習模型得到最優(yōu)的興趣點組合方法如下:
10、步驟2.1:編碼器的輸入由行節(jié)點信息r(由向量embr表示)、列節(jié)點信息c(由向量embc表示)和對應的距離矩陣構成。其中,距離矩陣來源于過濾后的興趣點候選集,行節(jié)點ri到列節(jié)點cj之間的距離由w(i,j)表示。行節(jié)點向量用于表示每個興趣點的關鍵字信息,其設計基于關鍵字二值化表示,采用0或1指示某一興趣點是否包含特定關鍵字,從而賦予模型捕獲興趣點語義特征的能力。而列節(jié)點向量通過熱向量編碼進行初始化,用于標識興趣點的類別信息,同一類別的興趣點共享相同的熱向量編碼,這使得模型能夠有效地學習興趣點的分類特征。最終由多層注意力機制f來執(zhí)行信息傳遞,由下面公式表示
11、
12、步驟2.2:重構注意力機制融合矩陣信息,通過動態(tài)加權的方式突出最相關的信息,增強特征表示能力;具體而言,模型將距離矩陣作為外部信息,興趣點的關鍵字和分類特征作為內(nèi)部信息,并通過多層感知機實現(xiàn)內(nèi)外部信息的分數(shù)混合,動態(tài)調(diào)整不同信息源的權重,最終提取出最優(yōu)的特征表示;
13、步驟2.3:在編碼器對興趣點集合完成注意力編碼之后,解碼器將多次迭代操作,通過逐步?jīng)Q策在每個時間步確定當前應訪問的興趣點;具體而言,解碼器首先將行節(jié)點向量作為注意力機制的query,列節(jié)點向量作為key和value,以此實現(xiàn)對興趣點之間關系的動態(tài)建模;
14、步驟2.4:在模型的訓練過程中,通過利用gpu的并行計算生成多個解,并將這些解的反饋信息用于參數(shù)調(diào)整;具體來說,在參數(shù)訓練過程中,讓每一個興趣點都作為起點分別探索路徑,并并行生成多條完整路徑的解;隨后,根據(jù)生成的所有路徑的距離計算均值,并將該均值作為強化學習中reinforce算法的基準值,參與策略梯度更新;
15、步驟2.5:通過簡單計算每個興趣點到指定起點的距離,從中篩選出最合適的k個興趣點作為起點候選;隨后,在編碼階段執(zhí)行n次編碼,每次使用不同的熱向量編碼作為輸入,以引導模型從不同的角度對當前問題進行分析;通過上述方法,模型將生成n×k個解決方案,從中選擇全局最優(yōu)的一條作為最終輸出。
16、進一步的,在步驟2.3中,模型將第一個訪問的興趣點、上一個訪問的興趣點,以及起點和終點對應的行節(jié)點向量進行拼接,構造出當前狀態(tài)的向量表示,并將其作為query令牌;該query令牌與列節(jié)點中每個興趣點的向量進行注意力分數(shù)計算,所得的分數(shù)反映了當前時間步下每個興趣點作為下一個訪問節(jié)點的概率;
17、模型對解碼過程進行了進一步的限制,將起點、終點以及所有已訪問興趣點所屬關鍵字下的其他興趣點的概率直接置為負無窮,從而在概率分布中排除這些候選點;通過多次迭代,解碼器逐步選擇興趣點,直到構建出一條從起點出發(fā)并最終到達終點的完整路徑;且在該路徑生成的過程中,模型通過約束條件確保每個關鍵字下選擇一個興趣點,滿足了關鍵字覆蓋的要求。
18、本發(fā)明的有益效果如下:
19、本發(fā)明提出了一種基于深度強化學習的多關鍵字覆蓋下最優(yōu)路徑查詢方法,可在大規(guī)模路網(wǎng)中高效計算出覆蓋所有關鍵字且路徑長度最短的最優(yōu)路徑,適用于復雜路網(wǎng)的路徑優(yōu)化需求。方法包括:利用ig-tree結構對路網(wǎng)進行區(qū)域劃分,結合關鍵字需求生成興趣點候選集以縮小搜索范圍;通過h2h路網(wǎng)索引技術對候選集進一步篩選;將篩選后的候選集輸入基于編碼器-解碼器的深度學習模型,探索關鍵字覆蓋的最優(yōu)組合;并通過強化學習優(yōu)化模型策略,以自主找到全局最優(yōu)路徑。
20、本發(fā)明提出的編碼器專為處理以距離形式表示的路網(wǎng)拓撲關系而設計,彌補了原始編碼器在關鍵特征融合上的不足。在傳統(tǒng)的編碼器設計中,僅關注興趣點自身的屬性信息,而忽略了興趣點之間的距離關系。然而,在路網(wǎng)空間中,興趣點之間的距離是至關重要的決策因素。因此,本發(fā)明創(chuàng)新性地引入多層感知機,將興趣點的關鍵字信息與距離信息進行深度融合。通過模型自動學習分配權重,從而更全面地表示路網(wǎng)中的結構特性。
21、此外,為了加速模型的訓練過程并充分利用gpu在并行計算上的優(yōu)勢,本發(fā)明設計了一種多路徑生成的策略。在每個訓練步驟中,模型同時生成多條路徑,這些路徑被用于梯度更新,以減少梯度估計的方差。這種并行路徑生成和更新的機制不僅能夠顯著降低訓練過程中的波動,還能加快模型的收斂速度,從而有效提高訓練效率和性能。