【发布时间】:2014-04-01 11:33:11
【问题描述】:
我正在寻找一种方法来确定连接地图上不同坐标的成本最低的路径。这些坐标代表管道网络的消费者和一个供应商
我首先搜索堆栈溢出的 GIS 部分以进行成本最低的路径分析,但这不是我所需要的(我没有找到一种算法,它允许不仅仅是一个起点和终点)。我有一个算法可以确定所有不同坐标之间的最低成本路径,但现在我想对这些数据进行一种关键路径分析。但是,所有坐标都必须在最终解决方案中得到解决,除了供应商需要成为第一个坐标之外,哪个坐标首先出现并不重要。
谁能帮我解决这个问题?
提前致谢
示例
好的,主要问题是:
我会有一个这样的矩阵:
A B C D
A x 3 4 2
B 3 x 7 5
C 4 7 x 9
D 2 5 9 x
在这个矩阵中,A、B、C 和 D 将代表地图上的一个位置(仅通过 X 和 Y 坐标),数字是在 A 和 B 之间建立连接的价格(例如:这些成本基于我将拥有的数据)。我的目标是以最便宜的方式将所有这些点连接起来。
为此,我正在考虑进行关键路径分析(您可能从业务课程中知道),但显然这不起作用,因为这些算法未编写导致包含所有位置的路径。但我需要连接所有这些 (4) 个节点,但只是以最便宜的方式。
例如:当我以 A 为起点时,我需要这个结果:
建立连接 A-D-B-C(这将花费 2+5+7 = 14)
而不是
ABCD = 19
ACBD = 16
ADCB = 18
ABDC = 17
ACDB = 18
【问题讨论】:
-
我不明白这个问题。你能改写一下吗?
-
一般情况下,您可以使用 Dijsktra 算法,在该算法中应用几何模型中使用的距离,如有必要,根据需要修改算法。我不明白你的确切问题,所以除非你改写你的问题(你可以通过点击帖子中标签下方的编辑按钮来做到这一点)这就是我能为你做的一切。
-
我在问题框架中举了一个例子。希望这会让它更清楚。
标签: algorithm sorting python-2.7 pygraph