强化学习入门-Gym\Gymnasium简介、安装与测试运行

本文讲述了强化学习环境库Gym的发展历程,从OpenAI创建的Gym到Farama基金会接手维护并发展为Gymnasium。Gym提供统一API和标准环境,而Gymnasium作为后续维护版本,强调了标准化和维护的持续性。文章还介绍了Gym和Gymnasium的安装、使用和特性,以及它们在强化学习研究中的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Gym由来

强化学习对标准软件环境而不是数据集的依赖为该领域带来了许多独特的问题。给定一段图像分类代码,您可以向它提供任何足够大的标记图像数据集,然后按运行,它基本上会起作用。与数据集不同,当您处理游戏等基于软件的环境时,您必须确保该环境在您的操作系统和 CPU 架构上运行,没有错误,与现代版本的底层工具一起运行(例如当前版本的Python),并具有与您的学习代码兼容的 API。您还希望它有文档,可通过包管理器安装,并具有专门的可重复性功能。

此前,强化学习环境项目一直由单独的团体或个人在 GitHub 上维护和拥有。这意味着,如果有人突然辞职,或者公司倒闭,维护工作就会完全停止。即使是有人复制环境的标准开源方法在这里也是不可取的,因为每个人都需要使用完全相同版本的环境来实现整个研究领域的可重复性和一致性。

除了这给研究人员带来的生活质量、可重复性和生产力问题之外,现实是,只要强化学习领域存在,就需要能够进行性能比较的标准维护环境。我们对此问题的长期解决方案是让存储库由一个统一的中立非营利组织(类似于 Linux 基金会或 Apache 软件基金会)管理,该组织随着时间的推移维护这些库并使它们符合一组统一且一致的标准。这是 Farama 创建的很大一部分目的。

为了拥有标准化的环境和模块化的强化学习代码,需要有一个精心设计且易于使用的标准 API 来访问强化学习环境。对于大多数用例,这已经通过名为 Gym 的 Python 库存在。 Gym 最初由 OpenAI 于 6 年前创建,它包括一个标准 API、使环境符合该 API 的工具以及一组已成为广泛使用的基准的各种参考环境。它已通过 pip 安装了超过 4300 万次,在 Google Scholar 上被引用超过 4,500 次,并被 GitHub 上超过 32,000 个项目使用。这使其成为迄今为止世界上使用最广泛的强化学习库。

但 OpenAI 除了最初的发布之外并没有投入大量资源。 Gym 的维护逐渐减少,直到 2020 年底 Gym 完全无人维护。

2021年,Farama 基金会开始接手维护、更新Gym,并更新为Gymnasium。本质上,这是未来将继续维护的 Gym 分支。通过将 import gym 替换为 import gymnasium as gym,可以轻松地将其放入任何现有代码库中,并且 Gymnasium 0.26.2 在其他方面与 Gym 0.26.2 相同。

Gym简介

gym是一个开源的强化学习实验平台,一个用于训练强化学习算法的Python库,它提供了一系列环境,让开发者可以专注于设计新的强化学习算法,而不需要从零开始搭建环境,使研究人员能够测试和比较他们的强化学习算法。gym通过提供具有各种复杂度的任务,使得研究人员可以轻松地探索强化学习的各个方面。这些任务涵盖了各种运动控制问题,例如机器人移动、游戏和许多其他类型的问题。同时,其提供了页面渲染,可以可视化地查看效果。

gym提供了一个统一的接口,使得研究人员可以使用相同的代码来解决不同的问题。它还支持多进程训练,使得研究人员可以同时训练多个智能体,从而加快实验速度。此外,gym还提供了可扩展的框架,使研究人员可以轻松地添加自己的环境和任务。

通过使用gym,研究人员可以更好地理解强化学习的工作原理,并开发出更有效的算法。此外,gym还可以用于教育和培训,使得学生和教师可以使用实际的任务来学习强化学习。

Gym主要包括以下基本组件:

-环境(Environment):Gym中的环境是一个包含状态、动作和奖励的抽象概念,用于描述强化学习问题。环境可以是离散的,也可以是连续的,同时支持多智能体(Multi-Agent)环境。

-任务(Task):任务是Gym中具体的强化学习问题,例如CartPole、MountainCar等。每个任务都对应一个特定的环境,用于评估智能体在某个任务上的性能。

-智能体(Agent):智能体是Gym中的一个抽象概念,用于表示强化学习算法。智能体通过与环境互动,学习策略,并在任务中执行策略以获得奖励。

-接口(Interface):Gym提供了多种接口,如Python API、TensorFlow、PyTorch等,方便研究者根据自己的需求选择合适的接口进行开发。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

余加木

想喝蜜雪冰城柠檬水(≧≦)/

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值