Jiminy: a fast and portable Python/C++ simulator of poly-articulated robots with OpenAI Gym interface for reinforcement learning
MIT License
Published by duburcqa almost 4 years ago
It is now possible to load pipeline learning environment from file (json or toml). Here an example of configuration file:
# Choose the environment
[env_config]
env_class = "gym_jiminy.envs.ANYmalJiminyEnv"
[env_config.env_kwargs]
step_dt = 0.005
# Add Proportional-Derivative Controller block
[[blocks_config]]
block_class = "gym_jiminy.common.controllers.PDController"
[blocks_config.block_kwargs]
update_ratio = 2
pid_kp = [1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0, 1500.0]
pid_kd = [3.0e-3, 3.0e-3, 3.0e-3, 3.0e-3, 3.0e-3, 3.0e-3, 3.0e-3, 3.0e-3, 3.0e-3, 3.0e-3, 3.0e-3, 3.0e-3]
[blocks_config.wrapper_kwargs]
augment_observation = true
# Partially stack observation frames
[[blocks_config]]
wrapper_class = "gym_jiminy.common.wrappers.StackedJiminyEnv"
[blocks_config.wrapper_kwargs]
nested_fields_list = [
["t"],
["sensors", "ImuSensor"],
["targets"],
]
num_stack = 3
[gym] Add 'load_pipeline' utility to load pipeline from file.
[gym] Use folder architecture for clarity and maintainability.
Published by duburcqa almost 4 years ago
This release achieves the work of generic pipeline design by implementing missing core features to support it.
Published by duburcqa almost 4 years ago
The sensors are now updated at the end of the integration steps instead of the beginning, so that the system state is now consistent with sensors data. Moreover, pipeline builder has been reworked more maximum flexibility.
Published by duburcqa almost 4 years ago
This release greatly improves the compliance with OpenAI Gym API by enforcing complete configuration of the environment at initialization. As a result, it is no longer possible to change environment properties such as the observation and action spaces, but it is still possible to update the load a different robot model as long as it is compatible with those properties. So it should not be limiting fr the vast majority of applications.
Published by duburcqa almost 4 years ago
Observers and controllers can now be mixed freely, with independent update period.
Published by duburcqa almost 4 years ago
This release consists only of bug fixes.
Published by duburcqa almost 4 years ago
Every dependency but Boost.Python is now statically linked. Window wheel now bundles dynamic libraries in the same way Linux wheel does.
Published by duburcqa almost 4 years ago
It is now possible to export/import log files in HDF5 format. HDF5 is especially well suited for storing log data because it enables to compress and extract each variable individually and only when needed. It also enables to store metadata directly with data, which is very helpful to store information required to reproduce results.
Published by duburcqa almost 4 years ago
This release enhances the new pipeline architecture design for Gym environments to be more flexible and easy-to-use. In addition, log variables are now stored in 64 bits instead of 32 bits.
Published by duburcqa almost 4 years ago
This release introduces a new pipeline control architecture design for Gym environments. A controller is an independent block, that can be connected directly to an environment or another controller. In addition, a new Gym toolbox sub-module has been created, which is intended to gather tools for learning based on Pytorch.
Published by duburcqa about 4 years ago
It is now possible to visualize all standard primitives shapes in Meshcat, and to enable/disable display of visual/collision geometries.
Published by duburcqa about 4 years ago
This release fixes several bugs and limitations of the automatic URDF import capability, and introduce Spotmicro robot.
Co-authored-by: Alexis Duburcq [email protected]
Published by duburcqa about 4 years ago
This release introduces new documentation built using Sphinx and using the official ReadTheDocs style template.
Published by duburcqa about 4 years ago
Published by duburcqa about 4 years ago
Minor patch release. Update Readme. Add ANYmal and Atlas robot learning environment.
Published by duburcqa about 4 years ago
This release introduces many much-wanted features such as geometry collisions and wheel constraint, and lays the foundation for learning locomotion tasks for any robot out-of-the-box without configuration. The accuracy of the integration has been greatly improved by implementing a Runge-Kutta stepper working on Lie-Group.
Published by duburcqa about 4 years ago
This patch is the last one in the long series of patches to bring the viewer in Google Colaboratory. Sadly, it was impossible to make it works as flawlessly as in Jupyter because of technical limitations. It is mainly because Google Colab relies on old ipython/jupyter dependencies from 2018. However, it should work out-of-the-box once the team would have updated them.
Published by duburcqa about 4 years ago
Published by duburcqa about 4 years ago
Published by duburcqa about 4 years ago