首页 > 其他 > 详细

6.7 搜索

时间:2021-06-08 22:58:29      阅读:20      评论:0      收藏:0      [点我收藏+]

6.7 搜索 -i207M

前言 -i207M

搜索是一门玄学!

不能信仰玄学!

考试要借助玄学!

DFS

可行性剪枝:当前状态一定不合法。

最优性剪枝:当前状态不可能比当前的最优解更优。(与估价函数配合使用)

优化搜索顺序:考虑倒搜、优先搜扩展状态少的、甚至瞎搜等。

BFS

折半搜索:分别从起始状态和终止状态开始搜索/或是前一半和后一半开始搜索,最后哈希表/双指针等合并。

A*

是一种进阶的最优性剪枝。

定义 \(g_x\) 表示起点到 \(x\) 的实际距离 (已经得到),\(h_x\) 表示 \(x\) 到终点的估算距离 (根据估价函数的不同而不同),\(f_x\) 表示当前状态下的预估结果,则有:

\[f_x=g_x+h_x \]

注意:估价函数不能超过实际情况。

在递归求解时,可以利用小根堆维护 \(f\) 数组,每次选出一个当前的理论最优解优先扩展。

IDA*

顾名思义,IDA*=ID (迭代加深)+A* (最优性剪枝)。

记忆化搜索

应用状态:DP状态不多。

每次遍历完一个点存下状态,下次直接使用

模拟退火

Random大法好!

“随机化算法没有出路”

6.7 搜索

原文:https://www.cnblogs.com/blueqwq/p/14864605.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!