基本概念1. : 有限状态 state 集合,s 表示某个特定状态2. : 有限动作 action 集合,a 表示某个特定动作3. Transition Model : Transition Model, 根据当前状态 s 和动作 a 预测下一个状态 s’,这里的表示从 s 采取行动 a 转移到 s’ 的概率4. Reward :表示 agent 采取某个动作后的即时奖励,它还有 R(s, a, s’), R(s) 等表现形式,采用不同的形式,其意义略有不同5. Policy : 根据当前 state 来产生 action,可表现为 或 ,后者表示某种状态下执行某个动作的概率回报(Return): 与 折扣率(discount): U 代表执行一组 action 后所有状态累计的 reward 之和,但由于直接的 reward 相加在无限时间序列中会导致无偏向,而且会产生状态的无限循环。因此在这个 Utility 函数里引入 折扣率这一概念,令往后的状态所反馈回来的 reward 乘上这个 discount 系数,这样意味着当下的 reward 比未来反馈的 reward 更重要,这也比较符合直觉。定义
由于我们引入了 discount,可以看到我们把一个无限长度的问题转换成了一个拥有最大值上限的问题。 强化学习的目的是最大化长期未来奖励,即寻找最大的 U。(注:回报也作 G 表示)基于回报(return),我们再引入两个函数状态价值函数:,意义为基于 t 时刻的状态 s 能获得的未来回报(return)的期望,加入动作选择策略后可表示为
动作价值函数:,意义为基于 t 时刻的状态 s,选择一个 action 后能获得的未来回报(return)的期望价值函数用来衡量某一状态或动作-状态的优劣,即对智能体来说是否值得选择某一状态或在某一状态下执行某一动作。
v 描述了处于一个状态的长期最优化价值,即在这个状态下考虑到所有可能发生的后续动作,并且都挑选最优的动作来执行的情况下,这个状态的价值q 描述了处于一个状态并执行某个动作后所带来的长期最优价值,即在这个状态下执行某一特定动作后,考虑再之后所有可能处于的状态并且在这些状态下总是选取最优动作来执行所带来的长期价值
Value Iteration最优化原理:当且仅当状态 s 达到任意能到达的状态 s‘ 时,价值函数 v 能在当前策略(policy)下达到最优,即,与此同时,状态 s 也能基于当前策略达到最优,即状态转移公式为:矩阵形式为:下面是一个实例,求每个格子到终点的最短距离,走一步的 reward 是 -1:
Model-free v.s. Model-basedModel-based 是指学习 Transition Model ,即在状态 s 采取行动 a 后转移到 s' 的概率,然后基于这个 Model 去选择最优的策略。Transition Model 的空间复杂度为 ,所以不太适合用于解决状态空间和动作空间过大的问题。Model-free 未知 Transition Model,通常通过不断的尝试去直接学习最优策略。前面的 Policy Iteration 和 Value Iteration 都是 model-based 方法,因此一定程度上受限于状态空间和动作空间的规模。于是 Q-learning 应运而生。
13
Q-learning公式如下,可以看出 Q-leaning 由 Value iteration 演变而来,但去除了对 Transition Model 的依赖,因此属于 Model-free 的方法。另一方面下一个动作 a 的选择,原来是根据 policy 选择最优的 action,现在是 maximum 下一个 state 的值来选择 action,所以 Q-learning 属于 off-policy 算法。