基于Pytorch实现的DQN算法,环境是基于CartPole-v0的。在这个程序中,复现了整个DQN算法,并且程序中的参数是调整过的,直接运行。
DQN算法的大体框架是传统强化学习中的Q-Learning,只不过是Q-learning的深度学习版本。DQN的改进主要有三个:
1. DQN的行为值函数利用神经网络逼近;
2. DQN维护一个回放缓冲区,将每次从环境中采样得到的四元组数据存储到回放缓冲区中,训练 Q 网络的时候再从回放缓冲区中随机采样若干数据来进行训练;
3. DQN使用目标网络,使得算法的训练更加稳定。
1