天天看點

python 回溯法 子集樹模闆 系列 —— 9、旅行商問題(TSP)

旅行商問題(Traveling Salesman Problem,TSP)是旅行商要到若幹個城市旅行,各城市之間的費用是已知的,為了節省費用,旅行商決定從所在城市出發,到每個城市旅行一次後傳回初始城市,問他應選擇什麼樣的路線才能使所走的總費用最短?

python 回溯法 子集樹模闆 系列 —— 9、旅行商問題(TSP)

此問題可描述如下:G=(V,E)是帶權的有向圖,找到包含V中每個結點一個有向環,亦即一條周遊路線,使得這個有向環上所有邊成本之和最小。

解的長度是固定的n+1。

對圖中的每一個節點,都有自己的鄰接節點。對某個節點而言,其所有的鄰接節點構成這個節點的狀态空間。當路徑到達這個節點時,周遊其狀态空間。

最終,一定可以找到最優解!

顯然,繼續套用回溯法子集樹模闆!!!

python 回溯法 子集樹模闆 系列 —— 9、旅行商問題(TSP)