Sei sulla pagina 1di 5

* Mtodo del Gradiente:

Si f es una funcin de dos variables x y y existen, entonces el gradiente de f denotado por f esta
definido por:
f(x, y) = fx(x, y)i + fy(x, y)j
Una herramienta utilizada para estudiar mnimos es la serie de Taylor, que es una aproximacin
polinomial dada por:
f(x+p)=c0+c1p+c2p2+c3p3+c4p4+c5p5+
donde x es un punto y p es un incremento de x en alguna direccin.
Existen condiciones necesarias para determinar un mnimo, estas estn relacionadas con el
gradiente f y el Hessiano 2f.
* Condicin necesaria de primer orden
Si x* es un mnimo local y f es diferenciable en una vecindad de x* entonces f(x*)=0.
Supongamos por contradiccin que f(x*)0. Definimos el vector p=-f(x*) y notamos que:
pTf(x*)=- f(x*)2<0
Dado que f es continuo cerca de x*, existe un escalar T>0 tal que:
pTfx*+tp<0 t[0, T]
Para algn t[0, T], tenemos que la serie de Taylor nos da:
f(x*+tp)=f(x*)+tpTf(x*+tp)
f(x*)-tpTf(x*+tp)>f(x*)
Por lo tanto f(x*+tp)<f(x*) para toda t(0, T]. Tenemos una contradiccin, hemos encontrado una
direccin que se aleja de x* y f decrece, por locual, x* no es un mnimo local. Llamaremos x* a un
punto estacionario si f(x*)=0.
* Condicin necesaria de segundo orden
Si x* es un mnimo local de f y 2f es continua en la vecindad de x*, entonces
fx*=0 y 2f2(x*) es definida semi positiva.
Por contradiccin, asumimos que 2f(x*) no es definido positivo. Entonces seleccionamos un
vector p tal que pT2f(x*)p<0 para todo t [0, T].
f(x*+tp)=f(x*)+ tpTf(x*+tp)+12t-2pT2f(x*+tp)p
fx*+12t-2pT2fx*+tpp>fx*
Por lo tanto fx*+tp<fx* por lo cual f(x*) no es un mnimo.
Ejemplo:
Dada la funcin f(x, y)=x2+y2+5xy+2x-3y-20 determinar: La expresin del gradiente f(x, y), la
expresin del Hessiano 2f(x, y) y el punto de inflexin.
El vector gradiente queda como:
f(x, y)=2x+5y+22y+5x-3
La matriz Hessiana es 2f(x, y)=2552
El punto extremo lo calculamos resolviendo el sistema de ecuaciones
2552xy=-23
La solucin es x=1921 y y=-1621 . El determinante del Hessiano det(2f(x, y)) = -21 por lo cual se
trata de un mximo.
* Mtodo de Newton:
Consideremos que la funcin f es de clase dos, es decir que la segunda derivada puede ser
calculada. La idea consiste en reemplazar en la vecindad del punto xk de la funcin f por una
aproximacin cuadrtica q(x) dada por
q(x)=f(xk)+fT (xk)(x-xk)+12(x-xk)T2f(xk)(x-xk)
llamaremos a xk+1 el mnimo deq(x). Para calcularlo, es necesario que la matriz 2fxk sea una

matriz definida positiva.


La funcin q(x) es entonces estrictamente convexa y tiene un mnimo nico en xk+1 dado por
q(xk+1)=0
Esto da lugar sistema lineal de ecuaciones:
f(xk)=-2f(xk)(xk+1-xk)
La solucin para xk+1 es el mnimo, lo cual da lugar a la recurrencia
(1) xk+1=xk-[ 2fxk]-1 f(xk)
Una propiedad importante de este mtodo es que converge en un solo paso cuando se tiene una
funcin estrictamente cuadrtica.
Dada una funcin cuadrtica
fx=12xTAx+xTb+c
el gradiente lo podemos calcular como f(x)=Ax+b y el Hessiano es 2f(x)=A. Si sustituimos en
la ecuacin (1) tenemos
=xk-A-1(Axk+b)
xk+1=xk-xk-A-1b
xk+1 = -A-1b
Ejemplo
Dada la funcin f(x)=10x12+x22 y un punto inicial x0=[1, 2]T , calcular el mnimo utilizando el
algoritmo de Newton.
Para esta funcin el gradiente es fx=20x12x2
y el Hessiano es:
Ax=20002
Aplicando la ecuacin (1) tenemos
xk+1=-20002-100=00
* Direcciones Conjugadas:
La experiencia ha demostrado que las direcciones llamadas conjugadas son mucho ms efectivas
como direcciones de bsqueda que otras como pueden ser la bsqueda univariante o las direcciones
ortogonales.
Dos direcciones si y sj se dice que son conjugadas una con respecto a la otra si: piTApj =0
En general un conjunto de n direccionesde bsqueda linealmente independientes s0, s1, s2,, sn-1
se dice que son conjugadas con respecto a una matriz definida positiva Q si
piTApj =0 0 i j n-1
Para una funcin cuadrtica f(x) de n variables, para la cual H es una matriz Hessiana constante est
garantizado que se obtiene el ptimo en n etapas de bsqueda unidireccional si se obtiene
exactamente el mnimo de cada etapa.
Dado un punto inicial x0Rn y un conjunto de direcciones {p0, p1, . . . , pn-1}. Consideraremos la
siguiente secuencia generadora {xk}
xk+1 =xk+kpk
donde k es el minimizador de la funcin cuadrtica () a lo largo de xk+pk dada explcitamente
por
k=-rktpkpktApk
Teorema
Para cualquier x0Rn la secuencia {xk} generada por el algoritmo de direcciones conjugadas
converge a la solucin x* de un sistema lineal en al menos n pasos.
x* - x0 =0p0+1p1+ . . . +n-1pn-1
para algn escalar k. Premultiplicando la expresin por pktA y utilizando la propiedad del
conjugado tenemos:
k=pktAx*-x0pktApk
Ahora estableceremos el resultado mostrando que este coeficiente coincide con la longitud de paso

k.
Si xk es generado por la sucesin xk+1=xk+kPk tenemos:
xk=x0+0p0+1p1+ . . . +k-1pk-1
Pre multiplicando esta expresin por pktA y utilizando la propiedad del conjugado tenemos:
pkTAxk-x0=0 y por lo tanto:
comparando ambasrelaciones tenemos que k=k.
Hay una interpretacin simple de las direcciones conjugadas. Si la matriz A es diagonal los
contornos de la funcin son elipses cuyos ejes estn alineados con los ejes coordenados.
Cuando A no es una diagonal, sus contornos son elpticos, pero ellos no estn alineados en la
direccin de los ejes coordenados. La estrategia de minimizaciones sucesivas a lo largo de estas
direcciones no da una solucin en n iteraciones.
* Mtodo de Gradiente Conjugada:
Asumiremos que minimizaremos una funcin cuadrtica de la forma:
x=12xTAx+bx+c
La idea del mtodo es construir progresivamente direcciones p0, p1, . . . , pK las cuales son
conjugadas respecto a la matriz A de la forma cuadrtica. En cada estado K la direccin PK es
obtenida por la combinacin lineal del gradiente -q(xK) en cada posicin xK y las direcciones
previas p0, p1, . . . , pK-1.
Llamemos qk =q(xk) el gradiente de la funcin q en xk1.
El algoritmo de gradiente conjugado, requiere de la siguiente sucesin para calcular las direcciones
conjugadas pk+1=-rk+1+k+1pk con un parmetro k+1= rk+1TApkpkTApk , pero
debemos mostrar que estas expresiones crean direcciones conjugadas.
Por definicin tenemos que las direcciones conjugadas cumplen con:
(2) pk+1TApk =0
y tenemos que:
(3) pk+1=-rk+1+k+1pk
Sustituyendo (2) en(3) tenemos:
(-rk+1+k+1pk)TApk=0
(-rk+1T+k+1pkT )Apk= 0
-rk+1TApk+k+1pkTApk=0
k+1=rk+1TApkpkTApk
Con lo cual se muestra que la sucesin si produce direcciones conjugadas. Una expresin
equivalente para el ancho de paso es:
k=rkTpkpkTApk
mostrar que es equivalente a:
k=-rkTpkpkTApk
Tenemos que pk=-rk+kpk-1 podemos escribir:
k=-rkTpkpkTApk
k=rkT(-rk+kpk-1)pkTApk
k=rkTrkpkTApk-krkTpk-1pkTApk
Dado que (p0, p1, . . . , pk-1) son mutuamente conjugados xk es el mnimo de (x) en la direccin
pk-1 as que:
rkTpk-1=0
con lo cual:
k=rkTpkpkTApk
Una expresin equivalente para k+1 es:
k+1=rk+1Trk+1rkTrk=rk+1TApkpkTApk
Recordemos que

rk=Axk+b
Notemos que:
(4) rk+1-rk=A(xk+1-xk)=kApk
Si multiplicamos por rk+1T la ecuacin (4) y despejamos, tenemos:
rk+1TApk=1krk+1T(rk+1-rk)
Sustituyendo el valor de k:
rk+1TApk=pkTApkrkTrkrk+1T(rk+1-rk)
reordenando trminos tenemos
rk+1TApkpkTApk=rk+1T[rk+1-rk]rkTrk
Lo cual finalmente demuestra que:
k+1=rk+1Trk+1rkTrk
* Mtodo de la mtrica variable:
Tambin llamados mtodos Cuasi Newton-Raphson, son los mtodos de minimizacin ms
eficientes. Los nuevos puntos se obtienen segn el algoritmo del mtodo de Newton-Raphson,
(5) x k+1=xk-dmaxBxkg(xk)
en donde, B es H-1, la inversa del hessiano. Como siempre, dmax vuelve a ser el mximode los
valores absolutos de las componentes del vector
dk=H-1xkg(xk). En los mtodos de mtrica variable realmente no se calcula el hessiano ni su
inversa, sino que se va construyendo una aproximacin a l teniendo en cuenta los pasos anteriores
de la minimizacin, de forma parecida a como se hace en los mtodos de gradientes conjugados.
La direccin de bsqueda se determina mediante la frmula (5), donde la matriz B se calcula
mediante el mtodo DFP (Davidon-Fletcher-Powell), o el mtodo BFGS (Broyden-FletcherGoldfarb-Shanno) segn el que se haya empleado, salvo en el primer paso. En ste se usa como
hessiano la matriz identidad, resultando as este primer paso anlogo a los del mtodo de Mxima
Pendiente. Existen versiones de los mtodos de mtrica variable que comienzan con un hessiano
cuyas componentes son valores medios de constantes de fuerza, determinados
espectroscpicamente o calculados por va terica para cada tipo de enlace, aunque esta estimacin
inicial del hessiano slo se puede efectuar en coordenadas internas. Tras la determinacin de la
direccin, sigue la minimizacin lineal por deslizamiento, de la misma forma que en los dems
mtodos estudiados.
La gran ventaja de los mtodos de mtrica variable es que en pocos pasos podemos llegar a tener
una buena aproximacin del hessiano, sin perder tiempoen calcularlo rigurosamente. Por ello son
los mtodos ms eficaces para la optimizacin geomtrica.
* Mtodo de Davidon-Fletcher-Powell:
Este es un mtodo cuasi-Newton, para minimizar una funcin f en Rn. Consiste en generar
aproximaciones sucesivas de la inversa del Hessiano de la funcin f.
Este mtodo ha sido y sigue siendo una tcnica de gradiente ampliamente utilizada. El mtodo
tiende a ser robusto; esto es, tpicamente tiende a tener un buen comportamiento en una amplia
variedad de problemas prcticos. La mayor desventaja de este tipo de mtodos es su necesidad de
almacenar la matriz A de NN.
Definamos
gk := f(xk)
Hk := aproximaciones de la inversa del Hessiano en xk
dk := -Hkgk
qk := gk+1-gk
pk :=xk+1-xk
En cada iteracin se genera
xk+1=xk+kdk

con k=argm0 f(xk+dk).


El procedimiento es el siguiente:
* Partir con cualquier matriz H0 definida positiva y algn x0, con k=0.
* Tomar dk=-Hkgk.
* Calcular _k=argm0 f(xk+dk) y obtener xk+1, pk y gk+1.
* Tomar qk := gk+1-gk y
Hk+1=Hk+pkpkTpkTqk-HkqkqkTHkqkTHkqk
k=k+1 y retornar al paso 1.
* Algoritmo de Cuasi-Newton:
En cada iteracin del mtodo de Newton es necesario calcular la inversa de la matriz hessiana de f
en xk de manera exacta, lo que es costoso computacionalmente, O(n3) operaciones aritmticas. Por
estorazn, se propone un mtodo iterativo de la forma:
xk+1=xk-tkSkgk gk=f(xk) (2)
donde Sk es una matriz que aproxima a 2fxk-1 y tk0 minimiza
f sobre xk-gk para 0 (paso exacto o aproximado).
Se presentarn dos mtodos que permiten construir iterativamente la matriz Sk de manera que se
verifiquen las siguientes condiciones:
i) Definida Positiva: Si Sk es definida positiva Sk+1 tambin lo es
ii) Aproximacin de la matriz hessiana inversa de
f:xkx , Sk 2fxk-1 para k.

Potrebbero piacerti anche