资源

https://item.jd.com/13764611.html
https://cread.jd.com/read/startRead.action?bookId=30842830&readType=1
https://www.gymlibrary.dev/

本机环境

macOS 14.0 (23A344)

ethan@WangdeMBP ~ % python3 --version
Python 3.9.6
ethan@WangdeMBP ~ % pip --version
pip 23.2.1 from /Users/ethan/Library/Python/3.9/lib/python/site-packages/pip (python 3.9)
ethan@WangdeMBP ~ % pip3 --version
pip 23.2.1 from /Users/ethan/Library/Python/3.9/lib/python/site-packages/pip (python 3.9)

安装

virtualenv

ethan@WangdeMBP ~ % pip install virtualenv
Defaulting to user installation because normal site-packages is not writeable
Looking in indexes: https://mirrors.aliyun.com/pypi/simple/
Requirement already satisfied: virtualenv in ./Library/Python/3.9/lib/python/site-packages (20.24.5)
Requirement already satisfied: distlib<1,>=0.3.7 in ./Library/Python/3.9/lib/python/site-packages (from virtualenv) (0.3.7)
Requirement already satisfied: filelock<4,>=3.12.2 in ./Library/Python/3.9/lib/python/site-packages (from virtualenv) (3.12.4)
Requirement already satisfied: platformdirs<4,>=3.9.1 in ./Library/Python/3.9/lib/python/site-packages (from virtualenv) (3.11.0)

有关于仓库的迁移和版本号的变更

原来的仓库:
https://github.com/openai/gym
后来被Farama-Foundation维护:
https://github.com/Farama-Foundation/Gymnasium

使用pip index versions分别检查仓库的历史版本号:

ethan@WangdeMBP ~ % pip index versions gym
WARNING: pip index is currently an experimental command. It may be removed/changed in a future release without prior warning.
gym (0.26.2)
Available versions: 0.26.2, 0.26.1, 0.26.0, 0.25.2, 0.25.1, 0.25.0, 0.24.1, 0.24.0, 0.23.1, 0.23.0, 0.22.0, 0.21.0, 0.20.0, 0.19.0, 0.18.3, 0.18.0, 0.17.3, 0.17.2, 0.17.1, 0.17.0, 0.16.0, 0.15.7, 0.15.6, 0.15.4, 0.15.3, 0.14.0, 0.13.1, 0.13.0, 0.12.6, 0.12.5, 0.12.4, 0.12.1, 0.12.0, 0.11.0, 0.10.11, 0.10.9, 0.10.8, 0.10.5, 0.10.4, 0.10.3, 0.10.2, 0.10.1, 0.10.0, 0.9.7, 0.9.6, 0.9.5, 0.9.4, 0.9.3, 0.9.2, 0.9.1, 0.9.0, 0.8.2, 0.8.1, 0.8.0, 0.7.4, 0.7.3, 0.7.2, 0.7.1, 0.7.0, 0.6.0, 0.5.7, 0.5.6, 0.5.5, 0.5.4, 0.5.3, 0.5.2, 0.5.1, 0.5.0, 0.4.10, 0.4.9, 0.4.8, 0.4.6, 0.4.5, 0.4.4, 0.4.3, 0.4.2, 0.4.1, 0.4.0, 0.3.0, 0.2.12, 0.2.11, 0.2.10, 0.2.9, 0.2.8, 0.2.7, 0.2.6, 0.2.5, 0.2.4, 0.2.3, 0.2.2, 0.2.1, 0.2.0, 0.1.7, 0.1.6, 0.1.5, 0.1.4, 0.1.3, 0.1.2, 0.1.1, 0.1.0, 0.0.7, 0.0.6, 0.0.5, 0.0.4, 0.0.3, 0.0.2
ethan@WangdeMBP ~ % pip index versions gymnasium
WARNING: pip index is currently an experimental command. It may be removed/changed in a future release without prior warning.
gymnasium (0.29.1)
Available versions: 0.29.1, 0.29.0, 0.28.1, 0.28.0, 0.27.1, 0.27.0, 0.26.3, 0.26.2, 0.26.1

发现在openai-gym维护到0.26.2后转到了Farama-Foundation下面的gymnasium,目前一直维护到了0.29.1.
经过测试,如果在随书中的代码的版本,则需要使用gym的0.25.2版本,也就是在安装gym时指定版本号为0.25.2

pip install -U gym

替换为:

pip install gym==0.25.2

其它的照着书中的步骤基本上可以跑通.好像我这边差了个pygame, pip install pygame一下就好了.

如果采用目前最新的版本0.29.1

  1. 创建虚拟环境 virtualenv openai-gymnasium
  2. 激活虚拟环境 source openai-gymnasium/bin/activate
  3. 安装 pip install -U gymnasium
  4. 测试 python -c 'import gymnasium as gym; gym.make("CartPole-v1");'
  5. 跑环境测试:在openai-gymnasium下建立test.py文件,文件如下.在激活的的环境下python test.py
import gymnasium as gym
env = gym.make('MountainCar-v0', render_mode="human")
for i_episode in range(20):
    observation = env.reset()
    for t in range(100):
        env.render()
        print(observation)
        action = env.action_space.sample()
        observation, reward, terminated, truncated, info = env.step(action)
    if terminated or truncated:
        print("Episode finished after {} timesteps".format(t+1))
        break
env.close()

在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐