网站自己优化,网站系统设计方案,微信开发者工具简介,wordpress 封包 app一、蒙特卡洛方法 蒙特卡洛方法是一种无模型#xff08;Model-Free#xff09;的强化学习算法#xff0c;它通过直接与环境交互采样轨迹#xff08;episodes#xff09;来估计状态或动作的价值函数#xff08;Value Function#xff09;#xff0c;而不需要依赖环境动态…一、蒙特卡洛方法 蒙特卡洛方法是一种无模型Model-Free的强化学习算法它通过直接与环境交互采样轨迹episodes来估计状态或动作的价值函数Value Function而不需要依赖环境动态模型如转移概率矩阵 P(s′∣s,a)和奖励函数 R(s,a)的显式知识。简单来说我们前面来说的策略都是通过公式推导出公式q但是蒙特卡洛可以直接通过数据量来推出q这样就省略勒模型 假设有一枚硬币抛硬币后若正面朝上定义随机变量X1若反面朝上X-1。目标是计算X的期望E(X)。 基于Model-base的方法基于已知的概率模型概率都为0.5,那么期望计算公式E(X)0.5*10.5*(-1)0 如果通过蒙特卡洛方法就直接从数据入手。通过多次独立地抛硬币进行采样。比如抛次硬币假设得到6次正面4次反面对应的值分别为1和-1计算这次采样的平均值为6-4/10 0.2用这个平均数来近似期望。当抛硬币的次数逐渐增大时根据大数定律样本均值会越来越趋近于随机变量的期望值。
二、 MC Basic MC Basic 是蒙特卡洛方法的一种简单实现结合了策略评估Policy Evaluation和策略改进Policy Improvement的迭代过程属于基于策略迭代Policy Iteration的无模型算法。在强化学习中要计算在策略pi下的状态 - 动作值函数 q(s,a)即从状态出发采取动作a后遵循策略pi所获得的期望回报。 从状态s出发采取动作a然后按照策略pi在环境中进行交互直到到达终止状态这一过程称为一个 episode得到一个回报 g(s,a)。重复上述过程多次得到多个回报,对这些回报取平均值 随着采样次数的增加该估计会越来越接近真实的。
2.1 网格世界的蒙特卡洛 在一个M * N 的网格世界中智能体需要从一个位置移动到另一个位置。每个网格可能有不同的奖励值例如有些网格代表正奖励有些代表负奖励还有些可能是障碍。智能体要学习一个策略以最大化从起始状态到终止状态的累积奖励。 智能体从初始状态 s0 开始按照当前策略选择动作进行移动。假设在某一时刻智能体处于状态根据策略选择动作然后转移到下一个状态并获得奖励。重复这个过程直到到达终止状态形成一个 episode如s0,a0,r0,s1,a1,r1,...,st,at,r其中T是终止时刻该 episode 的回报 2.2 首次访问法 对于每个状态 - 动作对(s,a)只考虑在一个 episode 中第一次访问到s,a时后续所获得的回报来估计qpi(s,a)。例如在一个 episode 中多次访问到(s,a)但只使用第一次访问后得到的回报 G 来更新对qpi(s,a)的估计。若有n个 episode 中首次访问到(s,a)得到的回报分别为G1,G2,G3...则的估计值为。
2.3 每次访问法 对于每个状态 - 动作对s,a在一个 episode 中每次访问到(s,a)时后续所获得的回报都用于估计qpi(s,a)。即每次访问到(s,a)都记录下后续的回报然后对所有这些回报求平均值来更新qpi(s,a)的估计。 同样使用贪心策略来迭代到最终