Vous êtes sur la page 1sur 113

RECHERCHE OPÉRATIONNELLE

FOUAD KISSI
F. S. J. E. S Oujda

2019-2020

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


La R.O , c'est quoi ?

Dénition : La recherche opérationnelle ( R.O ) ou ( la science de


la décision ) est la discipline des méthodes scientiques utilisable
pour élaborer de meilleurs décisions. Elle permet de rationaliser, de
simuler, de planier et d'optimiser l'architecture et le
fonctionnement des systèmes de production ou d'organisation.
La R.O est une discipline récente ( environ 60-70 ans ) qui est à la
frontière entre Informatique, Economie et Mathématiques
appliquées.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Histoire récente de la RO

Origines militaire de la RO
- objectif : optimisation de la logistique militaire et du
réapprovisionnement des troupes
- création par le gouvernement britannique au début de la
seconde guerre mondiale
- G. Dantzig,  conseiller scientique  à la U.S. Air force,
met au point en 1947 l'algorithme du simplexe.
A l'origine, le mot opérationnelle signie donc en vue de
programmer des opérations militaires.
Après , le domaine de la RO s'est étendu à des applications
civiles.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


R de RO = recherche de solutions concrètes
La science du : " comment mieux faire avec moins "

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


La RO en pratique

sert à résoudre tous types de problèmes diciles ( issus de


l'industrie ou de la nance ) :
Production
Problèmes de transport
Problèmes de télécoms
Planication de projets
gestion nancière ( banques et assurances )
et beaucoup d'autres.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Plan

Partie I : Programmation linéaire


Chap 1 : Formulation des problèmes linèaires : Modèlisation
Chap 2 : Algorithme du simplexe
Partie II : Théorie des graphes
Chap 1 : Éléments de théorie de graphe
Chap 2 : Problèmes d'ordonnancement
Chap 3 : Problèmes de transport
Partie III : Gestion des stocks

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


PREMIER CHAPITRE

Formulation des problèmes linèaires : Modèlisation

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


I) Programmation linéaire

Dénition : La programmation linéaire est une branche des


mathématiques appliquées et plus précisément de l'optimisation liée
dont l'objectif est minimiser ou maximiser une fonction numérique
à plusieurs variables sachant que ces dernières sont liées par des
relations appelées contrainte.
Le principe de la programmtion linéaire est fondé sur le fait que :
La fonction à optimiser appelée fonction objectif ou fonction
économique a une expression linéaire ;
les expressions des contraintes sont toutes linéaires.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Remarque

En économie et gestion, l'objectif est à :


Maximiser s'il s'agit d'un avantage ( bénice, coût de vente,
rendement.......) ;
Minimiser s'il s'agit d'un incovénient ( perte, coût de
production, dépense, consommation.....).

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


II) Construction des programmes linéaires :
Modélisation

Programme Linéaire (PL) = Problème de la programmation


linéaire.
Modéliser ( Modélisation ) = Formuler le problème sous forme
mathématique et créer un modèle de PL qui représente le
problème en réalité.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


II) Construction des programmes linéaires :
Modélisation

Pour modéliser un problème linéaire, il faut suivre les étapes


suivantes :
1 Identier les variables principales ou les variables de décision

du problème.
2 Exprimer la fonction objectif en termes des variables identiées

en précisant s'il s'agit d'un problème à maximiser ou à


minimiser (l'objectif traduit les buts et les préférences des
décideurs économistes).
3 Formuler les contraintes sous forme d'équations et ( ou )

d'inéquations linéaires.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


III) Exemples
1) Problème de maximisation du prot
Enoncé du problème :
Une entreprise fabrique deux produits A et B, en utilisant une
machine m et deux matières premières p et q. On dispose chaque
jour de 8 heures de m, de 10 kg de p et de 36 kg de q. On suppose
que :
La production d'une unité de A nécessite 2 kg de p et 9 kg de
q, et utilise la machine m durant 1 heure ;
La production d'une unité de B nécessite 2 kg de p et 4 kg de
q, et utilise la machine m durant 2 heure ;
les prots réalisés sont de 50 dh par unité de A et 60 dh par
unité de B.
L'objectif que poursuit l'entreprise est de maximiser le prot qu'elle
pourra tirer, par jour, de ces 2 produits en utilisant au mieux ses
ressources.
FOUAD KISSI RECHERCHE OPÉRATIONNELLE
Enoncé du problème

Le tableau suivant résume les données aérentes à ce problème de


production :
A B Disponible
m 1h 2h 8h
p 2 kg 2 kg 10 kg
q 9 kg 4 kg 36 kg
Prot unitaire 50 dh 60 dh

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


La construction d'un modèle linéaire

- Variables de décision : Notons par


x1 = la quantité du produit A à produire
x2 = la quantité du produit B à produire
Les variables x et x sont dites variables de décision.
1 2

- Fonction objectif :
- Pour le produit A, elle retire 50 dh par unité et en fabrique x 1

unités ; cette production lui rapporte donc un prot de (50x ) dh ;


1

- de même, la quantité x du produit B lui permet de faire un prot


2

de (60x ) dh.
2

Le prot total à tirer des deux produits s'élève donc à :


z = 50x1 + 60x2

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


La construction d'un modèle linéaire
Cette fonction z , qui traduit l'objectif de notre problème, s'appelle
fonction objectif ou fonction économique. Et comme nous
cherchons à rendre z aussi grand que possible, nous écrivons :
Maximiser z = 50x1 + 60x2
ou
Max z = 50x1 + 60x2
- Contrainte relative à la machine m :
Temps d'utilisation de m ≤ 8
Pour le produit A, le temps nécessaire à la fabrication de la
quantité x se calcul ainsi :
1

1 heure / (unité de A) ×x (unité de A) = x heures,


1 1

pour le produit B, on procède de façon analogue :


2 heure / (unité de B)×x (unité de B) = 2x heures
2 2

La contrainte relative à la machine m s'écrit donc :


x +x ≤8
1 2

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


La construction d'un modèle linéaire
- contraintes relatives aux matières premières :

2x 1 + 2x2 ≤ 10
9x 1 + 4x2 ≤ 36
- contraintes de positivité : Elles assurent que la solution ne
comporte pas des valeurs négatives (inacceptables).
x1 , x2 ≥ 0

Le modèle se résume ainsi :


Max z = 50x1 + 60x2

 x1 + 2x2 ≤ 8




(P) 2x1 + 2x2 ≤ 10

 9
 1
 x + 4x2 ≤ 36
x1 , x2 ≥ 0

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


2) Généralisation : Problème de production

Soient m machines Mi ( i = 1, ....., m) qui fabriquent en série n


types de produits Pj ( j = 1, ...., n). La machine Mi a une capacité
maximum de bi unités de temps. La fabrication d'une unité du
produit Pj nécessite l'utilisation de la machine Mi durant aij unités
de temps.
Si cj représente le gain relatif à la production d'une unité du
produit Pj , la résolution du problème


 Max z = c1 x1 + c2 x2 + ..... + cn xn
a 11 x1 + a12 x2 + ..... + a1n xn ≤ b1 (M1 )




a21 x1 + a22 x2 + ..... + a2n xn ≤ b2 (M2 )


 ..... ......
a x + am2 x2 + ..... + amn xn ≤ bm (Mm )

 m1 1


x1 , x2 , ...., xn ≥ 0

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


2) Généralisation : Problème de production

fournira les valeurs optimales des quantités xj à produire de chacun


des produits ; la fonction économique représente le gain total ; le
premier membre de chaque contrainte (Mi ) représente le temps
total d'utilisation de la machine Mi .

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


3) Formulation d'un problème de minimisation

Enoncé du problème : Un agriculteur souhaite que son troupeau


consomme la plus faible ration quotidienne de trois éléments
nutritifs A, B et C. Les exigences quotidiennes sont de 16 pour A,
12 pour B et 18 pour C. L'agriculteur achète deux types d'aliments
P et Q :
une unité de P comprend 2 unités de A, 1 unité de B et 1
unité de C ; et elle coûte 20 dh ;
une unité de Q comprend 1 unités de A, 1 unité de B et 3
unité de C ; et elle coûte 40 dh ;
L'agriculteur cherche la combinaison la moins coûteuse des
quantités de P et Q qui respectera l'exigence de consommation
minimale d'éléments nutritifs.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


2) Formulation d'un problème de minimisation

Le tableau suivant résume les données aérentes à ce problème :


P Q Besoins minimaux
A 2 1 16
B 1 1 12
C 1 3 18
Coût unitaire 20 dh 40 dh

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


La construction d'un modèle linéaire
Appelons x et x les quantités des aliments P et Q qu'il faut
1 2

chercher. L'objectif de l'agriculteur est évidemment de minimiser le


coût total des aliments qu'il faut acheter. Mathématiquement cela
s'écrit :
Minimiser z = 20x1 + 40x2
ou
Min z = 20x1 + 40x2
Pour les contraintes des 3 éléments nutritifs, on a :
2x1 + x2 ≥ 16 (A)
x1 + x2 ≥ 12 (B)
x1 + 3x2 ≥ 18 (C )

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


La construction d'un modèle linéaire

Enn, il faut pas oublier qu'on peut pas acheter des quantités
négatives de P ou Q :
x , x ≥0
1 2

Le modèle se résume ainsi :


 Min z = 20x + 40x

1 2

 2x + x ≥ 16


1 2

1x + x ≥ 12 2

x + 3x ≥ 18


 1 2

x , x ≥0


1 2

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


IV) Résolutions des programmes linéaires

Après la modélisation du problème, vient la recherche d'éventuelles


solutions. Et pour cela deux méthodes de résolution sont
proposées :
La méthode graphique privilégiée pour les programmes
linéaires à deux ou trois variables au maximum. Le cas de deux
variables se traite dans le plan et le cas de trois variables se
traite dans un espace à 3 dimensions.
La méthode générale du Simplexe (ou de Dantzig 1947 )
adaptée à tout type de problème linéaire même les plus
complexes ( des centaines de variables et des dizaines de
contraintes ).

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


DEUXIEME CHAPITRE

Méthode de Résolution Graphique (PL à Deux Variables)

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Introduction

Dans ce chapitre nous présentons une technique de résolution de


programme linéaire à deux variables x et x . Dans ce cas on peut
1 2

utiliser une représentation graphique du programme linéaire. La


formulation canonique d'un PL à deux variables peut s'écrire sous
l'une des deux formes suivantes :
 

 Max z = a0 x1 + b0 x2 
 Min z = a0 x1 + b0 x2
 a1 x1 + b1 x2 ≤ c1  a1 x1 + b1 x2 ≥ c1

 

(P) a2 x1 + b2 x2 ≤ c2 (D) a2 x1 + b2 x2 ≥ c2
..... ...... ..... ......

 

 
x1 , x2 ≥ 0 x1 , x2 ≥ 0

 

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


I) Quelques rappels de géométrie

Equation d'une droite : L'expression : a x + a x = b (1)


1 1 2 2

est l'équation d'une droite (∆) qui a pour pente − aa12 (a 6= 0) et 2

qui passe par le point de coordonnées (0, ab2 ).


(1) s'écrit aussi : x = − aa21 x + ab2 .
2 1

Remarque : La droite (∆) sépare le plan (ox x ) en 2 demi-plans


1 2

d'équations : 
a1 x1 + a2 x2 < b
a1 x1 + a2 x2 > b
Exemple : (∆) : x + 2x = 4
1 2

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


I) Quelques rappels de géométrie

Ensemble convexe de Rn : Un ensemble D ⊂ Rn est convexe si :


∀x1 , x2 ∈ D, [x1 , x2 ] ⊂ D .

Résultat :Tout polygone convexe de R possède un nombre ni de


2

points extrémaux

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


II) Procédure de la méthode graphique

1 Réaliser un repère orthonormé (ox x ).


1 2

2 Tracer la région admissible (C) ( l'ensemble des solutions


possibles délimitées par toutes les contraintes du problème ).
3 Si (C) est borné, alors la solution optimale existe. Mais si (C)
est non borné, on distingue les deux cas suivants :
Si le problème est à maximiser, aucune solution.
Si le problème est à minimiser, une solution optimale existe.
4 Chercher tous les points sommets de (C) et parmi ceux-ci,
choisir le point ( ou les points ) qui rend l'objectif optimal par
deux méthodes :

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


II) Procédure de la méthode graphique

Méthode de recensement des sommets (Repérage analytique) :


comparer les valeurs de l'objectif correspondantes à chacun des
points sommets. La plus grande valeur réalise le maximum et
la plus petite valeur réalise le minimum.
Méthode des droites parallèles ( Repérage géométrique ) :
Désigner par z l'objectif et par (∆p ) la droite d'équation :
z = c1 x1 + c2 x2 = p

Ces droites (∆p , p ∈ R) sont les lignes de niveau de l'objectif.


Tracer (∆ ) ( pour p = 0, l'objectif vaut 0 ).
0

Déplacer parallèlement (∆ ) vers le point de (C) le plus


0

éloigné de l'origine en cas de maximisation ou vers le point de


(C) le plus proche de l'origine en cas de minimisation.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


III) Exemples d'application
1) Problème de maximisation

Enoncé du probème :
Une entreprise de fabrication de chassis envisage la production de
deux nouveau modèles au moyen des capacités de ses trois ateliers.
Il s'agit respectivement d'un chassis en aluminium et d'un chassis
en bois. Le premier produit nécessite le passage dans le premier
atelier pour fabriquer le cadre en aluminium et dans le troisième
atelier où le verre est monté sur le chassis. Tandis que le second
produit nécessite le passage dans le deuxième atelier pour fabriquer
le cadre en bois et dans le troisième atelier où le verre est monté
sur le chassis. Les prots unitaires, les temps de fabrication de
chacun des produits dans chacun des ateliers ainsi que les capacités
hebdomadaires de ces ateliers sont donnés au tableau suivant :

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


1) Problème de maximisation

Produit 1 Produit 2 Capacité disponible


(heures / produit) (heures / produit) (heures / semaine)
Atelier 1 1 0 4
Atelier 2 0 2 12
Atelier 3 3 2 18
prot 300 dh 500 dh
La question qui se pose est la suivante : " Combien faut-il produire
de chassis de chaque type par semaine an d'obtenir un prot
maximal ? "

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Le modèle linéaire

Quelles sont les quantités de chassis que l'entreprise devrait


produire par semaine, si elle veut maxmiser son prot ? Les
variables de décision seront :
x = le nombre de chassis de type 1 à produire par semaine
1

x = le nombre de chassis de type 2 à produire par semaine


2

Le problème de planication de la production de chassis se traduit


par le modèle linéaire suivant :
Max z = 300x1 + 500x2

 x1 ≤ 4 (A1)




(P) 2x2 ≤ 12 (A2)


 3 x1 + 2 x2 ≤ 18 (A3)
x1 , x2 ≥ 0

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Construction de la région admissible

Toute inégalité est vériée par une moitié du plan


contrainte d'inégalité = demi - plan
frontière ( ou bord ) d'un demi plan = droite
Tracé du domaine admissible dans le plan
tracé la droite déni par chaque contrainte
région admissible = intersection de tous ces demi-plans.
Géométrie d'un PL : L'ensemble des solutions admissibles est
toujours un polyèdre.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Recherche d'une solution optimale

Dans le domaine admissible, on cherche une solution qui


maximise 300x + 500x
1 2

On trace la droite 300x + 500x = 0


1 2

La droite optimale est 300x1 + 500x2 =?


cette droite est donc parallèle à 300x1 + 500x2 = 0
idée visuelle : déplacer la droite 300x1 + 500x2 = 0
la faire glisser le plus possible dans le bon sens
c-à-d dans une direction qui augmente la valeur de la fonction
objectif 300x1 + 500x2
tout en restant dans le domaine admissible.
Optimum atteint au bord :
L'optimum de la fonction objectif, s'il existe, est atteint en ( au
moins )un sommet du polyèdre.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Recherche d'une solution optimale

L'optimum est atteint au point (x 1 , x2 ) = (2, 6) et la fonction


économique prend la valeur 3600
z = (300 × 2) + (500 × 6) = 3600

Ce point ce trouve à l'intersection des droites associées aux ateliers


2 et 3. On utilise à plein les capacités disponibles des ateliers 2 et
3. Par contre, pour cette solution optimale, les capacités
disponibles de l'atelier 1 seront plus que susantes.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Remarque

La région admissible peut être :


vide ( nombre de solutions optimales : 0 )
non vide et bornée ( nombre de solutions optimales : 1 ou ∞ )
non vide et non bornée ( nombre de solutions optimales : 0 ou
1 ou ∞ )

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


III) Exemples d'application
2) Problème de minimisation

Résoudre graphiquement le problème linéaire suivant :


Min z = 12x1 + 6x2

x1 + 2x2 ≥ 4



 3x1 + x2 ≥ 3
x1 , x2 ≥ 0

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Recherche d'une solution optimale

La région admissible est convexe non borné donc une solution


optimale existe. Appliquons la méthode des recensements des
sommets, alors on a z(x , x ) = 12x + 6x
1 2 1 2

E (0, 3) → z(0, 3) = 18
1

E2 ( 52 , 95 ) → z( 52 , 95 ) = 78
5

E3 (4, 0) → z(4, 0) = 48
Alors c'est le sommet E2 ( 25 , 59 ) qui réalise l'objectif minimal de
valeur 78
5

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemple

Les contraintes suivantes


 2x1 + x2 ≤ 6

x1 ≥ 5
x1 , x2 ≥ 0

délimitent une région admissible vide.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


TROISIEME CHAPITRE

Algorithme du Simplexe (Méthode des tableaux)

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Introduction

Nous avons résolu des cas de programmes linéaires simples : deux


variables et trois ou cinq contraintes. Au fur et à mesure que le
nombre des contraintes s'accroît, la méthode graphique s'avère de
plus en plus dicile à mettre en ÷uvre. En présence de trois
variables, nous devons faire appel à une représentation graphique
dans l'espace, exercice très délicat..., Or, dans la pratique, les
programmes linéaires comportent plusieurs dizaines de variables et
de contraintes. Ainsi, le recours à une méthode générale devient
indispensable.
L'algorithme du simplexe est la plus utilisée des méthodes de
résolution des programmes linéaires. Il a été mis au point en 1948
par B. Dantzig.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


I) Formes canonique et standard d'un programme
linéaire

1) Notion de formes canoniques


Lorsque l'ensemble de contraintes se présente sous forme
d'inégalités ( ≥ ou ≤ ) on parle de forme canonique.
Toutefois, il convient de distinguer un programme canonique de
type I d'un programme canonique de type II.
Un programme canonique de type I est un programme dans
lequel les contraintes inégalités sont tournées dans le sens
inférieur ou égal, l'objectif recherché étant la maximisation de
la fonction économique.
Un programme canonique de type II a des contraintes
inégalités tournées dans le sens supérieur ou égal et l'objectif
est un minimum.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemples

Max z = 2x1 + 9x2 + x3 Min z = 2x1 + 9x2 + x3


 

 2x1 + 2x2 + 7x3 ≤ 10  2x1 + 2x2 + 7x3 ≥ 10



 


 

x1 + 3x3 ≤ 7 x1 + 3x3 ≥ 7
x + 17x2 + 15x3 ≤ 25 x + 17x2 + 15x3 ≥ 25

 

 1  1
 
x1 , x2 , x3 ≥ 0 x1 , x2 , x3 ≥ 0
 

Forme canonique de type I Forme canonique de type II

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


I) Formes canonique et standard d'un programme
linéaire

2) Formes standard
Toutes les contraintes représentent des égalités. L'objectif pouvant
être le maximum ou le minimum.
Exemples :
Max z = 2x1 + 9x2 + x3 Min z = x1 + 4x2 + x3
 

 2x1 + 2x2 + 7x3 = 10  2x1 + x2 + 7x3 = 9



 


 

x1 + 3x3 = 7 2x1 + 3x3 = 6
 x1 + 17x2 + 15x3 = 25  x1 + 7x2 + 5x3 = 20

 

x1 , x2 , x3 ≥ 0 x1 , x2 , x3 ≥ 0

 

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


I) Formes canonique et standard d'un programme
linéaire

Soulignons enn que dans la méthode simpliciale, tout programme


se présentant sous forme canonique, doit être ramené sous la forme
standard avec introduction de variables d'écart ou articielles selon
le cas et selon les règles bien précises, ainsi que nous le verrons par
la suite.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


3) Introduction de variables d'écart dans la
méthode du simplexe

Forme canonique de type I Forme Standard Correspondante


Max z = 50x1 + 60x2 Max z = 50x1 + 60x2
 

 x1 + 2x2 ≤ 8  1 + 2x2 + x3 = 8

 

x

 

2x1 + 2x2 ≤ 10 2x1 + 2x2 + x4 = 10

 9x + 4x2 ≤ 36
 1


 9
 1
 x + 4x2 + x5 = 36
x1 , x2 ≥ 0 x1 , x2 , x3 , x4 , x5 ≥ 0
 

La variable d'écart d'une contrainte représente la quantité


disponible non utilisée. C'est l'écart entre la disponibilité et le
besoin.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


II) Algorithme du simplexe : Méthode des
tableaux

Principe :
1 Dresser la forme canonique du problème posé ;

2 Passer de la forme canonique à la forme standard en

transformant les inéquations en équations et en introduisant


les variables d'écart ;
3 Tableau initial : recherche de la solution extrême de base , les

variables d'écart sont considérées au départ comme variables


principales ou variables dans la base. Les variables réelles sont
non principales et se trouvent dans le hors base. La fonction
objectif est alors nulle.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Principe

Avec le tableau initial, on prépare le tableau N 1 en choisissant


respectivement la variable entrante, sortante et le pivot :
la variable entrante correspondant au coecient le plus élevé
dans la fonction économique. La colonne de la variable
entrante prend alors le nom de colonne pivot.
la variable sortante correspondra au plus petit rapport positif
issu de la division de la colonne second-membre par la colonne
variable-entrante. Cette variable sortante se lira dans la base et
sur la même ligne que le plus petit rapport positif. La ligne de
la variable sortante prend le nom de ligne pivot.
le pivot se trouvera à l'intersection de la ligne pivot et de la
colonne pivot.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Principe

Il s'agira ensuite de rendre la colonne pivot unitaire, c-à-d, d'arriver


à un pivot égal à 1 et tous les autres éléments de la même colonne
pivot égaux à zero jusqu'à la fonction économique ( dernière ligne ).
- Pour obtenir la ligne du pivot transformée, il sut de diviser tous
ses éléments par le pivot.
- Pour transformer les autres éléments des autres lignes ou colonnes,
on utilise la règle du rectangle, c-à-d, la démarche suivante :
4) On construit les diérents tableaux jusqu'à ce que la fonction
économique ne contienne plus que des nombres négatifs ou nuls. Le
pivot ne peut jamais être égal à zéro.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemple d'application

Résoudre le programme linéaire suivant à l'aide de la méthode


pratique des tableaux :
Max z = 3x1 + 2x2

x1 + 5x2 ≤ 11



2x + 3x2 ≤ 5
 1
x1 ≥ 0, x2 ≥ 0

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Forme standard

La forme standard du programme est


Max z = (3x1 + 2x2 + 0x3 + 0x4 )

x1 + 5x2 + x3 11


=

2x + 3x2 + x4
 1
= 5
x1 ≥ 0, x2 ≥ 0, x3 ≥ 0, x4 ≥ 0

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Tableau initial : Solution extrême de base

Le premier tableau de simplexe est


B x x x x Constantes constantes / x
1 2 3 4 1

x3 1 5 1 0 11 11
x4 2 3 0 1 5 5
2

z 3 2 0 0 0
Solution :
HB : x = x = 0
1 2

B : x = 11 , x = 5
3 4

z=0
Comme deux nombres de la dernière ligne sont positifs (3, 2), cette
solution de base réalisable n'est pas optimale.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Tableau initial : Solution extrême de base

D'après la procédure de détermination de la variable entrante et


celle sortante, on a,
1x entre en base ( plus grand coecient positif de z )
4x sort de base ( plus petit rapport positif b/x )
1

Dans le premier tableau nous avons entouré le pivot qui est égal à 2
par un petit cercle

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Tableau N 1 : 1 ère itération

Construisons donc le deuxième tableau de simplexe


B x x x x 1 2Constantes
3 4

x 3 0 1 − 7
2
1
2
17
2

x 1 1 0 3
2
1
2
5
2

z 0 − 0 − 5
2
− 3
2
15
2

Comme tous les nombres de la dernière ligne sont négatifs ou nuls,


la solution obtenue
x = ,x =0,x =
1
5
2 2 et x = 0 , est optimale et la valeur
3
17
2 4

maximale de z est 15
2

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Partie II : LA THEORIE DES GRAPHES

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


INTRODUCTION

" Un petit dessin vaut mieux qu'un grand discours "


Napoléon

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


INTRODUCTION

La représentation d'un problème par un dessin, un plan , une


esquisse contribue souvent à sa compréhension. Le langage des
graphes est construit, à l'origine, sur ce principe. Nombres de
méthodes, de propriétés, de procédures ont été pensées ou trouvées
à partir d'un schéma pour être ensuite formalisées et développées.
Chacun d'entre nous a, au moins une fois , vu ou utilisé un plan
d'un roman, une carte de ligne ferroviaires, un plan électrique, un
organigramme d'entreprise. Ainsi tout le monde sait plus ou moins
intuitivement ce qu'est un graphe.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


PREMIER CHAPITRE

Eléments de théorie de graphe

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Qu'est-ce qu'un graphe ?

Denition
Un graphe est la donnée d'un ensemble de X de n éléments
(X = {x , ....., xn }) et d'une relation R liant ces éléments. On note
1

ce graphe : G (X , R).

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


I) Eléments terminologiques

Sommets : Les éléments xi (i = 1, ...., n) de X s'appellent les


sommets du graphe.
Arcs, Arrêtes : La relation entre deux sommets (xi , xj ) du
graphe est soit :
Un arc si elle est orientée ( à sens unique ) : xi → xj . Où xi est
l'extrimité initiale et xj est l'extrimité nale ( ou terminale ).
Une arrête si elle n'est pas orientée ( à deux sens ) : xi ↔ xj .

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


I) Eléments terminologiques

Graphe orienté : Un graphe dont toutes les relations sont des


arcs est appelé graphe orienté (en général, de la gauche vers la
droite ).
Graphe valué : Un graphe où l'on indique sur ses arcs et ses
arrêtes des valeurs numériques est dit graphe valué. Ces
valeurs peuvent représenter des quantités, des durées, des
coûts, ou des distances...

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


II) Représentations d'un graphe

Il existe plusieurs représentations d'un graphe, on cite les plus


utilisées :
1) Représentation sagittale : Le graphe G (X , R) est schématisé
graphiquement par un ensemble ni de sommets
(xi ∈ X , i = 1, ...., n) reliés entre eux par des arcs ou des arrêtes.
exemples : 1)
2) Soient x , ....., x six villes d'une région et dont les liaisons
1 6

routières sont représentées par le graphe suivant :

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


2) Représentations matricielle

Le graphe G (X , R) est représenté sous forme d'une matrice


booléenne ( ne contenant que 0 ou 1 ) d'ordre n telle que :
1 est aecté au couple (xi , xj ) s'il existe une relation directe de
xi vers xj .
0 est aecté au couple (xi , xj ) s'il n'existe aucune relation
directe de xi vers xj .

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemple

Le graphe donné dans l'exemple 1 s'écrit sous la forme matricielle :


x1 x2 x3 x4 x5 x6
x1 0 1 1 0 0 0
x2 0 0 1 0 0 0
x3 0 0 0 1 1 0
x4 0 1 1 0 1 1
x5 0 0 0 1 1 0
x6 0 0 0 0 0 0
Remarque : Pour les graphes valués, une semblable matrice peut
être construite à partir des valeurs inscrites sur les arcs et les
arrêtes.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


3) Représentation sous forme de dictionnaires

Les dictionnaires permettent d'exprimer la matrice booléenne d'un


graphe d'une autre façon. Plusieurs types de dictionnaires existent :
- Dictionnaire des précédents
- Dictionnaire des suivants
Exemple : La représentation matricielle du graphe précédent permet
de dégager les dictionnaires des précédents et des suivants :
Sommets Précédents Sommets Suivants
x
1 - x 1 x ,x 2 3

x2 x1 , x4 x2 x3
x3 x1 , x2 , x4 x3 x4 , x5
x4 x3 , x5 x4 x2 , x3 , x5 , x6
x5 x3 , x4 , x5 x5 x4 , x5
x6 x4 x6 -

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


III) Chemins d'un graphe

Un chemin est une succession d'arcs tels que l'extrémité nale de


l'un soit l'extrémité initiale du suivant. La longueur d'un chemin est
égale au nombre d'arcs qui le composent.
Exemple : Un des chemins du graphe précédent :
La longueur de ce chemin est égale à 4

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


III) Chemins particuliers

Chemin simple : Passe une fois au plus par chacun des arcs
( Exemple : (x , x , x )).
1 2 3

Chemin eulérien : Passe une seule fois par chacun des arcs
Circuit, Cycle : Chemin dont l'extrémité initiale du premier arc
coïncide avec l'extrémité nale du dernier ( Exemple :
(x , x , x , x )). Si les arcs sont des arrêtes, on parle de cycle.
2 3 4 2

Boucle : Arc dont l'extrémité nale coïncide avec l'extrémité


initiale ( Exemple : (x , x )) ou circuit ( ou cycle) de longueur
5 5

1.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Niveaux d'un graphe

Le niveau d'un sommet est le nombre d'arcs qui le séparent de


l'origine du graphe par le chemin le plus long.
La recherche des niveaux se fait à partir du dictionnaire des
précédents suivant la démarche ci-dessous :
1 Niveau 1 : contient les sommets qui n'ont pas de précédents (

ce sont des entrées du graphe ).


2 Niveau suivant : supprimer les sommets déjà classés ( du

niveau précédent ). Les sommets de ce niveau sont ceux dont


tous les précédents sont supprimés.
3 Répéter la même procédure (2) jusqu'à ce que tous les

sommets soient classés.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemple

Sommets Précédents
A Aucun - - -
B A - - -
C A - - -
D B, C B, C - -
E D D D -
F D D D -
G D D D -
H E, G E, G E, G E, G
I E E E E
J I I I I
Niveaux N = {A}
1 N2 = {B, C } N3 = {D} N4 = {E , F , G } N

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Remarques

1 Les niveaux d'un graphe permettent de rendre la


représentation sagittale plus claire et sans redondance.
2 Un sommet sans suivant n'est pas nécessairement du dernier
niveau ( les sommets F et H ).
3 Un sommet sans suivant est une sortie du graphe ( le sommet
J).

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


DEUXIEME CHAPITRE

Problèmes d'ordonnancement

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


1) Objectifs

L'ordonnancement a pour but principal l'étude de la réalisation des


projets ( objectifs économiques ) tout en permettant :
de déterminer le meilleur temps de réalisation ;
d'organiser ( ordonner ) l'ensemble des travaux ( tâches ou
opérations ) qui concourent à cette réalisation et d'indiquer
ceux qui ne peuvent être retardés sans mettre en cause la durée
du projet ( établir un calendrier ou planing pour les tâches ) ;
d'optimiser les ressources et les moyens utilisés pour la
réalisation du projet .

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Notion de projet

Un projet est un ensemble de tâches ou opérations a, b, c, d...


permettant d'atteindre un objectif xé, lesquelles tâches sont
elles-mêmes soumises à un certain nombre de contraintes telles
que :
les contraintes potentielles (relatives au temps ) ;
les contraintes disjonctives ;
les contraintes cumulatives.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Contraintes potentielles

Contraintes d'antériorité ( ou de postériorité ) : une tâche ne


peut débuter qu'après une autre ne soit achevée ( on ne peut
construire qu'après avoir obtenu le permis de construction ).
Contraintes de localisation temporelle : une tâche ne peut
commencer qu'à une certaine date xée ( la date du début
d'une tâche est xée d'avance par son exécuteur qui ne sera
disponible qu'en cette date ).

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Contraintes disjonctives

Elles impose l'impossibilité de la réalisation simultanée de deux


tâches ( une même et unique machine exécute deux tâches
diérentes, donc nécessairement pas en même temps ).

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Contraintes cumulatives

Elles concernent la disponibilité dans le temps des diérents


facteurs de la réalisation du projet ( le nombre d'exécutants du
projet est limité ).

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Notion de tâche

Une tâche ou activité est une opération . L'ensemble des tâches


forme le projet. On peut donc la dénir comme étant l'unité ou
l'élément d'un projet. On associe à chaque tâche sa durée et une
contrainte d'antériorité par rapport aux autres tâches. C'est ainsi
qu'on dira que A est immédiatement antérieure à B si B ne peut
débuter que lorsque A est achevée.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemple

Pour la construction d'un entrepôt on énumère 10 tâches reliées


entre elles par des contraintes d'antériorité :
Tâches Précédentes Durée approx/semaines
A. Plans Aucune 2
B. Obtention de permis A 2
C. Achat des matériaux A 6
D. Fondation B, C 5
E. Murs D 2
F. Electricité D 3
G. Divers D 6
H. Toiture E, G 2
I. Peinture E 2
J. Pose d'une alarme I 1

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Remarque

Avant la recherche de toute solution d'un problème


d'ordonnancement, il faudra d'abord commencer par une phase
préliminaire d'analyse du projet et de ses contraintes et pour cela, il
faut :
Préciser l'objectif du projet ;
identier les diérentes tâches élémentaires nécessaires pour
atteindre cet objectif ;
évaluer par estimation pour chaque tâche, la durée, le coût et
les moyens nécessaires à sa rálisation ;
déterminer les contraintes qui peuvent peser sur les tâches ( de
type potentiel , cumulatif ou disjonctif ).

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Méthode d'ordonnancement

C'est un ensemble de méthodes qui permettent au responsable du


projet de prendre des décisions nécessaires dans de meilleures
conditions possibles. Un telle méthode doit donc permettre :
d'anlyser le projet en profondeur, c-à-d le décomposer en
tâches ;
de mettre sur pied un plan d'action contribuant à réaliser ledit
projet tout en respectant les contraintes ;
et enn, de contrôler le bon déroulement du projet.
Par conséquent, une méthode d'ordonnancement n'est ni plus ni
moins qu'un problème d'organisation du projet.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Diagramme de Gantt

A tout problème d'ordonnancement, on peut associer un


diagramme dit de Gantt où chaque tâche est représentée par un
segment qui commence au plus tôt et de longueur proportionnelle à
la durée de la tâche.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Conclusion

On n'a pas intérêt à retarder les tâches critiques car cela


retardera d'autant le projet.
Les tâches non critiques peuvent être retardées dans la limite
de leur marge totale sans remettre en cause la durée totale
minimale du projet.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


La méthode d'ordonnancement PERT

La méthode de PERT (Programm Evaluation and Review Technic)


connue aussi sous l'appellation de méthode des potentiels-étapes,
est d'origine américaine conçue vers 1958 pour la réalisation de la
fusée Polaris.
Dans son contexte le plus simplié, la méthode PERT ne tient
compte que des contraintes potentielles.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


3.1) Représentation sagittale d'un graphe PERT

L'ensemble des tâches est représenté par un graphe orienté et valué


sans boucle et sans circuit, dont les principes sont :
Sommets : étape ou évenement qui représente le début ou la
n d'une ou de plusieurs opération.
Arcs : Un arc d'un graphe représente dans la méthode PERT
une tâche ou une opération. Une tâche est délimitée par deux
sommets ( ou événements ) qui représentent le début et la n
de la tâche. Une tâche est une activité qui consomme du
temps, nécessite des ressources physiques et des dépenses.
valeur sur l'arc : temps opératoire de la tâche.
Exemple :

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


3.1) Représentation sagittale d'un graphe PERT

Dans un graphe d'ordonnancement PERT , on doit respecter les


conventions suivantes :
Les sommets sont numérotés de 1 à n ;
le sommet ( numéro 1 ) qui débute les travaux n'est terminal à
aucun arc ;
le sommet indiquant la n des travaux, n'est initial à aucun
arc ;
toute autre sommet doit être extrémité initial et nal en même
temps ;
le numéro d'un sommet initial d'un arc doit être inférieur à
celui de son sommet nal ;
les arcs associés à des tâches distinctes ne peuvent avoir à la
fois même sommet initial et même sommet nal.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


3.2) Problèmes de la représentation sagittale d'un
graphe PERT

Tâches successives : Pour indiquer que la tâche A est prédécesseur


immédiat de la tâche B, l'arc correspondant à B prend son départ
là où aboutit l'arc associé à A.
Tâches simultanées : les tâches qui peuvent être exécutées en
même temps, elles partent du même sommet : deux tâches A et B
qui commencent en même temps se représentent ainsi :
Tâches convergentes : les tâches qui sont prédécesseurs immédiats
de la même tâche, vont vers un événement commun : deux tâches
A et B qui précédent le même événement se représentent ainsi :

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


3.2) Problèmes de la représentation sagittale d'un
graphe PERT

Tâche ctives :
On recourt parfois à l'introduction de tâches ctives ( représentées
par des arcs ctifs en pointillées ) pour bien respecter les
contraintes réellement.
Exemples :
1) C et B succède A, D succède B et C : dans ce qui suit, la
première représentation ne respecte pas la dernière convention
sus-citée et nécessite une modication par ajout d'une tâche ctive
F.
2) C et D succède A, D succède B : la première représentation qui
suit, ne traduit pas correctement la réalité puisqu'on n'a pas la
contrainte C succède B. Pour remédier à cela , on introduit une
tâche ctive F qui supprime cette contrainte du graphe.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


3.2) Problèmes de la représentation sagittale d'un
graphe PERT

Tâche ctives :
3) A débute le projet, B peut s'eectuer en 2 périodes après le
commencement du projet. On introduit une tâche ctive de durée 2
dont l'extrémité initiale de l'arc correspond à l'événement "début
de projet" et son extrémité nale correspond à l'événement "début
de la tâche B" :
Tâche fractionnaires :
Si une tâche peut commencer au cours de la réalisation d'une autre
tâche, il faut la fractionner en deus tâches successives.
Exemple :
B succède A 3 péroides après le commencement de A et A dure 7
périodes : on subdivise la taâche A en deux tâches A et A de
1 2

durée respectives égales à 3 et 4.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemples de construction du graphe PERT

Exemple 1 :
La réalisation d'un ouvrage se décompose en 8 tâches reliées entre
elles par des conditions d'antériorité :
Tâches Précédentes Durée /jours
A Aucune 3 jours
B Aucune 4 jours
C A 4 jours
D B 2 jours
E A 6 jours
F C,D 2 jours
G B 4 jours
H F, G 1 jours

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemples de construction du graphe PERT

Niveaux des tâches


N = {A, B} , N = {C , D, E , G }, N
1 2 3 = {F } , N4 = {H}

Graphe de PERT

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


R±olution par la méthode PERT : Recherche de
chemins critiques

La méthode PERT permet une résolution sur le graphe PERT.


Pour cela on doit inscrire en chaque sommet, en plus du numéro
(N) de l'événement, la date au plus tôt et la date au plus tard
correspondantes de la manière suivante :
1) La date au plus tôt d'un événement :il s'agit de la date avant
laquelle une tâche ne peut démarrer. C'est donc la date attendue de
réalisation d'un événement ou date avant laquelle un événement ne
peut se réaliser.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


R±olution par la méthode PERT : Recherche de
chemins critiques

On note par : E = entrée du du réseau-PERT ; S = sortie du


réseau-PERT
On aecte à l'entrée, la date tE = 0
Pour un sommet j , on calcule la date au plus tôt (tj ) en posant :
tj = max{ti + dij }

avec
i = antécédent de j
dij = durée de l'arc (i,j)
ti = date au plus tôt du sommet i
tj = date au plus tôt du sommet j
tS = durée minimum de l'ouvrage

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemple 1

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


R±olution par la méthode PERT : Recherche de
chemins critiques
2) La date au plus tard d'un événement : c'est la date limite de
réalisation d'un événement. Si l'événement venait, en eet, à se
réaliser après ladite date, le projet tout entier ne pourrait jamais se
réaliser dans le délai correspondant à la longueur du chemin
critique.
Pour calculer la date au plus tard, on peut adopter, entre autres
raisonnements, la méthode suivante :
inversion de l'orientation de tous les arcs du graphe ;
avec ce nouveau graphe, on calcule les dates au plus tôt ( les
rôles de l'entrée et de la sortie sont inversés ) ;
les dates au plus tard sont alors obtenues par diérence entre
la durée minimum du projet et les dates ainsi calculées comme
le montre le graphe inversé ci-dessous

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


R±olution par la méthode PERT : Recherche de
chemins critiques

3) Chemin critique : dans un graphe PERT est tout chemin reliant


le sommet initial (entrée) et le sommet nal ( n projet ) dont la
valeur est maximale. C'est le chemin dont la durée totale coïncide
avec le temps minimum nécessaire pour la réalisation du projet. Il
est composé exclusivement de tâches critiques, c-à-d celles dont
l'exécution ne doit pas être retardée . Ce chemin passe par les
sommets dont les dattes au plus tôt et au plus tard coïncident.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemple 1

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


R±olution par la méthode PERT : Recherche de
chemins critiques

4) Les marges :
On appelle marge d'une tâche le retard qu'il est possible de tolérer
dans la réalisation de celle-ci, sans que la durée optimale prévue du
projet global en soit aectée. Il est possible de calculer trois types
de marges : la marge totale, la marge libre et la marge
indépendante ( ou certaine ).
4.1) La marge totale : d'une tâche Tij indique le retard maximal
que l'on peut admettre dans sa réalisation ( sous réserve qu'elle ait
commencé à sa date au plus tôt ) sans allonger la durée optimale
du projet. 0
Mt = tj − ti − dij

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


R±olution par la méthode PERT : Recherche de
chemins critiques
4.2) La marge libre : d'une tâche Tij indique le retard que l'on peut
admettre dans sa réalisation ( sous réserve qu'elle ait commencé à
sa date au plus tôt ) sans modier les dates au plus tôt des tâches
suivantes et sans allonger la durée optimale du projet.
Ml = tj − ti − dij

4.3) La marge indépendante ( certaine ) : est le retard maximum,


que l'on peut apporter à son démarrage sans perturber la date de
réalisation au plus tôt de l'événement suivant, bien que l'événement
précédent n'ait été réalisé qu'à sa date limite.
Mi = max[0, (tj − ti − dij ]
0

D'après cette formule, la marge indépendante est considérée


comme nulle lorsque son calcul donne un nombre négatif.
FOUAD KISSI RECHERCHE OPÉRATIONNELLE
TROISIEME CHAPITRE

Problèmes de transport

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Introduction

Un réseau de transport à n sommets est un graphe valué, orienté


sans boucle et dont :
un sommet est une entrée au graphe ( sans précédent ) et un
sommet est une sortie du graphe ( sans suivant ) ;
les autres sommets sont les n÷uds du réseau ;
les arcs (xi , xj ) sont des liaisons entre les sommets adjacents
ayant pour valeurs associées νij .

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


1) Problème du chemin optimal : Algorithme de
Ford

Dans ce cas, les valeurs νij associées aux arcs (xi , xj ) peuvent
représenter des coûts de transport, des distances ou aussi des
durées entre les extrémités xi et xj .
Il s'agit d'aller de l'entrée jusqu'à la sortie du graphe par le chemin
le plus court ( c'est à dire en un minimum de temps ou de
distances ou avec un coût minimal ) ou le plus long.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


1-1) Méthode de résolution de chemin minimal :
Algorithme de Ford

1 Numéroter les sommets du graphe dans un ordre quelconque


avec x l'entrée et xn− la sortie.
0 1

2 A chaque sommet xj , aecter la valeur αj du chemin minimal


de l'entrée x à xj tel que :
0

 α =0

0

α = min(αi + νij ), i parcourt les indices de tous les sommets


 j
pr cdents de xj
3 αn est la valeur du chemin minimal de x à xn−
0 1

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemple

On veut se rendre de la ville A à la ville F le plus rapidement


possible. Les diérentes communications et distances ( en km )
entre ces villes représentées dans le graphe suivant :

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


1-2) Méthode de résolution de chemin maximal :
Algorithme de Ford

1 Numéroter les sommets du graphe dans un ordre quelconque


avec x l'entrée et xn− la sortie.
0 1

2 A chaque sommet xj , aecter la valeur αj du chemin minimal


de l'entrée x à xj tel que :
0

 α =0

0

α = max(αi + νij ), i parcourt les indices de tous les sommets


 j
pr cdents de xj
3 αn est la valeur du chemin maximal de x à xn−
0 1

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemple

Déterminer le chemin maximal du graphe suivant ( A est l'entrée et


I est la sortie du graphe ) par l'algorithme de Ford :

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


2) Problème de ot maximal : Algorithme de Ford
- Fulkerson

Dans ce cas, les valeurs νij associées aux arcs (xi , xj ) représentent
les capacités maximales de transport entre les extrémités xi et xj .
Il s'agit de maximiser les ots ou les ux qui circulent dans le
réseau entre l'entrée E et la sortie S compte tenu des capacités de
transport.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Dénitions

1 Le ot est la quantité réelle qui circule sur le réseau et ne peut


dépasser la capacité des arcs.
2 Une chaîne est une suite ordonnée d'arrêtes.
3 Un chemin ou une chaîne de E à S est saturé si au moins un
de ses arcs est saturé ( le ot circulant dans l'arc atteint sa
capacité maximale).
4 Le ot est complet si tous les chemins de l'entrée à la sortie
sont saturés.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Méthode de résolution : Algorithme de Ford -
Fulkerson

Principe
1 La somme des ots qui partent de E est égale à la somme des
ots qui arrivent à S
2 Principe de conservation : en chaque n÷ud du réseau les ots
entrants sont égaux aux ots sortants.
3 Le ot est maximale si toutes les chaînes du réseau sont
saturées.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Méthode de résolution : Algorithme de Ford -
Fulkerson

Algorithme
1 Choix d'un ot au hasard : faire passer un ot entre l'entrée E
et la sortie S compte tenu des capacités maximales de
transport.
2 Recherche d'un ot complet : améliorer ce ot de façon à ce
que tout chemin allant de E à S comprenne au moins un arc
saturé. Et pour cela, il faut saturer l'arc qui possède le
minimum des capacités résiduelles de tous les arcs du chemin
non saturé.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Méthode de résolution : Algorithme de Ford -
Fulkerson
Algorithme
3 Détermination du ot maximal : améliorer ( augmenter ou
diminuer ) le ot complet s'il existe une chaîne non saturée de
E à S.
recherche des chaînes non saturées par la méthode de
marquage :
i) marquer l'entrée E d'un signe (+) ;
ii) marquer l'extrémité initiale xi d'un arc (xi , xj ) dont le ot
est non nul et dont l'extrémité nale xj est marquée. On
marque avec (−xj ).
iii) marquer l'extrémité nale xj d'un arc non saturé (xi , xj ) et
dont l'extrémité initiale xi est marquée. On marque avec (+xi ).
Condition d'arrêt : Si l'on ne peut pas marquer la sortie S,
alors il n'existe aucune chaîne non saturée et le ot est
maximal, l'algorithme s'arrête.
Si non, c'est à dire S est marquée, alors on passe à l'étape
suivante.
FOUAD KISSI RECHERCHE OPÉRATIONNELLE
Méthode de résolution : Algorithme de Ford -
Fulkerson

Algorithme
Amélioration du ot dans la chaîne non saturée :
i) Calculer la capacité résiduelle minimale CRM des arcs
orientés dans le sens du graphe.
ii) Calculer le ot minimale FM des arcs orientés dans le sens
inverse du graphe.
iii) Soit C = min(CRM, FM)
iv) Ajouter la valeur C à tous les arcs orientés dans le sens du
graphe et retrancher la valeur C à tous les arcs orientés dans le
sens inverse du graphe
4 Reprendre l'étape 3 : jusqu'à ce que l'algorithme s'arrête à une
certaine itération.

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Exemple

Soit à maximiser les ots circulant dans le réseau suivant compte


tenu des capacités de transport :

FOUAD KISSI RECHERCHE OPÉRATIONNELLE


Merci pour votre attention

FOUAD KISSI RECHERCHE OPÉRATIONNELLE

Vous aimerez peut-être aussi