Answers:
据我所知,最新的技术是
Hans L. Bodlaender,Fedor V. Fomin,Arie MCA Koster,Dieter Kratsch和Dimitrios M. Thilikos(2012),“关于树宽的精确算法”,ACM Transactions on Algorithms 9(1):A12,doi:10.1145 / 2390176.2390188。
此处描述的方法包括已实施的算法,并进行了一些启发式优化,以使其在实践中更快。
我在ICTAI 2011中写了一篇名为树宽的快速并行分支和边界算法的论文。它可以在多核中计算树宽。我使用了很多启发式方法,并花了很多时间完善程序。
我在中国是一个随机的本科生,没有参加一个好的会议。但是根据我的实验结果,我认为我的程序非常快。我解决了Treewidth lib中许多未解决的基准问题,并且我的程序比Zhou和Hansen在IJCAI 09.中提出的算法快40倍。
我不再在这个话题上工作了。但是,如果我的以前的工作有帮助,可以从http://www.callowbird.com/undergraduate-stuff.html下载我的程序(src和exe),然后尝试一下。(不过,在稍大的实例上,它非常非常慢)
在这里http://arxiv.org/abs/1304.6321(今年在FOCS上接受)Bodlaender等人。给出一个算法,如果图的树宽最大为k,则给出最大5k + 4的树分解。可能会让您感兴趣。
这是两个有关计算树宽的算法的调查,可能会有所帮助。第一个具有经验比较,并且具有实现为Java库的各种算法。
有许多算法可以计算图形的上限,下限或确切的树宽。我们已经实现了很多上限和下限启发式算法以及两种精确的算法(动态编程和分支与绑定算法)。该报告比较了不同种类的算法,并表明某些算法是首选的。
树宽是一个图形参数,具有一些有趣的理论和实际应用。该调查回顾了确定给定图的树宽并找到小宽度的树分解的算法结果。讨论了启发式实验(上限和下限的实验),预处理,精确算法和后处理这两个理论结果,建立了问题的渐近计算复杂性。
Sage不知道如何精确计算树宽,但是它可以为您提供小图的路径宽度。
http://www.sagemath.org/doc/reference/graphs/sage/graphs/graph_decompositions/vertex_separation.html
我很高兴得知有任何已实施且公开的用于计算树分解的信息, :-)
内森