最近工作有点忙,读了一下强化学习扩展库,初步了解了gym。分享一下。
当前,强化学习的发展,推动了强化学习相关的python扩展库的开发。开源Gym(目前已经迁移到Gymnasium)已经实现了一个抽象的环境类Gym.Env,并且在扩展库中,已经包含了多种具体环境类,可以模拟诸如飞船着陆,击球游戏等环境。本篇目前对实验一中的格子世界寻宝游戏的智能体的设计有一定的借鉴作用,但不太大,因为Gym.Env是假设智能体不知道环境模型,而实验一则假设智能体能获知环境模型的MDP描述(五元组)。
不过,暂时了解,有助于提高咱们的学习兴趣
(1)Gymnasium的前身是Gym,Gym已经不再更新,迁移到Gymnasium后,未来的发展将以Gymnasium为新起点。
(2)Gymnasium是一个为所有单智能体强化学习环境提供API的项目(python扩展库),包括常见环境的实现:cartpole、钟摆、mountain-car、mujoco、atari等。
(3)Gymnasium的核心是Env类(是对强化学习中环境的建模框架类),这是一个高级python类,代表了强化学习理论中的马尔可夫决策过程(MDP)。
(4)在Gymnasium中,环境(MDP)与Wrappers(包装类)一起实现为Env类,它们提供了有用的实用程序,并可以更改传递给用户的结果。
本实验将会使用Env类。
它是实现强化学习智能体所处环境的主要类:通过两个对象方法(step()和reset())封装了具有任意动力学特性的环境。单个智能体能部分或全部地观测到环境的状态(注:若要使用多智能体环境,参阅 P e t t i n g Z o o  ̄ \underline{PettingZoo} PettingZoo?)
以下概括性地介绍一下gymnasium.Env的方法与属性,具体使用时,需要用户参考相关文档(单击此处访问)