Routine in ambiente MATLAB per l'ottimizzazione non vincolata
Dicembre 22nd, 2021 | by Marcello Colozzo |Una routine dell'ing. Giuseppe Salza
Ci proponiamo di minimizzare una funzione
Il metodo della discesa del gradiente (Steepest descent) consiste nello scegliere un punto x0 in modo arbitrario e di procedere in modo iterativo come segue:
Dove
Codice MATLAB:
Esempio pratico:
Nella figura vogliamo trovare la x per cui è minima la
La soluzione, in forma chiusa, è
Il risultato, con sole 5 iterazioni è abbastanza deludente fornendo come soluzione:
Aumentando a 10 le iterazioni otteniamo
Ovviamente aumentando le iterazioni si raggiunge la soluzione entro la tolleranza richiesta (epsilon=0.001).
No TweetBacks yet. (Be the first to Tweet this post)
Articoli correlati