Vous êtes sur la page 1sur 18

Compte rendu du TP

Optimisation Continue et Discrète

Réalisé par :
Mensouri Sanae
Vall Kheir D’heib
1A-ENRJ G-E2
Objectif : Ce TP consiste à mettre l’accent sur la programmation et
l’illustration graphique de la progression des algorithmes du gradient, gradient
projeté et Uzawa.

1.Implémentation de l’algorithme du gradient :


Dans cette première partie, on souhaite déterminer les valeurs de x et y
permettant de minimiser la dépense d’énergie par un procédé industriel lors
d’un cycle de fonctionnement qui est paramétré par la fonction :

Une première approche consiste à utiliser un algorithme du gradient à pas fixe.


Le script Matlab de cet algorithme est le suivant :
L’exécution de ce code nous donne la figure suivante :
Observations :
On remarque que les minimums de la fonction, représentés
par des croix vertes, e situent dans la partie verdâtre et
bleuâtre de la figure comme suivant :

Remarque :
Le pas doit être choisi judicieusement. Un pas trop grand
pourrait conduire à une divergence de l’algorithme. Le graphe
suivant le démontre :
Résultat pour ρ = 10
Cependant, comme le montre notre première figure, le résultat reste
assez long. Il est donc indispensable d’optimiser le pas pour gagner
en rapidité.
Comment y remédier ?
La solution proposée par l’énoncé serait d’adapter le pas à chaque
itération afin de garantir aussi bien la convergence que la
décroissance de la fonction f tout en maximisant la rapidité de la
méthode.
Pour cela on calcule :

On sélectionne le meilleur choix et on met à jour le pas comme le


développe l’énoncé.
Le script Matlab© après modification est le suivant :
L’exécution du script nous donne la figure suivante :
Observations :
La fonction f est bien décroissante et convergente. Cependant, cette méthode
s’avère plus rapide dans tous les endroits.

Conclusion :
L’algorithme du gradient à pas variable est rapide et efficace par rapport à celui
à pas fixe.

2- Implémentation de l’algorithme du gradient


projeté :
On souhaite à présent que la solution trouvée respecte la contrainte : AX ≥ b
Avec X = (x, y), A = [−1 1], b = 1
Le domaine de recherche K = {(x, y): AX ≥ b} est convexe car il est facile de voir
que tout segment reliant deux points situés dans ce plan y est entièrement
contenu.
On détermine à l’aide des conditions de Kuhn et Tucker, l’opérateur de
projection de X sur K :

On a :

Avec la contrainte AX = b on a :

Le théorème de Kuhn et Tucker donne la condition nécessaire de minimum :


La dérivée de L par rapport à X étant nulle, implique :

On modifie maintenant l’algorithme à pas variable pour prendre en compte


cette contrainte :
Le résultat obtenu est le suivant :
Observations :
La contrainte est représentée par une ligne bleue. On observe que tous les
points rouges sont au-dessus de cette ligne, que la fonction f toujours décroit
et que l’algorithme converge.

Conclusion :
L’algorithme est donc fonctionnel.
Conclusion :
La contrainte est bien respectée puisque les croix vertes sont bien au-dessus
de la courbe.
Tout compte fait, d'après le graphe obtenu, on peut conclure que le
programme d'Utawa combine la rapidité et l'efficacité.

Vous aimerez peut-être aussi