Chapter 4 组合优化问题
4.1 组合问题及其回溯算法
4.2 回溯算法框架
4.3 排列树问题
4.4 子集树问题
4.5 用回溯算法解组合优化问题
4.6 加速计算组合优化问题
现实中有些问题是与资源竞争相关的。这些问题往往在一组条件的限制(有限资源)下,使得利益最大或代价最小。这样的问题,通常有一组可能解,将所有可能解构成的集合称为解空间。可能解中满足约束条件的,称为合法解。每个合法解对应一个目标值(收益或代价),目的是在解空间中找到目标值最大(小)的最优解。我们把这样的问题称为组合优化问题,有效地解决组合优化问题是计算机科学的基本任务之一。
4.1 组合问题及其回溯算法
如果在约束条件下仅要求计算出解空间中的合法解,这样的问题称为组合问题。组合问题当解空间规模不大时,将解空间组织成一棵根树,从根开始,按深度优先策略搜索合法解进而找到最优解,是一种可选的方法。这种方法由于它的深度优先策略特点,常称为回溯