我想将 astar_search() 算法应用于随时间生成的隐式图 . 因此,图中新顶点的初始化非常复杂,并且需要在另一个数据结构中进行外部查找 .

我已经研究了很多使用 astar_search() 的示例,但是使用隐式图表却找不到很多 . 从使用隐式图的所有示例来看,[1]看起来最有希望 . 提出的解决方案的问题是, astar_search() 将const图引用( const VertexListGraph &g )作为boost 1.66中的参数,因此禁止修改和添加新的顶点和边到 examine_vertex visitor中的图 .

我看到的另一个提出的解决方案是[2] . 虽然我不太确定我是否完全理解代码的每一部分,但我认为 astar_search_no_init() 函数也不适合我的问题,因为我已经从部分计算的图开始,并且新顶点的简单默认构造是有问题的,由于顶点创建与上述外部查找 .

我想我的问题最简单但不起作用的解决方案是能够修改图形的 examine_vertex 访问者 . 你们知道我能做什么或者知道解决方案吗?

[1] A * BGL框架内的图搜索(第12-19页)

[2] Stack Overflow问题:提升隐式图和astar_search_no_init