最短路径问题的“亲戚”


10

考虑具有非负边缘权重和两个不同顶点的连通无向图。下面是具有以下所有形式的一些路径问题:查找路径,以使该路径上的边权重的某些函数最小。从这个意义上讲,它们都是最短路径问题的“亲戚”。在后者中,功能只是总和。s,tst

注意:我们正在寻找简单的路径,即没有任何重复的顶点。由于我在文献中找不到这些问题的标准名称,因此我自己给它们命名。

具有最小权重间隙的路径找到一条st路径,以使路径上最大和最小边缘权重之间的差异最小。

最平滑的路径:找到一条st路径,使该路径上的最大步长最小,其中步长是两个连续边之间的权重差的绝对值。

具有最小高度的路径:让我们通过沿路径的步长之和定义路径的高度(请参见上面的步长定义)。找到最低高度的st路径。

具有最小素数权重的路径:假设所有边缘权重均为正整数,请找到一条st路径,以使其权重为素数。如果有这样一条路,找到一条可能的最小主要重量。

问题:对这些路径问题了解多少?(以及其他可能以类似的精神构思的方法,应用不同的权重函数。)总的来说,是否有任何指南可以在多项式时间内使边缘权重的哪些函数最小化,并且哪些是NP难的?

注意:例如,有趣的是,虽然权重之和很容易最小化(这是经典的最短路径问题),但是最小化路径上权重的紧密相关的平均数却是NP难的。(将权重2分配给与和关联的所有边,将权重1分配给所有其他边。那么,最小平均权重路径将是最长的路径)。stst

Answers:


8

这是第一个问题的答案:

具有最小权重间隙的路径找到一条路径,以使路径上最大和最小边缘权重之间的差异最小。st

1984年的一篇论文表明,只要我们能够确定多项式时间内组合优化问题的可行性(在非加权情况下是否存在解决方案),那么我们也可以在多项式时间内找到使最大和最小之间的差异最小化的解决方案。成本系数(在加权情况下):

S. Martello,WR Pulleyblank, P。Toth,D。de Werra
平衡优化问题
运筹学快报3,1984,第275-278页

这意味着您的问题需要多项式时间算法。


1
这也可以通过对可能构成最大值和最小值及其顺序/方向的所有成对的边缘进行蛮力搜索来完成。
Yonatan N

3

具有最小权重差距的路径:这可以在时间,其中是边数(假设在顶点数上至少是线性的)。您可以遍历最小权重,并在最大权重上执行二进制搜索(或有效更新),并检查连接性。我不知道这是否可以改善。O~(|E|2)|E||E|

最小高度的路径(用您的术语):可以在时间内解决。您可以类似于普通加权最短路径来计算到所有边的距离(以“步长”的总和)。请注意,重复的顶点不能缩短路径。为了有效处理高度顶点(如避免时间),可以将度的顶点拆分为个顶点的路径。O~(|E|)|E|2kk1

具有最小素数权重的路径: 如果权重为二进制,则应为NP完整:使用权重1的边,但初始的高权重边除外,这样只有汉密尔顿路径才具有素重(权重是边权重的总和) 。(A需要注意的是,我们还没有证明足够大的素数(即使没有最小质的差距),可以很快找到没有随机性。)即使是一元的权重,我不希望它是在P.
最小质重量,允许自交集:在P中表示一元权重。如果我们使用素数为一组随机数代替素数集,则概率为1,它在SΘ(n/logn)PS甚至对于二进制权重:只需在每个点上跟踪多项式(取决于)的最低多项式权重就足够了。但是,对于主要权重,我们可能必须使权重差异除数多样化(而不是仅跟踪最低权重),目前尚不清楚是否足够。S

最平滑的路径: NP已完成。如果我们允许自相交,则可以在,但是对于没有自相交的版本,这是从具有3-变量的3-SAT的简化中得出的。有顶点,每个子句都有一个顶点。对于每个变量(),添加一条从到的平滑路径(如有必要,使用额外的顶点),该路径通过所有出现子句,并为子句提供类似的路径O~(|E|)ns=v0,v1,...,t=vnxii<nvivi+1xi¬xi。将每个路径的第一个和最后一个边缘权重设置为1(或另一个常数),但否则选择权重以使其他路径均不平滑。最后,复制所有子句的顶点和相邻的边;这样,每个子句最多可以访问两次,足以满足3-SAT的要求。


我认为,由于以下变换,最平滑的路径位于P中。设为度的顶点。用大小为的集团替换,这样原来与相邻的每个边现在都在集团的不同顶点处结束。如果是两个这样的原始边,则分配权重到集团中的边缘。对每个顶点进行此转换,并将0权重分配给原始图形边缘。然后最小重量d v d é v v é é ˚F | w e w f | v ev fv s t s tvdvdevvee,f|w(e)w(f)|(ve,vf)vs,tst撤消转换后,新图中的path会提供原始图中最平滑的路径。
安德拉斯·法拉戈

@AndrasFarago参数的问题是扩展图中的某些简单路径在原始图中具有重复的顶点。我喜欢最平滑的路径问题看似简单。
Dmytro Taranovsky

@ Dmytro Taranovsky看来,您是对的,确实有可能在返回原始图形后,我们在路径上获得了重复的顶点(但没有重复的边)。但是,如果原始图中的每个度数最多为3,则不会发生重复。这意味着,对于最大度图,最平滑路径问题至少在P中。3
安德拉斯·法拉戈

抱歉,在变换后的图中,我们需要找到最大权重最小的路径(也在P中),而不是总权重最小的路径。总权重将导致具有最小高度的路径(在最大度数为图形中,因此排除了重复的顶点)。3
安德拉斯·法拉戈
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.