CVXPY Interface
CVXPY is an open source Python-embedded modeling language for convex optimization problems. It lets you express your problem in a natural way that follows the math, which is quite flexible and efficient. This chapter introduces how to use the Cardinal Optimizer (COPT) in CVXPY.
Installation guide
Before calling COPT in CVXPY to solve problem, users need to setup CVXPY and COPT correctly. CVXPY currently supports Python 3.7 and later versions of Python. Users can download Python from Anaconda distribution or Python official distribution . We recommend users install the Anaconda distribution, because it is more user-friendly and convenient for Python novices.
Install via conda
We recommend that users who have installed the Anaconda distribution of Python
use its own conda
tool to install CVXPY. Execute the following commands in
Windows command prompt or terminal on Linux and MacOS:
conda install -c conda-forge cvxpy
Install via pip
Users can also install CVXPY through the standard pip
tool, execute the following
command in Windows command prompt or Linux and MacOS terminal:
pip install cvxpy
Setup CVXPY interface
CVXPY V1.3 and its above versions support calling COPT directly. users need to install and configure COPT in advance and then:
import cvxpy as cp
In CVXPY’s solving function solve
, specify the parameter solver="COPT"
to use the COPT solver to solve:
prob.solve(solver="COPT")
Introduction of features
The CVXPY interface of COPT supports Linear Programming (LP), Mixed Integer Programming (MIP), Convex Quadratic Programming (QP), Second-Order-Cone Programming (SOCP), Semi-definite Programming (SDP), Mixed Integer Convex Quadratic Programming (MIQP) and Mixed Integer Second-Order-Cone Programming (MISOCP), common used parameters are:
verbose
CVXPY builtin parameter, which controls whether to display solving log to the screen. The default value is
False
, which means no log to be displayed.params
This option sets optimization parameters in the form of
key=value
. Please refer to the chapter Parameters for currently supported parameters.