Cours RO Expanded
Cours RO Expanded
Ce cours couvre
Partie I Programmation Linéaire (PL)
Dénitions, modélisation et hypothèses
Problème de transport
Résolution graphique
Contents
2 Modélisation de Problèmes en PL 4
2.1 Exemple 1 : Problème de Production (Fabrication de Peintures) . . . . . . 4
2.1.1 Étape 1 : Identier les variables de décision . . . . . . . . . . . . . 4
2.1.2 Étape 2 : Formuler la fonction objectif . . . . . . . . . . . . . . . . 5
2.1.3 Étape 3 : Écrire les contraintes . . . . . . . . . . . . . . . . . . . . 5
2.1.4 Le Programme Linéaire complet . . . . . . . . . . . . . . . . . . . . 5
2.2 Exemple 2 : Problème de Régime Alimentaire . . . . . . . . . . . . . . . . 6
3 Hypothèses Restrictives de la PL 6
4 Modélisation d'un Problème de Transport 7
5 Résolution Graphique d'un Programme Linéaire 8
5.1 Principe de la méthode graphique . . . . . . . . . . . . . . . . . . . . . . . 8
5.2 Le Théorème fondamental de la PL . . . . . . . . . . . . . . . . . . . . . . 9
5.3 Exemple prototype : Problème des Ateliers . . . . . . . . . . . . . . . . . . 9
5.3.1 Formulation du PL . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.3.2 Région réalisable et sommets . . . . . . . . . . . . . . . . . . . . . . 10
5.3.3 Calcul des sommets non évidents . . . . . . . . . . . . . . . . . . . 10
5.3.4 Évaluation de la FO aux sommets . . . . . . . . . . . . . . . . . . . 10
1
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
8 Graphes Planaires 16
8.1 Dénition et intuition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
8.2 Formule d'Euler pour les graphes planaires . . . . . . . . . . . . . . . . . . 17
8.3 Le graphe K3,3 n'est pas planaire . . . . . . . . . . . . . . . . . . . . . . . 17
2
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
PARTIE I
Programmation Linéaire
Remarque
Le mot linéaire est fondamental. Une expression est linéaire si chaque variable
apparaît seule, élevée à la puissance 1, et sans multiplication entre deux variables.
x 2
1 ou x1 · x2 ne sont pas linéaires. (×)
Pourquoi cette restriction ? Parce que les fonctions linéaires ont des propriétés
géométriques très agréables (elles forment des droites, des plans) qui permettent
de trouver la solution optimale ecacement.
3
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
où les cj sont les coecients de la fonction objectif, les aij sont les coecients des
contraintes, et les bi sont les membres droits (les limites disponibles).
4
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
Les trois points sont admissibles (ils respectent toutes les contraintes), mais le point
(5, 0) est optimal car il maximise Z.
2. Modélisation de Problèmes en PL
Contraintes supplémentaires :
5
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
6x1 + 4x2 ≤ 24
Contrainte sur M2 :
x1 + 2x2 ≤ 6
Demande maximale en intérieure :
x2 ≤ 2
Contrainte de liaison : La production intérieure ne dépasse pas d'une tonne celle
de l'extérieure signie x2 ≤ x1 + 1 , soit :
−x1 + x2 ≤ 1
Non-négativité (CNN) :
x1 ≥ 0, x2 ≥ 0
Remarque
Les contraintes de non-négativité (CNN) sont systématiquement présentes en PL
classique car les quantités physiques (production, transport, stocks. . . ) ne peuvent
pas être négatives. Il ne faut jamais les oublier.
6
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
Remarque
Ce problème est de minimisation avec des contraintes de type ≥ (on doit au moins
satisfaire les besoins nutritionnels). C'est le contraire du problème de production
où les contraintes étaient de type ≤ (on ne peut pas utiliser plus que les ressources
disponibles).
3. Hypothèses Restrictives de la PL
La PL est un modèle puissant, mais il repose sur quatre hypothèses implicites. Il est
crucial de les comprendre pour savoir quand la PL est applicable.
7
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
Pourquoi ? Le modèle mathématique doit avoir des données xes pour être résolu.
Si les données sont incertaines (exemple : le prix du marché uctue), on utilise
l' analyse de sensibilité ou la programmation stochastique.
Remarque
Le problème de transport est un cas particulier de PL avec une structure très régulière.
Les variables sont les quantités transportées de chaque source vers chaque desti-
nation. Si on a m sources et n destinations, il y a m×n variables.
8
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
Énoncé
Une entreprise dispose de deux dépôts D1 (capacité 8 u.) et D2 (capacité 9 u.)
et de trois points de vente A (besoin 4), B (besoin 5), C (besoin 8). Les coûts de
transport unitaires (Dt/u.) sont :
A B C
D1 5 3 4
D2 6 7 2
9
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
2. Pour chaque contrainte ax1 + bx2 ≤ c, tracer la droite frontière ax1 + bx2 = c.
Pourquoi ? Intuitivement, la fonction objectif est une droite (en 2D) qu'on déplace
dans la direction de l'optimisation. Cette droite touche la région réalisable en dernier
en un sommet (ou sur un côté entier, mais un sommet appartient toujours à ce côté).
Donc il sut de tester les sommets pour trouver l'optimum.
Remarque
Ce théorème est extraordinairement utile : au lieu d'explorer une innité de points
admissibles, il sut d'évaluer la FO en un nombre ni de sommets.
Marge (Dt/u.) 3 5
10
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
5.3.1. Formulation du PL
x1 = quantité de Produit 1 ; x2 = quantité de Produit 2.
x2
x1 = 4
7
C(2, 6)
D(0, 6)6 x2 = 6
3 B(4, 3)
RR
2
x1
O(0, 0) 0 1 2 3 4
A(4,5 0) 6 3x1 + 2x2 = 18
11
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
À retenir
Solution optimale : x∗1 = 2, x∗2 = 6, avec Z ∗ = 36 Dt.
L'entreprise doit produire 2 unités du Produit 1 et 6 unités du Produit 2 pour
maximiser la marge hebdomadaire à 36 Dt.
12
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
PARTIE II
p1
p3
B A C
p2
p4
p5 p7 p6
Aujourd'hui, les graphes modélisent les réseaux informatiques, les routes, les réseaux
sociaux, les circuits électroniques, les emplois du temps, etc.
un ensemble E (ou U) d' arêtes (edges ), chaque arête étant une paire de som-
mets {u, v}.
On note G = (V, E). L' ordre du graphe est |V | (nombre de sommets) et sa taille
est |E| (nombre d'arêtes).
13
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
A B
C D
Boucle : arête d'un sommet vers lui-même. Elle compte double dans le degré.
Graphe complet K n : graphe simple où chaque sommet est relié à tous les
n(n − 1)
autres. Il possède arêtes.
2
Graphe planaire : graphe qui peut être dessiné dans le plan sans croisement
d'arêtes (hors sommets).
K3 (triangle) K4
n(n−1)
K3 : 3 sommets, 3 arêtes. K4 : 4 sommets, 6 arêtes. Kn : n sommets,
2
arêtes,
chaque sommet de degré n − 1.
14
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
1 2
3 4
La somme des degrés de tous les sommets est égale à deux fois le nombre d'arêtes.
Démonstration :
P
On a v∈V d(v) = 2|E|, qui est pair. On décompose la somme
en deux parties :
X X
d(v) + d(v) = 2|E| (pair)
d(v) pair d(v) impair
| {z } | {z }
somme paire ?
La première somme est paire (somme de nombres pairs). Donc la deuxième somme
est aussi paire. Or une somme de nombres impairs n'est paire que si le nombre de
15
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
C1 C2
3
16
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
T1
E1
E2 T2
E3
T3
Employés Tâches
8. Graphes Planaires
F3
F4
4
F1 F2
1 2
17
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
|V | − |E| + R = 2
Intuition : Cette formule est remarquable car elle est vraie pour tout graphe planaire
connexe, quelle que soit sa structure. C'est une propriété topologique fondamentale.
Exemple rapide : Un cube : |V | = 8, |E| = 12, R = 6. Vérions : 8 − 12 + 6 = 2.
✓
X
d(r) ≥ 4R = 4 × 5 = 20
r∈régions
X
d(r) ≤ 2|E| = 2 × 9 = 18
r
18
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
γ(G) = m − n + p
Remarque
Interprétation intuitive :
Intuition : Lorsqu'on parcourt un cycle eulérien, chaque fois qu'on entre dans un
sommet par une arête, on doit en repartir par une autre arête diérente. Les arêtes
19
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
Le coloriage des graphes répond à la question : comment attribuer des couleurs aux
sommets (ou arêtes) d'un graphe de sorte que deux éléments voisins aient toujours des
couleurs diérentes, en utilisant le moins de couleurs possible ?
20
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
1 2
3 4
χ(G) = 3 (rouge, bleu, vert). Il est impossible de colorier proprement avec 2 couleurs
car le graphe contient un triangle (1, 2, 3) les 3 doivent avoir des couleurs diérentes.
Algorithme Welsh-Powell
1. Trier les sommets par ordre décroissant de leur degré.
2. Parcourir la liste et, pour chaque sommet non encore colorié :
lui attribuer la première couleur non encore utilisée par ses voisins déjà
coloriés ;
3. Passer à la couleur suivante jusqu'à ce que tous les sommets soient coloriés.
21
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
Sommet V1 V3 V5 V7 V4 V2 V6
Degré 5 4 4 4 3 2 2
Résultat indicatif :
Sommet V1 V3 V5 V7 V4 V2 V6
Couleur C1 C2 C3 C3 C2 C2 C2
ω(G) ≤ χ(G) ≤ ∆ + 1
Minoration : χ(G) ≥ ω(G) . Tous les sommets d'une clique sont mutuellement
adjacents, donc ils doivent tous avoir des couleurs diérentes. On a besoin d'au
moins ω(G) couleurs.
22
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
2 ≤ χ(G) ≤ 4
A B
D C
E
23
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
(e , e ) ∈ E
1 2
′
si et seulement si les arêtes e1 et e2 partagent un sommet dans G.
Lien fondamental : colorier les arêtes de G est équivalent à colorier les sommets
′ ′
de G. Donc χ (G) = χ(G′ ).
a1
a1
1 2
a2 a3 a4 a2 a3
3 4
a5
a4 a5
G G (graphe adjoint)
′
24
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
PARTIE III
Exercices d'Application
Solution :
Variables : x1 = nombre d'IM4 ; x2 = nombre d'IM5.
Programme Linéaire :
max Z = 400x1 + 800x2
x1 + x2 ≤ 10 000 (processeurs)
2x + 6x ≤ 48 000 (barrettes)
1 2
3x1 + x2 ≤ 24 000 (assemblage)
x1 , x2 ≥ 0
Méthode : On résout les intersections deux à deux. Par exemple, x1 +x2 = 10000 et
3x1 + x2 = 24000 donnent 2x1 = 14000 ⇒ x1 = 7000, x2 = 3000, et Z = 2 800 000 +
2 400 000 = 5 200 000.
On évalue Z en tous les sommets et on retient le maximum.
25
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
pair.
P
Or, par le Lemme des Poignées de Mains, d(v) = 2|E|, qui est toujours
Contradiction !
Conclusion : Une telle conguration est impossible.
26
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
Solution : P
Si chaque sommet a degré k, alors d(v) = nk .
Par le Lemme des Poignées de Mains :
nk
nk = 2|E| =⇒ |E| =
2
Conditions d'existence :
nk
2
doit être un entier ⇒ nk doit être pair, donc n ou k est pair.
Solution :
Construisons un graphe G : les sommets sont les 7 commissions. On relie deux
commissions par une arête s'il existe un conseiller leur appartenant toutes deux.
Puisque toute paire de commissions partage exactement un conseiller, toute paire
de sommets est reliée par une arête : le graphe est le graphe complet K7 .
7×6
Nombre d'arêtes de K7 : = 21.
2
Chaque arête représente un conseiller (le conseiller commun aux deux commissions
qu'elle relie). Par la Règle 1, chaque conseiller appartient à exactement 2 commis-
sions, donc correspond à exactement une arête.
Exercice Non-planarité de K5
Montrer que si G est un graphe simple planaire à n sommets et m arêtes (n ≥ 3),
alors m ≤ 3n − 6. En déduire que K5 n'est pas planaire.
Solution :
Supposons G planaire et connexe (n ≥ 3). Par la formule d'Euler : R = 2 − n + m.
Chaque région est délimitée par au moins 3 arêtes (le plus court cycle dans un graphe
27
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
X
d(r) ≥ 3R = 3(2 − n + m)
r
X
d(r) ≤ 2m
r
0 1 0 0 0 0 1
1 0 0 0 1 1 0
0 0 0 1 1 0 0
0
M = 0 1 0 1 0 0
0 1 1 1 0 1 1
0 1 0 0 1 0 0
1 0 0 0 1 0 0
1. Déterminer le nombre minimal de couleurs pour peindre les bancs (deux bancs
reliés ⇒ couleurs diérentes).
2. Est-il possible de parcourir toutes les allées sans passer deux fois par la même
?
Solution :
Degrés (somme de chaque ligne) : d(1) = 2, d(2) = 3, d(3) = 2, d(4) = 2,
d(5) = 5, d(6) = 2, d(7) = 2.
1. Coloriage Welsh-Powell :
Tri décroissant : V5 (5), V2 (3), V1 (2), V3 (2), V4 (2), V6 (2), V7 (2).
V 5 : aucun voisin colorié → C1. Qui peut aussi prendre C1 ? Les non-voisins
de V5 : V5 est adjacent à V2 , V3 , V4 , V6 , V7 . Donc V1 est non-voisin de V5 → V1
prend C1.
V 2 : adjacent à V5 (C1) et V1 (C1) → C2. Qui peut aussi prendre C2 parmi les
non coloriés ? V3 : adjacent à V5 (C1), non adjacent à V2 → C2.
V 4 : adjacent à V5 (C1) et V3 (C2) → C3. V6 : adjacent à V5 (C1) et V2 (C2),
non adjacent à V4 → C3. V7 : adjacent à V5 (C1) et V1 (C1), non adjacent à
V4 , V6 → C3.
Résultat :
28
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
Sommet V5 V2 V1 V3 V4 V6 V7
Couleur C1 C2 C1 C2 C3 C3 C3
29
Cours de Recherche Opérationnelle Licence 1 FSEG Nabeul
Programmation Linéaire
Forme générale : max / min Z = j cj xj sous j aij xj ≤ bi et xj ≥ 0.
P P
Solution admissible : satisfait toutes les contraintes.
Théorème fondamental : la solution optimale se trouve en un sommet du polyè-
dre réalisable.
Problème de transport
P : m sources,
P n destinations, m × n variables xij .
Problème équilibré : ores = demandes.
3. Pour montrer qu'un graphe n'existe pas : utiliser le Lemme des Poignées de
Mains (vérier la parité).
30