-
Notifications
You must be signed in to change notification settings - Fork 33
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
TaskEnvironment #49
Merged
TomGeorge1234
merged 67 commits into
RatInABox-Lab:dev
from
SynapticSage:task_environments
May 30, 2023
Merged
TaskEnvironment #49
TomGeorge1234
merged 67 commits into
RatInABox-Lab:dev
from
SynapticSage:task_environments
May 30, 2023
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
… some function structure.
…rminate the episode
…ode terminates/refreshes.
…ce yet, no reward func
…ction_space gym.Dict for the environment.
…ion)`. added `reward_space`.
…for object types. Small fixes.
… by default have certain things like agents and environments that they can gym.render(). SpatialGoal env merely adds an ability at the end of that pipeline to render spatial goal.
…ions now for distance. option added to teleport agent to new location at end of each episode.
…ize curve. Size and color however change dynamically in plot_trajectory, so blitting will not faithfully reproduce with only a set_offset() call. Added _agent_style() static method that temporarily keeps that styling similar (dynamically recomputing color,size). Meaning some changes there will not fully propagate here until Agent has its own render() method.
…itialize causes regression when the second agent appears. I may have to purely mimic the style and not initialize with it for now.
…naling logic. Solved a bug where rewards need to copy the default object instead of reference it.
…de counter or write new episode data
…goal which allow calling set() on a collection of goals. goalcache returns full set of unique goals with get_goals() or agent-specific goals qwith get_agent_goals()
…oo's official test suite, too. made some changes in order to pass the test -- pettingzoo env required a list of active, non-terminated agents env.agents:list[str]
… field is now TaskEnvironments.Ags. Also simplified the goal_cache/taskenvironment relation --- reduced cognitive load for a programmer to learn, plus a little cleaner. helpful changes to tutorials. test_taskenvironment refactors for breaking changes from dev.
…put of reset() to match new API and set setup.cfg requirement
excellent work. very excited to give this a go! feel free to keep PR as/when you change or improve things thanks again for the excellent work here and for making it public, I think this will benefit a lot of users. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This PR introduces a
TaskEnvironment
that inheritsratinabox.Environment
andpettingzoo.env
environments. The main goal is to provide a streamlined interface for encoding and executing tasks and to improve the integration of RIB with reinforcement learning tools compatible with Gym APIs, like Stable Baselines3 and Rllib.