Vous êtes sur la page 1sur 54

Programacin no lineal

Tcnicas de optimizacin en ingeniera. Mster en Tecnologas de la Informacin y las Telecomunicaciones Curso 2006-2007 Profesora: M Pilar Jarabo Amores

ndice
1.

Introduccin. Optimizacin sin restricciones.


1. 2. 3.

2.

Propiedades bsicas de las soluciones y los algoritmos. Ejemplos: filtros adaptativos y redes neuronales. Mtodos basados en el gradiente.
1. 2.

Mtodo de mxima pendiente. Filtro FIR adaptativo. Mtodo de Newton. Filtro FIR adaptativo.

4.

Mtodos Quasi-Newton.

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

Introduccin
OBJETIVO: Encontrar el mximo o el mnimo de una determinada funcin, llamada funcin objetivo" EJEMPLO: Sea la funcin objetivo f S Rn: espacio de bsqueda, definido por un conjunto de restricciones

hi (x) = 0, i=1,2,,m

gi (x) 0, i=1,2,,r

x=[x1,,xn]

f(x*) f(x) x S (minimizacin)


Solucin: encontrar un vector x* S /

f(x*) f(x) x S (maximizacin)

INCGNITAS A DETERMINAR: Las componentes del vector x*. x*=[x*1,,x*n]

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

Tipos de problemas

Programacin lineal:
La funcin objetivo, f(), es una funcin lineal de las incgnitas: x=[x1,,xn]. Las restricciones son funciones lineales de las incgnitas: : x=[x1,,xn].

Programacin no lineal:
La funcin objetivo, f(), es una funcin no lineal de las incgnitas: x=[x1,,xn].

Programacin sin restricciones x Rn


Espacio de bsqueda S= En general S=Rn (sin ningn tipo de restriccin)

Programacin con restricciones

x
hi (x) = 0, i=1,2,,m gi (x) 0, i=1,2,,r Son funciones no lineales de las incgnitas: x=[x1,,xn].

COMPLEJIDAD DE LOS PROBLEMAS: Se mide en trminos del nmero de variables a determinar (dimensin de
S) y el nmero de restricciones.
M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA 4

Optimizacin sin restricciones Propiedades de la solucin


Condiciones necesarias de primer orden: Tma. de Weierstras: si f es continua y S es compacto, f tiene un mnino en S, por lo que existe solucin.

Direcciones viables: Un vector d es una direccin viable respecto a x si

> 0 / x + d S 0
Si f es una funcin continua y sus primeras derivadas parciales tambin son continuas en S y x* es un mnimo relativo de f sobre S, para cualquier d Rn que sea una direccin viable, se cumple:

f ( x *) d 0

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

Optimizacin sin restricciones. Propiedades de la solucin


Derivada de f en x segn d:
f ( x ) = f ( x1 , x2 ,..., xn )
Si h es unitario,

f ( x ) f ( x + td ) f ( x ) = lim t o t d

f ( x ) es la derivada direccional de f en x segn el vector unitario d. d

La derivada direccional segn d es de signo opuesto a la derivada direccional segn d.

Gradiente de f en x:

f ( x ) f ( x ) f ( x ) , ,..., f ( x ) = x2 xn x1

f ( x ) f ( x ) = f ( x )d f ( x ) d d
La igualdad slo se da cuando d =

f ( x ) f ( x )

, luego la derivada direccional es mxima en la direccin del gradiente.

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

Optimizacin sin restricciones. Propiedades de la solucin


Si f es una funcin continua y sus primeras derivadas parciales tambin son continuas en S y x* es un mnimo relativo de f sobre S, para cualquier d Rn que sea una direccin viable, se cumple:

f ( x *) d 0
Al considerar x = x * + d , es una medida del desplazamiento que he realizado en la direccin d (viable) y en funcin de ese desplazamiento puede definirse la funcin:

g ( ) = f ( x * + d ) g ( 0 ) +
Como en x* hay un mnimo relativo:

dg ( ) d = 0

g ( ) g ( 0 ) 0

dg ( ) 0 f ( x *) d 0 d = 0

Si x* est en el interior de S (por ejemplo S=Rn), cualquier direccin d es viable. Por tanto:

f ( x *) = 0
M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA 7

Optimizacin sin restricciones. Propiedades de la solucin


Ejercicio 1: Minimice la funcin
2 f ( x ) = f ( x1 , x2 ) = x12 x1 x2 + x2 3 x2

Ejercicio 2: Minimice la funcin

f ( x ) = f ( x1 , x2 ) = x12 x1 + x2 + x1 x2 x1 0, x2 0

S=Rn

350 300 250 200 f 150 100


0 f 50 -50 10 10 5 8 6 4 2 x2 0 0 x1 200 150 100

50 0 -50 10 0 -10 x2 -10 -5 x1 0 5 10

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

Optimizacin sin restricciones. Propiedades de la solucin

Ejemplo 1:
Sea la funcin de produccin f(x1,,xn) que proporciona la cantidad de un producto en funcin de las cantidades de materias primas (xi). El precio unitario del producto es q, mientras que el precio unitario de las materias primas es p1,,pn. Para maximizar el beneficio:

Maximice

q f ( x1 , x2 ,..., xn ) p1 x1 p2 x2 ... pn xn

f ( x1 , x2 ,..., xn ) = pi x1 xi

i = 1,...n

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

Optimizacin sin restricciones. Propiedades de la solucin


Ejemplo 2:
Se ha observado el valor de una funcin g en m puntos z1,z2,,zm: g(z1), g(z2),,g(zm). A partir de estos datos se desea aproximar dicha funcin mediante un polinomio de orden (n-1)<m:

% g ( z ) = x1 + x2 z + ... + xn z n 1
En Rn, ha de encontrarse el vector de coeficientes x=[x1,,xn] que mejor aproxima la funcin g de acuerdo a algn criterio. Una de las funciones de error ms utilizadas es el error cuadrtico medio, que, a partir de las m observaciones disponibles se puede estimar como:
2 1 m % ' ( x ) = g ( zi ) g ( zi ) m i =1

Como m es una constante y el objetivo es minimizar el error, en muchos casos no se considera, pasando a minimizar la funcin:

% f ( x ) = g ( zi ) g ( zi )
i =1 m

f ( x ) = g ( zi ) x1 + x2 z i + ... + xn zi i =1
M Pilar Jarabo Amores

n 1

f ( x *) = 0 x* = [ x *1 , x *2 ,..., x *n ]

TCNICAS DE OPTIMIZACIN EN INGENIERA

10

Optimizacin sin restricciones. Propiedades de la solucin


Condiciones necesarias de segundo orden: Sea f una funcin continua en S Rn. Si sus primeras y segundas derivadas parciales tambin son continuas en S (fC2) y x* es un mnimo relativo de f sobre S, para cualquier d Rn que sea una direccin viable, se cumple:

a ) f ( x *)d 0

(Condicin de primer orden)

b) Si f ( x *)d = 0, entonces dT 2 f ( x *)d 0


Si fC2, se define la matriz Hessiana de f en x, y se denota como f ( x ) = F ( x ) , a una matriz nxn cuyos elementos se calculan como:
2

2 f ( x) f (x) = F (x) = xi x j
2

x = x * + d

2 dg ( ) 1 d g ( ) g ( ) = f ( x * + d ) g ( 0 ) + + 2 2 2 d =0 d = 0

Si f ( x *)d = 0

dg ( ) =0 d = 0

d 2 g ( ) = d T 2 f ( x *) d 0 2 d =0
M Pilar Jarabo Amores

En x* hay un mnimo

2 1 d g ( ) 2 g ( ) g ( 0 ) = 2 2 d =0

TCNICAS DE OPTIMIZACIN EN INGENIERA

11

Optimizacin sin restricciones. Propiedades de la solucin


Condiciones necesarias de segundo orden en problemas sin restricciones: Si x* es un punto interior de S y adems se supone que es un mnimo relativo de f C2 sobre S, entonces:

a ) f ( x *) = 0 b) d, dT 2 f ( x *)d 0
Ejercicio 3: Considere de nuevo la funcin: Ejercicio 4: Considere la funcin:
2 f ( x ) = f ( x1 , x2 ) = x13 x12 x2 + x2

f ( x ) = f ( x1 , x2 ) = x12 x1 + x2 + x1 x2 x1 0, x2 0

x1 0,

x2 0

Verifique que cumple las condiciones de segundo orden.

Verifique que cumple las condiciones de segundo orden.

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

12

Optimizacin sin restricciones. Propiedades de la solucin


55

Ejercicio 4:

2 f ( x ) = f ( x1 , x2 ) = x13 x12 x2 + x2

54.5 f 54 53.5 9.4 9.3 9.2 9.1

x1 0,

x2 0

4 3 2 f 1 0 -1 -2 1 0 -0.5 x2 -1 -1 -0.5 x1
-1000 2000 3000

9 8.9 x2 8.8 5.7 5.8 5.9 x1 6

6.1

6.2

1000

0.5 0

0.5

-2000 10 0 -10 x2 -10 -5 0 5 10

M Pilar Jarabo Amores

x1 TCNICAS DE OPTIMIZACIN EN INGENIERA

13

Optimizacin sin restricciones. Propiedades de la solucin


Nota: Caracterizacin de matrices Una matriz A (nxn), hermtica, es definida positiva si y slo si:
x R n , xT Ax > 0
El determinante de la matriz es positivo. Los determinantes de las submatrices obtenidas al eliminar las n-k (k=1,n) ltimas filas y columnas, menores principales, son positivos. Sus autovalores son positivos.

Una matriz A (nxn), hermtica, es definida negativa si y slo si:


x R n , xT Ax < 0
Los determinantes de las submatrices obtenidas al eliminar las n-k (k=1,n) ltimas filas y columnas, menores principales, tienen el signo de (-1)k. Sus autovalores son negativos.

Una matriz A (nxn), hermtica, es semidefinida positiva si y slo si:


x R n , xT Ax 0
El determinante de la matriz y sus n menores principales son no negativos (positivos o nulos). Sus autovalores son mayores o iguales que cero.

Una matriz A (nxn), hermtica, es semidefinida negativa si y slo si:


x R n , xT Ax 0
Los menores principales de orden impar son no positivos y los de orden par son no negativos. Sus autovalores son menores o iguales que cero.

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

14

Optimizacin sin restricciones. Propiedades de la solucin


Condiciones suficientes para que exista un mnimo relativo:

Sea x* es un punto interior de S, si se cumplen las condiciones siguientes:

a ) f ( x *) = 0 b) 2 f ( x *) es definida positiva
Entonces x*es un mnimo relativo estricto de f.

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

15

Optimizacin sin restricciones. Propiedades de la solucin


Minimizacin de funciones convexas Definiciones previas:
Conjunto convexo: S Rn es convexo si y slo si, para todo x, y S, el segmento que los une est contenido en S. Funcin convexa: Sea S un espacio convexo y f C1 una aplicacin de S en R, f es convexa si y slo si:

f ( x + (1 ) y ) f ( x ) + (1 ) f ( y ) x, y S 0 < < 1

f ( y ) f ( x ) + f ( x )( y x ) x, y S

f C2, es convexa en el conjunto convexo S, el cual contiene un punto interior, si y solo si la matriz hessiana de f es semidefinida positiva en todo S.

f ( y ) f ( x ) + f ( x )( y x ) +

x S , xT 2 f ( x )x 0

1 T ( y x ) 2 f ( x + ( y x ) )( y x ) 0 1 2

f ( y ) f ( x ) + f ( x )( y x ) x, y S

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

16

Optimizacin sin restricciones. Propiedades de la solucin


Minimizacin de funciones convexas Sea f una funcin convexa definida en el conjunto convexo S. El conjunto donde f alcanza su mnimo es convexo y cualquier mnimo relativo de f es un mnimo absoluto.

[1]

[2]

Si f C1, es convexa en el conjunto convexo S, y hay un punto x* S que cumple la condicin:

f ( x *)( y x *) 0,
Entonces x* es un mnimo absoluto de f en S.

yS

[3]

Si f C1, es convexa en el conjunto convexo S, y x* es un punto crtico, f ( x *) = 0 , f alcanza un mnimo absoluto en x*.

[4]

Sea S un conjunto abierto y convexo de Rn y f una aplicacin de S en R diferenciable y convexa en S. La funcin f alcanza un mnimo relativo en x* S, si y solo si x* es un punto crtico, f ( x *) = 0 . Adems, por [1], f alcanza mnimo absoluto en x*.
TCNICAS DE OPTIMIZACIN EN INGENIERA 17

M Pilar Jarabo Amores

Optimizacin sin restricciones. Propiedades de los algoritmos


Algoritmos iterativos : El algoritmo genera una serie de puntos cada uno de los cuales se obtiene a partir de puntos obtenidos en iteraciones anteriores. Dos estrategias: A partir de un punto inicial x0 S, el algoritmo A genera nuevos puntos que tambin pertenecen a S: A partir de un punto inicial x0 S, el algoritmo A genera un subconjunto de S, S1:

x k +1 = A ( x k )

S1 = A ( x 0 )
Se elije aleatoriamente un elemento x1S1 y se aplica de nuevo el algoritmo para obtener un S2S. En general:

S k +1 = A ( x k ) donde x k se elige aleatoriamente en S k x k +1 se elije aleatoriamente en S k +1


En la prctica se utiliza la primera estrategia, mientras que la segunda es una herramienta para analizar la convergencia de familias infinitas de algoritmos similares. Objetivo: La secuencia de puntos obtenida debe converger en un nmero finito o infinito de iteraciones al valor deseado. Algoritmo globalmente convergente: Para cualquier valor inicial, el algoritmo genera una secuencia de puntos que converge a la
solucin.
M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA 18

Optimizacin sin restricciones. Propiedades de los algoritmos


Algoritmos descendentes: Sea A un algoritmo definido sobre S y S el conjunto solucin. Una funcin continua y real Z en S es una funcin descendente para y A si:
Definir A de modo que f disminuya en cada iteracin

a) b)

x Z (y ) < Z (x) y A ( x ) x Z ( y ) Z ( x) y A ( x )

Minimice f ( x ) xS

En problemas sin restricciones, como

Si x f ( x ) = 0
Z ( x ) = f ( x )

Algoritmos cerrados: Sean dos espacios mtricos X e Y y A(x) un algoritmo que a un punto x X le hace corresponder un subconjunto A(x) Y. A est cerrado en x X si:

b) y k y , y k A ( x k )
A est cerrado en X si est cerrado en todo x X.

a ) x k x, x k X

y A( x)

Considere los algoritmos A: XY y B: YZ (puntoconjunto). El algoritmo C=BA:XZ se define como:

C ( x) = B ( y )
yA( x )

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

19

Optimizacin sin restricciones. Propiedades de los algoritmos


Teorema de la convergencia global establece condiciones que garantizan la convergencia de un algoritmo:

Sea A un algoritmo en X y suponga que dado x0 se genera la secuencia Sea X un conjunto solucin y suponga que:

{xk }k =0 / xk +1 A ( xk )

x k S X / S es compacto
Existe una funcin continua Z en X tal que: El lmite de cualquier subsecuencia convergente de es una solucin.

a ) Si x , Z ( y ) < Z ( x ) y A ( x ) b) Si x , Z ( y ) Z ( x ) y A ( x )
A est cerrado en puntos situados fuera de X

{x k }

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

20

Optimizacin sin restricciones. Propiedades de los algoritmos


Ejercicio 5: Ejercicio 6:

1 2 ( x 1) + 1 A( x) = 1 x 2

x >1 x 1

[0,x) A( x) = 0

1 x > 0 x=0

= {0} Z ( x) = x

= {0} Z ( x) = x

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

21

Optimizacin sin restricciones. Propiedades de los algoritmos


Orden de convergencia: Si la secuencia rk de nmeros reales converge a r*, el orden de convergencia de rk se define como el supremo de los nmeros p no negativos que satisfacen la condicin:

0 lim

rk +1 r * rk r *
p

<

Si la secuencia rk tiene orden de convergencia p y existe el lmite

= lim

rk +1 r * rk r *
p

rk +1 r * = rk r *

Convergencia lineal: Si la secuencia rk de nmeros reales converge a r* de modo que

lim
k

rk +1 r * rk r *

= <1

Entonces rk converge linealmente a r* con velocidad de convergencia En el caso de tener una secuencia de vectores, sus propiedades de convergencia se definen con respecto a alguna funcin continua f, analizando la convergencia de f(x) a f(x*). La funcin f suele recibir el nombre de funcin de error.
M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA 22

Filtros adaptativos
Definicin: Un sistema adaptativo puede definirse como aquel capaz de alterar o ajustar su estructura para mejorar su comportamiento a travs del contacto con el entorno en el que se desarrolla. Su comportamiento se evala de acuerdo a algn criterio que, generalmente, ser una funcin de error.
El proceso de adaptacin es un ejemplo de proceso de optimizacin para minimizar la funcin de error elegida (funcin objetivo). Una de las funciones de error ms utilizadas es el error cuadrtico medio. Al tratarse de una funcin objetivo no lineal, el problema de optimizacin a resolver puede clasificarse como un caso de programacin no lineal. Como adems, no vamos a imponer restricciones, estamos ante un ejemplo de programacin no lineal sin restricciones.

Sistemas adaptativos en lazo abierto:

Filtro FIR

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

23

Filtros adaptativos
Sistemas adaptativos en lazo cerrado:

Ventajas: Aplicaciones para las que no existe o no se conoce ningn mtodo de sntesis analtico. Ante un fallo parcial del sistema, el sistema en lazo cerrado seguir funcionando reajustando y reoptimizando los controles que permanezcan intactos.
M Pilar Jarabo Amores

Inconvenientes: Puede que el criterio de funcionamiento, funcin objetivo, no tenga un nico mnimo. Como en los sistemas de control en lazo cerrado, el sistema puede ser o hacerse inestable (el proceso adaptativo o de optimizacin diverge en lugar de converger).
TCNICAS DE OPTIMIZACIN EN INGENIERA 24

Filtros adaptativos
Aplicaciones de los sistemas adaptativos en lazo cerrado:
Identificacin: Modelado inverso:

Prediccin:

Cancelacin de interferencias:

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

25

Filtros adaptativos
Ejemplo: Combinador lineal adaptativo

X k = x0 k , x1k ,..., xLk

Wk = w0 k , w1k ,..., wLk

yk = XT Wk = WkT X k k

k = d k XT Wk = d k WkT X k k k2 = d k2 WkT X k XT Wk 2d k XT Wk k k

E k2 = E d k2 WkT E X k XT Wk 2 Wk E d k XT k k

MSE = E k2 = E d k2 WkT R XX Wk 2RT WkT Xd

Se asume que la secuencia de entrada, la salida deseada y el error son procesos estacionarios

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

26

Filtros adaptativos
Ejemplo: Combinador lineal adaptativo

= min + ( W W *) R XX ( W W *)
T

MSE = E k2 = E d k2 WkT R XX Wk 2R Xd Wk

(W) ( W ) ( W ) , ,..., ( W ) = = 2R XX W 2R Xd = 0 w0 w1 wL
T

W* = R 1 R Xd XX

min = E d k2 W *T R XX W * 2RT W * Xd
Adems ( W ) = 2R XX. En la prctica, Rxx ser casi siempre definida positiva, aunque en ocasiones es semidefinida positiva.
2

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

27

Redes neuronales
Definicin: Procesador masivo paralelo distribuido, formado por unidades simples, con una propensin natural a almacenar conocimiento experimental y hacerlo disponible para ser usado. Se asemeja al cerebro humano en dos aspectos: La red adquiere el conocimiento del entorno a travs de un proceso de aprendizaje. La intensidad de las conexiones interneuronales, pesos sinpticos, se emplea para almacenar el conocimiento adquirido.

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

28

Redes neuronales. Definicin y tipos


Neurona con funciones de base lineal:

y g()
I ( x ) = 0 + i xi = xT w
i =1 n

Modelo de McCulloch y Pitts (1943): funcin escaln no simtrica

1, x > 0 g ( x) = 0, x 0
Limitador en rampa (aprox. a amplificador lineal):

1, x 1 2 g ( x ) = y, 1 > x > 1 2 2 0, x 1 2
Funciones sigmoide: funcin logsitca:

... x2 x3 xn

g ( x) =

1 1 + exp ( ax )

Todas estas funciones tienen sus versiones simtricas en torno al origen [-1,1]

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

29

Redes neuronales. Definicin y tipos


Neurona con funciones de base radial: Distancia de Mahalanobis de x a un vector de referencia, t, respecto de un amatriz de ponderacin C:

y
g()

x t C = ( x t ) C 1 ( x t )
2 T

Si C es simtrica, las superficies definidas por una distancia constante a t son hiperelipsoides, cuyos ejes principales vienen dados por los autovectores de C. Los autovalores de C determinan las varianzas a lo largo de cada uno de los ejes principales. La funcin de activacin suele ser de tipo gaussiano:

... x2 x3 xn

x2 g ( x ) = exp 2 Otras funciones de activacin: g ( x) = x + ; g ( x) =


2 2

x2 ; g ( x ) = exp 2 ; > 0; x R x2 + 2 2

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

30

Perceptrn multicapa
En general, en las redes neuronales las neuronas se organizan formando capas (redes de una capa o multicapa). Atendiendo a cmo se conectan entre s las neuronas, las redes pueden ser de propagacin directa o recurrentes.

Capa 1
1

Capa 2
1

Capa L
1

10 11 z1 K 1 21
(1) (1) (1 )

(1)

g()
1
11
(1 )

1 0

( 1) ( 1)

gI()
1

y1

11

(2 )

1 0 g2 ()

( 2)

y1

( 2)

...

L 1

( L)

L0

( L)

gL ()

y1

( L)

20

(1)

11

(2 )

z1

2 1

( 1)

g()

2 0
(1 )

( 1)

2 1 y2
( 1)

( 2)

10 2M
(1 )

(2)

K 1

gI()

L1
( 2)

( L)

12

(2)

g()

2 0 w 22
(1 )

2 0 y 2 ...
( 2)

( L)

g2 ()

gL ()

y2

( L)

1M

(1 )

1K

(2)

1 M zM

( 1)

K 1 M 2
( 1)

(2 )

1
(2 ) (2 )

K 0 g2 () K K

K 1 y K... K K

(L )

K 0 gL ()

(L )

zM

K 0 gI()

yK

(L )

(1 )

(2 )

(L )

K 0 g()

(1)

yK

(1 )

K1 neuronas

K2 neuronas

KL neuronas

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

31

Redes con funciones de base radial

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

32

Mtodos basados en el gradiente. Mtodos descendentes


Estructura bsica de estos algoritmos:

1. 2.

Dado un punto inicial, x0, se determina, de acuerdo a una regla prefijada, una direccin de movimiento, d1 (descendente). Se determina la magnitud del desplazamiento (el paso) en esa direccin hacia un mnimo relativo de la funcin objetivo en esa direccin: x1=x0+d1.

3.

En el punto nuevo, se determina una nueva direccin y se repiten los pasos 2 y 3. As: xk+1=xk+dk+1

Los algoritmos se diferencian en la regla que utilizan para determinar las sucesivas direcciones de movimiento.

LINE SEARCH : determinacin del mnimo en una direccin. Resolucin de un problema de minimizacin en una dimensin.

Soluciones: Mtodo de mxima pendiente. Mtodos basados en aproximacin de funciones: Mtodo de Newton.

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

33

Mtodos basados en el gradiente. Mtodo de mxima pendiente


El mtodo de mxima pendiente tambin se conoce como mtodo del gradiente. Es el que se suele usar como primera estrategia ante un problema nuevo y es el estndar de referencia para evaluar otros mtodos. Para minimizar una funcin f C1:

x k +1 = x k k f ( x k )

k es un escalar no negativo que minimiza

f x k k f ( x k )

Recurdese el problema del diseo de filtros FIR adaptativos bajo el criterio de minimizacin del error cuadrtico medio:

Caso particular: f es cuadrtica

f (x) =

1 T x Qx xT b 2

( W ) = E d k2 WkT R XX Wk 2R Xd Wk

Si Q es simtrica y definida positiva, todos sus autovalores son positivos y, adems, f es estrictamente convexa, por lo que su nico mnimo se obtiene igualando el gradiente a cero: Qx* = b Propiedades: Las regiones en las que f es constante son hiper-elipsoides en el espacio Rn. Los autovectores de Q son ortogonales (constituyen una base de Rn) e indican las direcciones de los ejes de los hiper-elipsoides. La magnitud de cada eje es inversamente proporcional al autovalor asociado al autovector que indica su direccin.

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

34

Mtodos basados en el gradiente. Mtodo de mxima pendiente


Funcin cuadrtica

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

35

Mtodos basados en el gradiente. Mtodo de mxima pendiente


Caso particular: f es cuadrtica

f ( x) = E (x ) =

1 T x Qx xT b 2

x* = Q 1b

En lugar de trabajar con f definimos la funcin:

1 (x x *)T Q(x x *) = f (x ) + x *T Qx * 2
x k +1 = x k k g k = x k k (Qx k b )

E (x ) = f (x ) = g(x ) = Qx b

El valor de k que minimiza f (x k k g k ) = f (x k k (Qx K b )) respecto a k en la expresin:

puede obtenerse de forma explcita derivando

f (x k k g k ) =

1 (x k k g K )T Q(x k k g K ) (x k k g K )T b 2

gT g K k = Tk g k Qg K

gT g K x k +1 = x k T k g Qg k K

g k

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

36

Mtodos basados en el gradiente. Mtodo de mxima pendiente


Caso particular: f es cuadrtica

Teorema: Para cualquier vector inicial x0, el mtodo de mxima pendiente converge al nico mnimo x* de f.
Adems en cada iteracin k se cumple:
Aa E (x k +1 ) E (x ) A+ a
2

Donde a y A son, respectivamente, el menor y el mayor autovalor de Q. En general, se puede decir que el mtodo de mxima pendiente se ralentiza cuando los contornos de f se hacen ms excntricos (mayor es la diferencia entre los autovalores mximo y mnimo). Si a=A (contornos circulares), la convergencia tiene lugar en un solo paso. Caso particular: f no es cuadrtica En general, se utiliza la matriz hessiana de la funcin objetivo en la solucin como si fuera la matriz Q del caso cuadrtico. Teorema: Supngase que f C2, tiene un mnimo relativo en x* y que a>0 es el menor autovalor de su hessiana en x*, mientras que A>0 es el mayor. Si xk es una secuencia generada por el mtodo de mxima pendiente que converge a x*, entonces f(xk)converge linealmente a f(x*) con una velocidad de convergencia no superior a: [(A-a)/(A+a)]2.
M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA 37

Mtodos basados en el gradiente. Mtodo de mxima pendiente


Ejemplo: Filtro adaptativo con un solo coeficiente
Si las seales son estacionarias, la superficie de error es una parbola cuya ecuacin puede escribirse como:

= min + (w w *)2 ,

= E [xk xk ]

d wk +1 = wk = wk 2 (wk w *) = (1 2 )wk + 2w * dw k
Ecuacin en diferencias, lineal, de primer orden y de coeficientes constantes, cuya solucin es:

wk = (1 2 ) w0 + 2 w * (1 2 )
k n =0

k 1

Si |r|=|1-2|<1 (1/)>>o, el algoritmo es estable y

lim wk = w *

wk = (1 2 )

1 (1 2 ) w0 + 2 w * 1 (1 2 )

wk = w * + (1 2 ) (w0 w *)
k

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

38

Mtodos basados en el gradiente. Mtodo de mxima pendiente


Ejemplo: Filtro adaptativo con un solo coeficiente

Siempre que |r|<1, la velocidad de convergencia aumenta cuando r disminuye

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

39

Mtodos basados en el gradiente. Mtodo de mxima pendiente


Ejemplo: Filtro adaptativo con un solo coeficiente
Curva de aprendizaje:

k = min + (wk w *)2 k wk = w * +(1 2 ) (w0 w *)


k = min + (1 2 )2 k (w0 w *)2
El error sigue una progresin geomtrica hacia su mnimo, de razn (1-2)2.

Como la razn no es negativa, el error cuadrtico medio nunca oscilar y ser estable si r=(1-2)2<1

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

40

Mtodos basados en el gradiente. Mtodo de mxima pendiente


Ejemplo: Filtro FIR adaptativo de orden L
MSE = E k2 = E d k2 WkT R XX Wk 2R T WkT Xd X k = x0 k , x1k ,..., xLk
T

Wk = w0 k , w1k ,..., wLk

Wk +1 = Wk ( Wk ) = Wk ( 2R XX Wk 2R Xd ) Wk +1 = Wk + 2 R XX ( W * Wk ) = ( I 2 R XX ) Wk + 2 R XX W *

(W) ( W ) ( W ) ( W ) = , ,..., = 2R XX W 2R Xd = 0 w0 w1 wL
T

W* = R 1 R Xd XX
Salvo que la matriz de autocorrelacin sea diagonal, cada wi(k+1) ser funcin de todos los componentes de Wk.

w0( k +1) w 1 2 R XX ( 0 ) 2 R XX (1) L 0 k w1( k +1) = 2 R (1) 1 2 R ( 0 ) L w1k + 2 R W * XX XX XX M M M M M w wLk L ( k +1)

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

41

Mtodos basados en el gradiente. Mtodo de mxima pendiente


Ejemplo: Filtro FIR adaptativo de orden L
Wk +1 = (I 2 R XX )Wk + 2 R XX W *
Forma normalizada de la matriz de autocorrelacin de la seal de entrada:

R XX = VV 1

V matriz de autovectores matriz diagonal cuyos elementos son los autovalores

Traslacin para que el origen de coordenadas est en W*:

W ' = W W* Wk' +1 = ( I 2 R XX ) W 'k


Rotacin para que los nuevos ejes de coordenadas coincidan con los ejes principales (autovectores) de la superficie de error:

W ' = VW ' ' Wk''+1 = (I 2 )W ' 'k


M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA 42

Mtodos basados en el gradiente. Mtodo de mxima pendiente


Ejemplo: Filtro FIR adaptativo de orden L
W ' = VW ' ' Wk''+1 = (I 2 )W ' 'k

w' '0 ( k +1) w' ' 1 20 L 0 0 k 0 w' ' w' '1( k +1) = 0 1 21 L 0 1k M M M M M 1 2 L w' ' w' ' Lk L ( k +1)
wi''( k +1) = (1 2 i ) w ''ik i = 0,1,...L Wk'' = ( I 2 ) W0''
k

El algoritmo converge si

lim (1 2 i ) = 0 i = 0,1,...L
k k

CONDICIN NECESARIA Y SUFICIENTE PARA LA CONVERGENCIA DEL ALGORITMO SOBRE UNA SUPERFICIE DE ERROR CUADRTICA:

0< <

max

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

43

Mtodos basados en el gradiente. Mtodo de mxima pendiente


Ejemplo: Filtro FIR adaptativo de orden L
2 k = min + w' '0 n n (1 2n )2 k n =0 L

Wk = W * + ( I 2 R XX ) ( W0 W *)
k

La curva de aprendizaje es la suma de L+1 progresiones geomtricas con razones dadas por

(1 2 n )2

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

44

Mtodos basados en el gradiente. Mtodo de Newton


Supngase que se desea minimizar una funcin de una variable f(x) y que en un punto xk, es posible evaluar f(xk), f (xk) y f (xk) Es posible construir una funcin cuadrtica q(x) que en xk tiene el mismo valor que f y las mismas derivadas de primer y segundo orden.

q ( x ) = f ( xk ) + f ' ( xk )( x xk ) +

1 2 f '' ( xk )( x xk ) 2

El mnimo de f puede estimarse como el punto en el que la primera derivada de q se anula:

q ' ( x ) = f ' ( xk ) + f '' ( xk )( x xk )

0 = q ' ( xk +1 ) = f ' ( xk ) + f '' ( xk )( xk +1 xk )

xk +1 = xk

f ' ( xk ) f '' ( xk )

El mtodo puede interpretarse como una tcnica para resolver de forma iterativa ecuaciones de la forma: g(x)=f (x)=0

xk +1 = xk

g ( xk ) g ' ( xk )

Supngase que g(x) es continua y que g(x*)=0 y g(x*)0. Si x0 est suficientemente cerca de x*, la secuencia {xk}k=0 generada por el mtodo de Newton converge a x*, con, al menos, un orden de convergencia igual a 2.
M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA 45

Mtodos basados en el gradiente. Mtodo de Newton


En general, si x Rn:

f ( x ) q ( x ) = f ( x k ) + f ( x k )( x x k ) +

1 T ( x xk ) 2 f ( x k )( x x k ) 2

Clculo del punto en el que la primera derivada de q se anula:

q ' ( x ) = f ( x k ) + 2 f ( x k )( x x k )

q ' ( x k +1 ) = f ( x k ) + 2 f ( x k )( x k +1 x k ) = 0

x k +1 = x k 2 f ( x k ) f ( x k )

Condiciones suficientes para que exista un mnimo relativo: Sea x* es un punto interior de S, si se cumplen las condiciones siguientes:

a ) f
2

( x *) = 0 ( x *)
es definida positiva

b) f

Entonces, si la hessiana es definida positiva en un mnimo relativo, x*, y f tiene derivadas segundas continuas, su hessiana es definida positiva en las proximidades de la solucin, x*, y el mtodo est bien definido en esa regin.

Entonces x* es un mnimo relativo estricto de f.

Teorema: Sea fC3 en Rn y asmase que su hessiana es definida positiva en un mnimo local x*; si el algoritmo comienza
suficientemente cerca de x*, los sucesivos puntos generados por el algoritmo convergen a x*. El orden de convergencia es al menos de 2.
M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA 46

Mtodos basados en el gradiente. Mtodo de Newton


Modificaciones aplicables en puntos alejados de la solucin: Aunque el algoritmo tiene propiedades muy
interesantes en las proximidades de un mnimo, es necesario realizar una serie de modificaciones antes de poder aplicarlo en puntos alejados de la solucin:
1

2 Introduccin de un parmetro de ajuste: x k +1 = x k k f ( x k ) f ( x k ) El parmetro k se va ajustando para evitar que la funcin objetivo empiece a aumentar debido a trminos no cuadrticos. T

Modificacin de la hessiana antes de invertirla: Considere el siguiente algoritmo: x k +1 = x k k M k f ( x k ) donde Mk es una matriz nxn.
T

La direccin d k = M k f ( x k ) ser descendente si para >0 pequeo, f decrece cuando aumenta. Para valores pequeos de :

f ( x k +1 ) = f ( x k ) + f ( x k )( x k +1 x k ) + O x x k

) = f ( x ) f ( x ) M f
k k k

( xk )

+ O ( 2 )

Como 0, el segundo trmino de la derecha domina sobre el tercero. Para garantizar un descenso en f para pequeo, se requiere que T Impngase que Mk sea definida positiva f ( x k ) M k f ( x k ) > 0

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

47

Mtodos basados en el gradiente. Mtodo de Newton


Modificaciones aplicables en puntos alejados de la solucin:

Modificacin de la hessiana antes de invertirla:

x k +1 = x k k M k f ( x k )
Si Mk=I se obtiene el mtodo de nxima pendiente.

Si Mk= f ( x k ) se obtiene el mtodo de Newton, pero en un punto alejado de la solucin Mk puede que no sea definida positiva o incluso que no exista.
2

M k = k I + f

( xk )

k k = 0

Muy elevado mtodo de mxima pendiente mtodo de Newton

Clculo de

para que Mk sea definida positiva: Elija una constante >0 y dado xk, calcule los autovalores de

la hessiana en ese punto y elija

como la menor constante no negativa para la que la matriz k I + f

( xk )
48

tenga autovalores mayores o iguales que .


M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA

Mtodos basados en el gradiente. Mxima pendiente v.s. Newton


Ejemplo: Filtro FIR adaptativo de orden 1

Mtodo de mxima pendiente


M Pilar Jarabo Amores

Mtodo de Newton
TCNICAS DE OPTIMIZACIN EN INGENIERA 49

Mtodos Quasi-Newton
Estos mtodos utilizan una aproximacin de la inversa de la matriz hessiana. Mtodo clsico:
x k +1 = x k k 2 f ( x 0 ) f ( x k )
1
T

La hessiana que se calcul con el primer punto es la que se emplea en todo el proceso.

Clculo aproximado de la inversa de la hessiana. Cmo puede construirse la inversa de la matriz hessiana a
partir del gradiente calculado en varios puntos. Sea f una funcin en Rn con segundas derivadas continuas. Si para dos puntos xk, xk+1, definimos

g k +1 = f ( x k +1 ) ; g k = f ( x k ) ; p k = x k +1 x k
T T

entonces

g k +1 g k 2 f ( x k ) p k

Si la hessiana es constante: q k g k +1 g k f p k
2

Adems puede determinarse de forma nica a partir de n direcciones p0,,pn-1, linealmente independientes y sus correspondientes q0,qn-1. Si P y Q son matrices cuyas columnas son pk y qk, respectivamente:

2 f = QP 1
M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA 50

Mtodos Quasi-Newton
Clculo aproximado de la inversa de la hessiana.
Llegados a este punto, se propone la construccin de aproximaciones sucesivas de la inversa de la hessiana, Hk, en funcin de datos obtenidos en los primeros k pasos de un proceso descendente, de modo que si la hessiana fuese constante:

H k +1qi = pi

0ik

Despus de n iteraciones linealmente independientes,

Hn = (2 f )

-1

Para cualquier k<n el problema de construir una buena aproximacin de la inversa de la hessiana que en el caso de que esta sea constante satisfaga la relacin anterior, admite infinitas soluciones.

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

51

Mtodos Quasi-Newton
Correccin de rango 1.
Como F = f y su inversa son matrices simtricas, resulta lgico imponer que Hk, la aproximacin de F-1, tambin
2

lo sea. Veamos la posibilidad de utilizar una regla de adaptacin del tipo:

H k +1 = H k + ak z k zT k

ak z k zT k

define una matriz de (al menos) rango1. ak y zk se eligen para cumplir

H k +1q k = p k :
T

p k = H k +1q k = H k q k + ak z k zT q k k

H k +1 = H k

( p H k q k )( p k H k q k ) + k
ak ( zT q k ) k
2

qT p k qT H k q k = ak ( zT q k ) k k k
M Pilar Jarabo Amores

( p H q )( p k H k q k ) H k +1 = H k + k T k k qk (pk Hk qk )

TCNICAS DE OPTIMIZACIN EN INGENIERA

52

Mtodos Quasi-Newton
Correccin de rango 1.
En un proceso de optimizacin se calcular la direccin descendente en la iteracin k-sima como:

d k = H k g k
A continuacin se minimizar f(xk+kdk) con respecto a k0, para obtener: :

x k +1 = x k + k d k pk = k dk g k +1

( p H q )( p k H k q k ) H k +1 = H k + k T k k qk (pk Hk qk )

La frmula de actualizacin de Hk asegura que el resultado es una matriz definida positiva si el denominador es mayor que cero, condicin que no est garantizada. E incluso cuando es mayor que cero, puede ser demasiado pequeo dando lugar a problemas numricos.
M Pilar Jarabo Amores TCNICAS DE OPTIMIZACIN EN INGENIERA 53

Mtodos Quasi-Newton
Mtodo de Davidon-Fletcher-Powell En cada paso, la inversa de la hessiana se actualiza con la suma de dos matrices simtricas de rango 1. Tambin se conoce como correccin de rango 2.

Comenzando con cualquier matriz simtrica, definida positiva H0, cualquier punto x0 y k=0: Paso 1: d k = H k g k Paso 2: Minimizar f(xk+kdk) con respecto a k0, para obtener: x k +1 = x k + k d k Paso 3:

pk = k dk

g k +1

q k = g k +1 g k :

p k pT H k q k q T H k H k +1 = H k + T k T k pk qk qk Hk qk
Si Hk es definida positiva, tambin lo ser Hk+1

M Pilar Jarabo Amores

TCNICAS DE OPTIMIZACIN EN INGENIERA

54

Vous aimerez peut-être aussi