Q-learning算法的基础认识
Q-learning属于基于价值的离线无模型强化学习算法.
仅通过学习动作价值指导决策,无法直接优化动作策略,对连续动作场景适配性差。
它依靠Q表存储价值,结合时序差分规则迭代更新,搭配ε-贪心策略平衡探索与利用,依赖折扣因
子、学习率调控训练效果,需完成单步交互后更新,虽逻辑简单易实现,但状态或动作空间较大时
易出现Q表爆炸问题。
基础 Q-learning 结构
Q-Learning决策
选择最大的Q值(动作价值)
Q-Learning 依据动作价值函数完成决策,核心是在 Q 表中选取价值最高的动作。 以示例说明:当
前处于状态s1,存在动作a1、a2,查表得Q(s1, a1)=-2、Q(s1, a2)=1,
a2对应预期奖励更高,因此选择a2。执行动作后状态切换为s2,重复查表、对比 Q
值、择优选择的流程。智能体不断跟随新状态循环该逻辑,直至任务结束。
QLearning 更新
一个动作的总价值,由当前即时奖励与后续状态的长期收益共同构成。
估计值:Q 表中记录的 Q(s1, a2),即当前状态下执行对应动作的预估总价值。
真实目标值:即时奖励 + 下一状态的最大动作价值;引入折扣系数\(\gamma\),弱化远期收益权
重,体现未来收益的不确定性。
算法超参数与决策策略:
epsilon- 贪心策略:用于动作选择。以 epsilon=0.9为例,90% 概率依照 Q 表择优执行,10% 概
率随机选动作,以此平衡探索与利用。
学习率alpha:取值小于 1,控制单次训练中误差的更新幅度。
折扣因子gamma:对未来奖励做衰减,衡量长期收益的重要程度。
手动计算过程
选动作
根据当前的状态和Q表格选动作
执行动作
根据当前的状态和动作,得到奖励和下个状态
估算的(状态-行为)值
计算当前行为的动作价值的估计值
计算真实值
计算当前行为的动作价值的真实值(根据下一个动态的最大动作奖励函数)
更新Q表
更新当前状态选择当前动作的动作价值函数
数学公式
动作价值函数(Q函数)
在状态 s 下执行动作 a,未来能够获得的累计回报期望值。
Bellman 最优方程
Q-learning 的理论基础是 Bellman 最优方程:
当前动作价值 = 当前奖励 + 下一状态最大价值。不断逼近最优 Bellman 方程。
TD目标(Temporal Difference Target)
Q-learning 每次更新的目标值:
TD Target(时序差分目标),当前样本认为的“正确 Q 值”。
TD误差(Temporal Difference Error)
当前 Q 值与目标值之间的差距。
Q-learning 更新公式
新 Q 值 = 旧经验 + 新经验
最优策略公式
在当前状态选择价值最大的动作。
ε-greedy 探索策略
训练阶段不能一直贪心,否则容易陷入局部最优,因此采用 ε-greedy:
奖励累计公式(Return)
Q-learning 优化目标是最大化累计奖励:
Q-learning 最终学习: