clvrai / furniture

IKEA Furniture Assembly Environment for Long-Horizon Complex Manipulation Tasks
https://clvrai.com/furniture
MIT License
496 stars 56 forks source link

segmentation fault when evalute using the Aug,2020 branch #28

Closed ChenyangRan closed 3 years ago

ChenyangRan commented 3 years ago

Hi, I have test your code aug2020 on my computer. It works well when training, while I cannot evalute and get the segmentation fault error. Could you please help me ? It happends because I set the --unity false? 1603335352(1)

edwhu commented 3 years ago

Can you try running with the unity rendering enabled and see what happens? It should work for both. Are you running multiple workers? SAC should only need 1 worker.

ChenyangRan commented 3 years ago

Can you try running with the unity rendering enabled and see what happens? It should work for both. Are you running multiple workers? SAC should only need 1 worker.

Hi, it works well with unity. But it cannot work without unity, now it will stay on the page and don't go on.

furniture-sawyer-v0.sac.sac_table_dockstra_0279.123:   0%|          | 1001/1000000 [01:03<78:50:17,  3.52it/s][2020-10-22 15:47:41,171] Evaluate at 1
[2020-10-22 15:47:41,172] Run 1 evaluations at step=1001
[2020-10-22 15:47:41,173] Evalute run 1

I don't run multiple workers and just have one sac agent.

edwhu commented 3 years ago

I ran on my Mac OS X computer with clean install on Aug2020 branch. Evaluation seems to be fine. Screen Shot 2020-10-22 at 10 42 13 AM

Here is the command I used. python -m run --algo sac --run_prefix sac_table_dockstra_0279 --env furniture-sawyer-v0 --max_episode_steps 100 --furniture_name table_dockstra_0279 --unity False

It seems like there might be a problem with the rendering or video encoding for your platform. Can you double check that you can render MuJoCo scenes on your computer? I would debug by putting an ipdb breakpoint in the evaluation code to see where it fails. See the _evaluate method to debug. https://github.com/youngwoon/robot-learning/blob/1d594746aa06e266198c822eb82e81463adc4068/trainer.py#L301

ChenyangRan commented 3 years ago

I ran on my Mac OS X computer with clean install on Aug2020 branch. Evaluation seems to be fine. Screen Shot 2020-10-22 at 10 42 13 AM

Here is the command I used. python -m run --algo sac --run_prefix sac_table_dockstra_0279 --env furniture-sawyer-v0 --max_episode_steps 100 --furniture_name table_dockstra_0279 --unity False

It seems like there might be a problem with the rendering or video encoding for your platform. Can you double check that you can render MuJoCo scenes on your computer? I would debug by putting an ipdb breakpoint in the evaluation code to see where it fails. See the _evaluate method to debug. https://github.com/youngwoon/robot-learning/blob/1d594746aa06e266198c822eb82e81463adc4068/trainer.py#L301

Thanks for your replay. I have checked my render MuJoCo scenes, which seems properly. I tested your code but it still failed. However, it can work with --save_video False and trains correctly. Maybe the video record has some problems with my platform or code. My platform is Ubuntu16.04, and the code in method is from this link https://github.com/youngwoon/robot-learning/tree/1d594746aa06e266198c822eb82e81463adc4068. Is the code in method not the latest? Thanks for your time.

ChenyangRan commented 3 years ago

By the way, could you please tell me where I can set the parameters such as the episodes.

edwhu commented 3 years ago

You can try updating the method folder to the latest commit on master since it is a git submodule. But I just tried the old and latest versions of method and they seem to work fine. You can look into moviepy then, since we have no problem rendering videos with Moviepy on our ubuntu 16.04 servers. Perhaps try reinstalling moviepy?

You can set episode length with --max_episode_steps. Check the config folder in furniture to find environment configurations, and check the config folder in method to find RL algo configurations.

edwhu commented 3 years ago

There seems to be some issues with moviepy. You can investigate from here. https://www.google.com/search?q=moviepy+segmentation+fault&oq=moviepy+segmentation+fault&aqs=chrome..69i57j33i160.3258j0j9&sourceid=chrome&ie=UTF-8

ChenyangRan commented 3 years ago

There seems to be some issues with moviepy. You can investigate from here. https://www.google.com/search?q=moviepy+segmentation+fault&oq=moviepy+segmentation+fault&aqs=chrome..69i57j33i160.3258j0j9&sourceid=chrome&ie=UTF-8

Ok, I will try it and tell your my result as soon as possible.

ChenyangRan commented 3 years ago

There seems to be some issues with moviepy. You can investigate from here. https://www.google.com/search?q=moviepy+segmentation+fault&oq=moviepy+segmentation+fault&aqs=chrome..69i57j33i160.3258j0j9&sourceid=chrome&ie=UTF-8

Hi, I have serached but it still does not work. But it dones not matter with training. So I decide to train without recording videos. Thanks for your replay!