Hi Michael, 

This looks just the ticket. Having a look through the documentation it 
seems to solve a lot of my Neo4j Cypher woes, wish I had heard of it 
earlier.

Cheers,

Ben



On Friday, 16 September 2016 16:39:25 UTC+1, Michael Hunger wrote:

> Hi Ben,
>
> it is exposed as user defined procedure in the apoc library.
>
> You can find it here: 
> https://neo4j-contrib.github.io/neo4j-apoc-procedures/#_graph_algorithms_work_in_progress
>
> Install Instructions (just download and drop the jar into 
> NEO4J_HOME/plugins) are in the readme: 
>
> https://neo4j-contrib.github.io/neo4j-apoc-procedures/#_download_latest_release_for_the_regular_user
>
>
>
> apoc.algo.dijkstra(startNode, endNode, 'KNOWS|<WORKS_WITH|IS_MANAGER_OF>', 
> 'distance') YIELD path, weight
>
> run dijkstra with relationship property name as cost function
>
> apoc.algo.dijkstraWithDefaultWeight(startNode, endNode, 
> 'KNOWS|<WORKS_WITH|IS_MANAGER_OF>', 'distance', 10) YIELD path, weight
>
> run dijkstra with relationship property name as cost function and a 
> default weight if the property does not exist
>
>
>
>
> In Neo4j 3.0+ shortest path functions pull in predicates into the 
> evaluation, so something like
>
>  WHERE reduce(sum = 0 , x in rels(path) |  sum + x.weight )  < 100 
>
> should work
>
>
>
>
> On Fri, Sep 16, 2016 at 12:47 PM, Ben Campbell <campb...@hotmail.com 
> <javascript:>> wrote:
>
>> Anyone know when the Djikstra/A* with cost implementation is being 
>> implemented in cypher? It appears to have been accessible from the Web API 
>> for a long time, but no easy way to use it when using bolt? 
>>
>> Is there a reliable workaround? I basically want to call shortestPath but 
>> specify a cost parameter stored on each relationship. I've seen workarounds 
>> on stackoverflow, but these appear to work after obtaining all the results 
>> so become inefficient? 
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Neo4j" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to neo4j+un...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to neo4j+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to