Catalog & where to start¶
Interactive demo
New here? Open the mobile demo hub: explore the representation (status quo — a clickable typed graph of a real catalog formulation) or try the model configurator (vision — compose a model and export it as text, PuLP/Gurobi or LaTeX).
Catalog¶
| ID | Family | What it demonstrates |
|---|---|---|
lp_1_1_fixed_sequence |
LP | Fixed-sequence retiming with headway and earliest-departure constraints, makespan-style objective. |
lp_1_5_soft_regularity |
LP | Soft constraints with paired positive/negative slack variables and a weighted-sum objective. |
mip_2_1_big_m |
MILP | Pairwise ordering disjunction encoded with big-M; binary indicators with ne_other and ordered_pair quantifier restrictions. |
mip_2_4_time_indexed |
MILP | Time-indexed assignment with set-packing and capacity constraints; multi-index aggregation. |
mip_2_8_pesp |
MILP | PESP cyclic timetabling with integer wrap variables and modulo bindings. |
multi_obj_lateness_energy |
MILP | First-class objective with explicit weighted-sum combination. |
objective_lex_priority |
LP | Lexicographic objective combination. |
objective_abs_deviation |
LP | Absolute-value operator on objective terms. |
The catalog is in active expansion. Open a new-formulation issue to
propose additions; see add-a-formulation.
Where to start¶
- Data model — the JSON schema and pydantic types.
- Views — schema, hybrid, ground, and when to use each.
- Metrics — what is computed and what it tells you.
- Add a formulation — contributing checklist.
- Design context — why the library exists and the choices that shape it.
- Extraction report — provenance from the source repo.
Architecture decisions¶
ADRs live in adr/. Each significant choice gets one. See
ADR-0001 for the build-tool choice,
ADR-0002 for the internal graph type,
ADR-0003 for the license choice, and
ADR-0004 for the schema versioning
policy.