关于最小重量机器设计问题的回溯法分析
1.1 解空间
“最小重量机器设计问题”的解空间由所有可能的部件供应商选择方案构成。具体来说,若机器由 m 个部件组成,每个部件可从 n 个供应商中选择,则解空间为每个部件分配一个供应商编号,所有可能的组合数为 n的m次方。每一个解可以表示为一个长度为 m 的向量 (x1,x2,...,xm),其中xi∈{1,2,...,n} 表示第 i 个部件选择的供应商。
1.2 解空间树
解空间树是一棵高度为 m+1(根结点深度为 0)的 n 叉树。根结点对应初始状态(未选择任何部件的供应商),第 k 层结点对应前 k 个部件的供应商选择。每个非叶子结点有 n 个子结点,分别代表对下一个部件选择不同供应商的分支。叶子结点位于第 m 层,对应一个完整的供应商选择方案。
1.3 遍历过程中结点的状态值
在回溯遍历解空间树时,每个结点(对应某个搜索状态)需要记录以下状态值:
当前总重量:已选部件的重量之和。
当前总成本:已选部件的成本之和。
当前解向量:从根到该结点路径上的供应商选择序列。
剩余部件的最小可能重量(用于界函数剪枝):可根据尚未选择的部件的最小可能重量估算。
在搜索过程中,通过约束函数(总成本不超过给定限制)和界函数(当前总重量加上剩余部件最小可能重量小于已知最佳解重量)进行剪枝,避免无效搜索。