-
Notifications
You must be signed in to change notification settings - Fork 5.8k
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
[RLlib] Cleanup examples folder 18: Add example script for offline RL (BC) training on single-agent, while evaluating w/ multi-agent setup. #46251
Conversation
Signed-off-by: sven1977 <[email protected]>
…nup_examples_folder_18_bc_sa_training_then_ma_evaluation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Some comments.
train_batch = train_batch.as_multi_agent() | ||
self._counters[NUM_AGENT_STEPS_SAMPLED] += train_batch.agent_steps() | ||
self._counters[NUM_ENV_STEPS_SAMPLED] += train_batch.env_steps() | ||
# TODO (sven): Use metrics API as soon as we moved to new API stack |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this one not using the MetricsLogger
, yet? I use it in my overhaul of offline RL
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, you should. All good there. :)
But the hybrid API stack still goes through the summarize_episodes
utility inside algorithm.py
, which operates on the old RolloutMetrics
objects returned by RolloutWorkers.
Here, SA=single-agent and MA=multi-agent. | ||
|
||
Note that the BC Algorithm - by default - runs on the hybrid API stack, using RLModules, | ||
but not EnvRunners or ConnectorV2s yet. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably adding here that is specifically doe snot use SingleAgentEpisode/MultiAgentEpisode
?
base_config = ( | ||
BCConfig() | ||
.environment( | ||
observation_space=dummy_env.observation_space, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we give a quick note, why in this case the user needs to provide the spaces?
Signed-off-by: sven1977 <[email protected]>
…nup_examples_folder_18_bc_sa_training_then_ma_evaluation
Signed-off-by: sven1977 <[email protected]>
Signed-off-by: sven1977 <[email protected]>
Signed-off-by: sven1977 <[email protected]>
Signed-off-by: sven1977 <[email protected]>
…nup_examples_folder_18_bc_sa_training_then_ma_evaluation
Signed-off-by: sven1977 <[email protected]>
…nup_examples_folder_18_bc_sa_training_then_ma_evaluation
Cleanup examples folder 18: Add example script for offline RL (BC) training on single-agent, while evaluating w/ multi-agent setup.
Why are these changes needed?
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.