Vous êtes sur la page 1sur 40

Recherche oprationnelle

Mthodes doptimisation en gestion


Michel Nakhla, Jean-Claude Moisdon

Collection Les cours


Dans la mme collection
Systmes nergtiques vol 1, vol 2, vol 3
Renaud Gicquel

Abrg de thermodynamique,
Daniel Fargue

Stratgie dentreprise
Thierry Weil

Introduction au traitement de lnergie


lectrique
Georges Pierron

Mcanique des fluides


Franois Cauneau
Aide-mmoire de gostatistique linaire
Pierre Chauvet
Introduction aux transferts thermiques
Dominique Marchio, Paul Reboux
Introduction au gnie atomique,
Jacques Bouchard, Jean-Paul Deffain, Alain
Gouchet
Matriaux pour lingnieur
Anne-Franoise Gourgues-Lorenzon, JeanMarc Haudin,
Jacques Besson, Nolle Billon, Sabine
Cantournet, Yvan Chastel,
Bernard Monasse, Loeiz Naz

Introduction la physique quantique


Bernard Degrange
Cours dautomatique
Brigitte dAndra-Novel, Michel Cohen de
Lara
Les imperfections des marchs
Daniel Fixari
Introduction la mtallurgie gnrale
Jacques Lvy
Comment matriser sa productivit
industrielle,
Hugues Molet
Gostatistique linaire applications,
Margaret Armstrong, Jacques Carignan

Recherche oprationnelle
Mthodes doptimisation en gestion
Michel Nakhla, Jean-Claude Moisdon

Transvalor Presses des Mines, 2010


60 boulevard Saint-Michel, 75272 Paris cedex 06, France

e-mail : presses@mines-paristech.fr
http://www.mines-paristech.fr/Presses

ISBN : 978-2-911256-15-8
Dpt lgal : 2010

Crdit photos : M. Nakhla


Tous droits de reproduction, de traduction, dadaptation et dexcution rservs pour tous les pays

INTRODUCTION
La Recherche Oprationnelle constitue selon les cas, une simple branche des
mathmatiques ; l'autre bout du spectre, elle consiste en l'application des mthodes
scientifiques au contrle et au pilotage de l'action organise. Dans le cadre de cet
ouvrage, nous nous limiterons volontairement la dfinition suivante :
La Recherche Oprationnelle est une collection de techniques, issues du
champ des mathmatiques appliques, destines reprsenter des
situations o un ou plusieurs acteurs ont un certain nombre de choix
effectuer, et guider ces acteurs dans leur dcision de faon ce qu'ils
satisfassent au mieux un ou plusieurs critres tout en respectant un
ensemble de contraintes prdfinies .
En quelque sorte, on s'intresse bien un secteur particulier des mathmatiques, celui de
l'optimisation sous contraintes, mais en en restreignant le champ : en effet la dfinition
propose suggre que l'on ne traitera que de problmes de dcision conomique, ou en
tout cas qui y ressemblent : l'ensemble des variables de dcision, des critres, des
contraintes auront une signification conomique et gestionnaire. Il s'agira donc de
formaliser des problmes d'allocation de ressources, d'organisation de la logistique,
d'ordonnancement de production, de planification de production
Cette dfinition explique tout d'abord la nature des problmes abords par la R.O
(Recherche Oprationnelle) : ils ne sont pas guids par le dveloppement autonome
d'une branche des mathmatiques, mais par l'ensemble des problmes de dcision
conomique que peuvent se poser les collectivits organises, pour l'essentiel les
entreprises ou les administrations. Ces problmes sont ordonns dans des classes larges
(problmes d'ordonnancement d'atelier par exemple) o non seulement les questions
poses sont communes tous les problmes de la classe, mais galement un certain
nombre de variables et de relations entre ces dernires, si bien que l'on peut laborer des
modles de base, quitte ensuite, au cas par cas, examiner comment on peut les adapter
aux situations concrtes envisages.
Il va de soi que le prsent ouvrage, compte tenu de son volume, n'a pour ambition que de
prsenter les principaux modles de rfrence.
Une autre consquence de cette dfinition est que, comme le lecteur s'en apercevra
facilement, une htrognit certaine caractrise fatalement un expos des principales
techniques de la R.O : cela provient de la grande varit des problmes dcisionnels que
l'on peut rencontrer dans les entreprises, problmes qui n'ont aucune raison de relever
d'un formalisme voisin. Il y a en effet peu de rapport entre l'optimisation dun plan de
transport de marchandises et la fixation d'un nombre de guichets dans un phnomne
d'attente : en effet les modlisations s'attaquant l'un et l'autre de ces deux problmes
n'ont clairement pas grand chose de commun.
La R.O s'attaque des problmes de gestion et de dcision des organisations
conomiques et la prise en compte du combinatoire et de l'incertitude.

Recherche oprationnelle

Prenons deux exemples pour illustrer ce propos.


Dans le problme du voyageur de commerce, ce dernier doit passer dans n villes, sachant
qu'il souhaite visiter chacune d'entre elles une fois et une seule. Il connat les temps de
transport entre chaque ville et les autres, temps que l'on suppose fixes. Dans quel ordre
doit-il effectuer ses visites de faon ce que son temps de transport total soit minimal ?
La rponse est a priori facile. La ville de dpart importe peu, on s'en rend compte
rapidement. Il se peut de toute faon qu'elle soit fixe. A partir de ce point de dpart,
notre voyageur de commerce a n-1 possibilits pour la ville suivante, puis
pour la
deuxime, puis
pour troisime etc. Au total, il y a
solutions ce problme, soit
On peut alors avoir comme ide d'explorer
systmatiquement ces solutions, en calculant chaque fois la somme des temps de
parcours, donc le temps de parcours total, et retenir, parmi ces
temps totaux le
plus petit. Or le nombre
devient trs vite important lorsque n augmente. Pour
six villes, le calcul reste possible, puisque l'on a 120 permutations explorer et
chiffrer. Pour
, ce nombre est peu prs gal 1,216410 17. Si par exemple on
crit un programme informatique permettant d'valuer toutes les solutions (et un
programme est facile crire) et si l'ordinateur dont on dispose ncessite un
nanoseconde pour chaque solution on explorera l'ensemble des possibilits en 3,8 ans
environ ! C'est dire que les performances des ordinateurs actuels ne librent pas de la
ncessit de trouver des mthodes permettant de nous orienter dans la prolifration des
solutions possibles lies la prsence de nombreux problmes de gestion combinatoire.
Cet exemple est intressant car le problme pos est tout fait raliste (dans les cas
concrets il se complique souvent considrablement ce qui ajoute encore la complexit
de sa rsolution) et renvoie des questions que se posent de nombreuses entreprises
(tournes de postiers, de camions de coopratives laitires etc.). Des mthodes existent
en effet pour traiter ce problme de faon efficace (mme si elles ne sont pas entirement
satisfaisantes comme on le verra dans cet ouvrage propos de l'expos de l'une d'entre
elles).
Le deuxime exemple est issu lui aussi d'un problme tout fait pratique : un marchand
de journaux se pose la question de la quantit optimale d'exemplaires d'un quotidien qu'il
doit acheter un distributeur. La demande est variable ; il ne sait pas l'avance combien
de clients lui achteront le journal chaque jour ; il connat videmment le prix d'achat au
distributeur et le prix de vente, si bien que pour un niveau de vente donn il peut calculer
sans difficults le bnfice (ou la perte s'il achte trop de journaux) obtenu. Le problme
est qu'il ne sait pas intgrer dans un calcul unique les diffrents bnfices correspondant
aux vnements non prvisibles constitus par les niveaux de vente. Le calcul vient alors
son secours par deux modalits conscutives : il est tout d'abord invit analyser sur
un certain nombre de jours la chronique des ventes ; si cette analyse est suffisamment
pousse, il peut ventuellement raccorder par un test statistique cette chronique de
ventes une distribution de probabilits. Ce faisant il a dj domestiqu
considrablement l'incertitude : certes il ne sait pas l'avance quelle quantit de
journaux il vendra tel ou tel jour, mais il a une information prcieuse, savoir la
probabilit de vendre une quantit donne (et toutes les probabilits associes aux
diverses quantits possibles). La deuxime tape est alors constitue par une
dmonstration, qui aboutit un rsultat qui est loin d'tre intuitif : si le phnomne est

Introduction

rptitif (prix fixes et demande constante en probabilits), il peut alors agrger les
bnfices correspondant aux diffrentes ventes grce un oprateur simple que
connaissent bien les spcialistes des probabilits, savoir l'esprance mathmatique
(moyenne des bnfices pondrs par leurs probabilits). Un thorme clbre, le
Thorme Central Limite, justifie en effet que l'on prenne ce critre comme critre de
choix, dans un contexte de rptition (stabilit des donnes et dcision rpte un grand
nombre de fois). Il ne reste plus alors notre marchand de journaux, convaincu par cet
difice thorique, qu' calculer les esprances mathmatiques de bnfice, pour chaque
niveau d'achats du quotidien, et choisir le niveau qui maximise cette esprance. Il est
intressant de noter d'ailleurs qu' ce stade le problme reste assez compliqu : en effet,
il est facile de s'apercevoir que cette modlisation aboutit une formule relativement
complexe liant l'esprance du bnfice au niveau d'achat, pour laquelle les techniques
d'optimisation fonctionnelle classiques (drivation par exemple) sont inoprantes ; le
marchand de journaux sera donc oblig de procder pas pas, en ttonnant sur le niveau
d'achat, et en calculant chaque fois la formule, pour trouver le niveau optimal. Et
pourtant, les hypothses sont frustes ! On sent bien qu'un problme rel ressemblant ce
problme pur va supposer des hypothses plus fines (variation de la loi de
probabilits de la demande, possibilits de ventes le lendemain de la parution etc.)
risquant de compliquer quelque peu le modle.
Quoiqu'il en soit, on voit bien quel est l'apport de la R.O dans ce cadre : elle permet ce
que l'esprit ordinaire ne peut pas faire, c'est--dire l'intgration dans un calcul des
consquences des multiples vnements qui peuvent peser sur une dcision conomique.
Quelques lments historiques
On a l'habitude de situer la naissance de la R.O lors de la seconde guerre mondiale, au
sein de l'arme britannique, qui a commenc formaliser un certain nombre de
problmes stratgiques, tel l'optimisation du parcours ou de la composition des convois
maritimes ou encore celle du positionnement des radars etc.
Certains auteurs, cela dit, ne sont pas sans souligner que les perspectives d'application
des modles l'action organise se sont manifestes bien avant, qu'il s'agisse de la
construction des pyramides, de la mise en place du sige de Syracuse, ou encore des
problmes de dblai et de remblai formaliss par Monge.
Pour ce qui nous intresse, c'est dire la diffusion de la discipline dans les entreprises,
on peut nanmoins considrer que cette diffusion s'est opre, et un rythme acclr,
dans les annes cinquante.
On ne peut s'empcher de relier ce dveloppement celui de l'informatique. La plupart
des outils de la R.O ncessitent en effet un support informatique pour rsoudre les
problmes auxquels ils s'attaquent.
Mais, bien qu'il existe peu d'tudes sur ce type de sujet, on peut aussi penser que la R.O
est fonde sur une reprsentation implicite de l'entreprise et de son fonctionnement qui
s'est constitue rcemment, en tout cas au vingtime sicle. Faire de l'organisation une
combinatoire d'activits plus ou moins incertaines signifie en effet un pralable qui est la
codification de ces activits, une explicitation de ce qui les relie, une quantification des

Recherche oprationnelle

consommations de ressources qu'elles impliquent. C'est dire que la R.O est insparable
de l'approche scientifique du travail de Taylor.
Au cours des annes cinquante le dveloppement de la R.O dans les organisations s'est
transform en vritable engouement; une sorte de rve semble avoir t partag par
nombre de cadres de l'industrie, savoir la possibilit de traiter tous les problmes de
gestion, d'organisation et de dcision conomique par des modles et de conduire la
destine des entreprises grce aux mathmatiques.
La R.O s'est constitue en discipline part entire, au dbut des annes soixante, avec la
mise sur pied des principaux attributs d'une profession : experts spcialiss, cration de
revues, d'associations savantes, de chaires dans les universits, de congrs etc. Du ct
des entreprises on note le dveloppement de bureaux d'tudes, de services spcialiss
dans les grandes entreprises, souvent rattachs directement la direction gnrale. Le
secteur public est touch un peu plus tard, au milieu des annes soixante. Les progrs
au niveau des mthodes, de leur rapidit de calcul, sont spectaculaires. Les spcialistes
s'attaquent des problmes de plus en plus difficiles. Le ton est l'enthousiasme;
beaucoup pensent que l'on dispose l d'un dispositif essentiel de rationalisation de
l'action humaine dans les systmes organiss.
partir des annes soixante-dix, on s'interroge sur la modestie des applications
concrtes dans les entreprises, ou encore du sort rserv aux modles, parfois
compltement contradictoire avec les attendus des promoteurs. Bon nombre des services
de R.O des grandes entreprises sont fusionns avec les services d'tudes
conomiques ou de stratgie , comme si un discrdit pesait sur la dnomination de
la discipline elle-mme. Dans la foule, le sigle des enseignements se transforme lui
aussi : on trouve les modles de R.O dans les cours dits d aide la dcision , ou de
mthodes scientifique de gestion , ou encore de modlisation des faits
conomiques . En 1978 parat dans la prestigieuse revue amricaine The journal of
the O.R Society une pitaphe joliment intitule The future of operational research is
past , d'autant plus perturbante qu'elle est l'uvre d'un des pionniers de la discipline,
Russel L. Ackoff. Cette contribution en entrane beaucoup d'autres et ouvre un dbat
parfois passionn autour de ce que l'on a pu appeler ``la crise'' de la Recherche
Oprationnelle.
Un point de vue raisonn
Il convient tout d'abord de souligner que les applications de la R.O. existent bel et bien :
c'est ainsi que la programmation linaire est devenue une sorte de routine pour des
industries du continu, notamment le raffinage ptrolier (Partie 1 de cet ouvrage), qu'il
n'est gure envisageable de dmarrer un projet de quelque envergure sans avoir recours
une mthode d'ordonnancement des tches, PERT ou Potentiel (Partie 2), que les
analyses du risque se sont multiplies dans de multiples secteurs (Partie 3). On peut
mme parfois s'inquiter lorsque l'on constate que certains logiciels de gestion, livrs
clef en main et tendant automatiser la conduite des entreprises, appartenant par
exemple la catgorie des GPAO (Gestion de Production Assiste par Ordinateur),
intgrent parfois, sans que l'utilisateur en ait conscience, des modles (gestion de stocks
par exemple) sur la gnralit desquels il est lgitime d'avoir quelques doutes.

Introduction

Objectifs et organisation gnrale de l'ouvrage


Les dveloppements qui suivent couvrent un enseignement que les auteurs donnent
l'Ecole des Mines de Paris. Il s'agit essentiellement d'une initiation et que nous ne
prtendons nullement tre exhaustifs sur les modles conus dans le cadre de la R.O.
Dans ce cadre, nous n'voquerons pas les extensions de la programmation linaire vers
les programmes en nombres entiers ( c'est dire o l'on contraint les solutions du
problme prendre des valeurs entires, ce qui correspond des exigences frquentes
dans la ralit - productions non divisibles par exemple) ; de mme, nous serons rapide
sur les diffrents types d'heuristiques qui sont actuellement perfectionnes et qui sont
destines s'attaquer des problmes hautement combinatoires (algorithmes gntiques,
mthode Tabou, recuit simul etc.).
Au niveau de l'alatoire, nous ne dirons rien de deux chapitres aujourd'hui trs
vivants , qui tendent les calculs probabilistes deux situations d'incertitude qui
priori ne relvent pas de l'alatoire (au sens de la prise en compte de donnes non
connues l'avance mais domestiques parce que probabilisables, cf. l'exemple cidessus du marchand de journaux) : il s'agit en premier lieu des situations concurrentielles
(le dcideur ne sait pas ce qui va arriver dans la mesure o cela dpend du comportement
d'autres, les autres en question tant dans la mme expectative vis vis du dcideur) ;
ces situations relvent de la thorie des jeux, discipline d'ailleurs part entire qui a vcu
ces dernires annes un renouveau considrable, notamment dans le cadre des travaux
des conomistes, s'intressant aux dsquilibres de march, aux asymtries d'information
entre acteurs et aux externalits. En second lieu nous pensons aux situations
proprement parler incertaines, o aucune rgle ni aucune exprience ne permet d'affecter
des distributions de probabilit aux donnes. On a affaire alors l'difice considrable
qui porte le nom de Thorie de la dcision, que l'on peut considrer comme
l'aboutissement de la rationalisation des choix individuels. On pourrait penser en effet
que la modlisation est impuissante dans ce cas aider le dcideur ; il n'en est rien et il
est tout fait stimulant d'examiner comment l'ingniosit des mathmaticiens appliqus
les a amens proposer malgr tout des formalisations dans ce contexte difficile.
En dehors du fait que dans une perspective gestionnaire ces deux types de modlisation
constituent davantage des rfrences de raisonnement que des outils oprationnels, ils
ncessitent un ouvrage eux seuls, et nous avons prfr les laisser de ct ici (bien que
nous les enseignions).
Si la liste des outils que ce livre dcrit est donc volontairement limite, nous avons en
revanche mis un certain soin justifier chacun d'entre eux, et dmontrer par exemple la
convergence des algorithmes ou la validit des formules. Une autre optique, en effet,
choisie parfois par les ouvrages de R.O., consiste parcourir une liste tendue de
modles, sans fournir de dmonstration. Ce choix n'est pas sans entraner une certaine
frustration chez les lecteurs rigoureux ; il ne fournit pas non plus de vue sur la frquente
originalit du raisonnement des chercheurs oprationnels (qui, comme on l'a dit, ont
rsolu leur faon un certain nombre de problmes sur lesquels avaient chou de
grands mathmaticiens). Enfin, aucun modle existant dans la littrature ne s'applique tel
quel des situations dcisionnelles concrtes ; ils doivent tre adapts. Mais pour savoir
comment les modifier, il faut savoir comment et pourquoi ils marchent .

10

Recherche oprationnelle

Une premire partie sera consacre la programmation linaire. Dun point de vue
pdagogique, ce choix nest pas optimal ; en effet les programmes linaires, parmi les
outils que nous exposons ici, sont ceux qui font le plus appel aux mathmatiques, alors
que les graphes, par exemple, sont trs conomes en concepts et connaissances
mathmatiques, et sont donc plus mme de sduire des lecteurs intresss par la
discipline mais moins par les quations. D'un autre ct, beaucoup de problmes,
notamment rsolus par des mthodes appuyes sur les graphes, pourraient l'tre aussi par
un programme linaire, l'inverse n'tant pas vrai. Cest cet aspect fdrateur qui jusitifie
que lon dbute ainsi l'expos.
Aprs avoir reli la programmation linaire une problmatique gnrale de
planification de production industrielle, on dveloppera de faon complte la mthode de
rsolution phare , savoir l'algorithme du simplexe. On soulignera qu'il ne s'agit pas
de la mthode de rsolution a priori la plus rapide et on donnera quelques indications sur
d'autres mthodes logiquement plus performantes (sans que cela se vrifie
empiriquement).
On introduira dans cette partie la notion de dualit dans les programmes linaires, notion
fondamentale d'abord d'un point de vue conomique (fixation des prix d'acquisition de
ressources supplmentaires), ensuite d'un point de vue pratique (analyse de sensibilit).
Dans une seconde partie, nous passerons la thorie des graphes, et nous montrerons
que cet objet, trs simple dans son principe (des points et des flches) permet de
rsoudre un grand nombre de problmes combinatoires concrets et ayant des
implications videntes au niveau de l'organisation de la production et de la logistique.
C'est ainsi que l'on traitera de quelques algorithmes destins rsoudre le problme du
chemin de valeur minimale dans un graphe. Nous montrerons que ces mthodes peuvent
s'appliquer sans difficults la question trs importante de l'ordonnancement des tches
dans un projet. Comme on l'a signal plus haut, peu de projets industriels se privent
l'heure actuelle d'une planification base d'un PERT ou d'une mthode potentiels, qui
constituent les deux outils concurrents en la matire. L aussi, l'expos restera succinct,
dans la mesure o l'on ne fera qu'voquer les complications introduites dans ces
techniques par la prise en compte de contraintes autres que celles portant sur la
succession des tches (les contraintes disjonctives notamment, qui ouvrent l'immense et
difficile chapitre de l'ordonnancement d'atelier).
On traitera ensuite des problmes lis des graphes particuliers, nomms arbres ; on
montrera que cette notion permet de traiter simplement des questions de trac de rseaux
(comment relier n points de la faon la plus conomique ?). Le concept voisin
d'arborescence conduit moins, de son ct, des outils d'optimisation de rseau qu
une classe particulire de mthodes visant approcher des questions hautement
combinatoires et particulirement difficiles. C'est dans ce cadre que nous aborderons le
fameux problme du voyageur de commerce (cf. supra).
Le dernier chapitre de cette partie abordera les problmes de flots : il s'agit cette fois-ci
de faire circuler des flux dans des rseaux (flux divers : pices, matires premires, mais
aussi individus ou voitures sur un rseau autoroutier) de faon soit maximiser les
entres totales sur le rseau (problme du flot maximal), soit minimiser un cot global
de transport, entre totale donne (programme de transport). On montrera galement

Introduction

11

que certains problmes a priori loigns de ces proccupations (problme de


l'affectation de tches des effecteurs potentiels notamment) peuvent tre traits avec
lgance par les formalisations issues de la notion de flot.
Enfin, dans une dernire partie, nous traiterons des phnomnes alatoires. Pour ce faire,
on fera appel au calcul des probabilits, en restreignant au minimum l'arsenal
mathmatique correspondant (on sait qu'il peut tre considrable). Il suffira donc au
lecteur d'avoir des connaissances limites aux lois probabilistes les plus courantes, aux
concepts les plus rpandus (esprance et variance) et aux oprations classiques sur les
variables alatoires pour consulter les trois chapitres de cette partie, consacrs d'une part
la gestion des files d'attente, d'autre part la fiabilit des quipements, enfin la
gestion des stocks.

Chapitre 1 Gnralits sur la Programmation Linaire


Nous commencerons le cours de Recherche Oprationnelle par l'examen d'un outil
auquel il est trs souvent fait rfrence dans nombre de problmes conomiques, qu'ils
concernent l'entreprise ou l'Etat : la programmation linaire. Nous n'analyserons pas
celle-ci sous l'angle de la signification conomique des diffrents concepts qu'elle met en
uvre, ce qui peut tre fait par exemple dans un cours de calcul conomique; nous nous
proccuperons plutt des techniques de rsolution usuelles des programmes linaires.
Parfois, nous serons amens introduire des notions conomiques comme le profit ,
le cot , les ressources , mais ce sera davantage par simple souci d'illustration que
pour indiquer le champ d'application des techniques exposes.
Soulignons enfin que dans les chapitres suivants nous ferons frquemment allusion la
programmation linaire, en particulier pour les problmes de graphes, ce qui justifie que
ce premier fascicule soit consacr cet outil.

1.1. UN

EXEMPLE SIMPLE

Avant d'aborder l'expos le plus gnral sur la programmation linaire, il convient de


donner un petit exemple n'ayant aucune prtention reprsenter un problme rel, mais
permettant d'illustrer la plupart des rsultats que nous dgagerons par la suite.
Soit une entreprise qui fabrique deux types de camions (types A et B). Cette entreprise
est divise en trois ateliers, l'atelier I fabriquant les moteurs, l'atelier II fabriquant les
carrosseries, l'atelier III tant charg de lassemblage.
Les temps unitaires pour chacune des trois oprations et pour chaque type de camions
sont consigns dans le tableau suivant :

Ateliers

Camions de type
A

Camions de type
B

1h

3h

2h

1h

1h

1h

Moteurs
II
Carrosseries
III
Assemblage

14

Recherche oprationnelle

Par ailleurs, l'tude des capacits de production des 3 ateliers a dgag qu'en un mois,
450 heures de travail pouvaient tre utilises dans l'atelier I, 350 heures dans l'atelier II,
200 dans l'atelier III.
Enfin, on sait que le bnfice unitaire ralis par l'entreprise sur les camions de type A
s'lve 4000 et que celui ralis sur les camions de type B est de 8000.
La question que l'on se pose est la suivante : quelle doit tre la production mensuelle en
camions de chaque type pour rendre le bnfice de l'entreprise le plus grand possible ?
Nous pouvons formaliser ce problme de la faon suivante :
Soit

la production mensuelle en camions de type A et

celle en camions de type B.

Les contraintes de disponibilit d'heures de travail dans chacun des ateliers peuvent
s'crire:
Atelier I : x1
Atelier II : 2 x1
Atelier III : x1

3x2

450

x2

350

x2

200

(a)

Par ailleurs, on a videmment :


x1 et x2 0

(b)

Enfin, il s'agit de trouver x1 et x2 rpondant aux contraintes (a) et (b) et rendant la


fonction.

4000 x1 8000 x2 maximale.

Ce problme constitue un programme linaire.


D'une faon gnrale, un programme linaire consiste maximiser (ou minimiser) une
fonction linaire de n variables, ces variables tant assujetties respecter un ensemble de
m contraintes galement linaires.
Dans le cas simple qui nous proccupe, (n = 2, m = 3), nous allons rsoudre le problme
en utilisant une reprsentation gomtrique.

Gnralits sur la programmation linaire

15

x2
(I)

( )

150 A

125

100

( 0)
C

50

50

100

150

D
175 200

x1

Figure 1
Un point M quelconque du plan reprsente une production qui n'est peut tre pas
ralisable. Pour qu'elle le soit, il faut d'abord que x1 0 et x2 0 donc que lon se limite
au quadrant nord-est du plan. Ensuite, il s'agit de reprsenter les autres contraintes du
systme d'inquation (a).
Pour cela traons les trois droites
x1 + 3x2 = 450

(I)

2x1 + x2 = 350

(II)

x1 + x2 = 200

(III)

Il est clair que ces trois droites dlimitent un domaine D, hachur sur la figure 1, qui
reprsente l'ensemble des solutions possibles compte tenu des contraintes (a) et (b). Il
s'agit du polygone convexe OABCD dont chaque sommet est donn par l'intersection de
deux droites parmi les cinq qui dterminent les contraintes (A par exemple, est
l'intersection de x1 = 0 et de x1+3x2 = 450).
Il s'agit donc de trouver le point (ou les points) de D tel que la fonction 4000 x1 + 8000x2
soit maximale en ce point, ou, ce qui est la mme chose, tel que la fonction x1 + 2x2
soit maximale.
Pour ce faire, il suffit de se souvenir que la distance de 0 la droite ax1 + bx2 = c est
donne par la quantit :

ax10

c
a2
si le point (

b2

a2

bx20
b2

est un point quelconque de la droite.

16

Recherche oprationnelle

En consquence, le problme revient trouver un point M de D tel que la distance de 0


la droite passant par M et parallle aux droites x1 + 2x2 = constante soit la plus grande
possible. Sur la figure, on a trac une droite () de la forme x1 + 2x2 = constante.
Pour avoir le point (ou les points) cherch, il suffit de dplacer la droite
paralllement elle-mme en la rapprochant de 0, jusqu' ce qu'elle touche le
domaine D.
Il est ais de voir que la position de
B de coordonnes
.

est alors

et que le point cherch est le point

La rsolution de ce programme linaire a t facilite par le fait que le nombre de


variables (2) permettait une reprsentation gomtrique. Ce n'est pas le cas en gnral et
nous allons avoir recours prsent des mthodes plus labores.
Nanmoins, de ce petit exemple, il convient de retenir les rsultats suivants, qui ne sont
que la transcription des rsultats que nous allons trouver dans le cas gnral :
1) le domaine des solutions ralisables est convexe, pour
, c'est un
polygone.
2) le point o la fonction conomique est maximale est un sommet du domaine
convexe des solutions ralisables.
3) parmi les contraintes du programme, il en est qui sont l'optimum
strictement respectes (ici 2x1 + x2 350) ; ce sont les contraintes non
satures . D'autres sont juste respectes (le point B est tel que x1 + 3x2 =
450 et x1 + x2 = 200) ; ce sont les contraintes satures.

1.2. ETUDE DU CAS GENERAL


1.2.1. Forme gnrale d'un programme linaire
Comme il a t dit ci-dessus, rsoudre un programme linaire consiste maximiser (ou
minimiser) une fonctionnelle linaire d'un nombre fini quelconque de variables positives
ou nulles, ces variables devant respecter un nombre fini quelconque de contraintes
linaires. Un programme linaire peut toujours s'crire de la faon suivante :
Soit n variables

a11 x1 a12 x2
a21 x1 a2 2 x2

obissant aux contraintes :

a1n xn
a2 n xn

b1
b2

am1 x1 am 2 x2

x1
x2

0
0

a m n xn

bm

Gnralits sur la programmation linaire

xn

17

Il s'agit de trouver
satisfaisant ces contraintes et maximisant la
fonctionnelle, appele fonction conomique :

z = c1 x1 c2 x2
Les

et

cn xn

appartenant R

On peut en effet toujours crire un programme linaire sous cette forme, aprs
ventuellement les corrections suivantes :
1) sil s'agit de minimiser :

z = c1 x1 c2 x2

cn xn

On maximisera :

c1 x1 c2 x2 ... cn xn

2) Si on a des contraintes du type :

ai1 x1 ai 2 x2

a in xn

bi

on les transformera en :

ai1 x1 ai 2 x2 ... ain xn

bi

3) Si on a des contraintes du type :

ai1 x1 ai 2 x2

a in xn = bi

elles quivalent :

ai1 x1 ai 2 x2
ai1 x1 ai 2 x2

a in xn bi
a in xn bi

soit encore :

ai1 x1 ai 2 x2

a in xn

ai1 x1 ai 2 x2 ... ain xn

bi

bi

On peut donc toujours se ramener la forme nonce ci-dessus, dite forme canonique
que l'on peut synthtiser en utilisant des notations matricielles.
Posons en effet :
A, matrice (m,n) =

18

Recherche oprationnelle

x, vecteur colonne
c, vecteur ligne

b, vecteur colonne

= (c1cn)

le problme pos ci-dessus peut alors s'crire :

Nous utiliserons souvent une autre forme que la forme canonique, appele forme
standard et obtenue de la faon suivante :
On transforme les ingalits
en galits en introduisant m variables
supplmentaires dites variables d'cart. En effet, le programme linaire :

a1n x
b1
amn xn
bm

a11x1 a12 x2
(I)

am1 x1 am 2 x2

x1 x2
Max Z
(II)

Max

xn

c1 x1 c2 x2 ... cn xn est quivalent au suivant :


a11 x1 a12 x2
a1n xn xn 1 = b1

a21x1 a22 x2
am1 x1 am 2 x2
x1, x2 xn , xn 1

a2 n xn xn 2 = b2
amn xn xn m = bm

xn

Z ' c1 x1 c2 x2 ... cn xn

(Les contraintes

0 xn

... 0 xn

proviennent des ingalits

du programme (I))

Les variables
sont appeles variables dcart, par opposition aux
variables x1, x2xn appeles variables principales.
La forme (II), o toutes les ingalits sont transformes en galits est appele forme
standard.
Si l'on utilise les notations matricielles pour un programme ramen la forme standard
(aprs adjonction de m variables d'cart), on obtient

Gnralits sur la programmation linaire

19

Pour un programme, mis sous forme canonique ou standard, on appellera :


-

solution ralisable tout vecteur x satisfaisant toutes les contraintes (y compris


celles du type
)
solution optimale toute solution ralisable maximisant la fonction conomique.

1.2.2. Illustration conomique des programmes linaires


Comme nous l'avons dit, il n'est pas dans notre propos d'analyser ici la programmation
linaire sous l'angle de ses applications. Cependant il est intressant de dgager les
grands types de problmes conomiques auxquels cette technique peut se rattacher, car
cette opration permet d'affecter une signification bon nombre de raisonnements que
nous ferons par la suite et donc de mieux comprendre leur mcanisme.
Le champ d'application des programmes linaires est trs diversifi. Cela dit, on peut
signaler deux grands types de problmes qui relvent de la programmation linaire.
1) Considrons une unit de production qui doit produire n biens diffrents en
quantits
et qui dispose de m facteurs de production en quantits
limites
reprsente la quantit du facteur de production i
ncessaire pour produire une unit du bien . Enfin est le bnfice unitaire
apport par la production du bien .
L'objectif vis est d'tablir le programme de production
de faon
maximiser le profit total, compte tenu des contraintes de limitation des facteurs
de production.
Ce problme s'crit bien sous la forme du programme linaire :
n

aij x j

bi

j 1

i 1,2...n
n

cjxj

Max Z =
j 1

20

Recherche oprationnelle

2) prsent, considrons que l'unit de production doit produire m biens dans des
quantits au moins gales
( reprsentant la demande du bien ).
est la quantit de bien produite partir d'une unit du facteur de production
j. Enfin, le cot imputable une unit du facteur de production est .
Le problme est de satisfaire la demande sur chaque produit en minimisant le
cot de production, soit :
n

aij x j

bi i 1,2...n

j 1

cjxj
j 1

Un problme du premier type est par exemple le cas de l'entreprise de camions que nous
avons tudi au premier paragraphe.
Un exemple clbre de problmes du second type est le problme du rgime alimentaire:
un leveur doit fournir ses animaux certaines quantits journalires d'lments de base
(lipides, protides, ou glucides) ; il peut acheter un certain nombre d'aliments, qui
possdent ces lments de base dans des proportions variables. Quelles quantits des
diffrents aliments doit-il acheter pour assurer aux animaux une nourriture satisfaisante
et minimiser le cot total d'achat des aliments ?
On remarquera que l'criture d'un problme sous la forme d'un programme linaire
ncessite un grand nombre d'hypothses (en particulier les hypothses de linarit et
d'indpendance des productions). L'emploi de tels outils est insparable de l'examen
attentif de la signification et de la validit de ces hypothses.

1.3. THEOREMES GENERAUX SUR LES PROGRAMMES LINEAIRES


Nous allons donner quelques rsultats gnraux sur la programmation linaire
permettant de comprendre la technique de rsolution expose par la suite, savoir la
mthode du simplexe.
Nous commencerons par rappeler quelques lments de vocabulaire relatifs aux
ensembles convexes dans .

1.3.1. Rappels sur les ensembles convexes


Un sous-ensemble de
point c est dfini par

est dit convexe si pour tout

b appartient galement

pour tout couple

et tout

b appartenant , le

Gnralits sur la programmation linaire

(autrement dit, tout point du segment

21

appartient ).

Un point extrme d'un ensemble convexe est un point appartenant


puisse pas trouver deux points a et b tels que

c= a

tel qu'on ne

Avec
(plus trivialement,
des extrmits).

n'appartient aucun segment contenu dans

, sauf s'il en est une

Si on reprend le petit exemple analys prcdemment (l'entreprise de camions), le


domaine
ensemble des productions ralisables est convexe : c'est le polygone
(figure 1). Les points extrmes sont ici les points
, sommets du
polygone : ils sont en nombre fini.
Par contre, si l'on dessine un cercle dans R2, on obtient galement un domaine convexe,
mais tous les points de la circonfrence sont des points extrmes ; ils sont une infinit.
Rappelons galement que si l'on a n points
convexe de ces n points est un point

a = 1 a1

2 a2

a1, a2 ,...an de

, une combinaison linaire

a qui s'crit

n an

avec

A prsent, nous allons dmontrer un certain nombre de thormes sur la programmation


linaire en utilisant la forme standard, c'est-a-dire la forme obtenue aprs addition des
variables d'cart transformant les inquations en quations.
Nous avons donc le programme

Ax = b
x 0
Max
avec

z cx

22

Recherche oprationnelle

Nous travaillerons donc dans l'espace


Toute solution ralisable du programme est un vecteur
contraintes (1).

satisfaisant aux

1.3.2. Convexit du domaine des solutions ralisables


Thorme I : L'ensemble des solutions ralisables du P.L (programme linaire) est
convexe.
En effet soient deux solutions ralisables
, on a :
0 et
0
et
prenons alors un point
avec
On a :
1)
2)
+
Donc
est solution ralisable, ce qui assure la convexit du domaine des solutions
ralisables.
Remarque importante : de mme, si l'on se place dans
et si l'on se limite aux
variables principales, (ensemble des x tels que
) est galement convexe.
Nous allons maintenant essayer de caractriser les points extrmes du domaine des
solutions ralisables.

1.3.3. Points extrme du domaine convexe des solutions ralisables


Pour dmontrer le thorme suivant, nous allons crire les quations du programme
linaire dans le langage vectoriel.
Soit les vecteurs P1, P2 , Pn+m de

etc..

Le programme II peut s'crire :


n m

x j Pj = b
j =1

forms par les colonnes de la matrice .

Gnralits sur la programmation linaire

23

et la maximisation de la fonction suivante :


n m

z=

cj xj
j =1

Thorme II : Si l'on trouve vecteurs Pi linairement indpendants


dsignera, aprs renumrotation, par 1 2
valeurs positives
K
alors le point :
1 1
2 2
k k

que l'on
k avec

est un point extrme du domaine des solutions ralisables.

Rciproquement, un point extrme de ce domaine, de coordonnes


est tel que les vecteurs Pi associs aux xi strictement positifs sont indpendants.
Dmontrons la premire partie du thorme : Soit en effet
P1, P2Pk indpendants et :

Le point

est solution ralisable du P.L. Supposons que

avec k m,

ne soit pas un point

extrme du domaine des solutions ralisables, que nous appellerons D. C'est que l'on
peut trouver deux points x1 et x2 (solutions ralisables) tels que :

x=

x1 (1

) x2

avec

0<

<1

Ce qui impose d'abord que les n+m-k dernires composantes de x1 et x2 soient nulles.

24

Recherche oprationnelle

Donc :

et

On a, puisque de x1 et x2 sont solutions ralisables :

x11 P1 x12 P2

x1k Pk = b

x12 P1 x22 P2

xk2 Pk = b

et

mais, puisque P1, P2PK sont linairement indpendants, b s'exprime d'une faon
unique en fonction de ceux-ci; en consquence :
1
2
x11 = x12 = x1 ; x12 = x22 = x2 ; xk = xk = xk

do : = 0 ou 1
Donc,

est point extrme de D;

A prsent, dmontrons la rciproque :

Soit

un point extrme du domaine D,

on a :
n m

xi Pi = b
i =1

Gnralits sur la programmation linaire

25

Parmi les xi, un certain nombre sont positifs, les autres nuls. Supposons qu'il y en ait
positifs. Aprs renumrotation, on peut crire :
r

xi Pi = b
i =1

Supposons que les i


soient linairement dpendants, alors, il existe des
non tous nuls tels que :
r

Pi = 0

i
i =1

soit alors un nombre arbitraire; on a :


r

xi Pi
i =1

Pi = b

Pi = b

i =1

et
r

xi Pi
i =1

i =1

Considrons les deux points :

Les

xi

et

tant toujours positifs, on peut toujours choisir de telle faon que

et xi

restent positifs pour tout i, donc que

soient des solutions

ralisables. Mais, on a bien videmment :

x=

1 1
x
2

1 2
x
2

ce qui contredit l'hypothse que


En consquence, les i
alors compltement dmontr.

est point extrme.


sont linairement indpendants. Le thorme II est

26

Recherche oprationnelle

Les implications de ce thorme sont les suivantes :


comme nous sommes dans m en ce qui concerne les i et comme un point extrme est
tel que les i associs aux i strictement positifs sont indpendants, il en rsulte que pour
un point extrme, le nombre de i strictement positifs est au plus gal .
On en dduit que pour obtenir un point extrme, il suffirait a priori d'extraire des
vecteurs i vecteurs indpendants avec
et de rsoudre le systme d'quations:
r

xi Pi = b
i =1

en esprant que les

trouvs soient positifs ou nuls.

Cependant, dans les cas o r < m ce systme est en gnral impossible. On essaiera
toujours de se ramener au cas o r = m grce au thorme suivant :
Thorme III : un point extrme du domaine des solutions ralisables peut tre
associ un ensemble de m vecteurs Pi linairement indpendants.
Nous remarquerons tout d'abord que, grce l'addition des variables d'cart 1, le rang des
vecteurs P1, P2, Pn+m est gal m. En effet :

sont linairement indpendants

Soit alors un point extrme

avec r m . Les vecteurs P1, P2, Pr sont linairement indpendants, en vertu du


thorme II.
Si nous ne pouvons complter ces vecteurs indpendants que par r' r autres vecteurs
indpendants Pr+1, Pr+2, Pr avec r' m c'est que les n m r ' autres vecteurs
s'expriment en fonction des r vecteurs P1, P2, Pr, donc que le rang du systme P1, P2,
Pn+m est r' m et non m ce qui est contraire la remarque faite plus haut. D'o le
thorme III.
1 Dans le cas o la forme standard
ne rsulte pas de l'addition systmatique de variables
d'cart (par exemple lorsque certaines contraintes sont des galits) on supposera que le rang de
est . Les rsultats dgags seront alors valables pour ce cas.

Gnralits sur la programmation linaire

27

En conclusion, un point extrme du domaine D est obtenu en choisissant m vecteurs


P1, P2, Pm indpendants parmi les n m vecteurs P1, P2, Pn+m et en rsolvant le
systme de Cramer :

x1 P1

x2 P2

xm Pm = b

Le point (
positifs ou nuls.

obtenu est un point extrme si les

sont

Si un certain nombre de xi parmi les x1, x2, xm sont nuls, la solution est dite dgnre.
La solution
base du programme linaire.

correspondant un point extrme est dite solution de

sont appeles les variables de base pour la solution de base considre,


les variables hors base.
Une autre conclusion trs importante de ces deux thormes est la suivante : le nombre
de points extrmes du domaine des solutions ralisables, donc le nombre de solutions de
m

base est fini. En effet ce nombre est born par Cn

(n m)!
nombre de systme de
n!m!

m vecteurs que l'on peut extraire des vecteurs


1.3.4. Dfinition gomtrique des points extrmes du domaine des solutions
ralisables.
D'aprs ce que l'on vient de voir, un point extrme est obtenu en annulant n variables xi
parmi les
variables du programme mis sous forme standard, et en rsolvant le
systme d'quations par rapport aux m variables restantes (variables de base).
Sur ces n variables nulles (variables hors base) un certain nombre p sont des variables
principales et
sont des variables d'cart.
Soit une variable principale hors base i
dans n (espace des variables principales).

est l'quation d'un plan de coordonnes

Si maintenant on a une variable d'cart n+j hors base, soit n+j


, c'est que la
contrainte correspondant cette variable d'cart est sature. On a donc l'quation :

a j1 x1 a j 2 x2

a jn xn = b j

qui est l'quation d'un hyperplan dans l'espace des variables principales (

).

Donc, un point extrme du domaine D correspond l'intersection de n hyperplans dans


l'espace Rn des variables principales pris soit dans les hyperplans de coordonnes
(
) soit dans les hyperplans correspondants aux contraintes du programme linaire

28

Recherche oprationnelle
n

ai j x j = b .
i =1

On trouvera une illustration de ces points dans l'exemple des carmions expos
prcdemment, o
. On a en effet dj remarqu qu'un sommet du
polygone convexe, donc un point extrme du domaine des solutions ralisables, est
donn par l'intersection de deux droites (soit du type
), soit du type

ax1 bx2 = 0
Par ailleurs, si on ajoute les variables d'cart x3, x4, x5 avec

x1

3x2

2 x1
x2
x1
x2
x1 , x2 , x3 , x4 , x5

x3

450

x4
x5

=
=

350
200

On voit que chaque point extrme du domaine des solutions ralisables est caractris
par variables positives sur les et les deux autres nulles, ce qui correspond bien aux
solutions de base dfinies plus haut. Par exemple :
.
Revenons maintenant l'expos gnral pour souligner l'importance des points extrmes
du domaine D.

1.3.5. Solutions ralisables et solutions de base


Thorme IV: Si le domaine D des solutions ralisables est born, toute solution
ralisable x peut se mettre sous la forme d'une combinaison linaire convexe des
solutions de base
La dmonstration de ce thorme tant assez longue, nous renvoyons le lecteur intress
une annexe place la fin de ce chapitre, o les principes du raisonnement lui seront
exposs. On peut par ailleurs proposer une justification intuitive du rsultat en prenant
un polygone convexe de R2 :

Gnralits sur la programmation linaire

(I)

29

A
B

M1
x

M2

0
Prenons en effet un point M l'intrieur du polygone et traons une droite quelconque
passant par M. Cette droite coupe les cts du polygone en deux points, ici M1 et M2. On
peut crire (synthtiquement) :

M=

M1 (1

) M2

M1 lui-mme peut s'crire :

M1 =

0 (1

0<
M2 =

<1

B (1

0<

)A

)C

<1

d'o

M=

(1

) A (1

B (1

)(1

)C

Dans cette expression, tous les coefficients numriques sont compris entre 0 et 1.
Par ailleurs,
1

(1

) (1

(1

)(1

) =1

Donc, M apparat bien sur ce petit exemple comme combinaison linaire convexe des
sommets du polygone convexe.
Le thorme propos est une gnralisation Rn de ce phnomne. Sa dmonstration est
d'ailleurs fonde sur l'illustration que nous venons de proposer.

30

Recherche oprationnelle

La restriction portant sur le caractre born du domaine des solutions ralisables est
fondamentale pour le thorme IV, comme on pourrait le voir en lisant l'annexe
Pour la suite de l'expos, nous considrerons toujours des domaines D borns : cette
hypothse n'est pas gnante en recherche oprationnelle, o l'on est cens manier des
grandeurs conomiques; elle le serait sans doute davantage pour un expos
mathmatique.
Le domaine D des solutions ralisables d'un P.L. porte, lorsqu'il est born, le nom
particulier de polydre convexe. Nous utiliserons ce terme dornavant. Les points
extrmes, en nombre fini, seront les sommets du polydre.

1.3.6. Fonction conomique et sommets du polydre convexe


L'analyse que l'on vient de faire sur les points extrmes (ou sommets) du domaine des
solutions ralisables et la relation existant entre n'importe quelle solution ralisable et ses
points extrmes trouve sa pleine justification dans le thorme suivant :
Thorme V : La fonction conomique est maximale en au moins un des sommets du
polydre convexe; si elle est maximale en plus d'un sommet, elle est maximale en toute
combinaison linaire de ces sommets.
Soit
les sommets du polydre convexe et soit un point quelconque du
polydre convexe ( solution ralisable); supposons que ne soit pas un sommet.
D'aprs le thorme IV,
de

peut s'crire sous la forme d'une combinaison linaire convexe

x=

xi

i =1

avec

Appelons Z (x ) la valeur de la fonction conomique pour une solution ralisable .


Soit un sommet

tel que

pour tout

alors
p

Z (x)

Z (xk )

i =1

Z (x)

Z (xk )

Gnralits sur la programmation linaire

Donc la fonction

Z (x) est maximale en un ou plusieurs sommets du polydre convexe.

S'il existe plusieurs sommets

Z ( x1 ) = Z ( x 2 ) =
avec

31

tels que

Z ( x q ) > Z ( xi )

i 1,2...q toute combinaison linaire convexe des


q

q
i
i x avec

x
i 1

i 1

est telle que


q

Z (x) =

Z ( xi )

i =1

Z ( x ) = Z ( x1 ) = Z ( x 2 ) =

Z (xq )

Donc la fonction Z est galement maximale en x .


Sur l'exemple numrique trait en dbut du cours (voir figure 1), on avait effectivement
constat que le maximum de la fonction conomique tait ralis en B, sommet du
polygone convexe des solutions ralisables, et on en avait vu l'interprtation
gomtrique.
Par ailleurs, supposons que pour l'atelier III, les temps d'assemblage ne soient pas dune
heure pour les camions de type A et dune heure pour les camions de type B, mais
respectivement d une heure et de deux heures. La contrainte (III) devient :

x1 2 x2
et le domaine des solutions ralisables :

200

32

Recherche oprationnelle

On constate que la contrainte (I) est superflue.


Par ailleurs, le segment
est parallle la direction ( ) de la fonction conomique.
Le maximum de celle-ci est trouv en
, et en tout point du segment
, donc en
tout point s'exprimant sous la forme d'une combinaison linaire convexe
Remarque : la circonstance suivant laquelle il existe une infinit de solutions optimales,
comme prcdemment, est appele dgnrescence de second type.
Le terme de dgnrescence de premier type est rserv au cas, dj examin, o une
solution de base est constitue de moins de m variables non nulles.
Dans ce cas, il y a plus de n variables nulles, ce qui veut dire que le sommet dans
correspondant la solution de base est l'intersection de plus en plus de n hyperplans pris
soit dans les hyperplans xj = 0, soit dans les hyperplans
n

aij x j = b
j =1

1.4. INTRODUCTION A L'ALGORITHME DU SIMPLEXE


Nous savons donc que le maximum de la fonction conomique est trouv en un sommet
(ventuellement plusieurs) du polydre convexe des solutions ralisables.
Par ailleurs, nous savons trouver thoriquement ces sommets : il suffit de choisir
vecteurs Pi , indpendants parmi P1, P2, Pn+m et de rsoudre le systme,

Gnralits sur la programmation linaire

33

xi Pi = b
i =1

Ce systme est de Cramer pour les variables i ; si ces dernires sont toutes positives ou
nulles, on a bien obtenu ainsi un sommet du polydre (sinon, on recommence en
choisissant
autres vecteurs i). Pour la solution de base ainsi trouve, on peut calculer
la valeur de la fonction conomique. On pourrait penser alors calculer cette valeur pour
tous les sommets du polydre, et comparer entre elles les grandeurs trouves pour
obtenir le maximum. Cette mthode est trs lourde.
Supposons en effet, pour fixer les ides, que m =10 et n = 20 (ce qui constitue un petit
programme linaire, si on le compare ceux qui sont utiliss couramment dans la
pratique).
30

Il faut essayer C10 systmes de

vecteurs indpendants, ce qui constitue plus de

systmes de Cramer rsoudre.


On est donc confront un problme hautement combinatoire et, pour le rsoudre, il est
ncessaire de disposer d'un algorithme, c'est--dire d'une procdure rptitive
permettant, de progresser rapidement vers la solution optimale.
Cet algorithme dit du simplexe sera expos dans le chapitre suivant. Nous nous
contenterons ici d'en donner les principes. Nous commencerons par profiter des
renseignements dgags par les thormes I V pour proposer une autre criture d'un
programme linaire, savoir l'criture matricielle (alors que nous avons surtout utilis
jusqu'ici une criture vectorielle).

34

Recherche oprationnelle

1.4.1. Utilisation de l'criture matricielle dans la programmation linaire


Soit un programme linaire mis sous forme standard

Ax = b
Z

cx

c
Supposons que nous disposions d'une solution de base du P.L., c'est--dire que nous
ayons trouv
vecteurs indpendants de la matrice . Rappelons que la solution de
base est alors constitue par variables de base non nulles2 (celles qui correspondent
aux vecteurs indpendants) les autres variables tant nulles (variables hors base).
Nous appellerons l'ensemble des indices des variables de base, l'ensemble des indices
des variables hors base. On peut crire

x=

xI
xI

(aprs rordonnancement des variables)


sera le vecteur colonne des variables de base
le vecteur colonne des variables hors base
(

vecteur colonne

valeur colonne

De mme, on peut dcomposer


avec

matrice

et

en

matrice

est la matrice extraite de en prenant les


vecteurs colonnes correspondant aux
variables de base. On sait que
est une matrice inversible, puisque les vecteurs
colonnes la composant sont indpendants.
sera appele matrice de base;
matrice hors base.

Sauf dgnrescences.

qui correspond aux variables hors base, sera appele

Gnralits sur la programmation linaire

35

De la mme faon on peut crire :


)
avec

vecteur ligne

et

vecteur ligne

Dans ces conditions, le programme linaire (1) s'crit :

xI , xI

Comme

(2)

est irrversible, la premire quation donne :

(3)

ou

Cette criture est absolument gnrale : elle ne prjuge en rien des valeurs des
composantes de
et : c'est une simple transformation des quations du programme
(1).
Pour la solution de base correspondant l'ensemble d'indices , les valeurs des variables
du PL sont donnes par :
et
Sur la formule (3), on constate le fait suivant, trs important :
lorsque l'on dispose d'une base, les variables de base s'expriment linairement en
fonction des variables hors base.
Posons :

et :

est un vecteur colonne


Pour tout

et

une matrice

la formule (3) donne :

xi = ti

tij x j

(4)

j I

pour
Remarque essentielle :
solution de base.

est positif, puisque valeur d'une variable de base d'une

Par ailleurs, on a, d'aprs (2) :


combinons cette formule avec (3).
Il vient

36

Recherche oprationnelle

soit
(5)
Cette criture, l aussi, est absolument gnrale.
Pour le sommet correspondant la base donne par l'ensemble d'indices
donne la valeur de la fonction conomique en ce sommet.
Par ailleurs, on voit sur (5) que, lorsqu'on dispose d'une base, la fonction
conomique peut toujours s'exprimer linairement en fonction uniquement des
variables hors base.
La formule (5) donne, si l'on pose

zj =

tij ci
i I

pour

Z Z0 =

(c j

zj ) xj

(6)

j I

Avec

xj =

tij ci
i I

pour
Les quantits :

pour

sont appeles gains marginaux.

1.4.2. Passage d'un sommet un autre


Supposons donc que nous disposions d'un sommet, ou, ce qui est la mme chose, d'une
solution de base relative un ensemble d'indices .
Pour ce sommet et pour

on a, d'aprs ce qu'on a vu :

Par ailleurs, d'aprs les formules (4) et (6),


s'expriment en fonction des variables
hors base, qui sont nulles pour le sommet correspondant :

xi = ti

tij x j
j I

(7)

Gnralits sur la programmation linaire

Z Z0 =

(c j

37

zj ) xj

(8)

j I

avec

zj =

tij ci
i I

partir du moment o l'on a , on peut obtenir


matriciels.
Supposons que pour un

grce de simples calculs

on ait

Rendons la variable correspondante positive, en laissant les autres variables hors base
nulles, le but de cette opration tant d'augmenter la fonction conomique : en effet si
est l'accroissement de la variable , les autres variables hors base restant nulles,
l'accroissement
de la fonction conomique est :

D'aprs l'quation (7), pour que l'on ait dans ces conditions une solution ralisable, il
faut que :
et
on en dduit :
1) si
pour tout
est positif quelle que soit la valeur
(positive) de
peut donc crotre indfiniment ainsi que les variables
et on obtient une solution ralisable
variables infinies : le
domaine n'est pas born, ce qui est contraire l'hypothse faite en II-3-5.
2) Il existe donc au moins un
; on doit alors avoir, pour respecter
pour tout

i/

si l'on fait crotre jusqu' sa limite :


i/ > 0 et si l'on appelle
on voit que la variable

s'annule, si

l'indice tel que

>0
pour tout

Cette opration a donc consist rendre positive une variable hors base pour annuler une
variable de base.
la fin, on a donc toujours
variables non nulles et variables nulles, donc une
solution de base : on est pass d'un sommet du polydre un autre.
Remarque : il faut vrifier que les vecteurs colonnes de la matrice des contraintes
associes aux variables nouvelles de base sont bien indpendants.

38

Recherche oprationnelle

Cela devient parfaitement vident si l'on prend soin de prendre pour contraintes du
programme linaire les quations (7) sous la forme :

xi

tij x j = ti

i I

(7)

j I

Ces quations, encore une fois, sont absolument quivalentes aux quations initiales du
programme (1). Alors, la matrice de base initiale (les
de base, avec
) est la
matrice unit
1

Si l'on fait sortir la variable


de la base et si on fait entrer dans le base
on obtient la nouvelle matrice de base :

avec

0
.

c'est--dire la matrice unit o l'on remplace la colonne

Comme

par la colonne :

, le dterminant de cette nouvelle matrice n'est pas nul. On a

donc bien une nouvelle matrice de base inversible.


Ce qu'il faut remarquer prsent, c'est que l'intrt de cette opration provient du fait
que l'on a choisi pour variable
entrant dans la base une variable hors base telle que

Gnralits sur la programmation linaire

valeur

39

Or, si
, les autres variables hors base restant nulles, la nouvelle
de la fonction conomique est :
-

et alors

On a bien russi par cette opration augmenter la valeur de la fonction conomique.


Tout le principe de l'algorithme du simplexe est l :
1- partir d'une solution de base,
2- passer une autre solution de base en faisant entrer une variable hors base dans
la base et sortir une variable de base pour la mettre hors base, et en s'assurant
que l'on amliore ainsi la fonction conomique,
3- s'arrter lorsque l'on ne peut plus amliorer la fonction conomique.
En ce qui concerne le test d'arrt, il est le suivant :
lorsque, pour tout
de base I.

on a atteint l'optimum qui est donn par la solution

Ce test est parfaitement vident si l'on prend le P.L sous la forme donne par les
quations (7) et (8) :

En effet, encore une fois, ce programme est quivalent au programme initial (1). La
solution de ce programme, si
pour tout
est bien videmment
et donc

c'est--dire la solution de base considre.


Les principes de l'algorithme du simplexe sont rsums dans l'ordinogramme de la page
suivante.
Remarque importante : lorsque l'on passe d'un sommet un autre, la fonction
conomique devient comme on l'a vu :

avec
valeur de la variable entre dans la base et
tant finis, on
est sr que, si l'on ne rencontre jamais de dgnrescences de premier type (variables de
base nulles) l'algorithme du simplexe est convergent, puisqu' chaque itration, la
fonction conomique s'accrot d'une quantit finie. Dans le cas contraire, il peut y avoir
(dans des circonstances trs rares) non convergence.

40

Recherche oprationnelle

ANNEXE
Principes de la dmonstration du thorme IV :
Si le domaine
des solutions ralisables est born, toute solution ralisable peut se
mettre sous la forme d'une combinaison linaire convexe des solutions de base

x1 , x 2 ,

x p.

Remarquons tout d'abord qu'on peut effectivement parler des solutions de base (ou
points extrmes)
puisque l'on a montr que ces solutions de base taient en
nombre fini.
Il s'agit de montrer que toute solution ralisable

avec

et

du P.L peut se mettre sous la forme

=1

Donnons les grandes lignes de la dmonstration.


Soit donc une solution ralisable . Numrotons
les composantes strictement
positives de , les
autres tant nulles. On a alors, avec les notations
prcdentes,
Si les vecteurs
sont linairement indpendants, est un point extrme de
Supposons qu'il n'en soit pas ainsi. Nous allons mettre sous la forme :

x = E1 (1

) E2

o
et o
composantes non nulles.

sont deux solutions ralisables ayant au plus

Pour ce faire, nous supposerons que le rang du systme de vecteurs


est
que
sont linairement indpendants, aprs renumrotation
ventuelle. On a :
(1)
pour choisir

, oprons de la faon suivante :

(1) peut toujours s'crire,

tant un nombre quelconque :


(2)

Or, comme
peut exprimer

sont indpendants et que le rang du systme


d'une faon unique en fonction de
soit

est , on

Vous aimerez peut-être aussi