繁体   English   中英

定向加权图最短路径,强制节点通过

[英]Directed weighted graph shortest path with obligatory nodes to pass

您好我正在尝试找到解决此问题的最佳算法。

我有一个图表,我必须找到指定的开始和结束节点之间的最短路径,但必须传递特定的用户输入节点。

必须传递节点没有顺序,您可以多次访问每个节点。

如果我认为每个必须通过节点需要在特定订单上达到计算到每个停靠点的最短路径首先会更容易吗?

K Shortest路径是解决这个问题的方法吗? 计算最短路径并从那里开始,直到我们发现传递最短的所有必须通过节点?

这是我绘制的示例图 在此输入图像描述

节点4和6必须通过,我需要找到1到5之间的最短路径。

众所周知,2个不相交路径问题在有向图中NP完全的 它们的证明具有图G和两个源顶点s1,s2和两个端子t1,t2。 任务是找到两个内部顶点不相交路径p1,p2 st p1连接s1到t1,p2连接s2,t2。 我们可以使用不相交的路径来模拟您的问题。 在上面提到的硬度证明中提供的图中,只需识别s2,t1并使其成为新的顶点s2t1。 然后在原始图中有两条不相交的路径,当且仅当存在从s1开始的路径经过s2t1并且在t2结束时。 这意味着即使在有向图中找到这样的路径也很困难。 甚至没有优化版本。

但如果图形具有特殊结构,则可以更容易。 例如,在非循环图上,它更容易。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM