CVXlab documentation#

Warning

Beta Release Notice

CVXlab is currently in beta (1.0.1b1). The API may still change before the stable 1.0.1 release. Feedback and bug reports are welcome via GitHub Issues.

CVXlab is an open-source Python package for building convex optimization models from high-level settings, structured data, and symbolic expressions. It combines YAML or Excel-based model setup, SQLite-backed data management, and CVXPY-based numerical solving in one workflow.

Version: 1.0.1b1 Date: Apr 02, 2026

Useful links: PyPI | Source code | Issue tracker

Start here#

Section

What you will find

Installation

How to install CVXlab and verify that the environment is ready.

User Guide

The full modeling workflow, from conceptual model definition to results export.

Tutorials

Worked examples and downloadable materials to learn by running models.

API reference

Technical reference for cvxlab.Model, utilities, operators, constants, and defaults.

Why CVXlab#

  • General-purpose model generator. Build a wide range of convex optimization models.

  • Almost no code required. Define model structure through YAML or Excel templates instead of hand-coding every object.

  • Centralized data management. Organize data in a SQLite database for traceable, reusable data handling.

  • Powerful engine embedded. Build convex and decomposed optimization workflows on top of CVXPY.

Workflow at a glance#

The figure below summarizes the package workflow. The detailed step-by-step explanation is in the User Guide, while runnable examples are collected in the Tutorials.

CVXlab modeling process in a nutshell

Note

CVXlab is developed by Matteo V. Rocco, Associate Professor at SESAM group, Department of Energy, Politecnico di Milano. The project is released under the Apache License 2.0.