Crocoddyl Versions Save

Crocoddyl is an optimal control library for robot control under contact sequence. Its solver is based on various efficient Differential Dynamic Programming (DDP)-like algorithms

v1.3.0

4 years ago

Changes in v1.3.0:

  • Minor improvement in state-base class (enabling limits once we define only one component).
  • Added functions to print the active/inactive status of costs, contacts and impulses.
  • Running computations in the contact / impulse dynamics using the active number of contacts / impulses, respectively.
  • Used NumPy Array in examples / notebooks.
  • Initial integration of Meshcat viewer and used in notebooks.
  • Improved efficiency of Jdiff, Jintegrate in multibody state.
  • Added an extra operator in Jintegrate signature (state classes)
  • Added an extra function parallel transport in the state class (i.e. JintegrateTransport)
  • Added functions to retrieve the inactive costs, contacts and impulses.
  • Fixed target_link_libraries use
  • Improved efficiency of few activation models.
  • Added the action-base class for code generation + unittest.
  • Added codegen bench for 4 dof arm and biped
  • Renamed all bench files.
  • Updated dependency versions for Pinocchio and example-robot-data.
  • Fixed bug in the impulse dynamics that appears in multiple threads.
  • Fixed various issues regarding data alignment.
  • Added doxygen file with the documentation state-base class.
  • Fixed an issue when we updates reference in frame-placement and frame-rotation costs.
  • Fixed an issue with Python3 compatibility in few examples.
  • Proper display of friction cones + do not display when the contact / impulse is inactive/
  • Extended the computation of impulses derivatives.
  • Added a friction cost for impulse dynamics.

v1.2.1

4 years ago

Changes in v1.2.1:

  • fix backup files inside notebook folder
  • fix an issue with the friction cone display
  • add quadcopter actuation model

v1.2.0

4 years ago

Changes since v1.1.0:

  • templatized all the classes and structures with the scalar (for codegen and autodiff).
  • fixed a bug in the formulation for the quadrupedal problem (state bounds).
  • reduced the compilation time in Python bindings (re-structured the code).
  • fixed error in the expected improvement computation for terminal action in SolverFDDP.
  • added unittest code for cost classes (included cost factory).
  • reorganized the various factories used for c++ unittesting.
  • developed the pinocchio model factory for c++ unittesting.
  • added unittest code for contact classes (included the contact factory).
  • described cost items through shared_ptr.
  • described contact items through shared_ptr.
  • described impulse items through shared_ptr.
  • fixed Gauss-Newton approach for cost num-diff.
  • added contact num-diff class.
  • used virtual keyword in declaration of derived functions.
  • added the unittest code for free forward dynamics action model.
  • added the unittest code for contact forward dynamics action model.
  • included the cost status in cost sum for global memory allocation.
  • included the contact status in cost sum for global memory allocation.
  • included the impulse status in cost sum for global memory allocation.
  • removed duplication function for retrieving models and datas in solvers (now we do only through shooting problem interface).
  • allowed to write internal data of Numpy-EigenPy objects.
  • added a general method for setting and getting cost reference.
  • added squashing function abstraction.
  • added unittest code for testing cost, contact and impulse status.
  • moved to CMake exports

v1.1.0

4 years ago

Changes since v1.0.0:

  • added few cost functions related to forces and impulses (e.g. friction-cone, com impulse)
  • improved the display tools (friction cone, contact forces and end-effector trajectories)
  • fixed a problem in the printed message by the callback
  • fixed a problem in the box-qp
  • improved the box-ddp
  • added a new solver called box-fddp
  • added extra examples (box-ddp vs box-fddp, taichi task, humanoid manipulation)
  • added a script for automatically updating the log files
  • checked that all examples runs in the CI (for release mode only)
  • improved the quadrupedal and bipedal examples by adding all the constraints
  • improved the efficiency in differential free-forward dynamics
  • added extra setter functions in action models
  • improved efficiency in all solvers (removed extra computation)
  • improved plot functions
  • fixed a bug in few notebooks

v1.0.0

4 years ago

v0.9.0

4 years ago

This project is being rewritten in C++ with python bindings, instead of staying a pure python library