俄罗斯方块强化学习实验报告
一、俄罗斯方块DQN算法实验报告
1. 网络结构
图1 DQN网络结构
2. 超参数
GAMMA = 0.99 # decay rate of past observations 设置增强学习更新公式中的累计折扣因子 OBSERVE = 500. # timesteps to observe before training 设置观察期的迭代次数 EXPLORE = 500. # frames over which to anneal epsilon 设置探索期的观察次数 FINAL_EPSILON = 0.002 # final value of epsilon 设置ε的最终最小值 INITIAL_EPSILON = 10.0 # starting value of epsilon 设置ε的初始值 REPLAY_MEMORY = 5900 # number of previous transitions to remember 设置replay memory的容量 BATCH = 32 # size of mini batch 设置每次网络参数更新世用的样本数目 K = 1 # only select an action every Kth frame, repeat prev for others,设置几帧图像进行一次动作, # K越大让控制台输出的速度变慢,游戏画面速度变快,机器人动作的速度变越迟缓。
ACTIONS = 6 # number of valid actions 游戏动作数
3.实验结果
训练前期的self.score分数很低150左右,EPSILON=1.0,Q_MAX= 2.061341e-02:
图2 EPSILON=1.0
设置超参数EPSILON=0.05
在1000步迭代之后:
EPSILON固定在0.04999999999999416 Q_MAX = -1.163765e-01
Self.score有明显的提升,但是之后无论训练多久都没有明显提升了。
图3 EPSILON=0.05
设置超参数EPSILON= 0.002
在1001步迭代之后:
EPSILON固定在0.000004 Q_MAX = 1.728995e 02
Self.score可以轻松达到200以上。
图4 EPSILON=0.000004
设置超参数EPSILON= 0.000001
在1001步迭代之后:
EPSILON固定在-0.001998997999987482 Q_MAX = 1.899879e 03
Self.score可以轻松达到200以上。
图5 EPSILON=-0.002