1. 请用回溯法的方法分析“最小重量机器设计问题”
1.1 说明“最小重量机器设计问题"的解空间
包含对变量的所有可能赋值即供应商和部件数组
n个部件,每个部件有m个选择
1.2 说明 “最小重量机器设计问题"的解空间树
排列树
有n层(组成机器有n个部件),每个节点有m个子节点(每一种部件都可以从m个供应商处购得)
用一个数组记录第i个部件选择的供应商
1.3 在遍历解空间树的过程中,每个结点的状态值是什么
为遍历到当前节点 累计的重量和价值
1.4 如何利用限界函数进行剪枝
限界函数(去掉可行但不是最优的解):遍历过程中如果加上某节点 对应的重量 超出之前已得到的最优解(最小重量),就不扩展该节点
约束函数(去掉不可行的解):遍历过程中如果加上某节点 对应的价格 超出题目所限制的价格上限,就不扩展该节点
2. 你对回溯算法的理解
从根节点出发 深度优先搜索解空间树,遍历到某一结点先判断该节点是否可行,可行就继续扩展该节点,否则就逐层向其祖先节点回溯