[發明專利]基于角度限制和雙向搜索的城市路網最短路徑獲取方法有效
| 申請號: | 202110235456.6 | 申請日: | 2021-03-03 |
| 公開(公告)號: | CN112991800B | 公開(公告)日: | 2022-03-15 |
| 發明(設計)人: | 丁建勛;馮戰雨;江宇鵬;周潤東;丁衛東;滿忠運;查菲菲;夏力;徐小明;龍建成 | 申請(專利權)人: | 合肥工業大學 |
| 主分類號: | G08G1/0968 | 分類號: | G08G1/0968 |
| 代理公司: | 安徽省合肥新安專利代理有限責任公司 34101 | 代理人: | 陸麗莉;何梅生 |
| 地址: | 230009 安*** | 國省代碼: | 安徽;34 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 角度 限制 雙向 搜索 城市 路網 路徑 獲取 方法 | ||
1.一種基于角度限制和雙向搜索的城市路網最短路徑獲取方法,其特征按如下步驟進行:
步驟1:構建城市路網并獲取任意交叉口的平面坐標;
獲取實時道路網絡數據并得到城市路網G=(V,A),其中,V表示交叉口集合,V={v1,v2,…,vq,…,vQ},vq表示第q個交叉口,q=1,2,…,Q;Q表示交叉口的總數,A表示交叉口之間的路段集合,且A={aij=(vi,vj)|i,j=1,2,...Q},aij表示第i個交叉口vi與第j個交叉口vj之間的路段,且aij∈{A1,A2,A3,A4},其中A1表示快速路,A2表示主干道,A3表示次干道,A4表示支路;令路段aij上的時間權重屬性為tij,且dij表示路段aij的長度,vij表示路段aij的預期通行車速;若第i個交叉口vi與第j個交叉口vj之間沒有路段,則令tij=+∞;
根據實時道路網絡數據得到城市道路中第i個交叉口vi的平面坐標為(xi,yi)和第j個交叉口vj的平面坐標為(xj,yj),則第i個交叉口vi與第j個交叉口vj之間的路段向量記為
步驟2:假設駕駛員的出發點為第s個交叉口,目的點為第t個交叉口vt,并以出發點到目的點的方向的行駛方向為前向搜索方向,以目的點到出發點方向的行駛方向為后向搜索方向,給定路徑搜索的限制角度為α,且0≤α≤π;
步驟3:定義參數并初始化;
步驟3.1:定義基礎參數:
定義n為當前迭代次數,則第n次迭代的第s個交叉口vs到第j個交叉口vj的最短行程時間為Tn(vs,vj);定義第s個交叉口vs與第t個交叉口vt的歐式距離記為lst,定義vmax為所有路段類型中行駛的最大速度,則定義第s個交叉口vs到第t個交叉口vt的理論最短行程時間為并作為行程時間下界;定義第n次迭代的出發點的交叉口vs和目的點的交叉口vt之間的最短行程時間為Tn(vs,vt),并作為行程時間上界
步驟3.2:定義前向搜索參數:
定義第n次迭代的前向搜索邊界內部交叉口集合為定義第n次迭代的前向搜索邊界外部交叉口集合為定義前向搜索擴充邊界交叉口集合記為
步驟3.3:定義后向搜索參數:
定義第n次迭代的后向搜索邊界內部交叉口集合為定義第n次迭代的后向搜索邊界外部交叉口集合為定義后向搜索擴充邊界交叉口集合記為
步驟3.4:定義第n次迭代的雙向邊界交叉口集合為定義第n次迭代的邊界內部交叉口
步驟3.5:參數初始化:
初始化n=1,
步驟4:更新第n次迭代的前向搜索邊界內部交叉口集合前向搜索邊界外部交叉口集合后向搜索邊界內部交叉口集合后向搜索邊界外部交叉口集合
步驟4.1:更新第n次迭代的前向搜索邊界內部交叉口集合和向搜索邊界外部交叉口集合
將滿足ask=(vs,vk)∈A的第k個交叉口vk作為鄰居交叉口;并遍歷第s個交叉口vs的所有鄰居交叉口,如果成立,則將賦值給將第k個交叉口vk加入擴充邊界交叉口集合否則,將賦值給其中,表示第s個交叉口vs和第k個交叉口vk之間的路段向量,表示第s個交叉口vs和第t個交叉口vt之間的路段向量;
步驟4.2:更新第n次迭代的后向搜索邊界內部交叉口集合和后向搜索邊界外部交叉口集合
將滿足alt=(vl,vt)∈A的第l個交叉口vl作為鄰居交叉口;遍歷第t個交叉口vt的所有鄰居交叉口,如果成立,則將賦值給將第l個交叉口vl加入擴充邊界交叉口集合否則,將賦值給其中,表示第t個交叉口vt和第l個交叉口vl之間的路段向量,表示第t個交叉口vt和第s個交叉口vs之間的路段向量;
步驟5:如果擴充邊界交叉口集合則轉入步驟6,否則按照步驟5.1和步驟5.2繼續更新第n次迭代的前向搜索邊界內部交叉口集合前向搜索邊界外部交叉口集合后向搜索邊界內部交叉口集合后向搜索邊界外部交叉口集合
步驟5.1:繼續更新第n次迭代的前向搜索邊界內部交叉口集合和第n次迭代的前向搜索邊界外部交叉口集合
步驟5.1.1:判斷前向搜索擴充邊界交叉口集合中第i個交叉口vi:
步驟5.1.2:將滿足aij=(vi,vj)∈A的第j個交叉口vj作為鄰居交叉口,且
遍歷第i個交叉口vi的所有鄰居交叉口,如果成立,則將賦值給將第i個交叉口vi從前向搜索擴充邊界交叉口集合中刪除,將賦值給并執行步驟5.1.3;其中,表示第i個交叉口vi和第j個交叉口vj之間的路段向量,表示第i個交叉口vi和第t個交叉口vt之間的路段向量;否則,將賦值給將第i個交叉口vi從前向搜索擴充邊界交叉口集合中刪除;并按照步驟5.1.2的過程判斷前向搜索擴充邊界交叉口集合中的下一個交叉口;
步驟5.1.3:按照步驟5.1.2的過程判斷前向搜索擴充邊界交叉口集合中的第j個交叉口vj;
步驟5.2:繼續更新第n次迭代的后向搜索邊界內部交叉口集合和第n次迭代的后向搜索邊界外部交叉口集合
步驟5.2.1:判斷后向搜索擴充邊界交叉口集合中第m個交叉口vm:
步驟5.2.2:將滿足amn=(vm,vn)∈A的第n個交叉口vn作為鄰居交叉口,且
遍歷第m個交叉口vm的所有鄰居交叉口,如果則將賦值給將第m個交叉口vm從后向搜索擴充邊界交叉口集合中刪除,將賦值給并執行步驟5.2.3;其中,表示第m個交叉口vm和第n個交叉口vn之間的路段向量,表示第m個交叉口vm和第s個交叉口vs之間的路段向量;否則,將賦值給將第m個交叉口vm從后向搜索擴充邊界交叉口集合中刪除;并按照步驟5.2.2的過程判斷后向搜索擴充邊界交叉口集合中的下一個交叉口;
步驟5.2.3:按照步驟5.2.2的過程判斷后向搜索擴充邊界交叉口集合中的第n個交叉口vn;
步驟6:更新第n次迭代的雙向邊界交叉口集合Mn并得到經過第n次迭代的雙向邊界交叉口集合Mn內交叉口的最短行程時間;
步驟6.1:通過標號修正法得到出發點的交叉口vs到第n次迭代的前向搜索邊界內部交叉口集合內任一交叉口的最短行程時間及最短路徑,其中,出發點的交叉口vs到第n次迭代的雙向邊界交叉口集合Mn內的第k個交叉口vk的最短行程時間為Tn(vs,vk);
步驟6.2:通過標號修正法得到目的點的交叉口vt到第n次迭代的后向搜索邊界內部交叉口集合內任一交叉口的最短行程時間及最短路徑,其中,目的點的交叉口vt到第n次迭代的雙向邊界交叉口集合Mn內的第k個交叉口vk的最短行程時間為Tn(vt,vk);
步驟6.3:遍歷第n次迭代的雙向邊界交叉口集合Mn內第k個交叉口vk,則出發點的交叉口vs到目的點的交叉口vt的最短行程時間
步驟6.4:判斷行程時間最優性并更新行程時間上界
步驟6.4.1:如果Tn(vs,vt)=T,則轉入步驟12;否則,轉入步驟6.4.2;
步驟6.4.2:將第s個交叉口vs到第t個交叉口vt的時間上界更新為令前后向搜索擴充邊界交叉口轉入步驟7;
步驟7:基于行程時間上界繼續更新第n次迭代的前向搜索邊界內部交叉口集合前向搜索邊界外部交叉口集合后向搜索邊界內部交叉口集合后向搜索邊界外部交叉口集合
步驟7.1:基于行程時間上界繼續更新第n次迭代的前向搜索邊界內部交叉口集合和前向搜索邊界外部交叉口集合
對于第n次迭代的前向搜索邊界外部交叉口集合中的第i個交叉口vi,從出發點的交叉口vs到第i個交叉口vi、第i個交叉口vi到目的點的交叉口vt兩者的理論最短行程時間之和為其中,lsi表示第s個交叉口vs與第i個交叉口vi的歐式距離,lit表示第i個交叉口vi與第t個交叉口vt的歐式距離;如果則將賦值給將第i個交叉口vi加入前向搜索擴充邊界交叉口集合將第i個交叉口vi從前向搜索邊界外部交叉口集合中刪除,從而得到更新后的前向搜索邊界外部交叉口集合否則,將第i個交叉口vi從前向搜索邊界外部交叉口集合中刪除,從而得到更新后的前向邊界外部交叉口集合
步驟7.2:基于行程時間上界繼續更新第n次迭代的后向搜索邊界內部交叉口集合和后向搜索邊界外部交叉口集合
對于第n次迭代的后向搜索邊界外部交叉口集合中的第m個交叉口vm,從出發點的交叉口vs到第m個交叉口vm、第m個交叉口vm到目的點的交叉口vt兩者的理論最短行程時間之和為其中,lsm表示第s個交叉口vs與第m個交叉口vm的歐式距離,lmt表示第m個交叉口vm與第t個交叉口vt的歐式距離;如果則將賦值給將第i個交叉口vi加入后向搜索擴充邊界交叉口集合將第i個交叉口vi從后向搜索邊界外部交叉口集合中刪除,從而得到更新后的后向搜索邊界外部交叉口集合否則,將第i個交叉口vi從后向搜索邊界外部交叉口集合中刪除,從而得到更新后的后向邊界外部交叉口集合
步驟8:基于行程時間上界繼續更新第n+1次迭代的前向搜索邊界內部交叉口集合前向搜索邊界外部交叉口集合后向搜索邊界內部交叉口集合后向搜索邊界外部交叉口集合
步驟8.1:基于行程時間上界繼續更新第n+1次迭代的前向搜索邊界內部交叉口集合和前向搜索邊界外部交叉口集合
依次判斷前向搜索擴充邊界交叉口集合中第i個交叉口vi,遍歷第i個交叉口vi的鄰居交叉口,即滿足aij=(vi,vj)∈A的第個j交叉口vj,且的第j個交叉口vj,如果且則將第i個交叉口vi從前向搜索擴充邊界交叉口集合中刪除,將賦值給否則,將第i個交叉口vi從前向搜索擴充邊界交叉口集合中刪除,將賦值給其中,表示第i個交叉口vi和第j個交叉口vj之間的路段向量,表示第i個交叉口vi和第t個交叉口vt之間的路段向量;
步驟8.2:基于行程時間上界繼續更新第n+1次迭代的后向搜索邊界內部交叉口集合和后向搜索邊界外部交叉口集合
依次判斷后向搜索擴充邊界交叉口集合中第m個交叉口vm,遍歷第m個交叉口vm的鄰居交叉口,即滿足amn=(vm,vn)∈A的第m個交叉口vm,且的第n個交叉口vn,如果且則將第m個交叉口vm從后向搜索擴充邊界交叉口集合中刪除,將賦值給否則,將第m個交叉口vm從后向搜索擴充邊界交叉口集合中刪除,將賦值給其中,表示第m個交叉口vm和第n個交叉口vn之間的路段向量,表示第m個交叉口vm和第s個交叉口vs之間的路段向量;
步驟8.3:更新第n+1次迭代的雙向邊界交叉口集合
步驟9:判斷Un+1=Un是否成立,若成立,則執行步驟10;否則,將n+1賦值給n,轉入步驟6;
步驟10:輸出標號修正法所得到的最短路徑,如果n=1,則最終的最短行程時間為T*=
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于合肥工業大學,未經合肥工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110235456.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種公共安全用滅火器防護裝置
- 下一篇:一種水面清理設備及水面清理系統





