複製鏈接
請複製以下鏈接發送給好友

最短路徑問題

鎖定
最短路徑問題是組合優化領域的經典問題之一,它廣泛應用於計算機科學、交通工程、通信工程、系統工程、運籌學、信息論、控制理論等眾多領域。Dijkstra算法是經典的最短路徑算法。 [1] 
中文名
最短路徑問題
外文名
shortest path problem
實    質
找出圖中兩個頂點間的最短路徑
應用領域
計算機科學、交通工程、通信工程等

最短路徑問題相關算法

最短路徑問題Dijkstra算法

Dijkstra算法是經典的最短路徑算法,其基本思想是:設置一個集合S存放已經找到最短路徑的頂點,S的初始狀態只包含源點v,對vi∈V-S,假設從源點v到vi的有向邊為最短路徑。以後每求得一條最短路徑v, …, vk,就將vk加入集合S中,並將路徑v, …, vk , vi與原來的假設相比較,取路徑長度較小者為最短路徑,重複上述過程,直到集合V中全部頂點加入到集合S中。使用該算法找到的是全局最優的最短路徑,在網絡節點數量大、網絡邊數較多時,存在內存佔用大、時間複雜度高等不足,並且Dijkstra算法不能很好地解決含必經點約束的最短路徑問題。

最短路徑問題蟻羣算法

蟻羣算法是由Dorigo、Maniezzo和Colorni等於1991 年首先提出來的,它來源於螞蟻尋食的行為。通過研究發現,螞蟻個體之間是通過一種叫做信息素的外激素進行信息傳遞的。螞蟻在行走過程中能感知周圍信息素的強度, 並朝着信息素濃度高的方向移動,當某隻螞蟻發現食物時,它在回巢的過程當中,會在返回的路上釋放信息素作為標記,同伴發現後會沿着此路尋找到食物。當同伴中多隻螞蟻都發現了食物但路徑長短不同時,因為螞蟻在短的路徑上往返所需要的時間相對較小,所以單位時間內走過的螞蟻越來越多,在這條路徑上的信息素濃度就會越強,因此,該路徑上的螞蟻就會越來越多,逐漸選出一條最優的道路。 [1] 
蟻羣算法 蟻羣算法

最短路徑問題分類

可分成兩個子問題,即單源最短路徑問題和所有頂點對之間的最短路徑問題。前者是找出從某一頂點出發到圖中所有其他頂點的最短路徑,主要算法有迪克斯徹算法等;後者是求圖中每一對頂點之間的最短路徑,主要算法有弗洛伊德算法等。 [2] 

最短路徑問題應用

最短路徑問題通信領域

互聯網技術和應用的不斷髮展,對當今網絡通信流量的要求不斷增大。流量大、速度快、費用低的傳輸方式是網絡傳輸的關鍵。路徑最短、代價最低的網絡路由能夠大大降低通信成本、節約網絡資源,提高網絡資源的利用率。 [1] 

最短路徑問題交通運輸

最短路徑問題是交通分配中最基本的問題,是指一對節點之間的路徑中總阻 抗最小的路徑,幾乎所有交通流分配方法都是以它作為一個基本子過程反覆調用。 [3] 
參考資料
  • 1.    王豔愉,李強.必經點約束型最短路徑問題的研究[J].信息技術與網絡安全,2017,36(22):26-29. DOI:10.19358/j.issn.1674-7720.2017.22.008.
  • 2.    夏徵農,陳至立主編;幹福熹編,大辭海 信息科學卷,上海辭書出版社,2015.12,第115頁
  • 3.    侯樹軍.地理信息系統在求解公路交通規劃中最短路徑問題的應用[J].內蒙古公路與運輸,2013,(1):15-17. DOI:10.3969/j.issn.1005-0574.2013.01.007.