在2013年的一个深夜,DeepMind实验室的电脑屏幕上,一个像素化的小球正在《打砖块》游戏中不知疲倦地移动着。这个名为DQN的AI系统刚刚突破人类玩家的最高分记录,标志着深度学习与强化学习的首次完美联姻。如今,这个改变游戏AI历史的算法——Deep Q-Network(DQN)——已成为每位强化学习实践者的必修课。本文将带您重现这个里程碑式的突破,用PyTorch构建能够玩转经典Atari游戏的智能体,揭开深度强化学习的神秘面纱。
一、像素世界的马尔可夫抉择
在Atari的2600游戏机上,《太空入侵者》《打砖块》等经典游戏构建了一个个充满挑战的像素世界。每个游戏画面本质上是一个112×112的张量(经预处理后为84×84灰度图),智能体需要从这些二维像素中抽象出状态特征,这正是传统Q-learning力所不及之处。
传统Q-learning使用表格存储状态-动作值,但当状态空间达到Atari游戏的10^10000量级时,表格存储完全失效。深度Q网络通过卷积神经网络实现端到端的特征提取,将原始像素映射为最优动作决策,这种范式革新开启了深度强化学习的新纪元。
import torch
import torch