【发布时间】:2011-06-09 20:52:27
【问题描述】:
我对人工智能中的搜索功能有一些我无法理解的问题。我知道统一成本搜索是 A* 搜索算法的一个特例,如果它的启发式是一个常数函数。 我也知道广度优先搜索 (BFS) 是 A* 的一个特例,当所有边成本都是正数且相同时。 最佳优先搜索也是 A* 搜索的一个特例。 但是我能证明吗?我如何证明以上所有内容都是正确的?
【问题讨论】:
我对人工智能中的搜索功能有一些我无法理解的问题。我知道统一成本搜索是 A* 搜索算法的一个特例,如果它的启发式是一个常数函数。 我也知道广度优先搜索 (BFS) 是 A* 的一个特例,当所有边成本都是正数且相同时。 最佳优先搜索也是 A* 搜索的一个特例。 但是我能证明吗?我如何证明以上所有内容都是正确的?
【问题讨论】:
嗯,我真的不知道如何优雅地表达它,但你所说的一切都是真实的......定义!
在 A* 中,你有一个启发式函数,你贪婪地探索你的树,选择最有希望的分支。
如果每条边的成本相同,则 A* 仅从“距离 1”处的节点开始,因为它们的成本都最小:1。然后,A* 探索“距离 2”处的节点根节点,因为它们的成本现在是所有可能节点中最小的:2. 递归地,这会导致 BFS。
这与统一成本相同。对于最佳优先搜索,有点不同,A* 是最佳优先搜索的一个特例,而不是相反 =)。
【讨论】: