awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
google-deepmind avatar

google-deepmind/lab

0
View on GitHub↗

Lab

DeepMind Lab is a customisable three-dimensional simulation platform for training and evaluating learning agents. It is built on a modified fork of the Quake III Arena engine, adapted to render first-person worlds for agents rather than human players. The engine is written in C++ and built with Bazel, and it is exposed to Python so environments can be created, stepped, reset and observed from scripts, including through a standard reinforcement learning interface.

The platform ships with a suite of navigation and puzzle-solving tasks, along with ready-made levels that test specific mental abilities and implement classic cognitive psychology paradigms such as visual search. Levels, rewards, pickups and custom actions are defined in Lua scripts. Researchers can write their own levels, add custom actions and observations, override agent controls, shape reward signals, and query or modify environment state while a level is running. Maps can be generated at runtime from plain text layouts, with a level cache that reuses previously compiled maps.

Further capabilities cover frame-stepped interaction with configurable resolution, frame rate and seeding, and a choice of software or hardware rendering. Levels can be played by hand with keyboard and mouse, and demos can be recorded and replayed. The repository also includes bundled image datasets that levels can present to agents, and a random agent example as a starting point. Builds use pinned, checksum-verified dependencies and can be packaged as an installable Python module.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Reinforcement Learning Environments - Exposes 3D simulated levels through a uniform reinforcement learning API so agents and training code control every level the same way.
  • Reinforcement Learning Simulators - Provides a customisable 3D simulation platform where researchers train and evaluate learning agents on navigation, puzzle and cognitive tasks.
  • Navigation and Puzzle Tasks - Supplies a suite of challenging 3D navigation and puzzle-solving tasks as a testbed for deep reinforcement learning research.
  • Reinforcement Learning Training - Supplies challenging 3D navigation and puzzle tasks as a testbed for training and evaluating deep reinforcement learning agents.
  • AngelScript and Lua Game Scripting - Extends Lua level scripting with tensor and image libraries, event creation, entity retrieval and post-load texture updates.
  • Environment Scripting Interfaces - Hooks level scripts into game events through callback functions the environment calls periodically, with defaults when a callback is missing.
  • Lua Scripting Frameworks - Defines level behavior in Lua scripts whose callbacks the engine invokes at game events, with defaults when a callback is missing.
  • Level Generation Scripts - Lets researchers define their own levels as Lua scripts, instantiated through the same scripting and Python interfaces as shipped levels.
  • Agent Action Spaces - Lets level scripts declare their own discrete action sets through callbacks so agents can act beyond built-in controls.
  • Standardized Training Interfaces - Connects agents to simulated environments through a general reinforcement learning adapter so standard training code works without custom glue.
  • Cognitive Ability Test Levels - Ships ready-made levels that each test a specific cognitive ability of an agent, startable from scripts or Python.
  • Environment Observation Retrieval - Lists every supported observation type, including level-specific ones, and returns requested observations as arrays for the agent at each step.
  • Environment Stepping with Actions - Steps the environment forward a chosen number of frames, applying the supplied action array on every frame per the action specification.
  • Episode Reset and Seeding - Restarts the environment for a new episode, optionally selecting an episode and seeding the random generator for reproducible runs.
  • Frame-Stepped Environment Loops - Advances the simulation a chosen number of frames per call, applying actions each frame and returning observation arrays to the agent.
  • Procedural Generators - Compiles playable levels at runtime from plain text layouts and reuses previously compiled maps through a level cache.
  • RL Interface Standards - Exposes the environment through a general reinforcement learning interface and packages it as an installable module for reuse.
  • Python Scripting Environments - Wraps the native simulation engine in a Python module so researchers can create, reset and step environments from Python scripts.
  • Cognitive Paradigms - Provides a platform for implementing classical cognitive psychology paradigms, with sample tasks such as visual search and sequential comparison.
  • First-Person Shooter Engines - Builds on a modified first-person game engine that supplies rendering, physics, entity management, console commands and map loading.
  • Game Environment Setups - Loads a chosen game level and builds an environment object with configurable resolution, frame rate, level directory, seeding and level options.
  • Python and C++ Game Engines - Offers a native C++ engine built with Bazel and pinned dependencies, exposed to Python and installable as a module.
  • Quake III Engine Forks - Builds on a modified Quake III Arena engine adapted to render first-person 3D worlds for agents instead of human players.
  • Text-Based Map Generation - Builds playable levels on the fly from plain text layouts, with themes, skyboxes, appearance variations and bot navigation support.
  • Rendering Backends - Chooses between software and hardware rendering, or a native window, via a build-time graphics setting and a per-environment renderer option.
  • Python Environments - Exposes simulated 3D environments through an installable Python module so researchers can create, reset and step them directly from scripts.
  • Python-C++ Bindings - Wraps the compiled C++ simulation core in a Python module so environments can be created, stepped and reset from scripts.
7,393 stars·1,402 forks·C·1 view

Star history

Star history chart for google-deepmind/labStar history chart for google-deepmind/lab

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does google-deepmind/lab do?

DeepMind Lab is a customisable three-dimensional simulation platform for training and evaluating learning agents. It is built on a modified fork of the Quake III Arena engine, adapted to render first-person worlds for agents rather than human players. The engine is written in C++ and built with Bazel, and it is exposed to Python so environments can be created, stepped, reset and observed from scripts, including through a standard reinforcement learning interface.

What are the main features of google-deepmind/lab?

The main features of google-deepmind/lab are: Reinforcement Learning Environments, Reinforcement Learning Simulators, Navigation and Puzzle Tasks, Reinforcement Learning Training, AngelScript and Lua Game Scripting, Environment Scripting Interfaces, Lua Scripting Frameworks, Level Generation Scripts.

Which projects share features with google-deepmind/lab?

Projects with overlapping indexed features include: stanfordnmbl/osim-rl — Osim-rl is a research environment designed for the development and evaluation of reinforcement learning agents within… openai/gym — Gym is a reinforcement learning environment toolkit and agent simulation framework. It provides a standardized API and… deepmind/lab — Lab is a customizable 3D platform and research testbed designed for training and testing autonomous agents using… keras-rl/keras-rl — keras-rl is a reinforcement learning library that enables the training of neural agents using Keras. It serves as a… google-deepmind/pysc2 — PySC2 is a Python library that exposes StarCraft II as a reinforcement learning environment. Agents receive… ai4finance-foundation/finrl — FinRL is a reinforcement learning framework designed for the development, training, and backtesting of automated…

Projects sharing features with Lab

These projects share indexed features with Lab. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • stanfordnmbl/osim-rlstanfordnmbl avatar

    stanfordnmbl/osim-rl

    944View on GitHub↗

    Osim-rl is a research environment designed for the development and evaluation of reinforcement learning agents within physics-based musculoskeletal simulations. It provides a standardized interface that maps physiological state observations to muscle excitation control signals, enabling the study of human movement and biomechanics through iterative policy optimization. The framework distinguishes itself by integrating high-fidelity musculoskeletal modeling with tools for scientific benchmarking and reproducible experimentation. It allows researchers to define custom reward functions and adjus

    Pythonbiomechanicsdeep-reinforcement-learningkinematics
    View on GitHub↗944
  • openai/gymopenai avatar

    openai/gym

    37,223View on GitHub↗

    Gym is a reinforcement learning environment toolkit and agent simulation framework. It provides a standardized API and a universal communication interface that defines how learning agents interact with simulation environments through actions and observations. The project includes a benchmark environment suite and a diverse library of pre-configured simulation worlds, including physics engines and classic control tasks. It enables the creation of custom simulation environments to train agents in specific operational scenarios while ensuring reproducibility across different learning algorithms.

    Python
    View on GitHub↗37,223
  • deepmind/labdeepmind avatar

    deepmind/lab

    7,365View on GitHub↗

    Lab is a customizable 3D platform and research testbed designed for training and testing autonomous agents using reinforcement learning. It serves as a spatial AI training simulator where agents can be evaluated through navigation and puzzle-solving tasks. The environment allows for the definition of complex layouts and task behaviors through external scripting, enabling the generation of specific challenges for AI research. It supports both automated training via standard API bindings and manual agent control to validate simulation dynamics. The system utilizes a grid-based spatial represen

    C
    View on GitHub↗7,365
  • keras-rl/keras-rlkeras-rl avatar

    keras-rl/keras-rl

    5,548View on GitHub↗

    keras-rl is a reinforcement learning library that enables the training of neural agents using Keras. It serves as a framework for implementing deep reinforcement learning agents that interact with simulated environments to discover optimal behaviors and maximize cumulative rewards. The library provides a system for configuring, training, and managing neural network agents. It handles the interaction loop between agents and environments, allowing models to learn through direct experience and gradient-based optimization. The framework includes capabilities for model weight management, allowing

    Python
    View on GitHub↗5,548
Compare all 30 related projects→