--- id: cylp version: "0.94.0" license: EPL-2.0 license_treatment: copyleft maintenance: aging --- # cylp — A Python interface for CLP, CBC, and CGL License: copyleft · Maintenance: aging · Downloads: 96.7K/mo ## What it is and what it does CyLP is a Python wrapper around COIN-OR's linear and mixed-integer programming solvers, designed to let you formulate optimization problems in Python and solve them using industrial-strength C++ backends. It supports reading problems from MPS files or building them programmatically using its modeling API, and its distinguishing feature is the ability to inject custom Python code into the solution process—defining cut generators, branch-and-bound strategies, and Simplex pivot rules on the fly. The package depends on numpy and scipy for numerical operations and requires external COIN-OR Cbc binaries to function. Installation is straightforward on Windows and common Linux/macOS configurations via prebuilt wheels, but older platforms or Apple Silicon may require building from source, which adds complexity. It is actively used in research and production settings but has an aging maintenance posture with infrequent releases. Use it for: - Formulate and solve linear and mixed-integer programs with custom branching or cutting-plane strategies embedded in Python. - Read optimization problems from MPS files and solve them, then inspect or modify the solution process interactively. - Build optimization models programmatically using CyLP's modeling API for supply-chain, scheduling, or resource-allocation problems. - Integrate COIN-OR solvers into larger Python applications for convex optimization or other frameworks. - Teach or research advanced techniques like mixed-integer cuts and branch-and-bound customization with a Python-friendly interface. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. CyLP provides a Python interface to COIN-OR's linear and mixed-integer programming solvers (CLP, CBC, CGL), allowing you to model optimization problems and customize the solution process with Python-defined cut generators, branch-and-bound strategies, and pivot rules. Yes, with conditions. CyLP is worth installing if you need to solve linear or mixed-integer programs with customizable solver behavior from Python, and if you can manage the external Cbc dependency. Prebuilt wheels make installation easy on common platforms, but Apple Silicon users and older systems face friction. EPL-2.0 copyleft is acceptable for open-source and research use but requires review for proprietary software. Aging maintenance (254 days since last release) is a minor concern given active production use, but monitor for compatibility issues. No known security vulnerabilities. ## Install pip install cylp uv add cylp poetry add cylp ## Installing cylp Before you install: Medium friction: prebuilt wheels available for Python 3.10–3.14 on Windows, Linux, and macOS x86_64, but Apple Silicon and older platforms may require building from source. Requires COIN-OR Cbc binaries (version 2.10 or earlier) installed separately. Maintenance status is aging—last release 254 days ago, though repository remains active. License in practice: Licensed under EPL-2.0 (copyleft). Derivative works and modifications must be distributed under the same license; proprietary use of modified versions is restricted. Acceptable for research and open-source projects but requires careful review if integrating into closed-source commercial software. Quickstart: pip install cylp from cylp.cy import CyClpSimplex s = CyClpSimplex() s.readMps('problem.mps') s.initialSolve() print(s.objectiveValue) COIN-OR Cbc binaries (version 2.10 or earlier) must be installed separately; on Linux/macOS, typically via system package manager, Homebrew, or conda. Binary wheels on Windows include Cbc; on other platforms, wheel availability depends on Python version and architecture. Verify before relying: - Whether the aging maintenance status (254 days since last release) indicates active development or dormancy relative to project maturity. - Compatibility with Cbc versions newer than 2.10 or whether the stated restriction is a hard blocker. - Performance characteristics and scalability limits for large-scale optimization problems. ## Package facts - License: EPL-2.0 (copyleft) - Python support: unspecified - Install friction: medium - Maintenance: aging - Downloads: 96.7K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags linear programming solver python, mixed-integer programming interface, coin-or cbc python wrapper, optimization modeling library, simplex solver python, branch and bound customization, lp mps file solver, optimization, linear-programming, solver-wrapper [View on SkillFed](https://skillfed.io/packages/cylp) · [View on PyPI](https://pypi.org/project/cylp/)