标签: openai-gym

有没有一种方法可以实现 OpenAI 的环境,其中每一步的动作空间都会发生变化?

有没有一种方法可以实现 OpenAI 的环境,其中每一步的动作空间都会发生变化?

openai-gym

5
推荐指数
1
解决办法
2714
查看次数

OpenAI 环境(健身房)应该如何使用 env.seed(0)?

我创建了一个非常简单的 OpenAI 健身房 ( banana-gym) 并想知道我是否应该/如何实现env.seed(0).

例如,参见https://github.com/openai/gym/issues/250#issuecomment-234126816

random random-seed openai-gym

5
推荐指数
1
解决办法
8437
查看次数

CartPole-v0 的得分恰好为 200

我正在研究 openai 健身房提供的 CartPole-v0。我注意到我的程序从来没有超过 200。在某些时候它停留在 200 并且不会更多。我想知道是否有我在 openai 健身房中遗漏的任何配置。有没有人发现这个问题?

reinforcement-learning openai-gym

5
推荐指数
1
解决办法
1818
查看次数

python openAI复古模块

我正在尝试使用复古模块和 jupyter 笔记本,我似乎将它安装!pip install retro到了下载/安装正常的位置。

但是当我尝试时import retro出现错误

`

Traceback (most recent call last):

  File "/home/benbartling/anaconda3/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 2963, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)

  File "<ipython-input-1-81066d3a41c5>", line 1, in <module>
    import retro

  File "/home/benbartling/anaconda3/lib/python3.6/site-packages/retro/__init__.py", line 206
    print "%s: %s" % (key, value)
                 ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

有人会有什么想法吗?谢谢

python anaconda openai-gym

5
推荐指数
1
解决办法
1393
查看次数

Gym (openAI) 环境动作空间取决于实际状态

我正在使用 Gym 工具包来创建我自己的 env 和 keras-rl 在代理中使用我的 env。问题是我的行动空间发生了变化,这取决于实际状态。例如,我有 46 种可能的操作,但在特定状态下只有 7 种可用,而且我无法找到对其进行建模的方法。

我读过这个问题open-ai-environment-with-change-action-space-after-each-step

但这并没有解决我的问题。

在 Gym 文档中没有执行此操作的说明,只有他们的 Github 存储库(仍然打开)上的一个问题。我无法理解代理(keras-rl、dqn 代理)如何选择一个动作,它是随机选择的吗?但从哪里来?

有人可以帮助我吗?想法?

reinforcement-learning openai-gym keras-rl

5
推荐指数
1
解决办法
852
查看次数

使用 OpenAI Gym 构建 mujoco-py 的轮子失败

我按照 OpenAI Gym 的安装说明进行操作,但完整安装出现错误“无法为 mujoco-py 构建轮子”

pip install gymimport gym在我的笔记本电脑上工作正常,也import mujoco_py可以工作,但我仍然收到“无法构建轮子错误”

如果有人可以解释为什么我会收到此无效语法错误,那将会很有用。

(universe) abhimanyu@abhimanyu-HP-ProBook-440-G3:~/gym$ pip install -e .'[all]'
Obtaining file:///home/abhimanyu/gym
Requirement already satisfied: scipy in /home/abhimanyu/anaconda3/envs/universe/lib/python2.7/site-packages (from gym==0.10.8) (1.1.0)
Requirement already satisfied: numpy>=1.10.4 in /home/abhimanyu/anaconda3/envs/universe/lib/python2.7/site-packages (from gym==0.10.8) (1.15.3)
Requirement already satisfied: requests>=2.0 in /home/abhimanyu/anaconda3/envs/universe/lib/python2.7/site-packages (from gym==0.10.8) (2.10.0)
Requirement already satisfied: six in /home/abhimanyu/anaconda3/envs/universe/lib/python2.7/site-packages (from gym==0.10.8) (1.11.0)
Requirement already satisfied: pyglet>=1.2.0 in /home/abhimanyu/anaconda3/envs/universe/lib/python2.7/site-packages (from gym==0.10.8) (1.3.2)
Requirement already satisfied: box2d-py>=2.3.5 in /home/abhimanyu/anaconda3/envs/universe/lib/python2.7/site-packages (from gym==0.10.8) (2.3.5)
Collecting mujoco_py>=1.50 …
Run Code Online (Sandbox Code Playgroud)

python openai-gym

5
推荐指数
1
解决办法
7451
查看次数

action_space 有什么用?

我正在 OpenAI Gym 中创建自定义环境,但真的不明白,action_space 是做什么用的?我应该在里面放什么?准确地说,我不知道 action_space 是什么,我没有在任何代码中使用它。而且我在互联网上没有找到任何东西,什么可以正常回答我的问题。

openai-gym

5
推荐指数
1
解决办法
7064
查看次数

如何设置 openai-gym 环境以特定状态而不是 `env.reset()` 开始?

今天在openai-gym环境下尝试实现一个rl-agent的时候,发现一个问题,好像所有的agent都是从最初始的状态开始训练的:env.reset(),即

import gym

env = gym.make("CartPole-v0")
initial_observation = env.reset()  # <-- Note
done = False

while not done:
    action = env.action_space.sample()  
    next_observation, reward, done, info = env.step(action)

env.close()  # close the environment
Run Code Online (Sandbox Code Playgroud)

所以很自然地,代理可以沿着路线行事env.reset() -(action)-> next_state -(action)-> next_state -(action)-> ... -(action)-> done,这是一个插曲。但是,代理如何从特定状态(如中间状态)开始,然后从该状态采取行动?例如,我从重放缓冲区中采样了一个体验,即(s, a, r, ns, done),如果我想训练代理直接从 state 开始,然后ns使用 a 获取动作Q-Network,然后n-step向前迈出一步,该怎么办。类似的东西:

import gym

env = gym.make("CartPole-v0")
initial_observation = ns  # not env.reset() 
done = False

while not done:
    action = …
Run Code Online (Sandbox Code Playgroud)

reinforcement-learning python-3.x openai-gym

5
推荐指数
1
解决办法
5683
查看次数

openai-gym LunarLander 自杀烧伤模拟

我想模拟自杀烧伤来学习和理解火箭着陆。OpenAI 健身房已经有一个 LunarLander 环境,用于训练强化学习代理。我正在使用这个环境来模拟 python 中的自杀烧伤。我已经(x,y)从这个环境的状态向量的前两个值中提取了坐标。根据这些值,将y坐标视为高度;我已经使用这些方程计算了降落着陆器的速度和加速度

velocity(v) = delta_y/ delta_t
acceleartion(a) = delta_v/delta_t
Run Code Online (Sandbox Code Playgroud)

随着模拟逐步递增,时间差delta_t被视为 1。无法找到 LunarLander 的重力参数,我给了它一个默认值g=1。然后使用此reddit 评论中的以下等式

开始自杀燃烧的高度 = [(当前高度)(重力加速度)+(1/2)(当前速度)2 ] /(发动机加速度)

我试图计算高度以开始自杀烧伤。这是我的完整 python 代码。我只计划使用四个可能操作中的两个操作 0(什么都不做)和 2(启动主引擎)。

import gym
env = gym.make('LunarLander-v2')
env.seed(0)

g = 1
delta_t = 1
action = 0

state = env.reset()

# x0 = state[0]
y0 = state[1]
v0 = 0

for t in range(3000):
    state, reward, done, _  = env.step(action)
    y = …
Run Code Online (Sandbox Code Playgroud)

python simulation physics game-physics openai-gym

5
推荐指数
1
解决办法
432
查看次数

无法在 Google Colab 中加载 OpenAI Gym 环境

我正在尝试在 google colab 中训练 DQN,以便我可以测试 TPU 的性能。不幸的是,我收到以下错误:

import gym
env = gym.make('LunarLander-v2')

AttributeError: module 'gym.envs.box2d' has no attribute 'LunarLander'
Run Code Online (Sandbox Code Playgroud)

我知道这是一个常见的错误,我以前在本地机器上遇到过这个错误。我能够使用以下命令修复它:

!pip install box2d box2d-kengz
!pip install Box2D
!pip install -e '.[box2d]'
Run Code Online (Sandbox Code Playgroud)

虽然这在我的本地机器上有效,但在 google colab 上不是。我无法摆脱错误。有没有人有办法解决吗?

python machine-learning neural-network openai-gym google-colaboratory

5
推荐指数
1
解决办法
1710
查看次数