Jiminy-py

Latest version: v1.8.5.post1

Safety actively analyzes 628918 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 11 of 18

1.5.7

Tiny release to fix a critical bug causing corruption of sensors data (IMU, Force Sensors, and Contact Sensors).

Bug fixes

* [core] Fix joints accel/force restored right after computations instead of before sensor update.

Miscellaneous

* [misc] Check no memory allocation by Eigen during simulation.
* [misc] Update Eigen to latest release (3.3.9) on CI.

1.5.6

Simulation speed has been increased by at least 15%, mainly avoiding memory allocation during simulation, postponing accelerations and forces updates until successful stepper step, and not computing all terms for internal stepper steps.

* [core] Avoid algebraic loop in internal stepper steps by postponing accel/force updates after successful outer step.
* [core] Move centroidal kinematics computations in stepper outer loop for efficiency.
* [core] Assume slow variation of subtree inertia during one integration step for efficiency.
* [core] Avoid memory allocation for 'computeAcceleration', 'updateTelemetry' and 'computeAllEffort'.
* [misc] Fix double_pendulum c++ example using Eigen::Ref for controller handles instead of vectorN_t.

1.5.5

Simulation speed has been increased by at least 15% by avoiding the stepper to allocate memory dynamically once a simulation has started.

Improvements

* [gym] Use float32 action space instead of float64 because it is the usual dtype for neural networks.
* [core] Avoid memory allocation during Lie algebra computations without relying on compiler optimizations.

Miscellaneous

* [misc] Update Cmake to support RelWithDebInfo. Enable more Cmake warnings.

1.5.4

This release makes it possible to add visco-elastic (spring-damper mechanism) coupling force between two frame on the same or different robots, without having to implement them manually. It brings a huge speedup wrt doing it in Python (even using Numba). In addition, a few redundant computations have been removed, resulting in a minor overall speedup.

New features
* [core] Add viscoelastic coupling force between frames.

Improvements
* [core] Disable stepper 'iterMax' by default.
* [core] Abort simulation if 'nan' detected in 'q', 'v', 'a' instead of 'a' only.
* [core] Increase maximum simulation timestep.
* [core] Do not call rnea directly in 'computeAcceleration' to avoid redundant computations.
* [python/controller] Improve efficiency by making controller/observer handles optional.
* [gym/common/env] Return is_done=True if simulation is not running anymore.
* [gym/common/env] Use OrderedDict instead of dict to avoid conflicts with ray[rllib].

Bug fixes
* [core] Fix segfault when initializing sensor using unvalid robot.
* [core] Fix Euler Explicit stepper not working as expected.
* [python] Fix potential infinite recursion loop during custom attribute lookup.
* [python/log] Fix 'Global.Time' not in seconds when reading hdf5 logfiles.
* [python/viewer] Fix legend warning wrongly displayed.
* [gym/common/wrapper] Rework 'PartialFrameStack' to be consistent with official 'FilterStack'.

Miscellaneous
* [misc] Update gitignore to ignore log folders.
* [misc] Increase stepper tolerance in unit test to be consistent with check accuracy.
* [misc] Fix new Cmake policy CMP0111.
* [misc] Fix type checking to support latest mypy/pylint releases.
* [misc] Assume pip 21.0 for Cmake and install it on Windows CI. Minor improvements of Cmake files.
* [misc] Remove useless boost submodules dependencies.
* [misc] Do NOT support Numpy >= 1.20 explicitly, since not compatible with Python3.6.
* [misc] Fix toy model learning unit tests.

Co-authored-by: Alexis Duburcq <alexis.duburcqwandercraft.eu>

1.5.3

This release fixes the long lasting issue of robot getting deleted without letting know the others relying on it, causing erratic segfaults hard to diagnose. It also adds several mechanisms to ensure the consistency of the data, and proper update of low-level `pinocchio::Data`, to avoid having to manually update anything that the user may expect already having been computing. It comes at an addition computational burden, but it is the price to pay to avoid nasty mistakes.

New features

* [core/python] Enable to define custom constraints directly in Python.

Improvements

* [core] Use std::weak_ptr instead of raw pointer to avoid segfault if object gets destroyed in the meantime.
* [core] Make sure controller's robot and system's robot are consistent when add system to engine.
* [core] Refactor constraints to improve efficiency and make it more intuitive to define and use.
* [core] Fix joint acceleration not properly updated after calling 'computeAcceleration' method of Engine.
* [core/python] Add 'BaseControllerFunctor', allowing overloading of 'reset' method in Python.
* [python/simulator] Avoid attribute lookup infinite loop.
* [python/simulator] Ensure consistent model between robot model and log data before plotting them.
* [gym/common/env] Set the controller before resetting it and getting sensors data since the robot may no longer exists.

Miscellaneous

* [core/python] Rename 'AbstractControllerWrapper' in 'BaseController' to clarify it is not abstract but the base controller class.
* [python/controller] Inherit from 'BaseController' instead of 'BaseControllerFunctor' since callbacks are handled manually.

1.5.2

This release aims to make it easier and more intuitive to implement custom robot controllers. It also gets rid of custom file extensions for configuration files for clarity.

New features
* [core/python] Enable direct inheritence of Python controllers from AbstractController.

Improvements
* [core] Do not throw exception when calling addCollisionBodies with empty list and no geometry model.
* [core/python] Add getters for controller's robot model and sensors data.
* [core/python] Support engine init using callback only. Using single init method with default None args.
* [python] Replace dedicated '.hdf'/'.config' extensions by '_hardware.toml'/'_options.toml' for clarity.
* [python/robot] Enable to "fix" (aka override) relative mesh paths is URDF using 'mesh_path'.
* [python/simulator] Move progress bar management at simulator level instead of controller. No controller by default.

Bug fixes
* [core] Fix initialization of engine without controller.
* [python/controller] Fix initialization throwing exception if OK.
* [python/simulator] Fix 'build' method not fully compatible with derived classes overloading '__init__'.
* [python/simulator] Fix infinite recursive loop at exist if simulator constructor fails.

Miscellaneous
* [misc] Disable compilation LTO since it is not really improving anything.

Page 11 of 18

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.