Vous êtes sur la page 1sur 10

Premire partie : Mathmatique

1. La programmation linaire : La programmation linaire permet la rsolution d'un programme linaire. Un programme linaire est un systme d'quations ou d'inquations appeles "contraintes" qui sont linaires (c'est--dire que les variables ne sont pas leves au carr, ne servent pas d'exposant, ne sont pas multiplies entre elles...). Et partir de ces contraintes, on doit optimiser une fonction galement linaire appele objectif. On appelle Programmation Linaire, le problme mathmatique qui consiste optimiser (maximiser ou minimiser) une fonction linaire de plusieurs variables qui sont relies par des relations linaires appeles contraintes. 2.Methode simplexe : forme canonique: On convient de dire quun vecteur U est infrieur un vecteur V, et on crit U=< V si pour tout i, on a Ui =< Vi . Ici, le terme Ui dsigne la i-me composante du vecteur U. nous mettons en garde sur le fait que la ngation de U=<V nest pas U>V. Une forme canonique est un programme linaire o toutes les contraintes sont des ingalits et les variables sont astreintes tre positives. On a dj expliqu quon peut supposer et sans perte de gnralit, que les contraintes dingalit sont toutes de type =< . par consquent, on peut affirmer que tout programme linaire sous forme canonique scrit sous la forme suivante :

O ,A, matrice(m,p) et Sont fixs. Le vecteur X a P composantes relles Xi et dsigne loprateur transpos. Les ingalits (e.i. ) sappelles contraintes de positivit. Dsormais , on dcide de noter un programme linaire(PL) sous forme canonique par (FC) . forme standard: La mise sous forme standard dun (PL) quelconque consiste transformer les contraintes dingalits en galit tout en imposant aux variables dtre positives. Pour ce faire, on procde comme suit: A chaque contrainte de type (resp. ), ajouter (resp. retrancher) une variable tout en lui imposant d'tre positive. Celle-ci s'appelle variable d'cart .

Remplacer chaque variable xi sans restriction de signe par la diffrence de deux variables positives : avec et . Si une variable xi est ngative, effectuer le changement de variable xi' = -xi. Soit la forme canonique (FC) suivante: max Z = 3x1+7x2 sous les contraintes -3x1+2x2 6 2x1-2x2 1 3x1-x2 2 -4x1-5x2 1 x1 0, x2 0 Les donnes de la forme standard de cette (FC) sont :

M= Exemple:

,b=

C*=

Mettre sous forme standard le (PL) suivant :

On peut dire juste titre que ce (PL) n'est pas une forme canonique car la premire contrainte est une galit et la troisime variable x3 n'est pas astreinte tre positive. Pour la mise sous forme standard, la premire contrainte, qui est dj une galit, reste inchange. Pour la deuxime, on lui retranche une variable positive x4, elle devient x1 - x3 - x4 = -1 Quant la troisime contrainte, on lui ajoute une variable positive x5 pour devenir x2 + x3 + x5 = 4 Concernant la variable x3 qui est sans restriction de signe, elle est remplace par x3-x3-, avec et . En conclusion, la forme standard associe ce (PL) s'crit:

Les variables du (PL) initial s'appellent variables de dcision , celles de la forme standard associe s'appellent variables structurelles. relation entre la forme canonique et standard: L'criture d'un (PL) sous forme standard est introduite tout simplement parce que l'algorithme du simplexe ne s'applique qu'aux formes standards. En d'autres termes, pour rsoudre un (PL) par le simplexe, il faut tout d'abord l'crire sous forme standard. Etant donn qu'on rsoud le (PL) proprement dit et non la forme standard associe, la question naturelle qu'on se pose est de savoir comment retrouver une solution optimale du (PL) de dpart partir d'une solution optimale de sa forme standard . Le thorme suivant tablit le lien entre une solution optimale d'un (PL) et celle de sa forme standard, et on se limite au cas o le (PL) considr est une (FC). Thorme:

v est une solution optimale de (FC) si et seulement si optimale de la forme standard associe. De plus, on a

est une solution

Ce thorme se gnralise bien videmment pour tout (PL) quelque soit son type d'criture. notions de base ralisable: Dsormais, on note tout (PL) crit sous forme standard par (FS). Par dfinition, l'criture matricielle d'un problme (FS) possde la forme suivante :

sont fixs.

La matrice M contient toujours plus de colonnes que de lignes (i.e. n > m) vu que le nombre de variables structurelles n (variables de dcision + variables d'carts + variables des aux variables sans restriction de signe) dpasse le nombre de contraintes m. Sans perte de gnralit, on suppose que la matrice M est de rang m. Sinon, 1-ou bien il y a une (ou plusieurs) quation qui est combinaison linaire des autres quations, qu'il faut alors enlever, 2-ou bien le systme est incompatible et dans ce cas le systme linaire My = b n'admet aucune solution. + systme de base : Notons par Mi la colonne de M. Le vecteur colonne My s'crit alors

o yi est composante de y. On appelle systme de variables de base tout ensemble de m variables distinctes yi, , prises parmi , telles que le dterminant des vecteurs Mi, est diffrent de zro. On rappelle que l'entier m dsigne le nombre de contraintes d'galits qui apparaissent dans (FS). La matrice carre forme par les m colonnes Mi, , s'appelle base et les variables yi,
, s'appellent variables hors base . Autrement dit,

une base B du problme (FS) n'est autre qu'une sous matrice carre de M d'ordre m et inversible. Pour mieux visualiser une telle base B, on effectue des permutations de colonnes de sorte que la base B apparaisse sur les m premires colonnes de M. Ainsi, on met M sous la forme suivante :

o Les variables yi,

et . , peuvent aussi tre classes selon B et N :

Dsormais, l'ensemble J des indices de base sera not par JB et son complmentaire par JN. En respectant cette partition, le systme My=b vrifie :

Par suite, l'ensemble des solutions dans :

du systme linaire My = b est gal

Parmi les solutions de ce systme, nous distinguons les solutions dites de base pour lesquelles yN = 0N (on crit 0N la place de pour dire que les variables hors base sont nulles). Une telle solution existe et elle vaut

Cette solution de base est ralisable ( i.e. elle vrifie les contraintes My = b et
) si et seulement si

Dans ce cas, on dit que la base B est ralisable . Noter que toute solution de base ralisable admet (n - m) composantes nulles relatives aux variables hors base et que les autres composantes vrifient un systme de Cramer d'ordre m. + systme de base : Par analogie au Thorme , nous allons tablir que lorsque (FS) admet une solution, on peut toujours chercher une solution optimale parmi les solutions de base ralisable. Thorme: Si un problme (FS) admet un optimum global, il existe toujours une solution optimale qui est une solution de base ralisable. Remarque: Tout sommet du domaine ralisable

est une solution de base ralisable, la rciproque est galement vraie. Les sommets de correspondent donc aux solutions de base ralisable. De ce fait, l'algorithme du simplexe ne s'intresse qu'aux solutions de type

avec nombre fini.

. Ces solutions de base ralisable sont bien videmment en

+ base dgnre :

Une solution de base ralisable est dite dgnre , si en plus des (n - m) composantes nulles relatives 0N, il existe une composante du vecteur
qui est nulle. Elle est non dgnre dans le cas o toutes les composantes de sont non nulles et par suite strictement positives. De mme, on dit qu'une base ralisable est dgnre si la solution de base associe est dgnre. Il est intressant de noter qu'un point dgnr est solution de plusieurs bases ralisables. En effet, tout vecteur colonne relatif une base dgnre B admet au moins une coordonne , , qui est nulle. En considrant que , on obtient

car

Dans la matrice B, nous allons remplacer le vecteur colonne

par

un autre vecteur pour de sorte que la matrice B' ainsi obtenue soit inversible. Il est clair que u est solution du systme linaire B'x = b, tant donn que

Cette solution est unique en raison de la rgularit de la matrice B'. Donc, les deux bases ralisables B et B' donnent toutes les deux la mme solution de base . Algorithme du simplexe: L'algorithme du simplexe est un procd itratif qui progresse dans un sens volutif : il passe d'une solution de base ralisable non optimale une autre solution ayant une meilleure valeur d'objectif. De cette faon, on vite de parcourir toutes les solutions de base ralisable dont le nombre est en gnral prohibitif. Pour vrifier la non optimalit d'une solution, un simple test sera

effectu. De plus, grce l'algorithme du simplexe, on sera capable de dtecter, le cas chant, que l'optimum est infini. + condition doptimalit: La fonction d'objectif Z(y) = c y est entirement dfinie par la donne du vecteur . A chaque base , on note
et . D'une faon quivalente, le vecteur cB (resp. cN) s'obtient partir de c en prenant les coordonne ci relatives aux variables de base (resp. hors base) associe la matrice B (resp. N). Le classement du vecteur c selon JB et JN donne la solution associe est optimale. . Naturellement, on dit qu'une base B est optimale si

Thorme: On se donne une base ralisable B du problme (FS). Si la forme standard (FS) est de type maximisation (resp. minimisation), on considre le vecteur ligne (resp. ). Alors, on a : (i) est optimale. (ii) Si de plus la base B est non dgnre (i.e. La condition d'optimalit

), alors

peut tre interprte comme un test d'arrt des itrations pour l'algorithme du simplexe. Il reste dcrire la technique qui permet de passer d'une solution de base ralisable non optimale une autre solution de base ralisable ayant une meilleure valeur conomique. Cette partie fera l'objet du paragraphe suivant.

Interprtation: Donner une interprtation conomique du vecteur wN. A partir de la solution ralisable , on construit le point y' obtenu en augmentant d'une unit la s-ime variable hors base. D'aprs l'galit BNyN , ce point vaut , o es dsigne le s-ime vecteur de la base canonique de . Si le point ainsi obtenu est ralisable, on obtient :

Pour un problme de type maximisation, cette dernire galit s'crit


. Donc, l'lment ws reprsente la quantit s'ajoutant la valeur conomique Z lorsqu'on incrmente d'une unit la coordonne hors base de , pour autant que le nouveau point obtenu soit ralisable. Semblablement, lorsqu'il s'agit d'un problme de minimisation, ws correspond la valeur retranche de la valeur conomique. C'est la raison pour laquelle wN s'appelle vecteur des cots rduits (ou cots

fictifs ou encore cots marginaux ).

+ amlioration de la fonction dobjectif: On se donne une base ralisable . Le vecteur Bi dsigne la colonne de B qui est fortiori une colonne de M. On note aussi Nj la colonne d'indice j de la matrice N. D'ailleurs, Nj n'est autre Nej o ej est le j-ime vecteur de la base canonique de . Thorme: On suppose que la base ralisable B vrifie . Il existe donc une composante ws du vecteur wN qui est strictement positive. Considrons le vecteur colonne de la matrice . Alors de deux choses l'une (i) ou bien , et dans ce cas l'optimum est infini, (ii) ou bien . Dans ce cas, on calcule le rel

et on dtermine un indice

pour lequel ce minimum

est atteint (i.e.

). Alors, la matrice B', obtenue partir de colonne Br par Ns, est une base ralisable. La solution de base

en remplaant le vecteur associe B' vrifie

De plus, on a , selon que (FS) soit de tupe maximisation ou minilisation. Ici, le point reprsente la solution de base ralisable associe B : . Il est intressant de remarquer que dans le cas o la base ralisable B est non dgnre, le paramtre est strictement positif. Sans aucun doute, le point construit possde, en cas de non dgnrescence, une valeur conomique strictement meilleure que celle de . + algorithme: /* On suppose que l'on dispose d'une base ralisable B */

while do choisir s telle que ws = wN es>0 if else calculer dterminer r pour lequel end if then optimum infini /* exit
*/

est atteint

/* Br est remplace par Ns */ /* Ns est remplace par Br */ Calculer wN end while Optimum atteint en /* Fin de l'algorithme */ + rgle du pivotage: Dans la pratique, le choix de ws est souvent multiple, il se peut que plusieurs composantes wN soient strictement positives. Etant donne que la nouvelle solution vrifie :

et il vaut Z

il serait commode de choisir la plus grande composante ws de wN strictement positive. Il arrive aussi que le minimum soit atteint pour deux ou plusieurs coordonnes diffrentes. Dans ce cas de figure, on fixe comme critre de choix pour l'indice r, la premire coordonne trouve j qui ralise le minimum . Pour des raisons de stabilit numrique et par analogie avec la mthode de Gauss avec pivot partiel, un autre critre de choix est souvent considr. Il consiste choisir r de faon ce que soit le plus lev parmi les lments strictement positifs. Le critre qui fixe le choix de ws et de l'indice r s'appelle rgle de pivotage . La rgle qui prend systmatique la plus grande valeur positive de wN

s'appelle rgle du meilleur cot marginal , c'est cette rgle que l'on adopte dans ce cours.