cuOpt LP/MILP — CLI
Confirmez le type de problème et la formulation (variables, objectif, contraintes, types de variables) avant de coder.
Cette skill est CLI uniquement (entrée MPS).
Utilisation basique
# Résoudre LP ou MILP à partir d'un fichier MPS
cuopt_cli problem.mps
# Avec options
cuopt_cli problem.mps --time-limit 120 --mip-relative-tolerance 0.01
Options courantes
cuopt_cli --help
# Limite de temps (secondes)
cuopt_cli problem.mps --time-limit 120
# Tolérance écart MIP (arrêter quand à X% de l'optimal)
cuopt_cli problem.mps --mip-relative-tolerance 0.001
# Tolérance absolue MIP
cuopt_cli problem.mps --mip-absolute-tolerance 0.0001
# Presolve, limite d'itérations, méthode
cuopt_cli problem.mps --presolve --iteration-limit 10000 --method 1
Format MPS (sections obligatoires, dans l'ordre)
- NAME — nom du problème
- ROWS — N (objectif), L/G/E (contraintes)
- COLUMNS — noms de variables, noms de lignes, coefficients
- RHS — valeurs de droite
- BOUNDS (optionnel) — LO, UP, FX, BV, LI, UI
- ENDATA
Variables entières : utilisez 'MARKER' 'INTORG' avant et 'MARKER' 'INTEND' après les colonnes entières.
Dépannage
- Échec de l'analyse MPS — Vérifiez ENDATA, l'ordre des sections (NAME, ROWS, COLUMNS, RHS, [BOUNDS], ENDATA), les marqueurs entiers.
- Infaisable — Vérifiez les directions de contrainte (L/G/E) et les valeurs RHS.
Exemples
- assets/README.md — Build/run pour fichiers MPS d'exemple
- lp_simple — LP minimal (PROD_X, PROD_Y, deux contraintes)
- lp_production — Planification de production : chaises + tables, bois/main-d'œuvre
- milp_facility — Localisation d'installation avec ouverture/fermeture binaire
Obtenir le CLI
Le CLI est inclus avec le package Python (cuopt). Installez via pip ou conda ; puis exécutez cuopt_cli --help pour vérifier.