Skip to main content
Join the official 2020 Python Developers SurveyStart the survey!

Cutting Plane Methods in Python (CuPPy)

Project description

A collection of ‘naive’ implementations of basic cutting plane algorithms in Python. The collection contains a generator for Gomory Mixed Integer cuts and one for generating the most violated split cut using the method of Saxena and Balas.

The idea is for these implementations to be as transparent as possible. I intend them mainly for educational use. They will most certainly not be effective in a real-world environment. Even on small examples, it is easy to run into numerical difficulties.

The underlying solvers are Clp (https://projects.coin-or.org/Clp) and Cbc (https://projects.coin-or.org/Cbc), which is called via the Python bindings of CyLP (https://github.com/coin-or/CyLP). Through CyLP, one can easily add these as cut generators within Cbc.

The cutting plane procedure can be visualized for 2D examples using the polyhedron2D class of GrUMPy (https://github.com/coin-or/GrUMPy).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for coinor.cuppy, version 0.96.2
Filename, size File type Python version Upload date Hashes
Filename, size coinor.cuppy-0.96.2-py3-none-any.whl (22.4 kB) File type Wheel Python version py3 Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page