如何解决 rllib

问题描述

我正在尝试在环境中从此框架 rllib 运行基线 PPO。对于这个环境,我们用 Gym 包装器包装了一个 Unity 环境。

venv 'multiagent' 是由 github 存储库提供的,它需要能够模拟。我认为它以某种方式产生了一些问题。

代码展示了如何在此环境中运行 PPO:

from ray import tune
from ray.rllib.agents.ppo import PPOTrainer
import environment

env = environment.load_env(name="static_worm",no_graphics=True)
tune.run(PPOTrainer,config={"env": env}) 

我收到以下错误

Traceback (most recent call last):
  File "rllib_ppo.py",line 6,in <module>
    tune.run(PPOTrainer,config={"env": env})
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\site-packages\ray\tune\tune.py",line 520,in run
    runner.step()
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\site-packages\ray\tune\trial_runner.py",line 497,in step
    next_trial = self._get_next_trial()  # blocking
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\site-packages\ray\tune\trial_runner.py",line 633,in _get_next_trial
    self._update_trial_queue(blocking=wait_for_trial)
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\site-packages\ray\tune\trial_runner.py",line 1090,in _update_trial_queue
    trial = self._search_alg.next_trial()
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\site-packages\ray\tune\suggest\basic_variant.py",line 307,in next_trial
    trial = next(self._trial_iter)
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\site-packages\ray\tune\suggest\basic_variant.py",line 143,in __next__
    lazy_eval=self.lazy_eval)
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\site-packages\ray\tune\suggest\basic_variant.py",line 36,in __init__
    self.iterable = list(iterable)
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\site-packages\ray\tune\suggest\variant_generator.py",line 47,in generate_variants
    for resolved_vars,spec in _generate_variants(unresolved_spec):
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\site-packages\ray\tune\suggest\variant_generator.py",line 178,in _generate_variants
    spec = copy.deepcopy(spec)
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\copy.py",line 150,in deepcopy
    y = copier(x,memo)
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\copy.py",line 240,in _deepcopy_dict
    y[deepcopy(key,memo)] = deepcopy(value,line 180,in deepcopy
    y = _reconstruct(x,memo,*rv)
  File "C:\Users\cvaes\anaconda3\envs\ml-agents\lib\copy.py",line 280,in _reconstruct
    state = deepcopy(state,in _reconstru
ct
    state = deepcopy(state,line 169,in deepcopy
    rv = reductor(4)
TypeError: can't pickle _thread.lock objects

(ml-agents) C:\Users\cvaes\PycharmProjects\autonomous-systems>

我知道它有一些事情要做,这不能被多处理/序列化。但是我该如何解决这个问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)