Académique Documents
Professionnel Documents
Culture Documents
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
SOMMAIRE
Chapitre 1 : Généralités
a. La RO
b. Les applications
c. Méthodologie utilisée
d. Références bibliographiques
Chapitre 3 : Optimisation
Optimisation sans contraintes
Optimisation avec contrainte
j. Motivation
k. Bases et points extrêmes
l. L’algorithme du simplexe
1
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Chapitre 1 : Généralités
I. Définitions de la R.O
La recherche opérationnelle est l’approche scientifique pour la résolution des problèmes de gestion
des systèmes complexes. C’est aussi l’ensemble des méthodes scientifiques pour résoudre des
problèmes d’optimisation liées aux organisations du monde réel.
II. Caractéristiques
2
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
1. Programmation linéaire
Minimiser le coût/ maximiser le profit :
Satisfaire la demande :
avec des ressources limitées :
quantités produites :
2. Optimisation combinatoire (OC)
i. Trouver la meilleur solution parmi un nombre fini mais très grand de choix
ii. un problème d’OC se caractérise par :
- La présence de choix à faire parmi un ensemble fini d’alternance
- Une notion de coût ou de gain, ou de perte
- La nécessité de faire globalement les bons choix de manière à
optimiser la valeur objectif.
3. Les graphes
Valuation des arêtes= coût, temps, distances, capacité.
Meilleur chemin de i à j
Meilleur parcours :
o Passant par chaque ville
o Passant par chaque arête, etc.
Bibliographie
[1] De Werra, D., Liebling, T-M, and Hêche, J.-F, Recherche Opérationnelle pour ingénieurs, Tome 1.
Presses Polytechniques et universitaire Romandes, 2003
[3] GUIDY WANDA JOSEPHINE, Recherche Opérationnelle : initiation. Tome 1. Collection Alpha
Omega. 1993.
Conclusion partielle
Discipline à l’interface de l’informatique (algorithmique) des mathématiques (modélisation) et de
l’économie (gestion, stratégies, etc.) la recherche opérationnelle permet d’opérer le meilleur choix
avec les ressources disponibles.
3
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Exemple
Soit . Donc A est une matrice bloc à deux lignes et deux colonnes. Par ailleurs on a :
avec ; , , . De plus,
Somme
- Soit A une matrice représentée par un tableau rectangulaire. En traçant des parallèles aux
bords de ce tableau, on partage la matrice A en un certain nombre de sous-matrice appelées
blocs. On dit qu’on a décomposé A en blocs. Notons les différents blocs, est le bloc
situé sur la horizontale et la verticale. Une matrice décomposée en blocs est
aussi appelée matrice blocs. Dans l’exemple précédent on a une parallèle au bord horizontal
et une autre au bord vertical, donc A est une matrice bloc.
- Les blocs situés sur la même ligne (portant le même numéro de ligne) doivent avoir le même
nombre de lignes
4
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
- Les blocs situés sur la même colonne (portant le même numéro de colonne) doivent avoir le
même nombre de colonnes.
car les blocs situés sur la première ligne n’ont pas le même nombre de lignes.
Il s’agit de l’addition des matrices. Ainsi, le bloc s’obtient en additionnant les blocs et .
Exemple
Dans le cas où et on a :
a. Multiplication
Soient et deux matrices décomposée en bloc respectivement ( ) et ( ). Si le nombre de
colonnes de ( est égale au nombre de lignes de ( ) alors la matrice se décompose
sous forme de blocs ( ) avec :
Il s’agit de la multiplication et d’addition des matrices. Ainsi, le bloc s’obtient en additionnant les
blocs et .
Exemples
Dans le cas où et on a :
5
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Exercice
Effectuer lorsque cela est possible les opérations sur les matrices blocs suivantes :
Exercice 1
Soit la matrice
Exercice 2
Soit la matrice
6
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Exercice 3
Soit les matrices suivantes :
7
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Définitions
Dans le plan ….rapporté à un repère orthonormé , l’équation générale d’une droite
s’écrit :
Dans l’espace vectoriel muni de sa base canonique, l’équation générale d’un hyperplan
s’écrit :
Remarque
L’intersection de deux hyperplans non parallèles est un hyperplan de dimension .
3. Sous-espace affine
Définition
Etant donné , , on dit que M est un sous espace affine (ou une variété) de , si M
est stable par combinaison linéaire affine. C'est-à-dire :
Exemple
8
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
On a :
avec
Calculons
On a :
Exemple
Posons : . Ainsi,
avec .
9
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Proposition.
Pour un sous ensemble non vide de , les conditions suivantes sont équivalentes :
Définitions
Soit M un sous espace affine de Rn. Le sous-espace vectoriel V vérifiant :
est appelé la direction de M. La dimension de V est la dimension de M.
Proposition
M est un sous-espace affine si et seulement si M contient toute combinaison linéaire affine de toute
famille finie de ses points
Proposition
Soit H une partie non vide de . Les propositions suivantes sont équivalentes
i. H est un hyperplan
Exemple
10
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Exemples
2. Dans , Un disque de centre O et de rayon r, un triangle plein ABC, un rectangle plein ABCD sont
des paries ou ensembles convexes :
…………………………………………………………
les figures ci-dessous représentent des paries convexe du plan.
3. Dans , les parties convexes sont , les boules, les segments, les singletons et l’ensemble vide
Application
Que forme l’ensemble des solutions du système suivant.
11
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Rép. : On obtient pour l’ensemble des solutions, un ensemble fermé borné donc convexe.
Remarque
2. Points extrêmes
Définition
Le vecteur x est appelé combinaison convexe des p vecteurs x1, x2, …, xp s’il existe des constantes
non-négatives ……. Avec ………….. telles que ……….
Un vecteur x est un point extrême (sommet) d’un ensemble S convexe s’il n’existe pas de points x1,
x2 (x1/=x2) dans l’ensemble pour lesquels ……………. En d’autres termes, un point extrême de S ne
12
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
peut être exprimé comme combinaison convexe de deux distincts de S. A noter ici les inégalités
strictes imposées à ……
Définition
Définition. Un point A d’une partie convexe E de est point extrême s’il n’est intérieur à aucun
segment de E. En d’autres termes un point x de A est un point extrême si
Exemple
Dans le plan, un triangle plein ABC un rectangle plein ABCD parties convexes du plan ont pour points
extrêmes respectivement les sommets A, B ,C et A,B,C,D.
Exercice
Quelle(s) est (sont) les points extrêmes d’un disque de centre O et de rayon r ? Rép. : c’est sa
circonférence.
3. Polyèdre convexe
Définition
Un polyèdre convexe P de est l’intersection (éventuellement vide) d’un nombre fini de démi-
espace fermé et/ ou d’hyperplans. C'est-à-dire :
Remarque
Dans cette section on peut supposer qu’on a un seul type d’inégalité.
Exemples
Dans un polyèdre peut avoir l’allure de la figure suivante.
13
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Proposition
Soit P un polyèdre convexe de . On a les équivalences suivantes :
i. est un point extrême de P
ii. est un sommet de P.
Définition
Soit P un polyèdre convexe
On dit que la fonction f(x) possède un minimum local en s’il existe un , tel que pour tout x
au voisinage de ,
Remarque
Un point appartient au de si pour tout
2. Fonction convexe
Définition
Une fonction J définie sur un ensemble convexe C est dit convexe si
14
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
X.
Alors f est bornée et atteint ses bornes. Autrement dit, il existe x élément de X point de minimum
global de f sur X i.e.
Théorème
Soit F un fermé non vide de et f : une application continue infinie à l’infinie. Alors
f admet un point minimum sur F. Autrement dit, il existe tel que
15
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Une entreprise décide d’élaborer un nouveau produit à partir d’une quantité de matière première
dont le kilogramme coûte 1400 FCFA ;
L’heure ouvrier revient à 7000 FCFA à l’entreprise ; La fonction habituellement utilisée par
l’entreprise pour caractériser l’activité est ou est le nombre d’heures-ouvrier et
un coefficient constant (ici ) ; L’investissement est limité à 7000 kCFA.
Trouver la production (c'est-à-dire déterminer la valeur des variables et ) qui maximise l’activité.
Solution
Modélisation
Fonction d’investissement :
Fonction d’activité :
Résolution du modèle et interprétation de la solution
L’activité sera maximisée pour la valeur telle que
16
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Une entreprise fabrique deux produits P1 et P2 en utilisant une machine m et deux matières
premières p et q.
Les profits réalisés sont de 2800 FCFA par unité de P1 et de 1400 FCFA par unité de P2.
Sachant que l’on dispose chaque jour de 8 h d’utilisation de la machine de fabrication, 10 kg de
produit p et 36 kg de produit q, quelle quantité x1 de P1 et x2 de P2 doit-on produire
quotidiennement pour réaliser un profit maximal ?
Solution
17
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Compte tenu de la remarque précédente, on pourrait donc envisager d’évaluer le critère en chaque
sommet, mais le nombre de sommets augmente rapidement avec le nombre de variables et le
nombre de contraintes.
Remarque
Le polyèdre est obtenu en traçant uniquement les droites associées à chaque contrainte. A ce
stade on ne se préoccupe pas des sommets (on n’a pas besoin de les calculer)
Le balayage de la fonction objectif permet de trouver le sommet du polyèdre qui est la
solution à notre problème. Une fois trouver, on détermine les droites qui détermine ce point,
puis on calcul leur intersection
Les droites doivent être tracées en couleur, et leur équation doit être mentionnée à coté
d’elles pour faciliter la détermination de la solution.
Application
engrais A disponible
nécessaire pour le café pour cacao
engrais B disponible
nécessaire pour le café pour le cacao
anti - parasites disponibles
nécessaire pour le cacao
Objectif : produire le maximum (en poids) de café et de cacao, sachant que les rendements sont de 4
kg/m2 de pour le café et 5 kg/m2 cacao.
Solution
18
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Modélisation
Variable de décision
- surface de courgette
- surface de navets
Fonction objectif
Contraintes
- Engrais A :
- Engrais B :
- Anti-parasite :
-
Optimiser l’objectif
Les lignes de niveau sont des droites parallèles.
19
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
20
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Chapitre 4 : Optimisation
1. Introduction de RO
Dans une économie caractérisée par la raréfaction des ressources naturelles, une diminution des
sources des sources de financement et une concurrence toujours plus vive entre les entreprises, la
répartition optimale de moyens limités entre la multitude des besoins devient la tache principale des
responsables politiques et économiques notre société. Ce problème se retrouve dans tous les
domaines de l’activité économique, politique, scientifique et sociale.
En raison de l’ampleur des enjeux décisionnels, le décideur ne peut plus prendre de décisions hâtives
et justifier un choix d’attribution fondé sur un raisonnement instinctif ou des calculs naïfs. Une bonne
résolution de ce type de problèmes nécessite la connaissance de méthodes approuvées ainsi que la
maitrise des outils mathématiques et informatiques développées a cet effet.
Les méthodes proposées pour résoudre les problèmes évoqués ci-dessus sont nombreuses, mais
elles peuvent toutes se résumer à l’énoncé mathématique suivant, à savoir maximiser ou minimiser
une fonction numérique de variables soumise à diverses contraintes.
21
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Les méthodes d’optimisation peuvent être classées en fonction du type d’étude que l’on souhaite
mener et en fonction des informations dont on dispose.
Si le phénomène analysé est suffisamment connu pour qu’il soit modélisé (au sens représenté par un
ensemble de relations mathématiques), on cherchera les extrema de ce modèle en utilisant des
méthodes analytiques (notion de dérivation, méthode de Lagrange, etc.). Ces méthodes sont
appelées méthodes indirectes puisqu’il faut disposer d’un modèle mathématique du phénomène.
Si la modélisation n’est pas possible (problème de complexité), on emploiera une méthode directe
d’optimisation basée sur une recherche heuristique.
22
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Réponse.
et sa dérivée seconde :
Considérons le problème d’optimisation sans contraintes dans le cas d’une variable. Soit une
fonction d’une variable de classe C1(continue ainsi que sa dérivée), alors on a le résultat suivant.
23
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Résultat
A
Alors si en ce point :
Remarque
Figure :
24
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Figure :
peut admettre une infinité de minima et maxima locaux mais aucun minimum ou maximum
global : (voir figure ci-dessous).
Figure 1.3 :
25
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Application
Résultat
Remarque
26
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Application
Soit la fonction
27
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Résultat
Remarque
Application
Soit la fonction
Justifier à l’aide du résultat précédent que possède un minimum
Solution
28
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Figure : Graphe de
Exercice
Soit
On a :
29
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Exercice
On considère un nuage de points de tels que , pour . En pratique, ces
points résultent de mesures prises lors d’expériences. On cherche alors à déterminer le
comportement global de ce nuage de points. Bien sûr, ceux-ci n’ont aucune raison d’être alignés. On
décide toutefois de chercher une droite qui les approche au mieux …
On utilise alors ce que l’on appelle la méthode des moindres carrés. Puisque l’on n’a pas
pour tout indice i, on cherche à minimiser la fonctionnelle J définie par
. Nous avons donc à résoudre un problème de minimisation sans contrainte
30
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
1. Activités d’introduction
Activité 1 (problème avec contrainte d’inégalité)
Activité 2 (problème d’optimisation sans contraintes débouchant sur un problème avec contraintes)
On considère le cas d’une fabrique d’acier engagée dans la production de plaques de métal et
utilisant dans son processus de fabrication des matériaux recyclées. Le métallurgiste responsable
désire prévoir la production d’acier en fonction des matériaux recyclés employés.
On note la production en tonnes à la fusion et le type de métal utilisé dans la
fusion avec et . On suppose que le produit final est une fonction linéaire des
matériaux entrés (inputs).
31
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
1. Proposer un modèle linéaire pour prévoir la production finale. On posera que est
Activité 3
Les données sont celles de l’exercice précédent. Cependant, le métallurgiste peut être amené à
refuser la solution obtenue si certains sont négatifs par exemple. En effet, il a à l’esprit certaines
restrictions posées sur X. Sachant que les produits finis (en tonne) sont plus petits ou égaux aux
matériaux entrés car des pertes surviennent lors de la fusion, on introduit donc des restrictions
supplémentaires sur X : .
Formuler ce problème avec de telles contraintes (de tels problèmes sont en général difficile à
résoudre).
32
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Applications
33
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Solution
La contrainte s’écrit : .
L’annulation des premières dérivées partielles fournit un système de trois équations à trois
inconnues qu’il s’agit de résoudre.
34
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
a. Le cas de variables
35
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Remarque
36
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
La méthode des multiplicateurs de Lagrange ne peut pas être utilisée dans tous les cas. Notamment
lorsque le problème d’optimisation possède des contraintes de non-négativité ou lorsque la fonction
n’est pas dérivable, cette méthode est male adaptée.
Exercice
Une firme produit des appareils dans deux usines différentes. Les coûts de production respectifs pour
les deux usines sont :
7. PROGRAMMATION MATHEMATIQUE
Remarque
37
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Il est particulièrement aisé de travailler avec une variable sans restriction de signe, en
remplaçant par la différence de deux variables non négatives. De même, des contraintes
d’égalité peuvent être remplacées par deux contraintes d’inégalité. Des problèmes classiques
sans contrainte et des problèmes avec contraintes d’égalité peuvent alors être considérés
comme des cas particuliers de (15)
Exercice corrigé
Soit les problèmes PM1 et PM2 de programmation mathématique définis respectivement comme
suit :
Déterminer
avec .
38
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Activité 1
Une entreprise fabrique deux produits P1 et P2 en utilisant une machine m et deux matières
premières p et q.
Les profits réalisés sont de 2800 FCFA par unité de P1 et de 1400 FCFA par unité de P2.
2. Ecrire les contraintes d’utilisation des produits p et q ainsi que celle liée à l’utilisation de la
machine m pour la production quotidienne de A et B.
Activité 2
Un consommateur dépense 24 CHF pour l’achat de deux biens : x et y. Les prix de x et de y sont
respectivement de 1 CHF et de 2 CHF. La fonction d’utilité du consommateur est donné par
.
Ecrire le programme linéaire dont l’objectif est de maximiser la fonction d’utilité du consommateur
Exercice corrigé
Une usine fabrique les produits P1 et P2. Elle utilise les matières premières M1, M2 et M3, à raison
de 2 tonnes de M1, 1 tonne de M2 et 3 tonnes de M3 par unité produite de P1 et de 1 tonne de M1.
3 tonnes de M2 et 4 tonnes de M3 par unité produite de P2. Elle dispose mensuellement de 50
tonnes de M1, 25 tonnes de M2 et 60 tonnes de M3.
Le bénéfice net est de 5000 FCFA par unité de P1 et de 2000 FCFA par unité de P2.
Quelle quantité de chacun des deux produits l’entreprise doit-elle fabriquer pour que le bénéfice soit
maximal ?
39
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Solution
Enoncé explicite
Produits : P1 et P2
Quantité de matière
P1 P2
disponible
M1 2 1 50
M2 1 3 25
M3 3 4 60
Modélisation
Soient :
la quantité de P1 produit par mois,
la quantité de P2 produit par mois,
Max z= ,
Sous contraintes
et
40
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
a. Contraintes de signe :
b. Contraintes économiques :
4. Ecrire la forme canonique du problème
Remarque
Après la modélisation, il faut résoudre le programme mathématique obtenu.
2. Résolution géométrique.
Activité
Soit le problème de programmation linéaire suivant :
Max
s.c. ,
2. On considère les lignes de niveau . Quelles sont les positions relatives de ces
droites ?
4. On déplace parallèlement à elle-même la droite (D) dans la direction des x croissants. Quelle
est l’intersection limite de D avec le domaine polygonal.
Exercice corrigé
Max
s.c. ,
Solution
Droites limites
passant par et
passant par et
passant par et
41
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Graphique
D’où
Remarque
cette méthode est limitée au cas de 2 variables.
On aurait pu utiliser le solver d’Excel ou Xcas pour résoudre le système donnant I (voir dans la
suite)
Pour présenter la solution graphique on pourra procéder comme suit :
42
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
5. En déduire le calcul des coordonnés de l’optimum : intersection des 2 droites par où passe la
courbe de niveau
3. Résolution de PM nécessitant un traitement numérique ou informatique
4. Terminer par une conclusion
Activité 1
Soit le programme mathématique suivant :
Max
s.c.
43
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
A B C D E
1 Nom des variables
2
3 Fonction objectif
4 Nom de contraintes
5
6
7
8
9
10
11
12
Remarque
Affecter des valeurs initiales aux cellules situées juste en dessous de celles contenant les
noms des variables après les avoir définis
Les cellules contenant les noms de variables, de contraintes et ne sont jamais
sélectionnées. Elles figurent à titre indicatif
Ce sont les cellules situées en dessous ou en face des cellules mentionnées précédemment
qui sont sélectionnées lors des différentes opérations : les cellules variables ainsi que celle
devant contenir la valeur de la fonction objective. Elles sont définies par sélection après
lancement du Solver.
La fonction objectif et les contraintes sont définies dans les cellules situées en face de celles
indiquant leur nom. Elles sont définies à l’aide du symbole « = » des cellules situées en
dessous des noms de variables et des opérations (+,*, etc.)
Les contraintes de signe (>,<,>=,<=) dans les contraintes sont définies après lancement du
solveur au moment d’ajouter les contraintes.
Le solver s’installe dans l’onglet données.
Quelques outils informatiques (logiciels) pour la résolution de systèmes linéaires
Un gain de temps considérable, notamment grâce à des logiciels tels STAN, Lindo,
Mathematica, Excel
Exercice corrigé
Les temps d’usinage sont pour P1 de 3 heures dans l’atelier A1 et de 6 heures dans l’atelier A2 et
pour P2 de 4 heures dans l’atelier A1 et de 3 heures dans l’atelier A2.
La marge bénéficiaire est de 1'200.- pour une pièce de P1 et de 1'000.- pour une pièce P2.
44
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Travail demander : Quelle production de chaque type doit-on fabriquer pour maximiser la marge
hebdomadaire.
Solution
45
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Application
46
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Troisième atelier respectivement. Les marges unitaires sont 2400 FCFA, 4200 FCFA, 1200 FCFA et
600 FCFA.
Exercice
Règle à suivre
47
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
4. En premier lieu, nommer les cellules contenant les variables. La solution la plus simple consiste à
écrire sur la première ligne les variables et à attribuer à la deuxième ligne des valeurs arbitraires.
Pour ce faire, il faut sélectionner les cellules à nommer puis choisir Nom, Créer dans le menu
Insertion. Avant de sélectionner la ligne du haut et de cliquer sur OK
5. Il faut ensuite saisir les trois équations du système dans la feuille de calcul. A noter que les
équations n’apparaissent pas à l’écran. En revanche, les résultats des calculs sont affichés avec
les valeurs actuelles (dans notre exemple x1=x2=x3=1) des variables.
6. Lancer le Solveur en cliquant sur Solveur du menu Outil.
1. En supposant que la première équation est la fonction objectif d’un problème d’optimisation
(ici on a : z= constante) et les autres équations des contraintes éditer la feuille de calcul qui
permet de résoudre ce problème à l’aide du solver.
Exercice 1
Trouver l’extremum de : , sous la contrainte :
Trouver le nombre de machines de chaque type que l’entreprise doit fabriquer pour minimiser son
coût.
A l’aide des conditions du second ordre, montrer qu’il s’agit bien d’un minimum.
Remarque
Quand le programme mathématique est non linéaire (fonction objectif ou une des contraintes est
non linéaire) il faut penser à une résolution numérique.
48
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Principe de la méthode
On démarre avec une valeur donnée d’un paramètre , appelée valeur initiale et on génère une
séquence de valeurs dont on souhaite qu’elle va converger vers la valeur pour
laquelle est un optimum.
Le calcul de constitue la itération du calcul. De coutume, on termine la séquence après un
nombre fini N d’itérations et on admet que est une approximation de . le vecteur
est appelé ième pas. Chaque itération doit nos rapprocher de l’optimum, c'est-à-dire
dans le cas d’un minimum Dans ce cas le pas est dit acceptable.
II. Définition
Une fonction unimodale est une fonction qui ne présente qu’un seul optimum. Pour un minimum,
noté la fonction est croissante sur et décroissante sur (voir figure suivante)
III. Applications
Dans l’intervalle de recherche , deux mesures sont effectuées aux points d’abscisses
proches du milieu de l’intervalle et suffisamment éloignés l’un de l’autre pour que les réponses en
ces points soient significativement différentes.
49
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Soit le pas à la itération. Puisqu’à chaque itération on réduit au moins de moitié l’intervalle
d’étude, on a : . Le pas forme une progression géométrique. A la itération on a :
On construit une suite décroissante d’intervalle qui contiennent tous le minimum . Pour
passer de à , on procède de la manière suivante. On introduit deux nombres a’ et
b’ de l’intervalle et tel que a’<b’. Puis on calcule les valeurs z(a’) et z(b’). Trois possibilités se
présentent alors à nous :
50
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
- Sinon si , alors le minimum se situe cette fois à droite de a’. on pose alors
et
- Enfin, si , Alors le minimum se trouve dans l’intervalle . On se restreint
donc à et
Le principe est identique à la méthode précédente : la zone optimale est cernée de plus en plus
précisément par élimination successive d’une partie de l’intervalle. Ici on ne s’impose à priori le
nombre d’essais à effectuer.
A la première itération deux essais sont réalisés et ensuite à chaque itération un seul essai est
effectué et est comparé au point conservé de l’itération précédente.
Cela est possible dans la mesure où partage l’intervalle de la même façon que partage
l’intervalle (voir figure ci-dessous)
Cette valeur est le nombre d’or. Ainsi, à chaque itération, un des essais de l’itération précédente
pourra être utilisé :
51
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
C’est l’efficacité de la méthode. Ainsi, pour obtenir une précision de il faut 16 expériences. La
méthode du nombre d’or est très efficace lorsqu’il est possible de faire évoluer la variable de
manière continue. Par contre, lorsque la variable ne peut prendre des valeurs discrètes, la méthode
de Fibonnaci est mieux adaptée.
La méthode de la section dorée peut être résumée dans l’algorithme suivant :
Exercice de recherche
Etudier et présenter la méthode de Fibonnaci pour la recherche de l’optimum d’une fonction
numérique
52
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
A partir de la fin de la seconde guerre mondiale, de nouvelles méthodes permirent de résoudre des
problèmes, de nouvelles méthodes permirent de résoudre des problèmes complexes là ou les
méthodes classiques échouaient. Ces méthodes furent connues sous le nom de programmation
linéaire, développées principalement par George B. Dantzig (né le 8 novembre 1914), mathématicien
américain et créateur de la méthode du simplexe, et L. Kantorovich (1912-1986). L’impact de son
œuvre fut considérable en gestion et en économie et ses méthodes restent totalement d’actualité.
Exemple
………………………………
Activité 1
53
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Solution
Comme indiqué sur la figure ci-dessus, la région réalisable est ici un triangle rectangle dont les
sommets sont les points . La fonction objectif est parallèle à l’hypothénuse et la
droite qui permet d’aattribuer la plus grande valeur à z est le segment de droite reliant les sommets
. Par conséquent, tous les points de ce segment représentent une solution optimale
au problème. Il existe donc une infinité de solutions qui donnent la même valeur de z, à savoir 4.
Comme les solutions optimales à ce problème correspondent au segment de droite d’extrémités
, elle peuvent être décrite par l’ensemble :
Activité 2
et
1. Représenter graphiquement ce problème (contraintes et fonction objectif)
2. Les contraintes formes-t-elles un domaine convexe ? bornée ? Justifier votre réponse
3. Qu’elle remarque faites-vous en faisant croitre la valeur des courbes de niveaux ( .
Quelle(s) est (sont) la (les) solution (s) de ce problème. Ecrire la (les) solution(s) sous forme
d’ensemble.
Solution
Dans cette activité, il suffit d’attribuer à x et y des valeurs suffisamment grandes pour que les
contraintes soient satisfaites. La valeur de la fonction objectif peut être augmentée indéfiniment.
Sur la figure, nous constatons que la région réalisable n’est pas bornée et que la fonction objectif
54
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
peut être déplacée à l’infini en conservant toujours une intersection non vide avec la région
réalisable. Dans ce cas on dit que le programme linéaire possède une solution optimale infinie.
Activité 3
Maximiser z =
sous contraintes
et
1. Représenter graphiquement ce problème (contraintes et fonction objectif)
2. Les contraintes formes-t-elles un domaine convexe ? bornée ? Justifier votre réponse
3. Qu’elle remarque faites-vous en faisant croitre la valeur des courbes de niveaux ( .
Quelle(s) est (sont) la (les) solution (s) de ce problème. Ecrire la (les) solution(s) sous forme
d’ensemble.
Solution
La figure ne présente pas de région réalisable. En effet, il n’existe aucun point qui satisfait
simultanément les deux contraintes ainsi que les contraintes de non négativité. Le programme
linéaire ne possède aucune solution.
55
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
La méthode énumérative
Activité
Soit le PL suivant :
Maximiser z =
sous contrainte
et
1. Représenter graphiquement l’ensemble des solutions réalisables (on mettra en exergue le
polygone des contraintes)
2. Déterminer les sommets du domaine polygonal formé par l’ensemble des solutions
réalisables. On numérotera des sommets en commençant par 0 (la solution réalisable qui
annule la fonction objectif)
3. Compléter le tableau suivant
56
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Solution
Maximiser
sous contrainte
Conclusion partielle
57
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
58
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
I. Formulation du problème
1. Formulation générale
59
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
2. Forme matricielle
La forme matricielle permet de représenter un problème de programmation linéaire sous forme plus
concise.
Posons :
et
Alors, le modèle mathématique précédent s’écrit sous forme matricielle comme suit :
et
Application
60
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Solution
Posons :
Maximiser
sous contraintes
et
3. Forme canonique
a. Définition
61
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Application
62
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
4. Forme standard
a. Transformation minimisation-maximisation
63
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
b. Variables d’écart
64
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Exemple
65
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Une variable sans restriction de signe est une variable pouvant prendre des valeurs positive ou
négative. Elle peut être décomposée en deux variables non-négatives en posant :
Exercice
Exercice corrigé
Conclusion partielle
En résumé, nous avons vu que la fonction objectif d’un programme linéaire peut être présentée sous
forme de maximisation, que les contraintes peuvent toujours s’écrire sous forme d’égalité (avec des
bi positifs) et que les variables sans restriction de signe peuvent être décomposées en variables non-
négatives. En d’autres termes un programme linéaire peut toujours être présenté sous sa forme
standard (5.4).
66
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Maximiser
Sous contraintes
et
67
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Application
68
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Solution
a) Ce problème peut se mettre sous la forme standard en introduisant les variables d’écarts
69
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
e) Dans cet exemple, il est très facile de trouver une base qui fournisse une solution réalisable
de base. En effet les colonnes a4 et a5 forment une base qui est l’identité :
70
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Maximiser
Sous contraintes
et
5. On cherche jusqu’à quel niveau il est possible de porter de façon compatible avec les
contraintes. Déterminer la (les) valeur(s) de pour que les contraintes de signe (contraintes
de non-négativité) sur les variables hors-base soit satisfaites.
Rép.
71
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
La valeur maximale de compatible avec les contraintes, rtant restant nul est donc :
(on dit qu’on bute sur la contrainte 1)
6. Quelle est la valeur de correspondant à la valeur de déterminée précédemment ?
Interpréter le résultat.
Rép. : devient variable hors-base donc sortante dans la nouvelle solution
extrême ou encore que la solution (1) sature la première contrainte.
Equation d’échange
72
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Poursuivre les itérations jusqu’à ce que relativement à la solution extrême, les coefficients de la
fonction économique exprimée exclusivement en fonction des variables hors-base, sont négatifs ou
nuls. Cette solution est optimale dans le cas de la maximisation de la fonction économique.
Exemple
Sous contraintes
C’est un système de trois équations à cinq inconnues. Les trois équations de ce système sont
indépendantes car le rang du système est égal à 3. Exprimons les variables d’écart en fonction des
autres variables. Le système précédent devient :
Ainsi, si l’on impose la valeur de deux variables, les valeurs des trois autres peuvent être déduites.
73
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
L’objectif de la méthode du simplexe est de rechercher les solutions réalisable de base qui augment
la valeur de z. Pour augmenter z il va falloir augmenter .
La valeur maximale admissible pour est 30. On recalcule les autres variables pour
Pour la suite, il faut nous placer dans la même situation qu’au départ mais cette fois-ci avec les
nouvelles variables de base. On peut remarquer que la première fois, les variables de base
, variables d’écart) n’intervenait qu’une seule fois dans chaque équation
Pour se placer de nouveau dans cette situation avec les nouvelles variables de base , on
extrait de la troisième équation (équation qui contient les variables hors base :
) et on la substitue dans les deux autres.
74
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
On voit bien que dans la fonction objectif les coefficients des variables s’exprime hors base sont non
nuls.
La seule manière de modifier et consiste à les rendre positives ce qui a pour conséquence de
diminuer la valeur de . Il n’est plus possible d’améliorer la fonction objectif et la dernière solution
obtenue est la solution optimale. Et la valeur de la fonction objectif est ainsi égale à 2100 (on
pourrait le vérifier graphiquement).
2. Méthode générale
Propriété
Tout point extrême est une solution réalisable de base
75
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Activité 1
Sous contraintes :
et :
où
On sait qu’il existe une matrice B d’ordre m, égale à l’identité formée des vecteurs colonnes de la
matrice A associé aux m variable d’écart. En notant N la matrice formée des vecteurs colonnes de A
associé aux variables économiques ( ou matrice restante de A après suppression des colonnes de B )
1. Justifier pourquoi à cette étape du problème on appelle les variables d’écarts variables dans
la base et les variables économiques variables hors-base
2. Justifier clairement que le problème standard précédent peut se mettre sous la forme
suivante.
Sous contraintes :
et :
76
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
3. En déduire que toute solution de ( S) s’exprime en fonction des variables hors-base (Exprimer
les variables dans la base en fonction des variables hors-bases)
4. Déterminer la solution de base du problème standard
5. Quelle est la valeur de fonction économique en ce point ? Justifier votre réponse.
Activité 2
On considère le problème de programmation linéaire écrite sous forme standard matricielle suivant :
et :
3. On pose maintenant
4. Quelles seront les variables dont la variation d’une unité augmentera la fonction objectif.
Parmi ces dernières laquelle provoquera la plus grande variation de z ? formuler la réponse
sous forme de critère.
77
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
avec
78
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Activité 3
1. On a montré que
On suppose qu’on fait rentrer la variable dans la base. En déduire que la nouvelle solution
de base est
Où
En déduire un critère sur la variable pour que la solution de base soit réalisable (on se
placera dans le cas où
2. Soit
a. Justifier que :
79
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Il reste encore à déterminer quel vecteur de base doit quitter la base. Pour cela, reprenons la
solution de base (..) :
Toutes les variables hors base sont nulles sauf qui devient une variable de base. Comme est
une nouvelle variable de base, elle sera notée .
Pour que cette solution de base soit réalisable, il faut que les variables de base soient non-négatives,
c'est-à-dire :
Les contraintes de non négativité (…) sont évidemment satisfaites pour les variables qui ont
négatif ou nul. En revanche, en ce qui concerne les variables qui ont positif, il faut que :
Pour ne pas violer les contraintes de non-négativité. Cette dernière inégalité devant être valable pour
tout i tels , doit être égale au plus petit rapport . Supposons que ce plus petit rapport
Alors en posant :
toutes les contraintes de non négativité dans (….) sont satisfaites et par (…)
ce qui permet de sortir de la base. Nous avons obtenu le critère pour sortir une colonne de la
base.
80
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Voyons comment fonctionne les critères d’entrée et de sortie de la base en prenant un exemple.
c. Solution optimale
Propriété
La solution réalisable de base associée à la base B est optimale si :
Remarque
Il se peut que la solution optimale d’un, problème de programmation linéaire possédant une solution
réalisable de base soit infinie.
Nous sommes à présent en mesure de fournir un algorithme pour la méthode du simplexe lorsque
l’on connait une solution réalisable de base. Pour cela, on suppose que le problème initial a été
transformé sous forme standard avec tous les bi positifs. Les étapes sont les suivantes.
3. S’il existe un pour lequel il n’y’a pas d’éléments positifs dans , arrêter la
recherche puisque la solution optimale est infinie. Sinon, choisir le vecteur (et donc la
variable) associé à la valeur la plus négative des pour entrer dans la base :
avec
4. Déterminer le vecteur (et donc la variable) qui sort de la base à l’aide du critère
Etablir la nouvelle base, calculer la nouvelle solution réalisable de base et la nouvelle valeur
de la fonction objectif.
Retourner à l’étape 2
5. La solution réalisable de base courante est la solution optimale. La solution optimale n’est
pas unique s’il existe nul pour un vecteur qui ne se trouve pas dans la base.
81
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
82
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
83
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Nous allons résoudre le problème de maximisation à l’aide de tableau. Cette résolution à partir du
tableau est basée sur les trois critères suivants.
a. Activités introductives
Activité 1 : mise en place du tableau de départ
Soit le problème de programmation linéaire suivant écrit sous sa forme canonique
Maximiser
Sous contraintes
et
1. En
introduisant les variables d’écart mettre le problème précédent sous sa forme
standard, puis sous sa forme matricielle où et sont à préciser.
2. Mettre
le problème standard sous forme d’un système linéaire (S0) formée des contraintes
économiques et de la fonction économique. Cette dernière occupera la dernière ligne du
système (on considérera l’équation obtenue en retranchant à chaque membre de cette
équation).
3. Recopie
r le tableau suivant. Remplir sa partie centrale formée des cellules à la croisée des variables
(dans la base et autres) par les éléments de la matrice A.
occupera la cellule associée à la variable de base située à la position dans la matrice
de base et à la variable (position de la variable dans la matrice A).
Remplir la colonne b par les éléments de (la cellule de la colonne recevra )
Sachant que la dernière cellule de b doit contenir l’opposé de la valeur de la fonction
84
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Var
base
4. Soit les
nombres réels et définis respectivement comme suit :
a.
, représentant le taux marginal de substitution (variation unitaire), i étant l’indice
pour les variable de la base, pour la variable (dont on calcul le taux marginal).
b.
85
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Base
Var.
1. Recopie
r le. Déterminer la variable qui va entrer dans la base. On indiquera avec une flèche pointant
sur la colonne (c’est la colonne pivot).
2. Toujour
s sur votre tableau, déterminer la variable qui va sortir de la base. On indiquera par une
flèche pointant sur la ligne (c’est la ligne du pivot)
3. Entoure
r sur votre tableau le pivot, coefficient à l’intercession de la ligne pivot et de la colonne pivot
4. Quelles
sont les variables de la nouvelle base ?
Construire un cadre identique au tableau précédent (nouveau tableau). Remplir la colonne
« Base » avec la nouvelle base (
Remplir les lignes en tenant compte des transformations suivantes :
Ligne
où la ligne du tableau précédent et est la ligne pivot.
var
base
86
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Optimiser
Optimiser
Sous contraintes
et
Variables
Base
87
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Remarque : on notera que la valeur de la fonction économique inscrite dans la ligne en dessous de la
colonne B. cette valeur est négative d’où ‘’ ’’.
où
Indice pour la variable (dont on calcule le taux marginal)
Indice pour les variables de la base
: Coefficient de la variable dans la fonction économique
: Coefficient de la variable dans la fonction économique
: éléments de la colonne de la matrice A
Remarque
- La formule des taux marginaux peut s’écrire de façon plus concise sous la forme matricielle :
où est le vecteur colonne de et le vecteur ligne formé des co
-
88
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Variable
Base
Ainsi, le vecteur s’obtient « en divisant le vecteur par la colonne pivot» (en effet, on fait la
division des éléments de par ceux de la colonne pivot se trouvant sur la même ligne).
Remarque : En changeant de base de cette manière la variation de fonction économique est alors :
entre les deux sommets
89
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Une écriture (les coefficients) de correspond à un sommet donc à une base. En changeant de base
il faut donc réécrire la matrice dans la nouvelle base. Cela peut se faire en rendant unitaire la colonne
du vecteur qui entre dans la base et ce, généralement par la technique du pivot de GAUSS.
- Construire un nouveau tableau identique au précédent et remplir les désignations des
colonnes
- Remplir la colonne base avec les variables de la nouvelle base (une seule change)
- A partir de l’ancien tableau (on reporte les résultats dans le nouveau tableau : indice’
Diviser la ligne du pivot ( ) par le pivot :
Pour une ligne i (indice i : ) on calcul :
est le coefficient de la ligne i, colonne du pivot)
Remarque :
- La colonne des seconds membres B est concernée par ces calculs
- La ligne des peut être calculée de la même manière (ou avec la formule)
f. Test d’arrêt
Après la nouvelle écriture on sélectionnera une variable qui entrera dans la base. Si ce choix est
possible alors on reprend le choix de variable sortant de la base et l’écriture de la matrice.
Lorsqu’on ne pourra plus choisir de variable à faire entrer dans la base, l’optimum est atteint.
Test d’arrêt
- Pour une maximisation les itérations s’arrêtent si tous les sont négatifs ou nuls
- Pour une minimisation les itérations s’arrêtent si tous les sont positifs ou nuls
Il ne reste plus alors qu’à tirer les conclusions en fonctions des valeurs des variables principales et
d’écart ainsi que de la valeur de la fonction économique
g. Lecture du tableau
Il s’agit d’écrire les coordonnées du sommet correspondant au tableau , on lit dans
l’ordre des variables :
- Si la variable est dans la base, sa valeur est en face dans la colonne des seconds membres b.
- S’il n’est pas dans la base, sa valeur est nulle (0)
Maximiser
Sous contraintes
90
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
et
Remarque
Dans la résolution d’un problème de type 1, on peut se passer de la formule permettant de calculer
les deltaj. En effet, à la première itération on a : deltaj=t c. Les valeurs des detaj des autres itérations
sont obtenues par combinaison linéaire avec la ligne pivot.
En résumé, on a :
1. Sélection de la variable que l’on fait entrer dans la base (colonne pivot)
2. Sélection de la variable que l’on fait sortir de la base (plus petit ) (ligne pivot)
7. Répéter les étapes précédentes jusqu’à ce qu’on ne puisse plus sélectionner de variable qui
va entrer dans la base. Lire ensuite la solution
En résumé, pour résoudre un PL par la méthode du simplexe en utilisant des tableaux, on procédera
comme suit :
1. Etablir le premier tableau à partir des données du PL mis sous la forme standard
2. Choisir la variable entrante : pour un problème de maximisation c’est le coefficient positif le
plus élevé et pour une minimisation ce sera le coefficient négatif le plus élevé. On localise la
colonne pivot
3. Calculer les quantités de substitution en divisant b par la colonne pivot
( puis déterminer la ligne qui a le plus petit : c’est la ligne pivot
4. Déterminer le pivot (entourer) : élément du tableau à l’intersection de la ligne et de la
colonne pivot. Ensuite, on construire un nouveau tableau à partir du précédent en divisant la
ligne pivot par le pivot (normalisation) puis l’utiliser pour annuler tous les éléments de la
colonne pivot par la méthode du pivot de Gauss. Cette dernière opération agira sur tous les
éléments du tableau (b y compris) sauf la colonne des .
5. Après l’étape précédente, on se trouve dans la même situation qu’en 1. Reprendre les
mêmes opérations jusqu’à ce que tous les coefficients de la fonction objectif soient négatifs
ou nuls dans le cas d’une maximisation et positifs ou nul dans le cas d’une minimisation.
91
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
6. Déterminer l’optimum par lecture sur le tableau des valeurs des variables dans la base dans
la colonne de , les variables hors base étant nulles. On lit la valeur de l’optimum en
regardant dans le tableau à l’intersection de la ligne des (dernière ligne du tableau) et de
la colonne .
Exercice
Max
sous contraintes
et
Attention ! il y’a ici deux sélections possibles pour la variable entrante ( ). Dans ce cas il faut
calculer dans chaque cas les , en retenant les choix de variable à sortir. Enfin, on retiendra parmi
les sélectionnés, le plus grand (correspond à la plus grande variation de z)
92
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Minimiser
Pour la résolution on est ainsi sûr qu’il n’y aura pas de variable artificielle dans la solution
finale
Calcul du taux marginaux
Le taux marginal de substitution sera calculé avec la formule :
93
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Remarque
Dans le tableau de départ, pour une variable dans la base (variables artificielles). En
effet, si j est l’indice d’une variable dans la base dans le tableau de départ (variable
artificielle), on a :
Dans le tableau, dépend de pour les variables d’écart et les variables économiques.
Exercice
Exprimer en fonction de , et les taux marginaux de substitution dans les cas suivants :
i. Exemple d’application
En reprenant la forme canonique ci-dessus. On obtient la forme standard suivante :
Forme canonique Forme standard équivalente
Minimiser Minimiser
94
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Var.
Base
5 1 -1 0 1 0 50 10
1 2 0 -1 0 1 40 40
0 0
Pour grand, on a : est le plus petit négatif. Donc est la variable sortante.
Var.
Base
1 0 0 10 50
0 -1 1 30
Troisième tableau
Var.
Base
1 0 0
0 1
95
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Remarque
Lorsqu’une variable artificielle sort de la base, elle n’y retourne plus. On peut soit la maintenir dans le
tableau, soit la supprimée.
Exercice
Une chaîne de distribution disposant de deux magasins A et B, doit s’approvisionner auprès de deux
usines (U1) et (U2).
Ces usine peuvent livrer au maximum 400 cartons pour l’usine U1 et 600 cartons pour l’usine U2.
Les demandes prévisionnelles sont d’au moins 550 cartons pour le magasin A et 350 pour le magasin
B.
Les coûts de transport, en francs par carton, entre les usines et les magasins sont donnés dans le
tableau ci-après.
Magasin A B
Usine
U1 8 9
U2 10 7
Travail à faire : Déterminer les quantités à commander à chacune des usines en destination de
chaque magasin, visant à rendre minimal le coût du transport.
96
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Chapitre 8 Dualité
Nous allons introduire la notion du DUAL d’un programme linéaire, en montrant les liens qui existent
entre les deux programmes et comment solutionner l’un connaissant les solutions de l’autre. Dans un
second temps nous allons aborder l’interprétation économique du DUAL.
Notons que le dual d’un programme linéaire est également un programme linéaire et correspond à
une interprétation du premier programme dit PRIMAL
I. Notion de dual
Activité
Max
Quand
et
Min
Quand
et
a. Comparez les programmes PL1 et PL2. PL1 s’appelle primal et PL2 dual.
b. Résoudre le dual la méthode des tableaux.
Une variable duale est une variable que l’on associe à une contrainte. Pour m contraintes on aura
donc m variables duales à définir.
97
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
- Des contraintes associées aux variables du primal : dont les coefficients sont ceux du primal
pris en colonne, les seconds membres sont les coefficients de la fonction économique du
primal et dont les signes sont de sens opposés à ceux du primal : devient et vice-
versa.
Quand Quand
et et
Ecriture matricielle
Primal Dual
Application
Max (Min)
Quand
et
98
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Selon que le problème est résolu algébriquement ou graphiquement il y’a lieu d’interpréter les
résultats. Ainsi, si le primal a n variables principales et m contraintes donc m variables
d’écart alors le dual aura m variables principales et n contraintes donc n variables
d’écarts
Mais il faut savoir que le dual, ou la variable duale a une signification propre au sens économique : de
façon économique, on peut considérer que la variable dual associée à une contrainte, donc à un
facteur, représente le coût que l’on pourrait accepter de payer pour acquérir (céder) le dit facteur en
respectant le budget du primal.
Par exemple lorsqu’on établit un programme optimal de production (qui maximise par exemple le
chiffre d’affaire) ; on peut imaginer que l’on ne produit plus mais que l’on veut louer les machines ou
céder des matières premières.
Dans ce cas la variable dual est le prix auquel il faut céder le facteur pour avoir le même chiffre
d’affaires.
99
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
- Les problèmes de transport qui consiste à acheminer dans un réseau des quantités entre m
origine et n destination, compte tenu de capacités de transport.
I. Activités introductives
En considérant comme des nœuds les dépôts et les destinations, représentez à l’aide de nœuds et
d’arc orienté (lien entre deux nœuds ou segment reliant 2 nœuds) le problème ci-dessus. On
introduira un nœud source (appelé racine) et un nœud final (appelé anti-racine). Le nœud source
reliant les 3 dépôts par des arcs mentionnant leur capacité. Le nœud final sera aux destinations par
des arcs précisant leurs demandes. La figure obtenue est-un graphe conjonctif.
Solution
100
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Activité 2 (Ordonnancement)
Soit le planning (figure ci-dessous) dont la première ligne (abscisse) porte les unités de temps, et sa
première colonne (ordonnée) les différentes tâches. On matérialise la durée d’utilisation d’une tâche
par une barre horizontale. Remplir le planning en tenant compte des contraintes du projet (plage
d’occupation) :
Planning
T 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1
2
3
4
5
6
7
Réponse
101
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
1. Définitions
Un graphe est une relation liant les sommets (ou points) d’un ensemble X. Le couple (X, R) définit un
graphe.
Un graphe dont toutes les relations sont des arcs est un graphe orienté.
102
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
CHEMIN ET CIRCUIT
Définition
Une chaine est une suite d’arcs de G qui forme une chaine dans le graphe non orienté de G.
Dans l’exemple précédent : est une chaîne.
Un chemin est une chaine telle que l’extrémité finale de chacun de ses arcs (sauf le dernier)
coïncide avec l’extrémité de l’arc suivant.
Dans l’exemple précédent : est un chemin
Un circuit est un chemin dans lequel l’extrémité du premier arc coïncide avec l’extrémité
finale du dernier arc.
Dans l’exemple précédent .
i. Représentation sagittales
Soit
et
est une boucle
Entrée du graphe : sommet qui n’a pas de précédents, soit :
Sortie du graphe : sommet qui n’a pas de suivant, soit :
Représentation du graphe :
Les lignes représentent les extrémités initiales des arcs : (points de départ). Les colonnes
représentent les extrémités finales des arcs : (points d’arrivés).
Si
- , on met 1 dans la case
- , on met 0 dans la case
103
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Soit la matrice :
Remarque : l’entrée du graphe correspond à une colonne de zéros et la sortie à une ligne de zéros.
On peut établir sous forme de dictionnaire des précédents de chacun des sommets soit les
suivants de chacun des sommets .
Remarque :
Sommet sous précédents égal à l’entrée du graphe ;
Considérons un graphe G(X,E) sans circuit. A chaque sommet de X on associe un nombre entier
positif appelé le niveau du sommet.
Par exemple dans le dictionnaire des précédents du graphe G(X,E), on détermine le niveau des
sommets correspondant à chacun des sommets du graphe de la façon suivante :
104
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
- -
- -
0 1 2 3 4
Le niveau d’un sommet représente le nombre maximum d’arcs d’un chemin d’extrémité finale .
105
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Les sommets sont placés par ordre de niveaux croissants en plaçant les sommets de même niveau
sur une même verticale.
Exercice d’application
Exercice 2
La réalisation d’un projet nécessite la réalisation de 9 taches dont les conditions d’antériorité sont
précisées dans le dictionnaire des précédents suivants :
106
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
- D’indiquer les taches qui ne peuvent souffrir de retard sans remettre en cause la durée total
du projet.
Les méthodes d’ordonnancement sont fondées sur la théorie des graphes. Les principales sont :
i. Convention de représentation
Les sommets du graphe représentent les taches à réaliser et sont symbolisés par des carrés.
Les arcs représentent les contraintes de succession .Ils sont évalués et correspondent au délai à
partir duquel peut commencer la tache suivante.
Les sommets sont placés par niveau de façon à limiter les croissances entre les arcs, et la durée des
taches est reportée sur les arcs.
Application
107
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
E5 E6
E2
E7
E1
E3
FIN
E4
Chaque arc est ensuite évalué par la durée de la tâche qu’il représente. In convient de souligner
l’aspect artificiel de cette construction qui n’est pas toujours évidente à réaliser et qui surtout
supporte mal les modifications ultérieures du projet. On ne peut traduire avec ce type de
représentation que les contraintes de ty
108
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
109
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Problème
Première 1
La société exploite deux carrières P1 et P2 louées à une société civile qui perçoit une redevance par
tonne de pierre extraite. Celle-ci est la suivante :
Après extraction, la pierre est concassée. Les graviers ainsi obtenus sont triés selon leur calibre.
Chaque tonne de pierre fournit les quantités suivantes de graviers (exprimées en tonnes) :
Pierre de P1
Pierre de P2
Travail à faire
110
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Partie 2
Les CARRIERES de VALAY, pour des raisons de complémentarité d’activité souhaiteraient assurer la
commercialisation du sable lavé, obtenue actuellement en produit secondaire, et de sable de rivière
acheté à des sablières. La marge sur coût variable est évaluées à 12.00 F par m3 de sable de rivière
vendu 25.00 F. On peut admettre que les ventes de sable de carrière lavé sont réparties suivant une
loi normale d’espérance mathématique 12000 t et d’écart-type 1 000. De même, les ventes de sable
de rivière sont réparties suivant une loi normale d’espérance mathématique 3 000 t et d’écart-type
200.
Le sable de carrières lavées et le sable de rivière sont des matériaux utilisés pour des travaux
différents ; leurs ventes sont donc indépendantes. On rappelle que la variance de la somme de deux
variables aléatoires est égale à la somme de ces mêmes variables
Travail à faire
1. Définir
2. Définir parallèlement :
3. Le projet initial pour la commercialisation des sables fixe les coûts de structures à 170 000F
trouver quelle est la probabilité de rentabiliser cette nouvelle activité
111
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Sujet de recherche
1. Ecrivez un programme Scilab qui prend en entrée les matrices A, b et c d’un PL de type I et
renvoie à la sortie l’optimum et la valeur de la fonction objectif en ce point
2. Ecrivez un programme Scilab qui résout un PL de type I par la méthode des tableaux en
affichant les tableaux de chaque itération jusqu’au dernier
3. Ecrivez un programme Scilab qui prend en entrée les matrices A, b et c d’un PL de type II et
renvoie à la sortie l’optimum et la valeur de la fonction objectif en ce point
4. Ecrivez un programme Scilab qui résout un PL de type II par la méthode des tableaux en
affichant les tableaux de chaque itération jusqu’au dernier
5. Application de la théorie des graphes à la résolution de problèmes d’ordonnancement
6. Application de la théorie des graphes à la résolution de problèmes de transport
7. Les méthodes directes en optimisation : cas des fonctions d’une variable
8. Les méthodes de dichotomie séquentielle et du nombre d’or en optimisation
9. Application de la théorie des graphes en recherche opérationnelle
10. Les méthodes d’ordonnancements : PMP et PERT
112
Support de cours provisoire de
Recherche Opérationnelle
Classe : STIC 1
Auteur : Dr KIMOU Prosper
Vocabulaire
1. Soit F le domaine polyédrique1 représentant les contraintes (y compris celles de signe).(F) est
l’intersection des demi-espaces fermés. (F) est l’image de l’ensemble des solutions
admissibles, c'est-à-dire de l’ensemble des couples (x1, x2, …, xn) vérifiant l’ensemble des
contraintes.
2. On appelle solution extrême toute solution admissible (optimale ou non) correspondant à un
sommet de (F)
3. On appelle solution d’un problème de programmation linéaire tout vecteur x qui satisfait les
contraintes économiques (et pas obligatoirement les contraintes de non négativité)
4. Une solution est appelé solution réalisable (ou aussi solution admissibles) si elle vérifie les
contraintes de non négativité.
BIBLIOGRAPHIE
1
Sous forme de solide délimité par des polygones plans
113