《算法设计与分析》回溯ppt课件.ppt
《《算法设计与分析》回溯ppt课件.ppt》由会员分享,可在线阅读,更多相关《《算法设计与分析》回溯ppt课件.ppt(29页珍藏版)》请在三一办公上搜索。
1、回溯算法,单击增加标题内容,回溯法有“通用的解题法”之称。,5.1 回溯法的基本思想,5.2 回溯法的算法框架,5.3 n后问题,5.4 圆排列问题,5.5 电路板排版问题,回溯法(backtracking)是一种系统地搜索问题解的方法。为实现回溯,首先需要定义一个解空间(solution space),然后以易于搜索的方式组织解空间,最后用深度优先的方法搜索解空间,获得问题的解。说话的方式简单点:从一条路往前走,能进则进,不能进则退回来,换一条路再试。,搜索方式,内注意:这棵解空间树不是遍历前预先建立的,而是隐含在遍历过程中。容,定义一个解空间,它包含问题的解,用易于搜索的方式组织解空间,深
2、度优先搜索解空间,获得问题的解。,Ps:利用限界函数避免移动到不可能产生解的子空间。,回溯法解题的一个显著特征是在搜索过程中动态产生问题的解空间。,单击增加标题内容,解空间,从n个元素的集合S中找出满足某种性质的子集时,确定n个元素满足某种性质的排列时,可行解,最优解,可行解和最优解,活结点,扩展结点,死结点,不满足约束条件、目标函数、或其儿子结点已全部搜索完毕的结点、或者叶结点。以死结点作为根的子树,可以在搜索过程中删除,所搜索到的结点不是叶结点,且满足约束条件和目标函数的界,其儿子结点还未全部搜索完毕,正在搜索其儿子结点的结点,它也是一个活结点,当前扩展结点成为死结点时,应往回移动(回溯)
3、至最近的一个活结点处,并使这个活结点成为当前的扩展结点,回溯法即以这种工作方式递归地在解空间中搜索,直至找到所要求的解,或解空间中已无活结点时终止,从其解空间树的根结点开始搜索其解空间。开始时,根结点A是唯一的活结点,也是当前扩展结点。在当前扩展结点A处,可纵深移至B或C。,n=3,w=16,15,15,p=45,25,25,c=30。,在当前扩展结点A处,可纵深移至B或C。选择先移至B,即选取物品w1,此时,A、B均为活结点,B成为当前扩展结点。在B处剩余背包容量是r=30-16=14,获取价值45。从B可纵深移至D或E,先考虑移至D,但现仅有的背包容量容不下物品w2,故移至D导致一个不可行
4、解。而从B移至E不占用背包容量,因而可行。从而我们选择移至E。此时E成为新的扩展结点。此时,A、B和E是活结点。在E处容量仍为14,所得价值仍为45。从E可以移至J和K。移至J会导致一个不可行解,而移向K是可行的,于是移至K,K成为新的扩展结点。由于K是一个叶结点,所以我们得到一个可行解(1,0,0),v=45。,由于从K已无法纵深扩展,故K成为一个死结点,所以返回(回溯)至E(离K最近的一个活结点)。而E也没有可扩展的结点,也成为了死结点。接下来,再继续回溯,返回至B处,同样B也成为死结点。再返回A,从A可扩展移至C。从A移至C,r=30,获取价值0。从C可移至F或G,令先移至F,则F成为新
5、的扩展结点,此时有活结点A,C,F。在F有r=30-w2=15,获取价值25。从F向纵深移至L处,有r=0,获取价值25+25=50。L是叶结点,即获得一可行解,又获取了至今最高价值,因此记录该可行解。L不可扩展,返回F处。按此方式继续搜索,可搜索遍整个解空间。搜索结束后找到的最好解是相应0-1背包问题的最优解。,单击增加标题内容,用约束函数在扩展结点出剪去不满足约束的子树,用限界函数剪去得不到最优解的子树,两类函数通称为剪枝函数,递归回溯,Void backTrace (int t)If(tn) output(x);elsefor(i=f(n,t);i=g(n,t);i+)xt=hi;if(
6、constraint(t),Void iterativeBacktrack(int t)t=1;While(t0) if(f(n,t)=g(n,t)for(i=f(n,t);i=g(n,t);i+)xt=hi;if(constraint(t),迭代回溯,在88的棋盘上放置8个皇后,使得这8个皇后不在同一行、同一列及同一斜角线上。如图:,N后问题,剪枝函数,8皇后问题可以表示成8元组(x1,x8),其中xi是放在第i行的皇后所在的列号。于是,解空间由8个8元组组成。约束条件:xixj for all i, j |xi-xj| j-i |约束条件之一为没有两个xi相同(即任意两个皇后不在同一列上)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法设计与分析 算法 设计 分析 回溯 ppt 课件
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-1310586.html