我陷入了第4页https://courses.engr.illinois.edu/cs498dl1/sp2015/notes/26-lp.pdf的最大化d_t点。 我绝对不能遵循作者的论点
这些放松约束意味着在任何可行的解决方案中,d_v 是最短的从s到v的最短路径距离 与直觉相反,我们正确地最大化了目标函数 计算最短路径!
我们正在寻找最短的路径,但为什么我们要为max d_t而烦恼?
答案 0 :(得分:1)
想象一下两个直接连接的顶点s
和t
之间的最短路径的简单情况,没有任何其他边或顶点。 LP归结为:
maximize d_t
subject to d_s = 0
d_t − d_s ≤ l_st for every edge s -> t
最大化d_t
的唯一方法是将其设置为从s
到t
的最短路径 - 在这种情况下是两者之间的边缘。这是因为第二个约束d_t ≤ l_st
禁止任何更大的值,即从s
到t
的任何更长的路径。
现在,这个想法可以转移到s
和t
不是相邻顶点的一般情况:将d
变量视为{{1}的所有相邻顶点的最短路径{1}}。然后,与t
有关的约束确定必须选择哪些边缘来定义总体最短路径。它会对平等感到满意,而d_t
的任何较高值都会违反这些约束中的至少一个。