Vous êtes sur la page 1sur 93

ENSM-Alger

Recherche Opérationnelle
2ème Semestre - 2011/2012

METHODES
QUANTITATIVES DE
GESTION
Dr Tarik Bourezgue
tarikbourezgue@gmail.com
LES OBJECTIFS

 Initier les participants aux techniques de


modélisation et de formulation des problèmes
de gestion en équations mathématiques.
 Présenter les différentes étapes d’un processus
de résolution d’un programme linéaires et ses
problèmes dérivés.
PROGRAMME

 Concept de problème de gestion et processus de décision


 Processus de formulation et modélisation
 Concepts de base: recherche opérationnelle
 Programmation linéaire
 Problème de transport
 Problème d’affectation
 Logiciel DSS-POM
CONCEPTS DE BASE
RECHERCHE OPÉRATIONNELLE

 Définitions
 Origines
 Applications
 Méthodes
 Modèles
RECHERCHE OPÉRATIONNELLE

 DÉFINITIONS
• Application de méthodes, techniques, instruments
scientifiques pour modéliser et résoudre les problèmes
dans tous les domaines
• Application de la méthode scientifique pour modeler et
résoudre les problèmes dans tous les domaines
• Art de donner des mauvaises réponses à des problèmes
auxquels autrement de pires réponses seraient données
RECHERCHE OPÉRATIONNELLE
 ORIGINES
• Développement durant la seconde guerre mondiale
 applications aux opérations militaires
• répartition des troupes, du matériel, des ressources
• approvisionnement en vivres, en pièces, en armement
• Scientifiques et ingénieurs: applications civiles
 programmation linéaire (1ère publication en 1939)
 développement du simplexe par G. Dantzig (1947)
 développement des techniques classiques en
programmation linéaire, non-linéaire, dynamique, théorie
des files d’attente, etc.
 ralentissement des recherches généré par le manque
d’outils de calcul
RECHERCHE OPÉRATIONNELLE
 APPLICATIONS
• Applications aux problèmes réels de grande envergure
 arrivée des processeurs rapides
 développement des bases de données
 techniques d ’optimisation appliquées à de nombreux domaines
• Domaines d’utilisation
 militaire
 transport
• aéroport
• route, trajet, livraison
• horaire
 contrôle des réseaux
• infrastructures, distribution
 etc.
RECHERCHE OPÉRATIONNELLE
 CONCEPT DE SYSTÈME
• Système
 Agrégat ou assemblage d’objets joints par des
interactions ou interdépendances régulières
• Activité
 Processus qui crée un changement de l’état du système
• Entité
 Objet d’intérêt dans un système
• Attribut
 Propriétés relatives à une entité
RECHERCHE OPÉRATIONNELLE

EXEMPLE DE SYSTÈME

SYSTÈME ACTIVITÉ ENTITÉ ATTRIBUT


circulation mouvements véhicules vitesse
trajets routes distances

banque dépôts clients état de crédit

communications transmission message priorité


RECHERCHE OPÉRATIONNELLE

 MÉTHODES
• Techniques mathématiques
• Techniques statistiques
• Modèles de gestion des stocks
• Modèles d’affectation
• Modèles de programmation dynamique
• Modèles de files d’attente
• Modèles séquentiels
• Techniques de simulation
• Méthodes heuristiques
RECHERCHE OPÉRATIONNELLE

 MODÈLE
• Moyen pour mieux comprendre la réalité utilisée pour
représenter les propriétés fondamentales d’un certain
phénomène
• Problèmes de gestion souvent complexes
• Nécessité fréquente d’ignorer certains paramètres pour
tirer une version idéale, épurée: c’est un modèle
RECHERCHE OPÉRATIONNELLE

 Méthode scientifique
1. Expériences vécues
2. Critères qui permettent de
juger si le problème est
résolu
3. Principaux aspects de la
réalité
4. Paramètres du modèle
5. Méthodes appropriées
6. Conclusions obtenues
versus opinions des
personnes
7. Implantation de la décision
RECHERCHE OPÉRATIONNELLE

 Formulation du modèle mathématique


• Définir le problème
 Quelle est la nature exacte du problème?
 Quel est l’objectif recherché?
 Quelles sont les conditions d’opération?
 Quels sont les paramètres à considérer? Quelle
influence?
 Quel est le degré de précision requis?
PROGRAMME LINÉAIRE

 PL
• problème d’optimisation consistant à
• maximiser (ou minimiser) une fonction objectif linéaire
• de n variables de décision
• soumises à un ensemble de contraintes exprimées sous
forme d’équations ou d’inéquations linéaires
 La terminologie est due à George B. Dantzig,
inventeur de l’algorithme du simplexe (1947)
PROGRAMMATION LINÉAIRE

 Hypothèses:
• La linéarité des contraintes et de la fonction objectif
• La proportionnalité des gains/coûts et des
consommation de ressources
• La divisibilité des variables
• Le déterminisme des données
 Lors de la modélisation d'un problème réel, l'impact de ces
hypothèses sur la validité du modèle mathématique doit
être étudié
 Cette analyse peut mener à choisir un modèle différent (non
linéaire, stochastique, ...) et est essentielle pour la phase
d'interprétation des résultats fournis par le modèle
MISE EN FORME MATHÉMATIQUE

 Définir les variables de décision


• ensemble des variables qui régissent la situation à modéliser
• variables réelles, entières, binaires
 Préciser la fonction objectif
• fonction mathématique composée des variables de décision qui
représente le modèle physique modélisé
• fonction linéaire,
 Préciser les contraintes du problème
• ensemble des paramètres qui limitent le modèle réalisable
• équations ou inéquations composées des variables de décision
 Préciser les paramètres du modèle
• constantes associées aux contraintes et à la fonction objective
PROGRAMMATION LINÉAIRE

 Validation du modèle et des résultats


• S’assurer
 que le modèle développé est conforme à la réalité
 que les résultats sont valides dans toutes les conditions
 Conception du système d’application
• Possibilité d’utiliser des logiciels spécialisés
 Implantation
FORMULATION MATHÉMATIQUE
D’UN PROGRAMME LINÉAIRE

 FONCTION OBJECTIF
• Maximiser ou minimiser
• z = c1x1 + c2x2 + c3x3 + … + + cnxn
 Contraintes
• a11x1 + a12x2 + a13x3 + … + a1nxn (, =, ) b1
• a21x1 + a22x2 + a23x3 + … + a2nxn (, =, ) b2
• am1x1 + am2x2 + am3x3 + … + amnxn (, =, ) bm
 Contraintes de non-négativité
• xj  0 ; j = 1, 2, 3, … n
 avec
• xj variables de décision (inconnues)
• aij, bi, cj paramètres du programme linéaire
TERMINOLOGIE DU MODÈLE

 Activités
• Ensemble des actes et opérations à effectuer
• j = 1,…n activités
 Ressources
• Moyens disponibles pour effectuer les activités
• bi, i = 1,…m ressources
 Quantité requise de ressource
• Quantité unitaire de ressources consommées pour chaque activité
aij
 Niveau activation
• Quantité de ressources affectée à une activité
• xj = niveau d’activation de l’activité j
 Coût ou profit
• Mesure de performance de l’allocation des ressources aux activités
cj
TERMINOLOGIE DE LA SOLUTION

 Solution réalisable
• Solution où toutes les contraintes du modèle sont
satisfaites
 Zone de solution
• Ensemble de toutes les solutions réalisables
 Solution optimale
• Solution réalisable où la fonction objectif atteint la
meilleure valeur, maximum ou minimum
• Plusieurs solutions optimales possibles
EXEMPLE: PROBLÈME
D'ALLOCATION DE RESSOURCES
Vous disposez de
• 8 kg de pommes
• 2,5 kg de pâte
• 6 plaques
pour confectionner des chaussons et des tartes
Pour faire un chausson, il vous faut:
• 150 g de pommes
• et 75 g de pâte
Chaque chausson est vendu 3 DA
Pour faire une tarte, il vous faut
• 1 kg de pommes
• 200 g de pâte
• et 1 plaque
Chaque tarte est divisée en 6 parts vendues chacune 2 DA
Que faut-il cuisiner pour maximiser le chiffre d'affaires de la
vente ?
PROBLÈME D'ALLOCATION DE
RESSOURCES
Définissons 2 variables de décision
• x1 : le nombre de chaussons confectionnés
• x2 : le nombre de tartes confectionnées
Le chiffre d’affaires associé à une production (x1; x2) est
z = 3x1 + (6 x 2)x2 = 3x1 + 12x2
Il ne faut pas utiliser plus de ressources que disponibles
• 150x1 + 1000x2  8000 (pommes)
• 75x1 + 200x2  2500 (pâte)
• x2  6 (plaques)
On ne peut pas cuisiner des quantités négatives :
x1 et x2  0
MODÈLE: PROBLÈME
D'ALLOCATION DE RESSOURCES

Pour maximiser le chiffre d’affaires de la vente, il faut


déterminer les nombres x1 et x2 de chaussons et de
tartes a cuisiner, solution du problème
Max z = 3x1 + 12x2
Sujet à
 150x1 + 1000x2  8000
 75x1 + 200x2  2500
 x2  6
 x1 ; x2  0
En fait, il faudrait également imposer à x1 et x2 de ne
prendre que des valeurs entières
EXEMPLE: PROBLÈME DE
RECOUVREMENT

DONNÉES : Les demandes journalières en


chauffeurs dans une entreprise de transport
Lu Ma Me Je Ve Sa Di
13 18 21 16 12 25 9
Les chauffeurs travaillent 5 jours d'affilée (et peuvent
donc avoir leurs 2 jours adjacents de congé n'importe quand
dans la semaine)
OBJECTIFS : Déterminer les effectifs formant les 7
équipes possibles de chauffeurs de manière à:
• couvrir tous les besoins
• engager un nombre minimum de chauffeurs
PROBLÈME DE RECOUVREMENT
MODÉLISATION

Variables de décision : On associe une variable de


décision à chacune des 7 équipes possibles
• x1 : nombre de chauffeurs dans l’équipe du lundi (repos
le samedi et le dimanche),
• x2 : nombre de chauffeurs dans l’équipe du mardi, ...
• x7 : nombre de chauffeurs dans l’équipe du dimanche.
Fonction objectif : On veut minimiser le nombre
total de chauffeurs engagés
z = x1 + … + x7
PROBLÈME DE RECOUVREMENT
CONTRAINTES

Contraintes : Le nombre de chauffeurs présents


chaque jour doit être suffisant
• x1 + x4 + x5 + x6 + x7  13 (lundi)
• x1 + x2 + x5 + x6 + x7  18 (mardi)
• …
• x3 + x4 + x5 + x6 + x7  9 (dimanche)
Contraintes de bornes : Le nombre de chauffeurs
dans chaque équipe doit non seulement être non
négatif mais également entier
• xi  0 et entier; i = 1; …; 7
PROBLÈME DE RECOUVREMENT :
FORMULATION
Min z = x1 + x2 + x3 + x4 + x5 + x6 + x7
 Sujet à:
• x1 + x4 + x5 + x6 + x7  13
• x1 + x2 + x5 + x6 + x7  18
• x1 + x2 + x3 + x6 + x7  21
• x1 + x2 + x3 + x4 + x7  16
• x1 + x2 + x3 + x4 + x5  12
• x2 + x3 + x4 + x5 + x6  25
• x3 + x4 + x5 + x6 + x7  9
• x1 ; x2 ; x3 ; x4 ; x5 ; x6 ; x7  0 entiers
 Ce problème n'est pas un PL mais un programme
linéaire en nombres entiers (PLNE)
MODÉLISATION
 Exemple: production de portes et fenêtres
• 3 usines:
 #1 cadres d ’aluminium
 #2 cadres de bois
 #3 vitres et assemblages des produits
• 2 produits
 A portes vitrées avec cadrage d ’aluminium
 B fenêtres avec cadrage en bois
• demande illimitée pour les produits
• profits par lot: A: 3000DA B: 5000DA
• temps de production pour chaque lot produit par heure
 #1 A: 1 B: 0
 #2 A: 0 B: 2
 #3 A: 3 B: 2
• temps de production disponible par semaine
 #1: 4 Ut #2: 12 Ut #3: 18Ut
FORMULATION DU PROBLÈME

PRODUCTION DE PORTES ET FENÊTRES

Temps de production
Usine 1 2 Temps disponible par semaine
1 1 0 4
2 0 2 12
3 3 2 18
Profit 3000 5000
FORMULATION DU PROBLÈME

 Objectif
• Maximiser les profits
 Variables de décision
• x1: quantité du produit A fabriquée
• x2: quantité du produit B fabriquée
 Fonction objectif
• MAXIMISER z = 3x1 + 5x2
 Contraintes
• usine 1: 1x1 + 0x2  4
• usine 2: 0x1 + 2x2  12
• usine 3: 3x1 + 2x2  18
 Contraintes de non-négativité
• x1  0
• x2  0
PROGRAMMATION LINÉAIRE

 Résolution selon les techniques appropriées


• Exemple
 MAXIMISER z = 3x1 + 5x2
 SUJET À
• x1 4
• 2x2  12
• 3x1 + 2x2  18
• x1  0 ; x2  0
• Solutions optimales
 programmation linéaire: simplexe
 programmation en nombre entier: branch-and-bound
 programmation dynamique
• Solutions sous-optimales: heuristiques
ZONE DE SOLUTION RÉALISABLE

Zone limitée par l’ensemble des équations de contraintes


du problème et par les limites des variables de décision
x2
3x1  2x2  18
8
x1  4

6 2x 2  12

0 x1
2 4 6 8 10
FONCTION OBJECTIVE

Déplacement de la fonction objective à l’intérieur de la


zone de solution réalisable pour atteindre un extremum
x2

z  36  3x1  5x2 8 Solution


x1 = 2
(2,6) x2 = 6
6
z = 36
z  20  3x1  5x2
4

z  10  3x1  5x2
2

0 x1
2 4 6 8 10
PROGRAMMATION LINÉAIRE

 PHASES D’UNE ÉTUDE DE R.O.


• Formulation du problème
• Construction du modèle mathématique
 Identification des variables associées au problème
 Formulation des contraintes qui délimitent les valeurs que
peuvent prendre les variables
 Formulation de la mesure d’efficacité associée aux
variables (fonction linéaire dite fonction objectif)
• Obtention d’une solution optimale à partir du modèle
• Vérification du modèle et de la solution
• Établissement de contrôles sur la solution
• Mise en œuvre de la solution
RÉSULTAT D’UNE
OPTIMISATION LINÉAIRE

Le domaine admissible d’un PL peut être


• vide: dans un tel cas, le problème est sans solution
admissible (pas de solution optimale)
• borné (et non vide): le problème possède toujours au
moins une solution optimale
• non borné: dans ce cas, selon la fonction objectif
 le problème peut posséder des solutions optimales
 il peut exister des solutions admissibles de valeur
arbitrairement grande (ou petite)
 dans un tel cas, le PL n'admet pas de solution optimale
finie et est dit non borné
FORMULATION DU PROBLÈME

PROGRAMMATION LINÉAIRE

Ressources par activité


Activités
Ressources 1 2 … n Ressource disponible
1 a11 a12 … a1n b1
2 a21 a22 … a2n b2
… … … …. … .
m am1 am2 … amn bm
Contribution c1 c2 … cn
PROBLÈME DE MAXIMISATION

 Maximiser
Z = x1 + 2x2
Sujet à
2x1 + x2  4
x1 + x2  8
-x1 + x2  4
x1 5
x1  0, x2  0
PROBLÈME DE MAXIMISATION

x2

-x1 + x2 = 4 X1 = 2
8 X2 = 6
Z = 14
6 x1 = 5

2 x1 + x2 = 8

2x1 + x2 = 4
0 x1
2 4 6 8 10
Max 5x1 4x2 3x3
2x1 3x2  x3 5
4x1  x2 2x3 11
3x1 4x2 2x3 8
x1 ,x2,x3 0
PROBLÈME DE MINIMISATION

 Minimiser
Z = x1 - x2
Sujet à
½x1 + x2  8
-x1 + 8x2  40
x1 8
x2  8
x1  0, x2  0
PROBLÈME DE MINIMISATION

X1 = 8
x2
X2 = 6
x2 = 8 Z=2
8

6
-x1 + 8x2 = 40
4

x1 = 8
2 ½x1 + x2 = 8

0 2 4 6 8 10 12 14 16 18 20 x1
MÉTHODE DU SIMPLEXE

 INTRODUCTION
• développée initialement par George Dantzig en 1947
• seule méthode exacte pour solutionner des problèmes
linéaires de grande taille
• méthode itérative algébrique où l’on circule
séquentiellement sur les sommets à l’intérieur de la
zone de solution jusqu’à l’obtention de la solution
optimale
PROPRIÉTÉS DU SIMPLEXE

 Zone de solution du problème linéaire toujours convexe


• une surface est convexe si elle est située toute entière du
même coté d ’un plan tangent
 S’il existe une seule solution optimale au problème
linéaire, elle est obligatoirement localisée sur un
sommet de la zone de solution
 S’il existe de multiples solutions optimales, au moins
deux d’entre elles doivent être localisées sur des
sommets adjacents
 Le nombre de sommets de la zone de solution est fini
 Si la solution réalisable localisée à un sommet donné
n’a pas de voisin adjacent dont la solution est
supérieure, ce sommet est la solution optimale
ALGORITHME DU SIMPLEXE

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


2. Vérifier si la solution actuelle n’est pas 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-Jordan
ALGORITHME
DU SIMPLEXE
MÉTHODE DU SIMPLEXE
DÉFINITIONS

 Systèmes d’équations équivalents


• Systèmes qui possèdent le même ensemble de solutions
 Variable de base
• Variable qui a un coefficient unitaire positif dans une des équations
du système et un coefficient nul partout ailleurs
 Opérations pivot
• Opération de Gauss-Jordan pour transformer un système
d’équations équivalent dans lequel une variable devient de base
 Système canonique
• Système d’équations où il y a une variable de base par équation
 Solution de base
• Système d’équations où les variables hors base sont fixées à zéro
résolu pour les variables de base
FORME CANONIQUE

 PROBLÈME DE MAXIMISATION
n
Max c x
j 1
j j

n
sujet à  aij xj  bi i  1, ...,m
j 1

xj  0 j  1,...,n
 PROBLÈME DE MINIMISATION
n
Min c x
j 1
j j

n
sujet à a
j 1
ij xj  bi i  1, ...,m

xj  0 j  1,...,n
FORME NORMALISÉE

 PROBLÈME DE MAXIMISATION
n
Max c x
j 1
j j

n
sujet à a x
j 1
ij j  bi i  1, ...,m

xj  0 j  1,...,n
 PROBLÈME DE MINIMISATION
n
Min c x
j 1
j j

n
sujet à a x
j 1
ij j  bi i  1, ...,m

xj  0 j  1,...,n
MÉTHODE DU SIMPLEXE

 FORME CANONIQUE

Max Z = 3 x 1 + 5 x2

sujet à
x1 4
2 x2  12
3 x1 + 2 x2 18
et
x1  0, x2  0
MÉTHODE DU SIMPLEXE

 FORME NORMALISÉE
Max Z
Z - 3 x1 - 5 x2 = 0 (0)
x1 + x3 = 4 (1)
2 x2 + x4 = 12 (2)
3 x1 + 2 x2 + x5 = 18 (3)
avec
xj  0, pour j =1, 2, 3, 4, 5
MÉTHODE DU SIMPLEXE

 ÉTAPE D’INITIALISATION
• Déterminer une solution de base réalisable
• Porter les variables hors base à zéro
• Solutionner les variables de base
• Exemple:
 z, x3, x4 et x5 sont les variables de base
 x1 et x2 sont les variables hors base
• On obtient:
 x1 = 0 et x2 = 0
 x3 = 4, x4 = 12 et x5 = 18
 z=0
MÉTHODE DU SIMPLEXE

 VARIABLE ENTRANT DANS LA BASE


• Variable hors base entrant dans la base
• Celle qui sera choisie fera augmenter la valeur de la
fonction objective le plus rapidement possible
• Variable ayant le plus grand coefficient négatif (cas de
maximisation)de l’équation (0)
• Exemple:
 X2 devient variable de base
MÉTHODE DU SIMPLEXE

 VARIABLE SORTANT DE LA BASE


• Variable qui limitera le plus rapidement la progression
de la nouvelle variable de base
• Exemple
 si x2 entre dans la base
 équation (2)
• 2 x2 + x4 = 12
• x2 max = 6
 équation (3)
• 3 x1 + 2 x2 + x5 = 18
• x2 max = 9
 limite maximale de x2 égale 6 sinon x4 devient négatif
MÉTHODE DU SIMPLEXE

 OPÉRATIONS PIVOT
• Système d’équations original (variables de base en gras)
Z - 3 x1 - 5 x2 = 0 (0)
x1 + x3 = 4 (1)
2 x2 + x4 = 12 (2)
3 x1 + 2 x2 + x5 = 18 (3)
• Pour revenir à la forme canonique, il faut que les
variables de base aient un coefficient unitaire dans une
équation et nul dans les autres
• Équation (2) multipliée par ½
2 x2/2 + x4/2 = 12 /2 (2)
x2 + ½ x4= 6 (2)
• Il faut éliminer les termes x2 des autres équations
MÉTHODE DU SIMPLEXE

 OPÉRATIONS PIVOT (suite)


• Équation (0) = ancienne (0) + 5 équation (2)
Z - 3 x1 - 5 x2 = 0 (0)
5 x2 + 5/2 x4 = 30 (2)
Z - 3 x1 + 5/2 x4 = 30 (0)

• Équation (3) = ancienne (3) – 2 équation (2)


3 x1 + 2 x2 + x5 = 18 (3)
- 2 x2 - x4 = -12 (2)
3 x1 - x4 + x5 =6 (3)
MÉTHODE DU SIMPLEXE

 OPÉRATIONS PIVOT (suite)


• Nouveau système équivalent d’équations
Z - 3 x1 - 5/2 x4 = 30 (0)
x1 + x3 = 4 (1)
x2 + ½ x4 = 6 (2)
3 x1 - x4 + x5 = 6 (3)
MÉTHODE DU SIMPLEXE

 CRITÈRE D’OPTIMALITÉ
• Optimalité assurée lorsqu’il est impossible de faire
augmenter (cas de maximisation) la valeur de z
• Exemple:
 x1 peut faire augmenter z
 Variable entrante x1
 Variable sortante x5
• équation (1)
• x1 + x3 = 4
• x1 max = 4
• équation (3)
• 3 x1 – x4 + x5 = 6
• x1 max = 2
MÉTHODE DU SIMPLEXE

 SOLUTION OPTIMALE
• Système équivalent d’équations
Z + 3/2 x4 + x5 = 36 (0)
x3 + 1/3 x4 - 1/3 x5 = 2 (1)
x2 + ½ x4 = 6 (2)
x1 - 1/3 x4 +1/3 x5 = 2 (3)
• Variables hors base
 x4 = 0, x5 = 0
• Variables de base
 x1 = 2, x2 = 6, x3 = 2
• Fonction objective
 z = 36
SIMPLEXE SOUS FORME TABULAIRE

 Méthode essentiellement identique


 Informations
• Coefficients des variables
• Constantes des équations
• Variables de base de chaque équation
SIMPLEXE SOUS FORME TABULAIRE

 Initialisation
 Critère d’optimalité
• Coefficients de l’équation (0) non négatifs ?
 Itération # 1
• Variable entrante x2
 Entourer la colonne pivot
• Variable sortante x4
 Entourer la ligne pivot
 Point pivot à l’intersection
• Transformation de Gauss-Jordan
SIMPLEXE SOUS FORME TABULAIRE

 Itération #1 (suite)
• Diviser la ligne pivot par le nombre pivot
SIMPLEXE SOUS FORME TABULAIRE

 Itération #1 (suite)
 Appliquer les transformations
 Nouvelle solution
 z = 30
 Solution (0, 6, 4, 0, 6)
SIMPLEXE SOUS FORME TABULAIRE

 Itération # 2
 Solution
• (2, 6, 2, 0, 0)
• z = 36
SIMPLEXE SOUS FORME TABULAIRE

 Ensemble complet
SIMPLEXE
SOUS FORME MATRICIELLE

 Forme canonique Max Z  cx


sujet à
Ax  b
x0

 x1  b1  0 
x  b  0 
x   2 b  2
0 
...  ...  ...
     
 xn   m
b 0 
a11 a12 ..... a1n 
a a ..... a 
A   21 22 2n 

..... ..... ..... ..... 


 
am1 am 2 ..... amn 
SIMPLEXE
SOUS FORME MATRICIELLE

 Forme normalisée Max Z  cx


sujet à
x 
A, I    b
x s 
x 
x   0
 s

I  matrice identitée m  m
 xn 1 
x 
x s   n2 
... 
 
 nm 
x
SIMPLEXE
SOUS FORME MATRICIELLE
 Problème c  3 5
1 0 1 0 0

A, I   0 2 0 1 0 
3 2 0 0 1
4  x3 
   x1   
b  12 x  x s   x4 
18  x2 
 x5 
SIMPLEXE
SOUS FORME MATRICIELLE
 Itération 0
x3  1 0 0 1 0 0
x B   x 4  B  0 1 0 B 1  0 1 0
 x 5  0 0 1 0 0 1
 X2 entre
 X4 sort  x 3  1 0 0  4   4 
x B   x 4   0 1 0 12  12
 x 5  0 0 1 18 18
4
c B  0 0 0 Z  0 0 012  0
18
SIMPLEXE
SOUS FORME MATRICIELLE
 Itération 1
x3  1 0 0 1 0 0
x B   x 2  B  0 2 0 B 1  0 0,5 0
 x 5  0 2 1 0  1 1
 X1 entre
 X5 sort  x 3  1 0 0  4   4
x B   x 2   0 0,5 0 12  6
 x 5  0  1 1 18 6
 4
c B  0 5 0 Z  0 5 06  30
6
SIMPLEXE
SOUS FORME MATRICIELLE
 Itération 2
x3  1 0 1 1 0,33  0,33
x B   x 2  B  0 2 0 B 1  0 0,50 0 
 x1  0 2 3 0  0,33 0,33 
 x 3  1 0,33  0,33  4  2
x B   x 2   0 0,50 0  12  6
 x1  0  0,33 0,33  18 2
 2
c B  0 5 3 Z  0 5 36  36
2
RÉSOLUTION AVEC
MICROSOFT EXCEL
RÉSOLUTION AVEC LINDO
MÉTHODE DU SIMPLEXE

 SITUATIONS PARTICULIÈRES
• Égalité des profits relatifs
 Choix aléatoire de la variable
• Égalité des ratios
 Choix aléatoire
 Situation de dégénérescence: remonter à l’étape des
ratios identiques
• Solution non bornée
 En pratique, une contrainte est absente
• Solutions multiples
 Variables hors base avec des coefficients nuls dans la
fonction objective
MÉTHODE DU SIMPLEXE

 VARIABLES ARTIFICIELLES
• Cas 
 ai1 x1 + ai2 x2 + ai3 x3 + … + ain xn  bi
 Ajout d’une variable d’écart
 ai1 x1 + ai2 x2 + ai3 x3 + … + ain xn – xm = bi
 Coefficient de la variable d’écart négatif ne peut servir
comme variable de base
 Ajout d’une variable artificielle
 ai1 x1 + ai2 x2 + ai3 x3 + … + ain xn – xm + xa = bi
MÉTHODE DU SIMPLEXE

 VARIABLES ARTIFICIELLES
• Cas =
 L’ajout d’une variable artificielle permet l’insertion d’une
variable de base dans la solution de départ
 Les variables artificielles sont éliminées de la solution en
leur assignant une pénalité importante dans la fonction
objective
 RÉSOLUTION
• Méthode du grand M
• Méthode des deux phases
DUALITÉ

PROBLÈME PRIMAL PROBLÈME DUAL


n m
Max Z  c x
j 1
j j Min Y0  b y
i 1
i i

sujet à sujet à
n

a x
m

j 1
ij j  bi i  1, ...,m a
i 1
ij yi  cj j  1, ...,n
et et
xj  0 j  1,...,n yi  0 i  1,...,m
EXEMPLE DE DUALITÉ

Le problème dual du programme


Max z = x1 + 4x2
Sujet à :
 x1 – x2  2
 2x1 + x2  5
 x2  3
 x1, x2 0
est Min w = 2y1 + 5y2 + 3y3
Sujet à :
 y1 + 2y2 1
 -y1 + y2 + y3  4
 y1, y2 , y3 0
DUALITÉ
EXERCICE

 Utiliser la méthode du simplexe


• Max Z = 4 x1 + 3 x2 + 6 x3
• Sujet à
 3 x1 + x2 + 3 x3  30
 2 x1 + 2 x2 + 3 x3  40
• et
 x1  0, x2  0, x3  0
PROBLÈME DE TRANSPORT

 EXEMPLE
• Une municipalité possède 3 serres pour fournir 4 parcs
• Capacité de production des serres C1, C2 et C3
• Demande hebdomadaire D1, D2 et D3
• Coût unitaire de transport Cij
PROBLÈME DE TRANSPORT

 FORMULATION DU PROBLÈME
3 4
Min Z   c x
i 1 j 1
ij ij

sujet à
3

x
i 1
ij  Dj j  1, ...,4
4

x
j 1
j  Ci i  1, ...,3

et
xij  0 i  1,...,3 j  1,...,4
EXERCICE

 3 serres:
• S1 = 3
• S2 = 7
• S3 = 5
 4 parcs:
• P1 = 4
• P2 = 3
• P3 = 4  2 2 2 1
• P4 = 4
 Coûts d’expédition:

cij  10 8 5 4
 7 6 6 8
EXERCICE

 4 usines et 3 centres de distribution


Distribution
M1 M2 M3 Disponibilité
Usines

W1 4 3 7 140

W2 5 2 10 100

W3 13 8 17 60

W4 9 3 11 40

Demande 120 20 200


PROGRAMMATION LINÉAIRE EN
NOMBRE ENTIER

 Max Z = 10 x1 + 50 x2
• Sujet à
 -x1 + 2 x2  5
 x1 + 2 x2  14
 x1 8
• et
 x1  0, x2  0
 x1, x2 entiers
PROGRAMMATION LINÉAIRE EN
NOMBRE ENTIER
PROGRAMMATION LINÉAIRE EN
NOMBRE ENTIER
PROGRAMMATION LINÉAIRE EN
NOMBRE ENTIER

 Méthode de séparation et d’évaluation


progressive (Branch-and-Bound Technique)
• Choix de la variable de séparation
 Critère de la variable la plus distante
 Critère du meilleur cj
Critère de la
variable la plus
distante
Séparation
selon x1
Critère de la
variable la plus
distante
Séparation à partir
de P2
Critère de la
variable la plus
distante
Séparation à partir
de P1
Critère du
meilleur cj
PROGRAMMATION LINÉAIRE EN
NOMBRE ENTIER