Q-Learning 是一种无监督学习算法,常用于强化学习中。它通过学习值函数来预测在给定状态下采取某个动作的预期回报。以下是 Q-Learning 的数学基础。

基本概念

值函数 (Value Function)

值函数 ( V(s) ) 表示在状态 ( s ) 下采取任何动作的期望回报。

策略 (Policy)

策略 ( \pi(s) ) 是一个映射函数,它从状态空间 ( S ) 到动作空间 ( A )。

状态-动作值函数 (Q-Function)

状态-动作值函数 ( Q(s, a) ) 表示在状态 ( s ) 下采取动作 ( a ) 并遵循策略 ( \pi ) 的期望回报。

Q-Learning 算法

Q-Learning 算法的目标是学习状态-动作值函数 ( Q(s, a) )。

更新公式

[ Q(s, a) \leftarrow Q(s, a) + \alpha [R(s, a) + \gamma \max_{a'} Q(s', a') - Q(s, a)] ]

其中:

  • ( \alpha ) 是学习率,控制更新步长。
  • ( R(s, a) ) 是在状态 ( s ) 下采取动作 ( a ) 后获得的即时回报。
  • ( \gamma ) 是折扣因子,表示未来回报的现值。
  • ( s' ) 是采取动作 ( a ) 后转移到的新状态。

图片示例

Q-Learning 算法流程图

Q_Learning_Flowchart

扩展阅读

想要了解更多关于 Q-Learning 的内容,可以阅读以下链接: