簡體   English   中英

通過arangodb中預定義的一組頂點和邊查找最短路徑

[英]Find shortest paths through predefined set of vertices and edges in arangodb

我需要找到應該通過幾個節點和邊的最短路徑。 幾個細節:

  1. 它應該是根據權重的最短路徑。
  2. 包含集可以是有序的和無序的。
  3. 圖大小 - 50 000 個頂點和 450 0000 條邊

有沒有辦法使用arangodb找到這樣的路徑? 我試過 K_SHORTEST_PATHS 但在某些情況下它太慢了。

沒有數據集,這很難測試。 不幸的是, K_SHORTEST_PATHS是向邊緣添加“權重”的唯一內置方法,除非您自己構建一些東西。 此外,兩種SHORTEST_PATH方法都沒有實現PRUNE ,這是加速圖遍歷的最佳方式。

我的建議是使用有向圖方法( FOR v,e,p IN 1..9 INBOUND x... ),同時實施PRUNEFILTER子句以減少跳數,以及類似COLLECT path = p AGGREGATE weight = SUM(e.weight)計算重量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM