Chapitre 1 : Programmation linéaire

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

Programmation linéaire

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

Programmation linéaire

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA

Cours 02 : Problème général de la programmation linéaire

Programmation Linéaire - Cours 1

Optimisation Discrète

Programmation linéaire et Optimisation. Didier Smets

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Chapitre 5 : Flot maximal dans un graphe

Résolution de systèmes linéaires par des méthodes directes

Calcul différentiel sur R n Première partie

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Cours d Analyse. Fonctions de plusieurs variables

Sujet 4: Programmation stochastique propriétés de fonction de recours

Examen optimisation Centrale Marseille (2008) et SupGalilee (2008)

Chapitre 2. Matrices

Optimisation des fonctions de plusieurs variables

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

Exercices - Polynômes : corrigé. Opérations sur les polynômes

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

Différentiabilité ; Fonctions de plusieurs variables réelles

CHAPITRE 5. Stratégies Mixtes

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. address: Nicolas.Thiery@u-psud.fr URL:

3 Approximation de solutions d équations

RECHERCHE OPERATIONNELLE

a et b étant deux nombres relatifs donnés, une fonction affine est une fonction qui a un nombre x associe le nombre ax + b

Calcul intégral élémentaire en plusieurs variables

Fonctions de plusieurs variables

Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples

Formes quadratiques. 1 Formes quadratiques et formes polaires associées. Imen BHOURI. 1.1 Définitions

Théorème du point fixe - Théorème de l inversion locale

CHAPITRE V SYSTEMES DIFFERENTIELS LINEAIRES A COEFFICIENTS CONSTANTS DU PREMIER ORDRE. EQUATIONS DIFFERENTIELLES.

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

Approximations variationelles des EDP Notes du Cours de M2

Théorèmes de Point Fixe et Applications 1

Chapitre 3. Les distributions à deux variables

Correction de l examen de la première session

Condition inf-sup pour l Elément Fini de Taylor-Hood È ¾ -iso-è ½

Analyse en Composantes Principales

Cours de recherche opérationnelle I

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

Corrigé Problème. Partie I. I-A : Le sens direct et le cas n= 2

Cours d analyse numérique SMI-S4

Un K-espace vectoriel est un ensemble non vide E muni : d une loi de composition interne, c est-à-dire d une application de E E dans E : E E E

Problème 1 : applications du plan affine

4. Martingales à temps discret

Lagrange, où λ 1 est pour la contrainte sur µ p ).

3. Conditionnement P (B)

Image d un intervalle par une fonction continue

Ordonnancement robuste et décision dans l'incertain

FIMA, 7 juillet 2005

OPTIMISATION À UNE VARIABLE

Algorithmes pour la planification de mouvements en robotique non-holonome

avec des nombres entiers

Résolution d équations non linéaires

INFO-F Algorithmique 3 et Recherche Opérationnelle

Plus courts chemins, programmation dynamique

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

M2 IAD UE MODE Notes de cours (3)

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

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Simulation de variables aléatoires

Chaînes de Markov au lycée

1 Complément sur la projection du nuage des individus

I. Polynômes de Tchebychev

6 Equations du première ordre

(51) Int Cl.: H04L 29/06 ( ) G06F 21/55 ( )

Chapitre 5. Équilibre concurrentiel et bien-être

Mathématiques appliquées à l'économie et à la Gestion

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES

Juin

FORMULAIRE DE STATISTIQUES

Jean-Philippe Préaux

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

RO04/TI07 - Optimisation non-linéaire

Programmes des classes préparatoires aux Grandes Ecoles

Les indices à surplus constant

Bien lire l énoncé 2 fois avant de continuer - Méthodes et/ou Explications Réponses. Antécédents d un nombre par une fonction

Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre

Prudence, Epargne et Risques de Soins de Santé Christophe Courbage

I - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES

Arbres binaires de décision

Programmation mathématique Discrète et Modèles Linéaires

La classification automatique de données quantitatives

Moments des variables aléatoires réelles

Economie de l incertain et de l information Partie 1 : Décision en incertain probabilisé Chapitre 1 : Introduction à l incertitude et théorie de

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Développement décimal d un réel

Partie 1 - Séquence 3 Original d une fonction

Enjeux mathématiques et Statistiques du Big Data

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

Simulation centrée individus

CHOIX OPTIMAL DU CONSOMMATEUR. A - Propriétés et détermination du choix optimal

Resolution limit in community detection

ANALYSE GÉNÉRALE - PROPOSITION DE CORRIGÉ. Exercice 1

document proposé sur le site «Sciences Physiques en BTS» : BTS AVA 2015

LES MÉTHODES DE POINT INTÉRIEUR 1

Transcription:

Graphes et RO TELECOM Nancy 2A Chapitre 1 : Programmation linéaire J.-F. Scheid v2.1 1

I. Introduction 1) Modélisation En Recherche Opérationnelle (RO), modéliser un problème consiste à identifier: les variables intrinsèques (inconnues) les différentes contraintes auquelles sont soumises ces variables l objectif visé (optimisation). Dans un problème de programmation linéaire (PL) les contraintes et l objectif sont des fonctions linéaires des variables. On parle aussi de programme linéaire. 2

Exemple d un problème de production. Une usine fabrique 2 produits P 1 et P 2 nécessitant des ressources d équipement, de main d oeuvre et de matières premières disponibles en quantité limitée. P 1 P 2 disponibilité équipement 3 9 81 main d œuvre 4 5 55 matière première 2 1 20 P 1 et P 2 rapportent à la vente 6 euros et 4 euros par unité. Quelles quantités (non entières) de produits P 1 et P 2 doit produire l usine pour maximiser le bénéfice total venant de la vente des 2 produits? 3

Variables : x 1 et x 2 sont les quantités des produits P 1 et P 2 fabriqués (x 1, x 2 R). Fonction objectif à maximiser : La fonction objectif F correspond au bénéfice total : F (x 1, x 2 ) = 6x 1 + 4x 2. On cherche donc max [F (x 1, x 2 ) = 6x 1 + 4x 2 ]. (x 1,x 2 ) Contraintes : Disponibilité de chacune des ressources : Positivité des variables: x 1, x 2 0. 3x 1 + 9x 2 81 4x 1 + 5x 2 55 2x 1 + x 2 20 4

En résumé, le problème de production se modélise sous la forme d un programme linéaire : max [F (x 1, x 2 ) = 6x 1 + 4x 2 ]. (x 1,x 2 ) sous les contraintes: 3x 1 + 9x 2 81 4x 1 + 5x 2 55 2x 1 + x 2 20 x 1, x 2 0 5

I. Introduction 2) Résolution graphique (PL à 2 variables) Les contraintes où apparaissent des inégalités correspondent géométriquement à des demi-plans. Intersection de ces demi-plans = ensemble des variables satisfaisant à toutes les contraintes. L ensemble des contraintes est un polygône convexe. 6

x 2 F(x,x )=6x +4x = 1 2 1 2 constante 3x +9x =81 1 2 ( 1,6/4) 10 5 0 optimum 01 0000 1111 0000000 1111111 000000000 111111111 0000000000 1111111111 00000000000 11111111111 000000000000 111111111111 0000000000000 1111111111111 00000000000000 11111111111111 00000000000000 11111111111111 000000000000000 111111111111111 000000000000000 111111111111111 0000000000000000 1111111111111111 0000000000000000 1111111111111111 00000000000000000 11111111111111111 00000000000000000 11111111111111111 5 15/2 10 4x +5x =55 1 2 2x +x =20 1 2 x 1 7

Détermination du maximum de F Fonction objectif F (x 1, x 2 ) = 6x 1 + 4x 2 droite de coefficient directeur ( 1, 6/4). Pour déterminer max F, on fait glisser la droite (translation parallèle à la direction de la droite) du haut vers le bas jusqu à rencontrer l ensemble des variables satisfaisant les contraintes solution optimale (x 1, x 2 ) = (15/2, 5) avec max(f ) = 65. On remarque que le maximum de F est atteint en un sommet du polygône convexe des contraintes. 8

II. Formes générales d un programme linéaire 1) Forme canonique mixte max (x 1,,x n) F (x 1,..., x n ) = c 1 x 1 + c n x n = n c j x j. n contraintes inégalités : i I 1, a ij x j = a i1 x 1 + + a in x n b i j=1 n contraintes égalités : i I 2, a ij x j = b i j=1 contraintes de signes : j J 1, x j 0 j J 2, x j de signe quelconque. I = I 1 I 2 : ens. des indices de contraintes, card(i ) = m m contraintes J = J 1 J 2 : ens. des indices des variables, card(j) = n n variables j=1 9

Notations Vecteurs : x = (x 1,, x n ) R n (les inconnues) c = (c 1,, c n ) R n, b = (b 1,, b m ) R m Matrice A de taille m n : a 11 a 12 a 1n A =... a m1 a m2 a mn 10

2) Forme canonique pure Sous cette forme, pas de contraintes d égalité I 2 = et J 2 =. Un programme linéaire (PL) est dit sous forme canonique pure s il s écrit: ] max [F (x) = c x = c 1 x 1 + c n x n x sous les contraintes : { Ax b x 0 11

3) Forme standard Sous cette forme, I 1 = et J 2 =. Un programme linéaire (PL) est dit sous forme standard s il s écrit: [ ] max F (x) = c x x sous les contraintes : { Ax = b x 0 On dit de plus que le PL est sous forme standard simpliciale si A de taille m n avec m n, se décompose en: ( ) A = I m H I m matrice identité de taille m m H matrice de taille m (n m) 12

Remarque sur la positivité des variables. Sous forme canonique pure ou standard, on impose toujours la positivité des variables x 0. En fait, on peut toujours se ramener au cas x 0 : Si la variable x a une borne inférieure non nulle x l, il suffit de considérer la nouvelle variable y = x l à la place de la variable x et alors on a y 0. S il n y a pas de borne inférieure sur x (variable libre), on peut toujours poser x = y z avec les nouvelles variables y 0, z 0. 13

4) Variables d écarts Proposition Tout PL sous forme standard s écrit de façon équivalente en un PL sous forme canonique pure et inversement. Démonstration. i) Soit un PL sous forme canonique pure. On a Ax b Ax + e = b, e 0 où e = (e 1,, e m ) sont appelées variables d écart. ( ) ( ) { x A I Ax b m = b Ainsi, ( ) e x 0 x 0 e avec à = ( A I m ) matrice de taille m (n + m). { à x = b x 0 14

ii) (Réciproque) Soit un PL sous forme standard. On a Ax = b { Ax b Ax b { Ax b Ax b ( ) ( ) A b x A b Ãx b où Ã est une matrice de taille 2m n et b R 2m. 15

Exemple. Problème de production de l introduction. PL sous forme standard. On introduit 3 variables d écarts e 1, e 2, e 3. max [F (x 1, x 2 ) = 6x 1 + 4x 2 ]. (x 1,x 2,e 1,e 2,e 3 ) sous les contraintes: 3x 1 + 9x 2 + e 1 = 81 4x 1 + 5x 2 + e 2 = 55 2x 1 + x 2 + e 3 = 20 { x1, x 2 0 e 1, e 2, e 3 0 Les inconnues sont désormais x 1, x 2, e 1, e 2, e 3. 16

III. Solutions de base réalisables PL sous forme standard (Ax = b). Hypothèse de rang plein On suppose que la matrice A est de taille m n avec rang(a) = m n. Rappel : rang(a) = nombre maximal de lignes de A linéairement indépendantes (=nombre max. de colonnes linéairement indépendantes). Remarques : Sous l hypothèse de rang plein : le système Ax = b admet toujours des solutions. si m < n, le système Ax = b admet une infinité de solution. si m = n, la solution est unique et vaut x = A 1 b, dans ce cas, il n y a rien à maximiser... Hypothèse non restrictive : si rang(a) < m le système Ax = b n a pas de solution en général. Si rang(a) < m et b Im(A), il y a des équations redondantes qu on peut supprimer. 17

Quelques définitions... Définition (solution réalisable) On appelle solution réalisable tout vecteur x qui satisfait les contraintes du PL i.e. tel que Ax = b et x 0. Définition (variables de base) Soit B {1,, n} un ensemble d indices avec card(b) = m tel que les colonnes A j, j B, de A sont linéairement indépendantes. Autrement dit, la matrice carrée A B formée des colonnes A j, j B, est inversible. On dit que l ensemble B des indices est une base. Les variables x B = (x j, j B) sont appelées variables de base. Les variables x H = (x j, j / B) sont appelées variables hors-base. 18

Remarques. Sous l hypothèse de rang plein, il existe toujours une base non vide. Quitte à renuméroter les indices, on peut toujours écrire les décompositions par blocs : A = (A B A H ) où A H est la matrice formée des colonnes A j, j / B ( ) xb x =. x H Le système Ax = b est équivalent à A B x B + A H x H = b. on peut fixer les variables hors-base et les variables de base sont alors complètement déterminées (la matrice A B est inversible) 19

Définition (solution de base) ( ) xb On dit que x = est solution de base associée à la base B si x H = 0. x H Propriétés des solutions de base réalisables ( ) xb Si x = est une solution de base réalisable alors x H = 0 et x H x B = A 1 B b. Remarque. Il y a au plus Cn m réalisables). solutions de base (toutes ne sont pas 20

Exemple. Problème de production de l introduction. Sous forme standard, le PL s écrit max [F (x 1, x 2 ) = 6x 1 + 4x 2 ]. (x 1,x 2 ) sous les contraintes: 3x 1 + 9x 2 + e 1 = 81 4x 1 + 5x 2 + e 2 = 55 2x 1 + x 2 + e 3 = 20 { x1, x 2 0 e 1, e 2, e 3 0 On a m = 3, n = 5, rang(a) = m = 3. Une base est donnée par 1 0 0 B = {3, 4, 5} avec A B = 0 1 0. La solution de base réalisable 0 0 1 correspondante est x = (x 1, x 2, e 1, e 2, e 3 ) = ( 0, 0, 81, }{{}} 55, {{ 20 } x H ). x B =A 1 B b 21

IV. Propriétés géométriques des solutions de base réalisables On note D R = {x R n Ax = b, x 0}, l ensemble des solutions réalisables d un PL sous forme standard. Définitions (rappels) Un polyèdre Q de R n est défini par Q = {x R n Mx b} où M est une matrice m n. Un ensemble E est dit convexe si x, y E, λx + (1 λ)y E pour tout 0 λ 1. Proposition L ensemble D R des solutions réalisables est un polyèdre convexe, fermé. 22

Exemple. D R = { x R 3 2x 1 + 3 2 x 2 + x 3 = 3, x 1, x 2, x 3 0 } x 3 2 3 01 00 11 00 11 000 111 000 111 000 111 0000 1111 0000 1111 00000 11111 000000 111111 000000 111111 000000 111111 2 0000000 1111111 0000000 1111111 0000000 1111111 000000000 111111111 000000000 111111111 000000000 111111111 0000000000 1111111111 0000000000 1111111111 0000000000 1111111111 00000000000 11111111111 1 00000000000 11111111111 000000000000 111111111111 0000000000000 1111111111111 0000000000000 1111111111111 0000000000000 1111111111111 00000000000000 11111111111111 00000000000000 11111111111111 1 2 00000000000000 11111111111111 0000000000000000 1111111111111111 0000000000000000 1111111111111111 00000000000000 11111111111111 000000000000 111111111111 1 0 0000000000 1111111111 00000000 11111111 00000 11111 000 111 x 2 x 1 23

Caractérisation de l optimum Définition (sommet) Un point x D R est un sommet (ou point extrême) si et seulement s il n existe pas y, z D R, y z tels que x = λy + (1 λ)z avec 0 < λ < 1. Théorème x est une solution de base réalisable si et seulement si x est un sommet de D R. L optimum de la fonction objectif F sur D R, s il existe, est atteint en au moins un sommet de D R. Tout se passe donc avec les solutions de base : pour résoudre un PL sous forme standard, il suffit de se restreindre aux solutions de base réalisables (les sommets de D R ). 24

3 situations possibles : 1 D R = : le PL n a pas de solution. 2 D R mais la fonction objectif F n est pas majorée sur D R : le maximum de F vaut + (cas exclu si D R est borné). 3 D R et la fonction objectif F est majorée sur D R : le PL admet une solution optimale (non nécessairement unique). Remarque. Au plus Cn m solutions de base réalisables. Pour déterminer une solution de base, on doit résoudre A B x B = b. Une méthode directe de type Gauss/LU requière de l ordre de O(m 3 ) opérations. Exploration exhaustive de toutes les solutions de base (comparaison des coûts correspondants) : O(m 3 C m n ) opérations. Ce nombre est vite très grand avec n et m. Par exemple, avec n = 20 et m = 10, on a 3 10 8 opérations. Méthode du simplexe : on explore seulement les sommets qui permettent d augmenter la fonction objectif on réduit le nombre de solution de base à explorer. 25