Outils et Logiciels d Optimisation - Cours 2



Documents pareils
La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

LES TYPES DE DONNÉES DU LANGAGE PASCAL

Algorithmique et Programmation, IMA

Programmation Linéaire - Cours 1

Logiciel de Base. I. Représentation des nombres

DE LA CAMÉRA SOMMAIRE

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Les chaînes de caractères

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Codage d information. Codage d information : -Définition-

Corrigé des TD 1 à 5

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Chapitre 7 : Intégration sur un intervalle quelconque

DE LA CAMÉRA SOMMAIRE

Informatique Générale

Raisonnement par récurrence Suites numériques

Débuter avec EXPRESS. Alain Plantec. 1 Schema 2

La fonction exponentielle

STAGE IREM 0- Premiers pas en Python

FIMA, 7 juillet 2005

Introduction à MATLAB R

Algorithme. Table des matières

Initiation à la Programmation en Logique avec SISCtus Prolog

Simulation de variables aléatoires

Méthodes de quadrature. Polytech Paris-UPMC. - p. 1/48

TP 1. Prise en main du langage Python

Introduction au Système d Exploitation Unix/Linux

Prototypage et évaluation de performances d un service de traçabilité avec une architecture distribuée basée sur Hadoop

Programmation linéaire

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

Relation d ordre. Manipulation des relations d ordre. Lycée Pierre de Fermat 2012/2013 Feuille d exercices

FORMATION CONTINUE SUR L UTILISATION D EXCEL DANS L ENSEIGNEMENT Expérience de l E.N.S de Tétouan (Maroc)

Série D65/D75/D72 Afficheurs digitaux modulaires

UE Programmation Impérative Licence 2ème Année

Dualité dans les espaces de Lebesgue et mesures de Radon finies

GUIDE UTILISATEUR ENVOYEZ ET RECEVEZ VOS SMS PAR

F7n COUP DE BOURSE, NOMBRE DÉRIVÉ

Application de K-means à la définition du nombre de VM optimal dans un cloud

Mémo d utilisation de ADE-4

= constante et cette constante est a.

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Le théorème de Perron-Frobenius, les chaines de Markov et un célèbre moteur de recherche

Premiers pas avec Mathematica

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

Logique : ENSIIE 1A - contrôle final

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Cours de Probabilités et de Statistique

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

Définition des Webservices Ordre de paiement par . Version 1.0

SAISIE DES NOTES DE BAS DE PAGE et BIBLIOGRAPHIE MEMO RÉSUMÉ. Norme AFNOR Z NF ISO 690. Dernière édition : octobre 2011

Séminaire TEST. 1 Présentation du sujet. October 18th, 2013

MT940-MultiLine. Formats. Version 3.02 du 17/01/2013. Sommaire: Extraits de compte (Formats utilisés) 2

Developing an alternative scenario in a case study for a single country. Mise en œuvre un scénario alternatif pour une étude de cas pour un seul pays

Rappels Entrées -Sorties

Le signal GPS. Les horloges atomiques à bord des satellites GPS produisent une fréquence fondamentale f o = Mhz

Analyse stochastique de la CRM à ordre partiel dans le cadre des essais cliniques de phase I

L informatique en BCPST

Une version javascript sera disponible directement dans le cours prochainement.

Approche d'évaluation pour les problèmes d'ordonnancement multicritères : Méthode d'agrégation avec direction de recherche dynamique

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

Principe de symétrisation pour la construction d un test adaptatif

Représentation d un entier en base b

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

Une variable binaire prédictrice (VI) et une variable binaire observée (VD) (Comparaison de pourcentages sur 2 groupes indépendants)

BTS Groupement A. Mathématiques Session Spécialités CIRA, IRIS, Systèmes électroniques, TPIL

Calcul Formel et Numérique, Partie I

Dérivation : cours. Dérivation dans R

Chap III : Les tableaux

Bernard HAMM, Évelyne LAVOISIER

La mesure de Lebesgue sur la droite réelle

GENERALITES Sélection du fichier... 7 TRANSFERT DES ECRITURES... 8

Optimisation SQL. Quelques règles de bases

Programmation linéaire et Optimisation. Didier Smets

Plateforme PAYZEN. Définition de Web-services

Algorithmique des Systèmes Répartis Protocoles de Communications

1 Introduction au codage

Présentation du langage et premières fonctions

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours

Fondements de l informatique Logique, modèles, et calculs

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Les suites numériques

Exercices Corrigés Premières notions sur les espaces vectoriels

Le prototype de la fonction main()

MATHS FINANCIERES. Projet OMEGA

Image d un intervalle par une fonction continue

Présentation Serveur Apache et pour RePeGlio

Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires

IFT2880 Organisation des ordinateurs et systèmes

Réf. : Normes : ST.10/C page : NORME ST.10/C PRÉSENTATION DES ÉLÉMENTS DE DONNÉES BIBLIOGRAPHIQUES. Note du Bureau international

Protocoles DHCP et DNS

2014/2015. Rapport 4 REALISE PAR : ISMAIL NAIT ABDELLAH OUALI SOUFIANE HOURRI MOHAMED OUSSAFI ENCADRE PAR : MME L.LAMRINI ANOUAR OUFQIR SMARTSIR

ADAPT: un modèle de transcodage des nombres. Une application des systèmes de production au développement

Processus aléatoires avec application en finance

Cours d initiation à la programmation en C++ Johann Cuenin

Résolution de noms. Résolution de noms

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

Créer une base de données

Chapitre 10 Arithmétique réelle

Transcription:

Outils et Logiciels d Optimisation - Cours 2 P. Pesneau pierre.pesneau@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 - Bur 256

Format propriétaire de CPLEX Assez peu utilisé par les autres logiciels d optimisation Format utilisé par CPLEX Interactive Optimizer pour rentrer un problème. Permet de définir un problème, mais pas l algorithme de résolution à utiliser. Facile à lire pour l utilisateur. Pas vraiment optimisé en taille de fichier

Règles et syntaxe Le format n est pas sensible à la casse (majuscule = minuscule). Commentaires : Tout texte suivant le caractère \ est considéré comme un commentaire. La zone de commentaire s arrête quand on passe à une nouvelle ligne. Noms : Chaque variable sera représentées par son nom. On peut aussi (facultatif) nommer l objectif et les contraintes. Contient au plus 255 caractères alphanumériques (a-z, A-Z, 0-9) ou l un des symboles! # $ % & ( ),.;? { } Eviter de commencer les noms par un e ou E pour éviter les confusions avec la notation exponentielle.

Règles et syntaxe Mots Clés : Chaque mot-clé doit commencer une ligne et est séparé du reste par au moins un espace (ou retour à la ligne). Maximize, Minimize, Maximum, Minimum, Max, Min : permettent de définir le sens d optimisation. Ils sont suivi par la fonction objectif Subject To, Such That, s.t., st : Introduit la section des contraintes. Bounds : Introduit la section où l on définit les bornes sur les variables. General, Generals, Gen : Les variables qui suivent ce mot-clés seront considérées comme entières. Binary, Binaries, Bin : Idem pour les variables binaires. End : Tout problème se finit par ce mot-clé.

Règles et syntaxe Objectif : Commence par le mot-clé définissant le sens d optimisation. Suivi simplement d une expression : [nom:] 1x1 + 2 x2 + z. Contraintes La section de contraintes commence par le mot-clé adéquate. Chaque contrainte à la forme suivante : [nom:] exp linéaire sens coefficient Sens possibles : <, <=, =<, >, >=, =>, =. Les trois premiers sont considéré comme, les trois suivants comme et le dernier comme =.

Règles et syntaxe Les lignes sont limitées à 560 caractères. On peut écrire l objectif et chaque contrainte sur plusieurs lignes. Ne pas couper un nom de variable ou un mot-clé pour changer de ligne. On peut mettre des espaces où on veut, sauf au milieu des noms et des mot-clès.

Exemple Maximize obj: x1 + 2 x2 + 3 x3 + x4 Subject To c1: - x1 + x2 + x3 + 10 x4 <= 20 c2: x1-3 x2 + x3 <= 30 c3: x2-3.5 x4 = 0 Bounds 0 <= x1 <= 40 2 <= x4 <= 3 General x4 End

Standard largement utilisé par les logiciels d optimisation. Les données sont spécifiées par colonnes (variables). Rend le format assez difficile à lire directement. Chaque variable, contrainte et objectif est référencé par un nom.

Sections Un fchiers.mps se décompose en plusieurs sections : NAME : Nom du problème OBJSENSE : sens d optimisation OBJNAME : nom de l objectif ROWS : noms et sens de chaque contrainte COLUMNS : noms et coefficients des variables dans chacune des contraintes RHS : coefficients du membre de droite de chaque contrainte RANGES : bornes pour les contraintes limitées par un intervale BOUNDS : bornes sur les variables ENDATA : signale la fin du problème

Champs Chaque ligne est divisée en 6 champs : Champ 1 Champ 2 Champ 3 Champ 4 Champ 5 Champ 6 Indicateur Nom Nom Valeur Nom Valeur Les noms sont limités à 255 caractères. Tous les caractères ASCII sont autorisés pour les noms sauf l espace. Les nombres sont limités à 25 caractères. Le premier champ doit commencer en colonne 1 ou 2. Commentaires : * dans le champ 1.

Objectif Par défaut : Minimiser la première contrainte libre. OBJSENSE : Champ 2 : MAX ou MIN les autres champs sont vides OBJNAME : Champ 2 : nom de la contrainte libre servant d objectif. les autres champs sont vides

ROWS Chaque ligne correspond à une contrainte Champ 1 : Sens de la contrainte : N : contrainte libre G : contrainte L : contrainte E : contrainte = Champ 2 : nom de la contrainte les autres champs ne sont pas utilisée

COLUMNS Chaque ligne va contenir pour une variable donnée jusqu à deux coefficients non nul dans des contraintes. plusieurs lignes peuvent être nécessaire pour une variable. Champ 1 : Vide Champ 2 : nom de la variable Champ 3 : nom d une contrainte Champ 4 : valeur de la variable dans la contrainte précédente Champ 5 (opt) : nom d une contrainte Champ 6 (opt) : valeur de la variable dans la contrainte précédente

RHS Champ 1 : Vide Champ 2 : identificateur rhs Champ 3 : nom d une contrainte Champ 4 : valeur du membre de droite de la contrainte précédente Champ 5 (opt) : nom d une contrainte Champ 6 (opt) : valeur du membre de droite de la contrainte précédente

BOUNDS Champ 1 : Type de borne : LO : borne inférieure UP : borne supérieure FX : valeur fixée FR : variable libre MI : PL : + BV : variable binaire (Champ 4 : 1, 0 ou vide) LI : borne inf variable entière UI : borne sup variable entière Champ 2 : identificateur BOUND Champ 3 : nom d une variable Champ 4 : valeur de la borne les autres champs ne sont pas utilisés

Exemple NAME ROWS N obj L c1 L c2 E c3 COLUMNS x1 obj -1 c1-1 x1 c2 1 x2 obj -2 c1 1 x2 c2-3 c3 1 x3 obj -3 c1 1 x3 c2 1 x4 obj -1 c1 10 x4 c3-3.5 RHS rhs c1 20 c2 30 BOUNDS UP BOUND x1 40 LI BOUND x4 2 UI BOUND x4 3 ENDATA

Cplex interactive optimizer Présentation en live!