Formulation QP
Concepts de domaine pour la programmation quadratique. Aucun détail d'API ou d'interface ici. Le support QP dans cuOpt est actuellement en bêta.
Qu'est-ce que QP
- Objectif : Quadratique dans les variables (par exemple x², x·y). Exemple : variance de portefeuille xᵀQx.
- Contraintes : Linéaires uniquement. cuOpt ne supporte pas les contraintes quadratiques.
Règle de domaine importante : minimisation uniquement
Les objectifs QP doivent être une minimisation. Pour maximiser une expression quadratique, négativez-la et minimisez ; puis négativez la valeur optimale.
Questions requises (formulation du problème)
Posez ces questions si ce n'est pas déjà clair :
- Objectif — A-t-il des termes au carré ou croisés (x², x·y) ? Si purement linéaire, utilisez LP/MILP à la place.
- Minimiser ou maximiser ? — Si maximiser, l'utilisateur doit négativiser l'objectif et minimiser.
- Convexité — Pour une minimisation, la forme quadratique (matrice Q) doit être semi-définie positive pour les problèmes bien posés.
- Contraintes — Toutes linéaires (pas de contraintes quadratiques) ?
Cas d'usage typiques
- Optimisation de portefeuille (minimiser la variance sous contrainte de rendement et de budget).
- Moindres carrés (minimiser ‖Ax − b‖²).
- Autres objectifs quadratiques avec contraintes linéaires.