Model, solve, and understand optimization problems locally.
An open-source desktop workbench for operations research and educational machine learning.
Website · Download desktop builds · Roadmap · Algorithms
Optees turns mathematical models into an inspectable desktop workflow. Build a model in a guided interface, solve it locally with an appropriate engine, then read an explanation of the result instead of receiving only a number. It is for students learning the methods and for practitioners who need transparent, reproducible optimization tools without sending data to a cloud service.
- Local and private: formulations, datasets, and solver runs stay on the machine. The Modeling Assistant is rule-based and sends no prompt outside the app.
- Educational by design: examples, mathematical explanations, result contracts, diagnostics, and visualizations make assumptions visible.
- Honest result views: an LP optimum, a feasible MILP incumbent, an NLP local numerical candidate, and a predictive ML fit are deliberately not presented as the same kind of guarantee.
- Structured workflows: use the formulation screens or import versioned JSON rather than maintaining ad-hoc scripts for every small model.
- English and Italian: the application, its explanations, and its local assistant support both languages.
Choose a workflow from Linear Optimization, Nonlinear Programming, Graph Theory, or AI & Machine Learning.
More real application screens and platform downloads are available on the Optees website.
| Family | What Optees provides |
|---|---|
| Linear Programming (LP) | Continuous LP through SciPy/HiGHS, feasibility and status reporting, optimal-solution ranges when multiple optima exist, JSON import, and 2D/3D educational views where applicable. |
| Mixed-Integer Linear Programming (MILP) | Continuous, integer, and binary variables through OR-Tools, solver controls, and educational formulation/result views. |
| Knapsack | 0/1, Bounded, Unbounded, Fractional, and Multi-dimensional variants with capacity and item visualizations. |
| Continuous Nonlinear Programming (NLP) | Safe scalar expressions, optional box bounds, BFGS/Nelder-Mead/L-BFGS-B, objective plots, and a clear local-candidate contract. |
| Graph Theory | Dijkstra shortest paths on directed or undirected graphs with finite, non-negative weights, route reconstruction, and graph visualization. |
| Linear Regression | Local OLS and Ridge regression for numeric tables, deterministic train/test splits, residuals, metrics, and a one-feature fit chart. |
| Binary Classification | Local logistic regression for two labels, stratified held-out evaluation, accuracy/precision/recall/F1, confusion matrices, probabilities, and an optional 2D decision boundary. |
| Modeling Assistant | English/Italian local rule-based recommendations for solver families. It drafts validated LP, MILP, Knapsack, Regression, and Binary Classification JSON only from explicit structured data; it never invents observations from prose. |
Prebuilt desktop packages for macOS Apple Silicon, Windows x64, and Linux x86_64
are published on GitHub Releases.
Each release includes SHA256SUMS for verification.
On macOS, current packages are ad-hoc signed because the project does not use an Apple Developer ID. Gatekeeper may require you to explicitly open the app after download. See the release procedure for the precise installation, verification, signing, and tag workflow.
Optees requires Python 3.12 or later.
git clone https://github.com/Pablo-gitub/optees.git
cd optees
conda create -n optees python=3.12
conda activate optees
python -m pip install -e ".[plot]" pytest pytest-qt
python -m optees.mainRun the complete test suite from a source checkout:
PYTHONPATH=src python -m pytest -qThe project keeps executable tests and reference data close to each solver family. LP uses LPnetlib; MILP uses a bounded MIPLIB subset; Knapsack uses Burkardt and OR-Library cases; NLP, regression, classification, and graph workflows use documented analytic or deterministic reference cases. The full source and provenance are described in Datasets and the test strategy in Testing.
Optees is an educational and decision-support tool, not a guarantee that every model is suitable for a consequential real-world decision. In particular:
- NLP returns a local numerical candidate unless a stronger guarantee is explicitly stated.
- Heuristic, global-optimization, clustering, and broader graph workflows are planned rather than advertised as available.
- Regression and classification describe fitted predictive relationships; they do not establish causality, fairness, or future performance.
- Architecture
- Algorithms
- Project roadmap
- Datasets and formats
- Testing strategy
- Release procedure
- Website deployment
Optees is released under the Apache License 2.0.


