图中节点之间的最短路径可以通过几种算法(Dikstra,A-star等)找到。
但是这个问题有哪些应用? (我已经知道了很多,但我想看到更多的例子)。
请只提供一个申请/答案!解释应用程序,以及如何将其转换为最短路径问题。
答案 0 :(得分:9)
最短路径算法有一个有趣但不是直接明显的应用,它可能经常用于处理交易资产和货物的算法交易和金融部门。
想象一下,您可以将1000美元转换为950欧元,然后将950欧元转换为1020加元,然后将其转换回1007美元:)只需将货币转换为货币即可赚钱。
这种情况称为套利机会。这可以通过任何资产在不同市场之间完成。
在这种情况下,资产之间的关系被建模为有向边加权图,并且在图中找到所谓的负循环实际上是找到这些套利机会。
您可以在此处查看更多详细信息,其中包含精彩的解释和示例:http://algs4.cs.princeton.edu/44sp/
答案 1 :(得分:6)
鉴于许多高速公路连接城市,找到从纽约到芝加哥的最短路径。
高速公路的交通和长度是路径权重。
答案 2 :(得分:5)
最短路径算法可用于解决word ladder puzzles。
例如,通过一次更改一个字母,将“cat”改为单词“dog” - “cat”,“bat”,“bag”,“bog”,“dog”
答案 3 :(得分:4)
最短路径问题构成了一整类优化问题的基础,可以通过一种名为列生成的技术来解决。示例包括车辆路线问题,可存活的网络设计问题等。在这些问题中存在主问题(通常是线性程序),其中每列代表一条路径(将车辆路径问题中的路径视为车辆可以采取的一条候选路线,想一想网络设计问题中的路径,作为可以在源和目的地之间发送商品的可能路线。主问题反复解决。每次使用解决方案的指标,都会解决一个单独的问题(称为列生成子问题)。这个问题原来是一个最短的路径问题(通常有侧面约束或负弧长导致问题NP-Hard)。如果获得了新的有用路径,则将其添加到原始主问题中,该问题现在通过更大的路径子集重新求解,从而导致越来越好(通常成本更低)的解决方案。
答案 4 :(得分:2)
给定计算机网络(例如,点对点应用程序),找到从机器A到机器B的最短路径。
答案 5 :(得分:2)
在视频游戏中,这些算法经常用于查找地图上两点之间的最短路径。在此上下文中调用的“寻路”可以由AI用于绘制路线,或者由游戏引擎用于帮助用户绘制路线。
答案 6 :(得分:2)
我可以看到它可能被使用的一个例子是预先设定的点设备,它们需要通过特定点的电池充电或燃料来运行。
在军队中我们有一些小型的无人驾驶飞行器/装置,它有一些需要侦察的预设点,而且因为它必须行进很远的距离,所以在像这样的小型设备上试图太昂贵通过卫星控制它,无线电控制在到达最远点之前会恶化。这就是算法发挥作用的地方。
只需设置一点,你就想要侦察并释放它。让它找到最短路径来覆盖所有点。它不需要主要工具,因此更实惠,更便携。
答案 7 :(得分:2)
社交网络......寻找两个人之间的最短路径(分离度)
答案 8 :(得分:1)
答案 9 :(得分:1)
最短路径通常用于SNA(社交网络分析)中,以计算其他人之间的中心性。通常,债券最强的人倾向于通过最短路径进行沟通。在图中了解人(节点)之间的最短路径可以让您知道隐藏的强大联系。只需计算一些指标,您就可以在图表中发现许多有趣的东西。