mujoco-worldgen  by openai

Worldgen tool for randomized MuJoCo environments

Created 6 years ago
558 stars

Top 57.5% on SourcePulse

GitHubView on GitHub
Project Summary

This repository provides a framework for procedurally generating complex, randomized MuJoCo environments. It is targeted at researchers and developers working with reinforcement learning and physics simulations who need to create diverse training scenarios. The benefit is the ability to automatically generate a wide variety of environments, reducing manual effort and increasing the diversity of training data.

How It Works

The system uses a WorldBuilder to construct environments by appending various objects, including primitive geometries (boxes, spheres, cylinders) and objects loaded from XML files. Users define global world parameters and then programmatically place objects within defined "placements" (rectangular prisms). Object sizes can be specified precisely or sampled from ranges, and sites can be marked on objects for precise positioning. The core advantage lies in its programmatic and randomized approach to environment construction, allowing for highly configurable and diverse scene generation.

Quick Start & Requirements

  • Install MuJoCo (tested with 1.50) following mujoco-py instructions.
  • Install dependencies: pip install -r requirements.txt
  • Install package: pip install -e .
  • Tested on Mac OS X and Ubuntu 16.04 with Python 3.6.
  • Example usage and environment testing via ./bin/examine.py.

Highlighted Details

  • Procedural generation of MuJoCo environments with randomized object placement and properties.
  • Supports loading objects from XML and defining custom primitive geometries with size randomization.
  • Allows marking sites on objects for precise relative positioning.
  • Provides a base Env class for creating custom RL environments with _get_sim, _get_obs, and _get_reward methods.

Maintenance & Community

  • Status: Archived (code provided as-is, no updates expected).
  • Based on an internal OpenAI version of Worldgen by Alex Ray.

Licensing & Compatibility

  • License: Not explicitly stated in the README.
  • Compatibility: Requires MuJoCo, tested with Python 3.6.

Limitations & Caveats

The project is archived and no longer maintained, meaning no future updates or bug fixes are expected. It is also tied to an older version of MuJoCo (1.50) and Python 3.6, which may pose compatibility challenges with modern systems.

Health Check
Last Commit

1 year ago

Responsiveness

1 week

Pull Requests (30d)
0
Issues (30d)
0
Star History
3 stars in the last 30 days

Explore Similar Projects

Starred by Alex Yu Alex Yu(Research Scientist at OpenAI; Former Cofounder of Luma AI), John Yang John Yang(Coauthor of SWE-bench, SWE-agent), and
6 more.

cleanrl by vwxyzjn

0.5%
8k
RL algorithms implementation with research-friendly features
Created 6 years ago
Updated 2 months ago
Feedback? Help us improve.