随机图着色回溯算法分析
回溯算法的研究在理论计算机科学领域有着悠久而丰富的历史。近年来,源于统计物理学的非平衡思想,让我们对回溯程序在解决计算问题时何时快、何时慢有了更深入的理解。本文将以图着色问题为例,阐述这种方法,探讨其局限性,并提出一些解决办法。
1. 图着色问题及相关定义
图着色(COL)是一个可以通过回溯程序解决的组合问题。K - COL 决策问题的输入是一个图 G,该问题旨在找到一个从顶点集到 K 种颜色集的映射,使得相邻顶点(由边连接)颜色不同,或者证明不存在这样的映射。对于任何 K ≥ 3,K - COL 是一个 NP 完全问题,在后续内容中,我们主要选择 K = 3。
1.1 运行时间和搜索树
为了定量研究 Davis - Putnam - Logemann - Loveland(DPLL)算法的性能,我们需要精确定义运行时间的概念,以及待着色输入图的特征。用搜索树来表示 DPLL 搜索过程的历史(即试错序列)是很方便的。树中的节点对应变量的赋值,边表示这些赋值带来的逻辑结果(消除已满足的约束、简化其他约束)。DPLL 生成的搜索树的大小是衡量求解复杂度的一个很好的与计算机无关的指标。这个搜索树会随着问题的输入(即待着色的图)和搜索过程中执行的赋值序列而变化。
1.2 随机图
尽管 3 - COL 是 NP 完全问题,但它并非总是困难的。判断一个给定的图是否可 3 着色有时非常容易。例如,很容易识别出方形晶格无论其大小(节点数量)如何都是可 3 着色的,而有 4 个或更多顶点的完全图则不可 3 着色。为了可靠估计 DPLL 在 3 - COL 问题上的性能,我们要排除这些特殊情况。
超级会员免费看
订阅专栏 解锁全文
23

被折叠的 条评论
为什么被折叠?



