3
值函数方法
Q学习入门
理解值函数与贝尔曼方程,用Q学习解决FrozenLake迷宫问题
🧊 FrozenLake 格子世界
目标:从左上角(S)走到右下角(G),避开冰洞(H)。F表示安全的冰面。
环境状态
S起点
F冰面
H冰洞
G终点
Q值热力图
颜色越深表示该状态的Q值越大(更安全)
0
回合数
0
当前步数
0
回合奖励
0%
成功率
状态 0
当前位置
⚙️ 超参数调节
0.010.201.0
0.50.951.0
0%30%100%
📈 训练曲线
💡 Q学习核心公式
贝尔曼方程
Q(s, a) = Q(s, a) + α[r + γmax Q(s', a') - Q(s, a)]
Q(s,a):状态s下执行动作a的价值
α:学习率,控制新信息权重
r:获得的奖励
γ:折扣因子,越大越重视未来
max Q(s',a'):下一状态的最优动作价值
ε-贪婪策略
if random() < ε: return random_action()
else: return argmax(Q[state])
ε控制探索(随机动作)和利用(贪心选择)的平衡。