--- id: daqp version: "0.8.7" license: MIT license_treatment: permissive maintenance: active --- # daqp — DAQP: A dual active-set QP solver License: permissive · Maintenance: active · Downloads: 460.8K/mo ## What it is and what it does DAQP solves convex quadratic programs—optimization problems that minimize a quadratic objective subject to linear and box constraints—using a dual active-set algorithm. It also handles mixed-integer variants where some constraints enforce binary choices. The solver is written in C with no external library dependencies and is designed for embedded and real-time applications; the Python interface wraps this compiled core. You would use DAQP when you need a lightweight, self-contained QP solver for control, robotics, or optimization tasks where standard solvers may be too heavy or their dependencies problematic. It trades generality for speed and portability—it handles the standard QP form well but is not a general-purpose nonlinear optimizer. Use it for: - Model predictive control in embedded systems where a fast, dependency-free QP solver is essential. - Real-time optimization in robotics or autonomous systems requiring tight computational budgets. - Mixed-integer quadratic programming for discrete decision problems in scheduling or resource allocation. - Prototyping optimization algorithms in research without heavy solver dependencies. - Integration into applications where solver licensing or footprint is a constraint. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. DAQP is a dual active-set solver for convex quadratic programs, including mixed-integer variants, with a C-based implementation that interfaces to Python. Yes, if you need a lightweight, self-contained quadratic program solver for embedded or real-time use. The MIT license, active maintenance, zero runtime dependencies, and broad platform coverage make it low-risk to adopt. Install only if your problem fits the standard convex QP form; for general nonlinear optimization or exotic constraints, a more general solver may be necessary. ## Install pip install daqp uv add daqp poetry add daqp ## Installing daqp Before you install: Medium install friction due to compiled wheels across multiple platforms. Active maintenance with recent commits and no runtime dependencies simplify integration. License in practice: MIT license permits unrestricted use, modification, and distribution in commercial and private projects with minimal attribution requirements. Quickstart: pip install daqp import daqp # Solve: minimize 0.5*x'*H*x + f'*x subject to l <= x <= u, bl <= A*x <= bu solver = daqp.DAQP() result = solver.solve(H, f, A, l, u, bl, bu) Wheels available for multiple Python versions and platforms; verify your Python version and OS match available distributions. Verify before relying: - Whether Python version support is truly unspecified or implicitly limited by wheel availability. - Performance characteristics and scalability limits for problem size and structure. - Availability and completeness of Python API documentation beyond the linked external docs. - Whether the solver supports warm-starting from previous solutions. ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: medium - Maintenance: active - Downloads: 460.8K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags quadratic programming solver, convex QP solver, mixed-integer quadratic programming, active-set QP, embedded optimization, constrained quadratic optimization, LDL factorization QP, optimization, quadratic-programming, embedded-systems [View on SkillFed](https://skillfed.io/packages/daqp) · [View on PyPI](https://pypi.org/project/daqp/)