Chapitre 5. Analyse de sensibilité. 5.1 Méthode du simplexe revisitée. Etant donné un problème d optimisation linéaire. min z = c t x, (5.

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

Programmation linéaire et Optimisation. Didier Smets

Programmation linéaire

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

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

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

Optimisation Discrète

Leçon N 4 : Statistiques à deux variables

Programmation linéaire

Chapitre 3. Les distributions à deux variables

Travaux dirigés n 1. Programmation linéaire

Factorisation Factoriser en utilisant un facteur commun Fiche méthode

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.

Calcul différentiel sur R n Première partie

Fonctions linéaires et affines. 1 Fonctions linéaires. 1.1 Vocabulaire. 1.2 Représentation graphique. 3eme

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

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

III- Raisonnement par récurrence

1 Complément sur la projection du nuage des individus

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

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

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

Fonctions de plusieurs variables

3 Approximation de solutions d équations

Correction de l examen de la première session

Comment tracer une droite représentative d'une fonction et méthode de calcul de l'équation d'une droite.

Suites numériques 3. 1 Convergence et limite d une suite

avec des nombres entiers

Théorie et codage de l information

Les indices à surplus constant

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES

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

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

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

Auto-Entreprise : Activités : Eric SOTY - Siret n Formation Bureautique, continue d'adultes. Tél : Fax :

FONCTION DE DEMANDE : REVENU ET PRIX

NOMBRES COMPLEXES. Exercice 1 :

RECHERCHE OPERATIONNELLE

V- Manipulations de nombres en binaire

Chapitre 7. Statistique des échantillons gaussiens. 7.1 Projection de vecteurs gaussiens

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

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Intégration et probabilités TD1 Espaces mesurés Corrigé

LES MÉTHODES DE POINT INTÉRIEUR 1

DOCM Solutions officielles = n 2 10.

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

Oscillations libres des systèmes à deux degrés de liberté

Eteindre. les. lumières MATH EN JEAN Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

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

Cours d analyse numérique SMI-S4

Cours de recherche opérationnelle I

INFO-F Algorithmique 3 et Recherche Opérationnelle

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

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

Polynômes à plusieurs variables. Résultant

Complément d information concernant la fiche de concordance

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

Chapitre 11. Séries de Fourier. Nous supposons connues les formules donnant les coefficients de Fourier d une fonction 2 - périodique :

Chapitre 2. Matrices

LE PROCESSUS ( la machine) la fonction f. ( On lit : «fonction f qui à x associe f (x)» )

Etude de fonctions: procédure et exemple

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

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

NOTE SUR LA MODELISATION DU RISQUE D INFLATION

TSTT ACC OUTILS DE GESTION COMMERCIALE FICHE 1 : LES MARGES

Chap III : Les tableaux

EXCEL: Les fonctions financières

DUT Techniques de commercialisation Mathématiques et statistiques appliquées

ANNEXE VII EFFETS MACROECONOMIQUES DE LA REFORME PIECE JOINTE N 2 SIMULATIONS REALISEES A PARTIR DU MODELE MACROECONOMETRIQUE MESANGE

Chapitre 1. L intérêt. 2. Concept d intérêt. 1. Mise en situation. Au terme de ce chapitre, vous serez en mesure de :

Corrigé des TD 1 à 5

Module 16 : Les fonctions de recherche et de référence

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

K W = [H 3 O + ] [OH - ] = = K a K b à 25 C. [H 3 O + ] = [OH - ] = 10-7 M Solution neutre. [H 3 O + ] > [OH - ] Solution acide

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

ÉVALUATION FORMATIVE. On considère le circuit électrique RC représenté ci-dessous où R et C sont des constantes strictement positives.

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

Hedging delta et gamma neutre d un option digitale

Nouveaux taux d intérêt garantis pour les plans de pension souscrits par une entreprise Questions & Réponses

Optimisation, traitement d image et éclipse de Soleil

Annexe - Balance des paiements et équilibre macro-économique

Commun à tous les candidats

CHAPITRE 5. Stratégies Mixtes

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

Approximations variationelles des EDP Notes du Cours de M2

Nouveau Barème W.B.F. de points de victoire 4 à 48 donnes

Probabilités sur un univers fini

2.4 Représentation graphique, tableau de Karnaugh

Séquence 2. Repérage dans le plan Équations de droites. Sommaire

L ALGORITHMIQUE. Algorithme

CHAPITRE IV Oscillations libres des systèmes à plusieurs degrés de liberté

Programmation linéaire

Quelques tests de primalité

Annexe commune aux séries ES, L et S : boîtes et quantiles

F7n COUP DE BOURSE, NOMBRE DÉRIVÉ

CONDITIONS DE REUSSITE, DISPENSES, REPORTS ET CREDITS DANS L ENSEIGNEMENT SUPERIEUR

4.2 Unités d enseignement du M1

Exercice : la frontière des portefeuilles optimaux sans actif certain

Langage SQL : créer et interroger une base

Statistiques Descriptives à une dimension

Transcription:

Chapitre 5 Analyse de sensibilité Etant donné un problème d optimisation linéaire min z = c t x, Ax b, x 0. (5.1) nous allons étudier la sensibilité de la solution optimale par rapport aux données du problème. Autrement dit, comment varie la solution ou encore la fonction objective si l on modifie une entrée du vecteur c ou de b ou encore de la matrice A. L analyse de sensibilité est aussi connue sous le nom d analyse post-optimale. 5.1 Méthode du simplexe revisitée Pour faire une analyse de sensibilité, il faut pouvoir exprimer la solution du simplexe par rapport aux données initiales du problème et non par rapport aux tableaux du simplexe qui change à chaque itération. Comme toujours, introduisons les variables d écart au problème (5.1) et notons par A la nouvelle matrice de format m (m + n). De plus, faisons l hypothèse que nous connaissons les variables de base B de la solution optimale x B. Evidemment, cette information provient du tableau final du simplexe, d où le terme d analyse post-optimale. Notons par B = {x j1, x j2,..., x jm } la liste des variables de base et par N son complémentaire par rapport à l ensemble d indices {1, 2,... m + n}. Par exemple, si m = n = 3 et B = {x 1, x 5, x 2 }, on a N = {x 3, x 4, x 6 } A partir des ensembles B et N, nous pouvons extraire les sous-matrices suivantes de A : A B est la sous-matrice formée des colonnes correspondantes aux variables de B. On suit l ordre spécifié par B. 1

2 CHAPITRE 5. ANALYSE DE SENSIBILITÉ A N est la sous-matrice formée des colonnes correspondantes aux variables de N ordonnées selon N. Exemple 5.1.1 Prenons le problème min z = 1100x 1 1400x 2 1500x 3 x 1 + x 2 + x 3 340, 2x 1 + 3x 2 + x 3 2400, x 1 + 2x 2 + 3x 3 560, x 1, x 2, x 3 0. Le système matriciel Ax = b avec les variables d écarts est x 1 1 1 1 1 0 0 2 3 1 0 1 0 x 2 1 2 3 0 0 1. = x 6 Le tableau final du simplexe est 340 2400 560 x 1 1 0 1 2 0 1 120 x 5 0 0 3 1 1 1 1500 x 2 0 1 2 1 0 1 220 0 0 200 800 0 300 440, 000 Ainsi, on a bien que B = {x 1, x 5, x 2 } et N = {x 3, x 4, x 6 }. Les sous-matrices A B s écrivent 1 0 1 1 1 0 A B = 2 1 3, A N = 1 0 0 1 0 2 3 0 1 et A N A l aide d une partition par blocs selon les ensembles d indices B et N, on peut écrire [ xb Ax = b [A B A N = b A x B x B + A N x N = b N Par exemple : 1 1 1 1 0 0 2 3 1 0 1 0 1 2 3 0 0 1 x 1 x 2. x 6 = 340 2400 560

5.1. MÉTHODE DU SIMPLEXE REVISITÉE 3 est équivalent à 1 0 1 2 1 3 1 0 2 x 1 x 5 x 2 + 1 1 0 1 0 0 3 0 1 x 3 x 4 x 6 = 340 2400 560 On peut calculer algébriquement la solution x B : C est-à-dire Ax = b A B x B + A N x N = b x B + B A Nx N = B b. x B = B (b A Nx N ). La matrice A B est inversible car B est un base. En particulier, la solution optimale est donnée par la formule x B = B b car les variables hors-base doivent être nulles, i.e. x N = 0. Dans l exemple, on aura x 1 2 0 1 340 x B = x 5 = 1 1 1 2400 x 2 1 0 1 560 = qui est la bonne solution optimale selon le tableau final du simplexe. Les autres colonnes du tableau final correspondent à 2 0 1 1 1 0 B A N = 1 1 1 1 0 0 = 1 0 1 3 0 1 ce qui est bien les colonnes correspondantes à N = {x 3, x 4, x 6 }. 120 1500 220 1 2 1 3 1 1 2 1 1 Remarque 5.1.1 Tout ce qui a été fait jusqu à maintenant s applique autant pour un choix quelconque de variables de base B pas nécessairement optimale. Comment calculer la dernière ligne du tableau du simplexe? On a que z = c t x = c t Bx B + c t Nx N On substitue la valeur de x B = B (b A Nx N ) [ z = c t B A 1 B (b A Nx N ) + c t N x N = c t B A 1 B b + ct N x N c t B A 1 B A Nx N = c t B A 1 B b + [ c t N ct B A 1 B A N xn

4 CHAPITRE 5. ANALYSE DE SENSIBILITÉ Le tableau du simplexe aura la forme matricielle x B x N I B A N B b 0 c t N ct B A 1 B A N c t B A 1 B b Vérifions la dernière ligne pour l exemple ci-dessus. On a que c B = [ 1100, 0, 1400 t c N = [ 1500, 0, 0 t B A N = 1 2 1 3 1 1 2 1 1 c t N ct B A 1 B A N = [ 1500, 0, 0 [ 1100, 0, 1400 = [ 1500, 0, 0 [ 1700, 800, 300 1 2 1 3 1 1 2 1 1 et = [200, 800, 300 c t B B b = 440, 000 Dans la forme matricielle du tableau du simplexe, on note que la première colonne est inutile. Ainsi on peut écrire la version simplifiée x N B A N B b c t N ct B A 1 B A N c t B A 1 B b Le tableau ci-dessus sera optimale si la solution de base est réalisable, B b 0. (5.2) Les coûts réduits sont tous positifs, c t N c t B B A N 0. (5.3)

5.2. EFFET D UNE MODIFICATION DE B 5 5.2 Effet d une modification de b Analysons l effet d une modification du vecteur b. Autrement dit, il s agit d étudier le comportement de la solution pour le problème modifié lorsque que l on change b par b = b + b min z = c t x, Ax b, x 0. (5.4) Soit x B les variables de base de la solution. La question est de savoir sous quelle condition on aura que la base B demeure optimale. En fait, il est facile de répondre à cette question. Le vecteur b n apparait que dans la condition d optimalité (5.2). Par conséquent, les variables de base x B demeurent optimales pour le problème modifié si b B 0 B b A 1b. (5.5) B Exemple 5.2.1 min z = x 1 + 3 2 x 2 + 3x 3 Les données sont (avec les variables d écart) A = [ 1 1 2 1 0 1 2 1 0 1 x 1 + x 2 + 2x 3 6, x 1 + 2x 2 + x 3 10, x 1, x 2, x 3 0. [ 6, b = 10, c = 1 3/2 3 0 0 Supposons que la base optimale est B = {x 1, x 2 }. On a donc [ [ 1 1 2 1 A B = = 1 2 B = 1 1 [ 2 1 0 A N = 1 0 1 Calcul de x B : x B = B b = [ 2 1 1 1 [ 6 10 = [ 2 4 0

6 CHAPITRE 5. ANALYSE DE SENSIBILITÉ Calcul des coûts réduits c t N ct B A 1 B A N : [ [ 2 1 2 1 0 c t N ct B A 1 B A N = [3, 0, 0 [1, 3/2 1 1 1 0 1 [ 3 2 1 = [3, 0, 0 [1, 3/2 1 1 1 = [3, 0, 0 [3/2, 1/2, 1/2 = [3/2, 1/2, 1/2 0 Donc la solution x B = (2, 4) est optimale, i.e. x = (2, 4, 0, 0, 0). [ 6 a Si b b =. Autrement dit, on regarde seulement un changement de b 10 1. [ 2 1 x B = B ( b) = 1 1 On aura que x B 0 si et seulement si On obtient l intervalle pour le paramètre b 1 [ 6 a 10 = 2 + 2a 0 et 4 a 0 1 a 4 [ 2 + 2a 4 a Quel sera l intervalle pour b 2? [ 6 On pose b b = 10 a [ [ 2 1 x B = B ( b) = 1 1 On aura que x B 0 si et seulement si On obtient l intervalle pour le paramètre b 2 6 10 a 2 a 0 et 4 + a 0 4 a 2 = [ 2 a 4 + a Quel sera l effet sur la valeur minimale de la fonction objective? On a que [ 2 a z( b) = c t B x B + c t N x N = c t B x B = [1, 3/2 = 8 + a 4 + a 2

5.2. EFFET D UNE MODIFICATION DE B 7 Remarque 5.2.1 Dans l exemple précédent, on a un problème du type min z = c t x, Ax b, x 0. Il est ennuyeux de changer Ax b sous la forme Ax b. Pour appliquer la méthode du simplexe revisitée, il suffit d écrire le problème sous la forme d égalité en ajoutant les variables de surplus ( car ). Ax = b avec A = [A I On observe que, pour ce problème, la matrice du tableau initial du simplexe est donnée par A = [ A I et que b est changé en b. En se référant à l écriture sous forme matricielle du tableau du simplexe, on constate que les formules sont inchangées. Toutefois, A B et A N sont évaluées à partir de la matrice A = [A I. Dans l exemple ci-dessus, on aura [ 1 1 A B = 1 2 [ 2 1 0 A N = 1 0 1 Point de vue du dual : Primal Dual min z = c t x, Ax b, x 0. min z = b t y, A t y c, y 0. La solution du dual ȳ se lit à la dernière ligne du tableau optimal. Or cette ligne est indépendante de b donc de tout changement de b b. Autrement dit, la solution du dual demeure la même tant que b vérifie la condition de stabilité (5.5). Notons par x( b) la solution du problème primal qui varie avec b. Par dualité on a c t x( b) = b t ȳ c t x(b) = b t ȳ = z = c t (x( b) x(b)) = ( b b) t ȳ = z = c t x = ( b) t ȳ Par conséquent, on obtient l importante relation z b i = ȳ i qui donne te taux de variation de la fonction objective par rapport aux paramètres b i.

8 CHAPITRE 5. ANALYSE DE SENSIBILITÉ 5.3 Effet d une modification de c On désire trouver la condition qui assure que la base B demeure optimale si l on change c c = c + c. En premier, on observe que la solution x B = B b reste inchangée. Mais le tableau du simplexe peut perdre le caractère optimal. Pour cela, on doit imposer la condition de stabilité c t N c t B B A N 0 (c + c) t N (c + c) t B B A N 0 (5.6) En général, on désire connaître l effet d une modification pour une seule variable x i c i c i = c i + c i Il y a 2 cas à analyser selon que x i est une variable de base ou hors-base. Cas d une variable hors-base Notons par e i le vecteur de base canonique de R n, i.e. e i = (0, 0,..., 1, 0,..., 0) t avec le 1 à la position i. On a c = c i e i ( c) B = 0 ( c) N = c i e i La composante i du vecteur c t N ct B A 1 B A N s écrit c i + c i (c t B A 1 B A N) i 0 c i (c i (c t B A 1 B A N) i ) = r i c i c i r i où les r i sont les composantes de la dernière ligne du tableau du simplexe. Autrement dit, nous avons toute l information pour calculer les intervalles de stabilité des coefficients c i. Exemple 5.3.1 On reprend l exemple 5.2.1 Le tableau final du simplexe est T = min z = x 1 + 3 2 x 2 + 3x 3 x 1 + x 2 + 2x 3 6, x 1 + 2x 2 + x 3 10, x 1, x 2, x 3 0. x 1 x 2 x 3 x 4 x 5 1 0 3 2 1 2 0 1 1 1 1 4 0 0 3/2 1/2 1/2 8

5.3. EFFET D UNE MODIFICATION DE C 9 La dernière ligne fournit le vecteur des coûts réduits : r = (0, 0, 3/2, 1/2, 1/2). Les variables de base sont B = {x 1, x 2 } et celles hors-base N = {x 3, x 4, x 5 }. La fonction objective est de la forme z = c 1 x 1 + c 2 x 3 + c 3 x 3 avec c 1 = 1, c 2 = 3/2 et c 3 = 3. Cela n a pas de sens de perturber les coefficients c 4 et c 5. Donc nous avons seulement la possibilité de perturber x 3. Calculons l intervalle de stabilité autour de c 3 associé à la variable hors-base x 3. La condition de stabilité est c 3 c 3 r 3 = 3 3/2 = 3/2 c 3 3/2 La solution optimale x = (2, 4, 0, 0, 0) est la même pour toutes les valeurs c 3 3/2. De plus, la valeur de la fonction objective (z = 8) demeure inchangée car la variable est hors-base. Cas d une variable de base On pose c i = α. On a Le vecteur c t N ct B A 1 B A N s écrit c = c i e i ( c) B = c i e i = αe i ( c) N = 0 c t N (ct B A 1 B A N) αe t i B A N 0 r N αe t i B A N 0 r N α ligne i de B A N 0 Avec ces conditions, on obtient l intervalle de stabilité pour c i. Exemple 5.3.2 On reprend l exemple 5.3.1 ci-dessus. Le tableau final du simplexe est T = x 1 x 2 x 3 x 4 x 5 1 0 3 2 1 2 0 1 1 1 1 4 0 0 3/2 1/2 1/2 8 = x B x N I B A N B b 0 r N c t B x B Intervalle pour c 1 On pose c 1 = c 1 + α = 1 + α. La condition s écrit r N α ligne 1 de B A N = (3/2, 1/2, 1/2) α(3, 2, 1) = (3/2 α, 1/2+2α, 1/2 α) 0.

10 CHAPITRE 5. ANALYSE DE SENSIBILITÉ Sachant que c 1 = 1, on trouve 1 4 α 1 2 = 3 4 c 1 3/2 et que z est changé en ( 2 z = c t Bx B = (1 + α, 3/2) 4 ) = 8 + 2α. Par conséquent, on observe bien que z c 1 = x 1 = 2. Intervalle pour c 2 On pose c 2 = c 2 + α = 3/2 + α. La condition s écrit r N α ligne 2 de B A N = (3/2, 1/2, 1/2) α( 1, 1, 1) = (3/2+α, 1/2 α, 1/2+α) 0. Sachant que c 2 = 3/2, on trouve 1 2 α 1 2 = 1 c 2 2 et que z est changé en ( 2 z = c t Bx B = (1, 3/2 + α) 4 ) = 8 + 4α. Par conséquent, on observe bien que z c 2 = x 2 = 4. 5.3.1 Poursuite des calculs si on dépasse l intervalle de stabilité Reprenons l exemple 5.3.2 avec l intervalle de stabilité pour c 2 : 1 c 2 2. Si on pose c 2 = 2, nous sommes à la limite de l intervalle pour c 2 dont la solution optimale est (2, 4, 0, 0). Si nous voulons savoir ce qui se passe au-delà de cette valeur, il faudra reprendre le tableau du simplexe en mettant à jour la dernière ligne. Pour cela, il suffit d évaluer c t N ct B A 1 B A N avec la nouvelle valeur de c 2 c t N c t B B A N = (3, 0, 0) (1, 2) ( 3 2 1 1 1 1 ) = (3, 0, 0) (1, 0, 1) = (2, 0, 1)

5.3. EFFET D UNE MODIFICATION DE C 11 et z est changé en ( 2 z = c t Bx B = (1, 2) 4 ) = 10. Par conséquent, on obtient le nouveau tableau du simplexe T = x 1 x 2 x 3 x 4 x 5 1 0 3 2 1 2 0 1 1 1 1 4 0 0 2 0 1 10 On fait entrer la variable x 4 dans la base B = {x 1, x 2 } et qui ne va pas modifier la valeur de z. On pivote autour de la deuxière ligne T = x 1 x 2 x 3 x 4 x 5 1 2 1 0 1 10 0 1 1 1 1 4 0 0 2 0 1 10 Le nouveau sommet sera x = (10, 0, 0, 4, 0) avec les variables de base B = {x 1, x 4 }. Ainsi, on peut recommencer la procédure de calcul de l intervalle de stabilité autour de c 2. La variable x 2 est hors-base. Un simple calcul montre c 2 c 2 r 2 = 2 0 = 2 = c 2 2 Par conséquent, la solution (10, 0, 0, 4, 0) sera optimale pour toutes les valeurs supérieures à 2. La valeur de z reste inchangée.