shortest-path 相关问题

最短路径问题是寻找从单个源到目标源的最短路径的问题,通常在图中。

使用 Boost 的 Dijkstra 最短路径实现查找一对顶点之间的多个(所有)最短路径

我一直在使用 Boost 使用 Dijkstra 最短路径算法 dijkstra_shortest_paths 的实现来查找图中两个节点之间的最短路径 (SP)。该函数返回一个

回答 1 投票 0

如何加快 all_pairs_dijkstra_path_length

我有一个很大的 osmnx (networkx) 图,并且 nx.all_pairs_dijkstra_path_length 需要很长时间来计算。 有哪些可能性可以加快计算速度?

回答 2 投票 0

在C中使用BSF算法找到最短路径

我用C语言编写了使用BSF算法寻找最短路径的程序。 下面是代码 #包括 #包括 #包括 #定义最大1000 国际分布...

回答 1 投票 0

我们可以使用BFS(以最优的方式)来找到带权有向无环图中从源节点到所有其他节点的最短路径吗?

我知道可以使用拓扑排序在 O(V+E) 内完成。但我认为使用 BFS 也可以以相同的复杂度完成。

回答 3 投票 0

在 Openlink Virtuoso 知识图中获取加权最短路径

上下文 给定一个具有以下结构的 KG 3. 4. 背景 给定一个具有以下结构的KG <distanceTo:1> <weight> 3 . <distanceTo:1> <weight> 4 . <a> <distance_with_weight> <distanceTo:1> . <distanceTo:1> <goes_to> <b> . <b> <distance_with_weight> <distanceTo:2> . <distanceTo:2> <goes_to> <c> . 我想说,a和c之间有一条路径,权重为3 + 4 = 7。 问题 有没有办法使用SPARQL或SPARQL-BI计算加权最短路径? 我知道有 TRANSITIVE 和 T_SHORTEST 子句,但据我了解,它们仅适用于简单的边缘(没有权重)。 我知道我可以枚举所有路径并取最小权重总和,但这是不可取的,因为在这种情况下,SSSP Dijkstra 算法可能会更快。 到目前为止我所拥有的 SELECT ?t, total_weight WHERE { <a> <distance_with_weight>/<goes_to>* ?t. # here I need the sum of the weights involved so that I can get the minimum later. } 我不知道SPARQL-BI,所以也许有一个解决一般问题的方法,但是如果你的图是一棵树,也就是说,如果有一条从一个点到另一个点的唯一路径,那么纯SPARQL解决方案就可以工作。这个解决方案的部分灵感来自于Joshua Taylor对另一个问题的回答: PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?destination (SUM(?weight) AS ?total_weight) WHERE { <a> (<distance_with_weight>/<goes_to>)*/<distance_with_weight> ?d . ?d <weight> ?weight . ?d <goes_to>/(<distance_with_weight>/<goes_to>)* ?destination . } GROUP BY ?destination 当图不是树(或森林)时,2个点之间可以存在多条路径,这样查询将添加所有路径的所有权重。循环也有问题,但最多不过是多条路径。最后,数据需要完整,为所有 <distanceTo:i> 节点分配权重,并且对于每对 (<a>,<b>),必须有一个不同的 <distanceTo:i> 节点。

回答 1 投票 0

找到 NetworkX 中所有节点对之间的所有最短路径

我正在尝试获取无向未加权图中所有节点对之间的所有最短路径。我目前正在使用 nx.all_pairs_shortest_path(),但我不明白为什么它只返回一个

回答 4 投票 0

A* 曼哈顿距离

我搜索了A*的算法/伪代码,我按照它并编码了它。我使用曼哈顿距离作为 h(n)。 ( f(n) = g(n) + h(n) ) 而这就是结果, (来源:uploadir.com) 这种事总是会发生

回答 3 投票 0

最短路径 A* f(n) = g(n) + h(n)

当你使用A*时,它会选择最接近目标的最佳节点,对吗? (使用 f(n) = g(n) + h(n)) (使用 h(n) 的曼哈顿距离) 但如果起点和……之间有墙怎么办

回答 2 投票 0

贝尔曼-福特:所有最短路径

我已经成功实现了贝尔曼-福特算法,以找到当边具有负权重/距离时最短路径的距离。我无法让它返回所有最短路径(当...

回答 1 投票 0

多图和最便宜的路径

我有一个问题要解决,我需要找到两个城市之间最便宜的路径,但是两个相邻城市之间有几种可能的路径,所以我有一个多重图,我可以有折扣投注...

回答 2 投票 0

我应该使用什么算法来找到两点之间的最快路径,同时避开障碍物?

我有一个起点和终点以及几个障碍(或多或少取决于情况)。我还有一个类似机器人的系统,可以在动态环境中移动。我的工作是实现算法

回答 1 投票 0

使用免费机票优惠券将旅行成本降至最低

在一个共有 N 个城市和 M 条航线的世界中,每条航线都有不同的票价,您从 A 城市飞往 B 城市,有可能获得一个航班免费,而所有其他航班

回答 1 投票 0

如何使用osmnx获取高速公路方向

我正在使用osmnx进行路由,我想知道该路由涉及的高速公路的方向。下面是一个例子: 将 osmnx 导入为 ox 将networkx导入为nx G = ox.graph_from_place...

回答 1 投票 0

C++ BGL Dijkstra 具有数字顶点 ID 和多个目标的最短路径

我一直在浏览这个网站上的帖子、图书馆的文档以及其他网站上的讨论和解释。然而,我很难理解 C++ Boost Graph 库是如何工作的......

回答 1 投票 0

论最短路径问题中的左转弯约束

我对使用数据和算法自动确定从一个点到另一个点的最快路线感兴趣。然而,我不仅仅是在寻找最短的路线,而是特别是一条路线

回答 0 投票 0

在python中计算两点之间的路线和到达时间

我有两个简单的点(纬度,经度)和一个名为速度的参数。我需要找到路线和到达时间。 例如: point1: (1,1) point2: (5,5) 速度:x公里/小时 一种可能的路线是:(1,1)...

回答 0 投票 0

如何在 osmnx 中获取道路方向,以便为救护车等紧急车辆寻找最短路径

我正在为救护车等紧急车辆调度编写具有多种启发式的最短路径代码,我正在使用 osmnx 模块并创建了一个无向加权图。我想广告...

回答 0 投票 0

数据着色器在更大的数据集上是否不精确?

我正在尝试可视化最短路径算法以及他们通过搜索访问的节点。我这样做是使用 folium(不可扩展)和 datashader(可扩展)。然而,当可视化访问

回答 0 投票 0

在网格状迷宫中只允许移动到相邻节点的最短路径

我搜索了许多不同的算法,但似乎没有一种适合我的情况。 我的情况是: 代理只能向上、向下、向右、向左(4 个方向)移动 代理人认识这个人...

回答 1 投票 0

从最短路径计算sfnetworks R

我有一个网络,以及网络中的一个焦点节点。我已经计算出从该节点到所有其他节点的最短路径,并且我正在尝试弄清楚如何制作原始 n 的子图...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.