concert technology + cplex
DESCRIPTION
Concert Technology + CPLEX. Céline Gicquel Réunion du 10 juin 2009. Modeleurs/solveurs au laboratoire. Concert Technogogy. Installation : Installation Visual Studio 2005 Installation CPLEX (répertoire C:\ILOG) Vérification licence. Concert Technogogy. Mise en œuvre : - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Concert Technology + CPLEX](https://reader036.vdocuments.fr/reader036/viewer/2022082320/56812bae550346895d8fe3d5/html5/thumbnails/1.jpg)
Concert Technology + CPLEX
Céline Gicquel
Réunion du 10 juin 2009
![Page 2: Concert Technology + CPLEX](https://reader036.vdocuments.fr/reader036/viewer/2022082320/56812bae550346895d8fe3d5/html5/thumbnails/2.jpg)
Modeleurs/solveurs au laboratoire
Modeleurs Solveur Remarques
Excel Faible performance
Xpress-IVEVersion étudiante
gratuite de Xpress-MP
AMPL
ILOG CPLEX
Version 11.1
OPL
Concert TechnologyBesoin de Visual
Studio 2005
COIN-OR : projets FLOPC++ ou
GAMSlinkCOIN-OR : projet CBC
Logiciel libre
Besoin de Cygwin + Visual Studio 2005
![Page 3: Concert Technology + CPLEX](https://reader036.vdocuments.fr/reader036/viewer/2022082320/56812bae550346895d8fe3d5/html5/thumbnails/3.jpg)
Concert Technogogy
Installation :
1. Installation Visual Studio 2005
2. Installation CPLEX (répertoire C:\ILOG)
3. Vérification licence
![Page 4: Concert Technology + CPLEX](https://reader036.vdocuments.fr/reader036/viewer/2022082320/56812bae550346895d8fe3d5/html5/thumbnails/4.jpg)
Concert Technogogy
Mise en œuvre :
1. Création d’un projet Visual Studio 2005
2. Création d’un fichier source .cpp
3. Modification des propriétés du projet pour le relier aux bibliothèques CPLEX
![Page 5: Concert Technology + CPLEX](https://reader036.vdocuments.fr/reader036/viewer/2022082320/56812bae550346895d8fe3d5/html5/thumbnails/5.jpg)
Concert Technogogy
Mise en œuvre :
1. Création d’un projet Visual Studio 2005
2. Création d’un fichier source .cpp
3. Modification des propriétés du projet pour le relier aux bibliothèques CPLEX
![Page 6: Concert Technology + CPLEX](https://reader036.vdocuments.fr/reader036/viewer/2022082320/56812bae550346895d8fe3d5/html5/thumbnails/6.jpg)
Concert TechnogogyPrototype de code source
#include <ilcplex/ilocplex.h>
void main(){
IloEnv env;
IloModel model(env);
IloNumVarArray x(env, 3);
model.add(IloMaximize(env, x[0] + 2*x[1] + 3*x[2]));
model.add( - x[0] + x[1] + x[2] <= 20);
model.add( x[0] - 3 * x[1] + x[2] <= 30);
IloCplex cplex(model);
cplex.solve();
cout << "Z = " <<cplex.getObjValue() << endl;
cout << " x0 = " <<cplex.getValue(x[0]) << endl;
}
// Librairies CPLEX
// Environnement
// Modèle
// Variables
// Fonction objectif
// Contraintes
// Résolution
// Affichage résultats
![Page 7: Concert Technology + CPLEX](https://reader036.vdocuments.fr/reader036/viewer/2022082320/56812bae550346895d8fe3d5/html5/thumbnails/7.jpg)
Concert TechnogogyUtilisation d’expressions:
N
iii BxA
0
IloNumVarArray x (env, N+1) ;
IloExpr Exemple(env);
for (i=0; i<N+1; i++) {
Exemple += A[i]*x[i];
}
model.add(Exemple<=B);
Pour écrire la contrainte
Tableau de variables à plusieurs dimensionsIloNumVarArray2 x (env, N+1) ;
for (i= 0; i <N+1; i++) { x[i]=IloNumVarArray(env,T+1);
}
Pour définir des variables
itx
![Page 8: Concert Technology + CPLEX](https://reader036.vdocuments.fr/reader036/viewer/2022082320/56812bae550346895d8fe3d5/html5/thumbnails/8.jpg)
ILOG CPLEX Solver
Résolution de programmes linéaires Algorithmes :
Dual simplex, primal simplex
Network optimizer
… « Warm start », utilisation d’une base avancée
Problèmes numériques
Paramètres avec des ordres de grandeurs très différents
![Page 9: Concert Technology + CPLEX](https://reader036.vdocuments.fr/reader036/viewer/2022082320/56812bae550346895d8fe3d5/html5/thumbnails/9.jpg)
ILOG CPLEX Solver
Résolution de programmes linéaires mixtes Déclaration des variables en ILOBOOL ou ILOINT Algorithme : Branch & Bound Paramètrage :
Stratégie d’exploration de l’arbre de recherche Génération automatique de coupes génériques Possibilité de fournir une solution réalisable connue Possibilité de définir une priorité pour le branchement sur les
variables entières Possibilité de définir des coupes « utilisateur »
![Page 10: Concert Technology + CPLEX](https://reader036.vdocuments.fr/reader036/viewer/2022082320/56812bae550346895d8fe3d5/html5/thumbnails/10.jpg)
ILOG CPLEX Solver
Résolution de programmes quadratiques Fonction objectif quadratique Contraintes quadratiques Propriétés de convexité nécessaires