搜索是一门玄学!
不能信仰玄学!
考试要借助玄学!
可行性剪枝:当前状态一定不合法。
最优性剪枝:当前状态不可能比当前的最优解更优。(与估价函数配合使用)
优化搜索顺序:考虑倒搜、优先搜扩展状态少的、甚至瞎搜等。
折半搜索:分别从起始状态和终止状态开始搜索/或是前一半和后一半开始搜索,最后哈希表/双指针等合并。
是一种进阶的最优性剪枝。
定义 \(g_x\) 表示起点到 \(x\) 的实际距离 (已经得到),\(h_x\) 表示 \(x\) 到终点的估算距离 (根据估价函数的不同而不同),\(f_x\) 表示当前状态下的预估结果,则有:
注意:估价函数不能超过实际情况。
在递归求解时,可以利用小根堆维护 \(f\) 数组,每次选出一个当前的理论最优解优先扩展。
顾名思义,IDA*=ID (迭代加深)+A* (最优性剪枝)。
应用状态:DP状态不多。
每次遍历完一个点存下状态,下次直接使用
Random大法好!
“随机化算法没有出路”
原文:https://www.cnblogs.com/blueqwq/p/14864605.html