最短路径公理


19

假设我们有一个无向加权图(具有非负权重)。让我们假设中的所有最短路径都是唯一的。假设我们有这些路径(未加权边的序列),但是不知道G本身。我们能否产生将这些路径视为多项式时间最短的G?较弱的版本:我们可以在多项式时间内确定是否存在这样的G吗?GG=(V,E,w)G(n2)GGG

显而易见的必要条件如下:对于每对路径,它们的交点也是一条路径。这个条件够吗?


1
我必须对输入感到困惑:如果在最短路径的并集中,一个循环上有两个顶点u,v,那么它们之间有两条路径(必定是最短的),并且一条路径必须比另一条路径短唯一性条件
Suresh Venkat

4
@Suresh:我不知道你想知道什么。如果图G是完整图,则任何两个顶点之间的唯一最短路径是一条边,所有这些最短路径的并集就是完整图。
伊藤刚(Tsuyoshi Ito)

2
我认为对于重建加权图,答案是“否”,因为如果输入中缺少任何边缘,则实际上(a)可能在图中丢失,或者(b)是权重非常高的边缘。我认为没有权重的版本更有趣。另外,为什么我们要查找加权的图而给我们的路径未加权?
Artem Kaznatcheev

1
H为最短路径的并集。为什么H不是一个不会产生这些最短路径的图呢?或者换句话说,是否不是给定的最短路径不是H中的最短路径的情况H,那么就没有图是它们的最短路径吗?
Sasho Nikolov

3
@SashoNikolov我们应该为边缘分配什么权重?
ilyaraz

Answers:


5

在进行轻松搜索时,我偶然发现了这个老问题,而我最近刚在本文中得到了一些答案,我不妨分享一下。我希望可以将线程坏死和自我促进相结合。

我们能否产生将这些路径视为多项式时间最短的G?较弱的版本:我们可以在多项式时间内确定是否存在这样的G吗?

答案都是肯定的。Mohammad的算法确实可以工作,但是有一种更快,更直接的方法,它避免了运行立方分隔符的需要。令是辅助无向加权图,其中每个边的权重是一个整数,指示在输入上采取的条路径中有多少条包含该边。现在,考虑在进行边缘容量化的多商品流实例(将边缘权重解释为容量),其中目标是在每对节点之间同时推送1个单位的流量。显然,可以通过沿输入上给定的路径以自然方式推动流来满足此MC流实例。事实证明,可以证明我们的Ê È ÑH=(V,E,w)eE n(n2)H GG(n2)当且仅当这是满足MC流实例的唯一方式时,路径才是某些中唯一的最短路径。我们可以通过建立一个LP来测试其唯一性,该LP是MC流程可行性的通常约束,加上经过精心选择的目标函数,可以从该LP的对偶中提取出令人满意的的边缘权重。GG

显而易见的必要条件如下:对于每对路径,它们的交点也是一条路径。这个条件够吗?

这种情况有时称为“一致性”(如果任意两个的交集是每个的子路径,则一组路径是一致的)。从以上可以看出,一致性是不够的。两个并列最小的反例之一是以下彩色编码的系统,该系统在六个节点上具有四个路径:

在此处输入图片说明

换句话说,无法为此处显示的8个边缘分配权重,以使所有这四个路径同时是其端点之间的唯一最短路径。但是,它们中的任何一对都仅在一个节点上相交,因此它们是一致的(即使我们以正确的方式用一些其他路径填充它们,使总数为)。有无数这样的反例。请参阅该论文以进行表征。(n2)

关于这一切的另外三个快速评论:

  1. 您可能希望所有类似的语句在有向图而不是无向图的设置中都很好,
  2. 这个理论有一个很好的拓扑学解释,它导致关于如何构造独特的最短路径的更多见解和直觉,以及
  3. 由于某些技术原因,该理论可以方便地简化DAG的设置,而不是无向或(循环)有向图。

7

您可以将问题写成LP,不是吗?对于u,v的任意两个顶点以及从u到v的任何路径P,P的权重均大于或等于u和v之间给定的最短路径的权重。所有这些都是线性不等式,即使存在指数问题很多,分离问题在P中(这是所有对的最短路径问题)。因此,您可以使用Ellipsoid算法来解决它。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.