PaddlePaddle / PARL

A high-performance distributed training framework for Reinforcement Learning
https://parl.readthedocs.io/
Apache License 2.0
3.22k stars 817 forks source link

parl.remote.exceptions.RemoteError #1013

Closed SPYCP closed 1 year ago

SPYCP commented 1 year ago

你好,在使用parl进行并行训练时,已进行文件分发,但仍然发生错误,不使用parl并行训练是没问题的。 parl.connect("localhost:6006",distributed_files=['./Mecanum/envs/data/plane/plane10.urdf']) 错误如下: Exception in thread Thread-2: Traceback (most recent call last): File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/threading.py", line 926, in _bootstrap_inner self.run() File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/threading.py", line 870, in run self._target(*self._args, self._kwargs) File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/parl/remote/proxy_wrapper.py", line 64, in init self._xparl_remote_wrapper_obj = remote_wrapper(*args, *kwargs) File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/parl/remote/remote_wrapper.py", line 119, in init raise RemoteError('init', traceback_str) parl.remote.exceptions.RemoteError: [PARL remote error when calling function __init__]: Cannot load URDF file. traceback: Traceback (most recent call last): File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/parl/remote/job.py", line 300, in wait_for_connection obj = cls(args, kwargs) File "/tmp/tmpn0b0y90c/xparl_demo.py", line 35, in train env = gym.make(env_name) File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/gym/envs/registration.py", line 183, in make return registry.make(id, kwargs) File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/gym/envs/registration.py", line 125, in make env = spec.make(kwargs) File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/gym/envs/registration.py", line 89, in make env = cls(**_kwargs) File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/Mecanum/envs/builder.py", line 50, in init self._setup_simulation() # 设置仿真环境 File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/Mecanum/envs/builder.py", line 132, in _setup_simulation self.world = self.get_world(world['name'], factor) # 初始化世界 File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/Mecanum/envs/builder.py", line 237, in get_world return world(self.bc, global_scaling=factor) File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/Mecanum/envs/worlds.py", line 80, in init super().init(bc, global_scaling, env_dim) File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/Mecanum/envs/worlds.py", line 34, in init env_dim=env_dim File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/Mecanum/envs/worlds.py", line 14, in init self.plane_id = i = self.bc.loadURDF(file_name_path) pybullet.error: Cannot load URDF file.

TomorrowIsAnOtherDay commented 1 year ago

文件分发的接口调用看着是正确的。 感觉是你调用的路径填写有问题,你这个file_name_path填写的是什么? self.plane_id = i = self.bc.loadURDF(file_name_path)