Vous êtes sur la page 1sur 3

Université Chouaïb Doukkali

Faculté des Sciences Année Universitaire 2023-2024

Section SMI5
Devoir de Recherche Opérationnelle
Exercice 1
1. La matrice qui suit donne en heures les durées des vols entre certaines villes v1 , v2 , . . . , v6 .
 
0 3 ∞ 5 ∞ ∞
3
 0 5 2 4 ∞ 
∞ 4 0 ∞ 4 3
 
6
 2 ∞ 0 4 4 
∞ 4 4 5 0 2
∞ ∞ 5 4 3 0

Le terme (i, j) de cette matrice est égale à ∞ lorsque le vol de vi à destination de vj n’existe pas.
Tracer le graphe associé.
En utilisant l’algorithme de Dijkstra, donner les chemins 1i minimaux.
2. Soit n un entier ≥ 5. Le graphe Gn a pour sommets {x1 , . . . , xn } et ses arêtes sont définies par :
(xi , xj ) est une arête si, et seulement si, |i − j| = 1 ou 2.
(a) Dessiner G6
(b) Montrer que dans Gn exactement deux sommets sont de degré 2, et deux sont de degré 3.
Quel est le degré des autres sommets ?
(c) Donner, en fonction de n, le nombre d’arêtes de Gn
3. Dans le graphe dont la matrice poids est donnée ci-dessous, illustrer le fait que l’algorithme de
Dijkstra ne peut pas être appliqué.
 
0 2 ∞ 4
∞ 0 1 ∞
 
∞ ∞ 0 ∞
∞ ∞ −2 0

Exercice 2
La matrice qui suit correspond à la matrice poids d’un graphe G :
 
0 3 8 ∞ −4
∞ 0 ∞ 1 7
 
∞ 4 0 ∞ ∞ 
 
 2 ∞ −5 0 ∞ 
∞ ∞ ∞ 6 0

Tracer le graphe G associé.


Illustrer l’algorithme de Floyd pour trouver les chemins ri−minimaux.
Exercice 3
1. Montrer qu’un graphe G est fortement connexe si, et seulement si, G est connexe et tout arc est
dans un circuit.
2. Est-il vrai que si dans un graphe G on xRf y et yRf x alors il existe un circuit élémentaire passant
par x et y ?
3. On dit qu’un sommet s d’un graphe connexe G est d’articulation, si le graphe G \ {s} n’est pas
connexe. Donner un exemple.

1
Exercice 4
Une entreprise produit trois biens A, B et C. Ces biens peuvent être vendus, à l’unité, au prix de 10 pour
A, 56 pour B et 100 pour C. Le processus de fabrication est le suivant :
Pour produire 1 unité de A, il faut 1 heure de travail.
Pour produire une unité de B, il faut 2 heures de travail et 2 unités de A.
Pour produire une unité de C, il faut 3 heures de travail et 1 unité de B.
On dispose de 40 heures de travail au maximum.
Modéliser ce problème sous forme d’un programme linéaire permettant à l’entreprise de maximiser ses
gains.

Exercice 5 On considère le programme linéaire suivant, dépendant d’un paramètre  ∈ R.


max 4x1 − 2x2
x2 ≤ 3
x1 + (2 − )x2 ≤ 4
x1 , x2 ≥ 0

1. Montrez que le problème est réalisable quelque soit le paramètre .


2. Pour quelles valeurs de  la valeur optimale est-elle non bornée ?

Exercice 6
1. On considère le graphe G dont la matrice de poids est
 
0 8 2 ∞ ∞ ∞ ∞
∞ 0 ∞ ∞ −3 ∞ 10 
 
∞ ∞ 0 −3 ∞ ∞ ∞
 
P = ∞ 2 4 0 ∞ ∞ ∞ 
∞ ∞ 5 ∞ 0 4 ∞
 
∞ 5 ∞ ∞ −2 0 −2
∞ ∞ ∞ ∞ ∞ ∞ 0

(a) Tracer le graphe G.


(b) Appliquer l’algorithme de Bellman et donner les chemins 1i-minimaux.
(c) Nous avons appliqué l’algorithme de Floyd au graphe G, et nous avons trouvé les matrices
finales :
   
0 1 2 −1 −2 2 0 1 4 3 3 4 5 6
∞ 0 2 −1 −3 1 −1 0 2 5 5 5 5 6
   
∞ −1 0 −3 −4 0 −2 0 4 3 4 4 5 6
P (7) =  P red(7)
   
∞ 2 4 0 −1 3 1 0
= 2 3 4 2 5 6
∞ 4 5 2 0 4 2 0 4 3 3 5 6 6
   
∞ 2 3 0 −2 0 −2 0 5 5 5 5 6 7
∞ ∞ ∞ ∞ ∞ ∞ 0 0 0 0 0 0 0 7

En expliquant votre démarche, donner les chemins optimaux ainsi que leurs valeurs.
2. On considère l’algorithme suivant :
Pour i = 1 à n faire
– aii = 1
– pour j = 1 à n faire
pour k = 1 à n faire
ajk = max (ajk , aji .aik ).
 
0 1 0 1
0 0 1 0
(a) appliquer l’algorithme au graphe ayant la matrice A = 
0

0 0 0
1 1 0 0

2
(b) Montrer qu’on aura aij = 1 ⇔ ∃ un chemin de xi vers xj .

Exercice 7
1. Montrer que tout graphe non orienté simple d’ordre n ≥ 2 a au moins deux sommets de même
degré
2. Un graphe G est dit biparti si on peut partitionner l’ensemble de ses sommets en V1 et V2 de sorte
que tout arc de G a une extrémité dans V1 et l’autre dans V2 .
(a) Un graphe biparti peut-il contenir un cycle de logueur impaire ? donner un exemple ou justifier.
(b) Imaginer un algorithme qui permet de détecter si un graphe est biparti.
3. Expliquer comment, dans l’algorithme de Floyd, on peut trouver le tracé des chemins optimaux .

4. (a) Dans le graphe valué G ci-dessous, utiliser l’algorithme de Dijkstra pour déterminer les plus
court chemins depuis le sommet A vers tous les autres sommets.
G

B 5

2 3 2

A 6 D

13 7 10 4 8

E 8 K 5 L 12 H 10 F

1 3 1 4 5

5 C 7 I

2 9 1

(b) Décrire le lien existant entre le problème d’ordonnancement d’un projet et celui de recherche
du plus court chemin dans un graphe ?
Quel avantage aurait-on à utiliser l’algorithme de Bellman dans un problème d’ordonnance-
ment ?

Exercice 8
Dans une entreprise, chaque employé travaille cinq jours consécutifs suivis de deux jours de congé. On
dispose de 4 catégories d’employés selon leurs jours de congé. Le salaire varie selon la catégorie à laquelle
appartient l’employé :
Catégorie 1 2 3 4
Jours de congé Vendredi, samedi samedi, dimanche dimanche, lundi lundi, mardi
Salaire 5200 4800 5200 5600
Les besoins quotidiens en employés dépendent du jour de la semaine :
Jour Lundi Mardi Mercredi Jeudi Vendredi Samedi Dimanche
Effectif demandé 25 18 41 41 30 18 24
Modéliser le problème de l’entreprise, sous forme d’un programme linéaire, de sorte à satisfaire
les besoins journaliers et à minimiser le coût du personnel.

Vous aimerez peut-être aussi