知情和不知情搜索有什么区别?

时间:2016-09-29 03:24:03

标签: search artificial-intelligence

知情和不知情搜索有什么区别?你能用一些例子解释一下吗?

3 个答案:

答案 0 :(得分:15)

盲目或制服搜索

这是一个没有"信息的搜索"关于目标节点。

一个例子是广度优先搜索(BFS)。在BFS中,搜索继续前进一层。换句话说,首先在连续层中的节点之前访问同一层中的节点。执行此操作直到一个节点被扩展"是目标节点。在这种情况下,没有关于目标节点的信息用于访问,扩展或生成节点。

我们可以将盲目或穿制服的搜索视为蛮力搜索。

启发式或知情搜索

搜索"信息"关于目标。

此类算法的一个例子是A *。在该算法中,还使用关于目标节点的信息来访问和扩展节点。有关目标节点的信息由启发式函数(这是一个将目标节点的信息与状态空间的每个节点相关联的函数)给出。在A *的情况下,与每个节点n相关联的启发式信息是对从n到目标节点的距离的估计。

我们可以将知情搜索视为大约"指导"搜索范围。

答案 1 :(得分:6)

不知情的搜索是一种蛮力或“盲目”搜索。它不使用任何关于问题的知识,因此可能比知情搜索效率低。

不知情搜索算法的例子包括广度优先搜索,深度优先搜索,深度限制搜索,统一成本搜索,深度优先迭代深化搜索和双向搜索。

知情搜索(也称为“启发式搜索”)使用有关问题的先验知识(“领域知识”),因此可能比不知情的搜索更有效。

知情搜索算法的示例是最佳优先搜索和A *。

答案 2 :(得分:-1)

下面给出了穿制服搜索和知情搜索之间的区别:

  1. 统一搜索技术只能访问问题定义 而知情搜索技术可以访问启发式函数和 问题定义。

  2. 统一搜索效率较低,而知情搜索效率更高。

  3. 称为盲搜索的统一搜索,而知情搜索则称为启发式搜索。
  4. 统一搜索使用更多计算,而知情搜索使用更少的计算。