- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
演算法课程AlgorithmsCourse8回溯分枝与限制Backtracking
Algorithms (Dr. Shi-Jay Chen, National United University) Course 8回溯、分枝與限制Backtracking, Branch-and-Bound ▓ Outlines 本章重點 求解Optimization Problems Backtracking vs. Branch and Bound Backtracking Branch and Bound ▓ 求解Optimization Problems 若以暴力演算法來求算最佳化問題,對於有n個輸入項目的最佳化問題 (X1, X2, …, Xn): 有些被歸類為 “部份集合(Subset)” 問題,則會有2n種可能的情況 如:部份集合之和 (Sum of Subset)問題、0/1背包問題…等 有些被歸類為 “排列(Permutation)”問題,則會有n!種可能的情況 如:N皇后(N-Queen)問題、旅行銷售員問題(Traveling Salesman Problem; TSP)、漢米爾頓迴路(Hamiltonian Circuits)問題、圖形著色(Graph-Coloring)問題…等 上述問題若以暴力法來解,皆屬指數複雜度的問題,若可採用最佳化原則,通常可以將這一些問題的複雜度由指數複雜度降為多項式複雜度。 Dynamic Programming 和 Greedy Approach所能處理的最佳化問題需滿足最佳化原則: 最佳化原則(Principle of Optimality):?當一個問題存在著某個最佳解,則表示在此最佳解中,也必存著該問題之所有子問題的最佳解 此類問題可利用 “貪婪法則” 或 “動態規劃” 來設計演算法 然而,並不是所有求最佳化的問題都合乎最佳化原則,此時就只能用其它的方法求解了。 ▓ Backtracking vs. Branch and Bound 對於具有限制的最佳化問題,除了可以採用 “貪婪法則” 或 “動態規劃” 來設計演算法則之外,若問題不具有 “最佳化原則”時,可考慮採用回溯(Backtracking)或分枝與限制(Branch and Bound)之解題策略。 這兩種解題策略均是將問題的所有可能解答,表示成一個稱為狀態空間樹 (State Space Tree) 的樹狀結構。接著, 回溯策略採用 “深先搜尋法” (Depth-First Search; DFS) 對狀態空間樹中每一個節點進行檢查 分枝與限制策略採用 “廣先搜尋法” (Breadth-First Search; BFS) 對狀態空間樹中每一個節點進行檢查 上述的兩個策略,皆透過 “邊界函數” (Bounding Function) 來刪除一些不必要的子樹搜尋動作,以提昇搜尋效率。 解答空間 (Solution Space) 每個問題通常都可為其定義一個解答空間 (Solution Space): S = { (X1, X2, …, Xn) ; (X1, X2, …, Xn)為滿足問題的所有解} 這個空間必須至少包含該問題的一個解答,而這個解答也可能就是一個最佳解。 以具有n個商品的0/1背包問題來說,其解答空間是由2n個可能解答所構成;每一個可能解為n個 0 或 1所構成之集合,這個集合表示 “對所有商品Xi分別指派0和1的可能方法” 若有3個商品 (n=3),其0/1背包問題之解答空間共有2n = 23 = 8個可能解: S = {(0, 0, 0), (0, 0, 1), (0, 1, 0), (0, 1, 1), (1, 0, 0), (1, 0, 1), (1, 1, 0), (1, 1, 1)} 為了方便搜尋解答空間,我們可以將解答空間組織化,其中最典型的組織方式是樹狀結構,又稱狀態空間樹 (State Space Tree) 狀態空間樹 (State Space Tree) 某些問題的解答,可以產生樹狀結構來列舉所有可能的答案組合。任何一條從樹根節點到葉節點的路徑就是一個可能的答案,這個樹狀結構也因此稱為狀態空間樹(State Space Tree)。 下圖是3個商品的0/1背包問題之狀態空間樹: 由上圖可知,如果是有n個輸入項目的排列問題或是部份集合問題,則狀態空間樹所有可能的狀態個數(即:葉節點個數)分別為n!或是2n。 因此,回溯和分枝與限制的設計策略中,會加入使用邊界函數來決定是否需要繼續搜尋後續的狀態空間,以去除不必要的子樹搜尋。若: 當搜尋到 “不可行” 的節點 (即:課本所指的沒前途(nonpromising)節點) 時,則不用再去搜尋該節點以下之所有分枝節點。 此即為修剪 (Pruning) 當搜尋到 “可行” 的節點 (即:課本所指的有前途(promis
您可能关注的文档
- 江宁职教中心校园广播系统设备清单-石首高级技工学校.DOC
- 江河水库和学校及周边学生安全意识淡薄是多数事故发生的重要原因.PPT
- 江苏城乡收入差距与产业结构的发展现状研究-金融教育研究.PDF
- 江苏发行管理信息系统常见问题处理手册-选择发行企业类别.PDF
- 江苏太湖地区水质自动监测系统的研发和实现.PDF
- 江苏苏南太湖地区水质自动监测系统的研究和实现.PDF
- 汽车制造工艺学教学大纲-Welcometohbeicomcn.DOC
- 江苏驾驶培训智能化管理与服务系统-镇江驾培网.DOC
- 汽车电气化和智能化技术论坛-MesseFrankfurtHKLtd.PDF
- 汽车票电子商务和自助售票机应用的可行性方案-杭州视界科技.PDF
最近下载
- 《新能源汽车维护与保养》课件——任务1新能源汽车起动、操控与充电.pptx VIP
- 2019年山东省广播电视技术能手竞赛(网络安全)答案.doc VIP
- 2025年华北煤炭医学院附属医院医护人员招聘参考题库含答案解析.docx VIP
- 起重机械培训(初训)课件.ppt VIP
- 《危化品企业安全隐患排查治理图册》.pptx VIP
- 2025广东珠海市斗门区招聘公办中小学教师71人笔试备考题库及答案解析.docx VIP
- 声音在不同介质中的传播说课课件公开课教案教学设计课件案例资料.pptx VIP
- 阿那亚品牌手册.pdf VIP
- 2021ACOG妊娠期急性脂肪肝指南要点解读(全文).docx VIP
- 《福建省工程建设领域保障农民工工资支付规范化管理指导手册(第一版)》(2).doc VIP
文档评论(0)