NP完全?具有特定约束的图的最佳图嵌入
Posted
技术标签:
【中文标题】NP完全?具有特定约束的图的最佳图嵌入【英文标题】:NP-Complete? Optimal graph embedding for a graph with specific constraints 【发布时间】:2014-07-20 15:15:18 【问题描述】:我有一个基于网格的图,其中节点和边占据单元格。边可以交叉,但不能在同一方向上相互重叠。
假设我想优化图形,使边缘覆盖的距离最小化。 我目前正在对每个连接使用 A* 搜索,但该算法是贪婪的,并且没有提前计划。考虑下图,其中连接的顺序发生了变化(另请注意,任何给定边都可以有多个最短路径,请参见绿色和 紫色连接)。
我的直觉说这是 NP-Complete 并且需要进行详尽的搜索,随着图的大小增长,这将非常昂贵。但是,我无法展示这一点,而且它与其他通常涉及最小化交叉的图嵌入问题不太一样。
【问题讨论】:
这与最小成本的多商品流有关,这是 NP 难的。不过,我不确定是否会直接减少。 您真的需要最佳解决方案,还是仅仅需要一个好的解决方案?即使这是 NP 难的,很多这样的问题都承认 优秀 解决方案的简单算法,而不是最佳解决方案。 理想情况下,我想确定问题是否确实是 NP 难题(我将研究它与上述人建议的多商品流的关系)。但是,我也有兴趣了解提供出色解决方案的算法 “边缘覆盖的距离被最小化”——这是模棱两可的。您是指被一条或多条边覆盖的单元格总数吗? @j_random_hacker 好点。覆盖的距离是根据每个单独连接的长度。这与您的描述不同,这意味着包含两条交叉边的单元格不会比只有一条边的单元格更昂贵。为了清楚起见,当我使用我的 A* 算法时,对于从一个单元到下一个单元的每个连续“步骤”,连接成本增加 1。 【参考方案1】:您没有真正描述您的问题并且您的图像消失了,但您的问题听起来像是最小 T 型连接问题。
最小 T 连接问题是在图 G 上定义的。给定一组偶数大小的 T,并且您试图找到图的子图,其中 T 的顶点具有奇数度,另一个顶点的度数相等。您在边上有权重,并且正在尝试最小化子图中边的权重总和。
令人惊讶的是,由于与非二分匹配问题的紧密联系,最小 T 连接问题可以在多项式时间内解决。即,如果您找到 T 的顶点之间的所有对最短路径,则通过 T 中的顶点的最小权重完美匹配来获得最小 T-join,其中两个顶点之间有一条边,其长度为最短路径的长度在 G 中。
最小的 T-join 将是路径的集合。如果两条不同的路径,比如 a->b 和 c->d,使用相同的边 uv,那么它们可以被 a->u->c 和 b->v->d 替换并降低 T 的成本-加入。所以它不会使用相同的边缘两次。
【讨论】:
不确定您在此处时图像的去向,但它似乎已恢复(至少对我而言)。在这个问题中,我们从一组顶点开始,并有一组要嵌入到网格中的边,但权重最初是未知的。布局边缘的方式有不同的组合。该图显示了嵌入连接的次优排序(左侧)和最佳嵌入(右侧)。在次优嵌入时,橙色连接最后嵌入,直接路径现在被阻塞,因此它必须采取更长的路线。 @ddriver1:我得到了一个指向i.stack.imgur.com/igEwd.png 的链接,它返回了一些可能是错误消息的 XML 文档。 奇怪,它似乎对我有用。这个链接对你有用吗? link 可能是部分图像中断。它现在在那里。所以你有一堆你想以非重叠方式嵌入的边缘?因为那更难。 允许边缘交叉,但只能交叉,否则边缘不能重叠。我们正在构建嵌入 - 首先我们从一组节点及其在网格上的位置开始。然后我们尝试嵌入边缘。如图所示,我们在图上填充空间的顺序会影响后续边的连通性,因为空间会逐渐被新边填充。以上是关于NP完全?具有特定约束的图的最佳图嵌入的主要内容,如果未能解决你的问题,请参考以下文章
如何嵌入带有 4000 多个视频的缩略图的 youtube 频道
R语言可视化2D密度图使用geomtextpath包的geom_textdensity2d函数在二维密度图的不同等高线(contour lines)水平嵌入数值标签