Maze: Applied Reinforcement Learning with Python¶
Getting Started¶
For installing Maze just follow the installation instructions.
To see Maze in action check out a first example and our Getting Started Notebooks.
Try your own Gym env or visit our Maze step-by-step tutorial.
Clone this project template repo to start your own Maze project.
You can also find an extensive overview of Maze in the table of contents as well as the API documentation.
Spotlights¶
Below we list of some of Maze’s key features. The list is far from exhaustive but none the less a nice starting point to dive into the framework.
Configure your applications and experiments with the Hydra config system
.
Design and visualize your policy and value networks with the Perception Module.
Pre-process and normalize your observations without writing boiler plate code.
Stick to your favourite tools and trainers by combining Maze with other RL frameworks.
Although Maze supports more complex environment structures you can of course still integrate existing Gym environments
.
Warning
This is a preliminary, non-stable release of Maze. It is not yet complete and not all of our interfaces have settled yet. Hence, there might be some breaking changes on our way towards the first stable release.
This project is powered by |
Any questions or feedback, just get in touch
Documentation Overview¶
Below you find an overview of the general Maze framework documentation, which is beyond the API documentation. The listed pages motivate and explain the underlying concepts but most importantly also provide code snippets and minimum working examples to quickly get you started.
Workflow
Policy and Value Networks
Training
Concepts and Structure
- Policies, Critics and Agents
- Maze Environment Hierarchy
- Maze Event System
- Configuration with Hydra
- Environment Rendering
- Structured Environments
Environment Customization
- Customizing Core and Maze Envs
- Customizing / Shaping Rewards
- Environment Wrappers
- Observation Pre-Processing
- Observation Normalization
- List of Features
- Example 1: Normalization with Estimated Statistics
- Example 2: Normalization with Manual Statistics
- Example 3: Custom Normalization and Excluding Observations
- Example 4: Using Custom Normalization Strategies
- Example 5: Plain Python Configuration
- Built-in Normalization Strategies
- The Bigger Picture
- Where to Go Next
Best Practices and Tutorials
Logging and Monitoring
Scaling the Training Process