All Projects → ethanabrooks → mujoco

ethanabrooks / mujoco

Licence: other
Python wrapper for MuJoCo physics simulation.

Programming Languages

python
139335 projects - #7 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to mujoco

Dm control
DeepMind's software stack for physics-based simulation and Reinforcement Learning environments, using MuJoCo.
Stars: ✭ 2,592 (+21500%)
Mutual labels:  physics-simulation, mujoco
proto
Proto-RL: Reinforcement Learning with Prototypical Representations
Stars: ✭ 67 (+458.33%)
Mutual labels:  mujoco
RaiSimUnity
A visualizer for RaiSim based on Unity
Stars: ✭ 31 (+158.33%)
Mutual labels:  physics-simulation
chess.com
Python wrapper for Chess.com Published-Data API
Stars: ✭ 34 (+183.33%)
Mutual labels:  python-wrapper
ipc-toolkit
A set of reusable functions to integrate IPC into an existing simulation.
Stars: ✭ 84 (+600%)
Mutual labels:  physics-simulation
bpp
The Bullet Physics Playground – Bullet Real-Time Physics Simulation.
Stars: ✭ 31 (+158.33%)
Mutual labels:  physics-simulation
wolfssl-py
Python wrapper for wolfSSL embedded SSL/TLS library.
Stars: ✭ 30 (+150%)
Mutual labels:  python-wrapper
Incoherent-Light-Simulation
Simulation of the propagation of incoherent light, aiming to illustrate the concept of spatial coherence.
Stars: ✭ 98 (+716.67%)
Mutual labels:  physics-simulation
Robotics-Object-Pose-Estimation
A complete end-to-end demonstration in which we collect training data in Unity and use that data to train a deep neural network to predict the pose of a cube. This model is then deployed in a simulated robotic pick-and-place task.
Stars: ✭ 153 (+1175%)
Mutual labels:  physics-simulation
d3-force-surface
A multi-surface elastic collision force type for the d3-force simulation engine
Stars: ✭ 19 (+58.33%)
Mutual labels:  physics-simulation
SpinMC.jl
Classical Monte Carlo simulations for lattice spin systems
Stars: ✭ 18 (+50%)
Mutual labels:  physics-simulation
Torque
2d 纯计算高性能刚体物理引擎
Stars: ✭ 62 (+416.67%)
Mutual labels:  physics-simulation
FrisPy
Frisbee flight simulator written in Python.
Stars: ✭ 23 (+91.67%)
Mutual labels:  physics-simulation
cdk pywrapper
A Python wrapper for the Chemistry Development Kit (CDK)
Stars: ✭ 25 (+108.33%)
Mutual labels:  python-wrapper
featool-multiphysics
FEATool - "Physics Simulation Made Easy" (Fully Integrated FEA, FEniCS, OpenFOAM, SU2 Solver GUI & Multi-Physics Simulation Platform)
Stars: ✭ 190 (+1483.33%)
Mutual labels:  physics-simulation
Libbulletjme
A JNI interface to Bullet Physics and V-HACD
Stars: ✭ 55 (+358.33%)
Mutual labels:  physics-simulation
mujoco
Multi-Joint dynamics with Contact. A general purpose physics simulator.
Stars: ✭ 4,685 (+38941.67%)
Mutual labels:  mujoco
apic2d
Affine Particle-in-Cell Water Simulation in 2D
Stars: ✭ 79 (+558.33%)
Mutual labels:  physics-simulation
Deep-Reinforcement-Learning-CS285-Pytorch
Solutions of assignments of Deep Reinforcement Learning course presented by the University of California, Berkeley (CS285) in Pytorch framework
Stars: ✭ 104 (+766.67%)
Mutual labels:  mujoco
kin-poly
Official implementation of NeurIPS 2021 paper: "Dynamics-Regulated Kinematic Policy for Egocentric Pose Estimation". This repo contains a copy of the code for "Universal Humanoid Controller" and "Kinematic Policy".
Stars: ✭ 32 (+166.67%)
Mutual labels:  physics-simulation

MuJoCo for Python!

This is a simple python wrapper around the MuJoCo physics simulation. I wrote it when I couldn't fix the GLEW initialization error with mujoco-py. Please note: this library is a partial replacement (not a supplement) to mujoco-py. It is does not have all of the features of mujoco-py but it is much simpler and easier to understand. If there are additional capabilities you want added, please feel free to post an issue.

Installation

OS X

pip install mujoco

Linux

Building pypi wheels for linux packages that use C extensions (like this one) is very difficult (nay impossible?). Please install from source:

cd /path/to/cloned/directory
make
pip install -e .

Usage

Examples are located in the examples/ directory.

EGL

EGL is a graphics library for linux GPUs which speeds up offscreen rendering. First, you need to install libegl1-mesa and check that /usr/include/EGL/egl.h exists. Second, you must define the environment variable EGL=1. Otherwise, the code defaults to GLFW. Note that when using EGL, you cannot render to the screen (you can still render offscreen).

Headless Rendering

GLFW does not currently support headless rendering (usually this means rendering on a remote server without an attached display). Instead you must use EGL (if you are on an NVIDIA GPU) or OSMesa otherwise. To ensure that the proper libraries are built and imported, set headless: True in your config.yml.

Design

One of the main design decisions behind this implementation was to use the exact same libraries that Emo's original MuJoCo code uses in the provided Makefile. That way if my version doesn't work, you can bet that Emo's code doesn't work either. I think the reason why mujoco-py stopped working is that it tried to get fancy with the libraries and dynamically switch between EGL- and GLFW-friendly graphics libraries.

Documentation

Sadly, I haven't been able to load my docs to readthedocs.org yet, because of difficulties over importing the original MuJoCo headers on their servers (suggestions welcome). However, if you wish to build the docs yourself, the following commands should do it for you:

cd /path/to/cloned/directory
make
cd docs/
make html
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].