Vous êtes sur la page 1sur 69

Université Mohamed Premier

Ecole Nationale des Sciences Appliquées d’Al-Hociema

Cours de Recherche opérationnelle

HASSAN RAMCHOUN

2016 / 2017
Définition d’un programme linéaire
et propriétés

Résolution d’un programme linéaire

Dualité en programmation linéaire

Problème de plus court chemin

Problème d’arbre recouvrant de


poids minimal
2
Introduction

La recherche opérationnelle est une technique d’aide à la décision ,


elle regroupe toutes les méthodes scientifiques utilisables pour
élaborer de meilleures décisions, Elle permet de Rationaliser, simuler
, Optimiser l’architecture et le fonctionnement des système de
production ou d’organisation
Modélisation
En Recherche Opérationnelle (RO), modéliser un problème consiste à
identifier: les variables intrinsèques (inconnues)
les différentes contraintes auxquelles sont soumises ces variables
l'objectif visé (optimisation).
Dans un problème de programmation linéaire (PL) les contraintes et
l'objectif sont des fonctions linéaires des variables. On parle aussi de
programme linéaire.

3
RAMCHOUN HASSAN
Problème de production Enoncé

Quelles quantités (non entières) de produits P1 et P2 doit produire l'usine


pour maximiser le bénéfice total venant de la vente des 2 produits ?

4
RAMCHOUN HASSAN
Problème de production Solution

5
RAMCHOUN HASSAN
Problème de production Solution

En résumé, le problème de production se modélise sous la forme d'un


programme linéaire

RAMCHOUN HASSAN 6
Problème de fleuriste Enoncé

Problème de fleuriste

Un fleuriste dispose de 45 roses, 36 Tulipes et 27 Marguerites


achetées à M MAD, Il veut offrir à ces clients deux types de
bouquets de fleurs:
- Type 1: Bouquet à 80 MAD composé de 10 roses, 4 Tulipes et 2
Margurites
- Type 2 :Bouquet à 60 MAD composé de 6 roses, 6 Tulipes et 6
Margurites

Déterminer le nombre de bouquets de chaque type afin de maximiser


son revenue total

7
RAMCHOUN HASSAN
Problème de fleuriste Solution

Les variables
1) Nombre de bouquet à préparer de type 1
2) Nombre de bouquet à préparer de type 2
Fonction Objective
𝑀𝑎𝑥 𝑧 = 80𝑥1 + 60𝑥2
Les Contraintes
les contraintes de disponibilité

Le fleuriste dispose de 45 roses


10𝑥1 + 6𝑥2 ≤ 45
Le fleuriste dispose de 36 tulipes
4𝑥1 + 6𝑥2 ≤ 36
Le fleuriste dispose de 27 Margurites
2𝑥1 + 6𝑥2 ≤ 27

Contraintes de non négativités, d’intégrité


𝑥1 ≥ 0, 𝑥2 ≥ 0
8
Exemple 3 Enoncé

9
Exemple 2 Solution

10
RAMCHOUN HASSAN
Programme linéaire Définition

Les Problèmes de programmation linéaire sont en général des problèmes


d’optimisation ou la fonction objective et les contraintes sont toutes linéaires
On distingue les programmes linéaires en nombre entier, les programmes linéaires
(PL) et les programmes linéaires à variables mixtes suivant la nature des variables:
discrètes, réelles ou les deux à la fois
Formulation mathématique

𝑀𝑎𝑥 𝑓 𝑥 = 𝑐 𝑡 x
𝑠𝑢𝑗𝑒𝑡 à
𝑓𝑖 𝑥 = 0 𝑖 ∈ 𝐼0
𝑓𝑖 𝑥 > 0 𝑖 ∈ 𝐼+
𝑓𝑖 𝑥 < 0 𝑖 ∈ 𝐼−
𝑥≥0
f et 𝑓𝑖 sont des applications linéaires et x ∈ 𝑅𝑛

11
Programme linéaire Forme standard et forme canonique

La forme standard d’un P L s’écrit sous forme

Max 𝑐 𝑡 x
S,t
Ax=b
x≥0

Tout PL peut s’écrire sous forme standard en introduisant des variables


supplémentaires appelées variables d’écart ou variable de surplus

La forme canonique d’un P L s’écrit sous forme

Max 𝑐 𝑡 x
S,t
Ax ≤ b
x≥0

RAMCHOUN HASSAN 12
Programme linéaire Forme standard et forme canonique

Exemple: Ecrire sous forme standard le PL 𝑃1 et sous forme


canonique le PL 𝑃2

𝑀𝑖𝑛 𝑧 = 5𝑥1 − 3𝑥2 𝑀𝑖𝑛 𝑧 = 3𝑥1 − 5𝑥2


𝑠𝑢𝑗𝑒𝑡 à 𝑠𝑢𝑗𝑒𝑡 à
𝑥1 − 𝑥2 ≥ 3 𝑥1 + 𝑥2 ≤ 3
(𝑃1 ) (𝑃2 )
2𝑥1 + 3𝑥2 ≤ 4 3𝑥1 − 4𝑥2 ≥ 4
−𝑥1 + 6𝑥2 = 10 2𝑥1 − 𝑥2 = 3
𝑥1 ≥ 0, 𝑥2 ≥ 0 𝑥1 ≥ 0

𝑀𝑖𝑛 𝑧 = 𝑥1 + 2𝑥2 + 𝑥3
𝑀𝑖𝑛 𝑧 = 𝑥1 − 2𝑥2 𝑠𝑢𝑗𝑒𝑡 à
𝑠𝑢𝑗𝑒𝑡 à 𝑥1 + 𝑥2 − 𝑥3 ≤ 2
(P) 𝑥1 + 𝑥2 ≤ 3 (P’) 𝑥1 − 𝑥2 + 𝑥3 = 1
−𝑥1 + 3𝑥2 ≥ −4 𝑥1 + 𝑥2 + 𝑥3 ≥ 2
𝑥1 ≥ 0, 𝑥2 ≥ 0 𝑥1 ≥ 0, 𝑥2 ≤ 0
𝑥3 𝑞𝑢𝑒𝑙𝑐𝑜𝑛𝑞𝑢𝑒

13
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Résolution Graphique

On considère l’exemple de problème de production modélisé précédemment

 Les contraintes ou apparaissent des inégalités correspondent


géométriquement à des demi-plans.
 Intersection de ces demi-plans = ensemble des variables satisfaisant à
toutes les contraintes.
 L'ensemble des contraintes est un polygone convexe

RAMCHOUN HASSAN 14
Résolution des
Programmes Linéaires Résolution Graphique

15
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Résolution Graphique

16
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Algorithme de Simplexe

1. Déterminer une solution de base réalisable


2. Vérifier si la solution actuelle est optimale
3. Déterminer la variable hors base qui va devenir
variable de base
4. Déterminer la variable de base qui sortira de la
solution
5. Effectuer les opérations linéaires (pivots) selon la
technique de Gauss

RAMCHOUN HASSAN 17
Résolution des
Programmes Linéaires Méthode des tableaux du Simplexe

Considérons le PL suivant

𝑀𝑎𝑥 𝑧 = 𝑥1 + 2𝑥2
𝑠𝑢𝑗𝑒𝑡 à
−3𝑥1 + 2𝑥2 + 𝑥3 = 2
(P)
−𝑥1 + 2𝑥2 + 𝑥4 = 4
𝑥1 + 𝑥2 + 𝑥5 = 5
𝑥𝑖 ≥ 0
Le tableau de Simplexe associé à ce programme avec x3, x4 et x5
sont des variables de base

Variable x1 x2 x3 x4 x5 b
de base
x3 -3 2 1 0 0 2
x4 -1 2 0 1 0 4
x5 1 1 0 0 1 5
-Z 1 2 0 0 0 0

18
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Méthode des tableaux du Simplexe

La base précédente n’est pas optimal car les couts relatif des variables
hors base sont strictement positifs, Choisissons comme variable entrante
dans la nouvelle base la variable hors base ayant le plus grand cout
relatif c a d x2, Appliquons la règle du plus petit rapport pour trouver la
variable sortante:
𝑏 2 4 5
𝜃 = 𝑀𝑖𝑛 𝑖 , 𝑎𝑖2 > 0 = 𝑀𝑖𝑛 , , =1
𝑎𝑖2 2 2 1
Donc la variable x3 quitte la base et sera remplacé par la variable x2,
après pivotage on obtient:

Variable x1 x2 x3 x4 x5 b
de base
x2 -3/2 1 1/2 0 0 1
x4 2 0 -1 1 0 2
x5 5/2 0 -1/2 0 1 4
-Z 4 0 -1 0 0 -2

19
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Méthode des tableaux du Simplexe

La nouvelle solution de base est x2=1,


x4=2,x1=x3=0 et sont cout est z=2 Cette solution de
base n’est pas optimale car c1=4 >0, La variable x1
va donc entrer dans la base et x4 va quitter la base

Variable x1 x2 x3 x4 x5 b
de base

x2 0 1 -14 3/4 0 5/2


x1 1 0 -1/2 1/2 0 1
x5 0 0 3/4 -5/4 1 3/2
-Z 0 0 1 -2 0 -6

20
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Méthode des tableaux du Simplexe

Variable x1 x2 x3 x4 x5 b
de base
x2 0 1 0 1/3 1/3 3
x1 1 0 0 -1/3 2/3 2
x3 0 0 1 -5/3 -5/3 2
-Z 0 0 0 -1/3 -4/3 -8

 La nouvelle solution de base est (x1,x2,x3,x4,x5)=(2,3,2,0,0) son


cout est 8
 Les cout réduit de toutes les variables sont négatifs ou nuls , cette
solution de base est optimale et l’algorithme se termine,

21
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Méthode des deux phases

Phase 1: Ecrire le Problème à résoudre sous une forme


canonique en identifiant une solution de base initial en
appliquant soit la méthode des variables artificielles soit la
méthode de grand M

Phase 2: Appliquer l’algorithme de Simplexe au problème


sous forme canonique obtenue à la phase 1

RAMCHOUN HASSAN 22
Résolution des
Programmes Linéaires Variables artificielles

Considérons le problèmes sous la forme standard


𝑀𝑖𝑛 𝑧 = 𝑐1 𝑥1 + 𝑐2 𝑥2 + ⋯ + 𝑐𝑛 𝑥𝑛
𝑠𝑢𝑗𝑒𝑡 à
𝑎11 𝑥1 + 𝑎12 𝑥2 + ⋯ + 𝑎1𝑛 𝑥𝑛 = 𝑏1
.
(P)
.
.
𝑎𝑚1 𝑥1 + 𝑎𝑚2 𝑥2 + ⋯ + 𝑎𝑚𝑛 𝑥𝑛 = 𝑏𝑚
𝑥𝑖 ≥ 0

Problème avec des variables artificielles


𝑀𝑖𝑛 𝑤 = 𝑡1 + 𝑡2 + ⋯ + 𝑡𝑚
𝑠𝑢𝑗𝑒𝑡 à
𝑎11 𝑥1 + 𝑎12 𝑥2 + ⋯ + 𝑎1𝑛 𝑥𝑛 + 𝑡1 = 𝑏1
𝑎21 𝑥1 + 𝑎22 𝑥2 + ⋯ + 𝑎2𝑛 𝑥𝑛 + 𝑡2 = 𝑏2
(𝑃𝑎 )
.
.
𝑎𝑚1 𝑥1 + 𝑎𝑚2 𝑥2 + ⋯ + 𝑎𝑚𝑛 𝑥𝑛 + 𝑡𝑚 = 𝑏𝑚
𝑥𝑖 ≥ 0; 𝑡𝑗 ≥ 0
RAMCHOUN HASSAN 23
Résolution des
Programmes Linéaires Variables artificielles

Le modèle Pa permet soit de conclure que le problème P est non réalisable,


soit de trouver une solution de base réalisable de P avec laquelle nous
pouvons initialiser L’algorithme de Simplexe,
Si la valeur optimal de Pa est non nulle alors P est non réalisable
Si la valeur optimal de Pa est nulle alors P est réalisable et x constitue une
solution réalisable de P
Exemple
𝑀𝑎𝑥 𝑧 = 80𝑥1 + 60𝑥2 𝑀𝑖𝑛 𝑧 = −80𝑥1 − 60𝑥2
𝑆. 𝑡 𝑆. 𝑡
10𝑥1 + 6𝑥2 = 45 10𝑥1 + 6𝑥2 = 45
(P1) 4𝑥1 + 6𝑥2 ≤ 36 (𝑃= 1) 4𝑥1 + 6𝑥2 + 𝑒1 = 36
2𝑥1 + 6𝑥2 ≤ 27 2𝑥1 + 6𝑥2 + 𝑒2 = 27
𝑥1 ≥ 2 𝑥1 − 𝑒3 = 2
𝑥1 ≥ 0, 𝑥2 ≥ 0 𝑥1 , 𝑥2 , 𝑒1 , 𝑒2 , 𝑒3 ≥ 0

RAMCHOUN HASSAN 24
Résolution des
Programmes Linéaires Variables artificielles

Phase I
𝑀𝑖𝑛 𝑍𝑎 = 𝑡1 + 𝑡2
𝑆. 𝑡
10𝑥1 + 6𝑥2 + 𝑡1 = 45
(Pa) 4𝑥1 + 6𝑥2 + 𝑒1 = 36
2𝑥1 + 6𝑥2 + 𝑒2 = 27
𝑥1 − 𝑒3 +𝑡2 = 2
𝑥1 , 𝑥2 , 𝑒1 , 𝑒2 , 𝑒3 , 𝑡1 , 𝑡2 ≥ 0

Le tableau initial de Simplexe soit

V.B x1 x2 e1 e2 e3 t1 t2 b
t1 10 6 0 0 0 1 0 45
e1 4 6 1 0 0 0 0 36
e2 2 6 0 1 0 0 0 27
t2 1 0 0 0 -1 0 1 2
-𝑍𝑎 -𝑍 0 a 0 0 0 0 0 1 1 0

RAMCHOUN HASSAN 25
Résolution des
Programmes Linéaires Variables artificielles

Pour que t1 et t2 jouent le rôle de variables de base Il faut


transformer le tableau précédent en soustrayant la 1er et la 4 emme
ligne de la dernière ligne

V.B x1 x2 e1 e2 e3 t1 t2 b
t1 10 6 0 0 0 1 0 45
e1 4 6 1 0 0 0 0 36
e2 2 6 0 1 0 0 0 27
t2 1 0 0 0 -1 0 1 2
-𝑍𝑎 -𝑍 0 a -11 -6 0 0 1 0 0 -47

26
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Variables artificielles

V.B x1 x2 e1 e2 e3 t1 t2 b
t1 0 6 0 0 10 1 -10 25
e1 0 6 1 0 4 0 -4 28
e2 0 6 0 1 2 0 -2 23
x1 1 0 0 0 -1 0 1 2
-𝑍𝑎 -𝑍 0 a 0 -6 0 0 -10 0 11 -25

V.B x1 x2 e1 e2 e3 t1 t2 b
e3 0 3/5 0 0 1 1/10 -1 5/2
e1 0 18/5 1 0 0 -2/5 0 18
e2 0 24/5 0 1 0 -1/5 0 18
x1 1 3/5 0 0 0 1/10 0 9/2
-𝑍𝑎 -𝑍 0 a 0 0 0 0 0 1 1 0

La solution (9/2,0,18,18,5/2,0,0) est optimale de Pa avec une valeur


optimal égale à 0 Donc cette solution constitue une solution de base
initiale du P1
27
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Variables artificielles

Phase II
V.B x1 x2 e1 e2 e3 b
e3 0 3/5 0 0 1 5/2
e1 0 18/5 1 0 0 18
e2 0 24/5 0 1 0 18
x1 1 3/5 0 0 0 9/2
-Z -80 -60 0 0 0 0

Multiplier la 4 ligne *80 et l’ajouter à la dernière ligne

V.B x1 x2 e1 e2 e3 b
e3 0 3/5 0 0 1 5/2
e1 0 18/5 1 0 0 18
e2 0 24/5 0 1 0 18
x1 1 3/5 0 0 0 9/2
-Z 0 -12 0 0 0 360
28
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Variables artificielles

V.B x1 x2 e1 e2 e3 b
e3 0 0 0 -3/5 1 1/4
e1 0 0 1 -18/5 0 9/2
x2 0 1 0 5/24 0 15/4
x1 1 0 0 -1/8 0 9/4
-Z 0 0 0 5/4 0 405

La solution de P1 soit (9/4,15/4) avec Z=-405

RAMCHOUN HASSAN 29
Résolution des
Programmes Linéaires Méthode de grand M

Phase I
𝑀𝑖𝑛 𝑍𝑀 = −80𝑥1 − 60𝑥2 + 𝑀𝑡1 + 𝑀𝑡2
𝑆. 𝑡
10𝑥1 + 6𝑥2 + 𝑡1 = 45
4𝑥1 + 6𝑥2 + 𝑒1 = 36
2𝑥1 + 6𝑥2 + 𝑒2 = 27
𝑥1 − 𝑒3 +𝑡2 = 2
𝑥1 , 𝑥2 , 𝑒1 , 𝑒2 , 𝑒3 , 𝑡1 , 𝑡2 ≥ 0

V.B x1 x2 e1 e2 e3 t1 t2 b
t1 10 6 0 0 0 1 0 45
e1 4 6 1 0 0 0 0 36
e2 2 6 0 1 0 0 0 27
t2 1 0 0 0 -1 0 1 2
-𝑍𝑀 -80 -60 0 0 0 M M 0

Soustrayez M*1er ligne et M*4 ligne de la dernière ligne

30
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Méthode de grand M

V.B x1 x2 e1 e2 e3 t1 t2 b
t1 10 6 0 0 0 1 0 45
e1 4 6 1 0 0 0 0 36
e2 2 6 0 1 0 0 0 27
t2 1 0 0 0 -1 0 1 2
-𝑍𝑀 -𝑍 0 _M -80-11M -60-6M 0 0 M 0 0 -47M

On obtient comme tableau final (dernière itération)

V.B x1 x2 e1 e2 e3 t1 t2 b
e3 0 3/5 0 0 1 1/10 -1 5/2
e1 0 18/5 1 0 0 -2/5 0 18
e2 0 24/5 0 1 0 -1/5 0 18
x1 1 3/5 0 0 0 1/10 0 9/2
-𝑍𝑀 -𝑍 0 _M 0 -12 0 0 0 8+M M 360

31
RAMCHOUN HASSAN
Résolution des
Programmes Linéaires Méthode de grand M

Toutes les variables artificielles sont hors base avec un fort coefficient
positif et ne pourront plus y entrer La phase II s’achève en éliminant les
variables artificielles du tableau précédent , Nous retrouvons le tableau
suivant avec lequel on démarre la phase II du simplex

V.B x1 x2 e1 e2 e3 b
e3 0 3/5 0 0 1 5/2
e1 0 18/5 1 0 0 18
e2 0 24/5 0 1 0 18
x1 1 3/5 0 0 0 9/2
-Z 0 -12 0 0 0 360

Finalement on arrive à la même itération qu’on à déjà obtenue avec la


méthode des variables artificielles c à d qu’on aura la même solution
final

RAMCHOUN HASSAN 32
Dualité en
programmation linéaire Définitions et Propriétés
Définition: Soit (P) un PL sous forme canonique
Max z= 𝑐 𝑡 x Min w=𝑏𝑡 y
(𝑃) S,t S,t
Le problème dual de P est (D)
Ax ≤ b 𝐴𝑡 𝑦 ≥ c
x≥0 y≥0
Exemple 1
Max z = x1 + 4x2 Min w = 2y1 + 5y2 + 3y3
Sujet à : Sujet à :
y1 + 2y2 1
x1 – x2  2 -y1 + y2 + y3  4
2x1 + x2  5 y1, y2 , y3  0
x2  3
x1, x2  0
Exemple 2: Reprenons l ’exemple de production, Supposons à présent qu'un
acheteur se présente pour acheter toutes les ressources de l'entreprise. Il propose à
l'entreprise les prix unitaires y1, y2, y3 pour chacune des ressources.
- L'entreprise acceptera de lui vendre toutes ses ressources uniquement si elle
obtient pour chaque produit un prix de vente au moins égal au profit qu'elle ferait
en vendant ses produits.
- De son côté, l'acheteur cherche à minimiser ses dépenses
Quels prix unitaires y1, y2, y3 l'acheteur doit-il proposer à l'entreprise en
question pour qu'elle accepte de vendre toutes ses ressources ? 33
Construction du couple primal-dual

Contraintes (4.2.2)
d’inégalité :

Forme standard :
(4.2.4)

34
35
36
Dualité en
programmation linéaire Définitions et Propriétés

Propriétés
1) Tout PL admet son dual
2) Le dual de dual et le primal
3) A chaque variable du primal est associé une contrainte du dual
4) A chaque contrainte du primal est associé une variable du dual
5) Si l’objectif du primal est à maximiser Alors l’objectif du dual est à
minimiser et inversement

Corollaire
Si le problème primal admet une solution réalisable 𝑥 et si son dual
admet une solution réalisable 𝑢 telle que 𝑐 𝑡 𝑥 = 𝑏𝑡 𝑢 Alors 𝑥 𝑒𝑡 𝑢
Sont des solutions optimales respectivement de primal et de dual

Théorème des écarts complémentaires


Soit x et u des solutions réalisables respectivement pour les problèmes
primal et dual Alors x et u sont optimales ssi
(𝑢𝑡 𝑎.𝑗 − 𝑐𝑗 ) 𝑥𝑗 = 0 j=1,2,…,n

37
RAMCHOUN HASSAN
Exercice 1
Un industriel désire transporter, à moindre cout, un certain bien depuis m entrepôts
vers n magasins. La disponibilité de l’entrepôt 𝑖 (1 ≤ 𝑖 ≤ 𝑚) est 𝑎𝑖 et la demande
du magasin 𝑗 (1 ≤ 𝑗 ≤ 𝑛) est 𝑏𝑗 . Nous supposons que 𝑎𝑖 ≥ 0 est 𝑏𝑗 ≥ 0.
Le cout unitaire de transport de l’entrepôt i vers le magasin j est 𝐶𝑖𝑗 . En général, le
problème de transport est résumé par un tableau de la forme:

M1 M2 … Mj … Mn Disponibilité
E1 C11 C12 … C1j … C1n a1
E2 C21 C22 … C2j … C2n a2
… …
Ei Ci 1 Ci 2 … Ci j … Ci n ai
… …
Em Cm1 Cm2 … Cmj … Cmn am
Demande b1 b2 … bj … bn

Le problème de l’industriel est de déterminer la quantité à envoyer de chaque


entrepôt vers chacun des magasins de telle manière que le cout total de transport
soit le plus faible possible. Modéliser ce problème sous forme d’un programme
linéaire.
38
Exercice 2

Une usine fabrique 2 produits X et Y à partir des matières


première A,B et C. pour fabriquer un X on a besoin de 2A , 2B et
1C et pour fabriquer un Y on a besoin de 3A,1B et 3C. On a en
stock 180 A, 120 B et 150 C. Combien faut-il fabriquer de X et
de Y pour maximiser le profit sachant que la fabrication d’un X
rapporte 3 M dhs et celle d’un Y rapporte 4 M dhs ?
Indication (Modéliser sous forme d’un PL en résolvant le
programme obtenue graphiquement)

39
RAMCHOUN HASSAN
Exercice 2

Donnez le dual des deux programmes suivants

𝑀𝑎𝑥 𝑧 = 2𝑥1 − 3𝑥2 + 4𝑥3 − 5𝑥4 𝑀𝑖𝑛 𝑧 = 𝑥1 + 2𝑥2 + 𝑥3


𝑠𝑢𝑗𝑒𝑡 à 𝑠𝑢𝑗𝑒𝑡 à
𝑥1 + 2𝑥2 + 3𝑥3 − 2𝑥4 ≥ 30 𝑥1 + 𝑥2 − 𝑥3 ≤ 2
(P1 ) 2𝑥1 + 7𝑥2 − 𝑥3 + 𝑥4 = 40 (P2 ) 𝑥1 − 𝑥2 + 𝑥3 = 1
−3𝑥1 + 6𝑥2 + 4𝑥3 − 𝑥4 ≥ 10 2𝑥1 + 𝑥2 + 𝑥3 ≥ 2
4𝑥1 − 5𝑥2 + 2𝑥3 + 2𝑥4 = 18 𝑥1 ≥ 0
𝑥1 , 𝑥4 ≥ 0 𝑥2 ≤ 0

40
RAMCHOUN HASSAN
Elément de théorie des graphes

Un graphe est un couple G=(X,U) formé de deux ensembles celle des


sommets X et celle des arcs
Exemple
X={x1, x2, x3, x4, x5, x6}
U={(x1, x2);(x1, x4);(x2, x4);(x4, x3);(x5, x5);(x2, x1)}
Graphe valué: noté G=(X, U, c) ou c est une fonction de U dans R
appelée poids des arcs c(x, y)
Successeur, Prédécesseur Matrice d’adjacence d’un graphe
Graphe orienté , Graphe non orienté
Les graphes permettent de modéliser de très grand nombre de situation
 Problèmes d ’ordonnancement
 Problèmes d ’affectation
 Problèmes de transport

41
RAMCHOUN HASSAN
Eléments
de théorie des graphes Problème de plus cour chemin

Trouver un chemin u allant du sommet x au sommet y tq la


longueur de u soit optimal

Exemple
Considérons la carte routière et cherchons la route la plus
courte d’une localité à une autre , le graphe est obtenu de la
façon suivante
- Sommets correspondent au localités
- Arcs correspondent aux routes

RAMCHOUN HASSAN 42
Problème
de plus cour chemin Ordonnancement d’un graphe en niveaux

Ordonnancement d’un graphe en niveaux


 S’applique aux graphes sans circuit
 Organiser le graphe de telle sorte que
N0={ Ensemble des sommets sans prédécesseur}
A partir de X-N0 on détermine l’ensemble
N1={Ensemble des sommets sans prédécesseur dans X-N0}
 On procède jusqu’à un ordonnancement total de tous les
sommets

Recherche de plus court chemin par la méthode de Ford


𝜆𝑘𝑘 = 0 par convention ℎ 𝜖 𝑃𝑟é𝑑é𝑐𝑒𝑠𝑠𝑒𝑢𝑟 𝑖
Pour un sommet donné : avec 𝑎ℎ𝑖 : Valuation de l’arc (h, i)
𝜆𝑘𝑖 =Min ou max [𝜆𝑘ℎ + 𝑎ℎ𝑖 ]

43
RAMCHOUN HASSAN
Exercice

Soit le graphe valué ci-dessous, représentant les routes qui existent entre
les points A et F. Les valeurs indiquées sur chaque arc sont des distances
kilométriques et les sommets représentent les points de passage possible ;
de plus, comme il s’agit d’un pays de montagne, routes étroites, la circulation
y a lieu à sens unique.

On demande:
 De faire le graphe partagé en niveaux.
 D’appliquer l’algorithme de Ford à ce graphe, pour déterminer le
chemin le plus court conduisant de A à F, et de donner sa longueur.

18/06/2014 RAMCHOUN HASSAN 44


Problème d’arbre
recouvrant minimal Définitions et remarques

On appelle T un arbre recouvrant d’un graphe non orienté G un


arbre tel que ces sommets sont tous les sommets de G et ces
arrêtes sont certaines de G

• Un graphe peut avoir plusieurs arbres recouvrant


• Un arbre n’a qu’un seul arbre recouvrant lui-même
• Un graphe non connexe n’a aucun arbre recouvrant
• Un graphe connexe a forcement ( au moins ) un arbre
recouvrant

45
RAMCHOUN HASSAN
Problème d’arbre
recouvrant minimal Algorithme de Kruskal

Etant donné un graphe valué connexe, on veut construire un


arbre recouvrant de poids total le plus petit possible

 On part d’une forêt d’arbres constitués de chacun des


sommets isolés du graphe
 A chaque itération on ajoute à cette forêt l’arête de poids
le plus faible ne créant pas de cycle avec les arêtes déjà
choisies
 On stoppe quand on a examiné toutes les arêtes

46
RAMCHOUN HASSAN
Problème d’arbre
recouvrant minimal Algorithme de Kruskal

47
RAMCHOUN HASSAN
Problème d’arbre
recouvrant minimal Exemple

RAMCHOUN HASSAN 48
Problème d’arbre
recouvrant minimal Exemple

49
RAMCHOUN HASSAN
Problème d’arbre
recouvrant minimal Exemple

RAMCHOUN HASSAN 50
Problème d’arbre
recouvrant minimal Exemple

51
RAMCHOUN HASSAN
Problème d’arbre
recouvrant minimal Algorithme de Prim

 On part d’un arbre initial réduit à un seul sommet du


graphe.
 À chaque itération, on agrandit l’arbre en lui ajoutant le
sommet libre accessible de plus petit poids possible.
 On stoppe quand l’arbre est recouvrant

52
RAMCHOUN HASSAN
Problème d’arbre
recouvrant minimal Algorithme de Prim

53
RAMCHOUN HASSAN
Problème d’arbre
recouvrant minimal Algorithme de Prim

54
RAMCHOUN HASSAN
Problème d’arbre
recouvrant minimal Algorithme de Prim

55
RAMCHOUN HASSAN
Problème d’arbre
recouvrant minimal Exercice

Appliquer l’algorithme de Kruskal et du PRIM au graphe


G suivant en commençant par le sommet x

56
RAMCHOUN HASSAN
Problème d’arbre
recouvrant minimal Corrigé (Kruskal)

RAMCHOUN HASSAN 57
Problème d’arbre
recouvrant minimal Corrigé (Prim)

58
RAMCHOUN HASSAN
Analyse en composantes
principales

RAMCHOUN HASSAN 59
Analyse en
Principe de l’ACP
composantes principales

 Représenter au mieux dans un espace plus réduit des observations


issues d’un espace plus grand en nombres de dimensions (Xj variables) :
 Simplification de la réalité
 Concentration d’une information de départ diluée
 Description du maximum de variabilité dans un espace réduit
X1 X2 X3 ...
ind 1 33 12 55 ...
ind 2 25 11 50 ...
ind 3 29 11 43 ...
... ... ... ... ...
Quelles applications?
 Analyses de données :
 Réduction du nombres de variables explicatives (Xj) avant
modélisation
 Obtention de nouvelles variables explicatives (Cj) non corrélées

 Imagerie :
 Compression d’image
 Reconnaissance faciale
Analyse en
composantes principales
Situation

 P variables quantitatives ont été mesurées sur N individus :


X1 X2 ... Xj ... Xp
ind 1 x11 x11 ... x1j ... x1p
ind 2 x12 x22 ... x2j ... x2p
... ... ... ... ... ... ...
ind i xi1 xi2 ... xij ... xip
... ... ... ... ... ... ...
ind n xn1 xn2 ... xnj ... xnp
 Q : Peut-on « simplifier », « concentrer » ou « compresser » l’essentiel de
l’information contenue dans ce tableau?
 Exemple : Mesures de P variables sur N individus différents
Analyse en
composantes principales

Objectifs de l’ACP (PCA)


Analyse en Composante Principale (Principal Component Analysis)

 Déterminer un moyen efficace de cartographier les échantillons (objets,


individus)
◦ Echantillons similaires proches les uns des autres;
◦ Echantillons dissimilaires distants les uns des autres.
 Extraire le maximum d’information
 Réduire la dimension
 Créer de nouvelles variables

RAMCHOUN HASSAN 63
Analyse en
composantes principales

 Typologie des individus :


 La lecture graphique de la position des individus le long des composantes
principales permet de dresser une typologie
 Les individus proches le long d’une composante principale sont des individus
qui partagent les mêmes caractéristiques vis-à-vis des
variables quantitatives étudiées

 Typologie des variables :


 Chaque composante principale est une combinaison linéaire des variables de
départ auxquelles sont affecté des poids
 La lecture graphique du cercle des corrélations permet de juger du
poids des différentes variables de départ sur chacune des composantes
principales

RAMCHOUN HASSAN 64
Analyse en
composantes principales

Interprétation des résultats

RAMCHOUN HASSAN 65
Analyse en
composantes principales Interprétation

RAMCHOUN HASSAN 66
Analyse en
composantes principales

RAMCHOUN HASSAN 67
Analyse en
composantes principales

RAMCHOUN HASSAN 68
Merci Pour Votre
Attention
69