Skip to content

Releases: loco-3d/crocoddyl

Release v1.7.0

10 May 11:11
v1.7.0
Compare
Choose a tag to compare

Changes in v1.7.0:

  • Updated the examples based on new API in example-robot-data
  • Removed reference in std::sized_t (and other primitives)
  • Improved computation and handled richer conditions in friction and wrench cone (e.g., inner/outer apprx. in wrench cone, and rotation matrix in friction cone)
  • Added more unit-tests for cones
  • Included the CoP support notion
  • Updated minimal version of EigenPy as it fixes a bug with 4x6 matrices
  • Developed a gravity-based cost function for both free and in contact conditions (included its unit-test code)
  • Added assignment operator in FrameXXX structures
  • Replaced isMuchSmallerThan by isZero in all the unit-tests
  • Enabled free-flyer joint in full actuation model
  • Improved multicopter actuation API + unit-tests
  • Exposed in Python ActionModelUnicyle::dt_
  • Fixed multithreading support: running the correct number of threads
  • Enabled that the user can set the number of threads (also in Python)
  • Added publication list and updated README file
  • Registered in Python the shared pointers of all the model classes
  • Fixed Meshcat visualizer after update
  • Added Github Action CI with ROS dependency resolution
  • Improved efficiency of backward pass by defining properly RowMajor matrices
  • Activated all warnings and Werror
  • Improved documentation

Release v1.6.0

05 Feb 13:59
v1.6.0
Compare
Choose a tag to compare

Changes in v1.6.0:

  • Refactored the Cost API with breaking compatibility (cost depends on state abstract, not multibody state)
  • Fixed issue in c++98 compatibility
  • Added shared_ptr registers for solver classes (Python bindings)
  • Initialized missed data in SolverQP (not really producing a bug)
  • Fixed issue with FrameXXX allocators (Python bindings)
  • Created aligned std vectors for FrameXXX (Python bindings)
  • Used the proper nu-dimension in shooting problem and solvers
  • Doxygen documentation of smooth-abs activation
  • Renamed the activation model: smooth-abs to smooth-1norm (deprecated old names)
  • Added the smooth-2norm activation model with Python bindings
  • Updated README file with Credits and committee information
  • Added throw_pretty in Python bindings of action models (checks x,u dimensions)
  • Improved the documentation (doxygen, docstrings), and fixed grammar, of various classes
  • Cleaned up a few things related with cost classes
  • Cleaned up unnecessary typedef in cost models
  • Extended the differential action model for contacts to handle any actuation model (not just floating-base derived ones)
  • Added conda support
  • Added the quadratic-flat activation models
  • Fixed issue with gepetto viewer display (appearing in some OS)
  • Added contact/impulse action unit tests
  • Added contact/impulse cost unit tests
  • Added a proper gap threshold (it was too big and created different behavior in feasibility-driven solvers)
  • Improved the copyright starting year for many files

Release v1.5.0

24 Sep 17:14
v1.5.0
Compare
Choose a tag to compare

Changes in v1.5.0:

  • Improved and cleaned up the bench-marking code for code-generation
  • Fixed bug for computing quasicStatic torques under inactive contacts
  • Added unit-test code that disables contacts
  • Created CoP cost with Python bindings and unit-test
  • Multi-threading support for quasicStatic computation in shooting problem
  • Modifications in Travis CI + included Gepgitlab CI
  • Created contact wrench cone (CWC) cost with Python bindings and unit-test
  • Created RK4 integrator with Python bindings and unit-test
  • Throw exception for setting candidates xs/us in solvers
  • Fixed a few spelling errors in the docstring documentation
  • Exposed the KKT solver in Python
  • Checked the dimension of the warm-start vectors for xs and us
  • Cleaned up some part of the Python code that were using Numpy Matrix (now Numpy Array!)
  • Created the 2d contact
  • Checked the feasibility by the gap values
  • Created the Crocoddyl logo + integrated in the README file

Release v1.4.0

05 Aug 18:43
v1.4.0
Compare
Choose a tag to compare

Changes in v1.4.0:

  • Allowed different values of nu in action models
  • Adapted the contact force cost to accept 3d contacts.
  • Added CppAD support to (weighted) quadratic barrier activation
  • Added the contact impulse cost
  • Added contact CoP cost,
  • fixes:
  • Fixed display of contact forces in Gepetto viewer
  • Fixed a bug in the definition of the terminal node in updateNode (defined in ShootingProblem)
  • Fixed memory allocation produced by Python binds.
  • Fixed printed error message in ShootingProblem
  • and improvements:
  • Added documentation of the differential action model
  • Deprecated legacy functions to define reference in cost functions.
  • Set to zero inactive contact forces for correctness
  • Simplified FDDP code by using calcDiff from DDP solver
  • Improved the display of benchmark timings
  • Improved the documentation of contact force cost
  • Improved few notebooks and added an extra one
  • Removed legacy Python unittest

Release v1.3.0

27 May 15:45
v1.3.0
Compare
Choose a tag to compare

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.

Release v1.2.1

13 Apr 12:03
v1.2.1
Compare
Choose a tag to compare

Changes in v1.2.1:

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

Release v1.2.0

03 Apr 08:44
v1.2.0
Compare
Choose a tag to compare

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

Release v1.1.0

14 Feb 08:42
v1.1.0
Compare
Choose a tag to compare

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

Release v1.0.0

20 Dec 12:07
v1.0.0
Compare
Choose a tag to compare
Release of version 1.0.0.

Release v0.9.0

30 Aug 15:59
v0.9.0
Compare
Choose a tag to compare

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