概率和最短路径算法

时间:2014-09-11 07:00:19

标签: algorithm math optimization computer-science probability

假设我有一个定向网络" n"节点和" d"弧。 p(d)表示包裹沿着该弧安全到达的概率。将包在其路径上采用的每个弧上的所有概率相乘可以提供包安全到达其目的地的概率。

是否有一个公式可以让我们最大限度地提高包裹以最短路径问题的形式安全抵达的概率?

2 个答案:

答案 0 :(得分:5)

设置图表,其中每个弧d的权重为-log(p(d))。

然后解决最短路径问题,找到权重总和最小的路径。

这笔款项是:

-log(p(d0))-log(p(d1))-log(p(d2))... = -log(p(d0)*p(d1)*p(d2)...)

因此,对数空间中的最小和相等于最大概率。

答案 1 :(得分:0)

您可以将其组织为MDP问题的变体,其中每个节点都有一条边缘,该边缘会导致虚拟状态,该虚拟状态本身只有一个循环边缘。 该状态表示包装损坏/损坏,并且导致它的边缘具有非常高的成本。 其余的非常简单,您设置概率和其他成本较低的数量(例如,导致“损坏”状态的边缘为100,包括循环,其他边缘为1),除了通向目标状态的边缘应设置高负值(例如-500)。

设置问题后,您可以运行Policy Iteration或Value Iteration来获取最佳策略(继续前进的边缘)以将程序包发送到目标。它们会聚合,为您提供最安全的路径。

如果您熟悉MDP,这很容易。