Algorithm 最短路径,2个权函数

Algorithm 最短路径,2个权函数,algorithm,shortest-path,bellman-ford,Algorithm,Shortest Path,Bellman Ford,问题是这样的: 给出了一个有向图G=(V,E),两个顶点s,t和两个权函数w1,w2。 G中没有负加权循环(通过w1和w2)。 我需要描述一个算法,在给定的从s到t的最短路径s中,通过w2找到从s到t的最短路径 我发现: 但答案对我来说似乎很有价值 我不知道如何解决这个问题(即使是一个蹩脚的问题)。 任何帮助都将不胜感激。我们的想法是让w2变得重要,但不足以影响w1的结果 设SUM2为所有边上w2的和:SUM2=sum{w2(e)| e在e},和min{w1}=min{w1(e)| e在e}(根

问题是这样的: 给出了一个有向图G=(V,E),两个顶点s,t和两个权函数w1,w2。 G中没有负加权循环(通过w1和w2)。 我需要描述一个算法,在给定的从s到t的最短路径s中,通过w2找到从s到t的最短路径

我发现: 但答案对我来说似乎很有价值

我不知道如何解决这个问题(即使是一个蹩脚的问题)。
任何帮助都将不胜感激。

我们的想法是让
w2
变得重要,但不足以影响
w1
的结果

SUM2
为所有边上
w2
的和:
SUM2=sum{w2(e)| e在e}
,和
min{w1}=min{w1(e)| e在e}
(根据
w1
的最小值)

基于此,创建新的权重函数:

w(e) = w1(e) + w2(e)/min{w1}*(SUM2+1)
现在,考虑到所有根据
w1
的最短路径,很明显,为什么根据
w2
的最短路径会在其中受到青睐

另一方面,
w2
不足以克服
w1
的重要性并占据主导地位,因为需要注意的是,根据
w2
的所有边的总和现在小于
w1
中的单个节点


将上述
w
与任何最短路径算法一起使用,以获得所需的最短路径。

您可以使用BFS@SamG-你能说得更具体些吗?我需要的路径都是最短的w1和w2,所以我看不出我怎么可以不使用贝尔曼福特。你能解释你的问题更清楚。我想我不明白/@Sukritkalla这个问题已经通过权重函数w1给出了从s到t的最短路径。在这些路径中,我需要通过加权函数w2找到从s到t的最短路径。意思:我需要通过w1和w2找到从s到t的最短路径。显然,我认为,已经给出的w1最短路径应该使算法更容易。假设有
x
数量的路径具有成本
x
(这是所有可能路径中的最小值),那么您可以对每个
x
路径应用权重函数
w2
,并计算最小值。例如,从
s->t=s->d->t
的路径,然后使用
w2(s,d)+w2(d,t)
计算权重。对所有
x
路径执行此操作,并获得最小值。