Prob_Solve 板


LINE

http://www.tcgs.tc.edu.tw:1218/ShowProblem?problemid=d062 題目如上面連結。 我的做法是先求出任兩點間的最短路徑值, 接著利用貪婪法決定下一個拜訪(最近)的城市。 但如果離起點(當下位置)最近的有兩個以上, 則把這些路徑都測試過一遍。 雖然有通過測驗,但這種作法是正確的嗎? 還是運氣好罷了? 會提出這問題是因為想到 TSP 無法用貪婪解。 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.12.195.169
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Prob_Solve/M.1469456729.A.513.html ※ 編輯: noodleT (39.12.195.169), 07/25/2016 22:26:21
1F:推 FRAXIS: 這問題跟 TSP 應該是等價的吧 所以 greedy 應該不 work.. 07/25 22:37
我認為是不等價的, TSP 中 af 距離為 sqrt(2) 而在此題中 af = ab + bf = 2 觀念若有錯請多包涵 ※ 編輯: noodleT (39.12.195.169), 07/25/2016 22:55:35
2F:推 FRAXIS: TSP 中的 edge weight 是輸入的一部分 07/25 23:03
3F:→ FRAXIS: 你想的 TSP 是 edge weight 被設定為 Euclidean distance 07/25 23:03
4F:→ FRAXIS: 所以只是 TSP 的特例而已.. 07/25 23:03
5F:推 FRAXIS: 不過這題的圖是定死的 而且是 grid 的 subgraph 07/25 23:05
6F:→ FRAXIS: 所以應該有比較快的方法作吧 07/25 23:06
7F:推 DJWS: 運氣好 07/26 06:52
8F:推 FRAXIS: 我查了一下 TSP 在 grid graph 中還是 NPC 的 07/26 11:49
9F:→ FRAXIS: HAMILTON PATHS IN GRID GRAPHS 論文 title 07/26 11:49
10F:→ FRAXIS: 不過如果 grid graph 上面沒有洞的話是多項式可解的 07/26 11:50
11F:→ noodleT: 在這張圖上有什麼例子是貪婪解不出來的? 07/26 12:15
12F:→ noodleT: 看很久沒看出來 07/26 12:16
13F:推 yvb: 從 n 出發, 須拜訪 a, b, f, j, p. 07/26 14:07
14F:→ noodleT: 謝謝樓上,我再想想其他解法 07/26 19:57
15F:→ FRAXIS: 應該就 backtracking 吧 07/26 21:38
目前利用一張表來儲存子問題(應該是屬於動態規劃解),但效果不彰。 從 a 出發把所有點走一遍需要跑 30 秒左右(答案 15?) unsigned SortestVisitWithBacktracking (char begin,const std::vector<char> &visit)const { //map<pair<起點,拜訪點向量>,最小路徑> static std::map<std::pair<char,std::vector<char> >,unsigned> table; //... } 在思考是不是需要改成 unsigned SortestVisitWithBacktracking (char begin,const std::vector<char> &visit,unsigned 剩餘步數限制)const 利用貪婪求一開始的剩餘步數限制, 然後每次遞迴都更新(縮小)剩餘步數限制 ※ 編輯: noodleT (110.28.205.127), 07/28/2016 00:00:13
16F:推 FRAXIS: 應該是要的吧 不然你的方法就等同產生所有排列了.. 07/28 09:16
17F:推 DJWS: TSP可以用動態規劃解 時間從O(n!)變O(2^n * n) 快了很多 07/28 22:00
18F:→ DJWS: O(2^n * n^2) 07/28 22:04
19F:→ noodleT: 加入限制條件後就快多了 08/01 16:38
20F:推 FRAXIS: 你還可以嘗試 A star 08/01 21:01
21F:→ noodleT: 好的 08/01 21:17
22F:→ noodleT: a start 似乎沒有保證最佳解 08/06 21:48
23F:推 FRAXIS: A* 如果你 heuristic 設計的對是保證會有最佳解的.. 08/06 22:02
24F:推 DJWS: 這題的heuristic要怎麼設計?我是第一次聽說這種題目可以A* 08/10 07:06
25F:推 FRAXIS: 要設計不難啊 有沒有用又是另外一回事.. 08/10 08:02
26F:→ FRAXIS: MST 的 cost 應該可以當 heuristic 吧 08/10 08:03
27F:推 DJWS: 是可以,不過總共得算多少次MST呢? 08/10 21:43







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:WOW站內搜尋

TOP