第5章回溯法教程.pptxVIP

  • 18
  • 0
  • 约1.15万字
  • 约 46页
  • 2017-03-27 发布于湖北
  • 举报
1 第5章 回溯法 2 回溯法 有许多问题,当需要找出它的解集或者要求回答什么解是满足某些约束条件的最佳解时,往往要使用回溯法。 回溯法的基本做法是搜索,或是一种组织得井井有条的,能避免不必要搜索的穷举式搜索法。这种方法适用于解一些组合数相当大的问题。 回溯法在问题的解空间树中,按深度优先策略,从根结点出发搜索解空间树。算法搜索至解空间树的任意一点时,先判断该结点是否包含问题的解。如果肯定不包含,则跳过对该结点为根的子树的搜索,逐层向其祖先结点回溯;否则,进入该子树,继续按深度优先策略搜索。 3 例1:O/1背包 问题: 有n种物品,每种物品只有1个。第i种物品价值为vi, 重量为wi ,i =1,2,…, n。问如何选择放入背包的物品,使得总重量不超过 B,而价值达到最大? 实例: V={12,11,9,8}, W={8,6,4,3}, B=13 最优解: 0,1,1,1,价值: 28,重量: 13 4 算法设计 解:n维0-1向量x1, x2, ..., xn, xi =1?物品 i 选入背包 搜索空间: 0-1取值的二叉树, 称为子集树,有2n片树叶。 结点:x1, x2,..., xk(部分向量) 可行解:满足约束条件 的解 最优解:可行解中价值达到最大的解 5 实例 输入: V={12,11,9,8}, W={8,6,4,3},

文档评论(0)

1亿VIP精品文档

相关文档