2016-04-27 8 views
1

ステーションAとステーションCの間で最適なルートを検索するためにNeo4jのノード間に複数のルートをモデル化するにはどうすればよいですか?Neo4jのノード間で複数の経路をモデル化するにはどうすればよいですか?

ステーションAとステーションBの関係を1つのエッジとして、最短パスを検索した後、プロパティ値からバスルートAを抽出すればよいですか? enter image description here

または、私はそれらを2つのエッジに分ける必要がありますか?より多くのノードとエッジがある場合、計算がもっと複​​雑になるのでしょうか? enter image description here

+1

http://stackoverflow.com/a/27750490/4989460 –

+0

感謝。私は、2つの停留所の間の異なる道路とルートを持つケースを解決できないと思います。ケースでは ルート1:A-> B-> C-> D-> E ルート2:B-> D 私はのNeo4jはbのルート2に変更し、ルートに戻って変更することをお勧めします推測もし私がaからeに行くなら、dで1。 –

+0

また、すべてのトリップを関係として追加すると(どのルートを待つかを決定するために)、ステーション間に何千もの関係が存在します。 –

答えて

-2

3番目のオプションを選択します。両方の方法を組み合わせてください。

「ルートはありますか?各ルートタイプに1つの関係があります。

サイファー例

CREATE (a)-[r:BusRoute]->(b) 
CREATE (a)-[r:BusRouteA]->(b) 
CREATE (a)-[r:BusRouteB]->(b) 
+1

それは1つだけになることができる関係のタイプと思われる? http://neo4j.com/docs/stable/terminology.html#term-relationship-type –

+1

@MicTech:リレーションシップは1つのタイプしか持つことができません。 – cybersam

+0

また、同じタイプにする必要がありますが、ルートを属性に入れてください。 '(a) - [r:BusRoute {route:[A、B]}]] - >(b)' –