强化学习 Gym 安装以及入门

强化学习 Gym 安装以及入门

官网:https://www.gymlibrary.dev/

https://github.com/openai/gym

Gym是一个研究强化学习算法的工具箱。需要安装2个库 gym、pygame。

一、安装库
1、安装gym。最小安装的Gym库只包括少量的内置环境,如算法环境、简单文字游戏环境和经典控制环境。box2d

pip install gym -i https://pypi.tuna.tsinghua.edu.cn/simple/

完整安装。gym库的一些内置的扩展库并不包括在最小安装中,比如说gym[atari]、gym[box2d]、gym[mujoco]、gym[robotics]等等。

pip install --upgrade gym[all] -i https://pypi.tuna.tsinghua.edu.cn/simple/

查看版本号:

① pip show gym

② print(gym.__version__)

import gym

print(gym.__version__)

2、安装pygame

pip install pygame -i https://pypi.tuna.tsinghua.edu.cn/simple/

 

二、LunarLander-v2 月球登陆器

1、安装box2d。

pip install gym[box2d]

2、代码

import gym

# LunarLander-v2 月球登陆器
env = gym.make("LunarLander-v2", render_mode="human")
observation, info = env.reset(seed=42)
for _ in range(1000):
    observation, reward, terminated, truncated, info = env.step(env.action_space.sample())

    if terminated or truncated:
        observation, info = env.reset()
env.close()

 

3、函数说明。
make():  生成环境对象。
reset():为环境复位初始化函数。将环境的状态恢复到初始状态。
env.state 用于查看环境当前状态。state是环境的一个propety,不是函数。
env.step():单步执行。这里说的单步不是指软件程序调试中所指的运行一行代码之类的,而是指智能体与环境之间的一次交互,即智能体在当前状态s下执行一次动作a,环境相应地更新至状态s,并向智能体反馈及时奖励r。
env.render():环境显示。以图形化的方式显示环境当前状态,在智能体与环境的持续交互过程中,该图形化显示也是相应地持续更新的。
env.close():关闭环境。
env.sample_space.sample():  对动作空间进行随机采样。
env.seed():指定随机种子。

发表回复

您的电子邮箱地址不会被公开。