是否在NP限制期限内对树木进行最佳旅行?


13

我的一个朋友问我以下关于树的调度问题。我发现它非常干净有趣。有参考吗?

问题: 有一棵树每条边的对称旅行成本为1。对于每个顶点v i,都有一个任务需要在其截止日期d i之前完成。该任务也被表示为v 。每个任务具有统一的值1。每个任务的处理时间为0,即在任务的最后期限等于完成任务之前访问该任务。在不失一般性的情况下,让v 0表示根,并假设在v 0处没有任务。v 0处有一辆车T(V,E)vidiviv0v0v0在时间0此外,我们假设对每个顶点didepi代表深v 。这是不言而喻的,期限小于其深度的顶点应被视为离群值。问题要求找到一个计划,该计划可以完成尽可能多的任务。depivi

进展:

  1. 如果树仅限于路径,则通过动态编程将其置于P
  2. 如果树被概括为一个图,则它是NP
  3. 我有一个非常简单的贪婪算法,该算法被认为是三因素近似。我还没有完全证明。现在,我对NP困难的结果更感兴趣。:-)

谢谢你的建议。


从完整的角度来看,任务很容易,对吧?只需使用简单的贪心算法...

@乔:是的。由于每个边缘都需要1个单位的行程,因此在“十字路口”之间没有偏好。如果是,您是否仍然对此问题感兴趣?也许我们可以通过电子邮件交谈。:-)
Peng Zhang

如果所有截止日期都相同,并且/或者我们仅询问是否可以完成所有任务,该怎么办?
domotorp

@domotorp:如果需要在完成所有的任务有一个截止日期,答案是肯定的,当且仅当统一的截止时间。只是深度优先搜索。关于情况d < |的最优问题。V | ,我不知道这是否容易。关于此问题有很多变体,例如考虑如果最后期限从基数为常数的有限集中取值,该怎么办?非常感谢您的评论。d|V|d<|V|
张鹏

我会说NP-hard会去看调度动物园,除非我误解了您的问题。
Gopi 2012年

Answers:


1

不确定这是否是您的答案(请参阅下文),但评论时间太长。

不过,我觉得你的问题是这样的:(P|tree;pi=1|ΣTi),其中:

  • 代表相同的同类处理器,P
  • “树”代表优先约束形式的树,
  • 表示任务的权重等于1,并且pi=1
  • ΣTi

如果是这种情况,那么您的问题就是NP难题:您可以将其看作是在具有优先级约束的单台计算机上将总拖尾率降至最低的一般化。实际上,该白皮书指出,对于多个线性链,单个处理器上的NP难度很大。容易的转换是采用一个树的根,从该根开始的线性链。

但是我很惊讶,因为您似乎说对于单个线性链,您将使用动态编程。我不知道为什么需要DP,因为在我看来,在调度单个线性链时,由于优先级限制,您没有太多选择:只有一个选择。所以也许我误解了你的问题。


我的问题似乎与您的不同。我的观点是:“一棵有根的树,行进边缘花费单位时间,每个顶点都有一个带有任务期限的任务,任务不需要花费时间。从根开始,可以完成多少个任务?”。因此,没有优先级,没有时间来处理任务。非常感谢你。
张鹏

@PengZhang,如果它是一棵有根的树,那么还有优先权吗?至于边缘(优先级?)或任务上的成本,在我看来是一样的。我真的看不出两者之间的区别。最后,如果可以将完成任务的数量减到最少,则可以完成多少任务,这等效于最大化可以完成的任务数量。也许您可以画出自己的期望图?
Gopi 2012年

我看不到两个问题之间的明确关系。在最初的问题中,访问下一个节点的成本取决于上一步中访问了哪个节点。在优先约束的调度中,只要满足优先约束,下一个要处理的作业的成本就不会取决于上一步中处理的作业。
冈本佳夫2012年

1,2,,nf(t,l,r)[l,r]tlg(t,l,r)f(t,l,r)rf(t,l,r){f(,l+1,r),g(,l,r1)t,l,r
张鹏

@PengZhang,好的,我想我对您的意思有更好的了解。我仍然相信,通过考虑分支为路径的特殊树木(因此是有根的路径),可以轻松地适应我的论文。
Gopi 2012年

1

为了做到这一点,我们必须做一些假设。见下面的评论

tatb

|V|


2
f[a,t,t]a[t,t]a

点(1)的问题不如点(2)的多。为了使我的想法如我最初设想的那样起作用,它要求您不要多次退出并重新进入子树。最好的解决方案不会绕树而跳并不明显:得到一片叶子,在根部附近找到一些东西,然后走到一片叶子,然后再走到另一棵远离其他2个的叶子,依此类推。利用这样的事实,即您将获得所有路径上的所有节点。特别是如果已经拜访过任何孩子,那么已经拜访了父母。

:在我的想法中,第(1)点确实是一个问题。对于点(2),我将约束“不重新输入”称为“深度优先搜索”约束。DFS约束通常在文献中采用。在这种约束下,只要树的最大程度是一个常数,我的问题的确是多项式。因此,我想知道我的问题对NP来说很难。非常感谢你。
张鹏

3
关于DFS约束,很容易构造一个示例,其中最佳序列违反了此约束。考虑具有7个节点的完整,平衡的二叉树。令左侧子树中的2个叶子的最后期限为2和12,右侧子树中的2个叶子的最后期限为8和6,内部节点的最后期限为100。您可以通过依次访问叶子2、6、8来访问所有节点,12; 其他任何命令都违反了至少一个截止日期。
mhum 2012年

0

获得这种情况的恒定近似值或证明NP-Hard的问题仍然悬而未决,任何结果都将得到很好的发表。一些特殊情况已解决。我和其他人一起得出了一些可以解决特殊情况的局部结果,例如蜘蛛,恒高树。但是,树木的一般问题尚未解决。

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.