Как отменить действие в OpenAI Gym?

В OpenAI Gym я хотел бы знать следующие состояния для разных действий в одном и том же состоянии. Например, я хочу получить s_1, s_2, где динамика моего окружения:

(s, a_1) -> s_1, (s, a_2) -> s_2

Я не могу найти метод, который отменяет действие или показывает следующее состояние без изменения среды. Есть ли что-то очевидное, что мне не хватает?

Если это помогает, я делаю это, чтобы различать динамику и вознаграждение за LQR, и использую среду InvertedPendulum.


person LYH    schedule 25.08.2016    source источник


Ответы (2)


Я нашел метод с именем set_state, который делает именно это. Его можно найти по адресу:

person LYH    schedule 26.08.2016

Попробуйте клонировать env.

from copy import deepcopy
import gym

env1 = gym.make("InvertedPendulum-v1")
s = env.reset()

env2 = deepcopy(env1)

s_1 = env.step(a_1)
s_2 = env.step(a_2)
person Alex Van de Kleut    schedule 19.06.2020