Académique Documents
Professionnel Documents
Culture Documents
Recherche Opérationnelle
Mathématiques pour l’Aide à la Décision
max P rof it = f (quantité1 , . . . , quantitén , coût1 , . . . , coûtn )
Programmation
h1 (quantité1 , . . . , quantitén ) ≤ capacité1
linéaire
..
.
hn (quantité1 , . . . , quantitén ) ≤ capacitén
(quantité1 , . . . , quantitén ) ∈ Rn
multicritère
2021-2022
Regarder ce cours
Table des matières
Motivation 1
I Programmation linéaire 6
1 Modélisation d’un programme linéaire 7
1.1 Formulation d’un programme linéaire . . . . . . . . . . . . . . . . . . . . 7
1.2 Problèmes classiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.1 Problème de production . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.2 Problème de transport . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.3 Problème de planification . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Généralisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
I
Regarder ce cours
TABLE DES MATIÈRES K. ISKAFI
7 Analyse post-optimale 62
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7.2 Variation par rapport au second membre . . . . . . . . . . . . . . . . . . 62
7.3 Variation des coefficients objectifs . . . . . . . . . . . . . . . . . . . . . . 66
7.4 Coût réduit des variables hors base . . . . . . . . . . . . . . . . . . . . . 68
7.5 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
II Optimisation multicritères 82
9 Aide à la décision multicritères 83
9.1 Méthodes multicritères . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
9.1.1 Définition du problème et Objet de la décision (action) . . . . . . 84
9.1.2 Analyse des conséquences et détermination des critères . . . . . . 85
9.1.3 Choix d’une méthode d’aide à la décision multicritère . . . . . . . 87
9.1.4 Performance des actions . . . . . . . . . . . . . . . . . . . . . . . 87
9.2 Agrégation des critères et l’analyse multicritère . . . . . . . . . . . . . . 88
II
Regarder ce cours
K. ISKAFI TABLE DES MATIÈRES
10 Méthodes ELECTRE 89
10.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.2 Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.3 Problématique de Choix : Electre I . . . . . . . . . . . . . . . . . . . . . 92
10.3.1 Electre I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
10.3.2 Electre Iv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
10.3.3 Electre Is . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
10.4 Problématique d’Affectation : Electre Tri . . . . . . . . . . . . . . . . . . 100
10.4.1 Trichotomie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
10.4.2 Electre TRI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
10.5 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
III
Table des figures
IV
Motivation
La recherche opérationnelle peut être définie comme l’ensemble des méthodes et tech-
niques rationnelles orientées vers la recherche du meilleur choix dans la façon d’opérer en
vue d’aboutir au résultat visé ou au meilleur résultat possible.
Elle fait partie des "aides à la décision" dans la mesure où elle propose des modèles
conceptuels en vue d’analyser et de maitriser des situations complexes pour permettre
aux décideurs de comprendre, d’évaluer les enjeux et d’arbitrer ou de faire les choix les
plus efficaces.
Ce domaine fait largement appel au raisonnement mathématique (logique, algèbre,
probabilités, analyse des données) et à la modélisation des processus. Il est fortement lié
à l’ingénierie des systèmes, ainsi qu’au management du système d’information.
Historique
Dès le xviie siècle, des mathématiciens comme Christian Huygens ou Blaise Pascal
(problème des partis) tentent de résoudre des problèmes de décision dans l’incertain
avec l’espérance mathématique. D’autres, au xviiie et xixe siècle, résolvent des problèmes
combinatoires. Au début du xxe siècle, l’étude de la gestion de stock peut être considérée
comme étant à l’origine de la recherche opérationnelle moderne avec la formule du lot
économique (dite formule de Wilson) proposée par Harris en 1913.
Mais ce n’est qu’avec la Seconde Guerre mondiale que la pratique va s’organiser pour
la première fois et acquérir son nom. En 1940, Patrick Blackett est appelé par l’état-major
anglais à diriger la première équipe de recherche opérationnelle, pour résoudre certains
problèmes tels que l’implantation optimale de radars de surveillance ou la gestion des
convois d’approvisionnement. Le qualificatif "opérationnelle" vient du fait que la première
application d’un groupe de travail organisé dans cette discipline avait trait aux opérations
militaires. La dénomination est restée par la suite, même si le domaine militaire n’est plus
le principal champ d’application de cette discipline.
Après la guerre, les techniques se sont considérablement développées, grâce, notam-
ment, à l’explosion des capacités de calcul des ordinateurs. Les domaines d’application
se sont également multipliés.
1
Regarder ce cours
Motivation K. ISKAFI
Applications pratiques
Les problèmes que la R.O. peut aider à résoudre sont soit stratégiques (on peut citer
le choix d’investir ou pas, le choix d’une implantation, le dimensionnement d’une flotte de
véhicules ou d’un parc immobilier. . . ) soit opérationnels (notamment l’ordonnancement,
la gestion de stock, l’affectation de moyens (humains ou matériels) à des tâches, les
prévisions de ventes. . . ).
La gestion de projets est une composante très importante de la communauté de re-
cherche opérationnelle. De nombreux travaux traitent de l’ordonnancement et de la ges-
tion de projets, mais aussi de logistique (tournées de véhicules, conditionnement. . . ), de
planification et de problèmes d’emploi du temps.
Dans le cadre de l’industrie manufacturière, la recherche opérationnelle permet notam-
ment de trouver des plans de productions (ordonnancement de production), de disposer
au mieux les machines dans un atelier, de diminuer le gaspillage des matières premières
(problèmes de découpe) ou de l’énergie ou bien encore d’optimiser le conditionnement et
la livraison des produits intermédiaires ou finis.
Dans le domaine de la finance, les problèmes d’investissement sont des problèmes
classiques de recherche opérationnelle. Ils consistent en général à maximiser le profit (ou
l’espérance de profit) obtenu à partir d’un montant donné en combinant au mieux les
différentes possibilités offertes à l’investisseur.
La recherche opérationnelle a aussi des applications dans le domaine de l’énergie. Elle
est couramment utilisée dans l’industrie pétrolière, principalement dans l’établissement
des plans de production, l’approvisionnement des bruts, l’utilisation des unités de raffi-
nage, et le choix des canaux de distribution les plus rentables. De même, les opérateurs
du marché de l’électricité font largement appel à la recherche opérationnelle tant pour
des problèmes stratégiques (par exemple des investissements sur le réseau) que pour des
questions plus opérationnelles (stabilité du réseau, prévisions. . . ).
Les applications dans le domaine de l’informatique sont très nombreuses elles aussi.
2
Regarder ce cours
K. ISKAFI Recherche Opérationnelle
• Un investissement important
L’outil mathématique lui-même exige un niveau élevé de connaissances mathéma-
tiques, une bonne aptitude à modéliser les problèmes et décrire les facteurs ; ces
contraintes sont consommatrices de temps et d’argent (que ce soit par dévelop-
pement interne, qui consomme des ressources ; ou par développement externe, qui
consomme de l’argent). Il est alors nécessaire de trouver un équilibre entre l’inves-
tissement nécessaire et les retombées prévues.
Le décideur devra prendre ces différents aspects en compte lorsqu’il décidera ou non de
mettre en oevre des modèles de recherche opérationnelle dans son entreprise.
3
Regarder ce cours
Motivation K. ISKAFI
• Méthodes arborescentes
Les méthodes de type A ou branch and bound sont couramment utilisées pour
trouver la solution exacte d’un problème de recherche opérationnelle. Pour une
résolution efficace, un soin particulier est apporté au calcul de bornes supérieures ou
inférieures pour la valeur de la solution. La programmation par contraintes permet
4
Regarder ce cours
K. ISKAFI Recherche Opérationnelle
• Heuristiques et métaheuristiques
Lorsque la solution optimale ne peut être obtenue en un temps raisonnable, on a
souvent recours à des méthodes approchées de type heuristique ou métaheuristique.
• Optimisation multicritère
Il s’agit des méthodes et des calculs permettant de choisir la meilleure solution ou la
solution optimale parmi tout un ensemble de solutions dans l’objectif de résoudre des
problèmes d’Aide à la décision multicritère. Des méthodes telle que "ELECTRE 1 "
constituent une étape importante du processus de décision, qui suit celle d’iden-
tification et de définition du problème, et aboutissent au choix d’une ou plusieurs
solutions optimale(s) parmi un ensemble discret de solutions, via une procédure
de sélection. Elles permettent également de répondre aux problématiques de tri et
de rangement, par l’intermédiaire d’une procédure d’affectation et de classement
respectivement.
• Processus stochastiques
Les processus stochastiques concernent tous les problèmes aléatoires, en particulier
des problèmes de fiabilité (de systèmes, de composants électroniques. . . ) et l’opti-
malité de gestion des files d’attente.
• Simulation informatique
La simulation est souvent employée pour résoudre des problèmes de RO, notamment
dans le milieu non académique.
5
Première partie
Programmation linéaire
6
Chapitre 1
2. Identifier les restrictions (les contraintes) du problème et les exprimer par un sys-
tème d’équations linéaires ;
A B
Fraise 2 1
Lait 1 2
Sucre 0 1
7
Regarder ce cours
CHAPITRE 1. MODÉLISATION D’UN PROGRAMME LINÉAIRE K. ISKAFI
• Objectif : XX
Minimiser ci,j xi,j
i∈I j∈J
• Contraintes :
xi,j ≤ pi ∀i ∈ I (Capacité de production)
P
j∈J
∀j ∈ J (Demandes à satisfaire)
P
xi,j = dj
i∈I
xi,j ≥ 0 ∀(i, j) ∈ I × J
8
Regarder ce cours
K. ISKAFI 1.3. GÉNÉRALISATION
• Variables :
xt : production normale en période t = 1, . . . , 4
yt : production en heure sup en période t = 1, . . . , 4
st : stock en fin de période t = 1, . . . , 3
• Objectif :
4
X 3
X
Minimiser 7 yt + 3 st
t=1 t=1
• Contraintes :
x1 + y1 = 900 + s1
s1 + x2 + y2 = 1100 + s2
s2 + x3 + y3 = 1700 + s3
s3 + x4 + y4 = 1300
0 ≤ xt ≤ 1200, t = 1, . . . , 4
0 ≤ yt ≤ 400, t = 1, . . . , 4 . . .
st ≥ 0, t = 1, . . . , 3
1.3 Généralisation
Un problème général de programmation linéaire en forme canonique consiste à déter-
miner les réels x1 , x2 , . . . , xn qui maximisent (ou minimisent) une fonction linéaire
n
X
f (x1 , x2 , . . . , xn ) = ci x i
i=1
9
Regarder ce cours
CHAPITRE 1. MODÉLISATION D’UN PROGRAMME LINÉAIRE K. ISKAFI
où n et p sont des entiers naturels non nuls, aij , cj et bj sont des réels donnés, i ∈ I =
{1, . . . , p} , j ∈ J = {1, . . . , n} .
10
Regarder ce cours
K. ISKAFI 1.4. APPLICATIONS
1.4 Applications
Modéliser les problèmes suivants :
Exercice 1.1.
Une usine a pour objectif la maximisation de son profit en produisant deux produits A1
et A2 tout en respectant les contraintes imposées par les durées maximales du fonction-
nement de ses trois ateliers.
Le tableau suivant résume les contraintes de fonctionnement des ateliers et les marges
bénéficiaires
Exercice 1.2.
Une aciérie produit des bandes et des rouleaux métalliques. Elle fonctionne 40 heures par
semaine. Les vitesses de production sont de 200 bandes par heure et de 140 rouleaux par
heure. Les bandes sont vendues 25 euros l’unité ; les rouleaux 30 euros l’unité. Le marché
est limité : il est impossible de vendre plus de 6000 bandes et 4000 rouleaux par semaine.
Exercice 1.3.
Le problème est de déterminer les quantités de chacun des deux types de produits à
fabriquer de manière à obtenir le plus grand profit possible, sachant que l’usine s’est
engagée à livrer 3 tonnes des deux produits à un client régulier et la production en P1
doit dépasser au moins d’une tonne celle de P2 .
11
Chapitre 2
2.1 Introduction
L’objectif de ce chapitre est double. Il s’agit, d’une part, de donner une introduction
à la formulation en modèles d’optimisation, et il s’agit d’autre part de présenter les
techniques de résolution de ces problèmes.
On parle de problème d’optimisation lorsqu’il faut maximiser ou minimiser une fonc-
tion sous contraintes. Par exemple, maximiser le bénéfice d’une entreprise sous les contraintes
de satisfaire la demande et de respecter la capacité de production.
Nous nous concentrerons sur les problèmes linéaires, c’est-à-dire les problèmes où la
fonction objectif et les contraintes sont purement linéaires. Lorsqu’il n’y a que deux va-
riables de décision, un problème linéaire peut être résolu de manière purement graphique.
C’est ce que nous verrons dans ce chapitre 1. Lorsqu’il y a un plus grand nombre de va-
riables, un algorithme mis en oeuvre sous la forme d’un programme informatique s’avère
nécessaire. Il s’agit de l’algorithme du Simplexe que nous verrons au chapitre 2. Nous al-
lons voir au chapitre 3 une autre façon de présenter les calculs algébrique de l’algorithme
du Simplexe. Il s’agit de la présentation du Simplexe en tableaux. Ensuite, nous verrons
au chapitre 4 les embûches que l’on peut rencontrer à chacune des étapes de l’algorithme.
Au chapitre 5, nous examinerons la notion de la dualité qui est un concept fondamental
en programmation linéaire et qui conduit à des résultats de grande portée théorique et
pratique (économie, gestion. . . ). Puis, on entame au chapitre 6 une des applications prin-
cipales de la dualité en programmation linéaire : l’analyse de la sensibilité de l’objectif
réalisé vis-à-vis d’une perturbation des paramètres ; on parle d’analyse post-optimale.
Lorsque les variables doivent prendre des valeurs entières, on parle de problèmes en
nombres entiers. On devrait à proprement parler de problèmes linéaires en nombres entiers
car on impose, en plus, aux contraintes et à la fonction objectif d’être linéaires. Nous
verrons au chapitre 7 une technique de résolution de ces problèmes : il s’agit de la méthode
de branch and bound.
Il est à remarquer que toutes ces méthodes de résolution étant mises en oeuvre dans
des logiciels commerciaux, il ne viendrait plus à l’idée de les programmer soi-même. Par
exemple, le solveur d’Excel dispose d’une implémentation de ces algorithmes.
12
Regarder ce cours
K. ISKAFI 2.2. PROBLÈME CLASSIQUE
La question qui se pose est la suivante : "Combien faut-il produire de châssis de chaque
type par semaine pour maximiser le profit net ?"
La formulation d’un problème d’optimisation comporte toujours les trois étapes sui-
vantes :
1. choix des variables du modèle ;
2. formulation de l’objectif ;
3. formulation des contraintes.
La première étape consiste à choisir les variables du problème.
Definition 2.2.1. On appelle variable toute quantité utile à la résolution du problème
dont le modèle doit déterminer la valeur.
Cette définition permet de différencier les variables des paramètres, qui sont des don-
nées qui peuvent varier, par exemple d’une période à l’autre ou d’un scénario à l’autre. Ici
les quantités que le modèle doit déterminer sont les productions de châssis par semaine.
Notons donc :
x1 = nombre de châssis de type 1 produits par semaine,
x2 = nombre de châssis de type 2 produits par semaine.
La deuxième étape consiste à formuler mathématiquement l’objectif.
Definition 2.2.2. On appelle fonction objectif d’un problème d’optimisation le critère de
choix entre les diverses solutions possibles.
Ici l’entreprise désire maximiser son profit net. La marge étant de 3 pour le premier
type de châssis et de 5 pour le second, l’objectif s’exprime comme suit :
max z = 3x1 + 5x2 .
La troisième étape consiste à formuler les contraintes du problème.
13
Regarder ce cours
CHAPITRE 2. PROGRAMMATION LINÉAIRE ET MÉTHODE DE RÉSOLUTION GRAPHIQUE K. ISKAFI
x1 , x2 ≥ 0.
Elles peuvent être plus complexes comme les contrainte de capacité de production.
Le temps pour assembler 1 châssis de type 1 dans l’atelier 1 est de 1 heure où il reste 4
heures disponibles. D’où la contrainte de capacité de l’atelier 1 :
x1 ≤ 4.
Semblablement, on peut construire les contraintes de capacités des deux autres ateliers :
2x2 ≤ 12
3x1 + 2x2 ≤ 18
Il est alors très utile de reprendre sous une forme condensée la formulation complète
du problème. Ici, on obtient la formulation suivante :
14
Regarder ce cours
K. ISKAFI 2.3. RÉSOLUTION GRAPHIQUE
on obtient le polygone hachuré à la figure 2.1. En économie, cet ensemble réalisable est
encore appelé l’ensemble de production.
15
Regarder ce cours
CHAPITRE 2. PROGRAMMATION LINÉAIRE ET MÉTHODE DE RÉSOLUTION GRAPHIQUE K. ISKAFI
z = k.
3x1 + 5x2 = k.
Les points d’une de ces droites sont donc le lieu de tous les points donnant la même
valeur du profit (d’où le nom de droite d’isovaleur de la fonction objectif). Ceci est fait à
la figure 2.3 où l’on a représenté z = 10, 20 et 36.
16
Regarder ce cours
K. ISKAFI 2.3. RÉSOLUTION GRAPHIQUE
Observation 1 :
Pour maximiser l’objectif, il faut prendre la droite d’isovaleur de l’objectif qui touche
encore la région réalisable et qui donne la plus grande valeur à l’objectif.
Sur base de cet exemple, on tire une deuxième observation :
Observation 2 :
On constate que la solution optimale est à un sommet de la région réalisable.
On peut alors se demander si la solution optimale sera toujours à un sommet de la
région réalisable. En fait, lorsque la ligne d’iso-marge est parallèle à un côté du polygone,
on a que tout le côté du polygone est optimal. Par exemple, si l’objectif avait été z =
3x1 + 2x2 , tout le segment entre (2, 6) et (4, 3) aurait été optimum.
Observation 3 :
Même si tout un côté du polygone est optimal, on peut toujours choisir une solution
optimale correspondant à un sommet.
En conclusion, on peut voir qu’il suffit d’évaluer la valeur de l’objectif en chacun des
sommets pour déterminer l’optimum d’un problème linéaire.
Mais on peut aller plus loin encore pour limiter le nombre de sommets à examiner en
se basant sur la quatrième observation suivante.
Observation 4 :
Le long d’un côté du polygone, la valeur de l’objectif peut être soit constante, soit stricte-
ment croissante, soit strictement décroissante.
On peut donc suggérer l’algorithme suivant :
ii) Déterminer les côtés passant par ce sommet x∗ . Trouver un côté le long duquel z
croît. S’il n’y en n’a pas, STOP : le x∗ courant est optimal.
Nous allons voir au chapitre suivant comment généraliser cet algorithme au cas de
n
R : on obtient alors l’algorithme du Simplexe. Mais avant cela, généralisons la notion
de côté et de sommet et voyons la formulation générale d’un problème linéaire.
Definition 2.3.3. On appelle face d’un polyèdre l’ensemble des points appartenant au
polyèdre et qui vérifient un certain nombre de contraintes à l’égalité :
17
Regarder ce cours
CHAPITRE 2. PROGRAMMATION LINÉAIRE ET MÉTHODE DE RÉSOLUTION GRAPHIQUE K. ISKAFI
18
Regarder ce cours
K. ISKAFI 2.4. FORMULATION GÉNÉRALE
A matrice (m × n), b vecteur (m × 1)
avec .
c vecteur (n × 1), x vecteur (n × 1)
Definition 2.4.1. Tout point x vérifiant les contraintes de (2.4.1) est dit une solution
réalisable pour le problème linéaire.
S = {x ∈ Rn | Ax ≤ b, x ≥ 0}.
Parmi ces solutions réalisables, celles qui maximisent l’objectif sont appelées solutions
optimales.
∀x ∈ S, cT x∗ ≥ cT x,
19
Regarder ce cours
CHAPITRE 2. PROGRAMMATION LINÉAIRE ET MÉTHODE DE RÉSOLUTION GRAPHIQUE K. ISKAFI
2.5 Applications
Exercice 2.1.
1. PL 1
2. PL 2
Exercice 2.2.
Pour les deux cas suivants, modéliser le problème puis le résoudre graphiquement :
1. Une usine a pour objectif la maximisation de son profit en produisant deux produits
A1 et A2 tout en respectant les contraintes imposées par les durées maximales du
fonctionnement de ses trois ateliers.
Le tableau suivant résume les contraintes de fonctionnement des ateliers et les
marges bénéficiaires
2. Une aciérie produit des bandes et des rouleaux métalliques. Elle fonctionne 40
heures par semaine. Les vitesses de production sont de 200 bandes par heure et de
140 rouleaux par heure. Les bandes sont vendues 25 euros l’unité ; les rouleaux 30
euros l’unité. Le marché est limité : il est impossible de vendre plus de 6000 bandes
et 4000 rouleaux par semaine.
20
Chapitre 3
21
Regarder ce cours
CHAPITRE 3. ALGORITHME DU SIMPLEXE EN MÉTHODE ALGÉBRIQUE K. ISKAFI
max z = cT x,
(
Ax ≤ b,
s.c.q.
x ≥0
A matrice (m × n), b vecteur (m × 1)
avec
cvecteur (n × 1), x vecteur (n × 1).
Il s’agit d’un problème avec n variables et m + n contraintes d’inégalité. Cependant,
parmi ces dernières, il y a m contraintes qui peuvent être des contraintes d’inégalité
générales et n qui ne sont que des contraintes de positivité des variables.
Observons qu’il est toujours possible de transformer une contrainte d’inégalité générale
en une contrainte d’égalité par ajout d’une variable à laquelle on impose d’être positive
22
Regarder ce cours
K. ISKAFI 3.2. FORMES CANONIQUES D’UN PROGRAMME LINÉAIRE
Imposer que le membre de gauche soit inférieur ou égal au membre de droite, revient à
dire qu’il faudrait ajouter une quantité non négative au membre de gauche pour qu’il y
ait égalité :
3x1 + 2x2 + x3 = 18,
avec la condition que la variable x3 soit positive
x3 ≥ 0.
Cette quantité représente un déficit ou un écart. Comme cet écart peut varier, on l’appelle
variable d’écart.
Definition 3.2.1. La variable d’écart est la quantité qui, ajoutée au membre de gauche
d’une contrainte, permet de transformer la contrainte en égalité.
Bien que dans la forme canonique on ne considère que des contraintes d’inégalités
générales du type inférieur ou égal, on peut aussi envisager de transformer des contraintes
générales du type supérieur ou égal en égalité. Lorsqu’on impose
2x1 + x2 ≥ 4,
2x1 + x2 − x3 = 4,
avec x3 ≥ 0.
Appliquons ceci au problème (3.1.1). On obtient le problème sous forme standard avec
égalités suivant :
Remarquons qu’il y a équivalence totale entre les deux formes. En effet, d’une part,
toute solution réalisable du problème (3.1.1) peut être augmentée en une solution réa-
lisable pour le problème (3.2.1). Toute solution réalisable du problème (3.2.1) peut être
tronquée en une solution réalisable pour le problème (3.1.1). Comme, d’autre part, les
fonctions objectifs sont identiques, on a bien équivalence entre les deux problèmes.
Illustrons cette correspondance entre solutions : à la solution (3, 2) du problème (3.1.1)
correspond la solution augmentée (3, 2, 1, 8, 5) du problème (3.2.1). Dans l’autre sens, il
suffit de tronquer la solution dans R5 en ne retenant que ses deux premières composantes.
23
Regarder ce cours
CHAPITRE 3. ALGORITHME DU SIMPLEXE EN MÉTHODE ALGÉBRIQUE K. ISKAFI
24
Regarder ce cours
K. ISKAFI 3.4. INITIALISATION DE L’ALGORITHME
Nous avons déjà annoncé que l’algorithme du Simplexe consiste à aller de sommet en
sommet adjacent. Interprété algébriquement, cela revient à considérer un passage d’une
solution de base réalisable à une autre solution de base réalisable. La notion d’adjacence
doit être étendue aux solutions de base.
Definition 3.3.4. On appelle solutions de base adjacentes deux solutions de base dont
les variables de base sont les mêmes sauf une qui est de base dans la première base et
hors base dans la seconde.
Dans l’exemple, les deux solutions de base suivantes sont adjacentes :
x1 = 0, x1 = 0,
x2 = 0, x2 = 6,
x3 = 4, x3 = 4,
x4 = 12, x4 = 0,
x5 = 18, x5 =6
car elles ne diffèrent que par une seule variable hors base. Par contre les solutions sui-
vantes :
x1 = 0, x1 = 2,
x2 = 0, x2 = 6
ne sont pas adjacentes puisqu’elle diffèrent par plus d’une variable hors base. On peut le
vérifier à la figure 3.1.
Proposition 3.3.2. La notion géométrique de sommets adjacents correspond à la notion
algébrique de solutions de base réalisables adjacentes.
En termes algébriques, toutes les variables originales sont mises hors base. Automatique-
ment, dans le système d’égalités :
x1 +x3 = 4
2x2 +x4 = 12
3x1 +2x2 +x5 = 18
x3 = 4
x4 = 12
x5 = 18
25
Regarder ce cours
CHAPITRE 3. ALGORITHME DU SIMPLEXE EN MÉTHODE ALGÉBRIQUE K. ISKAFI
Remarquons que si un membre de droite avait été négatif ou si une contrainte avait été
sous forme d’égalité, on n’aurait pas pu démarrer ainsi. Ces embûches peuvent être levées
en passant par une phase préliminaire appelée phase I de l’algorithme du Simplexe (voir
chapitre 4).
Que vaut la fonction objectif pour cette première solution de base ?
z = 3x1 + 5x2 = 3 × 0 + 5 × 0 = 0,
c’est-à-dire une marge bénéficiaire nulle, ce qui n’est pas étonnant vu que cela correspond
à une production nulle des deux produits.
26
Regarder ce cours
K. ISKAFI 3.5. ITÉRATION SIMPLEXE
ou encore :
12
x2 ≤ =6
2
18
x2 ≤ =9
2
Donc x2 remplace x4 comme variable de base. On veut donc expliciter x2 dans la contrainte
(2) en lieu et place de x4 . Pour ce faire, il faut :
1
(20 ) = (2) ×
2
27
Regarder ce cours
CHAPITRE 3. ALGORITHME DU SIMPLEXE EN MÉTHODE ALGÉBRIQUE K. ISKAFI
z −3x1 + 52 x4 = 30 (00 )
x1 +x3 = 4 (1)
x2 + 12 x4 = 6 (20 )
3x1 −x4 +x5 = 6 (30 )
où l’on peut lire directement (en se souvenant que x1 et x4 sont hors base donc nulles) :
z = 30
x3 =4
x2 =6
x5 = 6.
(x1 , x2 , x3 , x4 , x5 ) = (0, 6, 4, 0, 6)
z = 30.
Remarquez que les opérations d’élimination de x2 des lignes autres que la deuxième
se font obligatoirement en retranchant à chacune de ces lignes un multiple de la deuxième
ligne. Toute autre opération détruirait les colonnes de la matrice identité dans le système
résultant comme on peut le constater en essayant, par exemple, de faire :
28
Regarder ce cours
K. ISKAFI 3.5. ITÉRATION SIMPLEXE
29
Regarder ce cours
CHAPITRE 3. ALGORITHME DU SIMPLEXE EN MÉTHODE ALGÉBRIQUE K. ISKAFI
Pas 0. Initialisations.
• Choisir comme variable entrante la v.h.b. dont le coefficient objectif est le plus élevé
lorsque z est exprimée en fonction des seules v.h.b.
• Si, dans l’expression de z, tous les coefficients des v.h.b sont négatifs ou
nuls, alors stop. Le tableau courant décrit une solution optimale.
• La variable sortante est la première à s’annuler : c’est celle pour laquelle le minimum
est atteint dans :
bs bi
= min .
ase i|aie>0 aie
où s désigne l’indice de la ligne correspondante.
• Retour au Pas 1.
30
Regarder ce cours
K. ISKAFI 3.7. APPLICATIONS
3.7 Applications
Exercice 3.1.
Exercice 3.2.
Le problème est de déterminer les quantités de chacun des deux types de peintures à
produire de manière à obtenir le plus grand profit possible, sachant que la demande maxi-
male en peinture d’intérieur est de 2 tonnes/jour et la production en peinture d’intérieur
ne doit dépasser que d’une tonne celle d’extérieur.
Exercice 3.3.
31
Chapitre 4
4.1 Introduction
Nous avons vu au chapitre précédent une présentation algébrique de l’algorithme du
Simplexe. Pour rappel, il s’agit, partant d’une solution de base (correspondant à un
sommet de la région réalisable), à chaque itération de
1. choisir comme variable entrante, celle de coefficient le plus élevé dans la ligne objectif
(ce qui correspond à choisir la direction assurant le plus grand taux d’accroissement
à la fonction objectif) ;
2. choisir comme variable sortante, la première variable de base à s’annuler (ce qui
correspond à la rencontre de la première contrainte dans la direction choisie) ;
Nous allons maintenant voir une autre façon de présenter les mêmes calculs. Il s’agit de
la présentation du Simplexe en tableaux.
Nous verrons au chapitre suivant les embûches que l’on peut rencontrer à chacune des
étapes de l’algorithme.
On effectue généralement les calculs sur le tableau des coefficients qui porte le nom de
tableau Simplexe. Mais il faut bien garder à l’esprit que ce tableau et les opérations que
l’on va y effectuer ne sont qu’une traduction des opérations sur le système d’équations
algébriques correspondantes.
32
Regarder ce cours
K. ISKAFI 4.3. TABLEAUX SIMPLEXE ET PIVOTAGE
où l’on sépare les coefficients de l’objectif des contraintes d’une barre horizontale et les
coefficients du membre de gauche des contraintes des coefficients du membre de droite par
une barre verticale.
Le système de départ :
z −3x1 −5x2 = 0
x1 +x3 = 4
2x2 +x4 = 12
3x1 +2x2 +x5 = 18
où l’on a ajouté au-dessus du tableau le nom des variables pour voir à quelle variable
correspond chaque colonne du tableau.
Plusieurs caractéristiques d’un tableau sont à remarquer.
• Tout d’abord les valeurs du membre de droite donnent les valeurs courantes des
variables de base.
33
Regarder ce cours
CHAPITRE 4. ALGORITHME DU SIMPLEXE EN TABLEAUX K. ISKAFI
x1 = 4 + x2 .
34
Regarder ce cours
K. ISKAFI 4.3. TABLEAUX SIMPLEXE ET PIVOTAGE
Rappelons que l’on doit utiliser, dans cette seconde opération, un multiple de la ligne
pivot à l’exclusion de toute autre ligne sinon on détruirait la matrice identité.
La nouvelle solution de base et la nouvelle valeur de l’objectif sont respectivement :
(x1 , x2 , x3 , x4 , x5 ) = (0, 6, 4, 0, 6)
z = 30.
z x1 x2 x3 x4 x5
1 −3 0 0 5/2 0 30
0 1 0 1 0 0 4
0 0 1 0 1/2 0 6
0 3 0 0 −1 1 6
z x1 x2 x3 x4 x5
1 −3 0 0 5/2 0 30
0 1 0 1 0 0 4
0 0 1 0 1/2 0 6
0 1 0 0 −1/3 1/3 2
35
Regarder ce cours
CHAPITRE 4. ALGORITHME DU SIMPLEXE EN TABLEAUX K. ISKAFI
z x1 x2 x3 x4 x5
1 0 0 0 3/2 1 36
0 0 0 1 1/3 −1/3 2
0 0 1 0 1/2 0 6
0 1 0 0 −1/3 1/3 2
(x1 , x2 , x3 , x4 , x5 ) = (2, 6, 2, 0, 0)
z = 36.
x∗1 = 2
x∗2 = 6
z ∗ = 36.
Le chemin suivi par l’algorithme du Simplexe est illustré à la figure II.1. Initialement,
on part de l’origine des axes, soit le point P0 = (0, 0). Au cours de
36
Regarder ce cours
K. ISKAFI 4.4. ALGORITHME DU SIMPLEXE EN TABLEAUX
Nous verrons au chapitre suivant les embûches que l’on peut rencontrer dans l’exé-
cution de l’algorithme du Simplexe. En effet, nous avons ici supposé que l’on pouvait
toujours trouver une solution de base de départ réalisable et qu’à chaque itération, il y
avait toujours une variable sortante de la base. Nous verrons au chapitre suivant comment
on peut démarrer l’algorithme si toutes les contraintes initiales ne se présentent pas sous
forme de contraintes d’inégalités du type "inférieur ou égal à" avec un membre de droite
positif. Nous examinerons également ce qu’il convient de faire si on ne trouve aucune
variable candidate à sortir de la base.
Mais avant cela, résumons l’algorithme du Simplexe en tableaux.
2. Mettre les variables originales hors base et les variables d’écart en base.
xj = 0, ∀j = 1, . . . , n.
Si une telle variable n’existe pas, stop : on a trouvé la solution optimale. Sinon, on entoure
la colonne correspondante qui est appelée colonne entrante.
37
Regarder ce cours
CHAPITRE 4. ALGORITHME DU SIMPLEXE EN TABLEAUX K. ISKAFI
La variable sortante est celle dont on lit la valeur dans la ligne où le minimum se produit.
Soit xs la variable de base dont on lit la valeur en ligne l. On entoure la ligne où le
minimum se produit. Il en résulte le tableau suivant :
2. Amener des zéros dans le reste de la colonne pivote en ajoutant aux autres lignes
un multiple de la ligne où l’on a amené le 1.
38
Regarder ce cours
K. ISKAFI 4.5. APPLICATIONS
4.5 Applications
Exercice 4.1.
Une entreprise spécialisée dans la fabrication de matériels informatiques, propose à
son catalogue d’ordinateurs des centaines de référence. Pour simplifier, on ne s’intéresse
ici qu’à deux types d’ordinateurs : le IM4 et le IM5 .
Chacun d’eux comporte un processeur - le même - mais les deux modèles diffèrent en
particulier par le nombre de barrettes mémoires. Plus précisément, le IM4 comporte 2
barrettes alors que le IM5 en comporte 6.
Le marché pour ces composants est tel qu’on ne peut espérer acheter auprès des
fournisseurs habituels plus de 10 000 processeurs pour le trimestre à venir et plus de 48
000 barrettes.
Une autre limitation risque d’intervenir sur la production. L’assemblage est caracté-
risé, en particulier, par une opération délicate, qui pour l’IM4 est de 3 minutes alors que
pour l’IM5 elle n’est que d’une minute ; on ne dispose a priori pour l’assemblage de ces
deux types de machines que de 24 000 minutes pour le trimestre à venir.
Enfin, compte tenu des conditions actuelles du marché, on peut espérer retirer un
profit de 400 euros sur l’IM4 et de 800 euros sur l’IM5 .
Le problème est de déterminer les quantités de chacun des deux types d’ordinateurs
à fabriquer de manière à obtenir le plus grand profit possible.
1. Résoudre le problème par la méthode graphique.
2. Résoudre le problème par l’algorithme du Simplexe en tableaux.
Exercice 4.2.
Une usine fabrique deux produits P1 et P2 en utilisant un certain nombre de res-
sources : équipement, main d’oeuvre, matières premières. Ces besoins sont indiqués dans
le tableau ci-dessous. Par ailleurs, chaque ressource est disponible en quantité limitée :
Ressources P1 P2 Disponibilité
Equipement 3 9 81
Main d’Oeuvre 4 5 55
Matière Première 2 1 20
Les deux produits P1 et P2 rapportent à la vente respectivement des bénéfices de 6
dirhams et 4 dirhams par unité. On veut déterminer la quantité des produits P1 et P2 que
doit produire l’usine afin de maximiser le bénéfice total venant de la vente des 2 produits.
1. Résoudre le problème par la méthode graphique.
2. Résoudre le problème par l’algorithme du Simplexe en tableaux.
Exercice 4.3.
Une société produit de la peinture d’extérieur et d’intérieur à partir de deux produits
de base M1 et M2 :
Quantité utilisée par tonne Quantité disponible par jour
Extérieur Intérieur
M1 6 4 24
M2 1 2 6
Profit par tonne 5 4
39
Regarder ce cours
CHAPITRE 4. ALGORITHME DU SIMPLEXE EN TABLEAUX K. ISKAFI
Le problème est de déterminer les quantités de chacun des deux types de peintures à
produire de manière à obtenir le plus grand profit possible, sachant que la demande maxi-
male en peinture d’intérieur est de 2 tonnes/jour et la production en peinture d’intérieur
ne doit dépasser que d’une tonne celle d’extérieur.
Exercice 4.4.
40
Chapitre 5
5.1 Introduction
L’exemple considéré au chapitre 2 pour illustrer le fonctionnement de l’algorithme du
Simplexe ne montrait pas les embûches qui peuvent surgir à chaque étape de l’algorithme
du Simplexe :
(ii) Chaque itération : pourra-t-on, à chaque itération, trouver une variable entrante et
une variable sortante ?
41
Regarder ce cours
CHAPITRE 5. QUESTIONS SUR L’ALGORITHME DU SIMPLEXE K. ISKAFI
On peut se ramener à la forme avec égalités en multipliant les deux dernières inéqua-
tions par (−1) et en ajoutant les variables d’écart. On obtient la formulation sous forme
d’égalités suivante :
max z = x1 − x2 + x3
2x1 −x2 +2x3 +x4
= 4
2x1 −3x2 +x3 +x5 = −5
s.c.q.
−x1 +x2 −2x3 +x6 = −1
x1 , x2 , x3 , x4 , x5 , x6 ≥ 0.
Pour rendre le membre de droite non négatif, on va lui ajouter une quantité positive
x0 , ou ce qui revient au même, retrancher x0 au membre de gauche. On obtient le système
suivant :
2x1
−x2 +2x3 +x4 −x0 = 4
2x1 −3x2 +x3 +x5 −x0 = −5
−x1 +x2 −2x3 +x6 −x0 = −1.
42
Regarder ce cours
K. ISKAFI 5.2. INITIALISATION DE L’ALGORITHME
43
Regarder ce cours
CHAPITRE 5. QUESTIONS SUR L’ALGORITHME DU SIMPLEXE K. ISKAFI
• en exprimant cette fonction objectif en fonction des seules variables hors base.
Cette troisième opération peut être effectuée en ajoutant à la ligne objectif la
deuxième contrainte et en retranchant la troisième. On obtient le tableau suivant
de départ de la phase II :
z x 1 x2 x3 x4 x5 x6
1 −1/5 0 0 0 1/5 −2/5 −3/5
0 1 0 0 1 0 1 3
0 1/5 0 1 0 −1/5 −3/5 8/5
0 −3/5 1 0 0 −2/5 −1/5 11/5
On peut alors procéder à la phase II car on dispose cette fois d’une base de départ
réalisable, x1 = x5 = x6 = 0, hors base, et x2 = 11
5
, x3 = 85 , x4 = 3 en base avec la valeur
correspondante de la fonction objectif z = − 53 . A la première itération de la phase II, x6
entre et x4 sort. On obtient le tableau suivant :
z x 1 x2 x3 x4 x5 x6
1 1/5 0 0 2/5 1/5 0 3/5
0 1 0 0 1 0 1 3
0 4/5 0 1 3/5 −1/5 0 17/5
0 −2/5 1 0 1/5 −2/5 0 14/5
La solution optimale vaut donc :
z∗ = 3/5
x∗1 =0
x∗2 = 14/5
x∗3 = 17/5
44
Regarder ce cours
K. ISKAFI 5.2. INITIALISATION DE L’ALGORITHME
w x0 x 1 x2 x3 x4 x5
1 1 0 0 0 0 0 0
0 −1 1 −1 1 0 0 −1
0 −1 −1 −1 0 1 0 −3
0 −1 2 1 0 0 1 2
w x 0 x1 x 2 x 3 x4 x5
1 0 −1 −1 0 1 0 −3
0 0 2 0 1 −1 0 2
0 1 1 1 0 −1 0 3
0 0 3 2 0 −1 1 5
w x 0 x1 x2 x3 x4 x5
1 0 0 −1 1/2 1/2 0 −2
0 0 1 0 1/2 −1/2 0 1
0 1 0 1 −1/2 1/2 0 2
0 0 0 2 −3/2 1/2 1 2
w x 0 x1 x2 x3 x4 x5
1 0 0 0 −1/4 3/4 1/2 −1
0 0 1 0 1/2 −1/2 0 1
0 1 0 0 1/4 −3/4 −1/2 1
0 0 0 1 −3/4 1/4 1/2 1
w x0 x1 x2 x3 x4 x5
1 0 1/2 0 0 1/2 1/2 −1/2
0 0 2 0 1 −1 0 2
0 1 −1/2 0 0 −1/2 −1/2 1/2
0 0 −3/2 1 0 −1/2 1/2 5/2
La phase I se termine sans que w = 0 (x0 est encore dans la base et vaut 1/2). Le
problème original n’est donc pas réalisable. En effet, les contraintes du problème sont
incompatibles. Ce verdict est confirmé par un examen de la figure 5.1.
45
Regarder ce cours
CHAPITRE 5. QUESTIONS SUR L’ALGORITHME DU SIMPLEXE K. ISKAFI
j∈N
La solution courante où xj = 0 pour tout j ∈ N donne la valeur z ∗ à la fonction objectif.
Si c0j ≥ 0 pour tout j ∈ N , alors toute solution réalisable où xj ≥ 0 pour tout j ∈ N
donne à la fonction objectif une valeur qui est au plus z ∗ . La solution courante est
par conséquent optimale.
46
Regarder ce cours
K. ISKAFI 5.4. DÉTERMINATION DE LA VARIABLE SORTANTE
z x1 x2 x3 x4
1 0 −5 2 0 4
0 1 −2 1 0 2
0 0 −3 2 1 6
Deuxième itération :
La variable x2 est seule candidate à l’entrée en base. Comme tous les coefficients de
la colonne x2 sont non positifs, aucune des variables de base n’est bloquante.
La variable x2 peut croître au delà de toute limite. On en conclut que le problème est
non borné. On peut le vérifier graphiquement. Le système de départ est le suivant :
max z = 2x1 + x2
x1 −2x2 ≤ 2
s.c.q. −2x1 +x2 ≤ 2
x1 , x2 ≥ 0.
On peut voir à la figure 5.2 qu’à partir du sommet (2, 0), la région connaît une direction
où x2 n’est plus bornée.
47
Regarder ce cours
CHAPITRE 5. QUESTIONS SUR L’ALGORITHME DU SIMPLEXE K. ISKAFI
On peut arriver à la même conclusion en général : s’il n’y a pas de candidat pour
quitter la base, on peut faire croître la variable entrante et donc aussi la
fonction objectif autant qu’on le veut. Dans ce cas, le problème est non borné.
D’autre part, s’il y a plusieurs candidats pour quitter la base, alors n’importe lequel
de ces candidats peut servir. La présence de plusieurs candidats pour quitter la base a
une conséquence importante : la dégénérescence.
Illustrons ceci par l’exemple suivant :
z x1 x2 x3 x4 x5 x6
1 −2 1 −8 0 0 0 0
0 0 0 2 1 0 0 1
0 2 −4 6 0 1 0 3
0 −1 +3 4 0 0 1 2
Ayant choisi x3 pour entrer en base, on trouve que chacune des trois variables de base,
x4 , x5 et x6 bloque l’accroissement de x3 à 12 . Chacune de ces variables est donc candidate
à sortir de base. On peut choisir x4 . On obtient le tableau suivant :
z x1 x2 x3 x4 x5 x6
1 −2 1 0 4 0 0 4
0 0 0 1 1/2 0 0 1/2
0 2 −4 0 −3 1 0 0
0 −1 +3 0 −2 0 1 0
où l’on constate que les variables de base x5 et x6 ont une valeur nulle ! Des solu-
tions de base avec une ou plusieurs variables de base nulles sont appelées des solutions
dégénérées.
La dégénérescence peut avoir la conséquence suivante. Continuons l’exemple. A l’ité-
ration suivante, x1 entre en base et x5 bloque son entrée à une valeur égale à zéro !
Donc la valeur de x1 et, par voie de conséquence, des autres variables et de l’objectif
restent inchangées au cours de ce pivotage.
Des itérations Simplexe qui changent juste la base sans changer la valeur de
la solution de base sont appelées itérations dégénérées. Il est à remarquer que
les itérations dégénérées sont très souvent présentes dans la résolution de problèmes pra-
tiques mais, en général, ne constituent que des "accidents passagers" dans le sens qu’après
quelques itérations dégénérées la fonction objectif se remet à croître strictement. Ceci
amène directement à considérer le point suivant.
48
Regarder ce cours
K. ISKAFI 5.5. ARRÊT APRÈS UN NOMBRE FINI D’ITÉRATIONS
Deuxième itération :
z x1 x2 x3 x4 x5 x6 x7
1 0 0 −14, 5 98 6, 75 13, 25 0 0
0 1 0 0, 5 −4 −0, 75 2, 75 0 0
0 0 1 0, 5 −2 −0, 25 0, 25 0 0
0 0 0 −0, 5 4 0, 75 2, 75 1 1
Troisième itération :
z x1 x2 x3 x4 x5 x6 x7
1 29 0 0 −18 15 93 0 0
0 2 0 1 −8 −1, 5 5, 5 0 0
0 −1 1 0 2 0, 5 −2, 5 0 0
0 1 0 0 0 0 0 1 1
Quatrième itération :
z x 1 x2 x3 x4 x5 x6 x7
1 20 9 0 0 −10, 5 70, 5 0 0
0 −2 4 1 0 0, 5 −4, 5 0 0
0 −0, 5 0, 5 0 1 0, 25 −1, 25 0 0
0 1 0 0 0 0 0 1 1
49
Regarder ce cours
CHAPITRE 5. QUESTIONS SUR L’ALGORITHME DU SIMPLEXE K. ISKAFI
Cinquième itération :
z x1 x2 x3 x4 x5 x6 x7
1 −22 93 21 0 0 −24 0 0
0 −4 8 2 0 1 −9 0 0
0 0, 5 −1, 5 −0, 5 1 0 1 0 0
0 1 0 0 0 0 0 1 1
Sixième itération :
z x1 x2 x3 x4 x5 x6 x7
1 −10 57 9 24 0 0 0 0
0 0, 5 −5, 5 −2, 5 9 1 0 0 0
0 0, 5 −1, 5 −0, 5 1 0 1 0 0
0 1 0 0 0 0 0 1 1
50
Regarder ce cours
K. ISKAFI 5.6. APPLICATIONS
5.6 Applications
Exercice 5.1.
Le problème est de déterminer les quantités de chacun des deux types de produits
à fabriquer de manière à obtenir le plus grand profit possible, sachant que l’usine s’est
engagée à livrer 3 tonnes des deux produits à un client régulier et la production en P2
doit dépasser au moins d’une tonne celle de P1 .
Exercice 5.2.
51
Chapitre 6
52
Regarder ce cours
K. ISKAFI 6.1. PROGRAMME LINÉAIRE DUAL
Definition 6.1.1.
Programme primal Programme dual
max z(x) = cx
min w(y) = yb
(P ) Ax ≤ b (D) yA ≥ c
x ∈ Rn+
y ∈ Rm+
Exemple.
max z(x) = cx
! !
( A b
Ax = b x≤
(P ) ⇐⇒ −A −b
x ≥ 0
x≥0
Par la définition ci-dessus le dual de (P ) est donné par
!
b
min w(u, v) = (u, v) = (u − v)b
−b
!
A
(u, v) = (u − v)A ≥ c,
(D) −A
u, v ∈ Rm
+.
En posant y = u − v, on obtient
min w(y) = yb
(
yA ≥ c
(D)
y sans restriction de signe (noté (y)).
Le résultat général est le suivant.
Theorem 6.1.1. Les liens entre le programme primal et son dual sont les suivants :
Primal Dual
maximisation minimisation
coefficient de z second membre des contraintes
second membre
des contraintes coefficient
de w
=
sans contrainte de signe
contrainte ≤ variable ≥ 0
≥ ≤0
sans contrainte de signe
=
variable ≥ 0 contrainte ≥
≤0
≤
53
Regarder ce cours
CHAPITRE 6. DUALITÉ EN PROGRAMMATION LINÉAIRE K. ISKAFI
Preuve. On se donne
max z(x, y) = cx + dy
Ax + By ≤ a
Cx + Dy = b
x ≥ 0
(y)
(c, x) ∈ Rs
(P )
d, y ∈ Rn−s
A matrice r×s
B matrice r × (n − s)
C matrice (m − r) × s
(m − r) × (n − s).
D matrice
min w(u, v) = ua + vb
≥ c
uA + vC
uB + vD = d
(D)
u ≥ 0
(v)
max z(x) = cx + dy
max z(x) = cx + dy
≤
Ax + By
a
Ax + By ≤ a
Cx + Dy ≤ b
Cx + Dy = b ⇐⇒
Cx + Dy ≥ b
≥
x 0
x ≥ 0
(y)
(y)
max z(x) = cx + dy1 − dy2
Ax + By1 − By2 ≤ a
⇐⇒ Cx + Dy1 − Dy2 ≤ b
−Cx − Dy1 + Dy2 ≤ −b
x, y1 , y2 ≥ 0
x
max z(x) = (c, d, −d) y1
y
⇐⇒ 2
A B −B x a
C D −D y1 ≤ b
−C −D D y2 −b
54
Regarder ce cours
K. ISKAFI 6.2. THÉORÈME DE DUALITÉ
Passons au dual :
a
0 0
min w(y ) = y b
−b
A B −B
y0 D −D ≥ (c, d, −d)
C
−C −D D
y0 ≥ 0
min w(u, v1 , v2 ) = ua + v1 b − v2 b = ua + (v1 − v2 )b
uA + v1 C − v2 C = uA + (v1 − v2 )C ≥ c
⇐⇒ uB + v1 D − v2 D = uB + (v1 − v2 )D ≥ d
y 0 =(u,v1,v2)
−uB − v1 D + v2 D = −uB − (v1 − v2 )D ≥ −d
u, v1 , v2 ≥ 0
min w(u, v) = ua + vb
min w(u, v) = ua + vb
≥
uA + vC c
uA + vC ≥ c
uB + vD ≥ d
⇐⇒ ⇐⇒ uB + vD = d
v=v1 −v2 −uB − vD ≥ −d
≥
u 0
u ≥ 0
(v)
(v)
55
Regarder ce cours
CHAPITRE 6. DUALITÉ EN PROGRAMMATION LINÉAIRE K. ISKAFI
Preuve.
1. On a
z(x, y) = cx + dy ≤ (uA + vC)x + (uB + vD)y
(D)
= u(Ax + By) + v(Cx + Dy)
≤ ua + vb = w(u, v)
(P )
2. ua + vb étant une borne supérieure pour z(x, y), l’égalité z(x, y) = ua + vb signifie
que (x, y) est un point maximal de z. Raisonnement analogue pour w(u, v).
(ii) l’ensemble des solutions réalisables est non borné et max z(x, y) = +∞
Le même raisonnement s’applique à (D). Le théorème suivant dit que trois cas seulement
se produisent parmi les 9 cas possibles (voir tableau ci-dessous).
(D)
(i) (ii) (iii)
(i) a) × ×
(P) (ii) × × b)
(iii) × b) c)
a) (P ) et (D) possèdent des solutions optimales et max z(x, y) = min w(u, v).
Supposons maintenant que le cas a) du théorème précédent s’est réalisé. Quelles sont
les liens entre les solutions optimales de (P ) et de (D) ? Comment calculer l’une à partir
de l’autre ? La réponse se déduit facilement du théorème suivant.
56
Regarder ce cours
K. ISKAFI 6.2. THÉORÈME DE DUALITÉ
Theorem 6.2.2. Soient (x, y) resp. (u, v) des solutions réalisables de (P ) resp. de (D).
(x, y) et (u, v) sont alors des solutions optimales de (P ) et de (D) si et seulement si les
énoncés suivants valent :
1. Si une contrainte est satisfaite en tant qu’une inégalité dans (P ) resp. (D), alors la
variable correspondante de (D) resp. de (P ) est nulle.
Donc z(x, y) − w(u, v) = −ηx − uξ ≤ 0 par construction. D’après le théorème 6.2.1 (x, y)
et (u, v) sont optimales si et seulement si ηx + ξu = 0. Donc si et seulement si ui ξi = 0
pour tout i = 1, 2, . . . , r et ηj xj = 0 pour tout j = 1, 2, . . . , s. L’assertion s’ensuit :
Exemple.
max z(x) = 4x1 + 5x2
(P )
sous 3x1 + x2 ≤ 1, x1 + 4x2 ≤ 1, x1 , x2 ≥ 0
min w(y) = y1 + y2
(D)
sous 3y1 + y2 ≥ 4, y1 + 4y2 ≥ 5, y1 , y2 ≥ 0
3 2
solution optimale de (P ) : x = ,
11 11
. Comment en déduire la solution optimale de
(D) ?
D’après le Théorème 6.2.2 on a
)
x1 > 0 ⇒ 3y1 + y2 = 4
⇒ (y1 , y2 ) = (1, 1).
x2 > 0 ⇒ y1 + 4y2 = 5
3 2
Donc y1 = y2 = 1 est solution optimale de (D). En effet z 11 , 11 = 2 = w(1, 1).
Le lien entre les solutions du primal et le dual sont facilement visibles si on les résout
par le simplexe. En fait, les tableaux finaux se recouvrent partiellement comme le montre
le schéma ci-après. Les variables d’écart ξ de (P ) sont notées ξ1 , ξ2 , et les variables d’écart
57
Regarder ce cours
CHAPITRE 6. DUALITÉ EN PROGRAMMATION LINÉAIRE K. ISKAFI
(P) → → x1 x2 ξ1 ξ2 solution
↓ (D) → η1 η2 y1 y2 optimale de (D)
↓ ↓
ξ1 y1 −4/11 −1/11 1 0 1
ξ2 y2 -1/11 3/11 0 1 1
x1 η1 1 0 0
x2 η2 0 1 0
solution 3/11 2/11 0 0
optimale de (P) 2
y1 = y2 = 1.
La valeur optimale commune des deux programmes figure dans la dernière cellule : z ∗ =
w∗ = 2.
Il n’est donc pas nécessaire de résoudre (P ) et (D). Il suffit de résoudre (P ) ou (D), la
solution optimale de l’autre se trouve dans le tableau optimal du premier, en première
ligne. Il suffit alors d’identifier les variables :
xi 7→ ηi , ξi 7→ yi (i = 1, 2).
pour une variation δb suffisamment faible du second membre, pour que la base optimale
de (P ) reste optimale pour (Pδ ),
max cx
(Pδ ) Ax = b + δb
x≥0
58
Regarder ce cours
K. ISKAFI 6.3. ANALYSE DE SENSIBILITÉ
Exemple. Une usine produit deux ciments, rapportant 500Dh et 700Dh par tonne. Une
tonne du ciment N◦ 1 nécessite 40 min de calcination dans un four à chaux et 20 min de
broyage. Une tonne du ciment N◦ 2 nécessite 30 min de calcination dans un four à chaux
et 30 min de broyage. Le four et l’atelier de broyage sont disponibles 6h et 8h par jour.
Combien de ciment de chaque type peut-on produire par jour pour maximiser le bénéfice ?
Ce problème se modélise comme suit :
max z = 500x1 + 700x2
40x1 + 30x2 ≤ 360 (I)
(P )
20x1 + 30x2
≤ 480 (II)
x1 , x2 ≥ 0
59
Regarder ce cours
CHAPITRE 6. DUALITÉ EN PROGRAMMATION LINÉAIRE K. ISKAFI
60
Regarder ce cours
K. ISKAFI 6.4. APPLICATIONS
6.4 Applications
Deux usines produisent du papier de trois qualités différentes. Elles ont des commandes
pour chaque type de papier : la compagnie qui gère les usines a des contrats pour fournir
16 tonnes de papier de qualité inférieure, 5 tonnes de papier de qualité moyenne et 20
tonnes de papier de qualité supérieure. Il coûte 1000 euros par jour pour faire fonctionner
l’usine A et 2000 euros par jour pour l’usine B. L’usine A produit 8 tonnes de papier de
qualité inférieure, 1 tonne de papier de qualité moyenne et 2 tonnes de papier de qualité
supérieure par jour. L’usine B produit 2 tonnes de papier de qualité inférieure, 1 tonne
de papier de qualité moyenne et 7 tonnes de papier de qualité supérieure par jour. On
cherche combien de jours chaque usine doit fonctionner afin de satisfaire la demande de
la façon la plus économique.
1. Modéliser le problème.
2. On a affaire à un concurrent qui tente de faire fermer les deux usines. Le concurrent
vend à l’entreprise du papier des trois différentes qualités au prix le plus élevé
possible (bien sûr) mais tout en s’assurant que les prix soient compétitifs vis-à-vis
des deux usines. Déterminer l’objectif du concurrent et résoudre le problème.
61
Chapitre 7
Analyse post-optimale
7.1 Introduction
Dans ce chapitre, nous allons voir comment va varier la valeur optimale de l’objectif
d’un programme linéaire lorsque l’on modifie certains coefficients du problème (coefficients
objectif ou du membre de droite). En effet, généralement la solution numérique d’un
problème linéaire est moins significative que de savoir comment l’objectif va bouger si
l’on modifie certaines données du problème. C’est l’objet de ce que l’on appelle l’analyse
post-optimale ou l’analyse sensibilité.
Pour voir l’effet de tels changements de données, une solution naïve consiste à appli-
quer le Simplexe au nouveau problème et bien sûr on peut en déduire l’effet sur l’objectif.
Mais nous allons voir dans ce chapitre que, si la base optimale ne change pas, on
peut prédire sans aucun nouveau calcul l’effet de variation des données sur la fonc-
tion objectif en exploitant simplement le tableau Simplexe optimal du problème original.
Nous allons d’abord envisager le cas de la variation des coefficients du membre de
droite des contraintes. Nous allons voir que la variation de la valeur optimale de l’objectif
d’un programme linéaire en fonction des coefficients du membre de droite est donnée par
la valeur des "prix cachés" (ou coûts ombres) que l’on peut lire dans la ligne objectif du
tableau Simplexe final. Nous verrons comment déterminer le domaine de validité de ces
prix cachés.
Nous verrons ensuite, le cas de la variation des coefficients de la fonction ob-
jectif. Ici, nous verrons que le taux de variation de l’objectif est donné par la valeur des
variables à l’optimum. Ici aussi, il y a un domaine de validité pour ces valeurs optimales
des variables : elles restent valables tant que la base optimale ne change pas.
Enfin, nous terminerons en donnant l’interprétation d’une autre information que l’on
peut tirer du tableau Simplexe, à savoir la valeur des coûts réduits des variables hors
base.
62
Regarder ce cours
K. ISKAFI 7.2. VARIATION PAR RAPPORT AU SECOND MEMBRE
Le "prix caché", ou "coût ombre", (noté yi∗ ) mesure l’augmentation de la fonction objectif
si l’on accroît d’une unité la capacité disponible (bi ). Dans le tableau Simplexe optimal, le
prix caché yi∗ est le coefficient de la variable d’écart de la contrainte dans la ligne objectif.
Nous allons illustrer ceci sur l’exemple introductif du chapitre 2 dont l’énoncé est
rappelé ci-dessous :
z x1 x2 x3 x4 x5
1 0 0 0 3/2 1 36
0 0 0 1 1/3 −1/3 2
0 0 1 0 1/2 0 6
0 1 0 0 −1/3 1/3 2
Comme x3 , x4 et x5 sont les variables d’écart des contraintes de capacité des trois ateliers,
on en déduit les valeurs des prix cachés suivants :
y1∗ = 0
y2∗ = 3/2
∗
y3 = 1
qui correspondent aux prix cachés des ressources utilisées dans les ateliers 1, 2 et 3 dont
les capacités disponibles sont :
b1
= 4
b2 = 12
b3 = 18
Ce résultat peut être démontré mathématiquement. Mais, plutôt que d’en donner une
démonstration formelle, nous allons l’illustrer graphiquement. Considérons tout d’abord
une augmentation de capacité du premier atelier de b1 = 4 à b01 = 5. On peut voir à la
figure 7.1 que le nouveau point optimal reste le même :
63
Regarder ce cours
CHAPITRE 7. ANALYSE POST-OPTIMALE K. ISKAFI
36/5
+
z*=36
++
+++
++++
+++++
+++++++
+++++++
+++++++
+++++++
+++++++
+++++++
+++++++
12
z 0∗ = z ∗ = 36
d’où une variation nulle de l’objectif, ce qui était bien prédit par la valeur nulle du prix
caché y1∗ :
∆z = z 0∗ − z ∗ = 0 = y1∗ .
Une augmentation de capacité du deuxième atelier de b2 = 12 à b02 = 13 donne un
déplacement du point optimal (voir figure 7.1) vers le nouveau point :
z 0∗ = 37, 5.
z 0∗ = 37.
64
Regarder ce cours
K. ISKAFI 7.2. VARIATION PAR RAPPORT AU SECOND MEMBRE
37/5
36/5
++
+++
+++
+ +++
++++
++++
++++
++++
++++
z*=37
+++
++++
++
z*=36
37/3
12
Le résultat peut aussi être interprété dans l’autre sens : y3∗ est la perte de profit si on
diminue d’une unité la capacité du troisième atelier.
Remarquons, et ceci est l’objet de l’analyse de sensibilité, qu’il y a une limite de
validité de chaque prix caché. En effet, dans le cas de la première ressource, si l’effet d’une
augmentation de b1 sera nul sur la valeur optimum de l’objectif quel que soit b1 ≥ 4, il n’en
va pas de même d’une diminution. En effet, en dessous de b1 = 2, la solution optimale va
changer. On a donc déterminé le domaine de validité de y1∗ = 0. Il s’agit de l’intervalle :
b1 ∈ [2, +∞].
Pour le deuxième atelier, au delà de b2 = 18, la solution optimale reste en (0, 9). La
base optimale et y2∗ changent :
y2∗ = 0.
De même, une diminution en deçà de b2 = 6 va changer la base optimale. On en déduit
le domaine de validité de y2∗ = 3/2. Il s’agit de l’intervalle :
b2 ∈ [6, 18].
Pour le troisième atelier, au delà de b3 = 24, la solution optimale reste en (4, 6). La
base optimale et y3∗ changent :
y3∗ = 0.
De même, une diminution en deçà de b3 = 12 va changer la base optimale. On en déduit
le domaine de validité de y3∗ = 1. Il s’agit de l’intervalle :
b3 ∈ [12, 24].
Ces informations sont données dans le rapport de sensibilité du solveur d’Excel, elles
sont fournies sous la forme d’une augmentation admissible et d’une diminution admis-
sible :
65
Regarder ce cours
CHAPITRE 7. ANALYSE POST-OPTIMALE K. ISKAFI
x1 ≤ 4
a un "prix caché" nul. Ceci a une interprétation économique. La ressource n’est pas
entièrement utilisée : il ne sert donc à rien d’augmenter son stock disponible.
j=1
x∗1 = 2 et x∗2 = 6.
z = 3x1 + 5x2 .
2x2 = 12,
66
Regarder ce cours
K. ISKAFI 7.3. VARIATION DES COEFFICIENTS OBJECTIFS
67
Regarder ce cours
CHAPITRE 7. ANALYSE POST-OPTIMALE K. ISKAFI
z x1 x2 x3 x4 x5 x6
1 −3 −5 −4 0 0 0 0
0 1 0 1 1 0 0 4
0 0 2 2 0 1 0 12
0 3 2 3 0 0 1 18
z x1 x2 x3 x4 x5 x6
1 0 0 2 0 3/2 1 36
0 0 0 2/3 1 1/3 −1/3 2
0 0 1 1 0 1/2 0 6
0 1 0 1/3 0 −1/3 1/3 2
z ∗ = 36.
On constate que seuls sont rentables les productions des châssis 1 et 2. En effet, le
châssis 3, bien qu’ayant une marge unitaire supérieure au châssis 1, consomme plus de
ressources et permet, pour la même capacité disponible des trois ateliers de faire moins
de châssis 3 que de châssis 1. On peut alors se poser la question suivante : de combien
faut-il augmenter la marge du châssis 3 pour le rendre attractif ?
On peut répondre à cette question en exploitant le tableau Simplexe optimal de la
manière suivante : les coefficients dans la ligne objectif du tableau Simplexe final (l’opposé
68
Regarder ce cours
K. ISKAFI 7.4. COÛT RÉDUIT DES VARIABLES HORS BASE
des coûts réduits) fournissent l’augmentation de prix nécessaire. En effet, les coûts réduits
des variables hors base s’interprètent, en général, comme l’augmentation de la fonction
objectif lorsque l’on augmente d’une unité la variable. Ici, à l’optimum, ce coût réduit,
noté d3 , est négatif, traduisant le fait que si la production de ce châssis était positive, elle
diminuerait le profit d’autant.
d3 = −2.
Pour qu’il devienne intéressant de le produire, il faut donc augmenter sa marge d’au
moins cette quantité. Ici, le coût réduit s’interprète comme l’opposé de l’augmentation
minimale de prix pour que la production devienne intéressante.
Remarquez que tous les optimiseurs fournissent en plus de la solution optimale d’un
problème linéaire, cette information : les coûts réduits des variables hors base sont, en
effet, au signe près, les coefficients des variables hors base dans la ligne objectif du tableau
Simplexe optimal.
En conclusions, nous avons vu dans ce chapitre comment interpréter tous les coeffi-
cients dans la ligne objectif du tableau Simplexe optimal final :
• Les coûts réduits sont, au signe près, les coefficients des variables hors base dans la
ligne objectif du tableau Simplexe optimal. Ils s’interprètent, en général, comme
l’augmentation de la fonction objectif lorsque l’on augmente d’une
unité la variable hors base.
• Les prix cachés sont les coefficients des variables d’écart des contraintes dans la
ligne objectif du tableau Simplexe optimal. Ils s’interprètent comme l’augmenta-
tion du profit pour une augmentation unitaire d’un des coefficients du
membre de droite.
69
Regarder ce cours
CHAPITRE 7. ANALYSE POST-OPTIMALE K. ISKAFI
7.5 Applications
Exercice 7.1.
min 0x1 + x2
≥
3x1 + 4x2 9
5x1 + 2x2 ≤ 8
s.c.q.
3x1 − x2 ≤ 0
x1 , x2 ≥ 0
2.1) Calculer les marges sur coûts variables (différence entre prix de vente et coût variable
de production) par unité de chacun des deux produits.
Indication : calculer d’abord le prix de l’heure dans chacun des ateliers et le temps
nécessaire dans chacun des ateliers par produit.
2.2) Les capacités de production sont de 1.200 heures par mois pour l’usinage et de
500 heures pour la finition. Formuler le programme linéaire correspondant à la
maximisation de la marge sur coûts variables.
70
Regarder ce cours
K. ISKAFI 7.5. APPLICATIONS
2.6) Si l’unité de capacité supplémentaire coût le même prix pour les deux ateliers, a-t-on
intérêt à augmenter la capacité du premier ou du second atelier ?
71
Chapitre 8
8.1 Introduction
L’algorithme du Simplexe fournit une méthode de résolution générale pour tous les
problèmes linéaires quelle que soit leur forme. Au contraire, en programmation linéaire
en nombres entiers (PLNE), on ne dispose pas d’un algorithme général qui permet de
résoudre efficacement tous les problèmes en nombres entiers. Cependant, il existe une
classe générale de méthodes connue sous le nom de branch and bound (séparation et
borne/évaluation) qui permet de résoudre bon nombre de problèmes en nombres entiers.
On appelle problèmes mixtes (MIP en anglais pour Mixed Integer Programming) les
problèmes comportant un certain nombre de variables linéaires (donc continues) et un
certain nombre de variables en nombres entiers (donc discrètes).
Nous allons ici décrire cette méthode qui commence par la résolution du problème
linéaire obtenu en relaxant les conditions d’intégralité des variables (valeurs entières).
C’est pourquoi on appelle ce programme la relaxation linéaire du problème.
Les problèmes de flots (programmation sur les graphes) sont eux à mi-chemin entre
les problèmes linéaires et les problèmes mixtes. En effet, si les données du problème de
flot à coût minimum (la formulation la plus générale d’un problème de flot) sont toutes
entières (demandes aux sommets entières, capacités des arcs entières et coefficients de
coût entiers), la solution du problème linéaire fournit automatiquement une solution
entière. Autrement dit, ici la solution de la relaxation linéaire fournit la solution optimale
du problème mixte. Pour ces problèmes, ou pour ceux qui peuvent s’y ramener, on en
conclut que l’on dispose d’un algorithme performant de calcul : l’algorithme du Simplexe.
Malheureusement, un grand nombre de problèmes en nombres entiers ne peuvent se
mettre sous la forme de problèmes de flot. Il convient donc pour ces problèmes d’avoir
une méthode tenant compte explicitement du caractère discret des variables.
72
Regarder ce cours
K. ISKAFI 8.2. FORMULATION DES PROBLÈMES MIXTES
vaut la somme d’un coût fixe de production, noté K, et d’un coût proportionnel, le taux
marginal étant m.
K + mx, si x > 0
c(x) =
0, si x = 0
73
Regarder ce cours
CHAPITRE 8. PROGRAMMATION EN NOMBRES ENTIERS K. ISKAFI
La première contrainte exprime donc que la tâche i doit être finie avant que ne
commence la tâche j. La seconde contrainte est automatiquement satisfaite.
yi = 1 si xi > 0;
yi = 0 si xi = 0.
xi = Mi yi et yi ∈ {0, 1} (8.2.4)
74
Regarder ce cours
K. ISKAFI 8.2. FORMULATION DES PROBLÈMES MIXTES
1. Soit xi > 0. Alors, par les contraintes (8.2.4), la variable yi doit valoir 1 et exprime
bien que l’ingrédient i est dans le mélange.
Remarquons que si on veut que yi soit une parfaite indicatrice de xi > 0, il faut
ajouter la contrainte suivante :
m i y i ≤ xi
avec mi , la teneur minimum d’un ingrédient dans le mélange. Cette nouvelle contrainte
forcera yi à zéro lorsque xi est nul.
y1 + y2 + y3 + y4 = 1 (8.2.6)
yi ∈ {0, 1}, ∀i = 1, 2 . . . 4.
La contrainte (8.2.6) fera en effet qu’une seule indicatrice vaudra un tandis que toutes les
autres seront à zéro.
75
Regarder ce cours
CHAPITRE 8. PROGRAMMATION EN NOMBRES ENTIERS K. ISKAFI
z ∗ = max cT x
(
Ax ≤ b,
s.c.q.
x ≥ 0 et entiers.
Cette méthode peut également être appliquée aux problèmes avec variables binaires (zéro-
un). Elle peut également être appliquée aux problèmes mixtes (MIP), c’est- à-dire aux
problèmes comportant un certain nombre de variables entières et un certain nombre de
variables continues.
Nous illustrons la méthode sur l’exemple suivant
76
Regarder ce cours
K. ISKAFI 8.3. MÉTHODE DE BRANCH AND BOUND
Cette solution est inacceptable car elle viole les contraintes d’intégralité des variables.
Cependant, elle fournit une première borne supérieure sur z ∗ :
z ∗ ≤ 282, 5.
soit x1 ≤ 4 soit x1 ≥ 5.
soit xk ≤ N soit xk ≥ N + 1.
77
Regarder ce cours
CHAPITRE 8. PROGRAMMATION EN NOMBRES ENTIERS K. ISKAFI
Noeud 1 : x1 = 4, x2 = 4, 5, z1 = 265
Noeud 2 : x1 = 5, x2 = 4, 5, z2 = 275.
Remarquez que les valeurs atteintes par la fonction objectif sont moins élevées que dans
la relaxation linéaire précédente. Ceci n’est pas étonnant : on a, en effet, ajouté des
contraintes et donc restreint l’espace des solutions réalisables. Comme les deux sous-
régions forment une représentation contenant l’ensemble des solution entières, on peut en
conclure que la borne supérieure sur z ∗ est :
z ∗ ≤ max(z1 , z2 ) = 275.
Noeud 3 : x1 = 6, x2 = 4, z3 = 260.
Noeud 4 : impossible.
78
Regarder ce cours
K. ISKAFI 8.3. MÉTHODE DE BRANCH AND BOUND
Noter que, au noeud 3, on a obtenu une solution entière dont la valeur correspondante
de la fonction objectif est 260. On a une première borne inférieure sur la valeur optimale
de la fonction objectif et on a donc que :
260 ≤ z ∗ ≤ 275.
Si la fourchette n’est pas trop grande, on peut se satisfaire de cette solution non optimale
plutôt que de continuer de longs calculs. Il est clair également qu’il n’y a aucune raison de
continuer à diviser le noeud 3 pour lequel la solution optimale du problème en nombres
entiers a été obtenue. On dit que le noeud est coupé.
Remarquons aussi que le noeud 4 a conduit à un problème non réalisable. Ce n’est
pas étonnant vu que l’on rajoute de plus en plus de contraintes. A nouveau, dans ce cas,
il ne sert à rien de continuer à diviser ce noeud. Continuons la division des autres noeuds.
Pas 2. Diviser à nouveau un noeud fils ou fille en deux.
On choisit le noeud 1 qui est le seul à encore diviser. Remarquez que c’est parce que la
valeur de z1 = 265 est supérieure à la borne inférieure 260 que l’on doit continuer. On
a en effet un espoir de trouver ici une solution entière meilleure que 260. Dans le cas
contraire, on aurait également coupé cette branche et la méthode était terminée.
Pas 1. Brancher sur une variable non entière.
On branche ici sur x2 en créant les noeuds 5 et 6 par la séparation suivante :
soit x2 ≤ 4 soit x2 ≥ 5.
On résout les relaxations linéaires correspondantes. On obtient :
Noeud 5 : x1 = 4, x2 = 4, z5 = 240
Noeud 6 : impossible.
La méthode est terminée puisqu’il n’existe plus de noeud à diviser. On détermine la
solution optimale comme étant la meilleure solution entière trouvée. Il s’agit du point P3
suivant :
x∗1 = 6
x∗2 = 4
auquel correspond une valeur optimale de l’objectif de z ∗ = 260. On a ainsi, pour notre
exemple, trouvé et aussi prouvé que la solution du noeud 3 était la solution optimale
du problème en nombres entiers.
En conclusions, il y a trois raisons de couper une branche dans l’arbre :
1. lorsque la relaxation linéaire obtenue est non réalisable,
2. lorsque la relaxation linéaire obtenue fournit une solution entière,
3. lorsque la valeur de la borne supérieure est inférieure à la valeur de la meilleure
solution entière obtenue.
La méthode par séparation et évaluation n’intervient pas seulement en programmation
linéaire, mais dans tous les problèmes d’optimisation, où on travaille avec des arbres de
décision.
Enfin terminons par la remarque générale suivante. Si la région réalisable de la relaxa-
tion linéaire n’est pas bornée, il n’y a pas de garantie de convergence de la méthode de
branch and bound. Pour éviter ce problème, certaines implémentations demandent une
borne inférieure et supérieure sur chaque variable. On est ainsi garanti d’un nombre fini
de branches dans l’arbre.
79
Regarder ce cours
CHAPITRE 8. PROGRAMMATION EN NOMBRES ENTIERS K. ISKAFI
8.4 Applications
Exercice 1
Mélange de maximum 4 charbons
Pour produire du coke, on mélange des charbons dans un haut fourneau où ensuite, une
réaction à haute température produit le coke. On suppose qu’il y a 8 charbons disponibles.
Ces charbons sont entrés par des bandes porteuses qui sont au nombre de 4, permettant
d’avoir au maximum 4 charbons différents dans le mélange. De plus, si un charbon est
présent dans le mélange, il doit l’être à hauteur de minimum 5%. De plus, on exige que
la teneur du mélange en Silicium soit d’au plus 1,8% Le tableau 8.1 reprend les prix et
teneur en Si des charbons.
On veut déterminer le mélange répondant aux spécifications qui soit de coût minimum.
Exercice 2
Localisation optimale d’émetteurs de télévision.
Etant donné une région comportant quatre villes (Lille, Dunkerque, Valencienne et Ba-
sieux), on veut savoir où implanter, parmi divers emplacements disponibles (au nombre de
5), un ensemble d’émetteurs de télévision susceptibles de desservir ces différentes villes au
moindre coût. La dernière colonne représente le coût de construction de chaque émetteur.
80
Regarder ce cours
K. ISKAFI 8.4. APPLICATIONS
2. Résoudre par la méthode de Branch and Bound en résolvant chaque fois la relaxation
linéaire de manière purement graphique.
81
Deuxième partie
Optimisation multicritères
82
Chapitre 9
Le processus de décision multicritère peut être décrit par la Figure 9.1. Il est caractérisé
par 4 étapes essentielles :
83
Regarder ce cours
CHAPITRE 9. AIDE À LA DÉCISION MULTICRITÈRES K. ISKAFI
Formulation du problème
Implémentation
et Analyse
Recommandation et
Aide à la Décision
Décision
84
Regarder ce cours
K. ISKAFI 9.1. MÉTHODES MULTICRITÈRES
action potentielle est une action réelle ou fictive provisoirement jugée réaliste par un
acteur au moins. On note par A l’ensemble des actions potentielles.
Sb : "aussi bon que", où S est une relation de sur-classement, c’est à dire que b est au moins
aussi bon que a sur une majorité de critères sans être vraiment plus mauvais relativement
sur les autres critères. On dira dans ce cas que b surclasse a, on notera bSb a. On introduit
des seuils (constants ou fonctions de g) tels que :
b Qg a
a Ig b b Pg a
85
Regarder ce cours
CHAPITRE 9. AIDE À LA DÉCISION MULTICRITÈRES K. ISKAFI
Relation binaire
Situation Définition
(propriétés)
Indifférence Elle correspond à l’existence de raisons I : relation symétrique
claires et positives qui justifient une équi- réflexive
valence entre deux actions.
Préférence Elle correspond à l’existence de raisons P : relation asymétrique
stricte claires et positives qui justifient une préfé- (irréflexive)
rence significative en faveur de l’une (iden-
tifiée) des deux actions.
Préférence Elle correspond à l’existence de raisons Q : relation asymétrique
faible claires et positives qui infirment une préfé- (irréflexive)
rence stricte en faveur de l’une (identifiée)
des deux actions. Mais ces raisons sont in-
suffisantes pour en déduire soit une préfé-
rence stricte en faveur de l’autre, soit une
indifférence entre ces deux actions.
Incomparabilité Elle correspond à l’absence de raisons R : relation symétrique
claires et positives justifiant l’une des trois irréflexive
situations précédentes
La construction des critères est une étape délicate qui nécessite une compréhension
du problème posé et une interaction avec les acteurs impliqués dans la prise de décision.
Il s’agit d’identifier les enjeux et la nature des conséquences possibles sur l’objet de la
décision, c’est à dire les actions considérées. La définition des critères nécessite par la
suite une évaluation de la contribution et l’influence de chaque critère dans la décision
finale. Ceci ce traduit par des pondérations qui sont définies par les acteurs impliqués ou
bien obtenus par un processus itératif suite à l’interaction avec les acteurs concernés.
Les critères à retenir pour juger quelle est l’action préférée, doivent présenter les
conditions suivantes :
• l’aide multicritère à la décision doit permettre de juger de l’intérêt économique des
différentes actions entre elles. Il s’agit donc de construire une famille de critères qui
puissent représenter, d’une façon aussi proche que possible, les coûts et les avantages
des actions, bénéfices.
• les critères doivent être d’une part, suffisamment nombreux et précis pour bien
discriminer entre elles les différentes actions ; d’autre part, ne pas être redondant
pour éviter de majorer l’importance attribuée à une dimension d’analyse.
• les critères peuvent être de nature différente. On définit des familles de critères :
économiques, sociaux, environnementaux, techniques. Chaque famille de critères
peut contenir un ou plusieurs critères.
Les critères doivent également vérifier des axiomes :
• Axiome d’exhaustivité : si deux actions ont les mêmes vecteurs de performances
(mêmes conséquences pour tous les critères) alors il faut être sûr que les acteurs
sont bien indifférents entre les deux actions.
86
Regarder ce cours
K. ISKAFI 9.1. MÉTHODES MULTICRITÈRES
• Axiome de cohésion : en partant de deux actions qui sont jugées équivalentes, si l’on
accroît la performance de la première sur un critère quelconque, alors elle apparaît
"comme au moins aussi bonne" que la seconde action inchangée.
Nature du problème
Critères α (selection) β (affectation) γ (classement)
Vrai critère I - II
Pseudo-critère Is Tri III, IV
87
Regarder ce cours
CHAPITRE 9. AIDE À LA DÉCISION MULTICRITÈRES K. ISKAFI
n
kj · vj (gj (a))
P
2. agrégation additive : g(a) =
j=1
Les poids kj sont des coefficients strictement positifs et les vj des fonctions monotones
n
kj = 1 et 0 ≤ vj ≤ 1.
P
strictement croissantes. Il n’est pas restrictif d’imposer
j=1
Par opposition à l’approche classique, l’approche dite de sur-classement vise à construire
sur l’ensemble A une relation de sur-classement globale S enrichissant la relation de do-
minance. Elle vise à modéliser la part des préférences globales que l’on est en mesure
d’asseoir de façon suffisamment probante. La relation S est généralement construite à
l’aide d’un test de sur-classement appliqué à toutes les paires d’actions de A. Les mé-
thodes ELECTRE utilisent une relation de sur-classement pour l’agrégation des critères
de décision.
88
Chapitre 10
Méthodes ELECTRE
10.1 Introduction
Les méthodes ELECTRE 1 qui est une famille de méthodes mathématiques d’analyse
multicritère, développée par Thomas L. Saaty et du chercheur Bernard Roy, se présentent
comme des méthodes multicritères d’optimisation alternatives aux méthodes d’optimisa-
tion classiques basées sur la définition d’une fonction unique, souvent exprimée en terme
économique (monétaire) et qui reflète la prise en compte de plusieurs critères, souvent
incommensurables. L’intérêt de ces méthodes multicritères est de considérer un ensemble
de critères de différentes nature (exprimés en unité différentes), sans nécessairement les
transformer en critères économiques, ni en une fonction unique. Il ne s’agit pas de re-
chercher un optimum, mais une solution compromis qui peut prendre diverses formes :
choix, affectation ou classement. Plusieurs méthodes existent dans la littérature, dans le
cadre de ce chapitre nous allons définir le cadre théorique et les aspects méthodologies
des méthodes multicritères fondées sur le surclassement.
Ensuite nous allons illustrer leurs approches en étudiant 2 types de méthodes multi-
critères : Electre I et Electre-Tri, en fonction de la problématique considérée. La première
méthode Electre I, est préconisée pour répondre à une problématique de choix. La mé-
thode Electre-Tri est préconisée pour les problématiques de tri ou d’affectation.
10.2 Bases
On procède en deux temps :
Les méthodes d’agrégation partielle vont donc se différencier par leur façon de réaliser ces
deux étapes. La comparaison au sein d’un couple 2 d’actions se fait en utilisant la notion
de surclassement. Une action a en surclasse une autre b si :
89
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
• sans être trop nettement plus mauvaise relativement aux autres critères.
Ces deux conditions sont appelées conditions de concordance et de non discordance des
données (du tableau des performances) avec la proposition "a surclasse b".
Pour chaque critère, ces deux notions peuvent, chacune, être portées sur un graphe
dont l’axe horizontal reprend les différences de performances entre actions selon un critère
et l’axe vertical reprend soit la concordance soit la discordance (Figure 10.1).
Performance de b
non moins
performance de a
cj(a,b)
Performance de b
moins
performance de a
q p
90
Regarder ce cours
K. ISKAFI 10.2. BASES
P
kj
gj (a)≥gj (b)
Pour le cas d’un vrai critère (p = q = 0), on a C(a, b) = P .
kj
1≤j≤n
Les indices de discordances peuvent prendre diverses formes :
• utilisation d’un seuil de veto net, valeur (supérieure à p) au delà de laquelle une
différence de performances impliquant déjà bP a (i.e. g(b) − g(a) > p), donne un
indice de discordance dj (a, b) égal à 1, et en deçà de laquelle cet indice vaut 0,
• utilisation d’un seuil de veto flou : le mécanisme est le même que celui du veto
net si ce n’est que la valeur 0 est attribuée à l’indice de discordance seulement
pour des différences de performances impliquant au pire bQa. Si on a bP a et que la
différence de performances reste inférieure au seuil de veto, on effectue encore une
interpolation (Figure 10.3).
0 si gj (b) − g(a) ≤ p
dj (a, b) = 1 si gj (b) − gj (a) > v
p−(gj (b)−gj (a))
p−v
sinon
L’indice de discordance intervient aussi différemment selon les méthodes. A titre d’exemple
voici le graphe d’un pseudo-critère à seuil de veto flou (Figure 10.3).
dj(a,b)
Performance de b
moins
p v performance de a
C(a, b) Y
δ(a, b) = (1 − dj (a, b)) ,
1 − C(a, b) dj (a,b)>C(a,b)
91
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
où on notera que, pour un calcul correct et afin d’éliminer les dj qui ne pèsent pas
valablement, il faut éliminer les dj inférieurs à l’indice de concordance (d’où la notation
dj (a, b) > C(a, b)).
Le degré de crédibilité δ n’est autre que l’indice de concordance C(a, b) affaibli par les
indices de discordance dj (a, b), mais dj (a, b) contribue à cet affaiblissement si et seulement
si il est supérieur à C(a, b). En effet, l’indice de concordance est un bon reflet de la crédi-
bilité du surclassement et aussi longtemps que les indices de discordance ont des valeurs
faibles par rapport à celle de l’indice de concordance, ce dernier continue à représenter
correctement cette crédibilité.
• S’il existe au moins un critère j tel que dj (a, b) = 1, alors le degré de crédibilité
sera nul, quelle que soit l’importance de ce critère
• Lorsque l’indice de concordance globale est égal à l’unité, alors ceci implique que
tous les indices de discordance sont nuls et que le degré de crédibilité et aussi égal
à l’unité
δ(a, b) = 1
C(a, b) = 1 ⇔
dj (a, b) = 0, ∀j | dj (a, b) > C(a, b)
10.3.1 Electre I
Du fait des techniques de calcul utilisées dans cette méthode, il faut transformer toutes
les performances des actions en notes. Celles-ci varieront sur des échelles dont la longueur
évoluera de la même façon que les poids accordés aux critères.
Cela étant fait, on peut calculer l’indice de concordance en considérant chaque critère
comme un critère vrai (p = q = 0). L’indice de discordance sera établi en mesurant, pour
chaque critère dans chaque couple d’actions, l’éventuelle différence discordante entre les
deux actions, en n’en retenant que la plus grande pour ce couple, et en la divisant par la
92
Regarder ce cours
K. ISKAFI 10.3. PROBLÉMATIQUE DE CHOIX : ELECTRE I
plus grande longueur d’échelle (∆). Cela garantit un indice de discordance compris entre
0 et 1 :
max (gj (b) − gj (a))
1≤j≤n
di (a, b) = , 1 ≤ i ≤ n.
∆
En plaçant chaque action à la fois en ligne et en colonne, on établit les matrices de
concordance et de discordance, dont la diagonale ne présente aucune valeur.
Il faut alors définir un seuil de concordance et un seuil de discordance. Ces seuils per-
mettront de réaliser les tests de concordance et de discordance (Figure 10.4). Le premier
indique une valeur minimale à dépasser (souvent supérieure à 0,5), le second une valeur
maximale à ne pas outrepasser (souvent inférieure à 0,5)
On peut ainsi établir le graphe de surclassement, dont les actions sont les sommets.
Si l’une de ces actions (ai ) surclasse une autre action (ak ), une flèche partant de ai
et aboutissant à ak , unit les deux sommets. Cela permet de définir le noyau comme
l’ensemble des actions auxquelles n’aboutit aucune flèche . . . du noyau lui-même. Cette
définition laisse entrevoir les problèmes de circuit et d’intransitivité qui peuvent surgir.
Remarque. Pour l’analyse de robustesse, les paramètres à tester seront évidemment les
amplitudes d’échelles des critères, les poids et les seuils de concordance et de discordance.
Exemple 10.3.1.
Cet exemple traite l’aménagement d’un réseau de télécommunication selon 8 scénarios
de gestion évalués sur 5 critères reflétant la fonction de production 3 du réseau. Le tableau
3. lignes d’abonnés, modems, routeurs qui connectent au web, administration, marché, prix, etc.
93
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
En ce qui concerne Electre I, les 4 dernières lignes de ce tableau sont inutiles. Elles
serviront pour d’autres exemples le long de ce chapitre.
Avant d’utiliser le tableau, Electre I impose de retraduire les performances en notes
variant sur des échelles dont la longueur est proportionnelle aux poids des critères. Si on
pose la performance la plus basse égale à 0 (MIN = 0) et la plus haute égale au poids du
critère considéré (ki ), on obtient le Tableau 10.2 suivant la formule :
ki − MIN
∀xi ∈ [gmin , gmax ], yi = αi x+βi , yi ∈ [MIN, ki ], αi = , βi = MIN−αi gmin = ki −αi gmax .
gmax − gmin
• pour le critère 1 :
30 − 0
α1 = ' 176, 471, β1 = 30 − 176, 471 × 0, 86 ' −121, 765,
0, 86 − 0, 69
• pour le critère 3 :
20 − 0
α3 = ' 66, 667, β3 = 20 − 66, 667 × 1, 45 ' −76, 667.
1, 45 − 1, 15
94
Regarder ce cours
K. ISKAFI 10.3. PROBLÉMATIQUE DE CHOIX : ELECTRE I
Les critères sont considérés comme des vrais critères (p = q = 0). Pour chacun, on peut
alors calculer un indice de concordance de l’action a sur l’action b (Tableau 10.3)
(
1 si g1 (b) ≤ g1 (a)
c1 (a, b) =
0 si g1 (b) > g1 (a)
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Action 1 1 1 1 1 1 0 0 1
Action 2 0 1 0 0 0 0 0 1
Action 3 0 1 1 1 0 0 0 1
Action 4 0 1 0 1 0 0 0 1
Action 5 0 1 1 1 1 0 0 1
Action 6 1 1 1 1 1 1 1 1
Action 7 1 1 1 1 1 0 1 1
Action 8 0 0 0 0 0 0 0 1
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Action 1 1,000 0,900 1,000 0,900 0,600 0,600 0,200 0,500
Action 2 0,100 1,000 0,200 0,300 0,100 0,400 0,200 0,500
Action 3 0,000 0,800 1,000 0,800 0,000 0,500 0,000 0,400
Action 4 0,100 0,700 0,200 1,000 0,100 0,700 0,200 0,500
Action 5 0,400 0,900 1,000 0,900 1,000 0,700 0,200 0,500
Action 6 0,400 0,600 0,500 0,800 0,300 1,000 0,400 0,400
Action 7 0,800 0,800 1,000 0,800 0,800 0,600 1,000 0,700
Action 8 0,500 0,500 0,600 0,500 0,500 0,600 0,300 1,000
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Action 1 0,000 0,060 0,000 0,017 0,055 0,176 0,424 0,422
Action 2 0,576 0,000 0,470 0,303 0,606 0,647 1,000 0,864
Action 3 0,333 0,185 0,000 0,210 0,198 0,412 0,530 0,511
Action 4 0,353 0,044 0,167 0,000 0,303 0,529 0,697 0,667
Action 5 0,136 0,005 0,000 0,012 0,000 0,294 0,394 0,489
Action 6 0,273 0,123 0,167 0,148 0,303 0,000 0,697 0,667
Action 7 0,259 0,111 0,000 0,136 0,123 0,059 0,000 0,289
Action 8 0,824 0,353 0,588 0,471 0,706 1,000 0,941 0,000
Tous ces indices doivent être comparés à des seuils. Le seuil de concordance sera fixé
à 0,7, le seuil de discordance à 0,3. L’algorithme établissant les surclassements (Figure
10.4) permet de construire le graphe des surclassements. Celui-ci reste relativement simple
dans l’exemple traité car il ne présente que peu de sommets. Toutefois, on ne donnera
ici que le tableau des surclassements (Tableau 10.6), affichant la valeur 1 lorsque l’action
de la colonne étudiée surclasse l’action de la ligne étudiée. Il suffit alors d’observer les
sommes conditionnelles selon les lignes pour déterminer au moins une première partie du
noyau : si une action présente une somme nulle, elle n’est surclassée par aucune autre
action. Ensuite, au sein des autres actions, il faut vérifier qu’aucune n’est surclassée par
une action du noyau précédemment établi.
Cette façon de travailler par tableau plutôt que par graphe permet, via un tableur,
de travailler sur des exemples plus imposants. De plus, comme on va le voir, certaines
méthodes affectent des valeurs aux arcs du graphe, ce qui en complique encore la lecture.
Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8 Som. Cond.
Action 1 - 1 1 1 0 0 0 0 3
Action 2 0 - 0 0 0 0 0 0 0
Action 3 0 1 - 1 0 0 0 0 2
Action 4 0 0 0 - 0 0 0 0 0
Action 5 0 1 1 1 - 0 0 0 3
Action 6 0 0 0 1 0 - 0 0 1
Action 7 1 1 1 1 1 0 - 0 5
Action 8 0 0 0 0 0 0 0 - 0
On voit que les actions 2, 4 et 8 sont non surclassées et constituent donc le noyau
recherché. Au sein des autres actions, il n’en est aucune qui ne soit pas surclassée par au
moins l’une des trois actions du noyau. Par conséquent, aucune autre ne rentre dans ce
dernier. Si les calculs avaient amené un surclassement de l’action 6 par l’action 7 et non
par l’action 4, par exemple, l’action 6 serait rentrée dans le noyau car non surclassée par
une action de ce dernier.
96
Regarder ce cours
K. ISKAFI 10.3. PROBLÉMATIQUE DE CHOIX : ELECTRE I
10.3.2 Electre Iv
Cette variante utilise les vraies valeurs des performances, sans les traduire au préalable
en notes avec échelles variables. Elle fait toujours appel au critère vrai mais cette fois
muni d’un veto net, d’où le "v" dans "Electre Iv".
Il faut alors choisir un seuil de veto pour chaque critère et préciser s’il s’agit de
minimiser ou maximiser ces critères (ce qui était inutile avec des notes).
Pour chaque hypothèse de surclassement, on calcule l’indice de concordance local et
on arrête le processus si l’on tombe sur une différence de performances qui déclenche le
veto. L’indice de concordance global est alors posé nul pour cette hypothèse. Il n’est donc
plus question de seuil de discordance, l’action de celui-ci étant remplacée par le seuil de
veto.
Du fait du mode de calcul différent utilisé ici, par rapport à Electre I, on peut trouver
des matrices de concordance différentes. Pour tester la robustesse vis-à-vis de la discor-
dance, on fait varier l’un après l’autre les seuils de veto, ce qui est évidemment moins
pratique que de travailler sur le seuil de discordance.
Exemple 10.3.2.
Pour cet exemple, on peut reprendre le tableau des performances initial en laissant
toutefois tomber les lignes des seuils d’indifférence et de préférence (ici encore, p = q = 0).
Le tableau des indices de concordance sans effet de veto est évidemment le même que
celui d’Electre I.
Les indices de concordance laucaux sont calculés à travers la relation
(
1 si gj (b) ≤ gi (a)
cj (a, b) = j = 1...5
0 si gj (b) > gj (a)
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Action 1 1,000 1,000 1,000 1,000 1,000 0,000 0,000 1,000
Action 2 0,000 1,000 0,000 0,000 0,000 0,000 0,000 1,000
Action 3 0,000 1,000 1,000 1,000 0,000 0,000 0,000 1,000
Action 4 0,000 1,000 0,000 1,000 0,000 0,000 0,000 1,000
Action 5 0,000 1,000 1,000 1,000 1,000 0,000 0,000 1,000
Action 6 1,000 1,000 1,000 1,000 1,000 1,000 1,000 1,000
Action 7 1,000 1,000 1,000 1,000 1,000 0,000 1,000 1,000
Action 8 0,000 0,000 0,000 0,000 0,000 0,000 0,000 1,000
L’indice de concordance global pour chaque couple d’action est calculé sous l’effet des
seuils de veto
0 P
si ∃j | gj (b) − gj (a) ≥ vj
kj
C(a, b) = gj (a)≥gj (b)
P sinon
kj
1≤j≤n
97
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Action 1 1,000 0,900 1,000 0,900 0,600 0,600 0,200 0,500
Action 2 0,100 1,000 0,200 0,300 0,100 0,400 0,000 0,000
Action 3 0,000 0,800 1,000 0,800 0,000 0,500 0,000 0,400
Action 4 0,100 0,700 0,200 1,000 0,100 0,700 0,200 0,000
Action 5 0,400 0,900 1,000 0,900 1,000 0,700 0,200 0,500
Action 6 0,400 0,600 0,500 0,800 0,300 1,000 0,400 0,000
Action 7 0,800 0,800 1,000 0,800 0,800 0,600 1,000 0,700
Action 8 0,000 0,000 0,000 0,000 0,000 0,000 0,000 1,000
Par exemple :
10.3.3 Electre Is
On emploie toujours un indice de concordance mais cette fois appliqué à un critère à
seuil, ce qui permet d’évincer la "brutalité" de la concordance d’Electre Iv. Néanmoins,
on recourt encore au veto net.
De par l’utilisation de pseudo-critère, il faut préciser en outre, par rapport à Electre
Iv, les seuils de préférence et d’indifférence de chaque critère.
Le reste de la méthode est analogue aux deux précédentes : matrice de concordance,
tableau de surclassement, conclusion et analyse de robustesse.
Exemple 10.3.3.
Pour Electre Is, toutes les lignes du tableau initial 10.32 des performances sont né-
cessaires. Cela a pour conséquence de modifier légèrement les indices de concordance par
98
Regarder ce cours
K. ISKAFI 10.3. PROBLÉMATIQUE DE CHOIX : ELECTRE I
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Action 1 1,000 1,000 1,000 1,000 1,000 0,667 1,000 1,000
Action 2 0,000 1,000 0,333 1,000 0,000 0,000 0,000 1,000
Action 3 0,333 1,000 1,000 1,000 1,000 0,000 0,000 1,000
Action 4 0,000 1,000 1,000 1,000 0,333 0,000 0,000 1,000
Action 5 1,000 1,000 1,000 1,000 1,000 0,000 0,333 1,000
Action 6 1,000 1,000 1,000 1,000 1,000 1,000 1,000 1,000
Action 7 1,000 1,000 1,000 1,000 1,000 1,000 1,000 1,000
Action 8 0,000 0,000 0,000 0,000 0,000 0,000 0,000 1,000
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Action 1 1,000 0,900 1,000 0,900 0,900 0,800 0,500 0,500
Action 2 0,100 1,000 0,300 0,700 0,200 0,400 0,200 0,000
Action 3 0,000 0,800 1,000 0,800 0,500 0,500 0,000 0,400
Action 4 0,100 0,900 0,500 1,000 0,200 0,700 0,200 0,000
Action 5 0,833 0,900 1,000 1,000 1,000 0,700 0,300 0,500
Action 6 0,400 0,800 0,500 0,800 0,300 1,000 0,500 0,000
Action 7 0,800 0,800 1,000 0,800 0,800 0,900 1,000 0,767
Action 8 0,000 0,000 0,000 0,000 0,000 0,000 0,000 1,000
Muni d’un seuil de concordance toujours égal à 0,7, on peut alors remplir le tableau
des surclassements (Tableau 10.12).
99
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8 Som. Cond.
Action 1 - 1 1 1 1 1 0 0 5
Action 2 0 - 0 0 0 0 0 0 0
Action 3 0 1 - 1 0 0 0 0 2
Action 4 0 1 0 - 0 0 0 0 1
Action 5 1 1 1 1 - 0 0 0 4
Action 6 0 1 0 1 0 - 0 0 2
Action 7 1 1 1 1 1 1 - 1 7
Action 8 0 0 0 0 0 0 0 - 0
Par rapport à Electre Iv, l’action 4 quitte le noyau qui ne contient maintenant que les
actions 2 et 8.
Les résultats, on vient de le voir, sont différents pour les différentes méthodes, alors
qu’elles sont sensées extraire chacune les meilleures actions. Ces divergences trouvent
évidemment leurs causes dans la forme de critère utilisée et dans le type d’intervention
de la notion de discordance.
Remarque. Le noyau des méthodes Electre I ne renferme pas les meilleures actions
sensu stricto mais des actions les plus difficiles à comparer entre elles et parmi lesquelles
se trouve la "meilleure". Cela pose d’ailleurs le problème de la "seconde meilleure action" :
si la meilleure action, pour une raison ou une autre, n’est plus disponible, alors il ne faut
en aucun cas choisir celle qui semblerait être la "seconde" dans le noyau ! Il faut reprendre
toute la procédure à zéro.
10.4.1 Trichotomie
Comme son nom l’indique, cette procédure va trier les actions en 3 classes ("bon", "dou-
teux", "mauvais"), plusieurs actions pouvant définir une frontière. Ainsi, il faut construire
un ensemble B, constitué de toutes les actions-étalons "bonnes" et un ensemble M , com-
prenant toutes les actions-étalons "mauvaises".
On étudie ensuite les surclassements qui existent entre les actions à classer et les
actions-étalons 4 . Ces surclassements peuvent résulter de diverses procédures : algorithmes
4. Pour conserver une certaine cohérence, il est bon de vérifier aussi qu’aucune action-étalon mauvaise
ne surclasse une action étalon bonne.
100
Regarder ce cours
K. ISKAFI 10.4. PROBLÉMATIQUE D’AFFECTATION : ELECTRE TRI
de surclassement d’Electre I, Iv ou Is. Cela permet de définir 4 nombres pour chaque action
ai :
• B + ou nombre de fois que l’action à classer surclasse une action de B,
• B − ou nombre de fois qu’une action de B surclasse l’action à classer,
• M + ou nombre de fois que l’action à classer surclasse une action de M ,
• M − ou nombre de fois qu’une action de M surclasse l’action à classer.
Ces nombres sont utilisés dans l’organigramme repris à la Figure 10.5.
Les actions classées douteuses ne sont pas "entre bonne et mauvaise". Elles sont placées
dans cette catégorie parce que, sur base des données disponibles on ne peut les mettre
ailleurs.
Exemple 10.4.1.
Les données restent les mêmes par rapport aux exemples précédents mais il faut
ajouter au moins deux actions étalons : une action étalon "mauvaise" M et une action
étalon "bonne" B. Ces étalons doivent être déterminés avec le décideur car c’est lui qui
délimite les catégories auxquelles on va affecter les actions.
101
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
Par exemple :
• C(B, a8 ) = 0 car g5 (a8 ) − g5 (B) = 37, 79 ≥ v5 = 15,
Grâce à l’arbre reproduit à la Figure 10.5, on peut alors affecter chaque action à l’une
des trois catégories : bon, mauvais ou douteux. Il est à noter que les valeurs B + , B − ,
102
Regarder ce cours
K. ISKAFI 10.4. PROBLÉMATIQUE D’AFFECTATION : ELECTRE TRI
a1 : B+ ≯0 → M− ≯0 ⇒ a1 douteux,
a2 : B+ >0 → M− ≯0 → B− ≯ B+ ⇒ a2 bon,
a3 : B+ ≯0 → M− ≯0 ⇒ a3 douteux,
a4 : B+ ≯0 → M− ≯0 ⇒ a4 douteux,
a5 : B+ ≯0 → M− ≯0 ⇒ a5 douteux,
a6 : B+ ≯0 → M− ≯0 ⇒ a6 douteux,
a7 : B+ ≯0 → M− >0 → M + ≯ M − ⇒ a7 mauvais,
a8 : B+ ≯0 → M− ≯0 ⇒ a8 douteux.
Catégories N◦ d’action
Bons 2
Douteux 1, 3, 4, 5, 6, 8
Mauvais 7
103
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
non
oui
En ce qui concerne l’analyse de robustesse, c’est le seuil de crédibilité qui joue le rôle
de "bouton de réglage" dans Electre TRI.
Exemple 10.4.2.
Comme elles ne présentent qu’une seule action étalon par catégorie, on reprendra ici
les données de la trichotomie. Alors que cette dernière utilisait des surclassements de
type Electre Iv, Electre TRI va employer des pseudo-critères à veto flou et donc calculer
des indices de crédibilité. Cette relation est "floue" car il existe des couples où elle paraît
indiscutable et des couples où elle paraît très peu convaincante. cette plausibilité variant
d’un couple à l’autre est exprimée par un indice associé à chaque surclassement, le degré
de crédibilité du surclassement.
A titre de rappel, l’expression de l’indice de discordance pour le critère 1 est
si g1 (b) − g1 (a) ≤ p1 = 0, 05
0
d1 (a, b) = 1 si g1 (b) − g1 (a) > v1 = 0, 15
p1 −(g1 (b)−g1 (a))
p1 −v1
sinon
les résultats sont repris dans les tableaux suivants :
104
Regarder ce cours
K. ISKAFI 10.4. PROBLÉMATIQUE D’AFFECTATION : ELECTRE TRI
si gi (b) − gi (a) ≤ qi
1
ci (a, b) = 0 si gi (b) − gi (a) > pi i = 1...5
pi −(gi (b)−gi (a))
pi −qi
sinon
105
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
106
Regarder ce cours
K. ISKAFI 10.4. PROBLÉMATIQUE D’AFFECTATION : ELECTRE TRI
δ(a, b) =1
• C(a, b) = 1 ⇔
di (a, b) = 0 ∀i
a1 a2 a3 a4 a5 a6 a7 a8
bon > < > I > I > R
mauvais I < < < I < > R
Les deux règles d’affectation donnent alors les résultats du Tableau 10.31 :
Par exemple :
• Affectation Optimiste
M ≯ a1 →B > a1 ⇒ a1 douteux
M ≯ a2 →B ≯ a2 ⇒ a2 bon
M ≯ a3 →B > a3 ⇒ a3 douteux
M ≯ a4 →B ≯ a4 ⇒ a4 bon
M ≯ a5 →B > a5 ⇒ a5 douteux
M ≯ a6 →B ≯ a6 ⇒ a6 bon
M > a7 ⇒ a7 mauvais
M ≯ a8 → B ≯ a8 ⇒ a8 bon
107
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
• Affectation Pessimiste
a1 ≯B → a1 ≯ M ⇒ a1 mauvais
a2 >B ⇒ a2 bon
a3 ≯B → a3 > M ⇒ a3 douteux
a4 ≯B → a4 > M ⇒ a4 douteux
a5 ≯B → a5 ≯ M ⇒ a5 mauvais
a6 ≯B → a6 > M ⇒ a6 douteux
a7 ≯B → a7 ≯ M ⇒ a7 mauvais
a8 ≯B → a8 ≯ M ⇒ a8 mauvais
Bien que les deux résultats soient évidemment différents, on note quand même une
certaine cohérence. L’action 2 est toujours la mieux classée, l’action 3 est toujours reléguée
dans la catégorie suivante, pendant que l’action 7 est placée dans la dernière catégorie.
On remarquera que ces résultats recoupent aussi ceux de la trichotomie.
10.5 Applications
Reprenons l’exemple qui traite l’aménagement d’un réseau de télécommunication selon
un ensemble A de 8 scénarios de gestion évalués sur 5 critères reflétant la fonction de
production du réseau.
1. Compléter les performances traduites en notes variant sur des échelles dont la lon-
gueur est proportionnelle aux poids des critères (en posant la performance la plus
basse égale à 0 et la plus haute égale au poids du critère considéré).
108
Regarder ce cours
K. ISKAFI 10.5. APPLICATIONS
2. Les critères sont considérés comme des vrais critères (p = q = 0). Compléter les
matrices de l’indice de concordance local d’Electre I de l’action a sur l’action b pour
tous les critères.
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1 1 1 1 1 0 0 1
Act. 2 0 1 0 0 0 0 0 ...
Act. 3 0 1 1 1 0 0 0 1
Act. 4 ... 1 0 1 0 0 0 1
Act. 5 0 1 1 1 1 0 0 1
Act. 6 1 1 1 1 1 1 1 1
Act. 7 1 1 1 1 1 0 1 1
Act. 8 0 0 0 0 0 0 0 1
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1 1 1 1 0 ... 0 0
Act. 2 0 1 0 0 0 0 0 0
Act. 3 0 1 1 1 0 1 0 0
Act. 4 0 1 0 1 0 1 0 0
Act. 5 1 1 1 1 1 1 0 0
Act. 6 0 1 0 1 0 1 0 0
Act. 7 ... 1 1 1 1 1 1 1
Act. 8 1 1 1 1 1 1 0 1
109
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1 1 1 1 1 1 0 0
Act. 2 0 1 0 1 0 1 0 0
Act. 3 0 1 1 1 0 1 0 0
Act. 4 0 0 0 1 0 1 0 0
Act. 5 0 1 1 1 1 1 0 0
Act. 6 0 0 0 1 0 1 0 0
Act. 7 1 1 1 1 1 1 1 0
Act. 8 1 1 1 1 1 1 1 1
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1 1 1 1 1 1 1 1
Act. 2 0 1 1 0 0 1 1 1
Act. 3 0 0 1 0 0 0 0 0
Act. 4 0 1 1 1 1 1 1 1
Act. 5 0 1 1 0 1 1 1 1
Act. 6 0 0 1 0 0 1 0 0
Act. 7 0 0 1 0 0 1 1 0
Act. 8 0 0 1 0 0 1 1 1
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1 0 1 0 0 0 1 1
Act. 2 1 1 1 1 1 1 1 1
Act. 3 0 0 1 0 0 0 0 1
Act. 4 1 0 1 1 0 1 1 1
Act. 5 1 0 1 1 1 1 1 1
Act. 6 1 0 1 0 0 1 1 1
Act. 7 0 0 1 0 0 0 1 1
Act. 8 0 0 0 0 0 0 0 1
110
Regarder ce cours
K. ISKAFI 10.5. APPLICATIONS
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1.000 ... 1.000 0.700 0.600 0.500 0.600 0.800
Act. 2 0.300 1.000 0.600 0.400 0.300 0.700 0.600 0.800
Act. 3 0.000 0.400 1.000 0.400 0.000 0.200 0.000 0.500
Act. 4 0.300 0.600 0.600 1.000 0.300 0.800 0.600 0.800
Act. 5 0.400 0.700 1.000 0.700 1.000 0.800 0.600 0.800
Act. 6 0.500 0.300 0.800 ... 0.200 1.000 0.500 0.500
Act. 7 0.400 0.400 1.000 0.400 0.400 0.500 1.000 0.600
Act. 8 0.200 0.200 0.500 0.200 0.200 0.500 0.400 1.000
4. Calculer l’indice de discordance Electre I (en calculant, pour chaque couple (a, b),
les différences de performances g(b) − g(a) pour tous les critères, puis on en retient
la plus grande, que l’on divise par la plus grande longueur d’échelle).
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 0.000 0.180 0.000 0.050 0.165 0.118 0.141 0.211
Act. 2 0.444 0.000 0.157 0.101 0.235 0.431 0.392 0.311
Act. 3 1.000 ... 0.000 0.630 0.593 0.275 0.235 0.333
Act. 4 0.370 0.130 0.078 0.000 0.157 0.353 0.314 0.333
Act. 5 0.407 0.014 0.000 0.037 0.000 0.196 0.157 0.244
Act. 6 0.815 0.370 0.078 0.444 0.407 0.000 0.232 0.333
Act. 7 0.778 0.333 0.000 0.407 ... 0.113 0.000 0.144
Act. 8 0.820 1.000 0.721 0.870 0.986 0.863 0.751 0.000
Le tableau des performances, auquel on a ajouté les seuils de veto, est le suivant :
111
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
1. Les critères sont considérés comme des vrais critères (p = q = 0). Calculer l’indice
de concordance global d’Electre Iv de l’action a sur l’action b, sous l’effet du veto.
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1.000 0.700 1.000 0.700 0.600 0.500 0.600 0.800
Act. 2 0.300 1.000 0.600 0.400 0.300 0.700 0.000 ...
Act. 3 0.000 0.400 1.000 0.400 0.000 0.200 0.000 0.500
Act. 4 0.300 0.600 0.600 1.000 0.300 0.800 0.600 0.000
Act. 5 0.400 0.700 1.000 ... 1.000 0.800 0.600 0.800
Act. 6 0.500 0.300 0.800 0.400 0.200 1.000 0.500 0.000
Act. 7 0.400 0.400 1.000 0.400 0.400 0.500 1.000 0.600
Act. 8 ... 0.000 0.000 0.000 0.000 0.000 0.000 1.000
112
Regarder ce cours
K. ISKAFI 10.5. APPLICATIONS
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1.000 1.000 1.000 1.000 1.000 0.667 1.000 1.000
Act. 2 0.000 1.000 0.333 1.000 0.000 0.000 0.000 1.000
Act. 3 0.333 1.000 1.000 1.000 1.000 0.000 0.000 1.000
Act. 4 0.000 1.000 1.000 1.000 0.333 0.000 0.000 1.000
Act. 5 1.000 1.000 1.000 1.000 1.000 0.000 0.333 1.000
Act. 6 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
Act. 7 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
Act. 8 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1.000 1.000 1.000 1.000 1.000 1.000 0.000 0.000
Act. 2 0.000 ... 0.000 0.000 0.000 0.000 0.000 0.000
Act. 3 0.000 1.000 1.000 1.000 0.000 1.000 0.000 0.000
Act. 4 0.000 1.000 0.000 1.000 0.000 1.000 0.000 0.000
Act. 5 1.000 1.000 1.000 1.000 1.000 1.000 0.000 0.000
Act. 6 0.000 1.000 0.000 1.000 ... 1.000 0.000 0.000
Act. 7 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
Act. 8 1.000 1.000 1.000 1.000 1.000 1.000 0.000 1.000
113
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1.000 1.000 1.000 1.000 1.000 1.000 0.000 0.000
Act. 2 0.000 1.000 0.000 1.000 0.000 1.000 0.000 0.000
Act. 3 0.333 1.000 1.000 1.000 1.000 1.000 0.000 0.000
Act. 4 0.000 1.000 0.000 1.000 0.000 1.000 0.000 0.000
Act. 5 0.667 1.000 1.000 1.000 1.000 1.000 0.000 0.000
Act. 6 0.000 1.000 0.000 1.000 0.000 1.000 0.000 0.000
Act. 7 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.000
Act. 8 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
Act. 2 0.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
Act. 3 0.000 0.000 1.000 0.000 0.000 0.000 0.000 0.000
Act. 4 0.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
Act. 5 0.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
Act. 6 0.000 0.000 1.000 0.000 0.000 1.000 1.000 0.333
Act. 7 0.000 0.000 1.000 0.000 0.000 1.000 1.000 0.667
Act. 8 0.000 0.000 1.000 0.000 0.000 1.000 1.000 1.000
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1.000 0.000 1.000 0.000 0.000 0.000 1.000 1.000
Act. 2 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
Act. 3 0.000 0.000 1.000 0.000 0.000 0.000 0.000 1.000
Act. 4 1.000 0.000 1.000 1.000 0.000 1.000 1.000 1.000
Act. 5 1.000 0.000 1.000 1.000 1.000 1.000 1.000 1.000
Act. 6 1.000 0.000 1.000 0.000 0.000 1.000 1.000 1.000
Act. 7 0.000 0.000 1.000 0.000 0.000 0.000 1.000 1.000
Act. 8 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000
114
Regarder ce cours
K. ISKAFI 10.5. APPLICATIONS
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
Act. 1 1.000 ... 1.000 0.700 0.700 0.633 0.800 0.800
Act. 2 0.300 1.000 0.667 0.900 0.600 0.700 0.600 0.000
Act. 3 0.000 0.400 1.000 0.400 0.300 0.200 0.000 0.500
Act. 4 0.300 0.700 0.800 1.000 0.367 0.800 0.600 0.000
Act. 5 0.667 0.700 1.000 1.000 1.000 0.800 0.667 0.800
Act. 6 0.500 0.400 0.800 0.400 0.200 1.000 0.800 0.000
Act. 7 0.400 0.400 1.000 0.400 0.400 0.700 1.000 0.800
Act. 8 0.000 0.000 0.000 0.000 0.000 0.000 ... 1.000
On ajoute aussi deux actions étalons : une action étalon "mauvaise" M et une action
étalon "bonne" B. Puis on va utiliser un surclassement de type Electre Iv, qui ne s’applique
qu’entre actions a à affecter et actions étalons B et M .
1. Les critères sont considérés comme des vrais critères (p = q = 0). Compléter les
tableaux de l’indice de concordance local trichotomique pour chaque critère.
115
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
c1 (a, B) 0 1 0 0 0 0 0 1
c1 (B, a) 1 1 1 1 1 1 1 0
c1 (a, M ) 0 1 1 1 0 0 0 1
c1 (M, a) 1 0 0 0 1 1 1 0
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
c2 (a, B) ... 1 0 1 0 1 0 0
c2 (B, a) 1 0 1 0 1 0 1 1
c2 (a, M ) 1 1 ... 1 1 1 0 0
c2 (M, a) 0 0 0 0 0 0 1 1
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
c3 (a, B) 0 1 1 1 1 1 0 0
c3 (B, a) 1 0 0 0 1 0 1 1
c3 (a, M ) 1 1 1 1 1 1 0 0
c3 (M, a) 0 0 0 0 0 0 1 1
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
c4 (a, B) 0 0 1 0 0 1 1 1
c4 (B, a) 1 1 0 1 1 0 0 0
c4 (a, M ) 0 1 1 0 1 1 1 1
c4 (M, a) 1 0 0 1 1 0 0 0
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
c5 (a, B) 1 0 1 0 0 0 1 1
c5 (B, a) 0 1 0 1 1 1 0 0
c5 (a, M ) 1 0 1 1 0 1 1 1
c5 (M, a) 0 1 0 0 1 0 0 0
116
Regarder ce cours
K. ISKAFI 10.5. APPLICATIONS
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
C(a, B) 0.300 0.400 0.700 0.200 0.100 0.500 0.600 0.800
C(B, a) 0.700 0.800 0.300 0.800 1.000 0.500 ... 0.000
C(a, M ) 0.500 0.700 1.000 0.700 0.500 0.800 0.600 0.800
C(M, a) ... 0.300 0.000 0.300 0.800 0.200 0.400 0.000
117
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
d2 (a, B) 0.080 0.000 0.000 0.000 0.120 0.000 0.640 0.460
d2 (B, a) 0.000 0.280 0.000 0.000 0.000 0.000 0.000 0.000
d2 (a, M ) 0.000 0.000 0.000 0.000 0.000 0.000 0.240 0.060
d2 (M, a) 0.000 0.680 0.060 0.280 0.000 0.280 0.000 0.000
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
d3 (a, B) 0.000 0.000 0.000 0.000 ... 0.000 0.200 0.850
d3 (B, a) 0.000 0.050 0.000 0.150 0.000 0.150 0.000 0.000
d3 (a, M ) 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ...
d3 (M, a) 0.000 0.400 0.150 0.500 0.100 0.500 0.000 0.000
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
d4 (a, B) 0.467 0.000 0.000 0.000 0.000 0.000 0.000 0.000
d4 (B, a) 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
d4 (a, M ) 0.067 0.000 0.000 0.000 0.000 0.000 0.000 0.000
d4 (M, a) 0.000 0.000 0.400 0.000 0.000 0.067 0.000 0.000
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
d5 (a, B) 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
d5 (B, a) 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000
d5 (a, M ) 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
d5 (M, a) 0.000 0.000 0.000 0.000 0.000 0.000 0.000 1.000
118
Regarder ce cours
K. ISKAFI 10.5. APPLICATIONS
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
c2 (a, B) 0.000 1.000 0.600 1.000 0.000 1.000 0.000 0.000
c2 (B, a) 1.000 0.000 1.000 1.000 1.000 1.000 1.000 1.000
c2 (a, M ) 1.000 1.000 1.000 1.000 1.000 1.000 0.000 0.000
c2 (M, a) 0.800 0.000 0.000 0.000 1.000 0.000 1.000 1.000
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
c3 (a, B) 0.667 1.000 1.000 1.000 1.000 1.000 0.000 0.000
c3 (B, a) 1.000 0.000 1.000 0.000 1.000 0.000 1.000 1.000
c3 (a, M ) 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.000
c3 (M, a) 0.333 0.000 0.000 0.000 0.000 0.000 1.000 1.000
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
c4 (a, B) 0.000 1.000 1.000 0.600 0.800 1.000 1.000 1.000
c4 (B, a) 1.000 1.000 0.000 1.000 1.000 1.000 1.000 1.000
c4 (a, M ) 0.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000
c4 (M, a) 1.000 1.000 0.000 1.000 1.000 0.000 0.000 0.600
PP
P PPAct. a Act.1 Act.2 Act.3 Act.4 Act.5 Act.6 Act.7 Act.8
Act. b PPPP
c5 (a, B) 1.000 ... 1.000 1.000 0.332 1.000 1.000 1.000
c5 (B, a) 1.000 1.000 0.375 1.000 1.000 1.000 0.595 0.000
c5 (a, M ) 1.000 0.393 1.000 1.000 ... 1.000 1.000 1.000
c5 (M, a) 0.943 1.000 0.208 1.000 1.000 1.000 0.428 0.000
119
Regarder ce cours
CHAPITRE 10. MÉTHODES ELECTRE K. ISKAFI
120