opendilab / DI-engine

OpenDILab Decision AI Engine. The Most Comprehensive Reinforcement Learning Framework B.P.
https://di-engine-docs.readthedocs.io
Apache License 2.0
2.82k stars 352 forks source link

代码报错:在配置好conda环境以及将该项目fork到本地后,在运行DI-engine/dizoo/petting_zoo/config/路径下的所有py文件(如ptz_simple_spread_madqn_config.py;ptz_simple_spread_mappo_config.py等)时均出现报错 #751

Closed QingYuanZi1024 closed 8 months ago

QingYuanZi1024 commented 8 months ago

报错信息具体如下: Traceback (most recent call last): File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\ding\envs\env_manager\base_env_manager.py", line 137, in init self._observation_space = self._env_ref.observation_space File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\dizoo\petting_zoo\envs\petting_zoo_simple_spread_env.py", line 305, in observation_space return self._observation_space AttributeError: 'PettingZooEnv' object has no attribute '_observation_space'

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\dizoo\petting_zoo\config\ptz_simple_spread_madqn_config.py", line 83, in serial_pipeline((main_config, create_config), seed=0) File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\ding\entry\serial_entry.py", line 56, in serial_pipeline collector_env = create_env_manager(cfg.env.manager, [partial(env_fn, cfg=c) for c in collector_env_cfg]) File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\ding\envs\env_manager\base_env_manager.py", line 668, in create_env_manager return ENV_MANAGER_REGISTRY.build(manager_type, env_fn=env_fn, cfg=manager_cfg) File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\ding\utils\registry.py", line 96, in build raise e File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\ding\utils\registry.py", line 82, in build return build_fn(*obj_args, **obj_kwargs) File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\ding\envs\env_manager\subprocess_env_manager.py", line 79, in init super().init(env_fn, cfg) File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\ding\envs\env_manager\base_env_manager.py", line 146, in init self._env_ref.reset() File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\dizoo\petting_zoo\envs\petting_zoo_simple_spread_env.py", line 151, in reset obs_n = self._process_obs(obs) File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\dizoo\petting_zoo\envs\petting_zoo_simple_spread_env.py", line 214, in _process_obs obs = np.array([obs[agent] for agent in self._agents]).astype(np.float32) File "E:\mypycharmprojects\DI-Engine-for-DTDE-MARL\dizoo\petting_zoo\envs\petting_zoo_simple_spread_env.py", line 214, in obs = np.array([obs[agent] for agent in self._agents]).astype(np.float32) TypeError: tuple indices must be integers or slices, not str

PaParaZz1 commented 8 months ago

请提供一下你本地的pettingzoo版本

QingYuanZi1024 commented 8 months ago

1.23.1

PaParaZz1 commented 8 months ago

也许你可以降版本到 1.22.3 试一下,我们之前的实验最高用到的是这个版本