【发布时间】:2022-11-08 00:17:38
【问题描述】:
我正在努力完成这棵迭代清晰的树,但我不知道如何找到 [tag:explored ](在桌子上)或探索的内容。我没有找到任何解决方案,所以任何人都可以解释所探索的内容或任何来源。我在 A 的起始状态和目标状态是 E
【问题讨论】:
-
它是“访问”的同义词。
标签: algorithm artificial-intelligence depth-first-search breadth-first-search
我正在努力完成这棵迭代清晰的树,但我不知道如何找到 [tag:explored ](在桌子上)或探索的内容。我没有找到任何解决方案,所以任何人都可以解释所探索的内容或任何来源。我在 A 的起始状态和目标状态是 E
【问题讨论】:
标签: algorithm artificial-intelligence depth-first-search breadth-first-search
您可以找到在树遍历的上下文中使用的术语“探索”。
例如,在TS University 的课堂笔记中,我们发现术语“expanded”、“explored”、“visited”和“frontier”都用于解释(搜索)树中的 DFS:
节点扩展
- 随着状态的探索,相应的节点被扩展为 应用后继功能
- 这会生成一组新的(子)节点
- 边缘(边界)是尚未访问的节点集
- 新生成的节点被添加到边缘
在这里你看看如何探索发生在扩大: 同义词参观.忽略此处的“生成”一词,因为它特定于搜索树木。你可以把它读作“发现”。
由于边界由定义上尚未访问的节点组成,因此探索的节点集与边界上的节点集是分离的。此外,边界上的节点始终是已探索节点的直接子节点。边界上的第一个节点将在下一次迭代中移动到探索集。
您问题中的表格可以填写如下:
Iteration Frontier Explored A B,C,D A A,B,C,D E,C,D A,B A,B,C,D,E C,D A,B,E 解释:
最初,我们可以说边界由 A 组成(未在表中描述)。应该传递此节点引用的是 DFS 算法的调用者。
在第一次迭代中,节点 A 从边界弹出,标记为已探索,并且是展开,即它的孩子被添加到边界。这意味着边界由 B、C 和 D 组成。
在第二次迭代中,节点 B 从边界(从其左侧)弹出,标记为已探索并展开:其子节点被添加到边界(在其左侧)。边界因此变为 E、C、D。
在第三次迭代中,节点 E 从边界弹出,标记为已探索,因为这是目标节点,所以过程停止。边界以 C、D 结束,但这些节点永远不会被探索。
【讨论】: