rail-berkeley / rlkit

Collection of reinforcement learning algorithms
MIT License
2.43k stars 547 forks source link

TypeError: can't pickle _thread.lock objects #125

Closed refalguera closed 3 years ago

refalguera commented 3 years ago

I created a Gym environment for a humanoid robot using PyRep. I want to train it using SAC. For that, I'm using the run_sac.py available in this repository, but I get the following error:

Traceback (most recent call last): File "PyRep/examples/run_SAC.py", line 113, in experiment(variant, env_init) File "PyRep/examples/run_SAC.py", line 81, in experiment algorithm.train() File "/home/renata/PyRep/rlkit/rlkit/core/rl_algorithm.py", line 46, in train self._train() File "/home/renata/PyRep/rlkit/rlkit/core/batch_rl_algorithm.py", line 84, in _train self._end_epoch(epoch) File "/home/renata/PyRep/rlkit/rlkit/core/rl_algorithm.py", line 56, in _end_epoch logger.save_itr_params(epoch, snapshot) File "/home/renata/PyRep/rlkit/rlkit/core/logging.py", line 317, in save_itr_params torch.save(params, file_name) File "/home/renata/anaconda3/envs/rlkit/lib/python3.6/site-packages/torch/serialization.py", line 372, in save _save(obj, opened_zipfile, pickle_module, pickle_protocol) File "/home/renata/anaconda3/envs/rlkit/lib/python3.6/site-packages/torch/serialization.py", line 476, in _save pickler.dump(obj) TypeError: can't pickle _thread.lock objects

Has anyone had this same problem?