modular_rl icon indicating copy to clipboard operation
modular_rl copied to clipboard

VideoRecorder encoder exited with status -11

Open ghost opened this issue 7 years ago • 0 comments

Hi John,

I am working on a LfD paper. I need to record a trajectory and I wanted to use your pg algorithm in modular_rl package, available in openai gym with the environment 'Humanoid-v1'.

I installed all they libraries required, including keras 1.0.1 with theano backend, but when I ran:

python run_pg.py --gamma=0.995 --lam=0.97 --agent=modular_rl.agentzoo.TrpoAgent --max_kl=0.01 --cg_damping=0.1 --activation=tanh --n_iter=250 --seed=0 --timesteps_per_batch=50000 --env=Humanoid-v1

it returns:

Using cuDNN version 5110 on context None Mapped name None to device cuda: GeForce GTX 780 Ti (0000:02:00.0) Using Theano backend. [2017-05-22 11:00:06,066] Making new env: Humanoid-v1 policy gradient config {'lam': 0.97, 'cg_damping': 0.1, 'env': 'Humanoid-v1', 'plot': False, 'activation': 'tanh', 'agent': 'modular_rl.agentzoo.TrpoAgent', 'outfile': '/tmp/a.h5', 'max_kl': 0.01, 'timestep_limit': 1000, 'video': 1, 'snapshot_every': 0, 'parallel': 0, 'n_iter': 250, 'load_snapshot': '', 'filter': 1, 'use_hdf': 0, 'seed': 0, 'hid_sizes': [64, 64], 'timesteps_per_batch': 50000, 'gamma': 0.995, 'metadata': ''} [rawvideo @ 0x993f40] Estimating duration from bitrate, this may be inaccurate Input #0, rawvideo, from 'pipe:': Duration: N/A, start: 0.000000, bitrate: N/A Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 500x500, 67 tbr, 67 tbn, 67 tbc Traceback (most recent call last): File "run_pg.py", line 60, in run_policy_gradient_algorithm(env, agent, callback=callback, usercfg = cfg) File "/home/pipeline3d/modular_rl-master/modular_rl/core.py", line 88, in run_policy_gradient_algorithm paths = get_paths(env, agent, cfg, seed_iter) File "/home/pipeline3d/modular_rl-master/modular_rl/core.py", line 106, in get_paths paths = do_rollouts_serial(env, agent, cfg["timestep_limit"], cfg["timesteps_per_batch"], seed_iter) File "/home/pipeline3d/modular_rl-master/modular_rl/core.py", line 142, in do_rollouts_serial path = rollout(env, agent, timestep_limit) File "/home/pipeline3d/modular_rl-master/modular_rl/core.py", line 125, in rollout ob,rew,done,envinfo = env.step(action) File "/home/pipeline3d/gym/gym/core.py", line 99, in step return self._step(action) File "/home/pipeline3d/gym/gym/wrappers/monitoring.py", line 34, in _step done = self._after_step(observation, reward, done, info) File "/home/pipeline3d/gym/gym/wrappers/monitoring.py", line 184, in _after_step self.video_recorder.capture_frame() File "/home/pipeline3d/gym/gym/monitoring/video_recorder.py", line 121, in capture_frame self._encode_image_frame(frame) File "/home/pipeline3d/gym/gym/monitoring/video_recorder.py", line 171, in _encode_image_frame self.encoder.capture_frame(frame) File "/home/pipeline3d/gym/gym/monitoring/video_recorder.py", line 306, in capture_frame self.proc.stdin.write(frame.tobytes()) IOError: [Errno 32] Broken pipe [2017-05-22 11:01:09,642] VideoRecorder encoder exited with status -11

It seems a problem with the VideoRecorder of openai gym, but I don't even need to record the video. How can i fix this issue? I need only to record the joint angles, that should be in this particular environment the first 22 elements of the observation vector and the actions that should be the joint torques.

Thank you

ghost avatar May 23 '17 09:05 ghost