COPT: a Python library for Constrained OPTimization

https://travis-ci.org/openopt/copt.svg?branch=master https://storage.googleapis.com/copt-doc/doc_status.svg https://coveralls.io/repos/github/openopt/copt/badge.svg?branch=master https://storage.googleapis.com/copt-doc/pylint.svg https://zenodo.org/badge/46262908.svg

Life is too short to learn another API

COPT is an optimization library that does not reinvent the wheel. It packs classical optimization algorithms in an API following that of scipy.optimize. So if you’ve already used that library, you should feel right at ease.

It provides:

Contents

The methods implements in copt can be categorized as:

Proximal-gradient

These are methods that combine the gradient of a smooth term with the proximal operator of a potentially non-smooth term. They can be used to solve problems involving one or several non-smooth terms. Read more …

Frank-Wolfe

Frank-Wolfe, also known as conditional gradient, are a family of methods to solve constrained optimization problems. Contrary to proximal-gradient methods, they don’t require access to the projection onto the constraint set. Read more …

Stochastic Methods

Methods that can solve optimization problems with access only to a noisy evaluation of the objective. Read more ….

Installation

If you already have a working installation of numpy and scipy, the easiest way to install copt is using pip

pip install -U copt

Alternatively, you can install the latest development from github with the command:

pip install git+https://github.com/openopt/copt.git

Where to go from here?

To know more about copt, check out our example gallery or browse through the module reference using the left navigation bar.

Last change: Sep 23, 2020