OpenAI Gym 是一个最广泛使用的强化学习实验环境,内置上百种实验环境,比如一些简单几何体的运动,一些用文本表示的简单游戏,或者机械臂的抓取和控制等实验环境。
安装Gym后,一般的使用流程是:
1. 加载 gym 库:
import gym
2. 进入指定的实验环境:
env = gym.make('Taxi-v2') //
env = gym.make('CartPole-v0') //cartpole游戏
3. 渲染环境,即可视化看看环境的样子:
env.render()
其中 env 是 gym 的核心接口,有几个常用的方法也是实验中通用的:
1. env.reset, 重置环境,返回一个随机的初始状态。
2. env.step(action),将选择的action输入给env,env 按照这个动作走一步进入下一个状态,所以它的返回值有四个:
observation,reward,done,info=env.step(action)
observation:进入的新状态
reward:采取这个行动得到的奖励
done:当前游戏是否结束
info:其他一些信息,如性能表现,延迟等等,可用于调优
3. env.render,这个前面说过可以可视化展示环境
注意到,在 state1-action-state2 这个过程中,action 是需要我们决定的,通常会通过 greedy search 和 q learning 等算法选择,而 state1,state2 就可以用 env 自动获取。