ceres-solver VS casadi

Compare ceres-solver vs casadi and see what are their differences.

casadi

CasADi is a symbolic framework for numeric optimization implementing automatic differentiation in forward and reverse modes on sparse matrix-valued computational graphs. It supports self-contained C-code generation and interfaces state-of-the-art codes such as SUNDIALS, IPOPT etc. It can be used from C++, Python or Matlab/Octave. (by casadi)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
ceres-solver casadi
8 4
3,601 1,553
2.6% 4.4%
8.1 9.3
5 days ago 1 day ago
C++ C++
3-Clause BSD License GNU Lesser General Public License v3.0 only
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

ceres-solver

Posts with mentions or reviews of ceres-solver. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-22.

casadi

Posts with mentions or reviews of casadi. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-05.
  • pyomo VS casadi - a user suggested alternative
    2 projects | 5 Sep 2023
    Interface for several solvers and integrators.
  • (Direct) Collocation in (Time) Optimal Control
    1 project | /r/ControlTheory | 9 Dec 2022
    Howdy! Collocation methods can be... tricky. For NMPC control of vehicles, success has been had using direct multiple shooting. Also easier to implement and more intuitive. In fact, this example from the GH is pretty instructive: https://github.com/casadi/casadi/blob/master/docs/examples/python/race_car.py
  • Are there any optimization libraries/packages that use automatic differentiation?
    1 project | /r/optimization | 4 Nov 2021
    JuMP.jl (Julia) or casADi (Python) are good choices.
  • Should I switch over completely to Julia from Python for numerical analysis/computing?
    5 projects | /r/Julia | 8 Jul 2021
    Python is not mature in this area. If you ask Google what Simulink for Python is, you get responses that point to dead libraries that were never feature complete and slow. The absolute closest is CASADI which is nice for some things but doesn't even have a true causal modeling interface and is mostly abandoned by the developers (they put a patch in every now and then, but just look at the commit graph), and it's slow compared to the Julia tools, so much so that PyBAMM is interfacing with ModelingToolkit.jl in Julia for a performance boost. Python is not the place to be for causal/acausal modeling or controls. Anyone who is saying "Python is mature" here is saying it in the abstract and not in the context of your actual question. Yes, Python has web development frameworks. No it does not have good libraries for tons of areas (control, acausal modeling, pharmacometrics, etc.).

What are some alternatives?

When comparing ceres-solver and casadi you can also consider the following projects:

Eigen

ModelingToolkit.jl - An acausal modeling framework for automatically parallelized scientific machine learning (SciML) in Julia. A computer algebra system for integrated symbolics for physics-informed machine learning and automated transformations of differential equations

GLM - OpenGL Mathematics (GLM)

symbolic - A Symbolic Package for Octave using SymPy

OpenBLAS - OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.

jsbsim - An open source flight dynamics & control software library

QuantLib - The QuantLib C++ library

symforce - Fast symbolic computation, code generation, and nonlinear optimization for robotics

CGal - The public CGAL repository, see the README below

fricas - Official repository of the FriCAS computer algebra system

Boost.Multiprecision - Boost.Multiprecision

wyvern - Automatic conversion of call by value into call by need in the LLVM IR.