Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/152.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 为什么BGL A*需要隐式图来建模VertexListGraph?_C++_Boost_Graph_A Star_Boost Graph - Fatal编程技术网

C++ 为什么BGL A*需要隐式图来建模VertexListGraph?

C++ 为什么BGL A*需要隐式图来建模VertexListGraph?,c++,boost,graph,a-star,boost-graph,C++,Boost,Graph,A Star,Boost Graph,一个更具体的后续问题,我前面的一个 Boost BGL有一个a*算法的版本,该算法应该可以处理隐式图,即astar_search_no_init()函数。隐式图可以建模为发生图。“请注意,astar_search_no_init()必须用于隐式图;基本的astar_search()函数需要一个建模顶点列表图概念的图。两个版本还需要图形类型来建模关联图概念” 这难道不意味着图不必对顶点列表图概念建模吗?如果是这种情况,我是不是因为找不到使用IncidenceGraphs的函数astar_searc

一个更具体的后续问题,我前面的一个

Boost BGL有一个a*算法的版本,该算法应该可以处理隐式图,即astar_search_no_init()函数。隐式图可以建模为发生图。“请注意,astar_search_no_init()必须用于隐式图;基本的astar_search()函数需要一个建模顶点列表图概念的图。两个版本还需要图形类型来建模关联图概念”

这难道不意味着图不必对顶点列表图概念建模吗?如果是这种情况,我是不是因为找不到使用IncidenceGraphs的函数astar_search_no_init()的任何版本而遗漏了什么?有两个版本的astar_search_no_init()可用,它们似乎都适用于VertexListGraphs。我使用的是Boost 1.48,A*在astar_search.hpp文件中


我甚至不认为首先要求隐式图对顶点列表图建模有什么意义。文件对我来说是相当混乱和误导的。有什么想法吗?

图形概念本身是有序的;这是一个很好的图形概念图;)

如您所见,
astar\u search\u no\u init()
所需的
关联图
概念与
顶点列表图
概念无关。也就是说,每个概念都可以独立建模。因此,仅对第一个概念进行建模就足够了


请注意,对于
astar\u search\u no\u init()
,仅对
顶点列表图建模是不合适的,即使它似乎可以工作。
顶点列表图
概念不是
关联图
的特例。可以对双向图形进行建模;这是关联图的一个特例,2009年1月27日添加了对隐式图的支持,以解决这个问题。修复方法是不依赖于
num_顶点
,也不利用对概念建模的图形类型的任何其他要求


因此,即使模板类型参数名为
VertexListGraph
,它也应该只处理仅对概念建模的图形类型。

对,正如我所怀疑的那样。但这并不能回答真正的问题:为什么astar_search.hpp中的所有astar_search_no_init()函数都需要VertexListGraph?文档中说有一个版本可以处理IncidenceGraphs,这是有意义的,但我看不到任何版本。可以看到文件,我看到一个文档-这不是你要找的吗?不要管.hpp文件中的(正式)名称,那只是实现。你是说“astar_search_no_init()的两个版本,它们似乎都只在VertexListGraphs上工作”?这两个概念本质上是正交的,所以有顶点列表图也可以是发生图也就不足为奇了。@MSalters是的,这就是我的意思。它们似乎都只适用于顶点列表图。.hpp中的(正式)名称至少有冲突,因此与文档有误导性,但我很快会尝试一下!