算法第五章作业

1.问题描述

 

 2.请用回溯法的方法分析“最小重量机器设计问题”

部件代表层数,利用深度优先遍历其结点,结点为供应商。

剪枝:1. 约束函数:总价格不超过d

   2. 上界函数:cw (当前重量) <= minweight

   若满足以上函数,则代表不是可行解和最优解,直接剪去其子树。若没有被剪枝,则 cw 和 minweight 比较,取不超过d的最少重量。

当 t (深度)> n 时,表示到达叶结点,若cw < minweight, 则让minweight = cw, 并且用一个数组记录最优供应商 。

2.1 说明“最小重量机器设计问题"的解空间

由n=3, m=3,则其解空间为(1,1,1)(1,1,2)(1,1,3)(1,2,1)(1,2,2)(1,2,3)(1,3,1)(1,3,2)(1,3,3)(2,1,1)(2,1,2)(2,1,3)(2,2,1)(2,2,2)(2,2,3)(2,3,1)(2,3,2)(2,3,3)(3,1,1)(3,1,2)(3,1,3)(3,2,1)(3,2,2)(3,2,3)(3,3,1)(3,3,2)(3,3,3)

2.2 说明 “最小重量机器设计问题"的解空间树

 

 

2.3 在遍历解空间树的过程中,每个结点的状态值是什么

每个结点的状态是当前状态的重量和价格。

3. 你对回溯算法的理解

  回溯法按深度优先搜索问题的解空间树,在搜索过程中,可以用约束函数和上界函数对其结点进行判断该结点是否可行。如果不可行,则跳过对该结点为根的子树的搜索,逐层向上一层回溯;如果可行,进入该子树,继续按深度优先搜索。

            

posted @ 2021-12-16 23:20  suidz  阅读(28)  评论(0编辑  收藏  举报