Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Why are these changes needed?
In our recent NeurIPS paper "Selectively Sharing Experiences Improves Multi-Agent Reinforcement Learning" we develop a new multi-agent learning approach based on sharing a small number of experiences between agents. This PR adds a reference implementation of the algorithm to RLlib.
NeurIPS paper link
arxiv paper link
The algorithm is built on top of DQN, adding an experience sharing step between sampling experiences and learning on them. Since code-wise this is a relatively small and clean addition to the existing DQN trainer, we have for now submitted our code as changes to that trainer. We could also create a separate trainer class instead - we can see pros and cons to either, and happy to rework the PR if the RLlib team feels the tradeoffs make a separate class preferable.
Related issue number
Checks
git commit -s
) in this PR.scripts/format.sh
to lint the changes in this PR.method in Tune, I've added it in
doc/source/tune/api/
under thecorresponding
.rst
file.