请说明 Q-learning 算法的工作机制,包括其核心思想、主要步骤以及关键更新公式。
考察说明
考查对强化学习中经典无模型控制算法 Q-learning 的原理、流程和公式的理解。
回答思路
- 【回答框架 1】Q-learning 是一种基于时序差分(TD)的无模型强化学习算法,用于学习最优策略。它通过学习状态-动作对的价值函数 Q(s,a) 来指导决策,Q 值表示在状态 s 下采取动作 a 后预期获得的累积奖励。
- 【回答框架 2】算法过程:初始化 Q 表(通常为零);在每个时间步,根据当前状态 s 选择一个动作 a(常采用 epsilon-greedy 策略平衡探索与利用);执行动作 a,获得即时奖励 r 和下一状态 s';使用 Bellman 方程更新 Q 值:Q(s,a) ← Q(s,a) + α[r + γ·max_a' Q(s',a') - Q(s,a)]。
- 【回答框架 3】关键点:更新时不使用实际采取的下一个动作,而是使用下一状态中最大的 Q 值,这使其成为离线策略(off-policy)算法。参数 α(学习率)控制更新幅度,γ(折扣因子)平衡当前与未来奖励。
- 【回答框架 4】收敛性:在满足一定条件(如每个状态-动作对被无限次访问,学习率适当衰减)下,Q-learning 能收敛到最优 Q 值,从而导出最优策略。
- 【回答框架 5】应用场景:适用于离散状态和动作空间的简单问题,如迷宫、游戏等;对于连续问题需借助函数逼近或深度 Q 网络(DQN)扩展。
- 【关键点 1】Q-learning 通过时序差分更新,使用 max_a' Q(s',a') 实现离线策略学习。
- 【关键点 2】Q 值更新公式:Q(s,a) ← Q(s,a) + α[r + γ·max Q(s',a') - Q(s,a)]。
- 【关键点 3】采用 epsilon-greedy 策略在探索与利用间权衡。
- 【关键点 4】算法最终收敛到最优策略,但需满足状态访问覆盖和适当超参数设置。
- 【易错点 1】混淆 Q-learning 与 SARSA:Q-learning 是离线策略,SARSA 是在线策略;二者更新公式中的下一动作选择不同。
- 【易错点 2】忽略折扣因子 γ 和学习率 α 对收敛的影响,过大或过小都可能导致不收敛或收敛慢。
- 【易错点 3】在实际应用中,直接使用 Q 表处理连续状态空间会导致维度灾难。