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

[Feature Request] Hybrid PPO #202

Open
2 tasks done
AlexPasqua opened this issue Aug 7, 2023 · 3 comments
Open
2 tasks done

[Feature Request] Hybrid PPO #202

AlexPasqua opened this issue Aug 7, 2023 · 3 comments
Labels
enhancement New feature or request

Comments

@AlexPasqua
Copy link
Contributor

AlexPasqua commented Aug 7, 2023

🚀 Feature

Hello,
in accordance with DLR-RM/stable-baselines3#1624, @SimRey and I would like to implement Hybrid PPO in this library.
This is the paper that introduced it.

Motivation

@SimRey had to implement it for his thesis, so we thought I'd be nice to have in this library, especially as it's one of the only (or most popular) options when both discrete and continuous actions as necessary. A number of problems in chemical engineering are starting to explore reinforcement learning as a solution approach, and in many cases both discrete and continuous actions are needed.

Pitch

Implement a new algorithm (subclass of PPO or MaskablePPO) with corresponding network architecture that outputs both discrete and continuous actions.

Alternatives

The Hybrid PPO algorithm needs to perform 2 backward steps: one on the discrete actions (with frozen weights on the continuous actions part of the net), and one on the continuous actions (with frozen weights on the discrete actions part of the net).
To me it looks like the only option is to subclass PPO or MaskablePPO and override some methods.

Also the network architecture needs to have 2 outputs, like actor-critic but with different meaning of the outputs (also, the "critic" part could have a dimension > 1).

Additional context

No response

Checklist

  • I have checked that there is no similar issue in the repo
  • If I'm requesting a new feature, I have proposed alternatives
@AlexPasqua AlexPasqua added the enhancement New feature or request label Aug 7, 2023
@sosoeeee
Copy link

Hello, has there been any progress on the H-PPO implementation?

@AlexPasqua
Copy link
Contributor Author

Hello, has there been any progress on the H-PPO implementation?

Hi, no progress, this proposal hasn't received the approval from the maintainers yet.

@araffin
Copy link
Member

araffin commented Oct 15, 2024

hello,
Sorry for the delay, you can go ahead with the PR =) (again, please the checklist carefully)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants