DAG中关键路径和最长路径之间是否存在差异?

时间:2013-08-26 17:34:11

标签: graph-algorithm directed-acyclic-graphs

在我看过的每本书中,他们说关键和最长的路径都是一样的。问题是,在关键路径上,所有活动都必须是关键的。如果我正在寻找最长的路径,我就不会关注活动是否关键。或者我没有得到什么?

2 个答案:

答案 0 :(得分:1)

考虑一个图形建模项目,该项目由一组可序列化,部分相互依赖的活动组成,其中活动由边缘表示,节点相互依赖,使得2个边e1e2为事件iff必须在活动e1开始之前完成e2活动。假设2个特殊顶点st表示项目的开始和结束。

在这样的模型中,关键路径描述了无法相互并行化的最大活动序列。

它的名称源于这样一个事实,即关键路径上的一个活动的任何延迟都必然会延迟整个项目,而对于所有其他活动,有一些缓冲时间可用。

特别是关键路径不一定与那些对项目整体成功至关重要的活动相匹配。

关键路径对应于图表中st之间的最长路径。

当然,关键路径不一定是唯一的。

答案 1 :(得分:0)

来自http://en.wikipedia.org/wiki/Longest_path_problem

  

用于安排一组活动的关键路径方法涉及   构造有向无环图的顶点   表示项目里程碑,边表示活动   必须在一个里程碑之后和另一个里程碑之前进行;每个边缘都是   通过估计相应的时间量加权   活动将需要完成。在这样的图中,最长的路径来自   最后一个里程碑的第一个里程碑就是关键路径   描述完成项目的总时间。

他们引用了塞奇威克,罗伯特; Wayne,Kevin Daniel(2011),Algorithms(第4版),Addison-Wesley Professional,第661-666页。