Skip to content

Commit f4649e6

Browse files
authored
added README
1 parent e959bd1 commit f4649e6

1 file changed

Lines changed: 45 additions & 0 deletions

File tree

README.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# Input-Constrained iLQR
2+
A simple, header-only C++ library for solving **nonlinear trajectory optimization** problems using an iLQR method combined with a [box-constrained optimization solver](https://github.com/JuDO-dev/projected-descent).
3+
4+
## Get via CMake
5+
6+
Simply add the following to your CMakeLists.txt file.
7+
```cmake
8+
include(FetchContent)
9+
FetchContent_Declare(
10+
eigen3
11+
GIT_REPOSITORY https://gitlab.com/libeigen/eigen.git
12+
GIT_TAG 3.4.0
13+
GIT_SHALLOW TRUE
14+
GIT_PROGRESS TRUE
15+
)
16+
FetchContent_Declare(
17+
projected-descent
18+
GIT_REPOSITORY https://github.com/JuDO-dev/projected-descent.git
19+
GIT_TAG main
20+
GIT_SHALLOW TRUE
21+
GIT_PROGRESS TRUE
22+
)
23+
FetchContent_Declare(
24+
constrained-ilqr
25+
GIT_REPOSITORY https://github.com/JuDO-dev/constrained-ilqr.git
26+
GIT_TAG main
27+
GIT_SHALLOW TRUE
28+
GIT_PROGRESS TRUE
29+
)
30+
FetchContent_MakeAvailable(eigen3 constrained-ilqr)
31+
target_link_libraries(YOUR_TARGET
32+
Eigen3::Eigen
33+
constrained_ilqr
34+
)
35+
```
36+
37+
## Examples
38+
Find the following usage examples within the ``tests`` directory.
39+
```
40+
tests/test_integrator.cpp
41+
tests/test_two_link_arm.cpp
42+
```
43+
44+
## References
45+
1. [Tassa Y, Mansard N, Todorov E, *Control-limited differential dynamic programming* 2014](https://ieeexplore.ieee.org/abstract/document/6907001)

0 commit comments

Comments
 (0)