CALIPSO is a differentiable solver for trajectory optimization with conic and complementarity constraints. The solver is written in pure Julia in order to be both performant and easy to use.
- Differentiable: Solutions are efficiently differentiable with respect to problem data provided to the solver
- Trajectory Optimization: Problems formulated as deterministic Markov Decision Processes are automatically transcribed for the solver
- Complementarity Constraints: Complementarity constraints can be provided to the solver without reformulation
- Second-Order-Cone Constraints: Cone constraints are natively supported in the non-convex problem setting
- Codegen for Derivatives: User-provided functions (e.g., objective, constraints) are symbolically differentiated and fast code is autogenerated using Symbolics.jl
- Open Source: Code is available on GitHub and distributed under the MIT Licence
CALIPSO can be installed using the Julia package manager for Julia
v1.7 and higher. Inside the Julia REPL, type
] to enter the Pkg REPL mode then run:
pkg> add CALIPSO
If you want to install the latest version from Github run:
pkg> add CALIPSO#main
If this project is useful for your work please consider:
CALIPSO is licensed under the MIT License. For more details click here.