Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
forked fromcvxpy/cvxpy

A Python-embedded modeling language for convex optimization problems.

License

NotificationsYou must be signed in to change notification settings

cvxgrp/cvxpy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build StatusPyPI - downloadsConda - downloadsDiscordCoverageBenchmarksOpenSSF Scorecard

The CVXPY documentation is atcvxpy.org.

We are building a CVXPY community onDiscord. Join the conversation! For issues and long-form discussions, useGithub Issues andGithub Discussions.

Contents

CVXPY is a Python-embedded modeling language for convex optimization problems. It allows you to express your problem in a natural way that follows the math, rather than in the restrictive standard form required by solvers.

For example, the following code solves a least-squares problem where the variable is constrained by lower and upper bounds:

importcvxpyascpimportnumpy# Problem data.m=30n=20numpy.random.seed(1)A=numpy.random.randn(m,n)b=numpy.random.randn(m)# Construct the problem.x=cp.Variable(n)objective=cp.Minimize(cp.sum_squares(A @x-b))constraints= [0<=x,x<=1]prob=cp.Problem(objective,constraints)# The optimal objective is returned by prob.solve().result=prob.solve()# The optimal value for x is stored in x.value.print(x.value)# The optimal Lagrange multiplier for a constraint# is stored in constraint.dual_value.print(constraints[0].dual_value)

With CVXPY, you can model

  • convex optimization problems,
  • mixed-integer convex optimization problems,
  • geometric programs, and
  • quasiconvex programs.

CVXPY is not a solver. It relies upon the open source solversClarabel,SCS,andOSQP. Additional solvers areavailable,but must be installed separately.

CVXPY began as a Stanford University research project. It is now developed bymany people, across many institutions and countries.

Installation

CVXPY is available on PyPI, and can be installed with

pip install cvxpy

CVXPY can also be installed with conda, using

conda install -c conda-forge cvxpy

CVXPY has the following dependencies:

  • Python >= 3.9
  • Clarabel >= 0.5.0
  • OSQP >= 0.6.2
  • SCS >= 3.2.4.post1
  • NumPy >= 1.20.0
  • SciPy >= 1.6.0

For detailed instructions, see theinstallationguide.

Getting started

To get started with CVXPY, check out the following:

Issues

We encourage you to report issues using theGithub tracker. We welcome all kinds of issues, especially those related to correctness, documentation, performance, and feature requests.

For basic usage questions (e.g., "Why isn't my problem DCP?"), please useStackOverflow instead.

Community

The CVXPY community consists of researchers, data scientists, software engineers, and students from all over the world. We welcome you to join us!

  • To chat with the CVXPY community in real-time, join us onDiscord.
  • To have longer, in-depth discussions with the CVXPY community, useGithub Discussions.
  • To share feature requests and bug reports, useGithub Issues.

Please be respectful in your communications with the CVXPY community, and make sure to abide by ourcode of conduct.

Contributing

We appreciate all contributions. You don't need to be an expert in convexoptimization to help out.

You should firstinstallCVXPY from source.Here are some simple ways to start contributing immediately:

If you'd like to add a new example to our library, or implement a new feature,please get in touch with us first to make sure that your priorities align withours.

Contributions should be submitted aspull requests.A member of the CVXPY development team will review the pull request and guideyou through the contributing process.

Before starting work on your contribution, please read thecontributing guide.

Team

CVXPY is a community project, built from the contributions of manyresearchers and engineers.

CVXPY is developed and maintained byStevenDiamond,AkshayAgrawal,Riley Murray,Philipp Schiele,Bartolomeo Stellato,andParth Nobel, with many others contributingsignificantly.A non-exhaustive list of people who have shaped CVXPY over theyears includes Stephen Boyd, Eric Chu, Robin Verschueren,Jaehyun Park, Enzo Busseti, AJ Friend, Judson Wilson, Chris Dembia, andWilliam Zhang.

For more information about the team and our processes, see ourgovernance document.

Citing

If you use CVXPY for academic work, we encourage you tocite our papers. If you use CVXPY in industry, we'd love to hear from you as well, on Discord or over email.

About

A Python-embedded modeling language for convex optimization problems.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++72.3%
  • Python26.0%
  • C1.6%
  • Makefile0.1%
  • Shell0.0%
  • SWIG0.0%

[8]ページ先頭

©2009-2025 Movatter.jp