搜索与规划算法:启发式搜索、标记启发式搜索与开环规划
1. 蒙特卡罗树搜索变体
在处理大型动作和状态空间时,基本的蒙特卡罗树搜索算法有一些变体。其中,渐进扩展(progressive widening)是一种有效的方法。从状态 $s$ 考虑的动作数量被限制为 $\theta_1N(s)^{\theta_2}$,这里的 $\theta_1$ 和 $\theta_2$ 是超参数。类似地,我们还可以使用双重渐进扩展(double progressive widening)来限制从状态 $s$ 采取动作 $a$ 后得到的状态数量。如果从状态 $s$ 执行动作 $a$ 后模拟的状态数量低于 $\theta_3N(s, a)^{\theta_4}$,则采样一个新状态;否则,以与访问次数成比例的概率从之前采样的状态中选择一个。这种策略可用于处理大型以及连续的动作和状态空间。
2. 启发式搜索
启发式搜索(Heuristic Search)使用从当前状态 $s$ 开始,基于价值函数 $U$ 的贪婪策略进行 $m$ 次模拟。价值函数 $U$ 初始化为其上限,这个上限被称为启发式。在模拟过程中,我们通过前瞻(lookahead)更新对 $U$ 的估计。模拟结束后,我们根据 $U$ 从 $s$ 选择贪婪动作。
启发式搜索的代码实现如下:
struct HeuristicSearch
𝒫 # problem
Uhi # upper bound on value function
d # depth
m # number of simulations
end
func
超级会员免费看
订阅专栏 解锁全文
1984

被折叠的 条评论
为什么被折叠?



