Sunteți pe pagina 1din 52

La Universidad del Zulia

Facultad de Ingeniera
Divisin de Estudios para Graduados
Programa: Computacin Aplicada
Asignatura:
Optimizacin para Ingenieros
Prof. Luis Zerpa, M.Sc.
Email: lzerpa@ica.luz.ve
3. Optimizacin sin restricciones
Condiciones de primero y segundo orden para la existencia de extremos
Bsqueda Lineal
Mtodos bsicos de descenso para funciones de varias variables
Derivada direccional
La derivada direccional permite tener informacin del
comportamiento de la funcin si sus variables se modifican
siguiendo el sentido indicado por el vector gradiente

La Derivada direccional de f en p segn el vector unitario
[ D

f(p) ] es el producto escalar del gradiente en p, por :


D

f(p) = Vf(p)
T


En qu sentido deberan desplazarse las variables de f, partiendo del
punto p, para que los valores de f crezcan ms rpidamente?
Derivada direccional
Como la rapidez est dada por : Vf(p)
T


En esta expresin se suponen ya conocidos f y p; faltando conocer
que haga mximo el producto escalar

Siendo Vf(p)
T
= |Vf(p)|. || Cos u = |Vf(p)|.(1). Cos u

Donde : u , es el ngulo formado por los vectores Vf(p) y

Vf(p)
T
, ser mximo si y slo si Cos u es mximo, sea cuando
u = 0 y Vf(p) con son colineales. Lo cual significa que el vector
unitario debe tener el mismo sentido que el vector gradiente de f
en p
( )
( ) p f
p f
V
V
=
significa que el vector gradiente de una funcin f en
un punto p, Vf(p), de su dominio se orienta en el
sentido en el cual f crece mas rpidamente
Gradiente
El gradiente de una funcin escalar de n variables f(x
1
, x
2
,, x
n
,),
denotado por Vf, es el vector n-dimensional




( )
( ) ( ) ( )
|
|
.
|

\
|
c
c
c
c
c
c
= V
n
x
x f
x
x f
x
x f
x f , , ,
2 1

El gradiente de una funcin en un
punto indica la direccin, a partir de
ese punto, en la que dicha funcin
crece ms rpidamente y, adems, la
direccin ortogonal a las curvas de
nivel de f (curvas en las que la funcin
tiene un valor constante)
-2 -1.5
-1 -0.5 0 0.5 1
1.5 2
-2
0
2
-20
-15
-10
-5
0
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Matriz Hessiano
El Hessiano de una funcin escalar de n variables f(x
1
, x
2
,, x
n
,),
denotado por H
f
, es la matriz de dimensin nxn








Una matriz cuadrada A es definida positiva si :

y es negativa si la desigualdad es la contraria

(
(
(
(
(
(
(
(
(
(
(

c
c
c c
c
c c
c
c c
c
c
c
c c
c
c c
c
c c
c
c
c
=
2
n
2
2 n
2
1 n
2
n 2
2
2
2
2
1 2
2
n 1
2
2 1
2
2
1
2
x
f

x x
f

x x
f
x x
f

x
f

x x
f
x x
f

x x
f

x
f

f
H
0 0 = > x Ax x
T
Optimizacin Sin Restricciones
Formulacin del problema de optimizacin
Cualquier problema de optimizacin, por complejo que sea, puede
expresarse en los siguientes trminos

Encontrar un vector x tal que se minimice una funcin objetivo f(x)
Sujeto a restricciones de la forma:



donde x es un vector de variables independientes

La funcin objetivo puede tener un solo mnimo, en cuyo caso se
denomina unimodal, o varios mnimos locales o globales, en cuyo
caso se denomina multimodal

( )
m 1,..., k
0 g
k
=
s x
Clasificacin de problemas de
optimizacin
De acuerdo a la forma de f(x) y las restricciones:
Programacin Lineal: f(x) y las restricciones son lineales
Programacin No-lineal: f(x) es no-lineal y las restricciones pueden ser
no-lineales
De acuerdo a la presencia o no de restricciones:
Optimizacin no restringida: El problema de optimizacin no tiene
restricciones
Optimizacin restringida: El problema de optimizacin tiene
restricciones
Segn su dimensionalidad:
Optimizacin unidimensional: funcin objetivo de una variable
Optimizacin multidimensional: funcin objetivo de varias variables
Segn el nmero de funciones objetivo:
Optimizacin con un objetivo: Una sola funcin objetivo
Optimizacin con mltiples objetivos: varias funciones objetivo

Clasificacin de problemas de
optimizacin
Existen varios mtodos para resolver un problema de optimizacin
Estos mtodos pueden agruparse en dos grandes clases:
Mtodos de optimizacin basados en derivadas
Mtodos de optimizacin no basados en derivadas
Mtodos de optimizacin basados en
derivadas
Mtodos bsicos de descenso
Son tcnicas bsicas utilizadas en la solucin iterativa de
problemas de minimizacin sin restricciones

Ofrecen la forma ms simple y directa de resolver estos problemas

Ofrecen en trminos prcticos una referencia con relacin a la
dificultad de implementacin y velocidad de convergencia

En general, las tcnicas avanzadas se comparan con estas tcnicas
bsicas

Estructura bsica de los mtodos bsicos
de descenso
1. Se inicia en un punto, x
0
2. Se determina la direccin de descenso mediante una regla fija
(Primera diferencia entre algoritmos)
3. Luego, se busca el mnimo en esa direccin (Bsqueda lineal)

La forma general de los mtodos bsicos de descenso se puede
expresar como,
d x x o + =
0 1
Bsqueda Lineal
Las tcnicas de bsqueda lineal son realmente procedimientos de
optimizacin para una sola variable, los cuales son realizados
repetidamente en problemas de varias variables
La eleccin de una direccin de bsqueda tiene un alto costo
computacional, es por ello que los mtodos de descenso basados
en gradiente sufren modificaciones con el objeto de minimizar o
reducir el nmero de clculos de gradiente, Hessiano, e inversin
de matrices
La modificacin fundamental consiste en reducir el problema a uno
de optimizacin a lo largo de la direccin de descenso
Bsqueda Lineal
Especficamente se debe resolver el sub-problema de
optimizacin:
Encontrar o, tal que




donde d es la direccin de descenso

Hallado el o ptimo se inicia una nueva iteracin de descenso
) (
min
d f +

o
o
1 i
x
Bsqueda Lineal
Este sub-problema es sensiblemente ms sencillo que la
optimizacin general ya que es un problema de una dimensin con
una nica variable, o
La eleccin de un mtodo adecuado de bsqueda lineal es de gran
importancia en un algoritmo de optimizacin
La bsqueda lineal es responsable de un alto porcentaje del costo
de la evaluacin de la funcin objetivo
Tipos de Mtodos de Bsqueda Lineal
Directos
Gradiente
Newton
Quasi-Newton
Secante

Interpolacin Polinmica
Cuadrtica
Cbica
DSC (Davies, Swann y
Campey)
Basados en intervalos
Biseccin
Bsqueda de Fibonacci
Bsqueda Dorada


Mtodos Inexactos
Armijo
Goldstein

Bsqueda de Fibonacci
Este mtodo determina el mnimo valor de una funcin f sobre un
intervalo cerrado [c
1
, c
2
]
Esta funcin puede estar definida en un dominio ms amplio, pero
el mtodo requiere que dicho intervalo de bsqueda sea definido
Se asume que f es unimodal
El mnimo es determinado (al menos aproximadamente) mediante la
evaluacin en un cierto nmero de puntos
Se pretende definir una estrategia de bsqueda que seleccione la
observacin siguiente basada en los valores funcionales de las
observaciones anteriores

Bsqueda de Fibonacci
Esto se define segn el siguiente problema:
Encontrar como seleccionar sucesivamente N observaciones, sin contar
con un conocimiento explcito de la funcin, de forma tal que podamos
encontrar la ms pequea regin de incertidumbre posible en donde se
encuentre el mnimo
Esta regin de incertidumbre es determinada en cualquier caso por:
las observaciones (sus valores funcionales) y la suposicin de que f
es unimodal.
Luego que encontremos los valores funcionales en N puntos dentro
del intervalo cerrado [c
1
, c
2
]
c
1
s x
1
s s x
N-1
s x
N
s c
2
La regin de incertidumbre es el intervalo [x
k-1
, x
k+1
] donde x
k
es el
mnimo de los N puntos evaluados. En ese intervalo se encuentra el
mnimo
Bsqueda de Fibonacci
La estrategia para seleccionar sucesivamente observaciones para
obtener la regin de incertidumbre ms pequea se describe a
continuacin:
d
1
= c
2
c
1
; es la amplitud inicial de la incertidumbre
d
k
es la amplitud de la regin de incertidumbre luego de k
observaciones
Si son realizadas N observaciones se tiene que
Donde F
k
son los nmeros de la secuencia Fibonacci generados por
la relacin:
F
N
= F
N -1
+ F
N -2
donde F
0
= F
1
= 1
Donde cada nmero despus de los dos primeros representa la
suma de los dos precedentes
1
1
d
F
F
d
N
k N
k
|
|
.
|

\
|
=
+
Bsqueda de Fibonacci
Procedimiento para la reduccin de la seccin de incertidumbre:
1. Especificar N, y calcular los nmeros de la serie Fibonacci {F
0
, F
1
,, F
N
}
2. Calcular
3. Colocar simtricamente desde los extremos del intervalo inicial a distancia
dos observaciones
4. De acuerdo a donde se encuentre la muestra con menor valor funcional se
determina la regin de incertidumbre,

5. La tercera muestra es colocada simtricamente dentro de este nuevo intervalo con
respecto a la observacin ya incluida en el intervalo, de forma tal que la amplitud de
la regin de incertidumbre sea
N
N
F
F
1
1
1
d
F
F
N
N
|
|
.
|

\
|

1
1
2
d
F
F
d
N
N
|
|
.
|

\
|
=

1
2
d
F
F
N
N
|
|
.
|

\
|

Bsqueda de la Seccin Dorada
Pertenece a los mtodos de bsqueda lineal basados en intervalos,
adems es una versin mejorada de la bsqueda de Fibonacci
En la bsqueda de la Seccin Dorada se usan tres valores de la
funcin para detectar el valor extremo, se toma un cuarto nmero, y
se determina donde ocurre el mnimo, en los primeros tres o los
ltimos tres valores
Se minimiza la evaluacin de la funcin objetivo al reemplazar los
valores anteriores con los nuevos, haciendo que se cumplan las
siguientes condiciones
2 1 0
l l l + =
1
2
0
1
l
l
l
l
=
x
l x
u
l
0
l
1
l
2
Primera
Iteracin
l
2
Segunda
Iteracin
x
l x
u
l
0
l
1
l
2
Primera
Iteracin
l
2
Segunda
Iteracin
Bsqueda de la Seccin Dorada
La primera condicin especfica
que la suma de las dos
sublongitudes l
1
y l
2
debe ser igual
a la longitud original del intervalo
La segunda indica que el cociente
o razn de las longitudes debe ser
igual
2 1 0
l l l + =
1
2
0
1
l
l
l
l
=
x
l
x
u
l
0
l
1
l
2
Primera
Iteracin
l
2
Segunda
Iteracin
x
l
x
u
l
0
l
1
l
2
Primera
Iteracin
l
2
Segunda
Iteracin
1
2
2 1
1
l
l
l l
l
=
+
1
2
l
l
R =
R
R
1
1 = + 0 1
2
= + R R
( )
61803 . 0
2
1 5
2
1 4 1 1
=

=
+
= R
La Razn Dorada
Bsqueda de la Seccin Dorada
1. Se comienza con los valores
extremos del intervalo x
l
, x
u
que
contienen el extremo local de f(x)
2. Dos puntos interiores de escogen
de acuerdo a
x
1
= x
l
+ d
x
2
= x
u
- d
3. Se evala la funcin en los dos
puntos interiores
Si f(x
1
) < f(x
2
) x
l
= x
2
; x
2
= x
1
;



Si f(x
2
) < f(x
1
) x
u
= x
1
; x
1
= x
2
;

x
l
x
u
l
0
l
1
l
2
Primera
Iteracin
l
2
Segunda
Iteracin
x
l
x
u
l
0
l
1
l
2
Primera
Iteracin
l
2
Segunda
Iteracin
( )
l u l
x x x x

+ =
2
1 5
1
( )
l u u
x x x x

=
2
1 5
2
( )
l u
x x d

=
2
1 5
x
1
x
2
x
u
x
1
x
l
Ajuste Cuadrtico (Mtodo DSC, Davies,
Swann y Campey)
El mtodo DSC es un mtodo de
bsqueda lineal por ajuste de
curvas (interpolacin polinmica),
es recomendado para determinar
la regin donde se encuentra el
mnimo en funciones de una sola
variable
En la bsqueda unidimensional
DSC, se toman pasos cuya
dimensin se va incrementando
sucesivamente hasta que el
mnimo es sobrepasado y luego
se realiza una interpolacin
cuadrtica
x
(m-3)
1
Ax 2Ax 4Ax 8Ax
x
(m-2)
x
(m-1)
x
(m+1)
x
(m)
2
3
4
6
5
f(x)
x
(m-3)
1
Ax 2Ax 4Ax 8Ax
x
(m-2)
x
(m-1)
x
(m+1)
x
(m)
2
3
4
6
5
f(x)
Ajuste Cuadrtico (Mtodo DSC, Davies,
Swann y Campey)
1. Se evala f(x) en el punto inicial x
(0)

- Si f(x
(0)
+ Ax) s f(x
(0)
), pase al paso 2
- Si f(x
(0)
+ Ax) > f(x
(0)
), haga
Ax = Ax/2 y repita el paso 1
2. Calcule x
(k+1)
= x
(k)
+ Ax
3. Calcule f(x
(k+1)
)
4. Si f(x
(k+1)
) s f(x
(k)
), duplique Ax
(Ax = 2Ax) y regrese al paso 2 con k =
k+1
Si f(x
(k+1)
) > f(x
(k)
), denote x
(k+1)
como
x
(m)
, x
(k)
como x
(m-1)
, etc., se reduce Ax a
la mitad y se regresa al paso 2 y 3 para
un solo clculo adicional
x
(m-3)
1
Ax 2Ax 4Ax 8Ax
x
(m-2)
x
(m-1)
x
(m+1)
x
(m)
2
3
4
6
5
f(x)
x
(m-3)
1
Ax 2Ax 4Ax 8Ax
x
(m-2)
x
(m-1)
x
(m+1)
x
(m)
2
3
4
6
5
f(x)
Ajuste Cuadrtico (Mtodo DSC, Davies,
Swann y Campey)
5. De los 4 valores igualmente
espaciados de x en el conjunto
{x
(m+1)
, x
(m)
, x
(m-1)
, x
(m-2)
}, descarte
x
(m)
o x
(m-2)
, el que est ms lejano
de la x de menor valor funcional.
Los tres valores restantes del
conjunto pueden ser denotados
como x
(a)
, x
(b)
, x
(c)
, donde x
(b)
es
el punto central y
x
(a)
= x
(b)
- Ax y x
(c)
= x
(b)
+ Ax
6. Se realiza una interpolacin
cuadrtica para estimar x* (el
valor de la variable independiente
correspondiente al mnimo de f(x))
x
(m-3)
1
Ax 2Ax 4Ax 8Ax
x
(m-2)
x
(m-1)
x
(m+1)
x
(m)
2
3
4
6
5
f(x)
x
(m-3)
1
Ax 2Ax 4Ax 8Ax
x
(m-2)
x
(m-1)
x
(m+1)
x
(m)
2
3
4
6
5
f(x)
( )
( )
( )
( )
( ) | |
( )
( )
( )
( )
( )
( ) | |
c b a
c a
b
x f x f x f
x f x f x
x x x
+

+ = ~
2 2
*

*
A

donde Ax = x
(a)
- x
(b)

Ajuste Cbico
Dados x
k-1
y x
k
junto a f(x
k-1
), f (x
k-1
), f(x
k
), y f (x
k
) es posible ajustar
una ecuacin cbica en los puntos

El punto x
k+1
(mnimo) puede ser determinado como el punto mnimo
relativo de esta ecuacin cbica
( )
( )
( ) ( )
(

+
+
=

+
2 1
1 2
1 1
2 ' '
'
u x f x f
u u x f
x x x x
k k
k
k k k k
( ) ( )
( ) ( )
( ) ( ) | |
2
1
1
2
1 2
1
1
1 1
' '
3 ' '
k k
k k
k k
k k
x f x f u u
x x
x f x f
x f x f u

+ =
donde,
Mtodo del Gradiente
Supongamos que f(x) es una funcin de una variable a ser
minimizada y que f(x) y f (x) existen
x
k+1
= x
k
f (x
k
)
Un factor de escalamiento es empleado para escalar el gradiente
x
k+1
= x
k
of (x
k
) Mtodo del gradiente modificado

El valor de o e (0,1], es decir, es un parmetro
ajustable seleccionado por el usuario
Es deseable que o decrezca a medida que
progresa la bsqueda, lo que hace que
tengamos dos parmetros por ajustar: o
0
y la
tasa de disminucin de o
Con el mtodo de Newton tales parmetros son
calculados directamente en cada iteracin
x
k
f(x)
x
k+1
f(x)
x
k
f(x)
x
k+1
f(x)
Mtodo de Newton
Supongamos una funcin f de una variable a ser minimizada y
supongamos que en x
k
es posible evaluar f(x
k
), f (x
k
) y f (x
k
)
Entonces es posible construir una funcin cuadrtica a partir del
desarrollo de Taylor:


Se puede estimar x
k+1
determinando el punto donde la derivada de q
se hace cero
( ) ( ) ( ) ( ) ( )( )
2
' '
2
1
'
k k k k k
x x x f x x x f x f x q + + =
( ) ( ) ( )( ) 0 ' ' ' '
1 1
= + =
+ + k k k k k
x x x f x f x q
( )
( )
k
k
k k
x f
x f
x x
' '
'
1
=
+
x
k
x
k+1
f(x)
x
k
x
k+1
f(x)
Mtodo de Newton
Implementacin
Para la implementacin de este mtodo en una funcin de varias
variables es necesario calcular la primera y segunda derivada de la
funcin como derivadas direccionales, obteniendo un valor escalar,
de la siguiente manera,






donde d es el vector unitario de la direccin de descenso
( ) ( ) d x f x f
k k

V = '
( ) ( ) d x H d x f
k
T
k

= ' '
Mtodo Quasi-Newton
Cuando no es posible evaluar analticamente las primeras y
segundas derivadas, se pueden emplear mtodos de diferencias
finitas para calcularlas:
( )
( ) ( )
( )
( ) ( ) ( )
2
2
' '
2
'
x
x x f x f x x f
x f
x
x x f x x f
x f
A
A A
A
A A + +
=
+
=
Bsqueda Lineal Inexacta
En la prctica no se determina el mnimo de la bsqueda lineal en
forma exacta
En este sentido, es deseable sacrificar precisin en la bsqueda
lineal con el propsito de favorecer el tiempo de computo general
Recordemos que el mnimo en una bsqueda local no tiene porque
ser el mnimo de la funcin
La imprecisin es generalmente introducida simplemente
terminando la bsqueda lineal antes de que converja
La naturaleza exacta de la imprecisin depende de:
La tcnica de bsqueda empleada
El criterio de parada
Bsqueda Lineal Inexacta
Criterios de terminacin de la bsqueda lineal
Prueba de porcentaje: Sea x
k+1
= x
k
+ od; este criterio determina o
para estar dentro de un porcentaje del verdadero valor
Especficamente, se selecciona una constante c tal que 0 < c < 1
(tpicamente c = 0.1) y el parmetro o en la bsqueda lineal es
determinado de forma tal que satisfaga |o - o*| co* donde o* es el
verdadero valor de minimizacin

Bsqueda Lineal Inexacta
Regla de Armijo
Primero garantiza que o no sea muy grande y luego que no sea
muy pequeo

La regla de Armijo es implementada al considerar la funcin
|(0) + c |(0)o para 0 < c < 1
Esta funcin est representada por la lnea segmentada en la figura

( ) ( )
k k
d x f o o | + =
Intervalo aceptable
|
o
Intervalo aceptable
|
o
Bsqueda Lineal Inexacta
Regla de Armijo
Un valor de o se considera que no es muy grande si el valor de la
funcin cae debajo de la lnea punteada; es decir, si
|(o) s |(0) + c |(0) o
Para asegurar que o no sea muy pequeo, se selecciona un valor
de q > 1, y se considera que o no es muy pequeo si
|(qo) > |(0) + c |(0) qo ,
Intervalo aceptable
|
o
Intervalo aceptable
|
o
Esto quiere decir que si o es aumentado por un
factor q, falla el criterio anterior que requera
que el valor de la funcin estuviera por debajo
de la lnea punteada
La regin aceptable definida por la regla de
Armijo en la figura corresponde a un valor de q
igual a 2
Bsqueda Lineal Inexacta
Regla de Armijo
En la prctica, la regla de Armijo es utilizada para definir una
tcnica de bsqueda lineal simplificada que no utiliza el ajuste de
curvas
1. Se define un o arbitrario
2. Si se satisface |(o) s |(0) + c |(0) o ; el valor de o es aumentado
repetidas veces por q hasta que ya no se satisface esta
desigualdad y se selecciona el penltimo o
3. Si |(o) > |(0) + c |(0) o ; el o inicial se considera muy grande y se
divide repetidas veces por q hasta que se consiga un o apropiado
Valores tpicos: q = 2, y c = 0.2
Criterios de parada para mtodos de
bsqueda Lineal
Derivada direccional sobre la direccin de descenso se aproxima a
cero

Valor de la funcin objetivo varia muy poco

Mximo nmero de iteraciones alcanzado


Donde c es un nmero muy pequeo, e.g., 1e-5, y maxIter es el
nmero mximo de iteraciones especificado por el usuario

( ) ( ) ( ) c ~ V =
+ +
d x f x f D
T
k k
d
1 1
( ) ( ) c <
+ k k
x f x f
1
Iter iter max >
Mtodos Bsicos de Descenso para
funciones de varias variables
La forma general de los mtodos bsicos de descenso se puede
expresar como


Determinacin de Direcciones de Descenso
0
0 1
> + = o o d x x

u cos b a b a =


a
b
Si > 90, entonces cos( ) < 0

Si sabemos que el gradiente es la
mxima direccin de
crecimiento en un punto

Cualquier vector que tenga ms
de 90 con el gradiente define
una direccin de descenso
d
Vf
0 < Vf d

Mtodo del Descenso ms Rpido


Este mtodo, denominado tambin mtodo del gradiente, es una de
las tcnicas ms antiguas para minimizar una funcin definida en
un espacio multidimensional
Su filosofa es muy sencilla: la direccin contraria a la del vector
gradiente en un punto es la direccin de ms rpido decrecimiento
de la funcin en ese punto
El procedimiento a seguir es el siguiente:
1. Se selecciona un punto inicial sobre la superficie y se determina el
gradiente en ese punto
2. Se determina un nuevo punto segn la frmula:

donde o es un nmero positivo, dado por algn mtodo de bsqueda
lineal

3. Se repite el paso 2 hasta que se encuentre un punto x
i+1
tal que
( )
i i 1 i
x f x x V =
+
o
( ) 0 = V
+1 i
x f
Mtodo del Descenso ms Rpido
Ejemplo 1: Se desea minimizar la funcin
2 2
y x 20 ) y , x ( f + + =
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
x
y
x
Esta funcin es unimodal

El mnimo est ubicado en el punto (0,0)

Supongamos que se asume como punto
inicial, el punto (-1.7, 1.7635)

El gradiente en un punto cualquiera es,
Vf = {2x, 2y}
Mtodo del Descenso ms Rpido
Ejemplo 1:
Evolucin del mtodo para un o = 0.25
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Evolucin del mtodo para un o = 0.9
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Mtodo del Descenso ms Rpido
Ejemplo 2: Se desea minimizar la funcin
2 2
y x 3 20 ) y , x ( f + + =
Esta funcin es unimodal

El mnimo est ubicado en el punto (0,0)

Supongamos que se asume como punto
inicial, el punto (-1.7, 1.7)

El gradiente en un punto cualquiera es,
Vf = {6x, 2y}
Mtodo del Descenso ms Rpido
Ejemplo 2: Se desea minimizar la funcin
2 2
y x 3 20 ) y , x ( f + + =
Las curvas de nivel de esta funcin son de
forma elptica, y el cambio de la direccin
de bsqueda de una iteracin a otra, se
observa en la trayectoria en forma de
zigzag
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Mtodo de Newton
En este caso, la direccin de bsqueda se determina utilizando la
segunda derivada de la funcin objetivo
El mtodo aproxima la funcin objetivo f en la vecindad de un
mnimo con una serie de Taylor truncada hasta el trmino de
segundo orden,


Dado que la aproximacin f
a
es una funcin de segundo orden, sta
es unimodal, y su mnimo es una buena aproximacin del mnimo
de la funcin objetivo
El mnimo de la funcin f
a
se determina haciendo f
a
= 0 y calculando
el valor de x
i
que satisface la ecuacin
( ) ( ) ( ) ( ) ( )
1 i f
T
1 i 1 i 1 i a
x x H x x x x f x f x f

+ V + =
2
1
( ) 0 = + V
1 i i f
x x H f
Mtodo de Newton
Si la inversa de H
f
existe, se tiene que:


Que es el denominado mtodo de Newton o de Newton-Raphson
f H x x
1
f
1 i i
V =

Direcciones de bsqueda calculada por los mtodos de descenso ms rpido y de Newton


Mtodo de Newton
Ejemplo 3: Se desea minimizar la funcin


utilizando el mtodo de Newton
2 2
y x 3 20 ) y , x ( f + + =
El gradiente en un punto cualquiera es,
Vf = {6x, 2y}

mientras que el Hessiano es la matriz
(
(

=
(

=

2
1
0
0
6
1
2 0
0 6
1
f
H H
f
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
La aproximacin de esta funcin utilizando la serie de Taylor es exacta, debido a
que es una funcin cuadrtica
Mtodo de Newton
En los casos en los que la funcin no es cuadrtica, se hacen
aproximaciones sucesivas del mnimo utilizando la ecuacin


donde o es positivo, hasta que se encuentra un valor cercano al
extremo mnimo relativo, segn una tolerancia especificada
En cada punto en los que se evale la ecuacin anterior, debe
ocurrir que el Hessiano sea una matriz positiva definida, para que la
direccin de bsqueda sea una direccin descendente
En general, la condicin de matriz positiva definida se cumple en la
vecindad del mnimo, pero no existe garanta que ocurra en puntos
lejanos al mismo
f H x x
1
f 1 i i
V =

o
Mtodo de Levenberg-Marquardt
Est dado por la ecuacin



donde o y c son positivos e I es la matriz identidad
La idea es seleccionar c de manera que la matriz cI - H
f
sea positiva
definida
La ecuacin anterior se aproxima al mtodo del descenso ms
rpido si c , y al mtodo de Newton c 0
( ) f H I x x
1 i i
V + =

1
f
c o
Estrategia de descenso
En la prctica se utilizan estrategias de descenso que utilizan
varios mtodos, de la siguiente manera:

1. Se inicia con el mtodo de Newton, si no hay descenso (la matriz
Hessiano NO es definida positiva)
2. Se emplea el mtodo de Levenberg-Marquardt con un c inicial, por
ejemplo c
k
= 0.001, se realiza la factorizacin de Cholesky a la
matriz para verificar si es definida positiva. Si la factorizacin de
Cholesky falla (i.e. la matriz no es definida positiva) se incrementa
en una razn, c
k
= |c
k

3. Si no hay descenso despus de varios intentos (por ejemplo 10),
se emplea el mtodo del descenso ms rpido

ANEXO
Descomposicin de Cholesky
La descomposicin o factorizacin de Cholesky expresa una matriz
simtrica como el producto de una matriz triangular y su transpuesta

A = LL
T
L: matriz triangular inferior

No todas las matrices simtricas se pueden factorizar de esta forma

Las matrices que tienen este tipo de factorizacin son las matrices
simtricas definidas positivas. Esto implica que todos los elementos
de la diagonal sean positivos y que los elementos fuera de la
diagonal no sean muy grandes

Descomposicin de Cholesky
Los trminos de la descomposicin se pueden multiplicar entre si.
El resultado se puede expresar en forma simple por relaciones
recurrentes

Para la fila k
1 - k , 1,2, i para ,
1
1
=

=
ii
i
j
kj ij ki
ki
l
l l a
l

=
=
1
1
2
k
j
kj kk kk
l a l
Descomposicin de Cholesky
Ejemplo,
(
(
(

=
979 225 55
225 55 15
55 15 6
A

=
4 . 71
3 . 19
85 . 7
B
Para k = 1 4495 . 2 6
11 11
= = = a l
Para k = 2 1237 . 6
4495 . 2
15
11
21
21
= = =
l
a
l ( ) 1833 . 4 1237 . 6 55
2 2
21 22 22
= = = l a l
Para k = 3 454 . 22
11
31
31
= =
l
a
l
1106 . 6
2
32
2
31 33 33
= = l l a l
916 . 20
22
31 21 32
32
=

=
l
l l a
l
(
(
(

=
1106 . 6 916 . 20 454 . 22
0 1833 . 4 1237 . 6
0 0 4495 . 2
L
Sustitucin hacia adelante Sustitucin hacia atrs

=
7616 . 31
3049 . 9
2047 . 3
D

=
1982 . 5
2154 . 28
1964 . 24
X
Seudo cdigo para la descomposicin de
Cholesky
for k = 1:n
for i = 1:k-1
sum = 0;
for j = 1:i-1
sum = sum + A(i,j)*A(k,j);
end
A(k,i) = (A(k,i) - sum)/A(i,i);
end
sum = 0;
for j = 1:k-1
sum = sum + A(k,j)^2;
end
A(k,k) = sqrt(A(k,k) - sum);
end

S-ar putea să vă placă și