5 optimizacion para ingenieros - optimizacion sin restricciones

52
La Universidad del Zulia Facultad de Ingeniería División de Estudios para Graduados Programa: Computación Aplicada Asignatura: Optimización para Ingenieros Prof. Luis Zerpa, M.Sc. Email: [email protected] 3. Optimización sin restricciones Condiciones de primero y segundo orden para la existencia de extremos Búsqueda Lineal Métodos básicos de descenso para funciones de varias variables

Upload: antonio-martinez

Post on 03-Jan-2016

91 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

La Universidad del ZuliaFacultad de Ingeniería

División de Estudios para GraduadosPrograma: Computación Aplicada

Asignatura:Optimización para Ingenieros

Prof. Luis Zerpa, M.Sc.Email: [email protected]

3. Optimización sin restricciones• Condiciones de primero y segundo orden para la existencia de extremos• Búsqueda Lineal• Métodos básicos de descenso para funciones de varias variables

Page 2: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Derivada direccional

• La derivada direccional permite tener información del comportamiento de la función si sus variables se modifican siguiendo el sentido indicado por el vector gradiente

• La Derivada direccional de f en p según el vector unitario [ D f(p) ] es el producto escalar del gradiente en p, por :

D f(p) = f(p)T

¿En qué sentido deberían desplazarse las variables de f, partiendo del punto p, para que los valores de f crezcan más rápidamente?

Page 3: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Derivada direccional

• Como la rapidez está dada por : f(p)T

• En esta expresión se suponen ya conocidos f y p; faltando conocer “” que haga máximo el producto escalar

• Siendo f(p)T = f(p). Cos = f(p).(1). Cos

• Donde : , es el ángulo formado por los vectores f(p) y

f(p)T , será máximo si y sólo si Cos es máximo, ó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

pf

pf

significa que el vector gradiente de una función f en un punto p, f(p), de su dominio se orienta en el sentido en el cual f crece mas rápidamente

Page 4: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Gradiente

• El gradiente de una función escalar de n variables f(x1, x2,…, xn,), denotado por f, es el vector n-dimensional

nxxf

xxf

xxf

xf ,,,21

•El gradiente de una función en un punto indica la dirección, a partir de ese punto, en la que dicha función crece más rápidamente y, además, la dirección ortogonal a las curvas de nivel de f (curvas en las que la función 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

Page 5: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Matriz Hessiano

• El Hessiano de una función escalar de n variables f(x1, x2,…, xn,), denotado por Hf, es la matriz de dimensión nxn

• Una matriz cuadrada A es definida positiva si :

y es negativa si la desigualdad es la contraria

2n

2

2n

2

1n

2

n2

2

22

2

12

2

n1

2

21

2

21

2

x

f

xx

f

xx

f

xx

f

x

f

xx

f

xx

f

xx

f

x

f

fH

00 xAxxT

Page 6: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Optimización Sin Restricciones

Formulación del problema de optimización• Cualquier problema de optimización, por complejo que sea, puede

expresarse en los siguientes términos

Encontrar un vector x tal que se minimice una función objetivo f(x)

Sujeto a restricciones de la forma:

donde x es un vector de variables independientes

• La función objetivo puede tener un solo mínimo, en cuyo caso se denomina unimodal, o varios mínimos locales o globales, en cuyo caso se denomina multimodal

m1,...,k

0gk

x

Page 7: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Clasificación de problemas de optimización

• De acuerdo a la forma de f(x) y las restricciones:– Programación Lineal: f(x) y las restricciones son lineales– Programación No-lineal: f(x) es no-lineal y las restricciones pueden ser

no-lineales• De acuerdo a la presencia o no de restricciones:

– Optimización no restringida: El problema de optimización no tiene restricciones

– Optimización restringida: El problema de optimización tiene restricciones

• Según su dimensionalidad: – Optimización unidimensional: función objetivo de una variable– Optimización multidimensional: función objetivo de varias variables

• Según el número de funciones objetivo:– Optimización con un objetivo: Una sola función objetivo– Optimización con múltiples objetivos: varias funciones objetivo

Page 8: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Clasificación de problemas de optimización

• Existen varios métodos para resolver un problema de optimización

• Estos métodos pueden agruparse en dos grandes clases:

– Métodos de optimización basados en derivadas

– Métodos de optimización no basados en derivadas

Page 9: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Métodos de optimización basados en derivadas

Métodos básicos de descenso• Son técnicas básicas utilizadas en la solución iterativa de

problemas de minimización sin restricciones

• Ofrecen la forma más simple y directa de resolver estos problemas

• Ofrecen en términos prácticos una referencia con relación a la dificultad de implementación y velocidad de convergencia

• En general, las técnicas avanzadas se comparan con estas técnicas básicas

Page 10: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Estructura básica de los métodos básicos de descenso

1. Se inicia en un punto, x0

2. Se determina la dirección de descenso mediante una regla fija (Primera diferencia entre algoritmos)

3. Luego, se busca el mínimo en esa dirección (Búsqueda lineal)

• La forma general de los métodos básicos de descenso se puede expresar como,

dxx 01

Page 11: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda Lineal

• Las técnicas de búsqueda lineal son realmente procedimientos de optimización para una sola variable, los cuales son realizados repetidamente en problemas de varias variables

• La elección de una dirección de búsqueda tiene un alto costo computacional, es por ello que los métodos de descenso basados en gradiente sufren modificaciones con el objeto de minimizar o reducir el número de cálculos de gradiente, Hessiano, e inversión de matrices

• La modificación fundamental consiste en reducir el problema a uno de optimización a lo largo de la dirección de descenso

Page 12: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda Lineal

• Específicamente se debe resolver el sub-problema de optimización:

– Encontrar , tal que

donde d es la dirección de descenso

• Hallado el óptimo se inicia una nueva iteración de descenso

)(min df

1ix

Page 13: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda Lineal

• Este sub-problema es sensiblemente más sencillo que la optimización general ya que es un problema de una dimensión con una única variable,

• La elección de un método adecuado de búsqueda lineal es de gran importancia en un algoritmo de optimización

• La búsqueda lineal es responsable de un alto porcentaje del costo de la evaluación de la función objetivo

Page 14: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Tipos de Métodos de Búsqueda Lineal

• Directos– Gradiente– Newton– Quasi-Newton– Secante

• Interpolación Polinómica– Cuadrática– Cúbica– DSC (Davies, Swann y

Campey)

• Basados en intervalos– Bisección– Búsqueda de Fibonacci– Búsqueda Dorada

• Métodos Inexactos– Armijo– Goldstein

Page 15: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda de Fibonacci

• Este método determina el mínimo valor de una función f sobre un intervalo cerrado [c1, c2]

• Esta función puede estar definida en un dominio más amplio, pero el método requiere que dicho intervalo de búsqueda sea definido

• Se asume que f es unimodal

• El mínimo es determinado (al menos aproximadamente) mediante la evaluación en un cierto número de puntos

• Se pretende definir una estrategia de búsqueda que seleccione la observación siguiente basada en los valores funcionales de las observaciones anteriores

Page 16: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda de Fibonacci

• Esto se define según el siguiente problema:

– Encontrar como seleccionar sucesivamente N observaciones, sin contar con un conocimiento explícito de la función, de forma tal que podamos encontrar la más pequeña región de incertidumbre posible en donde se encuentre el mínimo

• Esta región de incertidumbre es determinada en cualquier caso por: las observaciones (sus valores funcionales) y la suposición 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

• La región de incertidumbre es el intervalo [xk-1, xk+1] donde xk es el mínimo de los N puntos evaluados. En ese intervalo se encuentra el mínimo

Page 17: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda de Fibonacci

• La estrategia para seleccionar sucesivamente observaciones para obtener la región de incertidumbre más pequeña se describe a continuación:

• d1 = c2 – c1; es la amplitud inicial de la incertidumbre

• dk es la amplitud de la región de incertidumbre luego de k observaciones

• Si son realizadas N observaciones se tiene que

• Donde Fk son los números de la secuencia Fibonacci generados por la relación:

• FN = FN -1 + FN -2 donde F0 = F1 = 1

• Donde cada número después de los dos primeros representa la suma de los dos precedentes

11 d

F

Fd

N

kNk

Page 18: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda de Fibonacci

Procedimiento para la reducción de la sección de incertidumbre:

1. Especificar N, y calcular los números de la serie Fibonacci {F0, F1,…, FN}

2. Calcular

3. Colocar simétricamente desde los extremos del intervalo inicial a distanciados observaciones

4. De acuerdo a donde se encuentre la muestra con menor valor funcional se determina la región de incertidumbre,

5. La tercera muestra es colocada simétricamente dentro de este nuevo intervalo con respecto a la observación ya incluida en el intervalo, de forma tal que la amplitud de la región de incertidumbre sea

N

N

F

F 1

11 d

F

F

N

N

11

2 dF

Fd

N

N

12 d

F

F

N

N

Page 19: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda de la Sección Dorada

• Pertenece a los métodos de búsqueda lineal basados en intervalos, además es una versión mejorada de la búsqueda de Fibonacci

• En la búsqueda de la Sección Dorada se usan tres valores de la función para detectar el valor extremo, se toma un cuarto número, y se determina donde ocurre el mínimo, en los primeros tres o los últimos tres valores

• Se minimiza la evaluación de la función objetivo al reemplazar los valores anteriores con los nuevos, haciendo que se cumplan las siguientes condiciones

210 l l l

1

2

0

1

l

l

l

l xl xu

l0

l1 l2

Primera Iteración

l2

Segunda Iteración

xl xu

l0

l1 l2

Primera Iteración

l2

Segunda Iteración

Page 20: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda de la Sección Dorada

• La primera condición específica 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 razón de las longitudes debe ser igual

210 l l l

1

2

0

1

l

l

l

l

xl xu

l0

l1 l2

Primera Iteración

l2

Segunda Iteración

xl xu

l0

l1 l2

Primera Iteración

l2

Segunda Iteración

1

2

21

1

l

l

ll

l

1

2

l

lR

RR

11 012 RR

61803.0

2

15

2

1411

R

La Razón Dorada

Page 21: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda de la Sección Dorada1. Se comienza con los valores

extremos del intervalo xl, xu que contienen el extremo local de f(x)

2. Dos puntos interiores de escogen de acuerdo a

• x1 = xl + d

• x2 = xu - d

3. Se evalúa la función en los dos puntos interiores

• Si f(x1) < f(x2) xl = x2; x2 = x1;

• Si f(x2) < f(x1) xu = x1; x1 = x2;

xl xu

l0

l1 l2

Primera Iteración

l2

Segunda Iteración

xl xu

l0

l1 l2

Primera Iteración

l2

Segunda Iteración

lul xxxx

2

151

luu xxxx 2

152

lu xxd 2

15

x1x2

xux1xl

Page 22: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Ajuste Cuadrático (Método DSC, Davies, Swann y Campey)

• El método DSC es un método de búsqueda lineal por ajuste de curvas (interpolación polinómica), es recomendado para determinar la región donde se encuentra el mínimo en funciones de una sola variable

• En la búsqueda unidimensional DSC, se toman pasos cuya dimensión se va incrementando sucesivamente hasta que el mínimo es sobrepasado y luego se realiza una interpolación cuadrática

x(m-3)

1

x 2x 4x 8x

x(m-2) x(m-1) x(m+1) x(m)

2

3

46

5

f(x)

x(m-3)

1

x 2x 4x 8x

x(m-2) x(m-1) x(m+1) x(m)

2

3

46

5

f(x)

Page 23: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Ajuste Cuadrático (Método DSC, Davies, Swann y Campey)

1. Se evalúa 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/2 y repita el paso 1

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+1Si 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 cálculo adicional

x(m-3)

1

x 2x 4x 8x

x(m-2) x(m-1) x(m+1) x(m)

2

3

46

5

f(x)

x(m-3)

1

x 2x 4x 8x

x(m-2) x(m-1) x(m+1) x(m)

2

3

46

5

f(x)

Page 24: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Ajuste Cuadrático (Método 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é más 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 interpolación cuadrática para estimar x* (el valor de la variable independiente correspondiente al mínimo de f(x))

x(m-3)

1

x 2x 4x 8x

x(m-2) x(m-1) x(m+1) x(m)

2

3

46

5

f(x)

x(m-3)

1

x 2x 4x 8x

x(m-2) x(m-1) x(m+1) x(m)

2

3

46

5

f(x)

cba

cab

xfxfxf

xfxfxxxx

22

*ˆ*

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

Page 25: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Ajuste Cúbico

• Dados xk-1 y xk junto a f(xk-1), f ’(xk-1), f(xk), y f ’(xk) es posible ajustar una ecuación cúbica en los puntos

• El punto xk+1 (mínimo) puede ser determinado como el punto mínimo relativo de esta ecuación cúbica

21

1211 2''

'

uxfxf

uuxfxxxx

kk

kkkkk

21

12

12

1

111

''

3''

kk

kk

kkkk

xfxfuu

xx

xfxfxfxfu

donde,

Page 26: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método del Gradiente

• Supongamos que f(x) es una función de una variable a ser minimizada y que f(x) y f ’(x) existen

xk+1 = xk – f ’(xk)

• Un factor de escalamiento es empleado para escalar el gradiente

xk+1 = xk – f ’(xk) Método del gradiente modificado

•El valor de (0,1], es decir, es un parámetro ajustable seleccionado por el usuario

•Es deseable que decrezca a medida que progresa la búsqueda, lo que hace que tengamos dos parámetros por ajustar: 0 y la

tasa de disminución de

•Con el método de Newton tales parámetros son calculados directamente en cada iteración xk

f’(x)

xk+1

f(x)

xk

f’(x)

xk+1

f(x)

Page 27: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método de Newton

• Supongamos una función 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 función cuadrática a partir del desarrollo de Taylor:

• Se puede estimar xk+1 determinando el punto donde la derivada de q

se hace cero

2''2

1' kkkkk xxxfxxxfxfxq

0'''' 11 kkkkk xxxfxfxq

k

kkk xf

xfxx

''

'1

xk xk+1

f(x)

xk xk+1

f(x)

Page 28: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método de Newton

Implementación• Para la implementación de este método en una función de varias

variables es necesario calcular la primera y segunda derivada de la función como derivadas direccionales, obteniendo un valor escalar, de la siguiente manera,

donde d es el vector unitario de la dirección de descenso

dxfxf kk

'

dxHdxf kT

k

''

Page 29: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método Quasi-Newton

• Cuando no es posible evaluar analíticamente las primeras y segundas derivadas, se pueden emplear métodos de diferencias finitas para calcularlas:

2

2''

2'

x

xxfxfxxfxf

x

xxfxxfxf

Page 30: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda Lineal Inexacta

• En la práctica no se determina el mínimo de la búsqueda lineal en forma exacta

• En este sentido, es deseable sacrificar precisión en la búsqueda lineal con el propósito de favorecer el tiempo de computo general

• Recordemos que el mínimo en una búsqueda local no tiene porque ser el mínimo de la función

• La imprecisión es generalmente introducida simplemente terminando la búsqueda lineal antes de que converja

• La naturaleza exacta de la imprecisión depende de:

– La técnica de búsqueda empleada

– El criterio de parada

Page 31: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda Lineal Inexacta

Criterios de terminación de la búsqueda lineal

• Prueba de porcentaje: Sea xk+1 = xk + d; este criterio determina para estar dentro de un porcentaje del verdadero valor

• Específicamente, se selecciona una constante c tal que 0 < c < 1 (típicamente c = 0.1) y el parámetro en la búsqueda lineal es determinado de forma tal que satisfaga | - *| ≤ c* donde * es el verdadero valor de minimización

Page 32: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda Lineal Inexacta

Regla de Armijo

• Primero garantiza que no sea muy grande y luego que no sea muy pequeño

• La regla de Armijo es implementada al considerar la función

(0) + ’(0) para 0 < < 1

• Esta función está representada por la línea segmentada en la figura

kk dxf

Intervalo aceptable

Intervalo aceptable

Page 33: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda Lineal Inexacta

Regla de Armijo

• Un valor de se considera que no es muy grande si el valor de la función cae debajo de la línea punteada; es decir, si

() (0) + ’(0)

• Para asegurar que no sea muy pequeño, se selecciona un valor de > 1, y se considera que no es muy pequeño si

() > (0) + ’(0) ,

Intervalo aceptable

Intervalo aceptable

•Esto quiere decir que si es aumentado por un factor , falla el criterio anterior que requería que el valor de la función estuviera por debajo de la línea punteada

•La región aceptable definida por la regla de Armijo en la figura corresponde a un valor de igual a 2

Page 34: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Búsqueda Lineal Inexacta

Regla de Armijo

• En la práctica, la regla de Armijo es utilizada para definir una técnica de búsqueda lineal simplificada que no utiliza el ajuste de curvas

1. Se define un arbitrario

2. Si se satisface () (0) + ’(0) ; el valor de es aumentado repetidas veces por hasta que ya no se satisface esta desigualdad y se selecciona el penúltimo

3. Si () > (0) + ’(0) ; el inicial se considera muy grande y se divide repetidas veces por hasta que se consiga un apropiado

• Valores típicos: = 2, y = 0.2

Page 35: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Criterios de parada para métodos de búsqueda Lineal

• Derivada direccional sobre la dirección de descenso se aproxima a cero

• Valor de la función objetivo varia muy poco

• Máximo número de iteraciones alcanzado

• Donde es un número muy pequeño, e.g., 1e-5, y maxIter es el número máximo de iteraciones especificado por el usuario

dxfxfDTkk

d11

kk xfxf 1

Iteriter max

Page 36: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Métodos Básicos de Descenso para funciones de varias variables

• La forma general de los métodos básicos de descenso se puede expresar como

Determinación de Direcciones de Descenso

001 dxx

cosbaba

θa

b

Si θ > 90º, entonces cos(θ ) < 0

Si sabemos que el gradiente es la máxima dirección de crecimiento en un punto

Cualquier vector que tenga más de 90º con el gradiente define una dirección de descenso

d

f

0fd

Page 37: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método del Descenso más Rápido

• Este método, denominado también método del gradiente, es una de las técnicas más antiguas para minimizar una función definida en un espacio multidimensional

• Su filosofía es muy sencilla: la dirección contraria a la del vector gradiente en un punto es la dirección de más rápido decrecimiento de la función 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 según la fórmula:

donde es un número positivo, dado por algún método de búsqueda lineal

3. Se repite el paso 2 hasta que se encuentre un punto xi+1 tal que

ii1i xfxx

0 1ixf

Page 38: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método del Descenso más Rápido

• Ejemplo 1: Se desea minimizar la función

22 yx20)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 función es unimodal

El mínimo 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,f = {2x, 2y}

Page 39: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método del Descenso más Rápido

• Ejemplo 1:

Evolución del método para un = 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

Evolución del método para un = 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

Page 40: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método del Descenso más Rápido

• Ejemplo 2: Se desea minimizar la función 22 yx320)y,x(f

Esta función es unimodal

El mínimo 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,f = {6x, 2y}

Page 41: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método del Descenso más Rápido

• Ejemplo 2: Se desea minimizar la función 22 yx320)y,x(f

Las curvas de nivel de esta función son de

forma elíptica, y el cambio de la dirección

de búsqueda de una iteración 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

Page 42: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método de Newton

• En este caso, la dirección de búsqueda se determina utilizando la segunda derivada de la función objetivo

• El método aproxima la función objetivo f en la vecindad de un mínimo con una serie de Taylor truncada hasta el término de segundo orden,

• Dado que la aproximación fa es una función de segundo orden, ésta es unimodal, y su mínimo es una buena aproximación del mínimo de la función objetivo

• El mínimo de la función fa se determina haciendo fa´= 0 y calculando el valor de xi que satisface la ecuación

1ifT

1i1i1ia xxHxxxxfxfxf 2

1

0 1iif xxHf

Page 43: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método de Newton

• Si la inversa de Hf existe, se tiene que:

• Que es el denominado método de Newton o de Newton-Raphson

fHxx 1f1ii

Direcciones de búsqueda calculada por los métodos de descenso más rápido y de Newton

Page 44: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método de Newton

• Ejemplo 3: Se desea minimizar la función

utilizando el método de Newton

22 yx320)y,x(f

El gradiente en un punto cualquiera es,f = {6x, 2y}

mientras que el Hessiano es la matriz

21 0

0 61

2 0

0 6 1fHH 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 aproximación de esta función utilizando la serie de Taylor es exacta, debido a que es una función cuadrática

Page 45: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método de Newton

• En los casos en los que la función no es cuadrática, se hacen aproximaciones sucesivas del mínimo utilizando la ecuación

• donde es positivo, hasta que se encuentra un valor cercano al extremo mínimo relativo, según una tolerancia especificada

• En cada punto en los que se evalúe la ecuación anterior, debe ocurrir que el Hessiano sea una matriz positiva definida, para que la dirección de búsqueda sea una dirección descendente

• En general, la condición de matriz positiva definida se cumple en la vecindad del mínimo, pero no existe garantía que ocurra en puntos lejanos al mismo

fHxx 1f1ii

Page 46: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Método de Levenberg-Marquardt

• Está dado por la ecuación

• donde y son positivos e I es la matriz identidad

• La idea es seleccionar de manera que la matriz I - Hf sea positiva definida

• La ecuación anterior se aproxima al método del descenso más rápido si , y al método de Newton 0

fHIxx 1ii

1f

Page 47: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Estrategia de descenso

• En la práctica se utilizan estrategias de descenso que utilizan varios métodos, de la siguiente manera:

1. Se inicia con el método de Newton, si no hay descenso (la matriz Hessiano NO es definida positiva)

2. Se emplea el método de Levenberg-Marquardt con un inicial, por ejemplo k = 0.001, se realiza la factorización de Cholesky a la

matriz para verificar si es definida positiva. Si la factorización de Cholesky falla (i.e. la matriz no es definida positiva) se incrementa en una razón, k = k

3. Si no hay descenso después de varios intentos (por ejemplo 10), se emplea el método del descenso más rápido

Page 48: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

ANEXO

Page 49: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Descomposición de Cholesky

• La descomposición o factorización de Cholesky expresa una matriz simétrica como el producto de una matriz triangular y su transpuesta

A = L∙LT L: matriz triangular inferior

• No todas las matrices simétricas se pueden factorizar de esta forma

• Las matrices que tienen este tipo de factorización son las matrices simétricas 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

Page 50: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Descomposición de Cholesky

• Los términos de la descomposición se pueden multiplicar entre si. El resultado se puede expresar en forma simple por relaciones recurrentes

• Para la fila k1-k,1,2, i para ,

1

1

ii

i

jkjijki

ki l

lla

l

1

1

2k

jkjkkkk lal

Page 51: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Descomposición de Cholesky

• Ejemplo,

97922555

2255515

55156

A

4.71

3.19

85.7

B

Para k = 1 4495.261111 al

Para k = 2 1237.64495.215

11

2121

la

l 1833.41237.655 22212222 lal

Para k = 3 454.2211

3131

l

al

1106.6232

2313333 llal

916.2022

31213232

l

llal

1106.6916.20454.22

01833.41237.6

004495.2

L

Sustitución hacia adelante Sustitución hacia atrás

7616.31

3049.9

2047.3

D

1982.5

2154.28

1964.24

X

Page 52: 5 Optimizacion Para Ingenieros - Optimizacion Sin Restricciones

Seudo código para la descomposición 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