Skip to content
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

Example of doing Reinforcement Learning in Gazebo #2662

Open
19 tasks
arjo129 opened this issue Nov 1, 2024 · 0 comments
Open
19 tasks

Example of doing Reinforcement Learning in Gazebo #2662

arjo129 opened this issue Nov 1, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request help wanted We accept pull requests!

Comments

@arjo129
Copy link
Contributor

arjo129 commented Nov 1, 2024

Desired behavior

Currently, doing Reinforcement Learning in Gazebo is really hard. It is not impossible (as we already have reset methods), but as RL gains traction in the Robotics Community we are seeing real world use cases where walking models are being developed on other simulators. It would be nice to provide users with a way of doing RL. In particular, perhaps an example which exposes a gym api for one of the major RL libraries (stable baselines, rllib, etc). This work would also necessitate some improvements to the python API and some work on the python packaging side. In particular my proposal is we do the following:

Stretch goals

  • Improve collision APIs. - Often we may want to use collisions as a proxy for whether a task should terminate or not.
  • Improve story of imports by removing package number from names.
  • Set up real world test rig to compare results
  • Extend to multi-agent support
  • More examples including grasping/object manipulation examples.
  • Make it easier to load python ML frameworks with gazebo.
  • Have a ROS Integration story
  • Environment randomization API story
  • Reset individual models or support vectorization.

Some relevant projects

Few Other Design Considerations

The work done on the python bindings actually exposes a really nice API. It is also nice that we have a separation between client and server API.

@arjo129 arjo129 added the enhancement New feature or request label Nov 1, 2024
@arjo129 arjo129 self-assigned this Nov 1, 2024
@arjo129 arjo129 added the help wanted We accept pull requests! label Nov 1, 2024
@azeey azeey moved this from Inbox to To do in Core development Dec 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted We accept pull requests!
Projects
Status: To do
Development

No branches or pull requests

1 participant