Q-Learning 是一种无监督的学习算法,属于强化学习的一种。它通过与环境交互,学习到最优的策略来最大化回报。

Q-Learning 工作原理

  1. 状态-动作值函数:Q-Learning 通过一个 Q 函数来表示在某个状态下采取某个动作的预期回报。
  2. Q 函数更新:Q 函数通过与环境交互不断更新,公式如下:
    Q(s, a) = Q(s, a) + α [R + γ max_a' Q(s', a') - Q(s, a)]
    
    其中,α 是学习率,R 是即时回报,γ 是折扣因子。
  3. 选择动作:在某个状态下,选择具有最大 Q 值的动作。

应用场景

Q-Learning 在很多领域都有应用,例如:

  • 游戏
  • 自动驾驶
  • 机器人控制

示例

假设有一个简单的环境,状态有 3 种,动作有 2 种。我们可以用以下表格来表示 Q 函数:

状态 动作1 动作2
s1 0.5 0.3
s2 0.4 0.6
s3 0.2 0.8

通过与环境交互,Q 函数会不断更新,最终得到最优策略。

扩展阅读

更多关于 Q-Learning 的内容,请参考 强化学习教程

强化学习