Routing Neo4J路径规划与属性

Routing Neo4J路径规划与属性,routing,neo4j,Routing,Neo4j,我想在基于成本属性的图中找到最便宜的路径。 但我也想排除基于第二个属性的某些关系 想象一个有房间的建筑,如果你适合门,你只能通过某些门 我的关系定义如下: Door {cost: Number, height: Number} 对于RESTAPI,我完全可以使用Dijkstra算法使用cost属性遍历房间。但我没有找到一种方法,如何将条件包括在门的高度上 有没有办法在RESTAPI中包含这个额外的约束? Cypher在这里更灵活,但目前不允许使用Dijkstra 在以后的实现中,我想切换到使

我想在基于成本属性的图中找到最便宜的路径。 但我也想排除基于第二个属性的某些关系

想象一个有房间的建筑,如果你适合门,你只能通过某些门

我的关系定义如下:

Door {cost: Number, height: Number}
对于RESTAPI,我完全可以使用Dijkstra算法使用cost属性遍历房间。但我没有找到一种方法,如何将条件包括在门的高度上

  • 有没有办法在RESTAPI中包含这个额外的约束? Cypher在这里更灵活,但目前不允许使用Dijkstra
  • 在以后的实现中,我想切换到使用a-Star作为我的规划算法。我想用一个插件来解决这个问题。然后我是否必须实现我的自定义
    路径扩展器
    ,或者是否有方法使用遍历函数?据我所知,遍历只能是深度和广度优先搜索的用户

迪克斯特拉在这里过得怎么样?在cypher中,查询具有高度条件的路径非常容易。也就是说,
MATCH(p)-[:door*1..10]->(q)WHERE door.height>5
但这并不是Dijkstra在查询中的作用。Dijkstra将通过Rest API()密码使用,效率不够。我认为使用服务器扩展目前是一种可行的方法。那么你在扩展、成本计算和过滤方面是最灵活的。我已经设法实现了这一点,谢谢!顺便说一句:你知道为什么属性过滤不是当前图形算法实现中的一个选项吗?这似乎是一个如此明显的特征?!