-
Notifications
You must be signed in to change notification settings - Fork 58
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unsuccessful execution of trajectories by MoveIt #115
Comments
Hello @naa1824, Thank you for opening this issue! Could you please verify that the robot moves properly inside the simulation (smooth-ish motion in the Cartesian space)? This error is expected if the RL policy outputs an action into an invalid configuration that the robot cannot execute. The action simply won't be performed. An alternative would be to use MoveIt Servo (as indicated in the second log), which uses Differential IK that will always result in some motion (although the motion might not match the desired action). FYI, my efforts are now focused on the Space Robotics Bench that includes many more environments, tasks and workflows (the framework is based on Isaac Sim instead of Gazebo). Therefore, I am not planning to update this repository anymore. |
Hi @AndrejOrsula. Thanks so much for your quick response. To be on the same page: I used the latest docker image "2.0" I ran the ex_training.bash: grasp-gazebo-v0, panda, sac. During the training, I could not see any visualization. rivz and gazebo didn't work. I stopped the training after reaching 20k time step. Then I ran ex_evaluation.bash, and I made sure that it has the same configurations as the training During evaluation I see the robot moving toward the object, then it git stuck and it resets the environment:
I know you are busy with other projects, but really this Repo is really master piece I want to use it to learn how to train the panda to pick and place single ball using RL in simulation. so I want to use this repo as my starting point in this journey do you know which part of this repo that work 100% using the panda robot? |
I have another question which I posted in the discussion part related to Rivz and RL: What I understand is, in manipulation applications, Moveit can create the path planning and Motion planning to generate the motion. How does this Repo merging both together? Can you teach me what is the role of each one in this project? |
In that case, I would say that everything works as expected. The only concern with those errors would be if the robot did not move at all.
Yes, it happens when MoveIt cannot find a plan. But that's fine because the agent does not always provide feasible actions.
It might require longer training that 20k time steps. Sadly, it is a slow process and this project is not parallelised (only a single environment worker).
That sounds great! As mentioned above, this repository is sadly not very performant when it comes to the speed of convergence due to simulating with a single worker. Therefore, don't be afraid to try alternatives if you find that it limits your work.
I answered in the Discussion#116. |
Thank you so much, Wish you all the best with your projects. |
Hello @AndrejOrsula, I have trained the model for 6 days, it finished 1 million time steps. the success rate is zero, but I can see some grasping reward at some stages. but going to the evaluation, it act as the last time, no improvement. the robot start moving closer to the object then it git stuck and it starts going up and down. through my observation, I think the gripper (last motor) is trying to rotate 360 degrees which exceed the limit of the motor. Is there something that I can do? what files of the project that I have to modify to get better output? Could you give more details about this solution that you suggested earlier?
How can I do it? |
Another quick question, which part of the code that control the order of the grasping when there are multiple objects? |
What algorithm are you using for training the agent? It looks like SAC from the logs, but I'm not certain. It is surprising, but you could try a different algorithm from SB3 (e.g. TQC) to see if anything changes. drl_grasping/examples/ex_train.bash Lines 41 to 44 in b228354
There is also Dreamer integration, but I have not tested this one much.
You can modify the config here to enable MoveIt Servo for a specific task (but I am not sure if it will lead to any improvements): drl_grasping/drl_grasping/envs/__init__.py Line 330 in b228354
None, the agent gets reward for grasping ANY object. If you want to grasp a specific object, you would need to embed this information into observations and modify the reward computation accordingly. |
Thank you so much |
Thank you for this amazing repository!
I tried running ex_train.bash file using reach-v0 and grasp-v0 environments, and I am getting this error repeating in the log terminal:
The error keeps repeating every 4-5 lines,
Is that normal?
The text was updated successfully, but these errors were encountered: