2015-07-17 Optimisation avec contraintes, cvxopt, pulp, NLopt, …

Mon premier réflexe pour faire de l’optimisation avec contrainte était de me tourner vers cvxopt, de trouver la fonction qui correspondait à mon problème puis à renseigner construire les différentes matrices.

Le module pulp est plus intuitif dans la manière de définir le problème. On a quasiment plus besoin de lire la documentation mais pour une utilisation occasionnelle. Je suggère la lecture de ces deux articles :

Cette approche est très proche de celle proposée par cvxpy. La logique est la même, la syntaxe de cvxpy utilise des méthodes, celle de pulp des opérateurs.

Il exite d’autres options comme picos et encore d’autres proposées à Python optimization frameworks. Pour le non linéaire, il faut voir avec nlopt.