Académique Documents
Professionnel Documents
Culture Documents
Prof. M. Bouchetara
Recherche Opérationnelle (RO) :
- Toutes les données ne sont pas connues de façon certaine, et comportent donc
une part d'incertitude
RO, modèles et décision
• La RO permet de meilleures décisions
- Outils : modèles formels/mathématiques, permettant de représenter le cadre général
de la décision à prendre
- Points essentiels :
• Le modèle doit être établi en liaison avec le décideur final, et tous les aspects
nécessaires à la prise de décision doivent être présents dans ce modèle .
• Les variables du modèle doivent donc refléter la décision à prendre : résoudre
le problème ainsi modélisé (c'est-à-dire affecter les bonnes valeurs aux variables
du modèle) permet alors immédiatement d'en déduire la décision associée
- Variables = quelle décision doit-on prendre (solution à trouver)?
- Critère(s)/préférence(s) = dans quel(s) but(s)/avec quel(s) objectif(s)?
- Contraintes = les conditions impératives que doit vérifier la décision
La RO en pratique
Résolution de problèmes de décision complexes
- Problèmes de grandes tailles
- Programmation mathématique
- Optimisation combinatoire
- Aide à la décision
- Problèmes de transport
- Planification de projets/plannings
- Modélisation
- Résolution graphique
- Algorithme du simplexe :
Partie I:
- Aussi appelé Optimisation linéaire, car on optimise une fonction linéaire sous des
contraintes linéaires
1. Introduction
4. Présentation Théorique
Un programme linéaire consiste à trouver le maximum ou le minimum d’une forme linéaire dite
fonction objectif en satisfaisant certaines équations et inéquations dites contraintes. La description
mathématique d’un programme linéaire est la suivante :
Soient n variables de décision x1, x2,…, xn,, l’hypothèse que les variables de décision sont positives
implique que
x1 ≥ 0, x2 ≥ 0, , xn ≥ 0
La fonction objectif est une forme linéaire en fonction des variables de décision de type :
z = c1 x1 + c2 x2 + + ci xi + ... + cn xn
où les coefficients c1,…,cn doivent avoir une valeur bien déterminée et peuvent être positifs, négatifs
ou nuls. Par exemple le coefficient ci peut représenter un profit unitaire lié à la production d’une unité
supplémentaire du bien xi , ainsi la valeur de z sera le profit total lié à la production des différents biens
en quantités égales à x , x , , x .
1 2 n
Formulation d’un programme linéaire (PL)
Supposons que ces variables de décision doivent vérifier un système d’équations linéaires
définis par m équations ou inégalités
où les coefficients a1m,…, amn et b1,…, bm doivent avoir une valeur bien déterminée et
peuvent être positifs, négatifs ou nuls.
Le paramètre bj représente par exemple la quantité de matière première disponible dont le
bien xi utilise une quantité égale à aij xi..
Formulation d’un programme linéaire (PL)
max Z = c1 x1 + c2 x2 + + cn xn
s.c : a11 x1 + a12 x2 + + a1n xn ≥ b1
a21 x1 + a22 x2 + + a2 n xn ≥ b2
am1 x1 + am 2 x2 + + amn xn ≥ bm
c.n.n : x1 ≥ 0, x2 ≥ 0, , xn ≥ 0
Ce modèle peut se formuler :
n
F .O : Z (x) = ∑ c x j = 1 2, …., n.
j =1 j j
n
S .C : ∑ a ⋅ xj ≥ b i = 1,...., m
j = 1 ij i
c.n.n : xj ≥ 0
Formulation d’un programme linéaire (PL)
5. Exemples de formulations
P1 11 mn 7 mn 6 mn
P2 9 mn 12 mn 16 mn
Formulation du problème en un PL :
Etape 1 : Identification des variables de décision.
x1 : le nombre d’unités du produit P1 à fabriquer
x2 : le nombre d’unités du produit P2 à fabriquer
On vérifie les contraintes de non-négativité des variables de décision x1 et x2 :
x1 ≥ 0, x2 ≥ 0
Etape 2 : Identification des contraintes.
Dans ce problème les contraintes représentent la disponibilité de chaque machine :
11x1 + 9 x2 ≤ 9900 pour la machine M 1
7 x1 + 12 x2 ≤ 8400 pour la machine M 2
6 x1 + 16 x2 ≤ 9600 pour la machine M 3
Etape 3 : Identification de la fonction objectif.
La fonction objectif consiste à maximiser le profit global:
z = 900 x1 + 1000 x 2
Formulation d’un programme linéaire (PL)
P1 11 mn 7 mn 6 mn
P2 9 mn 12 mn 16 mn
Quel est le nombre de pièces P1 et P2 à fabriquer, pour utiliser au maximum les temps de
disponibilité des trois machines ?
Formulation d’un programme linéaire (PL)
Formulation du problème en un PL :
Etape 1 : Identification des variables de décision.
x1 : le nombre d’unités du produit P1 à fabriquer
x2 : le nombre d’unités du produit P2 à fabriquer
On vérifie que les variables de décision x1 et x2 sont positives .
Contraintes de non-négativité: x1 ≥ 0, x2 ≥ 0
Etape 2 : Identification des contraintes.
Dans ce problème les contraintes représentent la disponibilité de chaque machine :
11x1 + 9 x2 ≤ 9900 pour la machine M 1
7 x1 + 12 x2 ≤ 8400 pour la machine M 2
6 x1 + 16 x2 ≤ 9600 pour la machine M 3
Etape 3 : Identification de la fonction objectif.
La fonction objectif consiste à maximiser le temps global d’exploitation des machines
z = 24 x1 + 37 x2
Formulation d’un programme linéaire (PL)
P1 7 5 4 4 30
P2 4 3 * * 30
P3 * 2 4 5 50
P4 6 5 * 3 40
Rq.: Les cases avec * signifient que la pièce ne seras pas la machine n’est pas utilisée
Quel est le nombre de pièces à fabriquer dans un temps de réalisation global minimal ?
Formulation d’un programme linéaire (PL)
Formulation du problème en un PL :
En désignant par xij le nombre de pièces du type Ei, qui doit être fabriqué par la machine Mj , alors on
peut établir le système de contraintes suivant :
S.C : x11 + x12 + x13 + x14 =30, 7x11 + 4x21 + + 6x41 ≤ 180,
x21 + x22 = 30, 5x12 + 3x22 + 3x32 + 5x42 ≤ 100,
x32 + x33 + x34 = 50, 4x13 + 4x33 ≤ 150,
x41 + x42 + x44 = 40, 4x14 + 5x34 + 3x44 ≤ 100,
C.N.N: xij ≥ 0.
min Z = 7x11+4x21+ 6x41 + 5x12 + 3x22 + 2x32 + 5x42 + 4x13 + 4x33 + 4x14 + 5x34 + 3x44
Formulation d’un programme linéaire (PL)
Points de vente
U1 5 6 6 8 15 000
U2 11 9 4 7 12 000
U3 12 7 8 5 23 000
Ecrire le programme linéaire qui permettrait d’obtenir un plan de transport à un coût global
minimal.
Formulation d’un programme linéaire (PL)
Programme linéaire:
La formulation du problème posé peut être facilitée à l’aide du tableau des variables ci-dessous.
Les variables xij représentent le nombre d’unités d’appareils à livrer de l’usine i (i = 1,2,3) au
point de vente j (j = 1,2,3,4). On a 12 variables de décision.
Points de vente
Postes de travail
Ouvriers P1 P2 P3 P4
O1 10 8 11 6
O2 5 14 7 9
03 8 10 9 5
O4 12 9 12 8
Ecrire le programme linéaire qui permettrait d’obtenir un plan d’affectation optimal, soit un
temps global minimal d’exécution des tâches.
Formulation d’un programme linéaire (PL)
Disponibilité
Ouvriers P1 P2 P3 P4
de l’ouvrier
Disponibilité des
1 1 1 1
postes
Formulation d’un programme linéaire (PL)
P1 72 3,0 10 000
P2 85 4,5 18 000
P3 90 3,8 24 000
P4 94 4,2 22 000
La distillation des pétroles permet d’obtenir des essences ordinaires, sans plomb et super. Les normes imposées
aux essences sont les suivantes :
Indice Indice de Bénéfices Potentiel de
Essences
d’octane viscosité (UM) ventes en barils
≤ 16 000
super ≥ 95 ≤ 3,5 5,60
Formulation d’un programme linéaire (PL)
• Ecrire le programme linéaire qui permettrait d’obtenir une répartition optimale des pétroles
bruts pour produire les différents mélanges d’essences selon les normes exigées et ceci tout en
maximisant les bénéfices.
On suppose que les caractéristiques des pétroles bruts se mélangent d’une manière proportionnelle.
Par exemple ,le mélange de 150 barils d’un pétrole ayant un indice d’octane 754 avec 250 barils
d’un pétrole ayant un indice d’octane 80 donne un mélange de 400 barils dont l’indice d’octane est
(150*75 + 250*80)/ 400 = 78,13.
Chaque caractéristique est pondérée en fonction du volume de pétroles bruts mélangés,
Formulation d’un programme linéaire (PL)
Pétroles bruts
Restriction
ordinaire x11 x12 x13 x14 ≥ 80 ≤4 4,30
zéro
Disponibilit
10 000 18 000 24 000 22 000
é en barils
Formulation d’un programme linéaire (PL)
• Identification des contraintes :
C.N.N: xij ≥ 0.
• La fonction objectif qui permet de minimiser le temps d’exécution s’exprime comme suit:
min Z = 10 x11 + 8 x12 + 11 x13 + 6 x14+ 5 x21 + 14 x22 + 7 x23 + 9 x24 + 8 x31 + 10 x32 + 9 x33 + 5 x34
+ 12 x41 + 9 x42 + 12 x43 + 8 x44
Résolution graphique d’un programme linéaire
I. Introduction
Après avoir illustré par des exemples la modélisation d’un problème pratique par un programme linéaire, l’étape
suivante sera celle de la résolution de ce problème mathématique. La méthode graphique ou géométrique est l’une
des méthodes utilisées à ce sujet.
La méthode de résolution graphique d’un programme linéaire n’est valable que pour des modèles à deux ou trois
variables. Pour l’assimilation de la démarche de résolution du programme linéaire, on examinera deux exemples de
programme linéaire à deux variables de décision. Le domaine de solutions admissibles de ces programmes linéaires
sera un polygone formé par des hyperplans définis par les contraintes. Les hyperplans seront de ce cas des droites.
L’optimum recherché ne peut se trouver qu’en un sommet du polygone.
II. Exemple 1 : problème de production
On veut fabriquer deux types de produits P1 et P2 à partir de deux matières M1 et M2. Les quantités de matières
consommées par pièce et les quantités de matières disponibles sont données par le tableau ci-dessous,
Quantités de matières Gain par pièce Nombre minimal
consommées par pièce (DA) de pièces à
produire
Matières M1 M2
P1 0,15 0,20 10 50
Quantités 60 40
de matières
disponibles
Résolution graphique d’un programme linéaire
Le programme linéaire du problème posé s’écrit comme suit :
F.O :
max Z = 10 x1 + 20 x2
2. A cause des contraintes de non-négativité des variables le domaine de solutions possibles se trouvent
dans le premier quadrant.
L’ensemble des solutions qui correspond à l’équation est l’ensemble des points de la droite g1 définie
par x2 = 300 − 0.75 x1
Cette droite admet une valeur de la pente égale à –0,75 et coupe l’axe des ordonnées en 300 et l’axe
des abscisses en 400 .
L’inégalité 0.15 x1 + 0.20 x2 < 60 correspond à un demi-plan limité par la droite 0.15 x1 + 0.20 x2 = 60
Cette droite divise le plan en deux demi-plans, quel est le demi-plan à choisir ?
Pour cela, il suffit de prendre un point de l’un des demi-plans et voir s’il vérifie la contrainte
0.15 x1 + 0.20 x2 < 60 . Le point (0,0) vérifie cet inégalité, donc le demi-plan π1 au-dessous de la
droite est celui recherché( voir figure).
Les deux flèches indiquent le domaine de solutions qui vérifient la contrainte .
Résolution graphique d’un programme linéaire
• Si on fait de même pour les 03 autres contraintes du problème , on obtient les 03 autres demi-plans
π2 ,π3 et π4 relatifs aux solutions vérifiant respectivement les contraintes :
0.20 x1 + 0.10 x2 ≤ 40 x1 ≥ 50 x2 ≥ 100
Une solution possible du problème est dite réalisable ou admissible si et seulement si elle vérifie toutes
les contraintes, c’est à dire si elle appartient aux trois demi-plans relatifs à chaque contrainte du
programme linéaire, en d’autre terme à l’intersection des 4 demi-plans π1 ∩ π2 ∩ π3 ∩ π4 (voir figure).
Résolution graphique d’un programme linéaire
4. Représentation de la fonction objectif
Soit z la valeur de la fonction objectif du problème posé max Z = 10 x1 + 20 x2 .
On peut tracer une infinité de droites qui représentent les différentes valeurs Z de la fonction objectif,
toutes ces droites sont parallèles entre elles. De plus on peut augmenter la valeur de Z indéfiniment
dans le sens indiqué dans la figure ci-dessous.
Le problème est de connaître qu’elle est la droite qui correspond à la valeur maximale de la fonction
objectif ?
Résolution graphique d’un programme linéaire
5. Recherche de la solution optimale
A travers l’ensemble des droites parallèles relatives aux différentes valeurs de Z sur la figure précédente qui définie
l’ensemble des solutions réalisables, on peut localiser la solution optimale. Pour le problème posé, elle correspond au
point le plus éloigné de l’origine.
La distance OH entre l’origine O et une droite quelconque Z est égale à :
Z
OH = = 0.045 Z
10 2 + 20 2
Exemple 1:
-x1 + x2 ≤ 5,
x1 + x2 ≤ 10,
x1 ≥ 0 , x2 ≥ 0
Le domaine de solutions est défini par les
contraintes.
Exemple 2:
x1 - x2 ≤ -6,
x1 + x2 ≤ 1,
x1 ≥ 0 , x2 ≥ 0
La condition de non- négativité xi ≥ 0 ne peut pas être remplie. Le domaine de solutions est vide. Cela signifie qu’il y
a incompatibilité entre les contraintes. Pour le montrer algébriquement, il suffit d’ajouter membre à membre les 2
contraintes (x1 –x2) + (x1 + x2) ≤ -6+1 ≤ -5/2, ce qui est absurde car x1 ≥ 0.
Résolution graphique d’un programme linéaire
Exemples de domaines de solutions
Exemple 3:
x1 + x2 ≤ 5,
- x1+ x2 ≤ 2,
x1 +2x2 ≤ 10
x1 ≥ 0 et x2 ≥ 0.
La 3ème inéquation est superflue.
Exemple 4:
- x1 + x2 ≤ 3,
x1 + 2x2 ≤ 2,
x1 ≥ 0 et x2 ≥ 0
On a présenté dans le chapitre précédent une procédure graphique pour résoudre un programme
linéaire à deux variables. Par contre, dans la plupart des problèmes réels, on a plus que deux variables à
déterminer. Une procédure algébrique pour résoudre les programmes linéaires avec plus que deux
variables fera l’objet de ce chapitre. C'est la méthode par énumération et la méthode du simplexe.
La mise sous forme standard consiste à introduire des variables supplémentaires (une pour chaque
contrainte) de manière a réécrire les inégalités ( ) sous la forme d'égalités. Chacune de ces variables
représente le nombre de ressources non utilisés. On les appelle variable d'écart. Le programme linéaire
suivant est présenté sous la forme normale ou standard :
La fonction objective :
Z(x1, x2, x3,…,xn+m) = c1x1 + c2x2 + c3x3 + . . . + cn+m . xn+m
est à maximiser en tenant compte des équations linéaires des contraintes suivantes :
a11 x1 + a12 x2 + . . . + a1n xn + xn+1 = b1,
a21 x1 + a22 x2 + . . . + a2n xn + xn+2 = b2 ,
. . .
a31 x1 + a32 x2 + + a3n xn + xn+3 = b3 ,
………………………………………………………….....................
am1 x1 + am2 x2 + . . . + amn xn + xn+m = b2m,
x ≥ 0 pour j = 1, 2, 3,...,n+m
j
bi ≥ 0 pour i = 1, 2, 3,…,m
.
Forme normale d’un programme linéaire
Tout programme linéaire peut être ramené à travers des transformations appropriées à la forme
standard. A cet effet , on doit passer par 6 étapes de transformation sont généralement nécessaires qui
seront expliqués par l’exemple ci-dessous.
Soit un programme linéaire :
Ce PL diffère fortement de la forme standard décrite précédemment. La variable x2 peut prendre ici des
valeurs négatives. On n’a pas un problème de maximisation, mais de minimisation. Les membres de
droite du système de contraintes comporte des équations et des inéquations.
Il s’agit maintenant de transformer le PL posé sous sa forme standard, et dont la solution optimale sera
identique à celle du PL initial.
.
Forme normale d’un programme linéaire
Dans le cas où des variables xi prennent des valeurs négatives, on remplace xi dans la fonction objectif
et les contraintes par une différence de deux variables non négatives :
Dans l’exemple la variable x2 est quelconque, elle peut prendre donc des valeurs négatives. De
l’expression précédente , il en résulte:
x2 =x2’ – x2’’ avec x2’ ≥ 0 , x2’’ ≥ 0
.
Forme normale d’un programme linéaire
• 3ème étape de transformation : rendre non négatif les membres de droite des contraintes.
Les contraintes dont les membres de droite sont négatifs, seront multipliées par -1 pour les rendre
positif.
Si par exemple :
a1 x1 + . . . +an xn
Il faut multiplier les deux membres de la contrainte par -1 et inverser le sens de l’inéquation.
Forme normale d’un programme linéaire
• 4ème étape de transformation : Passage des inéquations à des équations et introduction des variables
d’écart.
La contrainte a1 x1 + a2 x2 + . . . + an xn ≤ b est équivalente aux deux contraintes suivantes :
a1 x1 + . . . + an xn + xe = b
xe ≥ 0.
xe est une nouvelle variable non négative, appelée variable d’écart. Elle représente la quantité à ajouter
au membre a1 x1 + . . . + an xn pour égaliser b.
D’une manière analogue, une contrainte de la forme a1 x1 + . . . + an xn ≥ b est équivalente aux deux
contraintes:
a1 x1 + . . . + an xn - xe = b,
xe ≥ 0.
Forme normale d’un programme linéaire
Le programme linéaire précédent se transforme en :
F.O : max Z3 = +2x1 - 4x2’ + 4x2 ’’ ;
S.C : -2x1 - 3x2’ + 3x2’’ - xe1 = 1;
x1 - x2’ + x2’’ + xe2 = 2 ;
6x1 - 2x2’ + 2x2’’ = 4;
C.N.N: x1, x2’, x2’’, xe1, xe2 ≥ 0
C.N.N: xj ≥ 0 , j = 1,..., n
bi ≥ 0,
xn+i ≥ 0, i=1,...,m
Forme normale d’un programme linéaire
S.C:
-2x1 - 3x2’ + 3 x2’’ - xe1 + xa1 = 1 ;
x1 - x2’ + x2’’ + xe2 =2;
6x1 - 2x2’ + 2 x2’’ + xa2 = 4 ;
C.N.N: x1, x2’, x2’’, xe1, xe2, xa1, xa2 ≥ 0
Forme normale d’un programme linéaire
Remarque:
On peut par un changement de numérotation des nouvelles variables introduites obtenir la forme
normale finale.
En posant x1 = x1, x2* = x2, x2’’= x3, xe1 = x4, xe2 = x5, xa1 = x6, xa2 = x7, on obtient le PL suivant:
C.N.N: xi ≥ 0 , i = 1, 2,…,7.
Définitions et propriétés fondamentales
......................................................................................................
bi ≥ 0, i = 1,2,..., m.
S.C : A.x=b,
b ≥ 0, (2)
C.N.N : x ≥ 0.
Définitions et propriétés fondamentales
b ≥ 0,
C.N.N: x ≥ 0.
On admet que le rang de la matrice des coefficients A du système d’équations (1) est égal au
rang de la matrice élargie [A, b] (condition de solvabilité du système d’équation) et égal à m.
Définition 1 :
Définition 2 :
Définition 3:
Tout ensemble de m variables prises parmi les (n+m) variables (x1, x2,…, xn+m) tel que le
déterminant des coefficients aij associés à ces m variables est différent de zéro forme une base
(B) (autrement dit, les vecteurs colonnes a(j) de A associés à ces m variables linéairement
indépendants forment une base de l’espace à m dimensions des contraintes). Les m variables
linéairement indépendants sont appelés variables de base (VB), alors que les n variables de
base (n+m-m) représentent les variables hors base (VHB).
Définition 4 :
En transformant le système d’équations de (1) de sorte que pour une base B quelconque les VB
sont exprimées par des VHB et que la fonction objectif ne dépend que des VHB, alors on parle
d’une représentation de base (RB) des solutions du programme linéaire.
Définitions et propriétés fondamentales
Généralement la représentation de base (RB) d’une base quelconque B de (1) a la forme ci-
dessous, en désignant successivement les variables de base par xn+1,…, xn+m et les variables
hors base par x1, …, xn :
………………………………………………………………………. ;
g1 x1 + g2 x2 + . . . + gm xn + ZB(x) = c.
ZB(x) représente la fonction objectif Z, lorsque dans la fonction objectif toutes les VB de la base
B sont nulles.
rij, ki, gj et c (i = 1, 2,..., m ; j = 1, 2,..., n) sont les valeurs qui résultent de la transformation du
système d’équations de (1) pour aboutir à la représentation de base (4).
Définitions et propriétés fondamentales
Définition 5:
Si par exemple dans (4) toutes les ki ≥ 0 ; alors la SB xB= {0, ......., 0, k 1 , ......, k m } est une
SBA. La RB correspondante est appelée représentation de base admissible (RBA). Une SB
ou SBA est donc une solution, qui n’a au maximum que m variables différentes de zéro.
Définition 6 :
Dans la représentation de base (4) d’une base B quelconque, les nombres gj (j = 1,.., n) sont
appelés coefficients de forme et le nombre c nombre de base.
Définitions et propriétés fondamentales
Dans le PL (3 ) les vecteurs a (n+1) ,..., a (n+m) forment une base B [a (n+1)
,..., a (n+m)
] , car ils sont
linéairement indépendant. x n+1 , x n+ 2 , x n+m sont les VB appartenant à cette base et x 1 ,.., x n sont les
VHB. Pour cette base la représentation de basse est :
...
a 11 x 1 + +a 12 x n +x n+1 = b 1,
...
a 21 x 1 + +a 2n x n +x n+2 = b 2, (5 )
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --- - - - - - -
...
a m1 x1 + +a mn x n +x n+ m = b m,
…………………………………………………………………………………………………
...
g 1 x1 + +g n x n +Z = c
a vec
...
c=c n+ 1 b1 + +c n+ m b m,
...
g1 = - c1 + c n+ 1 .a 11 + +c n+ m a m1,
...
g2 = - c2 + c n+ 1 .a 12 + +c n+ m a m2,
……………………………………………………………
g n = - cn + cn+ 1.a1 n + …. + cn+ m am n.
Définitions et propriétés fondamentales
La dernière équation de (5) est déduite de la fonction objectif de (3) après avoir éliminé les VB
xn+1,.., xn+m en utilisant les m contraintes. Puisque d’après (3) les valeurs bi [i = 1,..., m] sont non
négatives, alors
Le nombre des ensembles de m vecteurs linéairement indépendants qu’on peut former des
(n+m) vecteurs colonnes de A, c.-à-d. le nombre des différentes bases d’un programme linéaire
avec m équations et (m+n) variables, ne peut être au plus que ( nm+ m ), soit au maximum ( nm+ m )
solutions de base différentes (incluses les SBA).
Cette méthode est simple, mais elle n’est pas pratique, car le nombre de solutions de base à
explorer est élevé. Par exemple un programme linéaire à 10 variables et 5 contraintes, le nombre
de solutions possibles est égal au nombre de combinaisons 10 = 10.
5
Cette méthode de résolution permet d’obtenir les solutions de base admissibles, mais pas
nécessairement la solution optimale.
x2 + x4 = 30, (6)
2x1 + x2 + x 5 = 100,
C.N.N : x1,..., x 5 ≥ 0.
1 2 1 0 0
A= 0 1 0 1 0
= a
(1) (2) (3) (4) (5)
,a ,a ,a ,a
2 1 0 0 1 (5, 3)
A partir des 5 vecteurs colonnes a(1), a(2), a(3), a(4) et a(5) , on peut former les combinaisons
suivantes :
Méthode de résolution par énumération des solutions de base
On a ( 53 ) = 53..42..31..22..11 = 5 2 = 10 combinaisons.
.
On vérifie s’il existe parmi les 10 combinaisons celles qui ne forment pas de base. Pour cela on
calcule le déterminant de chaque combinaison. On remarque que la 5éme combinaison ne forme
pas de base, car les colonnes a(1), a(3), a(5) ne sont pas linéairement indépendants (le déterminant
est nul) ; on a
1 1 0
a (1) , a (3) , a (5) = 0 0 0 =0
2 0 1
Les 9 combinaisons restantes forment 9 bases différentes, qui seront désignées par le numéro
de la combinaison. B5 n’appartient pas aux bases.
Méthode de résolution par énumération des solutions de base
B1 a
(1) (2) (3)
,a ,a :
RB1 : SB1 :
1 1
- x4 + x5 + x1 = 35, xB1 = [35, 30, -15, 0, 0]
2 2
3 1
- x4 + x5 + x3 = -15
2 2
…………………………………………….
5 3
- x4 + x5 + Z = 225
2 2
Méthode de résolution par énumération des solutions de base
Le système d’équations initial (6) sera résolu en calculant les variables de base x1, x2 et x3 en
fonction des variables hors-base x4 et x5.
Du système d’équations(6), on a
x1 + 2x2 + x 3 = 80,
x2 = 30 – x4,
2x1 + x2 = 100 - x5
80 2 1
30 − x 4 1 0
100 − x 5 1 0 30 − x 4 − 100 + x 5
x1 = =
1 2 1 −2
0 1 0
2 1 0
x4 x5
x1 = 35 + −
2 2
Méthode de résolution par énumération des solutions de base
D’une manière similaire on obtient les autres variables:
x2 = 30 – x4
3 1
x3 = -15 + x4 + x5
2 2
Les variables x1, x2 et x3 seront éliminées de la fonction objectif en remplaçant ces variables par
les membres de droites qui contiennent les variables x4 et x5 :
3 3
Z = 3x1 + 4x2 = 120 - 4x4 + 105 + x4 - x5
2 2
5 3
Z = 225 - x4 - x5
2 2
Il en résulte :
1 1
x1 = 35 + x4 - x5 ,
2 2
x2 = 30 – x4,
3 1
x3 = -15 + x4 + x5,
2 2
……………………………..
5 3
Z = 225 - x4 - x5.
2 2
Méthode de résolution par énumération des solutions de base
RB1 : SB1 :
1 1
- x4 + x5 + x1 = 35, XB1 = [35, 30, − 15, 0, 0] ;
2 2
3 1
- x4 + x5 + x3 = - 15,
2 2
............................................................
5 3
- x4 + x5 +Z = 225.
2 2
Méthode de résolution par énumération des solutions de base
En appliquant la même démarche pour les autres combinaisons, on obtient les représentations
de bases suivantes :
2. B2 a
(1) , a (2) , a (4)
RB2 : SB2 :
1 2
- x3 + x5 + x1 = 40, XB2 = [ 40, 20, 0, 10, 0] ;
3 3
2 1
x3 + x5 + x2 = 20, Z (XB2 ) = 200.
3 3
3 1
- x3 + x5 + x4 = 10,
2 3
........................................................................
5 3
- x3 + x5 +Z = 200.
3 2
Méthode de résolution par énumération des solutions de base
3. B3 a
(1) , a (2) , a (5) :
RB3 : SBR3 :
+ x4 + + x2 = 30 , Z(XB3 ) = 180.
- 2 x3 + 3 x4 + x5 = 30 ,
.............................................................
3 x3 - 2 x5 + Z = 180.
4. B4 a
(1) , a (3) , a (4) :
RB4 : SB4 :
1 1
x2 + x5 + x1 = 35, XB4 = [50, 0, 30, 30, 0]
2 2
3 1
x2 - x5 + x3 = 30, Z (XB1 ) = 150
2 2
x2 + + x4 = 30,
....................................................................
5 3
- x2 + x5 +Z = 150
2 2
Méthode de résolution par énumération des solutions de base
6. B6 a
(1) , a (4) , a (5) :
RB6 : SB6 :
- 2 x3 - 3 x2 + x5 = - 60,
.....................................................................
3 x3 - 2 x2 + Z = 240
7. B7 a
(2) , a (3) , a (4) :
RB7 : SB7 :
- 2 x3 - x5 +x3 = - 70 ,
......................................................................
8. B8 a
(2) , a (3) , a (5) :
RB8 : SB8 :
2 x1 – x4 +x5 = - 70,
.......................................................................
9. B9 a
(2) , a (4) , a (5) :
RB9 : SB9 :
1 1
x1 + x3 + x2 = 40, XB9 = [0, 40, 0, − 10, 60] .
2 2
1 1
- x1 - x3 + x4 = -10, Z (XB9) =160.
2 2
3 1
- x1 - x3 + x5 = 60,
2 2
.......................................................................
- x1 + 2 x3 +Z = 160
Méthode de résolution par énumération des solutions de base
10. B10 a
(3) , a (4) , a (5) :
RB10 : SB10 :
x2 + x4 = 30, Z (XB9 ) = 0.
2 x1 + x2 + x5 = 100,
.....................................................................
- 3x1 - 4 xz + Z = 0.
SB x1 x2 x3 x4 x5
1 35 30 -15 0 0
2 40 20 0 10 0
3 20 30 0 0 30
4 50 0 30 30 0
6 0 100 0 30 -60
7 0 30 -120 -70 0
8 0 40 20 0 70
9 0 0 0 -10 60
10 0 0 80 30 100
Méthode de résolution par énumération des solutions de base
2 40 20 0 10 0
3 20 30 0 0 30
4 50 0 30 30 0
8 0 40 20 0 70
10 0 0 80 30 100
Puisque on a une maximisation de Z, la solution optimale est la solution de base admissible N°2.
Pour la construction d’un tableau du simplexe, on doit établir le PL sous sa forme normale
……
VB -1 c1 c2 cn 0 Q
……
xn+1 cn+1 a21 a22 a1n b1 q1
(4.2)
xn+2 cn+2 am1 am2 ……. a2n b2 q2
G g1 g2 ……. gn c
Méthode des tableaux du simplexe
• L’avant dernière colonne contient les valeurs des membres du côté droit des
contraintes .
Méthode des tableaux du simplexe
1 ère Etape :
On commence par calculer les coefficients de forme gk et le nombre de base c
à l’aide des relations suivantes et on les porte dans la ligne G du tableau du
simplexe:
• Avant d’entamer ces opérations, on doit porter les valeurs des coefficients
aij, bi, et cj dans le 1er tableau simplexe.
Méthode des tableaux du simplexe
1 ère Etape :
On calcule les sommes des produits de la 2ème colonne avec les autres colonnes et
les résultats seront portés dans la ligne G. Ce calcul justifie l’écriture des chiffres
-1 et 0 dans la 2 ème ligne du tableau (4.2).
Méthode des tableaux du simplexe
2ème Etape :
Après avoir trouvé la colonne d’entrée, on calcule les quotients qi par la division
des éléments de la colonne b par les éléments de la colonne d’entrée et on
détermine le quotient minimal.
bi
qi = pour a ie > 0 (4.5)
a ie
Ces quotients ne doivent être calculés que pour des éléments positifs. Ils sont
ensuite portés dans la colonne Q. Les cases de la colonne Q où il n’existe pas de
quotient, doivent rester vides.
Dans le cas où toutes les valeurs de la colonne d’entrée sont non positives, on
arrête le processus d’itération, car gl< 0 et ale≤ 0. Il n’existe pas de quotient qi
(i = 1,…,m). Le PL n’a pas de solution optimale.
La ligne ayant le plus petit qi sera désignée comme ligne de sortie qui sera par
exemple soulignée ou indiquée par une flèche sortante.
Méthode des tableaux du simplexe
min { q=
}
1 ≤ i≤ m
i qk ≥ 0 a ie > 0 (Critère de sortie d’une variable de la
base)
3ème Etape :
4ème Etape :
ancien élément
Nouvel élément := − (4.8)
pivot
5ème Etape :
− g . a kj
gj = gj − , j ≠
a k
g . bk
c= c−
a k élément correspondant élément correspondant
.
de la colonne d'entrée de la ligne de sortie
Nouvel élément := ancien élément -
pivot
5. Exemple
C.N.N : x1,..., x 5 ≥ 0.
Tableau de départ 1 :
1 VHB x1 x2 b
VB -1 3 4 0 Q
x3 0 1 2 80 40
x4 0 0 1 30 30
x5 0 2 1 100 100
G -3 -4 0
Méthode des tableaux du simplexe
Tableau N°2 :
2 VHB x1 X4 b
VB -1 3 0 0 Q
x3 0 1 -2 20 20
X2 4 0 1 30 %
x5 0 2 -1 70 35
G -3 4 120
Méthode des tableaux du simplexe
Tableau N° 3 :
3 VHB x3 X4 b
VB -1 0 0 0 Q
x1 3 1 -2 20 %
X2 4 0 1 30 30
x5 0 -2 3 30 10
G 3 -2 180
Méthode des tableaux du simplexe
Tableau N° 4 :
4 VHB x3 X5 b
VB -1 0 0 0 Q
x1 3 -1/3 2/3 40
X2 4 2/3 - 1/3 20
x4 0 -2/3 1/3 10
Exo 1:
Un navire ayant une capacité de chargement de 7000t et une capacité de
volume de 10000 m3 doit transporter 3 marchandises G1, G2 et G3 en seul
voyage de manière que le fret soit aussi grand que possible. Le tableau ci-
dessus donne pour chaque marchandise la quantité offerte M en t, le
volume de chargement R en m3/t et le fret F en DA/t.
Trouver le modèle mathématique, que signifient les variables dans le
modèle ?
G1 G2 G3
Réponse :
xi : quantité embarquée Gi en t (i = 1, 2, 3)
F.O : max Z = 25 x1 + 30 x2 + 35 x3 ;
S.C : x1 + x2 + x3 ≤ 7000 ;
1.2 x1 + 1.1 x2 + 1.5 x3 ≤ 10000 ;
0 ≤ x1 ≤ 3500,
0 ≤ x2 ≤ 4000,
0 ≤ x3 ≤ 2000.
Méthode des tableaux du simplexe
Exo 2 :
D’un lot de barres de fer rond de longueur L= 20 m on veut
obtenir :
Au moins 8000 morceaux de largueur L1= 9m,
10000 morceaux de longueur L2 = 8 m et
6000 morceaux de longueur L3 = 6 m.
Déterminer le modèle mathématique pour un rebut minimal
de matériau.
Méthode des tableaux du simplexe
1 x1 2 0 0 2
2 x2 1 1 0 3
3 x3 1 0 1 5
4 x4 0 2 0 4
5 x5 0 1 2 0
6 x6 0 0 3 2
Méthode des tableaux du simplexe
F.O : min Z = ∑
i =1
Xi
C.L : 2 x1 + x2 + x3 ≥ 8000 ;
x1 +2 x4 + x5 ≥ 10000 ;
x3 +2 x5 + 3x6 ≥ 6000.
xi ≥ 0 (i = 1,…, 6) et nombres entiers.
Méthode des tableaux du simplexe
x1 - x2+ x3 + x6 = 2,
1 VHB x1 x2 x3 x4 b
VB -1 2 4- 4 0 0 Q
x5 -M -2 -3 3 -1 1
x6 0 1 -1 1 0 2 2
x7 -M 6 -2 2 0 4 2
-2 4 -4 0 0
G
-4 5 -5 1 -5
Méthode des tableaux du simplexe
2 VHB x1 x2 x5 x4 b
VB -1 2 4- -M 0 0 Q
3 VHB x6 x3 x4 b
VB -1 M- 4- 0 0 Q
4 VHB x2 x1 b
VB -1 -4 2 0
x3 4 1- 3 2
x6 0 0 -2 0
x4 0 0 11 5
G 0 10 8
F.O : max Z = x1 + x2 ;
S.C: x1 + 2x2 + x3 = 70,
2x1 + x2 + x4 = 80,
x1 - 3x2 + x5 = 0,
x1 + + x6 = 30,
x1, x2,…, x6 ≥ 0
Méthode des tableaux du simplexe
1 VHB x5 x2 b
Q
VB -1 1 1 0
X3 0 1 2 70 70
X4 0 2 1 80 40
x1 0 1 -3 0 0
x6 0 1 0 30 30
G -1 -1 0
2 VHB x5 x2 b
VB -1 0 1 0 Q
x3 0 -1 5 70
x4 0 -2 7 80
x1 1 1 -3 0 -
x6 0 -1 30
G 1 -4 0
Méthode des tableaux du simplexe
3 VHB x5 x6 b
VB -1 0 0 0 Q
x3 0 2/3 -5/3 20 30
x4 0 1/3 -7/3 10 30
x1 1 0 1 30 -
x2 1 -1/3 1/3 10 -
G -1/3 4/3 40
5 VHB x4 x3 b
VB -1 0 0 0 Q
x6 0 -2/3 1/3 0 -
x5 0 -5/3 7/3 30 -
x1 1 2/3 -1/3 30 -
x2 1 -1/3 2/3 20 -
G 1/3 1/3 50
Ce problème peut être représenté par un graphe ou réseau, où les expéditeurs ou les origines
E1, E2 et E3 sont indiqués par des cercles et les consommateurs ou les destinations V1, V2, V3
et V4 par des triangles. La liaison entre les origines et les destinations est représentée par des
arcs dits arcs de capacité. Les origines et les destinations sont appelées respectivement entrées
du réseau ou sommets d’entrée et sorties du réseau ou sommets de sortie. Les coûts de
transport sont représentés par des arcs de capacité et la valeur de chaque coût de transport
représente la capacité de l’arc cij.
c11 = 7 V1
E1
c11 = 8 c31 = 6
c21 = 2 c13 = 5 V2
c22 = 4
E2 c23 = 5 c32 = 3
c24 = 9 c14 = 3
V3
c33 = 1
E3
c34 = 2
V4
Problème de transports
Un problème de transport peut être représenté par un tableau qui contient les coûts unitaires
de transport. Le tableau 4.1 montre la matrice des coûts unitaires de transport du problème
posé.
Consommateurs ou clients
destinations
V1 V1 V1 V1 11 = a1
origine
Quantités produites
C11 C12 C13 C14 en unité ou
E1 11 = a2 disponibilités des
7 8 5 3 dépôts
C21 C22 C23 C24
Producteurs
E2 8 = a3
ou dépôts
2 4 5 9
C31 C32 C33 C34 Production totale =
E3 30 consommation totale ou
6 3 1 2 somme des disponibilités
5= 9= 9= 7=
b1 b2 b3 b4
Le problème de transport consiste à établir un plan de transport selon lequel chaque consommateur
ou client reçoit la quantité demandée en tenant compte du coût de transport global minimal.
Problème de transports
En désignant par xij (i = 1, 2, 3 ; i = 1, 2, 3, 4) la quantité à déterminer qui sera livrée du producteur Ei au consommateur Vj,
on peut établir un plan de distribution ou d’affectation d’après le tableau suivant:
V1 V2 V3 V4
E1 x11 x12 x13 x14 a1
E2 x21 x22 x23 x24 a2
E3 x31 x32 x33 x34 a3
b1 b2 b3 b4
Plan d’affection ou de distribution
En utilisant les coefficients généraux cij, ai et bj, le problème de transport peut s’écrire sous la forme analytique
équivalente générale suivante :
n m
F .O : Min Z = ∑∑ cij xij
i =1 j =1
S .C :
n
∑x
j =1
ij = ai i = 1,2 ,...,m (contraintes d' offres ou de production)
∑x
i =1
ij = bj j = 1,2 ,...,n (contraintes de demande ou de consommation)
C.N.N :
xij ≥ 0 i = 1,2 ,...,m et j = 1,2 ,...,n (contraintes de signe)
m n
Si ∑ a = ∑ b
i =1
i
j =1
j : le problème est dit équilibré.
m n
: on crée un client ou un consommateur fictif
Si ∑ ai > ∑ b j
i =1 j=1 (création d’une nouvelle colonne avec des coûts de transport nuls):
m n
n +1 ∑
b = ai − ∑ bj
i =1 j =1
c
i, n +1 = 0, i = 1,2,..., m ( coûts de transport nuls)
Problème de transports
m n
: on crée un entrepôt ou un producteur fictif
Si ∑ ai < ∑b j
i =1 j=1 (création d’une nouvelle ligne avec des coûts de transport nuls):
n m
m +1 ∑ j ∑ a i
a = b −
j=1 i =1
c
m +1, j = 0, j = 1,2,..., n ( coûts de transport nuls)
Méthodes de résolution
V1 V2 V3 V4 V1 V2 V3 V4
E1 5 x12 x13 x14 11/6 E1 5 6 6/0
E2 x22 x23 x24 11 E2 x22 x23 x24 11
E3 x32 x33 x34 8 E3 x32 x33 x34 8
5/0 9 9 7 0 9/3 9 7
V1 V2 V3 V4 V1 V2 V3 V4
E1 5 6 0 E1 5 6 0
E2 3 x23 x24 11/8 E2 3 8 8/0
E3 x33 x34 8 E3 x33 x34 8
0 3/0 9 7 0 0 9/1 7
V1 V2 V3 V4
E1 5 6 11
E2 3 8 11
E3 1 7 8
5 9 1 7