casadi

写符号表达式,自动求导并生成优化代码

CasADi 是一个面向数值优化的符号框架,核心是在稀疏矩阵计算图上实现前向与反向自动微分。它解决的是复杂动态系统优化中导数计算繁琐、求解器集成困难的问题:用户用符号变量描述目标与约束,框架自动生成高效导数代码,并可导出为自包含的 C 代码。它内置与 IPOPT、SUNDIALS、SNOPT 等成熟求解器的接口,支持 C++、Python、Matlab/Octave、Julia 和 JavaScript 多语言调用。典型用途包括最优控制、轨迹优化、机器人动力学、模型预测控制和参数估计。其稀疏处理与代码生成能力使其在嵌入式与实时优化场景中表现突出,是学术与工业界广泛采用的优化建模工具。

开源 free 基础设施
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 2304
维护状态 活跃
是否开源 是
定价模式 free

项目预览

项目数据

分类基础设施
开发团队casadi
所属国家
官网地址http://casadi.org
定价模式free
价格说明开源免费(LGPL)
访问状态
是否开源是
开源协议LGPL-3.0
主要语言C++
技术栈/模型academic-project,algorithmic-differentation,c-plus-plus,code-generation,derivatives,javascript,julia-package,library,mathematics,matlab,nonlinear,nonlinear-programming,numerical-calculations,octave,optimal-control,optimization,parameter-estimation,python,scientific-computing,symbolic-manipulation
GitHub 星标★ 2304
30天Star增速
HF 下载量
上线时间2012-10-31 00:00:00
代码更新—
仓库体积—
本站数据更新—
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-10-04
浏览次数0

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

正在加载星标数据…

技术标签

使用教程

—

难度:入门 约 10 分钟 部署方式:库/依赖 5 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • 可访问互联网,用于打开官网 http://casadi.org 与安装说明页 http://install.casadi.org
  • 确定一种调用语言环境:C++、Python、Matlab/Octave、Julia 或 JavaScript
  • 按实际优化需求准备求解器环境(IPOPT、SUNDIALS、SNOPT 等),README 未给出其安装命令

安装与启动步骤

  1. 1打开项目官网

    访问 http://casadi.org,了解 CasADi 的定位与能力,确认是否匹配你的最优控制、轨迹优化等场景。

  2. 2进入安装说明页

    访问 http://install.casadi.org,这是 README 明确给出的安装入口,按你的操作系统与语言选择对应指引。

  3. 3确定语言与求解器

    决定用 C++、Python、Matlab/Octave、Julia 还是 JavaScript 调用,并确认是否需要 IPOPT、SUNDIALS、SNOPT 接口。

  4. 4按官方指引安装

    严格依照 install.casadi.org 上对应平台的步骤安装;README 节选未提供任何可复制的安装命令。

  5. 5跑通最小示例

    安装后回到官网查看文档与示例,用符号变量写一个最简单的问题验证环境是否可用。

如何确认成功

能成功加载 CasADi 并跑通官网示例即视为可用;README 未给出具体验证命令,请以安装说明页为准。

常见问题

Q:README 里为什么没有安装命令?

A:节选内容只指向官网与安装说明链接,具体安装命令需到 http://install.casadi.org 查看,本教程不做臆测。

Q:CasADi 支持哪些调用语言?

A:支持 C++、Python、Matlab/Octave、Julia 和 JavaScript 多语言调用,可按团队技术栈选择其一。

Q:需要自己额外安装优化求解器吗?

A:CasADi 内置与 IPOPT、SUNDIALS、SNOPT 等求解器的接口,具体依赖与安装方式以官方安装说明为准。

Q:能否导出不依赖框架的代码?

A:可以,CasADi 支持把生成的导数代码导出为自包含的 C 代码,适合嵌入式与实时优化场景。

注意事项

  • 本教程依据 README 节选整理,节选未含安装命令,所有安装操作请以 http://install.casadi.org 为准。
  • 项目官网 http://casadi.org,GitHub 仓库 https://github.com/casadi/casadi,建议以官方文档为最终依据。

核心亮点

  • 稀疏矩阵计算图上的前向/反向自动微分,适合大规模动态优化
  • 可生成自包含 C 代码,便于嵌入式与实时部署
  • 统一接口对接 IPOPT、SUNDIALS 等主流求解器,多语言可用

不足之处

  • 学习曲线较陡,符号建模与求解器配置需要一定优化背景
  • 文档分散,部分高级功能示例较少,社区规模中等

适用场景

  • 机器人轨迹优化与最优控制
  • 模型预测控制(MPC)在线求解
  • 动态系统参数估计与微分方程伴随计算

替代项目

PyTorch、JAX

项目介绍

casadi 是基础设施领域的开源项目,由 casadi 开发,2012 年首次发布。

在全站 13,635 个收录项目中,它的 GitHub 星标数(2,304)位列前 30%,在基础设施分类中处于中上游。

项目目前处于活跃维护状态,最近一次代码更新于 2026-10-02。开源免费(LGPL)。

它主要面向的使用场景是:机器人轨迹优化与最优控制。同类可对比的替代方案包括 PyTorch、JAX。

上一篇:pooled

下一篇:没有了!

同类项目推荐

freebuff-proxy 开源

聚合多账号,一键接入 OpenAI 兼容 API,轻松管理会话。

[DEPRECATED / UNMAINTAINED] No longer maintained.

★ 303 2026-08-20
microduck 开源

用 Rust 造一只会走路的桌面小鸭,快速上手双足机器人。

A Tiny biped duck robot

★ 9093 2026-09-10
soperator 开源

用 Kubernetes 原生方式运行 Slurm,简化 HPC 集群管理。

Run Slurm in Kubernetes

★ 442 2026-08-10
ollama 开源

一条命令本地跑起大模型,免费、私密、不卡顿

Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other···

★ 182097 2026-08-09