什么是 OpenAI Gym?
OpenAI Gym 是一个用于开发和比较强化学习(Reinforcement Learning, RL)算法的工具包。它提供了一系列标准化的环境(如 CartPole、MountainCar、Atari 游戏等),让研究人员和开发者可以快速测试和验证他们的智能体。
快速开始
安装 Gym(现由 Gymnasium 维护):
pip install gymnasium[box2d,atari]
运行一个简单示例:
import gymnasium as gym
env = gym.make("CartPole-v1", render_mode="human")
observation, info = env.reset()
for _ in range(1000):
action = env.action_space.sample() # 随机动作
observation, reward, terminated, truncated, info = env.step(action)
if terminated or truncated:
observation, info = env.reset()
env.close()
核心概念
- Environment(环境):模拟任务的世界,如游戏或物理系统。
- Agent(智能体):在环境中采取行动以最大化累积奖励的程序。
- Observation(观测):环境当前状态的信息。
- Action(动作):智能体可执行的操作集合。
- Reward(奖励):每一步环境反馈给智能体的数值信号。
自定义环境开发
Gym 支持用户创建自己的环境。只需继承 gym.Env 类并实现 reset()、step()、render() 等方法即可。
详细指南请参考78TP文档或社区教程。
常见问题
- Q: Gym 和 Gymnasium 有什么区别?
A: 自 2022 年起,Gym 项目由 Farama 基金会维护,并更名为 Gymnasium,接口更稳定,推荐新项目使用。 - Q: 如何可视化训练过程?
A: 可使用render_mode="human"或集成 TensorBoard、Matplotlib 等工具。