所谓的策略,其实就是状态到动作的映射。数学表达为 π:s→a
确定性策略是说只要给定一个状态s,就会输出一个具体的动作a,而且无论什么时候到达状态s,输出的动作a都是一样的。而随机策略是指,给定一个状态s,输出在这个状态下可以执行的动作的概率分布。即使在相同状态下,每次采取的动作也很可能是不一样的。
Actor-Critic
如果我们能够相对准确地估计状态价值,用它来指导策略更新,那么是不是会有更好的学习效果呢?这就是Actor-Critic策略梯度的主要思想。
我们有了像 Q-learning 这么伟大的算法, 为什么还要瞎折腾出一个 Actor-Critic? 原来 Actor-Critic 的 Actor 的前生是 Policy Gradients , 这能让它毫不费力地在连续动作中选取合适的动作, 而 Q-learning 做这件事会瘫痪. 那为什么不直接用 Policy Gradients 呢? 原来 Actor Critic 中的 Critic 的前生是 Q-learning 或者其他以值为基础的学习法 , 能进行单步更新, 而传统的 Policy Gradients 则是回合更新, 这降低了学习效率.
actor:行动者,对应policy
critic:评论者,对应value function值函数
Actor-Critic算法主要是为了解决Policy Gradient算法中仅能在一个回合完成之后才能更新参数。简单的说是在玩游戏结束了之后,才能对参数进行更新。
强化学习的中心思想,就是让智能体在环境里学习。每个行动会对应各自的奖励,智能体通过分析数据来学习,怎样的情况下应该做怎样的事情。
设定一种规则,让智能体能够把握奖励与危险之间的平衡
强化学习的三种方法:
- 基于价值 (Value-Based) 这种方法,目标是优化价值函数V(s)
价值函数会告诉我们,智能体在每个状态里得出的未来奖励最大预期 (maximum expected future reward) 。
一个状态下的函数值,是智能体可以预期的未来奖励积累总值,从当前状态开始算。
vπ(s)=Eπ[Rt+1+γRt+2+γ2Rt+3+…∣St=s] v_{\pi}(s)=\mathbb{E}_{\pi}\left[R_{t+1}+\gamma R_{t+2}+\gamma^{2} R_{t+3}+\ldots | S_{t}=s\right] vπ(s)=Eπ[Rt+1+γRt+2+γ2Rt+3+…∣St=s]
- 基于策略(Policy-Based)
策略就是评判智能体在特定时间点的表现。 把每一个状态和它所对应的最佳动作建立联系。
a=π(s) a=\pi(s) a=π(s)
策略分为两种:
确定性策略:某一个特定状态下的策略,永远都会给出同样的行动。
随机性策略:策略给出的是多种行动的可能性分布
随机策略公式化:
π(a∣s)=P[At=a∣St=s]
\pi(a | s)=\mathbb{P}\left[A_{t}=a | S_{t}=s\right]
π(a∣s)=P[At=a∣St=s]
- 基于模型 (Model-Based)
这种方法是对环境建模。即我们要创建一个模型,来表示环境的行为。问题是,每个环境都会需要一个不同的模型 (马里奥每走一步,都会有一个新环境) 。这也是这个方法在强化学习中并不太常用的原因。
强化学习策略详解
本文深入解析了强化学习中的策略概念,包括确定性和随机性策略,并介绍了Actor-Critic算法如何结合策略梯度和值函数的优势,实现更高效的学习过程。
1367

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



