树宽

图论中，无向图的树宽（treewidth）是描述图与树的距离的正整数。树宽为1的图就是树或森林。树宽不大于2的图叫做系列并行图。树宽恰为"k"的最大图称作k树，树宽不大于"k"的图称作部分k树。很多有充分研究的图族的树宽也是有界的。
树宽可用几种等价方式正式定义：图的树分解中最大顶点集的大小、图的弦补全中最大团的大小、描述图上追逃对策的港的最大阶数、刺藤（bramble，相互接触的连通子图的集合）的最大阶数。
树宽常用作图算法的参数复杂性分析中的参数。对一般图NP困难的许多算法，将树宽固定于常数时就变得容易了。
树宽的概念最初由提出，叫做“维度”（dimension）。后来，根据树宽和哈德维格数的共同属性，重新发现了树宽。又重新发现了树宽，自此才获得了学界的关注。
定义.
图formula_1的树分解是结点为formula_2的树"T"，其中formula_3都是"V"的子集，满足下列性质（为避免与"G"的顶点混淆，“结点”仅指树"T"的顶点）：
树分解的宽是其最大集formula_3的大小减一。图"G"的树宽formula_12等于"G"的树分解的最小宽度，按这定义，最大集的大小减一，树的树宽才能等于一。
等价地，"G"的树宽等于团数最小的含"G"弦图中最大团的大小减一。在"G"中属于formula_3的两顶点间添加一条边，就可得到团大小相符的弦图。
树宽也可用港描述，其是在图上定义的追逃对策中逃逸策略的函数。若有至多formula_14阶的港——函数formula_15，将"G"中最多"k"个顶点的集合"X"映射到formula_16的一个连通分量中，并且具有formula_17的单调性，就称图"G"的树宽为"k"。
使用刺藤（bramble）也可做出类似描述。刺藤是指一族相互接触的连通子图（即共享一个顶点，或由一条边连接）。刺藤的阶数是子图族的最小命中集（hitting set），图的树宽等于刺藤最大阶数减一。
例子.
完全图formula_18的树宽为formula_19。这用树宽的弦图定义很容易看出来：完全图已经是弦图，添加更多边不能减小最大团的大小。
当且仅当至少2顶点的连通图是树，连通图的树宽为1。树的树宽为1，与完全图同理（即它已经是弦图，且最大团大小为2）。反之，若图中有循环，则所有弦补全都至少包括一个由循环的3个连续顶点组成的三角形，由此可见其树宽至少为2。
有界树宽.
有界树宽图族.
树宽不大于常数"k"的图称作部分k树。其他具有有界树宽的图族，有仙人掌图、伪森林、系列并行图、外平面图、哈林图、阿波罗尼奥斯网络等。在结构化编程的编译阶段出现的控制流图，树宽也是有界的，使寄存器配置之类任务可在其上高效执行。
平面图的树宽不一定有界，因为formula_20格图是树宽恰为"n"的平面图。于是，若"F"是树宽有界的子式闭图族，则它不可能包含所有平面图。反之，若某平面图不能作为"F"族中图的子式出现，则存在常数"k"，使"F"中所有图的树宽不大于"k"。即，以下3个条件等价：
禁子式.
对每个有限值"k"，树宽不大于"k"的图都可用禁子式的有限集表示（即，任意树宽大于"k"的图，都包含集合中的一个图作为子式）。每个这样的禁子式集都包含平面图。
对更大的"k"，禁子式的增长速度不小于"k"的平方根指数。但已知的禁子式的大小与数量的上界远高于这个下界。
算法.
计算树宽.
判断给定图"G"的树宽是否不大于给定值"k"的问题，是NP完全的。而当"k"为任意固定常数时，可在线性时间内识别出树宽为"k"的图，并为之构造出树宽为"k"的树分解。这算法的耗时对"k"是指数级的。
由于树宽在众多领域中的作用，人们开发了计算树宽的各种算法。根据具体的应用，我们可以选择更好的近似率，或运行时间与输入或树宽大小更相关的算法。
下表概述了一些树宽算法。其中，"k"是树宽，"n"是输入图"G"的顶点数。每种算法都能在formula_26的时间内输出宽度等于“近似”栏中的分解图。例如，的算法在formula_27时间内，要么为输入图"G"构建树宽不大于"k"的树分解，要么报告"G"的树宽大于"k"。相似地，的算法在formula_28时间内，要么为输入图"G"构建树宽不大于formula_29的树分解，要么报告"G"的树宽大于"k"。在同样运行时间内，将其改进到formula_30。
目前还不知道确定平面图树宽的问题是不是NP完全的，也不知道其树宽能否在多项式时间内计算出来。
实践中，的算法可以确定顶点数最多为100、树宽最多为11的图的树宽，并以最优树宽找到这些图的弦补全。
对更大的图，可以用基于搜索的技术，如分支定界搜索（BnB）与最佳优先搜索，以计算树宽。它们是任意时间算法，提前停止时会输出树宽的上界。
第一个计算树宽的BnB算法叫做QuickBB算法，是Gogate与Dechter提出的。BnB算法的质量在很大程度上取决于所用下限的质量，Gogate与Dechter还提出了一种计算树宽下界的新算法，称作minor-min-width。图的树宽绝不大于最小度数或其图子式，minor-min-width算法利用这一事实，在高层次上得出了树宽的下界。minor-min-width算法通过收缩最小度顶点与邻顶点间的边，反复构造图子式，直到仅剩一个顶点。所构造子式中，最小度的最大值是图树宽的下界。
Dow、Korf使用最佳优先搜索改进了QuickBB算法，在某些图上快了一个数量级。
解小树宽图上的其他问题.
20世纪70年代初，人们发现，只要图的“维度”有界，就可通过非序列动态规划，高效解决一大类定义在图上的组合优化问题。的研究表明，“维度”等同于树宽。后来，多名学者在80年代末独立观察到，很多对任意图来说NP完全的问题，对树宽有界的图来说，可用动态规划，利用树分解高效解决。
举例来说，"k"树宽图的着色问题可通过对树分解使用动态规划算法解决。将formula_3（树分解的所有集合）的顶点划分为颜色类，算法会结合储存在结点的相似类信息确定着色是否有效、扩展到树分解中所有的子结点。由此产生的算法能在formula_32时间内找到"n"顶点图的最优着色，这个时间约能束使问题固定参数可解。
古赛尔定理.
对于一大类问题，如果提供具有有界常值树宽的树分解，就可用线性时间算法求解。具体来说，古赛尔定理指出，若图问题可用一元二阶逻辑表为图的逻辑，就可在树宽有界图上用线性时间求解。一元二阶逻辑是一种描述图属性的语言，有下列结构：
例如，考虑3着色问题。对图formula_1，此问题是说，有没有可能为每个顶点formula_37分配3种颜色中的一种，使得相邻顶点总被分配不同颜色。
这个问题用一元二阶逻辑表为：
其中formula_40分别代表3种颜色的顶点子集。于是，根据古赛尔定理，对具有有界常值树宽的树分解的给定图，3着色问题可在线性时间内求解。
相关参数.
径宽.
图的径宽也是经过树分解定义的，不过其底树是径图，也可通过区间图定义，类似于由弦图定义树宽。因此，图的径宽总不小于树宽，但只能比树宽大一个对数因子。另一个参数是带宽，其定义与紧合区间图类似，径宽是其下界。其他相关参数还有树深，当且仅当子式闭图族中包含路径时有界；以及退化度，这是衡量图稀疏程度的指标，最多等于树宽。
格子式大小.
由于formula_20格图的树宽为"n"，图"G"的树宽总大于等于"G"的最大方格子式的大小。在另一个方向上，Robertson与Seymour的格子式定理表明，存在无界函数"f"使得最大方格子式的大小至少为formula_42，其中"r"是树宽。"f"的已知最佳区间：对某常数formula_43，下界为formula_44，上界为
关于下界中的Ω记号，见大O符号。对有约束的图族，区间也更严。双维理论为这些图族上的很多图优化问题提供了高效算法。
哈林格定理提供了无限图的树宽与格子式大小关系的类比。
直径与局部树宽.
若图族"F"在取子图下封闭，其中图的树宽有以直径为函数的上界，则称它们具有有界局部树宽或直径树宽性。若假设该族在取图子式下也封闭，则当且仅当"F"的一个禁子式是顶点图（apex graph），"F"才有有界的局部树宽。这一结果的最初证明显示，无顶点子式图族的树宽作为直径的函数，最多呈2倍指数增长；后来降为单倍指数增长，最后抵达线性的界。有界局部树宽与双维理论密切相关，一阶逻辑中可定义的图属性都可用略微超线性的时间来决定一个无顶点子式图族。 
对取子式不封闭的图族，也有可能具有有界的局部树宽。特别是对一族有界度图来说，这是一定成立的，因为有界直径子图的大小有界。另一个例子是1-平面图，即可在平面上绘制的、每条边有1交叉的图，以及更广义地说，可在亏格有界的曲面上绘制的、每条边有一定交叉点的图。与局部树宽有界的子式闭图族一样，这一特征为图的高效近似算法指明了方向。
哈德维格数与"S"函数.
定义了一类叫做“"S"-函数”的图参数，其中包括树宽。这些函数从图映射到整数，无边图映射到0，具有子式单调性（若对函数"f"、"G"的子式"H"，总有formula_46，则称"f"是“子式单调”的），在与所有现有顶点相邻的位置添加新顶点时，函数值加1，并从团分隔两侧的两子图中取较大值。所有此种函数的集合在逐元素最小、最大化运算下，形成了完全格，当中的顶元素是树宽，底元素是哈德维格数，即给定图中最大完全子式的大小。