c++ implementation of differential action model abstract and LQR + Python bindings
In this PR, I have written the following c++ classes and their Python bindings:
-
DifferentialActionModelAbstract
andDifferentialActionDataAbstract
-
DifferentialActionModelLQR
andDifferentialActionDataLQR
Additionally, I have included Python scripts for bindings benchmarking. This benchmarking includes the unicycle and LQR systems. Other further changes are:
- Added the LQRDerived python class
- Renamed the binding header files
lqr.hpp
andunicycle.hpp
toaction-lqr.hpp
andaction-unicycle.hpp
. This resembles the same organization inside the c++ library. - Added ncost (default argument) in the differential action model abstraction. This resembles the action model one.
- Formatted the Python code for unit-testing
All the changes have been successfully tested in my PC. Unfortunately the CI isn't working properly.
This PR solves the issues: #176 (closed) and #177 (closed)