Réalisé par dirigé par: HADDOUCHE ASMA Mr LAYEB BOUHEDJA WAFA BELALA AMINA République Algérienne Démocratique et populaire Ministère de l’Enseignement.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1
Page 2
Ralis par dirig par: HADDOUCHE ASMA Mr LAYEB BOUHEDJA WAFA
BELALA AMINA Rpublique Algrienne Dmocratique et populaire Ministre
de lEnseignement Suprieur Et de la Recherche Scientifique Universit
Mentouri-Constantine Facult des Sciences de lIngnieur Dpartement
dInformatique LMD
Page 3
Plan Programmation Linaire Programmation Sparable Programmation
Quadratique Conclusion
Page 4
Programmation linaire Introduction Dfinitions Rsolution
Graphique La Mthode du Simplexe La dualit
Page 5
Introduction Loptimisation combinatoire consiste trouver
loptimum dune fonction dans un temps dexcution raisonnable. Les
mthodes de loptimisation combinatoire peuvent tre classes en
mthodes heuristiques et mthodes exactes. Dans le cas simple o la
fonction maximiser ou minimiser et toutes les contraintes sont du
premier degr, le problme prend le nom de programmation linaire. On
distingue dans la programmation linaire, la programmation linaire
en nombres rels, et la programmation en nombres entiers, pour
laquelle les variables sont dans IN.
Page 6
Programmation linaire Introduction Dfinitions Rsolution
Graphique La Mthode du Simplexe La dualit
Page 7
Dfinitions la programmation linaire(PL) : En mathmatiques, les
problmes de programmation linaire (PL) est la recherche de loptimum
(minimum ou maximum) dune fonction objectif linaire lies par des
quations ou inquations linaires appeles contraintes La fonction
objectif : on appelle fonction objectif dun problme doptimisation
le critre de choix entre les diverses solutions possibles. Les
contraintes : On appelle contraintes du problme toutes les
relations limitant le choix des valeurs possibles des
variables.
Page 8
Dfinitions Forme gnrale dun problme linaire: MAX (ou MIN): c 1
X 1 + c 2 X 2 + + c n X n a 11 X 1 + a 12 X 2 + + a 1n X n b 1 S.C
a 21 X 1 + a 22 X 2 + + a 2n X n b 2 .. a m1 X 1 + a m2 X 2 + + a
mn X n = b m x1 0, x2 0,........., xn 0 Matriciellement, le problme
peut secrire comme Max(ou Min) (z) = c T x, S.C Ax b, x 0. Avec : A
matrice (m n), b vecteur (m 1) c vecteur (n 1), x vecteur (n
1).
Page 9
Programmation linaire Introduction Dfinitions Rsolution
Graphique La Mthode du Simplexe La dualit
Page 10
Rsolution Graphique Exemple On va maximiser la fonction
suivante Max(z) = 1200 x1 + 1000 x2 sous les contraintes conomiques
3 x1 + 4 x2 160 6 x1 + 3 x2 180 et les contraintes de signe x1 0 ;
x2 0 Cette mthode n'est applicable que dans le cas o il n'y a que
deux variables de dcision (dactivit), un problme linaire peut tre
rsolu de manire graphique en suivant le processus en trois tapes :
1. Reprsentation graphique des contraintes et de la rgion
ralisable.
Page 11
Rsolution Graphique 2.Reprsentation de la fonction objectif. 3.
Dtermination le point optimum.
Page 12
Programmation linaire Introduction Dfinitions Rsolution
Graphique La Mthode du Simplexe La dualit
Page 13
La Mthode du Simplexe Introduction Une des mthodes les plus
connues pour rsoudre des programmes linaires en nombre rels est la
mthode du Simplex. En thorie, elle a une complexit non polynmiale.
Cependant, en pratique, il s'avre au contraire qu'il s'agit d'une
bonne mthode. Dfinition Un tableau Simplexe est constitu des
coefficients des quations algbriques Les coefficients de la
fonction objectif Les coefficients des variables dans le membre de
gauche des contraintes; Les coefficients du membre de droite.
LAlgorithme a. Prendre la forme dgalit du problme linaire. b. Soit
r lindice tel que max c j j //il donne la variable qui rentre Test
Si A ir 0 (Arrt anormal) (Si la colonne r est 0) (Z +) Si non c.
Soit lindice Min b i /A ir //A ir > 0 La ligne pivot d. Faire le
pivotage : la variable entrante prend la colonne de la variable
sortante dans le systme dquations, en ce compris dans lexpression
de la fonction objectif e. Test darrt Si c j 0 j Arrt normal si non
aller (b)
Page 14
La Mthode du Simplexe Exemple Max Z= 1200 x 1 + 1000 x 2 Max
Z=1200 x 1 +1000 x 2 3x 1 + 4x 2 160 3x 1 + 4x 2 + t 1 =160 6x 1
+3x 2 180 6x 1 +3x 2 +t 2 =180 x 1 0, x 2 0 x 1 0, x 2 0 Dans
lexemple : Les variables de base sont donc x 1, x 2 Les variables
hors base sont t 1, t 2 On slectionne la variable dans la Base
ayant le plus petit coefficient positif dans la colonne R.(la ligne
pivot) On slectionne la variable HB ayant le plus grand coefficient
positif dans la ligne D. (La colonne pivot )
Page 15
La Mthode du Simplexe On appelle lment pivot le coefficient
situ lintersection de la colonne pivot et de la ligne pivot (6). -
Amener un coefficient 1 la place du pivot en divisant la ligne
pivot - Les coefficients de la ligne du pivot sont diviss par le
pivot
Page 16
La Mthode du Simplexe La solution optimale : x 1 =16, x 2 =28,
Z=47200 Critre d'arrt des itrations: Si tous les coefficients de la
ligne D relatifs aux variables HB, sont ngatifs ou nuls, la
solution trouve est optimale
Page 17
Programmation linaire Introduction Dfinitions Rsolution
Graphique La Mthode du Simplexe La dualit
Page 18
Dfinitions forme dual Ou c et x sont des vecteurs de taille n,
b un vecteur de taille m, et A une matrice de taille. Intrt de la
Dualit Le problme dual possde de trs intressantes applications
conomiques. chaque contrainte primale correspond une variable
duale. Caractristique A tout programme linaire appel PRIMAL
correspond un programme linaire appel DUAL obtenu de la manire
suivante:
Page 19
La dualit Exemple A l'optimum, le primal et le dual sont lis
par les rgles suivantes: - les fonctions objectifs z et w ont la
mme valeur optimale - la valeur marginale d'une variable dans un
programme est gale l'oppos de la valeur optimale de la variable
associe dans l'autre programme et rciproquement. Solution
Page 20
Plan Programmation Linaire Programmation Sparable Programmation
Quadratique Conclusion
Page 21
Programmation Sparable Introduction Dfinition Algorithme de
rsolution des problmes sparables Exemple
Page 22
Introduction En informatique, la programmation non-linaire (
PNL) est une mthode permettant de rsoudre de nombreuses quations et
inquations dpendant d'un ensemble de paramtres contraintes sous la
forme d'une fonction maximiser ou minimiser. I l ya plusieurs
mthodes de rsolution de ce genre de problme, parmi ces mthodes on a
Les problmes sparables Les problme a contrainte linaire Dfinition
Des problmes sparables qui ne comportent que des fonctions non
linaires dune seule variable. Une fonction est sparable si elle
peut tre exprime comme la somme de fonctions d une seule variable :
f(x) = f j (x j ), j=1....n Ces problmes peuvent tre rsolus en
considrant une suite dapproximations linaires par morceaux des
fonctions non linaires dune seule variable.
Page 23
Programmation Sparable Introduction Dfinition Algorithme de
rsolution des problmes sparables Exemple
Page 24
Algorithme de rsolution des problmes sparables chaque fonction
non linaire dune seule variable est remplace par une approximation
linaire par morceaux. le problme approxim est alors rsolu par une
version spcialise de lalgorithme du simplexe traitant les problmes
linaire par morceaux. enfin, si la solution ainsi obtenue scarte
trop des relations non linaires originales, on raffine la
discrtisation autour de la solution optimale du problme approxim et
on itre.
Page 25
Programmation sparable Introduction Dfinition Algorithme de
rsolution des problmes sparables Exemple
Page 26
Exemple Min x 1 2 4x 1 2x 2 x 1 + x 2 4 S.C 2x 1 + x 2 5 -x 1 +
4x 2 2 x 1, x 2 0 Il sagit dun problme convexe car on minimise x 1
2 qui est une fonction convexe. La premire tape faire est de se
donner une borne infrieure et une borne suprieure la valeur que
pourra prendre la variable non linaire. Supposons ici que 0 x 1
2.5. Point O x 1 = 0 y = x 1 2 = 0 Point A x 1 = 1 y = x 1 2 = 1
Point B x 1 = 2 y = x 1 2 = 4 Point C x 1 = 2.5 y = x 1 2 = 6.25 On
construit alors une approximation linaire par morceaux de la
fonction en reliant par des segments de droite les points
dvaluation de la fonction. on obtient la courbe linaire par
morceaux indique par OABC de ce problme
Page 27
Exemple La deuxime tape on rsoudre le problme linaire par
morceaux. nous allons avoir recours la notion dpigraphe. en effet,
lorsque le problme est convexe, on peut remplacer la fonction
linaire par morceaux liant x 1 et y par son pigraphe comme fait ce
problme. On peut vrifier que lpigraphe correspond aux trois
ingalits suivantes : ce qui peut encore scrire comme suit y x 1 (1)
x 1 y 0 y 3x 1 -2 (2) 3x 1 y 2 y 4.5x 1 5 (3) 4.5x 1 y 5
Page 28
Exemple Il suffit alors de minimiser y. En effet, en minimisant
y avec la contrainte que ( x 1, y) appartienne lpigraphe, on se
retrouvera donc sur la limite infrieure de lpigraphe, donc sur la
courbe linaire par morceaux indique par OABC ce problme. ce dernier
est donc remplac par le suivant : Min y 4x 1 2x 2 x 1 + x 2 4 2x 1
+ x 2 5 S.C - x 1 + 4x 2 2 x 1 y 0 3x 1 y 2 4.5x 1 y 5 x 1, x 2 0
en rsolvant le problme approxim on introduit une erreur par rapport
la vraie fonction.Ainsi pour x 1 = 1.5, la fonction vraie x 1 2
vaut 2.25 alors que son approximation linaire par morceaux fournit
comme valeur 2.5. dou la ncessit de raffiner la discrtisation et
ditrer.
Page 29
Plan Programmation Linaire Programmation Sparable Programmation
Quadratique Conclusion
Page 30
Programmation Quadratique Introduction Problme daffectation
quadratique Mthodes de rsolution
Page 31
Introduction Dfinition Les problmes de programmation
quadratique sont des problmes d'optimisation o la fonction objectif
est quadratique et les contraintes sont linaires ou quadratiques.
En mathmatiques, une forme quadratique est une quation de degr deux
avec un nombre quelconque de variables. La forme gnrale dun problme
quadratique Soit. SC Q:matrice C:vecteur
Page 32
Programmation Quadratique Introduction Problme daffectation
quadratique Mthodes de rsolution
Page 33
Problme daffectation quadratique Le problme daffectation
quadratique consiste placer n units communiquant entre elle sur n
sites prdtermins. Entre une unit i place sur un site k et une unit
j place sur un site 1 se passe une interaction qui a un cot : c
ijkl. En gnral, ce cot est le produit du flux f ij entre les deux
units par la distance entre les deux sites d kl. Et le problme
consiste minimiser le cot total de limplantation des n units sur
les n sites Utilisation des mtaheuristiques pour ce problme Les
algorithmes volutifs: Des heuristiques telles que les algorithmes
gntiques ou les mthodes de recherche par dispersion ont galement
pris part la course la meilleure solution. Mais finalement, ils
noffrent, tous seuls, que peu de rsultats Et cest ainsi que sont ns
les algorithmes hybrides volutifs/recherche locale Mthodes de
recherche locale: La mthode qui a donn les meilleurs rsultats est
la mthode Tabou (La mthode Tabou robuste et La mthode Tabou
ractive)
Page 34
Programmation Quadratique Introduction Problme daffectation
quadratique Mthodes de rsolution
Page 35
Mthodes de rsolution 1. Optimisation avec contraintes : Parmi
les mthodes les plus importantes pour rsoudre ces problmes sont :
Rsolution par substitution Les conditions ncessaires doptimalit de
Karush Kuhn et Tucher(KKT) La mthode du Lagrangien 2. Optimisation
sans contraintes : Parmi les mthodes les plus importantes pour
rsoudre ces problmes sont des mthodes itratives : la mthode de
gradient conjugu (GC). la mthode de la plus forte pente (la mthode
de descente du gradient conjugu) Dans ces mthodes une itration
consiste calculer chaque tape x k+1 on fonction x k On manire
gnrale : X k+1 = X k +dt x 0 =(0,0): point de dpart X 0 donn d :
vecteur de direction. t : le pas de la mthode.
Page 36
Mthodes de rsolution 3. Dfinition : Soit f une fonction de R n
R, un vecteur d est une direction de descente en x sil existe T
> 0 tel que f(x +td) < f(x), t [0, T]. Tests darrts : ||g (x
k+1 )|| , 10 -2 ou || f (x k+1 ) f(x k ) || 4. La mthode de
gradient conjugu : 4.1 Introduction: mthode du gradient conjugu est
un algorithme pour la solution numrique des systmes particuliers
d'quations linaires, savoir ceux dont la matrice est symtrique et
dfinie positive. La mthode du gradient conjugu est une mthode
itrative, Cette mthode nutilise pas la minimisation
unidimensionnelle mais plutt des calculs directes, elle spcifique
la fonction quadratique.
Page 37
Mthodes de rsolution b) Algorithme de gradient conjugu : Soit x
0 : point de dpart (fix). *Posons k=0: Calculer: g 0 = f (x 0 ) = A
x 0 +b posons: d 0 = - g 0 * While g 0 0 A litration k calculer, on
est au point x k x k+1 = x k + k d k ; Avec : k = - g k T d k / d k
T A d k ; d k+1 = - g k+1 + B k d k ; B k = g k+1 T Ad k / d k T A
d k ; K: = k+1 ; End (while). *test darrt.
Page 38
Exemple : Opt f(x) = x 1 2 + 2x 2 2 -2x 2 2x 1 x 2. g(x) = (2x
1 2x 2, 4x 2 2x 1 2 ). H(x) = 2 -2 -2 4 H(x) est dfinie positive et
constant donc : f(x) est une fonction quadratique. k=0 : x 0 =
(0,0), d 0 = - g 0 = 0 -2 0 2 -2 0 k = - g k T d k / d k T A d k
=> 0 =-(0,-2) 2 /(0,2) -2 4 2 0 =1/4 x k+1 = x k + k d k => x
1 = (0,0)+1/4(0,2) x 1 = (0,1/2)
Page 39
Exemple on remplace x 1 = (0,1/2) dans la fonction g(x) =>
g(x 1 ) = (-1,0) 2 -2 0 2 -2 0 B k = g k+1 T Ad k / d k T A d k
=>B 0 = (-1,0) - 2 4 2 / (0,2) -2 4 2 B 0 = 1/4 d k+1 = - g k+1
+ B k d k => d 1 = (1,1/2) || g(x 1 ) || =1 > k =1 ; =1, x 2
=(1,1), g(x 2 ) =(0,0), || g(x 2 ) || =0 < La solution optimale
est x 2 =(1,1)
Page 40
Mthodes de rsolution Mthode de la descente du gradient conjugu
(la plus forte pente) : La descente de gradient dsigne un
algorithme d'optimisation, cette mthode utilise le principe de la
minimisation unidimensionnelle. Le principe dune mthode de descente
est de calculer les itrations x k+1 = x k + k d k, k > 0 tel que
: f(x k+1 )
Page 41
Exemple Min (x 1 2 +2x 2 2 -2x 2 2x 1 x 2 ) g (x) =(2x 1 2x 2,
4x 2 2 2x 1 ) d 0 = - g(x 0 ) k=0, x 0 (0,0) d 0 = - (0,-2)= (0,2)
X k+1 =x k + k d k X 1 =x 0 + 0 d 0 => (0,0)+ 0 (0,2)= (0,2 0 )
Min f(0,2 0 ) = Min(8 0 2, - 4 0 ) f `( 0 ) = (16 0 - 4)= 0 => 0
= 1/4 x 1 = (0, 2 0 ) = (0, 1/2) Test darrt : g(x 1 ) = (-1,0)
=> || g(x 1 ) || = 1 > (le test darrt nest pas vrifi) k=1 : x
2 = (1/2,1/2) k=2 : x 3 = (1/2,3/4) . k=17: x 18 = (511/512,
511/512) => || g(x 18 )|| = 0.003