CuPPy
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, as well as a generic generator for Fenchel-type cuts.
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 and Cbc, which is called via the Python bindings of 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.
(Some) documentation is available here:
https://tkralphs.github.io/CuPPy
Install with
pip install coinor.cuppy
Metadata
Release files for coinor.cuppy 0.96.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| coinor_cuppy-0.96.3.tar.gz | 16.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| coinor_cuppy-0.96.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 38.6 kB
Release files / coinor_cuppy-0.96.3.tar.gz
| Download URL | coinor_cuppy-0.96.3.tar.gz |
|---|---|
| Size | 16.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6d78abce10c7e9da91c4c2cbdd4f5003da669ec32b0aeee05f33f5fd028ab3e8
|
|
BLAKE2b-256 checksum How to use checksums |
c072698fc99028a0f15369fe3fd2a932a7f0efaa140ed7e0e0ac4decac6abdea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / coinor_cuppy-0.96.3-py3-none-any.whl
| Download URL | coinor_cuppy-0.96.3-py3-none-any.whl |
|---|---|
| Size | 21.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
42cbb7173c7edd20a82236ae52aa6fe5a72f5ddbb4af9b5e42ebd3772125033b
|
|
BLAKE2b-256 checksum How to use checksums |
ca99750dd104377ff36eb40fa71d6ba4e0f64f9772359e7558b0db8a46d7ae0f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|