.. _related_projects: Related Projects ================ CVXPY is part of a larger ecosystem of optimization software. We list here the optimization packages most relevant to CVXPY users. Modeling frameworks ------------------- - `CVXPYgen `_ is a library that takes a convex optimization problem family modeled with CVXPY and generates a custom solver implementation in C. - `cvxpylayers `_ is a library that converts CVXPY problems into differentiable PyTorch and TensorFlow 2.0 layers. - `DCCP `_ is a CVXPY extension for modeling and solving difference of convex problems. - `DMCP `_ is a CVXPY extension for modeling and solving multi-convex problems. - `NCVX `_ is a CVXPY extension for modeling and solving problems with convex objectives and decision variables from a nonconvex set. - `osmm `_ is a Python package for optimization problems that arise in stochastic optimization, which is built on PyTorch and CVXPY. - `SnapVX `_ is a Python-based convex optimization solver for problems defined on graphs. - `CVX `_ is a MATLAB-embedded modeling language for convex optimization problems. CVXPY is based on CVX. - `Convex.jl `_ is a Julia-embedded modeling language for convex optimization problems. Convex.jl is based on CVXPY and CVX. - `CVXR `_ is a R-embedded modeling language for convex optimization problems. CVXR is based on CVXPY and CVX. - `GPkit `_ is a Python package for defining and manipulating geometric programming (GP) models. - `PICOS `_ is a user-friendly python interface to many linear and conic optimization solvers. Solvers ------- - `OSQP `_ is an open-source C library for solving convex quadratic programs. - `SCS `_ is an open-source C library for solving large-scale convex cone problems. - `ECOS `_ is an open-source C library for solving convex second-order and exponential cone programs. - `CVXOPT `_ is an open-source Python package for convex optimization. - `GLPK `_ is an open-source C library for solving linear programs and mixed integer linear programs. - `PROXQP `_ is an open-source C++ library for solving convex quadratic programs. - `CLARABEL `_ is an open-source Rust library for solving convex cone programs. - `GUROBI `_ is a commercial solver for mixed integer second-order cone programs. - `MOSEK `_ is a commercial solver for mixed integer second-order cone programs and semidefinite programs. - `XPRESS `_ is a commercial solver for mixed integer linear, quadratic, and second-order cone optimization problems.