from matplotlib import animation
def display_frames_as_gif(frames):
patch = plt.imshow(frames[0])
plt.axis('off')
def animate(i):
patch.set_data(frames[i])
anim = animation.FuncAnimation(plt.gcf(), animate, frames = len(frames), interval=5)
anim.save('./ppo_pong_result.gif', writer='imagemagick', fps=30)
env = wrap(gym.make('PongNoFrameskip-v4'))
s = np.array(env.reset())
total_reward = 0
frames = []
for t in range(10000):
# Render into buffer.
frames.append(env.render(mode = 'rgb_array'))
a, v, l = ppo.choose_action(np.expand_dims(s,axis=0))
# take action and get next state
s_, r, done, info = env.step(a)
s_ = np.array(s_)
total_reward += r
if done:
break
s = s_
env.close()
print('Total Reward : %.2f'%total_reward)
display_frames_as_gif(frames)
python將gym環境的運行過程保存爲gif
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.