INTRODUCTION A L OPTIMISATION



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

Programmation linéaire

Programmation linéaire

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

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

Programmation Linéaire - Cours 1

Programmation linéaire et Optimisation. Didier Smets

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

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

Fonctions de plusieurs variables

3 Approximation de solutions d équations

LES MÉTHODES DE POINT INTÉRIEUR 1

Optimisation des fonctions de plusieurs variables

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

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

Optimisation et programmation mathématique. Professeur Michel de Mathelin. Cours intégré : 20 h

Optimisation Discrète

Cours d Analyse. Fonctions de plusieurs variables

Première partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015

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

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

CONCOURS D ENTREE A L ECOLE DE 2007 CONCOURS EXTERNE. Cinquième épreuve d admissibilité STATISTIQUE. (durée : cinq heures)

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

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

Équations non linéaires

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

Annexe 6. Notions d ordonnancement.

Chapitre 2 Le problème de l unicité des solutions

Correction de l examen de la première session

Résolution d équations non linéaires

Calcul différentiel sur R n Première partie

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

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

M2 IAD UE MODE Notes de cours (3)

Théorèmes de Point Fixe et Applications 1

Chapitre 3. Les distributions à deux variables

RO04/TI07 - Optimisation non-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

Cours d analyse numérique SMI-S4

Chapitre 3. Mesures stationnaires. et théorèmes de convergence

Chapitre VI Fonctions de plusieurs variables

INFO-F Algorithmique 3 et Recherche Opérationnelle

CHAPITRE 5. Stratégies Mixtes

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

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

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

Chapitre 5 : Flot maximal dans un graphe

4.2 Unités d enseignement du M1

Chp. 4. Minimisation d une fonction d une variable

Calcul différentiel. Chapitre Différentiabilité

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

Algorithmes pour la planification de mouvements en robotique non-holonome

La demande Du consommateur. Contrainte budgétaire Préférences Choix optimal

I. Polynômes de Tchebychev

Les indices à surplus constant


Simulation de variables aléatoires

Continuité en un point

TOUT CE QU IL FAUT SAVOIR POUR LE BREVET

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

Analyse en Composantes Principales

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

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

Rappels sur les suites - Algorithme

FIMA, 7 juillet 2005

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

Limites finies en un point

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

Image d un intervalle par une fonction continue

Polynômes à plusieurs variables. Résultant

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

I Stabilité, Commandabilité et Observabilité Introduction Un exemple emprunté à la robotique Le plan Problème...

Catalogue des connaissances de base en mathématiques dispensées dans les gymnases, lycées et collèges romands.

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.

NOTATIONS PRÉLIMINAIRES

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

CCP PSI Mathématiques 1 : un corrigé

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires

IV- Equations, inéquations dans R, Systèmes d équations

Programmation linéaire

Fonctions de plusieurs variables

Travaux dirigés n 1. Programmation linéaire

aux différences est appelé équation aux différences d ordre n en forme normale.

RECHERCHE OPERATIONNELLE

Introduction à l étude des Corps Finis

Cours de recherche opérationnelle I

Les équations différentielles

EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG

OPTIMISATION À UNE VARIABLE

Sites web éducatifs et ressources en mathématiques

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

DOCM Solutions officielles = n 2 10.

Extrait du poly de Stage de Grésillon 1, août 2010

Annexe 1 Programmes des classes préparatoires aux Grandes Ecoles

Dérivées d ordres supérieurs. Application à l étude d extrema.

Model checking temporisé

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE

Transcription:

INTRODUCTION A L OPTIMISATION Les domaines d application L optimisation est essentiellement un outil d aide à la décision au sein de l entreprise, mais aussi pour des individus. Le terme optimal est souvent trompeur. Ce n est pas un jugement de valeur absolu. C est plutôt une information sur l approche méthodologique utilisée. Voici quelques domaines dans lesquels la prise de décision fait couramment appel à la résolution de problèmes d optimisation : CONCEPTION DE NOUVEAUX SYSTEMES dimensionnement, localisation ORGANISATION D ACTIVITES Gestion de ressources Gammes et procédures Rentabilisation des investissements COMMANDE DE SYSTEMES Stabilisation, Suivi de trajectoires SURVEILLANCE, SUPERVISION Detection de dysfonctionnements, diagnostics, réparation, maintenance, remplacement préventif. 1

La formulation d un problème d optimisation L analyse Il s agit tout d abord d identifier un problème par ses composantes, ses enjeux, ses limites. Exemple : un problème de transport Une entreprise de mécanique achète de l acier dans les ports de Marseille et du Havre et le transforme dans ses usines de Paris, Toulouse et Bordeaux. Elle souhaite produire au maximum dans ses trois usines avec un coût minimum. Tel qu il est défini, le problème a 2 objectifs (ou critères) qui peuvent se révéler antagonistes : production maximale vs coût minimal. D autre part, le problème est spécifié de façon incomplète : sur quelle période de production porte le problème? Cette question est liée à la politique et à l organisation de l entreprise : fabrication à la demande, flux tendus, ou production planifiée. Une meilleure spécification du problème doit permettre d identifier les données nécessaires à la résolution du problème. 2

La modélisation L optimisation repose toujours sur des modèles mathématiques. Mais ces modèles sont rarement des modèles physiques complexes. Ils sont généralement simples et partiels. Dans l exemple de transport, on s intéresse uniquement à l aspect achat et utilisation d acier. Quelles sont les quantités d acier nécessaires à la fabrication? Ayant choisi la période de production, on en déduit les quantités d acier nécessaires pour chaque usine. On connait les quantités d acier disponibles à Marseille et au Havre et leur prix. On connait aussi les coûts de transport par tonne d acier. On peut représenter le système par un graphe. 3

QUANTITES DEMANDEES QUANTITES DISPONIBLES PARIS 1 d 1 MARSEILLE c 11 c 21 s 1 1 c 12 TOULOUSE c 13 c 22 2 d 2 LE HAVRE s 2 2 c 23 BORDEAUX 3 d 3 Pour définir le modèle du système, on définit ses variables. Elles caractérisent les décisions à prendre, elles doivent être liées aux données jugées pertinentes du problème. Ici, les variables x ij, représentent les quantités d acier achetées au port i, i = 1, 2 et transformées dans l usine j, j = 1, 2, 3. 4

Les objets mathématiques qui lient les variables entre elles et qui les lient aux données du problème sont appelées contraintes. Le modèle du système s écrit alors : x 11 + x 12 + x 13 s 1 x 21 + x 22 + x 23 s 2 x 11 + x 21 d 1 x 12 + x 22 d 2 x 13 + x 23 d 3 On note ces équations de la façon suivante : 2 i=1 3 j=1 x ij s i pour i = 1, 2 x ij d j pour j = 1,.., 3 Comme l industriel n achètera pas plus que nécessaire, on peut remplacer les contraintes de satisfaction de la demande par : 2 i=1 x ij = d j pour j = 1,.., 3. 5

Le critère à optimiser On connait le prix de la tonne d acier à Marseille et au Havre. On suppose ici que le prix est proportionnel à la quantité achetée, ce qui n est pas toujours vrai. On connait aussi les coûts de transport par tonne d acier sur les différents itinéraires. Le coût unitaire c ij représente la somme du prix de la tonne d acier achetée au port i et du coût de transport par tonne du port i à l usine j. L objectif du problème est de minimiser le coût total tout en assurant l approvisionnement. Il s agit donc du problème de minimisation de la fonction de coût suivante : J = 2 3 i=1 j=1 c ij x ij. 6

La formulation du problème d optimisation Le problème prend la forme suivante : Minimiser J = 2 3 i=1 j=1 c ij x ij sous les contraintes 3j=1 x ij s i pour i = 1, 2 2i=1 x ij = d j pour j = 1,.., 3 x ij 0. Ainsi, la démarche d optimisation consiste à isoler un problème de décision et les données relatives à ce problème. Le problème ainsi abstrait de son contexte est souvent représenté par la théorie des graphes. On cherche ensuite à le formuler comme un problème standard d optimisation et à le résoudre par une technique standard, optimale si possible. 7

Définitions mathématiques Problème d optimisation : c est un problème d analyse fonctionnelle. On cherche l extrêmum d une fonction de n variables sur un domaine appartenant à une variété de R n : Minimiser J = f(x) sous les contraintes g i (x) 0 pour i = 1,.., m x S R n. Les composantes x 1,..., x n de x sont les variables ou inconnues du problème. Critère La fonction objectif et chaque fonction g i définissant une contrainte sont des fonctions de R n sur R. Minimiser f(x) est équivalent à maximiser f(x). On pourra donc toujours se restreindre au cas de la minimisation. 8

Contraintes Toute contrainte{ égalité h(x) = 0 est h(x) 0 équivalente à :. La formulation avec seulement des contraintes h(x) 0 inégalités est donc suffisante. Solutions d un problème: On appelle solution admissible (ou solution) d un problème tout vecteur x S qui satisfait toutes les contraintes du problème. On appelle solution optimale, x, une solution admissible qui minimise f(x) : { x S R n, g i (x ) 0; x S R n, g i (x) 0 pour i = 1,.., m, f(x ) f(x). x 0 est un optimum local du problème s il existe un voisinage V (x 0 ) tel que: x S V (x 0 ), g i (x) 0 pour i = 1,.., m, f(x 0 ) f(x). 9

Elements d Analyse Convexe Combinaison convexe x R n est une combinaison convexe de p points x 1,..., x p de R n s il existe des coefficients k 1,..., k p p p 0, avec k i = 1, tels que x = k i x i. i=1 i=1 Ensembles convexes Un ensemble S R n est convexe si et seulement si: λx + (1 λ)y S x S, y S, λ, 0 λ 1. x x x x x x Ensemble convexe Polyèdre convexe Ensemble non convexe Enveloppe convexe conv(s) Soit S R n. L enveloppe convexe conv(s) est l ensemble des points qui sont combinaisons convexes de points de S Donc, par définition, S R n est convexe si et seulement si: S conv(s). 10

Fonctions convexes Définition Une fonction f, de R n dans R, définie sur S R n convexe est convexe si elle vérifie l inégalité de Jensen : f((1 λ)x + λy) (1 λ)f(x) + λf(y) x S, y S, λ [0, 1]. Théorème Si f est deux fois continûment différentiable, les 3 conditions ci-dessous sont équivalentes: - f est convexe - x S, y S f(y) f(x)+(y x) T f(x) - x S, le hessien 2 f(x) est une matrice semi-définie positive: y S, y T 2 f(x)y 0. 11

Exemple : fonction linéaire f(x) = 2x 1 + x 2 x 3 Gradient : f(x 0 ) = f x 1 (x 0 ) = 2 f x 2 (x 0 ) = 1 f x 3 (x 0 ) = 1. Le gradient est constant. Il est identique en tout point. Hessien : C est la matrice nulle. Une fonction linéaire est convexe et concave au sens large. La minimisation d une fonction linéaire sans contraintes n a pas de sens. Ou plutôt elle donne toujours. 12

Complexité des Algorithmes Notion de Complexité Pour tout algorithme d optimisation globalement convergent, il est toujours possible de trouver une valeur ɛ-approchante de la solution optimale en un nombre fini d itérations. Mais ce nombre peut être extrêmement grand. L étude de la complexité des algorithmes vise à exprimer le nombre d opérations, T (ou le temps d exécution sur ordinateur) et l encombrement mémoire, E, nécessaires en fonction du nombre de variables, n, et du nombre de contraintes, m, du problème. On parle de complexité expérimentale liée à la machine et au langage de programmation utilisés et de complexité théorique, qui caractérise uniquement l algorithme. Définition de la Complexité Si pour un algorithme donné, k, h R, f, gn 2 N, n 0, m 0 N ; { T (n, m) kf(n, m) n n 0, m m 0, E(n, m) hg(n, m) alors cet algorithme est dit de complexité O(f(n,m)) en temps de calcul et O(g(n,m)) en encombrement mémoire., 13

Complexité des Algorithmes Note: En général, on s intéresse principalement à l effet du nombre de variables, n, sur la taille du problème, et l on considère les performances asymptotiques des algorithmes, en négligeant le termes de degré inférieur. Exemple: Temps de calcul fonction du type n 2 + 2 20 n + 2 30. C est une complexité du type O(n 2 ), même si le terme en n 2 n est prépondérant que pour n > 2 20. Complexités courantes : en O(nlog(n)), polynomiale en O(n k ), exponentielle en O(2 n ). 14

Problèmes NP-complets On distingue habituellement: Les problèmes dits faciles, qui peuvent être résolus par des algorithmes de complexité polynomiale Les problèmes dits ardus ou difficiles qui ne peuvent pas être résolus par des algorithmes de complexité polynomiale. La classe des problèmes dits N P-complets qui sont de complexité équivalente et non polynomiale. A tout problème d optimisation, on associe le problème de décision (DE), d existence d une solution, plus facile à résoudre a priori. On classe les problèmes ardus selon la complexité de leur problème de décision (DE) associé: Le problème est de classe P si (DE) est de complexité polynomiale Le problème est de classe N P si (DE) est ardu. La classe des problèmes N P-complets est incluse dans la classe N P. Le problème est de classe N P-ardu si (DE) est N P-complet. La plupart des problèmes combinatoires, même l un des plus simples, le problème du sac à dos, sont N P- ardus. 15

PROGRAMMATION LINEAIRE Définitions et Propriétés de base Forme générale La forme générale d un problème d optimisation est la suivante: Minimiser f(x) sous g i (x) = 0 i I 0 contraintes égalité g i (x) 0 i I contraintes inégalité g i (x) 0 i I + contraintes inégalité x = [x 1,..., x n ] T 0 Dans le cas d un problème linéaire, f, g i sont des fonctions linéaires des variables x 1,..., x n. Les fonctions linéaires sont convexe au sens large. Si le domaine des contraintes est convexe, le problème de minimisation d une fonction linéaire est convexe, et le problème de minimisation de la fonction opposée est lui aussi convexe. 16.

Forme standard Il est à noter qu en l absence de contraintes, la solution d un problème linéaire est nonbornée. C est s il s agit d une minimisation. Il n est pas restrictif de supposer les variables non-négatives. Toute variable réelle, r, peut en effet se décomposer en : r = r + r avec r + et r non-négatives. Un problème linéaire est sous forme standard si toutes les contraintes, à l exception de contraintes de non-négativité, sont des contraintes égalité. Cette forme standard est obtenue en introduisant des variables d écart dans toutes les contraintes inégalité. 17

La forme standard est donc la suivante : Minimiser z = cx sous Ax = b x 0. avec n = nombre de variables, m = nombre de contraintes, A = matrice réelle m n (matrice des contraintes) c = [c 1,..., c n ] =vecteur-ligne des coûts, b = [b 1,..., b m ] T =vecteur-colonne des seconds membres, z = cx est la fonction objectif, ou critère à minimiser. On peut toujours supposer rang(a) = m, car sinon il y a soit des contraintes redondantes soit des contraintes incompatibles. 18

Exemple de problème linéaire: Constitution d une flotte d avions Une compagnie aérienne cherche à se constituer une nouvelle flotte d avions pour couvrir de nouvelles destinations. Des voyages long courrier, pour lesquels la demande estimée est D L, Des voyages à distance moyenne, pour lesquels la demande estimée est D M, Des voyages courte distance, pour lesquels la demande estimée est D C. Pour satisfaire ces demandes, la compagnie envisage d acquérir Des gros porteurs en quantité x 1, au coût unitaire c 1, Des moyens porteurs en quantité x 2, au coût unitaire c 2, Des petits avions en quantité x 3, au coût unitaire c 3. L objectif de la compagnie est de satisfaire la demande estimée en minimisant les coûts totaux d investissement et d exploitation, en valeur actualisée, sous une contrainte budgétaire. 19

Le problème peut être formulé ainsi: Minimiser 3 i=1 c i x i 3i=1 a i x i D L sous 3i=1 b i x i D M. 3i=1 d i x i D C a i, b i, d i sont les contributions unitaires des trois types d avions aux trois types de besoin. La contrainte budgétaire s écrit: 3 i=1 c i x i B Pour chaque type d avions, il existe une borne supérieure aux nombres disponibles: 0 x i L i, i = 1, 2, 3. Ce problème a des contraintes supplémentaires : ses variables x 1, x 2, x 3 doivent être entières. On parle de problème linéaire en variables entières. 20

Mise sous forme standard On introduit les variables d écart pour transformer les contraintes inégalité en contraintes égalité : Minimiser 3 i=1 c i x i 3i=1 a i x i y L = D L 3i=1 b i x i y M = D M sous 3i=1 d i x i y C = D C 3i=1 c i x i + Y B = B x i + y i = L i, i = 1, 2, 3 y L, y M, y C, y B, y i, x i 0, i = 1, 2, 3.. 21

Polyèdres convexes Définition Un ensemble de la forme X = {x Ax = b, x 0} est un polyèdre convexe de R n. Un polyèdre borné est appelé un polytope. Définition : face Une face du polyèdre convexe X est définie comme l ensemble des points qui minimisent une fonction linéaire sur X :{x f x f X, cx f = max X (cx). Définition : point extrême Un point extrême d un polyèdre convexe est un point que l on ne peut pas exprimer comme combinaison convexe des autres points. C est une face minimale du polyèdre, c est à dire une face qui ne contient aucune autre face. 22

Bases Définition On appelle base toute sous-matrice carrée m m régulière de A. Soit B une base. En permutant les colonnes de A, on peut mettre A sous la forme : A = [B, N] De même, on partitionne x = [x T B, xt N ]T et c = [c B, c N ]. Les variables de x B sont dites variables de base, celles de x N variables horsbase. Une solution admissible du problème linéaire satisfait : Ax = b avec x 0, ce que l on réécrit : Bx B + Nx N = b. 23

Solution de base On appelle solution de base la solution particulière obtenue en faisant x N = 0.. x B est alors déterminé de façon unique par : x B = B 1 b. Une solution de base est admissible si x B 0, c est à dire si : B 1 b 0. Une base est dite dégénérée si le vecteur x B = B 1 b a des composantes nulles. 24

Caractérisation algébrique des points extrêmes Théorème L ensemble des points extrêmes d un polyèdre convexe X = {x Ax = b, x 0} correspond à l ensemble des solutions de base réalisables. Corollaires - Tout polyèdre convexe a un nombre fini de points extrêmes. - Tout point d un polytope est une combinaison convexe de ses points extrêmes. Théorème L optimum du problème linéaire est atteint en au moins un point extrême. S il est atteint en plusieurs points extrêmes, il est atteint sur tout point de la face contenant les points extrêmes optimaux. 25

Caractérisation des bases optimales Décomposition du critère z = cx = c N x N + c B x B. En effectuant le changement de variable : x B = B 1 b B 1 Nx N on peut exprimer z en fonction de x N : z = (c N c B B 1 N)x N + c B B 1 b. Définition Multiplicateurs du simplexe : π = (π 1,..., π m ), défini par : π = c B B 1. Théorème Une CNS pour que B soit une base réalisable optimale est, en l absence de dégénérescence: c N 0 avec c N = c N πn = c N c B B 1 N. Les composantes c j du vecteur c N sont appelées les coûts réduits des variables horsbase. Les coûts réduits des variables de base sont nuls. 26

Démonstration: Suffisance: Soit x = [x T B, xt N ]T une solutions quelconque (pas forcément de base) et z le critère associé. z = (c N c B B 1 N)x N +c B B 1 b = c N x N +πb. Si de plus c N 0, le minimum de z(x) est obtenu pour x N = 0, c est à dire pour la solution de base Nécessité S il existe une variable hors-base telle que c s < 0, il suffit pour diminuer la valeur du critère à partir de la solution de base [B 1 b, 0] de fixer à une valeur très petite x s, ce qui est toujours possible si la base n est pas dégénérée. C est en fait le principe d itération de la méthode du simplexe. 27

Exemple Maximiser x1,x 2 z = x 1 + 2x 2 sous x 1 + x 2 2 x 2 1 et x 1, x 2 0 Il est immédiat de reformuler ce problème comme un problème de minimisation et de le mettre sous la forme standard : Minimiser x1,x 2 z = x 1 2x 2 sous x 1 + x 2 + x 3 = 2 x 2 + x 4 = 1 et x 1, x 2, x 3, x 4 0 Voici une description graphique de ce problème. Chaque sommet du polyèdre des solutions admissibles correspond à une solution de base. Les variables de base sont indiquées en chaque sommet. 28

x 2 2 ( x 2, x 3 ) ( x 1, x 2 ) 1 ( x 3, x 4 ) ( x 1 0 1, x 4 ) 2 x 1 Polyèdre des solutions admissibles 29

Résolution des problèmes linéaires Minimiser z = cx sous { Ax = b x 0. L algorithme primal du simplexe 1- Base initiale réalisable B 0, k = 0. Critère d admissibilité satisfait : B 0 1 b 0. 2- Pour k, le critère d admissibilité, B 1 b 0 doit rester satisfait. Calculer : b = B 1 b, π = c B B 1, c N = c N πn, Ā = B 1 A 3- Si c N 0, STOP, optimum atteint (critère d optimalité). Sinon, choisir s tel que c s 0. En pratique, on choisit le coût réduit le plus négatif. Cette variable entre en base. 4- Pivot. Soit Ā s la colonne s de Ā. Si Ā is 0 i optimum non borné. Sinon, la variable associée à Min b i Ā is sort de base. Sa valeur devient nulle. Construire la nouvelle base, B et aller en 2- Interprétation géométrique : cheminement sur les points extrêmes Interprétation algébrique : suite de bases adjacentes. 30

Le théorème de convergence finie Sous l hypothèse de non-dégénérescence, la convergence est garantie en un nombre fini d itérations, car il y a un nombre fini de points extrêmes. Problèmes de dégénérescence C est le cas où b i = 0. On ne peut pas augmenter la valeur de la variable entrant en base. Dans ce cas, il suffit de changer de règle de sélection de la variable entrante. Complexité algorithmique La complexité de l algorithme du simplexe est théoriquement exponentielle. En pratique, la méthode nécessite généralement de m à 3m itérations. C est une méthode très efficace, qui permet de traiter des problèmes de l ordre de 100000 variables, 100000 contraintes. Il est à noter l existence d algorithmes polynomiaux pour la résolution de problèmes linéaires en variables réelles. Ce sont les méthodes dites de points intérieurs, avec en particulier les algorithmes de Kachian et de Karmarkar. 31

Tableau simplexe- Exemple Méthode du simplexe appliquée à l exemple précédent: Introduction des variables d écart Le problème est mis sous la forme standard : Minimiser z = x 1 2x 2 + 0x 3 + 0x 4 sous x 1 + +x 2 + x 3 = 2 x 2 + x 4 = 1 et x 1, x 2, x 3, x 4 0 Sous forme matricielle, ce problème s écrit : x 1 x Minimiser z = [ 1 2 0 0] 2 x 3 x 4 sous [ 1 1 1 0 0 1 0 1 ] x 1 x 2 x 3 x 4 = et x 1, x 2, x 3, x 4 0 [ 2 1 ] 32

Choix de la base initiale En général, on choisit les variables d écart comme variables de base initiales, pour avoir B 0 = I. Pour l exemple ci-dessus, le choix de x 3, x 4 comme variables de base donne comme solution de base z 0 = 0. Ecriture du tableau simplexe x 3 x 4 x 1 x 2 z (1) 1 0 1 1 0 2 (2) 0 1 0 1 0 1 (c) 0 0-1 -2-1 0 Base initiale: x 3 = 2, x 4 = 1 et donc z = 0, x 1 = x 2 = 0. Comme toutes les variables de base sont non-négatives, cette solution de base est réalisable. Mais elle n est pas optimale, car les coefficients de coût de x 1 et x 2 sont négatifs. On peut donc faire décroître le critère par augmentation d au moins une de ces variables, ce qui correspondra à son entrée en base. 33

Iteration (ou Pivot) On fait entrer la variable de plus fort coût positif : x 2, qui devient variable de base. Pour trouver la variable sortante, on compare les coefficients b s a 0 pour toutes les si contraintes s. On choisit s correspondant au minimum de cette quantité, et comme variable sortante la variable de base associée. Ici, c est l équation (2), et la variable x 4. On procède au changement de base directement par substitution dans le tableau simplexe: on élimine la variable entrante, x 2 par combinaison linéaire de l égalité (2) avec toutes les autres egalités, dont le critère. Pour éliminer x 2 dans l égalité (1), on remplace (1) par (1)-(2). Pour éliminer x 2 dans l égalité (c), on remplace (c) par (c)+2 (2). 34

Nouveau tableau après substitution de x 2 dans les équations (1) et (c): x 3 x 4 x 1 x 2 z (1) 1-1 1 0 0 1 (2) 0 1 0 1 0 1 (c) 0 2-1 0-1 2 Il suffit de réordonner les variables en permutant x 2 et x 4 pour se ramener au tableau standard, dans lequel B = I. Voici le nouveau tableau simplexe. x 3 x 2 x 1 x 4 z (1) 1 0 1-1 0 1 (2) 0 1 0 1 0 1 (c) 0 0-1 2-1 2 La nouvelle solution de base est: x 3 = 1, x 2 = 1 et z = 2, avec x 1 = x 4 = 0. On fait entrer en base la variable de coût négatif : x 1, qui devient variable de base dans l équation (1), tandis que x 3 sort de la base. 35

Nouveau tableau après substitution de x 1 dans l égalité (c): x 3 x 2 x 1 x 4 z (1) 1 0 1-1 0 1 (2) 0 1 0 1 0 1 (c) 1 0 0 1-1 3 On permute les colonnes de x 3 et x 1, ce qui donne : x 1 x 2 x 3 x 4 z (1) 1 0 1-1 0 1 (2) 0 1 0 1 0 1 (c) 0 0 1 1-1 3 Nouvelle solution de base: x 1 = 1, x 2 = 1 et z = 3, avec x 3 = x 4 = 0. Tous les coûts réduits des variables hors-base sont positifs. Cette solution est donc optimale: x 1 = 1, x 2 = 1. 36

x 2 2 1 0 1 2 x 1 Polyèdre des solutions admissibles et solution optimale 37