什么是可用于创建公交路线的好算法或一类算法?创建公交路线
我在考虑用来解决旅行推销员或哈密尔顿路径问题的算法,但事实上,这两个问题都没有解决如何在两站之间移动的问题。
我想算法至少有以下特点:
- 产生一个相对优化的路径(我的理解,这个问题可能是NP完全,所以一个好的启发式是罚款)
- 能处理具有不同权重的路径部分(例如,在该路径的该部分上行进的时间)
- 可以被迫使用给定的起点和终点(我认为这不会是这样的问题)
可以做到这一点的代码,或类似的东西,将不胜感激(尤其是在C#中),但一个好的算法本身就没有问题。
注意:虽然有很多算法可以找到两点之间的最短路径,但我不知道我希望停止的顺序。因此,除非我应该使用两种算法的组合(我怀疑是这种情况),那些算法不会做我想做的事情(如果您认为他们这样做,请解释)。
编辑:假设我知道所有需要做的停靠点。
我想你误会了。我不想搭公车,我想创建公交路线。不知道Djisksra如何在这种情况下工作... – soandos 2012-01-01 00:24:19
请参阅编辑。我不认为你的答案适用。 – soandos 2012-01-01 00:29:32
我仍然不明白,我仍然认为Dijkstra的算法适用,因为它告诉你要制造的停止。所有的道路通向罗马,迪杰斯特拉的算法告诉你最好的。虽然维基百科指的是最短路径,但算法实际上适用于最低成本。所以应用与您的标准相关的成本。如果您想知道每个节点中有多少人,请将其作为您的标准添加,并且这应该告诉您从A到B的最佳路径,以便您可以捡到最多的人。 – 2012-01-01 09:17:55