DFS“可以返回任何路径”

时间:2018-10-12 19:51:59

标签: depth-first-search state-space tree-search

这是来自加利福尼亚大学伯克利分校的practice AI exam

问题提出了 enter image description here

  

考虑上面显示的状态空间图。 A是开始状态,G是   是目标状态。每个边缘的成本显示在图表上。   每个边缘均可在两个方向上遍历。注意启发式   h1是一致的,但启发式h2是不一致的。

     

对于以下每个图形搜索   策略(对于树搜索不回答),请标记其中的哪一个(如果有)   列出了它可能返回的路径。请注意,对于某些搜索策略,   返回的特定路径可能取决于打破平局的行为。

搜索算法是深度优先,宽度优先,均等成本,A *为h1和A *为h2。 “列出的路径”是A-B-D-G,A-C-D-G和A-B-C-D-F-G

这是我根据图表构建的搜索树(具有各种启发式方法和操作成本): enter image description here 该解决方案说DFS将返回A B D G,A C D G和A B C D F G,因为“ DFS可以返回任何路径”

我可以理解,如果平局决胜者是字母表中的前一个字母,DFS将返回ABCDEG。如果平局决胜者是字母表中的后一个字母,DFS将返回ACDG。但是我不知道了解DFS在什么情况下会返回ABDG或ABCDFG。

我还认为DFS扩展了最深的节点并以这种方式返回解决方案。它可以返回任何路径解决方案是否正确?如果是这样,怎么办?

1 个答案:

答案 0 :(得分:1)

DFS(深度优先搜索)不评估路径成本。因此,没有决胜局。 DFS仅返回它遇到的第一个成功路径。特定路径完全取决于连续路径在每个节点上的排序顺序。因此,该图上的DFS可以返回九种可能解决方案中的 any

例如,假设图形按以下顺序连接:

Node   edges to ...
 A       B C
 B       C D
 C       D A B
 D       F B C G E
 F       G D
 G       E F
 E       D G

然后遍历通常是A-B-C-D-F-G(每个节点的第一个参考)。 其他边缘顺序将导致返回其他解决方案。

类似地,BFS可能会导致返回4节点解决方案中的任何一个。

可以清除吗?