Как исправить, что объект «MountainCarEnv» не имеет атрибута «seed»?Python

Программы на Python
Anonymous
 Как исправить, что объект «MountainCarEnv» не имеет атрибута «seed»?

Сообщение Anonymous »

Использование библиотеки тренажерного зала для создания среды с помощью этого блока кода:

Код: Выделить всё

from envs import Maze
from utils import plot_policy, plot_tabular_cost_to_go, test_agent, plot_stats, seed_everything
import gym

env = gym.make('MountainCar-v0')
seed_everything(env)
Я просмотрел руководство, и они написали те же строки кода, но я получил следующую ошибку (кстати, утилиты и envs уже включены в то же место, что и файл Python, с которым я работаю):

Код: Выделить всё

AttributeError                            Traceback (most recent call last)
Cell In[3], line 3
1 import gym
2 env = gym.make('MountainCar-v0')
----> 3 seed_everything(env)

File ~\1MLRL Course\utils.py:218, in seed_everything(env, seed)
209 def seed_everything(env: gym.Env, seed: int = 42) -> None:
210     """
211     Seeds all the sources of randomness so that experiments are reproducible.
212     Args:
(...)
216         None.
217     """
--> 218     env.seed(seed)
219     env.action_space.seed(seed)
220     env.observation_space.seed(seed)

File ~\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\gym\core.py:241, in Wrapper.__getattr__(self, name)
239 if name.startswith("_"):
240     raise AttributeError(f"accessing private attribute '{name}' is prohibited")
--> 241 return getattr(self.env, name)

File ~\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\gym\core.py:241, in Wrapper.__getattr__(self, name)
239 if name.startswith("_"):
240     raise AttributeError(f"accessing private attribute '{name}' is prohibited")
--> 241 return getattr(self.env, name)

File ~\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\gym\core.py:241, in Wrapper.__getattr__(self, name)
239 if name.startswith("_"):
240     raise AttributeError(f"accessing private attribute '{name}' is prohibited")
--> 241 return getattr(self.env, name)

AttributeError: 'MountainCarEnv' object has no attribute 'seed'
Есть идеи?
Шаги, которые я предпринял:
  • Для начала импортировал библиотеки utils, env и Gym.
  • Пытался создать среду MountainCar-v0.
  • Следовал документации спортзала: https://www.gymlibrary.dev/environments ... ntain_car/
  • Понятия не имел, как обновить библиотеки utils, Gym или env, не нарушая их.


Подробнее здесь: https://stackoverflow.com/questions/767 ... ibute-seed

Вернуться в «Python»