📜  广度优先搜索是统一成本搜索的一个特例

📅  最后修改于: 2022-05-13 01:58:08.510000             🧑  作者: Mango

广度优先搜索是统一成本搜索的一个特例

在人工智能中,主要有两种搜索技术:

  1. 不知情/盲目的搜索技术
  2. 知情搜索技术

Uninformed 类别下的搜索算法是:

  1. 广度优先搜索
  2. 统一成本搜索
  3. 深度优先搜索
  4. 深度受限搜索
  5. 迭代深化深度优先搜索
  6. 双向搜索

Informed 类别下的搜索算法是:

  1. 最佳首次搜索
  2. A* 搜索

现在,我们将定义 BFS 和 UCS 搜索的步骤,然后我们将从 UCS 搜索算法中推导出 BFS。

广度优先搜索算法:

BFS 的属性:

  1. 从某种意义上说,它是一种完全搜索,它总能在有限搜索图中的有限步中找到解。
  2. 转移成本函数是 d(x, x') = 1 或任何常数。

广度优先搜索的优势:

  1. 它将找到起点和任何其他可到达点之间的最短路径。
  2. 它总能找到最佳解决方案。
  3. BFS 中没有什么像无用的路径,因为它是逐级搜索的。
  4. 在更短的时间内找到最近的目标。

统一成本搜索算法:

UCS 的属性:

  1. 我们总能找到从初始节点到当前节点的最佳路径。
  2. C(x) 是节点 x 的累积成本,从初始节点开始。
  3. d(x, x') 是从节点 x 到节点 x' 的状态转换成本。
  4. 如果我们为所有边设置 d(x, x')=1,UCS 就等同于广度优先搜索。

从 UCS 导出 BFS:

统一成本搜索如何成为 A* 搜索的特例 - 人工智能

UCS 的属性:

  1. 我们总能找到从初始节点到当前节点的最佳路径。
  2. C(x) 是节点 x 的累积成本,从初始节点开始。
  3. d(x, x') 是从节点 x 到节点 x' 的状态转换成本。
  4. 如果我们为所有边设置 d(x, x')=1,UCS 就等同于广度优先搜索。

A* 搜索算法:

A* 算法承诺最好的最优解。