Skip to main content

License Version Python Downloads Try it in Binder Try it in Colab Try in in Deepnote Linux CI MacOS CI Windows CI

Jiminy is a cross-platform open-source simulator for poly-articulated systems. It was built with two ideas in mind:

  • provide a fast yet physically accurate simulator for robotics research.

Jiminy is built around Pinocchio, an open-source fast and efficient kinematics and dynamics library. Jiminy thus uses minimal coordinates and Lagrangian dynamics to simulate an articulated system: this makes Jiminy as close as numerically possible to an analytical solution, without the risk of joint violation.

  • build an efficient and flexible platform for machine learning in robotics.

Beside a strong focus on performance to answer machine learning's need for running computationally demanding distributed simulations, Jiminy offers convenience tools for learning via a dedicated module Gym-Jiminy. It is fully compliant with gym standard API and provides a highly customizable wrapper to interface any robotics system with state-of-the-art learning frameworks.

Key features

General

  • Simulation of multi-body systems using minimal coordinates and Lagrangian dynamics.
  • Comprehensive API for computing dynamic quantities and their derivatives thanks to Pinocchio.
  • C++ core with full python bindings, providing user API parity between both languages.
  • Designed with machine learning in mind, with seamless wrapping of robots as OpenAI Gym environments using one-liners. Jiminy provides both the physical engine and the robot model (including sensors) required for learning.
  • Fully modular learning environment pipeline design, with plug-and-play robotic observers and controllers, but also composable reward components and termination conditions. See example here.
  • Rich simulation log output, easily customizable for recording, introspection and debugging. The simulation log is made available in RAM directly for fast access, and can be exported in binary or HDF5 format.
  • Dedicated integration in Google Colab, Jupyter Lab, Mybinder and VSCode working out-of-the-box - including interactive 3D viewer based on Meshcat. This facilitates working on remote environments.
  • Synchronous and single-threaded offscreen rendering capability, GPU-accelerated without graphical server, based on Panda3d.
  • Easy to install: pip is all that is needed to get you started ! Support Linux, Mac and Windows platforms.

Physics

  • Provide both classical phenomenological force-level spring-damper contact model and constraint solver satisfying the maximum energy dissipation principle.
  • Support contact and collision with the ground from a fixed set of contact points (primitives and meshes yet to come).
  • Simulate multiple articulated systems simultaneously interacting with each other, to support use cases such as multi-agent learning or swarm robotics.
  • Modeling of motor transmission backlash and structural deformation via compliant spherical joints with spring-damper dynamics, which are common phenomena, particularly in bipedal robotics.
  • Simulate both continuous or discrete-time controller, with possibly different controller and sensor update frequencies.

A more complete list of features is available on the wiki.

The documentation is available on Github.io, or locally in docs/html/index.html if built from source.

Gym Jiminy

Gym Jiminy is an interface between Jiminy simulator and reinforcement learning frameworks. It is fully compliant with now standard Open AI Gym API. Additionally, it offers a generic and easily configurable learning environment for learning locomotion tasks, with minimal intervention from the user, who usually only needs to provide the robot's URDF file. Furthermore, Gym Jiminy enables easy modification of many aspects of the simulation to provide richer exploration and ensure robust learning. This ranges from external perturbation forces to sensor noise and bias, including randomization of masses and inertias, ground friction model or even gravity itself. Note that learning can easily be done on any high-level dynamics features, or restricted to mock sensor data for end-to-end learning.

Gym is cross-platform and compatible with most Reinforcement Learning frameworks implementing standard algorithms. For instance, Stable Baselines 3, Tianshou, or Rllib. Stable Baselines 3 and Tianshou use its counterpart Pytorch, and Rllib supports both. A few learning examples relying on those packages are also provided.

Pre-configured environments for some well-known toys models and reference robotics platforms are provided: cartpole, acrobot, pendulum, Ant, ANYmal, and Cassie, and Atlas.

Demo

Getting started

Jiminy and Gym Jiminy support Linux, Mac and Windows, and is compatible with Python3.10+. Pre-compiled binaries are distributed on PyPi. They can be installed using pip>=20.3:

# For installing Jiminy
python -m pip install --prefer-binary jiminy_py[meshcat,plot]

# For installing Gym Jiminy
python -m pip install --prefer-binary gym_jiminy[all]

Detailed installation instructions, including building from source, are available here.

Release files for jiminy-py 1.8.13

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for jiminy-py 1.8.13
File
jiminy_py-1.8.13-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
jiminy_py-1.8.13-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
jiminy_py-1.8.13-cp313-cp313-macosx_11_0_universal2.whl CPython 3.13 CPython 3.13 macOS 11.0+ universal2 (ARM64, x86-64) Details
jiminy_py-1.8.13-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
jiminy_py-1.8.13-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
jiminy_py-1.8.13-cp312-cp312-macosx_11_0_universal2.whl CPython 3.12 CPython 3.12 macOS 11.0+ universal2 (ARM64, x86-64) Details
jiminy_py-1.8.13-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
jiminy_py-1.8.13-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
jiminy_py-1.8.13-cp311-cp311-macosx_11_0_universal2.whl CPython 3.11 CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64) Details
jiminy_py-1.8.13-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
jiminy_py-1.8.13-cp310-cp310-manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64 Details
jiminy_py-1.8.13-cp310-cp310-macosx_11_0_universal2.whl CPython 3.10 CPython 3.10 macOS 11.0+ universal2 (ARM64, x86-64) Details

Total release size: 385.4 MB

Release files / jiminy_py-1.8.13-cp313-cp313-win_amd64.whl

Download URL jiminy_py-1.8.13-cp313-cp313-win_amd64.whl
Size 31.0 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
f2e07eb79951c3aa1737d474ccf27d0206b3b1719b53d9673602a79dd8b3f98b
BLAKE2b-256 checksum
How to use checksums
c37b8665b3ea7f0be9f9717b2d783ebc62b5a4c3cdbfa0329a522fe93aa2916d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release files / jiminy_py-1.8.13-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL jiminy_py-1.8.13-cp313-cp313-manylinux_2_28_x86_64.whl
Size 20.9 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
b15740993605cb119ba43dc37b9079afb84841cbea20bfec06977b9eb706a0fc
BLAKE2b-256 checksum
How to use checksums
a8ea9a43e891ff163b2fe574f70b700ebd85f0157020780910382c09398cb224
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.11

Release files / jiminy_py-1.8.13-cp313-cp313-macosx_11_0_universal2.whl

Download URL jiminy_py-1.8.13-cp313-cp313-macosx_11_0_universal2.whl
Size 44.6 MB
Tags CPython 3.13 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
e7f96dc8c4b1e48ccf243bada386d108c02caa52ada9be2fc505a4676a76ce30
BLAKE2b-256 checksum
How to use checksums
1181a0380e1ebb6a3d8092f9668d85bc141e72b978ff642f75afd2c0651a3409
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release files / jiminy_py-1.8.13-cp312-cp312-win_amd64.whl

Download URL jiminy_py-1.8.13-cp312-cp312-win_amd64.whl
Size 31.0 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
8bb2200979185df1e91045abd5bb5ba134a3feef6c8bb35d9da3f0c49f9830cc
BLAKE2b-256 checksum
How to use checksums
3c98a7e1b031430318c390a98be3f58b740de259a9215fb9c055e9ac9ed48b3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release files / jiminy_py-1.8.13-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL jiminy_py-1.8.13-cp312-cp312-manylinux_2_28_x86_64.whl
Size 20.9 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
a38d4c4506b68280bc8525d66e13fa4a62d1d4005f1db6e5e6291595fa7327dc
BLAKE2b-256 checksum
How to use checksums
7ffc796dae2e63db530c3655be67932b3b64ba681c00e457afe5d79f51bf50bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.11

Release files / jiminy_py-1.8.13-cp312-cp312-macosx_11_0_universal2.whl

Download URL jiminy_py-1.8.13-cp312-cp312-macosx_11_0_universal2.whl
Size 44.6 MB
Tags CPython 3.12 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
20d59e2a777ea6be8eff6a1659e18aa510c71964e3bff64fdd0bcdd82e311352
BLAKE2b-256 checksum
How to use checksums
b691261a64b5ca7e69f81818c45dc8293111da19b8477b299d522fd584a24ef7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release files / jiminy_py-1.8.13-cp311-cp311-win_amd64.whl

Download URL jiminy_py-1.8.13-cp311-cp311-win_amd64.whl
Size 30.8 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
c884de34485eb981db95621bdaa1ca37239042a4b443be3294c3aa897ae9ad7e
BLAKE2b-256 checksum
How to use checksums
fa81227775296a57132a53c603c67479709a02ff80d2b72d9bb3955cfaecf510
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release files / jiminy_py-1.8.13-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL jiminy_py-1.8.13-cp311-cp311-manylinux_2_28_x86_64.whl
Size 20.9 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4a339e462fe3e3a5cc5c70d340ab4b4fb68d308f64e14900cc7d56272676ab8b
BLAKE2b-256 checksum
How to use checksums
020e32b03c4ea5b2ead8c5692b853f836da81b3068cf10070c7131c16ec31ff9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.11

Release files / jiminy_py-1.8.13-cp311-cp311-macosx_11_0_universal2.whl

Download URL jiminy_py-1.8.13-cp311-cp311-macosx_11_0_universal2.whl
Size 44.4 MB
Tags CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
5d6a7bcb74f1f5e5cb5a088a37991c18a6311849c65be33be3f1cd90d6bd9add
BLAKE2b-256 checksum
How to use checksums
90e215a42957db2e4cbcb65815c938ec50e4da1768bd9e96b86b3ca49478d696
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release files / jiminy_py-1.8.13-cp310-cp310-win_amd64.whl

Download URL jiminy_py-1.8.13-cp310-cp310-win_amd64.whl
Size 30.8 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
025812905c204510376904b34afd0f43eff996b1e58a2fe221a2e16508b16fae
BLAKE2b-256 checksum
How to use checksums
8306b15bca79afa6ec927bd2518ac9bde2a7e938488f6e57256e66ed27961f9d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release files / jiminy_py-1.8.13-cp310-cp310-manylinux_2_28_x86_64.whl

Download URL jiminy_py-1.8.13-cp310-cp310-manylinux_2_28_x86_64.whl
Size 20.9 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
95c008063351660447490329ab477bf8385abaf5589ba243eab072a5c9558ab6
BLAKE2b-256 checksum
How to use checksums
3f3b2cf9869a825171948c4e62a7bfc300bba868db6c164e51a09dcab4803e6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.11

Release files / jiminy_py-1.8.13-cp310-cp310-macosx_11_0_universal2.whl

Download URL jiminy_py-1.8.13-cp310-cp310-macosx_11_0_universal2.whl
Size 44.4 MB
Tags CPython 3.10 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
ef966b8cb4c9ec20cc364b270907565be0498257e693c6e044e3853e3164d723
BLAKE2b-256 checksum
How to use checksums
40cb9a4dd505fdee8204dc29706f64b22bcf5c7890a4f413550008d87880e66b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release history Release notifications | RSS feed

This release

1.8.13 This release

12 release files

1.8.10

9 release files

1.8.9

9 release files

1.8.8

15 release files

1.8.7

15 release files

1.8.6

15 release files

1.8.4

15 release files

1.8.2

15 release files

1.8.1

15 release files

1.8.0

15 release files

1.7.6

16 release files

1.7.5

16 release files

1.7.4

18 release files

1.7.3

12 release files

1.7.2

12 release files

1.7.1

12 release files

1.7.0

12 release files

1.6.9

8 release files

1.6.8

8 release files

1.6.7

8 release files

1.6.6

8 release files

1.6.5

8 release files

1.6.4

8 release files

1.6.3

8 release files

1.6.2

8 release files

1.5.9

6 release files

1.4.25

6 release files

1.3.9

6 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page