Skip to content

Releases: loco-3d/crocoddyl

Release v2.1.0

31 May 12:43
v2.1.0
Compare
Choose a tag to compare

Changed in v2.1.0:

  • Updated black + isort + flake8 to ruff in #1256
  • Exported version for Python in #1254
  • Added pinocchio 3 preliminary support in #1253
  • Updated CMake packaging in #1249
  • Fixed ruff reported error in #1248
  • Fixed yapf reported errors in #1238
  • Tested Python stubs in Conda CI in #1228
  • Fixed Rviz display in #1227
  • Improved CI, updated cmake and fixed launch file in #1220
  • Introduced a Rviz display in #1216
  • Enabled display of thrust and simplied displayers code in #1215
  • Introduced floating base thruster actuation model in #1213
  • Fixed quadruped and biped examples in #1208
  • Fixed terminal computation in Python models in #1204
  • Fixed handling of unbounded values for ActivationBounds in #1191

Release v2.0.2

07 Dec 12:19
v2.0.2
Compare
Choose a tag to compare

[2.0.2] - 2023-12-07

  • Added nu, ng, and nh setters for Python bindings in #1192
  • Added CHANGELOG.md in #1188
  • Supported nu==0 in actuation models in #1188
  • Included Python bindings for Crocoddyl exceptions by cmastalli in #1186
  • Updated cmake submodule update by jcarpentier in #1186
  • Fixed getters for contraints bounds by skleff1994 in #1180
  • Extended solver abstract and callbacks for arbitrary solvers by cmastalli in #1179
  • Fixed the check of pair_id in collision residual by ArthurH91 in #1178
  • Exploited control-residual structure when computing Lu, Luu by cmastalli in #1176
  • Added LWA fram convention and introduced different axis for 1d contacts by skleff1994 in #1172
  • Python bindings for setting control bounds by cmastalli in #1171
  • Fixed missed scalar in cost sum and activation data by cmastalli in #1165
  • Added actuation unit tests by cmastalli in #1161
  • Introduced method for obtaining the dimension of floating-bases by cmastalli in #1160
  • Fixed set_reference in state residual by cmastalli in #1158
  • Enabled CONDA CI jobs with CppADCodeGen by cmastalli in #1156
  • Added other CI jobs by cmastalli in #1152
  • Fixed compiltation issue when building with CppADCodeGen by cmastalli in #1151
  • Fixed include order used in frames.cpp by ManifoldFR in #1150

Release v2.0.1

17 Jun 09:29
v2.0.1
Compare
Choose a tag to compare

Changes in v2.0.1:

  • fix notebooks
  • fix build on aarch64-linux
  • fix CMake for OpenMP with conda
  • fix lints
  • update for example-robot-data 4.0.7
  • add support for 18.04 back:
    • CMake 3.10
    • Boost 1.65
    • Python 3.6

Release v2.0.0

13 May 20:03
v2.0.0
Compare
Choose a tag to compare

Changes in v2.0.0:

  • Changed stopping criteria to better evaluate the converge criteria
  • Extended numdiff routines to compute second-order derivatives + other minor improvements
  • Improved the overall project documentation (still many things to be done)
  • Added collision residual unit tests and missing Python bindings
  • Allowed accuracy configuration of verbose callback
  • Closed gaps once feasibility is achieved in FDDP
  • Supported different Python versions
  • Added procedure to check example log files
  • Added support to M1 apple chip + fixed compilation issues with Clang
  • Fixed a small issue in the solver's Armijo condition
  • Added shareMemory unit tests
  • Introduced the notion of resizing data in solvers
  • Added unit test for impulse actions
  • Deprecated set_id functions in contact residuals
  • Supported Ipopt solver with Python bindings
  • Extended (diff)-action API to handle arbitrary constraints + unit tests
  • Introduce the notion of ConstraintManager and used it in diff-actions + unit tests + integrated action support
  • Added the HyQ robot for extra unit testing
  • Updated doxygen documentation in many parts of the project
  • Used std::set for storing cost/constraint activation status
  • Fixed small issues in terminal-node computations
  • Supported Meshcat display of contact forces, friction cone and foot-swing trajectories
  • Introduced the notion of equality constraint feasibility in solvers
  • Created a data collector to store joint effort and accelerations
  • Created joint-effort/acceleration residuals + unit tests
  • Created inverse-dynamics action models + unit tests
  • Added the SolverIntro which handles inverse-dynamics OC problems + unit tests
  • Added invdyn examples and log files + cleaned up filenames
  • Enabled copyable for various objects used in Python
  • Supported different contact/impulse frames + unit test + changes in example/logfiles.
  • Removed deprecated FrameXX code.
  • Updated readme file.
  • Updated CMake configuration
  • Updated numpy usage

Release v1.9.0

03 Mar 11:22
v1.9.0
Compare
Choose a tag to compare

Changes in v1.9.0:

  • Introduced the control parametrization notion and three polynomial parametrization (PolyZero, PolyOne, PolyTwoRK)
  • Improved the documentation of the actuation model and especially the floating-base actuation
  • Improved the efficiency of the RK integrator (added to the benchmarks)
  • Improved the documentation of Euler and RK integrators
  • Added unittests for checking the analytical derivatives of the contact forces/impulses
  • Computed the dynamic feasibility in solvers (also print this relevant information)
  • Improved the documentation of solvers
  • Removed dynamic memory allocation in ContactModel3D
  • Added the notion of terminal (calc, calcDiff) computations (fixed some tiny inaccuracies in the problem formulation + reduced useless computations)
  • Added a class to easily profile the computation cost of any block code (included relevant blocks in the solvers and shooting problem)
  • Fixed error in the documentation of ActivationModel2NormBarrier
  • Added the 2d contact
  • Added method to resized solver data (e.g., it is not needed to allocate the biggest control dimension)
  • Fixed issue in the Gepetto viewer display
  • Improved the CI and fixed a few errors that appears in unittests code compiled with clang
  • Removed dynamics memory allocation in LQR action and CostModelResidual
  • Removed Travis buildfarm and substituted by ROS one
  • Used std::set for contact/impulse active/inactive set (added bindings)
  • Added Python bindings to be able to set state dimensions from a Python derived class.
  • Added Python bindings of StateNumDiff class

Release v1.8.1

03 Aug 13:59
v1.8.1
Compare
Choose a tag to compare

Changes in v1.8.1:

  • fix Vx computation
  • fix memory allocations
  • fix linkage of the python library
  • deprecate FramXX in constructors and frames.hpp
  • cleanups

Release v1.8.0

06 Jul 23:35
Compare
Choose a tag to compare

ChangeLog:

[example] Updated jupyter notebook
Fixed issue in the plotSolution function for biped robots
Fix typo in README
Run unittests in ROS-CI, deactivate Travis-CI
Align the arguments in python
[cmake] use OPTION to set BUILD_TESTING
Introduced pair collision cost
fix include sequence after pinocchio commit c1ff8821c437e2401b80b7aa7f3f118464e2c051
Introduced the printing functions for action, cost, activation, residual, contact, and impulse models
Only build Python-examples if bindings are built
RK4 unittests
Enable to derive quasiStatic in Python #825
[C++14] Move default C++ standard support to 14
Deprecated BUILD_UNIT_TEST + removed legacy files + updated README file (with pip installation)
Fixed GV display after changes in #911
Created residual models to be shared between cost and constraint models

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