Académique Documents
Professionnel Documents
Culture Documents
Optimizacin ICS1113
ProgramacinNoLineal_2 Lineal 2
1 semestre2010 Profesor:PamelalvarezM.
ProgramacinNoLineal
Laestructurageneraldeunmtododedescensoes: Inicializacin,k=0: Seleccionarunpuntodepartidax0
Iteracink:
f ( x k ) = 0 entoncesxk esunpuntoestacionario:finalizar Si
Determinarunadireccindedescensodk paraf enxk. Determinarunpasok >0talquef(xk+1)= f(xk+ k dk )< f(xk). D fi i xk+1= xk+k dk eincrementar Definir i t el lndice di k. k
ICS1113.Prof.:PamelalvarezM.
ProgramacinNoLineal
MtododelGradienteoDescensomspronunciado ContribucindelmatemticofrancsCauchy.
Algoritmo: 1. 2 2. 3. 4 4. 5. 6. Seax0 Rn unpuntoinicial,k =0. Sif(xk)=0 0,STOP,esunpuntoestacionariodef Determinarunadireccindedescenso M Moverse enesadi direccin i . Determinarelnuevopunto. Hacerk = k +1,ira2.
ICS1113.Prof.:PamelalvarezM. 3
ProgramacinNoLineal
MtododelGradienteoDescensomspronunciado Paracompletarnuestroalgoritmotenemosqueresponder: Comoyasealamosdebemosescogeralgunadireccind talque:
ICS1113.Prof.:PamelalvarezM.
ProgramacinNoLineal
MtododelGradienteoDescensomspronunciado Direccind paraelmtododelgradiente: Aqucorrespondef(x0)? Direccin de d mximo crecimientod del laf funcin enel lpunto. Recordemosquenuestroproblemaesdeminimizacin. Escogerladireccindemximodecrecimiento,entonces:
d=-f(xk)
ICS1113.Prof.:PamelalvarezM.
ProgramacinNoLineal
MtododelGradienteoDescensomspronunciado Ahoracmodeterminaelpaso. Determinarelmnimorelativodef enesadireccin. Esdecir, d sed debe b encontrarel l queminimicef(xk+1) Problemaunidimensional. Resolver:
ICS1113.Prof.:PamelalvarezM.
ProgramacinNoLineal
MtododelGradienteoDescensomspronunciado Nuestroalgoritmofinalmentees: 1. 2. 3. 4 4. 5. 6 6. Seax0 Rn unpuntoinicial,k =0. Sif(xk)=0,STOP,esunpuntoestacionariodef Sealadireccindedescensod=-f(xk) Resolvermin{f(x+ d): >0} . Seak susolucin solucin. Seaxk+1=xk+ k dk. H Hacer k = k +1,ir i a 2 2.
ICS1113.Prof.:PamelalvarezM.
ProgramacinNoLineal
MtododelGradienteoDescensomspronunciado Esrealizablecomputacionalmentenuestroalgoritmo? Criteriosdeparada:
f ( x k )
x k +1 x k
f ( x k +1 ) f ( x k )
Mximo nmero de iteraciones.
ICS1113.Prof.:PamelalvarezM.
ProgramacinNoLineal
MtododelGradienteoDescensomspronunciado
x*
x3 x2
x1
x0
ICS1113.Prof.:PamelalvarezM. 9
ProgramacinNoLineal
Ejemplo:
Min
1 1. 2.
f ( x, y ) = x 2 + 2 x + 2 y 2 + 3
Resuelva con el mtodo del gradiente partiendo del punto (0,0). (0 0) Resuelva con el mtodo del gradiente partiendo del punto (1,1). Debe hacer por lo menos 2 iteraciones completas.
ICS1113.Prof.:PamelalvarezM.
10
ProgramacinNoLineal
MtododelGradienteoDescensomspronunciado Cmoeslaconvergenciadelmtodo? Podraserextremadamentelenta,dependerdelafuncin objetivo.
Curvasdenivelmselpticas Curvasdenivelcirculares
ICS1113.Prof.:PamelalvarezM.
11
ProgramacinNoLineal
La convergencia del mtodo del gradiente depende de un parmetro , que se calcula a partir de los valores propios de la matriz hessiana. Mientras el parmetro sea ms cercano a 0, el mtodo converge ms rpido.
n 1 = + n 1
ICS1113.Prof.:PamelalvarezM.
12
ProgramacinNoLineal
Tiene relacin con la excentricidad de las curvas de nivel. nivel Tambin podemos ver que si vamos a minimizar una funcin cuadrtica simple de la forma:
f ( x, y ) = ax 2 + by 2
Con a y b>0 Cmo ser la convergencia para distintos valores de los parmetros? (Tarea)
ICS1113.Prof.:PamelalvarezM.
13
ProgramacinNoLineal
MtododelGradienteoDescensomspronunciado Dijimosquelaconvergenciapodaserextremadamentelenta dependiendodelafuncinobjetivo. Sepuedemejorar? AqutenemoselMtododeNewton
ICS1113.Prof.:PamelalvarezM.
14
ProgramacinNoLineal
MtododeNewton Sepuedeaproximarlafuncinf entornoaxk,atravsdeuna expansindeTaylorde2grado.
q ( x) = f ( x
) + f ' ( x )( x x ) +
k k
f '' ( x
)( x x )
2
k 2
Porquestafuncinesunabuenaaproximacinparaf ?
1.
q ( xk ) = f ( xk )
2. 3.
ProgramacinNoLineal
MtododeNewton Seminimizalafuncinq.
dq = f ' ( x k ) + f '' ( x k )( x x k ) = 0 dx
Despejandoobtenemos:
x k +1 = x k
f '' ( x k )
f ' ( xk )
ICS1113.Prof.:PamelalvarezM.
16
ProgramacinNoLineal
MtododeNewton Algoritmo: 1. 2. 3. 4 4. 5. 6 6. Seax0 Rn unpuntoinicial,k =0. Sif(xk)=0,STOP,esunpuntoestacionariodef Seadk = [Hf(xk)]-1f(xk) Resolvermin{f(x+ d): >0} . Seak susolucin solucin. Seaxk+1=xk+ k dk. H Hacer k = k +1,ir i a 2 2.
ICS1113.Prof.:PamelalvarezM.
17
ProgramacinNoLineal
MtododeNewton Ejemplo: Min
f ( x, y ) = x 2 + 2 x + 2 y 2 + 3
ICS1113.Prof.:PamelalvarezM.
18
ProgramacinNoLineal
MtododeNewton Estemtodoiterativotpicamenteseaproximasucesivamenteaun ptimolocal. Sinembargo,esposiblequetardeinfinitasiteracionesenlograrlo. Tambinpuedequenoconverja. Criteriosdeparada:
x k +1 x k f ( x k +1 ) f ( x k )
ICS1113.Prof.:PamelalvarezM.
19
ProgramacinNoLineal
MtododeNewton Esimportantesealarqueestemtodobuscapuntosextremos. Hayquerevisarelsignodelasegundaderivadadelafuncinencada punto. Mscomplejo. Introducirmodificacionesalmtodo.
ICS1113.Prof.:PamelalvarezM.
20
ProgramacinNoLineal
MtododeNewton Elclculoreiterativode[Hf(x f( k) )]-1 puederesultarmuycostoso..... IdeabsicadeunmtodoQuasiNewton: Trabajarconunamatrizqueseparezca parezca a[Hf(xk)]-1 Porejemplo,comenzarcon[Hf(xo)]-1 yactualizarlaparcialmenteen cadaiteracin.... Haydiversasformasdehacereso,esuntemaampliamenteabordado ylos osmtodos todosimplementados p e e tadose ene elsoftware so t a emoderno ode oincorporan co po a los os ltimosavancesenestesentido... Lasaproximaciones p hacenp perderalgo g delaconvergencia g cuadrtica, , perolagananciaeneficienciaesenorme.
ICS1113.Prof.:PamelalvarezM. 21