Está en la página 1de 26

Repblica Bolivariana de Venezuela

Universidad del Zulia


Facultad de Ingeniera
Divisin de Estudios para Graduados
Instituto de Clculo Aplicado

OPTIMIZACIN PARA INGENIEROS


Optimizacin Sin Restricciones
(Notas de clase)

Instructores:
Luis Zerpa
Juan Colmenares

Febrero 2004

ndice General
1.

Derivada Direccional ........................................................................................................................ 2

2.

Gradiente........................................................................................................................................... 3

3.

Optimizacin Sin Restricciones ........................................................................................................ 4


3.1.

Condiciones de primer y segundo orden para la existencia de extremos.................................. 4

3.2.

Formulacin de problemas de optimizacin ............................................................................ 5

3.3.

Clasificacin de problemas de optimizacin ............................................................................ 6

3.4.

Mtodos de Optimizacin Basados en Derivadas..................................................................... 6

3.4.1.
3.5.

Mtodos Bsicos de Descenso .......................................................................................... 6

Bsqueda lineal ......................................................................................................................... 7

3.5.1.

Tipos de Mtodos de Bsqueda Lineal ............................................................................. 8

3.5.2.

Bsqueda de Fibonacci ..................................................................................................... 8

3.5.3.

Bsqueda de la Seccin Dorada...................................................................................... 10

3.5.4.

Ajuste Cuadrtico (Mtodo DSC, Davies, Swann y Campey) ....................................... 10

3.5.5.

Ajuste Cbico.................................................................................................................. 11

3.5.6.

Mtodo del Gradiente...................................................................................................... 12

3.5.7.

Mtodo de Newton.......................................................................................................... 12

3.5.8.

Mtodo Quasi-Newton.................................................................................................... 13

3.5.9.

Convergencia de Mtodos de Ajuste de Curvas ............................................................. 13

3.5.10.
3.6.

Bsqueda Lineal Inexacta ........................................................................................... 14

Mtodos Bsicos de Descenso para funciones de varias variables ......................................... 16

3.6.1.

Mtodo del Descenso ms Rpido .................................................................................. 16

3.6.2.

Mtodo de Newton.......................................................................................................... 20

3.6.3.

Levenberg-Marquardt ..................................................................................................... 22

1. 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) = f(p).
En qu sentido deberan desplazarse las variables de f, partiendo del punto p, para que los valores
de f crezcan mas rpidamente?
Como la rapidez est dada por : f(p).. En esta expresin se suponen ya conocidos f y p; faltando
conocer que haga mximo el producto escalar.
Siendo f(p). = f(p). Cos = f(p).(1). Cos
Donde : , es el ngulo formado por los vectores f(p) y
f(p). , Ser mximo si y slo si Cos es mximo, sea cuando
= 0 y f(p) con son colineales. Lo cual significa que el
vector unitario debe tener el mismo sentido que el vector
gradiente de f en p.
=

f ( p )
........
f ( p )

(*)

(*) significa que el vector gradiente de una funcin f en un punto


p, f(p), de su dominio se orienta en el sentido en el cual f
crece mas rpidamente.

2. Gradiente
El gradiente de una funcin escalar de n variables f ( x1 , x 2 ,K , x n ) , denotado por f , es el vector ndimensional
f f
f

f =
,
,K ,

x
2
n
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).

El Hessiano de una funcin escalar de n variables f ( x1 , x 2 ,K , x n ) , denotado por H f , es la matriz


de dimensin n n
2 f
2 f
2 f
L

2
x1x 2
x1x n
x1

2
2 f
2 f
f
L
2
H f = x 2 x1
x 2 x n
x

2 f
2 f
2 f
L

x x
x n x 2
xn2
n 1
Una matriz cuadrada A es definida positiva si :
x T Ax > 0 x 0
y es negativa si la desigualdad es la contraria.

3. Optimizacin Sin Restricciones


3.1. Condiciones de primer y segundo orden para la existencia de extremos.
r
Teorema: Si x0 es una solucin ptima (finita) al problema de optimizacin sin restricciones entonces
r
f = 0 .
r
r
Definicin: Puntos crticos aquellos que satisfacen la condicin f = 0 f no (e.g. extremos,
puntos de silla).
r
Teorema: Sea la funcin f ( x ) definida en En y cuyas derivadas parciales de segundo orden son
r
r
r
continuas. Si f = 0 y la matriz Hesiana evaluada en x0 es definida negativa (positiva), entonces x0
r
es un mximo (mnimo) local de f ( x ) .
Como consecuencia del Teorema de Taylor
r
r
r
r r
r r
1 r
T
f ( x ) = f ( x0 ) + f T ( x0 ) ( x x0 ) + ( x x0 ) ( x0 )( x x0 )
2!
r
r
r r
1 r
T
f ( x ) f ( x 0 ) = ( x x 0 ) ( x0 )( x x0 )
2
r
r
r
Si H( x0 ) es definida negativa, f(x) < f( x0 ) y x0 es un mximo.
r
r
Teorema: Si x0 es un mximo (mnimo) local de f(x) en En luego la matriz Hesiana evaluada en x0
debe ser definida o semidefinida negativa (positiva).
Resumen:
r
r
H( x0 ) es definida negativa y f = 0
r
r
H( x0 ) es semidefinida negativa y f = 0
r
r
H( x0 ) es indefinida y f = 0

r
r
H( x0 ) es definida positiva y f = 0
r
r
H( x0 ) es semidefinida positiva y f = 0
r
r
H( x0 ) es indeifnida y f = 0

r
x0 es un mximo local

r
x0 no es un mximo local

r
x0 es un mnimo local

r
x0 no es un mnimo local

r
Teorema: Cualquier funcin f ( x ) definida en En con primeras derivadas y segundas derivadas
parciales continuas es cncava (convexa) en una regin suficientemente pequea alrededor de cualquier
r
mximo (mnimo) local x0 .
El gradiente y el Hessiano cumplen para funciones de varias variables el mismo rol que las
derivadas primera y segunda en funciones de una variable. Si la funcin tiene un extremo local el
gradiente se anula y es mximo o mnimo dependiendo de que la matriz Hessiana sea definida positiva
o negativa respectivamente.
Lo expuesto hasta aqu sugiere que para hallar extremos locales es necesario resolver la ecuacin
vectorial:
f ( x ) = 0
Sin embargo, hasta para funciones sencillas, la resolucin del sistema de ecuaciones que se deriva de
la ecuacin anterior es casi siempre ms complejo que la propia optimizacin. Es por ello que surgen
diversos mtodos que persiguen la solucin del problema original basndose en consideraciones
geomtricas.
Los mtodos de optimizacin basados en derivadas, se fundamentan en los conceptos de gradiente y
Hessiano, para determinar la direccin de desplazamiento sobre la superficie de la funcin objetivo.

3.2. Formulacin de problemas 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:
gk (x) 0
k = 1,..., m
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.

3.3. 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 ) y/o las restricciones son 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.
Existen varios mtodos para resolver un problema de optimizacin. Estos mtodos pueden agruparse
en dos grandes clases: Mtodos de optimizacin basados en derivadas y mtodos de optimizacin no
basados en derivadas.

3.4. Mtodos de Optimizacin Basados en Derivadas


3.4.1. 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
1. Se inicia en un punto.
2. Se determina la direccin de descenso mediante una regla fija. (Primera diferencia entre
algoritmos)
3. Y luego se desplaza hacia el mnimo en esa direccin. (Bsqueda lineal)
La forma general de los mtodos bsicos de descenso se puede expresar como,
r
r
x1 = x 0 d

En seudo cdigo:
algoritmo.setStartingPoint(Double Matrix point)
if (!algoritmo.checkStopCondition())
{
algoritmo.determinarDireccionDescenso();
algoritmo.avanzar();
}

3.5. Bsqueda lineal


Las tcnicas de bsqueda lineal son realmente procedimientos de optimizacin para una sola variable, y
que es realizado 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.
Especficamente se debe resolver el sub-problema de optimizacin:
Encontrar

min

f (x i 1 d )

donde d es la direccin de descenso. Hallado el ptimo se inicia una nueva iteracin de descenso.
Este sub-problema es sensiblemente ms sencillo que la optimizacin general ya que es un
problema de una dimensin con una nica variable .
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.
Estos mtodos pueden ser con o sin uso de derivadas.

3.5.1. 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
3.5.2. Bsqueda de Fibonacci
Este mtodo determina el mnimo valor de una funcin f sobre un intervalo cerrado [c1, c2]. 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.
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 [c1, c2]
c1 x1 xN-1 xN c2
8

la regin de incertidumbre es el intervalo [xk-1, xk+1] donde xk es el mnimo de los N puntos evaluados.
En ese intervalo de encuentra el mnimo.
La estrategia para seleccionar sucesivamente observaciones para obtener la regin de incertidumbre
ms pequea se describe a continuacin:
d1 = c2 c1 ;

es la amplitud inicial de la incertidumbre

dk es la amplitud de la regin de incertidumbre luego de k observaciones

Si son realizadas N observaciones se tiene que

F
d k = N k +1 d1
FN

Donde Fk son los nmeros de la secuencia Fibonacci generados por la relacin:


FN = FN -1 + FN -2

donde F0 = F1 = 1

Donde cada nmero despus de los dos primeros representa la suma de los dos precedentes.
Procedimiento para la reduccin de la seccin de incertidumbre:
1. Especificar N
F
2. Calcular N 1
FN
F
3. Colocar simtricamente desde los extremos del intervalo inicial a distancia N 1 d 1 , dos
FN
observaciones
4. De acuerdo a donde se encuentre la muestra con menor valor funcional se determina la regin
F
de incertidumbre, d 2 = N 1 d1
FN
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
F
incertidumbre sea N 2 d1
FN

3.5.3. 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:

xl

xu

Primera
Iteracin

l0
l1

Segunda
Iteracin

l2

l2

l0 = l1 + l2
l1 l 2
=
l 0 l1

la primera condicin especfica que la suma de las dos sublongitudes l1 y l2


debe ser igual a la longitud original del intervalo. La segunda indica que el
cociente o razn de las longitudes debe ser igual.

sustituyendo,
l1
l
= 2
l1 + l 2 l1
se toma el reciproco y haciendo R =
1+ R =

l2
, se llega a
l1

1
R

R2 + R 1 = 0
resolviendo para la raz positiva
R=

1 + 1 4( 1)
5 1
=
= 0.61803K este valor se conoce como la Razn Dorada
2
2

y permite encontrar de forma eficiente el ptimo.

Se comienza con los valores extremos del intervalo xl, xu que contienen el extremo local de f(x).
10

Dos puntos interiores de escogen de acuerdo a


5 1
d=
( xu xl )
2
x1 = xl + d
x2 = xu - d
Se evala la funcin en los dos puntos interiores
5 1
( xu xl )
2
5 1
o Si f(x2) < f(x1) xu = x1 ; x1 = x2 ; x 2 = xu
(xu xl )
2

o Si f(x1) < f(x2) xl = x2 ; x2 = x1 ; x1 = xl +

A continuacin se presentan algunos mtodos de Bsqueda Lineal por ajuste de curvas. Estos se basan
en que en la mayora de los problemas, adems de asumir que la funcin objetivo es unimodal, tambin
se asume que posee cierto grado de suavidad (derivable). Entonces se pueden desarrollar tcnicas ms
eficientes que aprovechen esta propiedad. Tcnicas de esta naturaleza se basan en procedimientos de
ajuste de curvas suaves para estimar el mnimo.

3.5.4. 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. En
la figura se muestra el procedimiento del mtodo DSC
1

f(x)

2
3

5
6

2x

x(m-3) x(m-2)

4x

8x

x(m-1)

x(m+1)

1. Se evala f(x) en el punto inicial x(0)


Si f(x(0) + x) f(x(0)), pase al paso 2
Si f(x(0) + x) > f(x(0)), haga x = - x y pase al paso 2.
10

x(m)

2. Calcule x(k+1) = x(k) + x


3. Calcule f(x(k+1))
4. Si f(x(k+1)) f(x(k)), duplique x (x = 2x) 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 x a la mitad y se
regresa al paso 2 y 3 para un solo clculo adicional.
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) - x y x(c) = x(b) + x
6. Se realiza una interpolacin cuadrtica para estimar x* (el valor de la variable independiente
correspondiente al mnimo de f(x))
x f x ( a ) f x (c )
(b )

x* x* = x +
donde x = x(a) - x(b)
(a )
(b )
(c )
2 f x 2f x + f x

[ ( ) ( )]
[ ( ) ( ) ( )]

Estos pasos completan la primera etapa del mtodo DSC. Para continuar, se realiza el mismo
procedimiento desde x * o x(c), si f(x(c)) < f( x * ), se reduce x y se inicia el procedimiento.
3.5.5. Ajuste Cbico
Dados xk-1 y xk junto a f(xk-1), f(xk-1), f(xk), y f(xk) es posible ajustar una ecuacin cbica en los puntos.
El punto xk+1 (mnimo) puede ser determinado como el punto mnimo relativo de esta ecuacin cbica.

f ' ( x k ) + u 2 u1
x k +1 = x k ( x k x k 1 )

f ' ( x k ) f ' ( x k 1 ) + 2u 2
donde,
f ( x k 1 ) f (x k )
u1 = f ' ( x k 1 ) + f ' ( x k ) 3
x k 1 x k

u 2 = u1 f ' ( x k 1 ) f ' ( x k )
2

11

3.5.6. Mtodo del Gradiente


Supongamos que f(x) es una funcin de una
variable a ser minimizada y que f(x) y f (x)
existen.

f(x)

xk+1 = xk f (xk)
f(x)

Un factor de escalamiento es empleado para


escalar el gradiente
xk+1 = xk f (xk) Mtodo del gradiente
modificado

xk

xk+1

Si g(x) = f (x) Ntese que el punto xk+1 no depende de f(x)


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

1
2
f ' ' ( x k )( x x k )
2
f(x)

se puede estimar xk+1 determinando el punto donde


la derivada de q se hace cero.
q' ( x k +1 ) = f ' ( x k ) + f ' ' ( x k )( x k +1 x k ) = 0
x k +1 = x k

f ' (xk )
f ' ' (xk )

xk

Ntese que no depende de f(x) y =

xk+1

1
f ' ' (x k )

El mtodo puede ser visto como la resolucin iterativa de ecuaciones de la forma g(x) = 0, donde,
cuando es aplicada a minimizacin, hacemos g(x) f (xk)
x k +1 = x k

g (xk )
g ' (xk )
12

Implementacin
Para la implementacin de este mtodo es necesario calcular la primera y segunda derivada de la
funcin como derivadas direccionales, obteniendo un valor escalar, de la siguiente manera,
r
f ' ( x k ) = f ( x k ) d
r
r
f ' ' (xk ) = d T H (xk ) d
donde d es el vector unitario de la direccin de descenso

3.5.8. Mtodo Quasi-Newton


Cuando no es posible evaluar analticamente las primeras y segundas derivadas, se pueden emplear
mtodos de diferencias finitas para calcularlas:
f ' (x ) =

f ( x + x ) f ( x x )
2x

f ' ' (x ) =

f (x + x ) 2 f ( x ) + f ( x x )
x 2

3.5.9. Convergencia de Mtodos de Ajuste de Curvas


Se han analizado la convergencia de estos mtodos en la vecindad de la solucin. La aplicacin directa
de estos mtodos en su forma pura tiene el riesgo de desviar el proceso sin sentido. Es decir, el proceso
de bsqueda puede nunca estar cerca de un mnimo global. Para evitar esto se debe combinar nuestro
conocimiento del comportamiento local con condiciones que garanticen la convergencia.
En este sentido: (e.g. Ajuste cuadrtico DSC)
Asumamos una funcin f que se desee minimizar, tal funcin es unimodal y continua, y C2. Se inicia
el proceso de bsqueda lineal identificando a lo largo de la direccin de bsqueda los tres puntos
siguientes: x1, x2 y x3 tal que x1 < x2 < x3 y f(x1) f(x2) f(x3)
Esta secuencia de puntos puede ser determinada como lo hace DSC.
La principal razn de usar este patrn es que su ajuste cuadrtico tendr un mnimo (en lugar de un
mximo) y dicho mnimo caer en el intervalo [x1, x3].
El punto x4 determinado a partir del ajuste cuadrtico y f(x4) es evaluado, este reemplaza a uno de los
puntos de la triada anterior (x1, x2, x3).
Si f(x4) f(x2) (x1, x2, x3)n = (x2, x4, x3)
Si f(x2) < f(x4) f(x3) (x1, x2, x3)n = (x1, x2, x4)
Luego se prosigue iterativamente ajustando otra ecuacin cuadrtica y continua.
13

Se sugiere y se acepta implcitamente que uno debe requerir que f(xk+1) < f(xk). Si tal inecuacin no se
cumple en algn sitio se debe emplear un mtodo especial para encontrar un mejor xk+1 que si la
satisfaga.
Esta construccin puede ser empleada para producir procedimientos efectivos con los restantes
mtodos de ajuste.

3.5.10. 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
Criterios de terminacin de la bsqueda lineal
Prueba de porcentaje
r
r
r
Sea x k +1 = x k d ; este criterio determina para estar dentro de un porcentaje del verdadero valor.
Especficamente, si se selecciona una constante c tal que 0 < c < 1 (tpicamente c = 0.1) y el parmetro
en la bsqueda lineal es determinado de forma tal que satisfaga c donde es el
verdadero valor de minimizacin.
Por ejemplo, para el caso de ajuste por interpolacin cuadrtica (DSC) se usa un patrn de tres puntos
aplicado a una funcin unimodal, se sabe que el punto mnimo verdadero se encuentra entre en
intervalo cubierto por los tres puntos, por lo tanto se puede deducir un lmite para el mximo error
fraccional posible. Entonces, se realizan las iteraciones hasta que este lmite sea menor que c.
Regla de Armijo
Primero garantiza que no sea muy grande y luego que no sea muy pequeo.
Sea, ( ) = f ( x k + d k )
La regla de Armijo es implementada al considerar la funcin (0) + (0) para (0,1). Esta
funcin est representada por la lnea segmentada en la figura.
14

Un valor de se considera que no es muy grande si el


valor de la funcin cae debajo de la lnea punteada; es
decir, si () (0) + (0) ...................(*)
Para asegurar que no sea muy pequeo, un valor de
> 1 es seleccionado, y no es considerado muy
pequeo si () > (0) + (0) , si crece
veces falla el criterio anterior.

Intervalo aceptable

Regla de Armijo como mtodo de Bsqueda lineal:


1. Se comienza con una arbitrario
2. Si se satisface (*), se incrementa al multiplicarlo por hasta que no se satisfaga (*) y la
penltima es seleccionada.
3. Si inicialmente, el no satisface (*) entonces se divide por hasta que se satisfaga (*)
Valores tpicos: = 2 = 10, y = 0.2

Prueba de Goldstein
Similarmente a la regla de Armijo, se considera que no es muy grande si () (0) + (0) ...(*)
con 0 < <

se considera que no es muy pequeo


si () > (0) + (1 - )(0)
un valor aceptable de esta dado por
f ( x k +1 ) f ( x k )

1
f ( x k )d k
0.2 0.8

Intervalo aceptable

15

3.6. Mtodos Bsicos de Descenso para funciones de varias variables


3.6.1. 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 xi sobre la superficie y se determina el gradiente f ( xi ) en ese
punto.
2. Se determina un nuevo punto segn la frmula:
xi +1 = xi f ( xi )
donde es un nmero positivo.
3. Se repite el paso 2 hasta que se encuentre un punto xi+1 tal que
f ( xi +1 ) = 0
A continuacin se ilustra el mtodo con un ejemplo.
Ejemplo 1: Se desea minimizar la funcin
f ( x , y ) = 20 + x 2 + y 2
En la Figura 3.1 se muestra la superficie de esta funcin, evaluada en la regin

{(x , y ) x [ 2, 2] y [ 2, 2]}
Como puede notarse en la grfica, esta funcin es unimodal, es decir, tiene un nico mnimo. Dicho
mnimo est ubicado en el punto (0,0). Supongamos que se asume como punto inicial, el punto (-1.7,
1.7635).
El gradiente de esta funcin en un punto cualquiera ( xo , yo ) , est dado por:
f = (2 xo ,2 y o )

16

x
1.5

0.5

-0.5

-1

-1.5

-2
-2

-1.5

-1

-0.5

0
x

0.5

1.5

Figura 3.1 Curvas de nivel de la funcin objetivo del ejemplo 1

En la Figura 3.1 se muestran las curvas de nivel de la funcin as como tambin el punto inicial (con
una x) y la direccin del gradiente en dicho punto (con una flecha), y el punto en el que se ubica el
mnimo (con una o). Como puede observarse, las curvas de nivel corresponden a crculos concntricos
con centro en el origen. Segn el mtodo, el segundo punto estara ubicado sobre la recta que contiene
al vector direccin del gradiente, y a una distancia determinada por el valor de . En la Figura 3.2 se
ilustra la evolucin del mtodo para un = 0.25 . Los crculos representan las aproximaciones del
mnimo calculadas por el mtodo.
2

1.5

0.5

-0.5

-1

-1.5

-2
-2

-1.5

-1

-0.5

0.5

1.5

Figura 10.4
Figura 3.2 Evolucin del mtodo del descenso ms rpido con =0.25,
para la funcin objetivo del ejemplo 1

17

1.5

0.5

-0.5

-1

-1.5

-2
-2

-1.5

-1

-0.5

0.5

1.5

Figura 3.3 Evolucin del mtodo del descenso ms rpido con =0.9, para la funcin objetivo del
ejemplo 1

En la Figura 3.3 se ilustra nuevamente la aplicacin del mtodo, pero ahora con un valor = 0.9 .
Como puede observarse, el segundo punto se pasa del valor del mnimo para despus retornar y
estabilizarse en dicho valor.
En los dos casos anteriores, la direccin del gradiente siempre apunta hacia el mnimo global de la
funcin. Esto se debe a que las curvas de nivel son circulares. Cuando las curvas de nivel tienen otra
forma, la direccin del gradiente, que es ortogonal a la curva de nivel en el punto en el que se calcula,
no apunta necesariamente hacia el mnimo. En estos casos, la direccin de bsqueda del mnimo
cambia de una iteracin a otra, haciendo que el proceso sea ms lento.
Ejemplo 2: Se desea minimizar la funcin
f ( x , y ) = 20 + 3 x 2 + y 2
En la Figura 3.4 se muestra la superficie de esta funcin, evaluada en la regin
{( x , y ) x [ 2 , 2] y [ 2 , 2]}

18

Figura 3.4 Funcin objetivo del ejemplo 2

El gradiente de esta funcin en un punto cualquiera ( xo , yo ) , est dado por:


f = (6 xo ,2 yo )
Esta funcin, al igual que la anterior, es unimodal, con el mnimo ubicado en el punto (0,0). En este
caso se asume como punto inicial, el punto (-1.7, 1.7). Como puede observarse en la Figura 3.5, 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 lnea en forma de zigzag que se muestra en dicha Figura.
2

1.5

0.5

-0.5

-1

-1.5

-2
-2

-1.5

-1

-0.5

0.5

1.5

Figura 3.5 Ilustracin del mtodo del descenso ms rpido,


para la funcin objetivo del ejemplo 2
19

3.6.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, es decir:
f a ( x ) = f ( x i 1 ) + f ( x x i 1 ) +

1
(x xi 1 )T H f (x xi 1 )
2

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. Se obtiene entonces:
f + H f ( x i x i 1 ) = 0

(a)

(b)

Figura 3.6 Direcciones de bsqueda calculada por los mtodos de descenso ms rpido y de Newton.
Para una funcin con curvas de contorno: (a) circulares, y (b) elpticas

Si la inversa de H f existe, se tiene que:


x i = x i 1 H f 1 f
que es el denominado mtodo de Newton o de Newton-Raphson.
En la Figura 3.6a y Figura 3.6b se muestran las direcciones calculadas por los mtodos del descenso
ms rpido y de Newton para el caso de curvas de nivel circulares y elpticas, respectivamente. Como
puede observarse, en la Figura 3.6a ambas direcciones coinciden y apuntan hacia el mnimo, no as en
la Figura 3.6b donde no coinciden ya que la direccin calculada por el mtodo de Newton apunta hacia
el mnimo, mientras que la calculada por el mtodo del descenso ms rpido es perpendicular a la curva
de nivel.

20

Ejemplo 3: Para efectos de comparacin, en este ejemplo se minimiza la misma funcin del ejemplo
anterior:
f ( x , y ) = 20 + 3 x 2 + y 2
utilizando el mtodo de Newton.
Como se vio anteriormente, el gradiente de esta funcin en un punto cualquiera ( x , y ) , est dado por:
f = (6 x ,2 y )
mientras que el Hessiano es la matriz:
6
Hf =
0

1
0
1 6
Hf =
0
2

1
2

La aproximacin de esta funcin utilizando la serie de Taylor es exacta, debido a que es una funcin
cuadrtica. Entonces, el mnimo que calcula el mtodo, coincide con el mnimo deseado. Por esta
razn, el mtodo encuentra el mnimo en una iteracin.
2

1.5

0.5

-0.5

-1

-1.5

-2
-2

-1.5

-1

-0.5

0.5

1.5

Figura 3.7 Evolucin del mtodo de Newton, para la funcin objetivo del ejemplo 3

En la Figura 3.7 se muestra la evolucin del proceso de minimizacin para este ejemplo. Puede
observarse la convergencia del mtodo en una iteracin.
En los casos en los que la funcin no es cuadrtica, se hacen aproximaciones sucesivas del mnimo
utilizando la ecuacin:
x i = x i 1 H f 1 f

21

donde es positivo, hasta que se encuentra un valor cercano 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 (todos sus valores propios son positivos), para que la direccin de bsqueda sea una
direccin descendente. Los valores propios de una matriz cuadrada A de dimensin n n , son las races
del polinomio:
det (I A)
el cual se conoce como polinomio caracterstico de la matriz A. I es la matriz identidad de dimensin
n n. 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. Existe un conjunto de modificaciones al
mtodo de Newton, para superar este inconveniente. Entre otros, puede citarse el mtodo de
Levenberg-Marquardt.

3.6.3. Levenberg-Marquardt
Est dado por la ecuacin:
1
xi = xi 1 (I + H f ) f
donde y son positivos e I es la matriz identidad. La idea es seleccionar de manera que la matriz
I H f sea positiva definida. La ecuacin anterior se aproxima al mtodo del descenso ms rpido si
, y al mtodo de Newton 0 . Usualmente se seleccionan valores iniciales grandes de , los
cuales se disminuyen a medida que nos aproximamos al mnimo.

Los tres mtodos discutidos hasta ahora son mtodos de optimizacin local, debido a que estn
basados nicamente en informacin proveniente de las derivadas de la funcin. Esto significa que si la
funcin objetivo es multimodal, es decir, tiene varios mnimos locales y globales, el mtodo encontrar
aquel mnimo (global o local) que est ms cercano al punto inicial seleccionado.
Ejemplo 4: Minimice la funcin:
f (x , y ) =

1
1 + 2( x 1.5 )2 + ( y + 1)2

0.6
1 + ( x + 1)2 + ( y 1.5 )2

En la Figura 3.8 se muestra la superficie definida por esta funcin. Como puede observarse la funcin
tiene dos mnimos (bimodal): uno local, ubicado en el punto (-1,1.5) y otro global, ubicado en el punto
(1.5,-1). Si se utiliza un mtodo basado en derivadas, se encontrar el mnimo ms cercano al punto
inicial seleccionado.

22

Figura 3.8 Funcin objetivo del ejemplo 4

En la Figura 3.9 se muestran las curvas de nivel y la evolucin del mtodo del descenso ms rpido en
la bsqueda del mnimo, a partir de dos puntos iniciales: (-2.8,2.8), desde el cual se llega al mnimo
global y el otro, (2.8,-2.8) desde donde se llega al mnimo local. Utilizando el mtodo de Newton se
obtiene un resultado similar.
Existen algunas modificaciones a los mtodos basados en gradiente para convertirlos en mtodos de
optimizacin global, por ejemplo, comenzar el proceso iterativo desde varios puntos iniciales.
En todos los ejemplos anteriores la funcin objetivo est definida explcitamente, por lo que, el clculo
del gradiente y del Hessiano se hace de manera analtica. Sin embargo, este no es el caso en la mayora
de las aplicaciones reales de mtodos de optimizacin, en las cuales se hace necesario calcular
aproximaciones numricas tanto para el gradiente, como para el Hessiano.
3

-1

-2

-3
-3

-2

-1

0
x

23

Figura 3.9 Evolucin del mtodo del descenso ms rpido, para la funcin objetivo del ejemplo 4

En la prctica se utilizan estrategias de descenso que utilizan varios mtodos, de la siguiente manera:
1. Se emplea el mtodo de Newton clsico, si no hay descenso (esto lo responde bsqueda lineal)
2. Se emplea el mtodo de Levenberg-Marquardt con un inicial, k = 0.001, si no hay descenso
se incrementa en una razn, k = k
3. Si no hay descenso despus de varios intentos, se emplea el mtodo del descenso ms rpido.

24

También podría gustarte