Вы находитесь на странице: 1из 184

CATEDRA 1

Facultad de Ingeniería de Minas, Geología y Civil


Departamento académico de ingeniería de minas y civil

METODOS
NUMERICOS

Ingeniería Civil

ING. CRISTIAN CASTRO P.


Capitulo XI
OPTIMIZACIÓN
EN INGENIERÍA

ING. CRISTIAN CASTRO P.


INVESTIGACIÓN OPERATIVA
MODO DE PROCEDIMIENTO

Sistema Real

Identificación del problema  Condición organizativa


Formulación del problema
 Criterios de decisión

 Proyecciones
Modelo
(Sistema artificial aproximativo)  Restricciones

 Ponderación de riesgo
Disponibilidad de datos  Alternativas de decisión
Obtención de datos
Organización de datos

Selección de métodos

Solución

Interpretación

Realización
Cálculos en Investigación Operativa
a) Modelos matemáticos
- cálculos de naturaleza iterativa.
- la solución óptima no puede estar disponible en forma cerrada.
- se llega a la respuesta final en pasos o iteraciones, donde
cada nueva iteración acerca la solución al nivel óptimo.
- el número de iteraciones es función de la eficiencia del
algoritmo de solución y la estructura específica del modelo.

b) Modelos de simulación
- con cálculos voluminosos, que consumen mucho tiempo, pero
se tiene la seguridad de que los resultados buscados se
obtendrán en definitiva.
- control sobre el tiempo de cálculo de la computadora,
reduciendo el periodo de observación del modelo.
TECNICAS DE IO
DETERMINÍSTICOS ESTOCÁSTICOS
•Programación lineal •Cadenas de Markov
•Programación dinámica •Método de Montecarlo
•Transportación - Teoría de colas
•Asignación •Teoría de inventarios
•Modelo de redes •Simulación
•Programación no lineal
Por ejemplo, supongamos que para un millón de operaciones un sistema de procesamiento de
datos necesitara de 1 seg. , resultaría, dependiente de “n” para la solución del algoritmo los
tiempos siguientes:
FUNCIÓN POLINOMIO f(n) = n5 EXPONENCIAL f(n) = 2n

Tiempo de cálculo

n = 10 0,1 seg. 0,001 seg.

n = 20 3,0 seg. 1,00 seg.

n = 60 13,0 min. 366 siglos


INVESTIGACION INGENIERIA DE SISTEMAS
OPERATIVA
• Conjunto de técnicas matemáticas que se - Es una disciplina muy similar a la IO
utilizan para la toma de decisiones óptimas y el - Se aboca a la toma de decisiones con relación
análisis del comportamiento de sistemas, a a aquellos aspectos del sistema que están
través de la representación abstracta de los sujetos a cierto grado de control para alcanzar
mismos por medio de modelos matemáticos. objetivos dados
• La IO está más orientada hacia la - La Ingeniería de Sistemas esta orientado
administración u operación de los sistemas. hacia el diseño de los sistemas.
• La IO trata con problemas ”tácticos” (alcance o - La Ingeniería de Sistemas trata con
duración limitados) problemas estratégicos.

- Trabajan con sistemas.


- Utilizan grupos interdisciplinarios.
- Utilizan el método científico de análisis en problemas de diseño y otros.
- Utilizan las técnicas matemáticas modernas.

Problemas estratégicos Problemas tácticos


TEORÍA DE OPTIMIZACIÓN
Síntesis: Diseño óptimo y decisión
Muchas decisiones importantes se toman mediante la elección de
una medida cuantitativa de la eficiencia seguida de su optimización.
El decidir cómo diseñar, construir, regular o dirigir un sistema físico
o económico, idealmente comprende:
• Se debe conocer, exacta y cuantitativamente, cómo actúan entre sí
las variables del sistema.
• Se necesita una medida sencilla de la efectividad del sistema
expresable en forma de variables del mismo.
• Deben escogerse aquellos valores de las variables del sistema que
den la efectividad óptima.

• La mayor parte del esfuerzo empleado en un estudio de optimización está


en la práctica en la comprensión del sistema y su descripción cuantitativa
en forma de tablas, gráficos, programas de cálculo o ecuaciones
matemáticas.
La optimización es decisiva porque disminuye el número de elecciones
posibles hasta reducirlas a una sola, la mejor. Además proporciona
información sobre la sensibilidad de las condiciones óptimas. Comúnmente
se emplean el costo mínimo o beneficio máximo como criterios para tomar
decisiones.
Análisis: Principios del óptimo
Al utilizar la teoría de optimización para analizar el
comportamiento natural, se invierte el orden de las
tres etapas señaladas para la toma de decisiones.
El comportamiento del sistema se deduce suponiendo
que se comporta de un modo como para optimizar
alguna medida dada de efectividad.
El comportamiento del sistema queda completamente
especificado al identificar el criterio de efectividad y
aplicarle la teoría de optimización.
Síntesis Construcción de diseños
Toma de decisiones
Teoría de
Optimización Análisis Compresión del comportamiento
OPTIMIZACIÓN

Programación matemática Métodos variacionales


Objetivo: encontrar el mejor punto que Objetivo: encontrar la mejor función
optimice el modelo económico. que optimice el modelo.

Formulación matemática Formulación matemática


Optimizar y(x), x = (x1,x2,...,xn) Optimizar J[y(x)] = F[y(x),y’(x)]dx
Sujeta a : fj(x)  0 Sujeta a : restricciones algebraicas,
j = 1,2,...,m Integrales o diferenciales

Métodos Métodos
Analíticos Cálculo de variaciones
Programación geométrica Programación dinámica (continua)
Programación lineal Principio del máximo (continua)
Programación dinámica (discreta)
Programación no lineal
Técnicas de búsqueda
Principio del máximo (discreto)
Programación cuadrática
Programación separable
Programación convexa
Programación entera
Programación combinacional
Programación heurística
COMIENZO
PROGRAMACIÓN Punto Función o punto Función Métodos
MATEMÁTICA óptimo Variacionales

Hay restricciones en No
el problema

Es posible usar Sí Forma función de Derive y resuelva


multiplicadores de Lagrange ecuaciones
Lagrange diferenciales

No

Funciones objetivo Sí Resuelva usando


y restricciones Programación
lineales Lineal

No

Funciones objetivo Sí Resuelva usando


y restricciones Programación
polinomios Geométrica

No

Es posible formular el Sí Resuelva usando


problema en etapas Programación
Dinámica
No

Resuelva usando La respuesta es SI


técnicas de búsqueda satisfactoria? PARE

REGRESA A
LA PARTIDA
Representación gráfica de un problema de optimización

X2 X2
Mínimo local Mínimo local

Mínimo global Mínimo global

X1 X1
Figura (3.1a) Figura (3.1b)

X2 X2

Mínimo global Mínimo

Mínimo local

X1 X1
Figura (3.1c) Figura (3.1d)
X2

Óptimo

X1
Figura (3.1e)
PROGRAMACIÓN NO LINEAL
 Cálculo Diferencial
TÉCNICAS  Multiplicadores de Lagrange
 Teoría de Kuhn – Tucker
CONVENCIONALES
 Programación geométrica
(métodos analíticos)  Programación cuadrática
 Programación convexa

 Técnicas de búsqueda unidimensional


 Técnicas de búsqueda multidimensional
- Método de Newton-Raphson
- Método ascenso acelerado
- Métodos de búsqueda directa (Powell)
- Métodos de gradiente (Fletcher, Davidon,
TÉCNICAS DE Powell)
BÚSQUEDA Y - Método de Broyden-Fletcher
ESCRUTINIO - Método de Fletcher-Reeves
- Método de Smith
(métodos numéricos)
- Métodos de función penalti
- Método de las direcciones eficientes
- Métodos de secuencias de problemas lineales
- Método de secuencias de problemas
cuadráticos

TÉCNICAS DE
LINEALIZACIÓN
TÉCNICAS DE
OPTIMIZACIÓN GRÁFICA
CLASIFICACIÓN DE TÉCNICAS DE
PROGRAMACIÓN NO LINEAL
OPTIMIZAR TECNICA APLICACIÓN
F  f ( x1 , x 2 ,  x n ) CÁLCULO f
DIFERENCIAL  0; (j = 1,2,...,n)
No hay restricciones ni x j
condiciones de no negatividad Esta condición da un sistemas de
ecuaciones cuya solución permite
obtener todos los puntos estacionarios o
críticos. Por comparación se obtiene el
óptimo global.
F  f ( x1 , x 2 ,  x n ) CÁLCULO f
DIFERENCIAL  0 ; (j = 1,2,...,k)
Sujeta a: x j
g i ( x1 , x2 ,  xn )  0 Se despejan las variables en las
(i = 1,2,...,m) restricciones y se sustituyen el al función
objetivo. Se obtiene un sistemas de
ecuaciones cuya solución permite
obtener todos los puntos estacionarios o
críticos. Por comparación se obtiene el
óptimo global.
F  f ( x1 , x 2 ,  x n ) MULTIPLICADORES m
Lo  f x1 , x 2 ,  , x n     i g i x1 , x 2 ,  , x n 
DE LAGRANGE
Sujeta a: i 1

g i ( x1 , x2 ,  xn )  0 Las variables no se pueden despejar en


las restricciones
(i = 1,2,...,m)
mn
F  f ( x1 , x 2 ,  x n ) CONDICIONES DE
KUHN TUCKER
x j *  x1* , x 2* ,  , x n * ; 1 ,  2 ,  ,  m
Sujeta a: Es el caso más general
g i ( x1 , x 2 ,  x n )  0
(i = 1,2,...,m)
x j  0; j  1,2,..., n
Programación Nolineal
(Non Linear Programming NLP)
• NLP: Conjunto de técnicas para optimizar funciones no-lineales
sujetas a restricciones de igualdad o desigualdad. Tanto las
funciones como las restricciones pueden ser de una o más variables

Formulación general de un problema de optimización


• Encontrar x tal que

se minimice una función objetivo f(x)


sujeto a restricciones: gi(x) = bi (i=1,…, m)
gj(x)  bj (j=m,…, k)

Donde
x es un vector de n variables independientes
Características de los problemas que
trataremos mayormente en el curso
• Funciones objetivo y restricciones continuas con sus primeras
derivadas parciales también continuas (suaves)
– Esto garantiza que pequeños cambios en x conlleve a pequeños cambios en
valores asociados

• Inecuaciones estrictas no son permitidas (< ó >) solo se permiten


restricciones de  ,  e 

• El problema debe ser determinístico

• Todas las variables deben ser reales, ninguna puede tomar


únicamente valores enteros. (Continuous Programming)

• S dominio de f y gi sea una región conectada


Tipos de Problemas No-lineales

• Sin restricciones • Con restricciones

Tamaño de los Problemas


• Una forma de medir la complejidad de los problemas es en función del
número de variables o del número de restricciones

• Pequeña Escala: hasta 5 variables y restricciones  puede ser resuelto a


mano

• Escala intermedia: de 5 a 100 variables y restricciones  Computador


Personal o Servidor de Propósito General

• Gran Escala: más de 100 y quizás 1000 variables y restricciones 


Mainframe para cálculo científico (cray), explotando la estructura del
problema con algoritmos paralelos
Tipos de Problemas No-lineales

• En el curso se estudiarán la teoría y los métodos que permiten


efectivamente la solución de la más amplia variedad de problemas
(pequeña y mediana escala principalmente)

• A pesar de que un gran número de algoritmos han sido propuestos


para la solución del problema general de optimización no lineal, sólo
unos pocos han demostrado ser efectivos cuando se aplican a
problemas de “gran – escala”

• No existe un método general de optimización no lineal en el sentido


como es SIMPLEX para problemas lineales

• Ninguno es tan superior para ser clasificado como la “panacea”


universal de la NLP
Criterios de Comparación de Algoritmos

1. Número de evaluaciones de la función objetivo

2. Confiabilidad (Éxito en alcanzar la solución)

3. Rapidez

4. Tiempo de Preparación del usuario (sobre parametrización)

5. Precisión de la solución

6. Grado de satisfacción de las restricciones

7. Dificultad
Algoritmos Iterativos y Convergencia

• La mayoría de los algoritmos de NLP son iterativos


    Solución
x 1  x 2    x n  x x
Óptima

• En programación lineal existe una secuencia de longitud finita para


alcanzar la solución

• En NLP la secuencia generalmente no alcanza la solución óptima


sino que converge hacia ella

• En problemas no lineales se determina una solución lo


suficientemente cercana a la óptima
Algoritmos Iterativos y Convergencia

• La teoría de algoritmos iterativos se divide en:

1. Diseño del Algoritmo

2. Convergencia Global: Análisis de convergencia global (si


eventualmente converge)

3. Convergencia Local: Análisis de convergencia local (la razón a la


cual el algoritmo converge en la Solución óptima)

“Una buena teoría es mejor que miles de corridas”

• Esto da una idea de la manejabilidad de los problemas mediante un


análisis simple lo cual es muy importante
Funciones de una variable

Continuidad de una función en un número


• Se dice que f es continua en el número a si y solo si las siguientes
3 condiciones se satisfacen:

1. f a  existe  2 x  3 x  1;




; si x  1
f x    x  1 
lim  2 ; si x  1 
2. f x  existe
xa
Discontinuidad removible
lim
3. f  x   f a 
xa

1
f x    x  3 si x  3
x2 f x    
2 si x  3 
Discontinuidad Esencial
Teoremas sobre Continuidad

Teorema: Si f y g son continuas en a entonces:

• f+g es continua en a
• f–g es continua en a
• fxg es continua en a
• f÷g es continua en a suponiendo que g(a) ≠ 0

Teorema: Una función polominal es continua en cualquier


valor de las variables independientes
Continuidad en un Intervalo
Definición: Continuidad por la Continuidad por la izquierda
derecha • Se dice que f es continua por la
• Se dice que f es continua por la izquierda del número a si y solo si,
derecha del número a si y solo si
satisface las siguientes
condiciones:

i ) f a  existe i ) f a  existe

lim f x  existe lim f  x  existe


ii ) ii )
x  a x  a

lim f  x   f a  lim f  x   f a 
iii ) iii )
x  a x  a
Continuidad en un Intervalo

Definición: Una función cuyo dominio incluye el intervalo cerrado [a,b]


se dice que es continua en [a,b] si y solo si es continua en el
intervalo abierto (a,b), así como es continua por la derecha de a y
continua por la izquierda de b

• Definición: f es continua en [a,b) si y solo si es


continua en (a,b) y continua por la derecha de a

• Definición: f es continua en (a,b] si y solo si


es continua en (a,b) y continua por la izquierda a b
de b
Diferenciabilidad y Continuidad

• La continuidad de una función no implica la diferenciabilidad de


dicha función en ese número

f x   x

• Sin embargo, la diferenciabilidad si implica la continuidad

Teorema: Si una función es diferenciable en x1, entonces f es continua


en x1
Derivada de una Función

• La pendiente de la recta tangente a f(x) en el punto (x, f(x))

lim f  x  x   f  x 
f ' x  
x  0 x

f(x)

x
Valores Máximos y Mínimos de una Función de
una Variable
• La derivada puede utilizarse para determinar los puntos donde la
tangente es horizontal (derivada = 0)

Extremos Relativos
Definición: La función f se dice que
tiene un valor máximo relativo en “c”,
si existe un intervalo abierto que
contenga a “c” sobre el cual está
definida la función f tal que
f(c) ≥ f(x) para toda x en este intervalo C=
Valores Máximos y Mínimos de una Función de
una Variable

Extremos Relativos
Definición: La función f se dice que
tiene un valor mínimo relativo en “c”, si
existe un intervalo abierto que
contenga a “c” sobre el cual f está
definido tal que f(c) ≤ f(x) para toda x en
este intervalo
c
¿Dónde Localizar los Posibles Valores
Extremos?
Teorema: Si f(x) existe para todos los valores de x en el intervalo
abierto (a,b) y si f tiene un extremo relativo en “c”, donde a < c < b,
entonces f ´(c) existe y f ´(c) = 0

Si f es una función diferenciable,


los únicos lugares posibles para
puntos extremos es donde f ´(x) = 0

C=
¿Dónde Localizar los Posibles Valores
Extremos?
• Sin embargo, f ´(x) puede ser cero • Más aún f puede tener un
y no obstante en ese valor f no extremo relativo en un número y f’
puede no existir allí
tiene un valor extremo (Punto de
Silla)
f x   x  1
f  x   x  1 3

f '  x   3 x  1
2

f ' 1  0
¿Dónde Localizar los Posibles Valores
Extremos?
En Resumen
• Si una función está definida en un número “c” es una condición
necesaria, pero no suficiente, para que f tenga un extremo relativo
en “c” que f ´(c) = 0 ó que f ´(c) no exista

Definición: Si c es un número en el
dominio de la función f y si f ´(c) = 0 ó
f ´(c) no existe, entonces “c” se llama
punto crítico de f
Extremos Absolutos

• Frecuentemente estamos en una función definida en un intervalo


dado, y deseamos encontrar el valor mayor o menor de la función
en el intervalo

• Estos intervalos pueden ser cerrados, abiertos o cerrados a un


extremo y abierto en otro.

• El valor máximo absoluto es el mayor valor dentro del intervalo, y el


valor mínimo absoluto es el mínimo valor de la función dentro del
intervalo
Extremos Absolutos en un Intervalo
• Definición: La función f se dice que tiene un valor máximo absoluto en un
intervalo, si existe algún número “c” en el intervalo tal que f(c) ≥ f(x) para
toda x en el intervalo. En tal caso f(c) es el valor máximo absoluto de f en el
intervalo
• Definición: La función f se dice que tiene un valor mínimo absoluto en un
intervalo si existe algún número “c” en el intervalo tal que f(c) ≤ f(x) para
toda x en el intervalo. En tal caso f(c) es el valor mínimo absoluto de f en el
intervalo
• Valor extremo absoluto es un mínimo o máximo absoluto de la función en el
intervalo
• También se puede hablar de extremo absoluto de una función cuando no se
especifica ningún intervalo, en este caso se dice que es un extremo global
de la función
Teorema del Valor Extremo

• Si una función f es continua en el intervalo cerrado [a,b], entonces f


tiene un valor máximo absoluto y un valor mínimo absoluto en [a,b]

• Un extremo absoluto de una función en un intervalo cerrado debe


ser un extremo relativo o ser un valor de la función en un extremo
del intervalo

C=
Procedimientos para la determinación de extremos
absolutos en intervalo cerrado

1. Identificar valores de la función en los números críticos de f en [a,b]

2. Encontrar f(a) y f(b)

3. El mayor de estos es el máximo absoluto y el menor es el mínimo


absoluto
Teorema de Rolle (Michel Rolle 1652-1719)

• Sea f una función continua en un intervalo cerrado, diferenciable en


el intervalo abierto (a,b) y sean f(a) = 0 y f(b) = 0, existe al menos un
número “c” entre a y b donde f ´(c) = 0

a c b

•Debe notarse que puede haber más


de un número en el intervalo abierto
para el cual la derivada es cero
c2
a c1 b
Teorema del Valor Medio

• Sea f una función continua tal que:


i. es continua en el intervalo cerrado [a,b]
ii. es diferenciable en el intervalo abierto (a,b)

• entonces existe un número “c” en el intervalo abierto (a,b) tal que:

RT

f b   f a 
f(c)
f ' c   RS
La tangente RT es
ba paralela a la secante RS

a c b
Funciones Crecientes y Decrecientes y Criterio
de la Primera Derivada
• Definición: Una función definida en un intervalo se dice que es
creciente en ese intervalo si y solo si:
– f(x1) < f(x2) siempre que x1 < x2 donde x1 y x2 son números del
intervalo

• Definición: Una función definida en un intervalo se dice que es


decreciente en ese intervalo si y solo si:
– f(x1) > f(x2) siempre que x1 < x2 donde x1 y x2 son números del
intervalo

• Si una función es creciente o decreciente en un intervalo, entonces


se dice que f es monótona
Funciones Crecientes y Decrecientes y Criterio
de la Primera Derivada
• Teorema: Si una función continua en el intervalo cerrado [a,b] y
diferenciable en el intervalo abierto (a,b)

i. Si f ´(x) > 0 para toda x  es creciente en el intervalo

ii. Si f ´(x) < 0 para toda x  es decreciente en el intervalo


Criterio de la Primera derivada para
Extremos Relativos
• Si una función continua en el intervalo abierto (a,b) que contiene un
número crítico “c” y f es diferenciable, excepto, posiblemente en “c” .

Si c es un extremo entonces:
f’ = 0
– f ´(x1) > 0 donde x1 < c f’ < 0
f’ > 0
– f ´(x2) > 0 donde c < x2

• en este caso c es un máximo relativo


Máximo Relativo

f’ < 0 f’ > 0
Lo contrario aplica para Mínimo Relativo 
f’ = 0
Criterio de la Segunda Derivada

• Sea “c” un número crítico de una función en la cual f ´(c) = 0 y f


existe para todos los valores de x en algún intervalo abierto que
contenga a “c”. Entonces si f ´´(c) existe y,
– Si f ´´(c) < 0, f tiene un valor máximo relativo en “c”

– Si f ´´(c) > 0, f tiene un valor mínimo relativo en “c”

• Nótese que si f ´´(c) = 0 nada puede concluirse

• Teorema: Sea f una función continua en el intervalo I que


contiene al número crítico c. Si f(c) es un extremo relativo de f en I
y es el único, entonces f(c) es un extremo absoluto de f en I.
Además,
– Si f(c) es un máximo relativo  es un máximo absoluto

– Si f(c) es un mínimo relativo  es un mínimo absoluto


Formula de Taylor (Brook Taylor 1685 – 1731)

• Ciertas funciones pueden ser aproximadas por polinomios y el


polinomio puede ser usado cuando la diferencia es pequeña

• Teorema: Sea f una función tal que f y sus n primeras derivadas


son continuas en el intervalo cerrado [a,b]. Además, fn+1(x) existe
para toda x en el intervalo abierto (a,b). Entonces hay un número 
en el intervalo abierto (a,b) tal que,

f ' a  f a  f n a  f n 1  
f b   f a   b  a   b  a     b  a   b  a n1
2 n

1! 2! n! n  1!

Si n = 0  f(b) = f(a) + f ´()(b – a)  Teorema del valor medio


Polinomio de Taylor
f a  f a 
x  a 2    a  x  a n
n
f
n x   f a   x  a  
1! 2! n!

Residuo Rn x  
f   x  a n 1 donde  está entre x y a
n 1

n  1!
Funciones de Varias Variables
(Campos Escalares)
Continuidad de Campos Escalares
• Sea f una función de varias variables y a un vector de variables, se
dice que f es continua en a si

i) f a  existe y está definida

ii ) lim f  x  existe si esta falla entonces existe una discontinuidad


x a
esencial

iii ) lim f  x   f a  si esta falla entonces existe una discontinuidad


xa
evitable
Funciones de Varias Variables
(Campos Escalares)
Operaciones sobre funciones continuas

• Si f y g son continuas en a entonces:

– f+g
– f–g Son continuas
– fxg

– f ÷ g es continua, si g(a) ≠ 0
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?
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
significa que el vector gradiente de una función f en
f  p 
 un punto p, f(p), de su dominio se orienta en el
f  p  sentido en el cual f crece mas rápidamente
Derivada direccional
f(x,y) = -20 + 3x2 +y2 0

-5

f = [6x -10

2y] -15

-20
2
2 1 2
0 1
1.5 -6 0
-1 -1
-2 -2
1 -8

0.5 -10

0 -12
y

-0.5 -14

-1 -16

-1.5 -18

-2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
x
Gradiente

• Derivadas Parciales: Son derivadas direccionales especiales, las


direcciones son las de los ejes coordenados
f f
, ,
x y

• Definición: Si f:u  R, u  Rn, la derivada de f en un punto x0  u es


el vector cuyos componentes son las derivadas parciales de f en x0.
A esto se le llama Gradiente
 f  x0  f  x0  f  x0  
f  x0    , ,, 
 x1 x 2 x n 
Gradiente

• El gradiente de una función escalar de n variables f(x1, x2,…, xn,),


denotado por f, es el vector n-dimensional

 f  x  f  x  f  x  
f  x    , ,, 
 x1 x2 xn 

-5

-10

•El gradiente de una función en un -15

punto indica la dirección, a partir de -20

ese punto, en la que dicha función


2

crece más rápidamente y, además, la -2 -1.5 -1 -0.5 0 0.5 1 1.5


2
2

-2

dirección ortogonal a las curvas de


1.5

nivel de f (curvas en las que la función 0.5

tiene un valor constante) 0

-0.5

-1

-1.5

-2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
Diferenciabilidad de funciones de varias
variables
• Teorema: Si f : u  R, u  Rn, es diferenciable en x entonces es
continua en x
– El reciproco es falso: Una función puede ser continua sin ser
diferenciable

• Teorema: (Condición de suficiencia de diferenciabilidad)


Si f : u  R, u  Rn, posee derivadas parciales continuas en x0  u
entonces f es diferenciable en x0
– Sin embargo, una función puede ser diferenciable en un punto sin que
sus derivadas parciales sean continuas, en dicho punto

• Definición: Decimos que una función es de clase Ck en u  Rn, y


escribimos f  Ck(u), si todas sus derivadas parciales de orden k
existen y son continuas en u
Formula de Taylor en Varias Variables
n f  x   2 f x0 
 
f x   f x0   
j 1 x
0
x j  xoj   i 1 j 1xi  x0i 
1 n n
x j  x0 j   
j 2!  x i x j

• En una notación mas convencional y compacta


     1  
f  x   f  x 0   f T  x 0    x  x 0    x  x 0    x  x 0   
T

2!

donde, 2 f 2 f 2 f

x12 x1x2 x1 xn
 f f  2 f 2 f 2 f
f   ,,    
 x1 x n  x2 x1  2 x2 x2 xn
2 f 2 f 2 f

Gradiente xn x1 xn x2 xn2

Hessiano
Extensión de los Criterios de Existencia
de Máximo y Mínimos
• Los puntos críticos son aquellos donde f = 0 o no existe

• Alguna medida de “positividad” del Hessiano nos dirá si es un


máximo o un mínimo

• Teorema de Weierstrass (Extensión del teorema de Valor


Extremo):

Una función continua f, definida en un conjunto compacto S cerrado


y acotado (definido y no se va a infinito) tiene al menos un mínimo y
un máximo en S
Formas cuadráticas

• Definición: Una forma cuadrática es cualquier campo escalar (Rn 


R), definido para todo x en Rn que sigue la siguiente forma:
 h h
q x    a ij x i x j
i1 j 1

donde aij  R puede ser cero


• Una forma cuadrática no incluye ningún término lineal

q x1 , x 2   7 x12  4 x1 x 2  8 x 22

• Cualquier forma cuadrática puede ser expresada en notación


matricial como
q x   x t Ax
donde aij son elementos de la matriz A
Formas cuadráticas

• Es claro que a ij x i x j  a ji x j x i  a ij  a ji x i x j

para todo i  j

• Por lo tanto una forma cuadrática puede ser representada


equivalentemente por muchas matrices A o conjuntos de
coeficientes aij

• Sin embargo, para una forma cuadrática q(x) dada existe sólo una
matriz simétrica (cuadrada tal que D = DT) que satisface q(x) = xTDx
cuyos elementos están definidos por:
aij  a ji 
d ij  d ji  q x1 , x 2   ax12  bx1 x 2  cx 22
2
para todo i  j
a b / 2 x1
q x1 , x 2   x t Dx  x1 x 2 
b / 2 c x2
Formas cuadráticas
• Ejemplo
q x1 , x 2   ax12  bx1 x 2  cx 22
a b / 2 x1
q x1 , x 2   x Dx  x1 x 2 
t

b / 2 c x2

2 2
A
8 1

q  x1 , x 2   2 x12  2 x1 x 2  8 x 2 x1  x 22  2 x12  6 x1 x 2  x 22
2 3 x1
q  x1 , x 2   x1 x 2 
3  1 x2
Propiedades de las formas cuadráticas
• Definición: la forma cuadrática q(x) = xTDx es definida positiva si
q(x) > 0 para todo x ≠ 0 en En

• Definición: la forma cuadrática q(x) = xTDx es semidefinida positiva


si q(x) ≥ 0 para todo x  En, pero q(x) no es definida positiva

• Definición: la forma cuadrática q(x) = xTDx es definida negativa si


q(x) < 0 para todo x ≠ 0 en En

• Definición: la forma cuadrática q(x) = xTDx es semidefinida negativa


si q(x)  0 para todo x  En, pero q(x) no es definida negativa

La matriz D (única y simétrica) de una forma cuadrática definida


positiva es definida positiva
Propiedades de las formas cuadráticas

• Si no satisface ninguna de las cuatro definiciones anteriores se dice


que la forma cuadrática es indefinida. Esto es si q(x1) > 0 y q(x2) <
0 es indefinida, donde x1 y x2  Rn

q x1 , x 2   x12  10 x 22 q x1 , x 2    x12   10x 22

Es definida positiva Es definida negativa


Propiedades de las formas cuadráticas

• Sea D una matriz simétrica de n x n definida positiva, entonces:

a) D-1 existe

b) D-1 es definida positiva

c) ADAT es semidefinida positiva para cualquier matriz A mxn


Clasificación de formas cuadráticas
Método de los autovalores

• Sea q(x) = xTDx una forma cuadrática, con D matriz simétrica.


Sean 1, 2,… n los n autovalores de la matriz D. Entonces:
a) q(x) es definida positiva si y sólo si i > 0  i
b) q(x) es definida negativa si y sólo si i < 0  i
c) q(x) es semidefinida positiva si y sólo i  0  i, siendo al menos un
j = 0
d) q(x) es semidefinida negativa si y sólo i  0  i, siendo al menos un
j = 0
e) q(x) es indefinida si y sólo si algún i > 0 y algún j < 0
Funciones Convexas

• Estamos particularmente interesados en la optimización de este tipo


de funciones sobre los llamados conjuntos convexos
• Definición: Un conjunto X en En(Rn) es convexo si y sólo si para dos
puntos cualquiera x1 y x2 en X y cualquier valor escalar 0    1, el
punto x =  x1 + (1 - ) x2 también está dentro de X

x2
x2

x1
x1

Convexo No Convexo

Una esfera, un triángulo, el espacio Rn, una línea recta y un punto son conjuntos
convexos. Un hiperplano también es un conjunto convexo
Funciones Convexas

• Definición: Una función escalar f(x) es una función convexa


definida sobre un conjunto convexo X en En si para dos puntos
cualquiera x1 y x2 en X
   
f  x 1  1   x 2    f  x 1   1    f  x 2 

donde 0    1

AC  f a   1    f b 
A
BC  f a  1   b 
B

a c b
Funciones Convexas

• Las funciones convexas tienen una caracterización geométrica


simple e informativa

• Teorema: Cualquier función lineal f(x) = cTx es tanto cóncava como


convexa

• Teorema: Si f(x) es convexa  -f(x) es cóncava (y viceversa)

• Teorema: La suma de 2 o más funciones convexas es convexa

• Teorema: Cualquier forma cuadrática semidefinida positiva


q(x) = xTDx donde D es simétrica, es una función convexa en todo
En, y si D es definida positiva es estrictamente convexa

• Teorema: Cualquier forma cuadrática semidefinida negativa


q(x) = xTDx donde D es simétrica, es una función cóncava en todo
En, y si D es definida negativa es estrictamente cóncava
Funciones Convexas

• Dada una función cuadrática representada como



f x   qx   c t x  c 0
es convexa o cóncava si q(x) es convexa o cóncava

• Podemos notar la similitud con el polinomio de Taylor

      
f  x   f  x 0   f t  x 0    x  x 0   1  x  x0    x0  x  x0 
t
2
Funciones Convexas

• Teorema: Si la función f(x) está definida y es convexa sobre un


conjunto convexo X en En, luego cualquier mínimo local (con
restricción) de f(x) en X es un mínimo global en X

• Teorema: Si la función f(x) está definida y es cóncava sobre un


conjunto convexo X en En, luego cualquier máximo local (con
restricción) de f(x) en X es un máximo global en X

• Teorema: Si una función f(x) es convexa sobre un conjunto X


compacto y convexo (cerrado y limitado) en En entonces al menos
un máximo global se encuentra sobre el borde de X
Criterios de la primera y segunda
derivada
• Teorema: Supongamos que f(x) tiene primeras derivadas parciales
continuas. Luego f(x) es cóncava sobre alguna región R en En si y
sólo si
f  x   f x   f x   x  x 
  t   

similarmente, f(x) es convexa sobre alguna región R en En si y sólo


si
  
f  x   f x  f x    t  
xx 
te
gen
t an
o
an
Pl
x x* en
te
g
t an
o
an
Pl

x* x
Cóncava Convexa
Criterios de la primera y segunda
derivada
• Teorema: Sea f(x) una función  C2 (segundas derivadas parciales
existen y son continuas). Entonces f(x) es convexa sobre una región
R en En si y sólo si su Hessiano es definido o semidefinido positivo
para toda x de la región R
Criterios de la primera y segunda
derivada
f f f 2
• Teorema de Schwartz: Si f(x,y) es tal que , y
x y xy
son continuas en un entorno de un punto (x0,y0), entonces
f 2 2 f 2 f
x 0 y 0  existe y se cumple que x 0 , y 0   x 0 , y 0 
yx yx xy

• Como la matriz Hessiano es simétrica la definición definida y


semidefinida positiva para formas cuadráticas es aplicable
directamente

• Una función puede ser convexa o concava y su Hessiano puede


“desaparecer” en algunos puntos (matriz de ceros)
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:
g k x   0
k  1,..., m

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
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
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


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
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,
x1  x0  d
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
Búsqueda Lineal

• Específicamente se debe resolver el sub-problema de


optimización:
– Encontrar , tal que

min f (xi 1    d )

donde d es la dirección de descenso

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


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
Tipos de Métodos de Búsqueda Lineal

• Directos • Basados en intervalos


– Gradiente – Bisección
– Newton – Búsqueda de Fibonacci
– Quasi-Newton – Búsqueda Dorada
– Secante

• Interpolación Polinómica • Métodos Inexactos


– Cuadrática – Armijo
– Cúbica – Goldstein
– DSC (Davies, Swann y
Campey)
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
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
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
F 
• Si son realizadas N observaciones se tiene que d k   N k 1 d1
 FN 
• 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
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}
FN 1
2. Calcular
FN
 FN 1 
3. Colocar simétricamente desde los extremos del intervalo inicial a distancia  d1
F
 N 
dos observaciones

4. De acuerdo a donde se encuentre la muestra con menor valor funcional se


determina la región de incertidumbre, F 
d 2   N 1 d1
 FN 

1. 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  FN 2 
 d1
 FN 
Búsqueda de la Sección Dorada

• La primera condición específica l0  l1  l2


que la suma de las dos
sublongitudes l1 y l2 debe ser igual
a la longitud original del intervalo l1 l 2

l 0 l1
• La segunda indica que el cociente
o razón de las longitudes debe ser
igual
l1 l
 2
l1  l 2 l1

l2 1
R 1 R  R2  R 1  0
l1 R
xl xu

 1  1  4 1 5 1 Primera
R   0.61803 l0
2 2 Iteración
l1 l2
La Razón Dorada
Búsqueda de la Sección Dorada
1. 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 5 1
d xu  xl 
2
• x2 = xu - d
xl x2 x1 xu
1. Se evalúa la función en los dos
puntos interiores Primera
l0
Iteración
• Si f(x1) < f(x2)  xl = x2; x2 = x1; l1 l2
xl x1 xu
5 1
x1  xl   xu  xl  Segunda
2 Iteración l2

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


5 1
x2  xu  xu  xl 
2
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 1
la región donde se encuentra el f(x) 2
mínimo en funciones de una sola
3
variable
4 5
• En la búsqueda unidimensional 6
DSC, se toman pasos cuya x 2x 4x 8x
dimensión se va incrementando
x(m-3) x(m-2) x(m-1) x(m+1) x(m)
sucesivamente hasta que el
mínimo es sobrepasado y luego
se realiza una interpolación
cuadrática
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 1

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

3
3. Calcule f(x(k+1))
4 5
4. Si f(x(k+1))  f(x(k)), duplique x 6
(x = 2x) y regrese al paso 2 con k = x 2x 4x 8x
k+1
x(m-3) x(m-2) x(m-1) x(m+1) x(m)
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 cálculo adicional
Ajuste Cuadrático (Método DSC, Davies,
Swann y Campey)
1. 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 1
de la x de menor valor funcional. f(x) 2
Los tres valores restantes del
3
conjunto pueden ser denotados
como x(a), x(b), x(c), donde x(b) es
4 5
el punto central y 6
x(a) = x(b) - x y x(c) = x(b) + x x 2x 4x 8x

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


2. Se realiza una interpolación
cuadrática para estimar x* (el
valor de la variable independiente
correspondiente al mínimo de f(x))

b  x f x a    f x c  
x*  xˆ*  x 
    2 f x   f x 
2 f x a  b  c  donde x = x(a) - x(b)
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

 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

1
2
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 f’(x)


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
f(x)
tasa de disminución de 
•Con el método de Newton tales parámetros son
calculados directamente en cada iteración
xk xk+1
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:
1
qx   f xk   f ' x k   x  xk   f ' '  x k  x  x k 
2

2
• 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

f ' xk 
x k 1  xk  f(x)
f ' ' xk 

xk xk+1
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,

f '  x k   f x k   d
T 
f ' ' xk   d  H xk   d

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


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:

f  x  x   f  x   x  f  x  x   2 f  x   f  x  x 
f ' x   f ' ' x  
2 x x 2
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
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
Búsqueda Lineal Inexacta
Regla de Armijo
• Primero garantiza que  no sea muy grande y luego que no sea
muy pequeño
    f  x k  d k 

• 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

Intervalo aceptable 
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)  ,

•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  
Intervalo aceptable
igual a 2
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
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: xi 1  xi  f  xi 

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


lineal

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


f  xi 1   0
Método del Descenso más Rápido

• Ejemplo 1:

Evolución del método para un  = 0.25 Evolución del método para un  = 0.9

2 2

1.5 1.5

1 1

0.5 0.5

0 0

-0.5 -0.5

-1 -1

-1.5
-1.5

-2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
Método del Descenso más Rápido

• Ejemplo 2: Se desea minimizar la función


f ( x , y )  20  3 x 2  y 2
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}
Método del Descenso más Rápido

• Ejemplo 2: Se desea minimizar la función


f ( x , y )  20  3 x 2  y 2

Las curvas de nivel de esta función son de 1.5

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

de búsqueda de una iteración a otra, se


0.5

0
observa en la trayectoria en forma de
-0.5

zigzag
-1

-1.5

-2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
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,

1
f a  x   f  x i  1    f   x  x i 1    x  xi 1 T H f  x  xi 1 
2

• 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
f  H f  x i  x i 1   0
Método de Newton

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


x i  x i 1  H f 1  f

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

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

• Ejemplo 3: Se desea minimizar la función


f ( x , y )  20  3 x 2  y 2
utilizando el método de Newton
2

1.5

El gradiente en un punto cualquiera es,


1
f = {6x, 2y}
0.5

mientras que el Hessiano es la matriz 0

-0.5

1 0 
6 0 1  6 
-1

Hf    H f 
0 2 0 1  -1.5

 2 -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
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

x i  x i  1    H f 1  f

• 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
Método de Levenberg-Marquardt

• Está dado por la ecuación

x i  x i 1   I  H f 
1
 f

• 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
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
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
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
Problemas de optimización
Soluciones

Sabemos reconocerlas, y
calcularlas como soluciones de
sistemas
 de ecuaciones, o
 de desigualdades

Buscamos métodos de cálculo


 generales y
 eficientes
Soluciones de problemas de
optimización

Métodos iterativos:
 No existen métodos directos generales
 Se parte de un valor x0, y se genera una
sucesión { xk }k=0 con la propiedad de que
limk xk  x*
y x* cumpla algunas condiciones de extremo
Problema sin restricciones

Consideremos el problema minx f (x )


Buscaremos un punto que cumpla
f (x* ) = 0
Si xk no cumple la condición, se genera
otro punto a partir de
f (xk+p ) = 0
Problema sin restricciones

Problema tan difícil como el original


Puede aproximarse:
 Encontrar la solución de
f (xk ) + 2f (xk )p = 0
 o resolver

minp f (xk )Tp + ½pT 2f (xk )p


Problema sin restricciones

Interpretación gráfica del problema de


optimización aproximado
Problemas sin restricciones

Método de Newton básico:


1) Partir de un valor inicial x0
2) Comprobar si  f (xk )  < 
3) Si no lo es, calcular un vector p a partir de
2f (xk )p = - f (xk )
4) Obtener el siguiente punto como xk+1=xk +pk
Problema sin restricciones

Ejemplo:
x1
min f (x )  
(1+x12) (1+x22)
Punto inicial:
x0 = [ -0.4 0.3 ]T
Solución:
x * = [ -1 0 ]T
Problema sin restricciones

Método de Newton:
2.1) Gradiente:
f (x0 ) = [0.573 0.174]T,  f (x0 )  =
0.599
3.1) Dirección de movimiento:
1.335 -0.315 0.573
H0p0 = -g0 , p0 = -
-0.315 0.485 0.174
-0.607
p0 =
-0.754
Problema sin restricciones

4.1) Nuevo punto: x1 = x0 + p0 = [-1.007 -0.454]T


2.2) Gradiente:
f (x1) = [-0.003 -0.312]T,  f (x1)  = 0.312
3.2) Dirección de movimiento:
0.406 -0.002 -0.003 0.011
p1 = - , p1=
-0.002 0.452 -0.312 0.690

4.2) Nuevo punto: x2 = x1 + p1 = [-0.996 0.236]T


Problema sin restricciones

2.3) Gradiente:
f (x2) = [0.002 0.212]T,  f (x2)  = 0.212
3.3) Dirección de movimiento:
0.479 -0.001 -0.002 -0.004
p2 = - , p2 =
-0.001 0.802 -0.212 -0.264
4.3) N. punto: x3 = x2 + p2 = [-1.000 -0.028]T
2.4) Gradiente:
f (x3) = [-0.000 -0.028]T,  f (x3)  = 0.028
Problema sin restricciones

Dificultades del método de Newton:


 No convergencia:
 porque tiende a infinito, o
 porque no existe solución del sistema de
ecuaciones

 Convergencia a máximos o puntos de silla


Problema sin restricciones

Procedimiento para converger a mínimos:


 emplear segundas derivadas
 direcciones de curvatura negativa

 forzar el decrecimiento de la función objetivo


 cerca de puntos de silla o máximos
 modelos cuadráticos convexos relacionados
Problema sin restricciones

Procedimiento usual: descenso obligado


En cada iteración se define
xk+1 = xk + k pk
y se fuerza a que se cumpla:
f (xk )Tpk < 0
f (xk + k pk ) - f (xk )  kf (xk )Tpk
  [ 10-4 , 0.1 ]
Problema sin restricciones

Cambios en el cálculo de p. Hace falta:


 Asegurar que existe solución del sistema, y
 garantizar que es dirección de descenso,

f (xk )Tpk < 0


Para ello bastaría con que
2f (xk ) d.p.
Problema sin restricciones

Método de Newton modificado.


 Se resuelve el sistema de ecuaciones
Mk pk = - f (xk )
donde Mk cumple que
 Es definida positiva, y
 se parece todo lo posible a 2f (xk )
Problema sin restricciones

Construcción de la matriz Mk
 Añadir un múltiplo de la identidad:
Mk = 2f (xk ) + I
  - min(0 , min (2f (xk )) - )
 Todos los autovalores se modifican en la
cantidad 
Problema sin restricciones

Construcción de la matriz Mk
 Cambiar los autovalores de la matriz:
2f (xk ) = UUT,
Mk = UUT, i = max( , i )
 se conservan los autovectores
 Otros métodos: Choleski modificado, etc.
Problema sin restricciones

x1
Ejemplo: f (x )  
(1+x1)2 (1+x2)2
-1.29 0.24
x0 = [ 0.5 -0.3 ]T, 2f (x0 ) =
0.24 -0.56
(2f (x0 )) = [ -1.36 -0.49 ]
 Matriz definida negativa
Problema sin restricciones

Ejemplo:
0.08 0.24
Mk = Hk + I = Hk + 1.37I =
0.24 0.81
0.96 0.29 -1.36 0.96 -0.29
Hk =
-0.29 0.96 -0.49 0.29 0.96

0.96 0.29 -1.36 0.96 -0.29 1.29 -0.24


Mk = =
-0.29 0.96 -0.49 0.29 0.96 -0.24 0.56
Problema sin restricciones

Estos cambios no son suficientes


 Posibilidad de diverger (converger a
infinito)
 Posibilidad de ciclos

Asegurar descenso en cada iteración


 Búsqueda lineal:
xk+1 = xk + k pk , k  (0,1]
Problema sin restricciones

Cálculo de k
 Objetivo: en cada iteración el valor de f (xk)
debe decrecer suficientemente.
 Condición:

f (xk + k pk )  f (xk ) + kf (xk )Tpk


 Parámetro k  (0,1) . En la práctica
  [ 10-4 , 0.1 ]
Problema sin restricciones

Procedimiento de cálculo de k
 Búsqueda hacia atrás:
 Se prueba con k = 1
 Si se cumple la condición, se acepta el valor

 Si no, se prueba con k /2

 Otros métodos: ajuste polinómico, etc.


Problema sin restricciones

Ejemplo de cálculo de k
 Tenemos los datos siguientes:
x1
f (x ) = , x0 = [-0.5 -0.3]T, p0 = [-2 1]T
(1+x12) (1+x22)
 Información necesaria:
f (x0 ) = -0.37 , f (x0 ) = [ 0.44 -0.20 ]T
f (x0 )Tp0 = -1.08 ,  = 0.1
Problema sin restricciones

 Iteración 1.  = 1
f (x0 + p0) = -0.231 , f (x0 ) + f (x0 )Tp0 = -0.48
 Iteración 2.  = 0.5

f (x0 + p0) = -0.444 , f (x0 ) + f (x0 )Tp0 = -0.43


 Aceptamos  = 0.5

x1 = x0 + 0.5p0 = [ -1.5 0.2 ]T


Problema sin restricciones
x1
Ejemplo: f (x )  
(1+x12) (1+x22)
x0 = [ 0.5 -0.3 ]T
 Iteración 1.1 ¿Es el punto actual solución?
f (x0 ) = [0.440 0.202]T,  f (x0 )  = 0.4845
Problemas sin restricciones
 Iteración 1.2. Dirección de movimiento

-1.29 0.24 1.29 -0.24


H0 = , M0 =
0.24 -0.56 -0.24 0.56

M0 p0 = - g0  p0 = [ -0.444 -0.551 ]T

 Iteración 1.3. Cálculo de la longitud de paso

f (x0 ) = 0.367, f (x0 )Tp0 = -0.307, f (x0 + p0 ) = 0.032


f (x0 ) +  f (x0 )Tp0 = 0.336 > f (x0 + p0 )  0 = 1
Problema sin restricciones
 Iteración 1.4. Nuevo punto
x1 = x0 + 0 p0 ,
x1 = [0.5 -0.3]T + [-0.444 -0.551]T = [0.056 -0.851]T
 Iteración 2.1 ¿Es solución el último punto?
f (x1 ) = [0.575 0.032]T,  f (x1 )  = 0.576
 Iteración 2.2. Dirección de movimiento
-0.19 0.57 0.59 -0.10
H1 = , M1 =
0.57 -0.06 -0.10 0.56
M1p1 = - g1  p1 = [ -1.011 -0.234 ]T
Problema sin restricciones

 Iteración 2.3. Longitud de paso


f (x1 ) = 0.032, f (x1 )Tp1 = -0.589, f (x1 + p1 ) = -0.230
f (x1 ) + f (x1 )Tp1 = -0.027 > f (x1 + p1 )  1 = 1

 Iteración 2.4. Nuevo punto


x2 = x1 + 1 p1 ,
x2 = [0.06 -0.85]T + [-1.01 -0.23]T = [-0.95 -1.08]T
Problema sin restricciones

 Método de Newton modificado. Maximización


 Paso 0. Determinar un punto inicial, x0
 Paso 1. Comprobar si xk es solución

 f (xk )  < 
 Paso 2. Calcular la dirección de movimiento
 Paso 2.1. Calcular los valores propios de
Hk = 2f (xk )
 Paso 2.2. Si Hk es definida negativa, Mk = Hk
si no, Mk = Hk - , por ejemplo
Problema sin restricciones
 Paso 2.3. Resolver el sistema de ecuaciones

Mk pk = - f (xk )
 Paso 3. Calcular la longitud de paso
 Paso 3.1. Para = 1 comprobar si se cumple

f (xk + k pk )  f (xk) + kf (xk )Tpk


 Paso 3.2. Si no se cumple, probar con hasta que se
cumpla.
 Paso 4. Calcular el nuevo punto
xk+1 = xk + k pk
Problema sin restricciones

Convergencia del método de Newton


 ¿Converge la sucesión { xk } ?
 ¿Qué propiedades tienen sus límites?

limkxk
La sucesión puede divergir si:
 Función objetivo no acotada inferiormente
 Función objetivo decrece monótonamente
Problema sin restricciones

Condición habitual de acotación


 El conjunto S0 es compacto
S0 = { y : f (y )  f (x0 ) }
 Todos los puntos xk pertenecen a S0
 Existen subsucesiones convergentes

Propiedades de los puntos límite


 No podemos asegurar que sean mínimos
Problema sin restricciones

Propiedades de puntos límite


 Al menos, debiéramos esperar que cumplan
f (x* ) = 0
 Demostración de convergencia
 De la condición sobre 
f (xk + k pk )  f (xk ) + kf (xk )Tpk
en el límite kf (xk )Tpk  0
Problema sin restricciones

Demostración de convergencia (ii)


 Definición de pk y propiedades de Mk
Mk pk = - f (xk )  f (xk )Tpk = - f (xk )TMk-1f
(xk )
 f (xk )Tpk  -   f (xk ) 2
 De la condición anterior tenemos

k  f (xk ) 2  0
Problema sin restricciones

Demostración de convergencia (iii)


 La longitud de paso k no puede ir a cero
 Desarrollo en serie de Taylor

0   (k ) -  (0) - k ’ (0) =


(1-)k ’ (0) + ½k2’” (0) + o(k2)
k  - ((1-)k ’ (0) + o(k ))/(½’” (0))
 Por tanto,  f (xk )   0
Restricciones de igualdad

Problema con restricciones de igualdad:


minx f (x )
s.a c (x ) = 0
Condiciones necesarias:
c (x ) = 0
f (x ) - c (x )T = 0
Restricciones de igualdad

Problema similar al caso sin restricciones


 Resolución de un sistema de ecuaciones no
lineales
 Sistema en x y 
 Aproximación del sistema mediante sistemas
de ecuaciones lineales
 O bien, aproximación mediante soluciones
de problemas de optimización cuadráticos
Restricciones de igualdad

Dado un punto (xk ,k )


 aproximación a las condiciones necesarias:
c (xk ) + c (xk )pk = 0
f (xk ) + 2L (xk ,k )pk - c (xk )Tk - c (xk )Tk = 0
o bien (sistema KKT ),
2L (xk ,k ) c (xk )T pk L (xk ,k )
=-
c (xk ) 0 -  k c (xk )
Restricciones de igualdad

Método de Newton básico:


 Paso 0. Se parte de un punto (x0 , 0 )
 Paso 1. Se comprueba si es solución,

 c (xk )  +  f (xk ) - c (xk )Tk  < 


 Paso 2. Se resuelve el sistema lineal (KKT )
para calcular (pk , k )
 Paso 3. Se actualizan las variables

xk+1 = xk + pk , k+1 = k + k


Restricciones de igualdad

El sistema (KKT ) se puede reescribir como


Ak AkTpY = - ck
ZkTHk ZkpZ = - ZkT gk - ZkTHk AkTpY
pk = ZkpZ + AkTpY
AkTk = gk + Hkpk - AkTk
donde
Hk  2L (xk ,k ), Ak  c (xk ), gk  f (xk ), ck  c (xk )
Restricciones de igualdad
Modificación de dirección de movimiento
 Mejorar la función objetivo, y
 Cumplimiento de las restricciones
 No es posible siempre mejorar ambas
 Por ejemplo:
 Punto inicial: mínimo sin restricciones
 Siempre es posible cumplir las restricciones
 Prioridades:
1. Cumplir las restricciones

2. Mejorar la función objetivo


Restricciones de igualdad
Comportamiento respecto a restricciones
 Definimos una medida de mejora  (x ) :
 (x )   c (x ) 2 ,  (x ) = 2 c (x )Tc (x )
Ak pk = - ck  kTpk = - 2  ck 2
 p siempre dirección de descenso de restricciones
Comportamiento respecto a función objetivo
 Modificar p en lo que respecta a mejorar f
 Sin afectar a la mejora de  (x )
Restricciones de igualdad

Separar las componentes de p :


 Componentes mejora de las restricciones:
 Movimiento normal a restricciones: c
(xk)TpY
 Componentes mejora de la función objetivo:
 Movimiento tangente a las restricciones: Zk
pZ
Método de Newton modificado:
 Matriz ZkTHkZk debiera ser definida positiva
 Objetivo: descenso en el valor de la función
objetivo
Restricciones de igualdad

Efecto de la modificación de ZkTHkZk :


 Sistema a resolver:
Ak AkTpY = - ck
Mk pZ = - ZkT gk - ZkTHk AkTpY
pk = ZkpZ + AkTpY

 Descenso en la función objetivo:


gkTpk = gkTZkpZ + gkTAkTpY = -pZTMk pZ -pZTZkTHk AkTpY +
gkTAkTpY

 Descenso si ck = 0
Restricciones de igualdad

Búsqueda lineal: punto siguiente dado


por
xk+1 = xk + k pk
k+1 = k + k k
 Para calcular k hace falta una medida de
progreso a la solución
 Progreso a la solución:
 Reducción en el valor de f, y
 mejora en cumplimiento de restricciones
Restricciones de igualdad

Medida de cumplimiento de restricciones:


 c (x ) 
 Idealmente, descenso en f y mejora en  c 
 Si no se dan ambas condiciones, por ejemplo

 c (xk +1)  >  c (xk )  , f (xk +1 ) < f (xk )


 Se busca un compromiso entre ambas
Restricciones de igualdad
 Compromiso más simple: sumar valores
 Inconveniente: cambios de escala
 Se añade un parámetro para corregir escala
 Función de penalización exacta:
mE (x ) = f (x ) +   c (x ) 
 Propiedad importante:
 Mínimo de mE debe ser mínimo del problema
Restricciones de igualdad

Propiedad teórica (penalización exacta):


 Existe un valor  tal que para todo    la
función mE tiene un mínimo en el mínimo del
problema de optimización
 Valor de  , para * multiplicador en la solución
 =  * 
 Inconveniente: la función mE no es diferenciable
en todos los puntos
Restricciones de igualdad

Funciones diferenciables
 Alternativa: la función lagrangiana tiene primera
derivada igual a cero en la solución
 La condición de segundo orden no se cumple
 Se añade término de penalización cuadrático
mA (x,) = f (x ) - Tc (x ) + ½  c (x ) 2
 Propiedad: existe  tal que    los mínimos
de mA y el problema coinciden
Restricciones de igualdad

Función de mérito:
 Medida de compromiso entre f y c cuyo
mínimo sea solución del problema
 Combinación de valores de f y c o sus
derivadas
 Ejemplos: mE , mA , otras
Restricciones de igualdad

Utilización de la función de mérito


 Se selecciona una al inicio del problema
 Se determina el valor de k para asegurar
descenso suficiente en la función de mérito
 Ejemplos:
mE (xk + k pk )  mE (xk ) + kmE (xk )Tpk
mA (xk+k pk ,k+k k )  mA (xk ,k )
+ kx mA (xk ,k )Tpk + kmA (xk ,k )T k
Restricciones de igualdad

x1
Ejemplo: min f (x )  
(1+x1)2 (1+x2)2
s.a x12 + x22 = 0.8

Punto inicial:
x0 = [ -0.6 -0.3 ]T , 0 = 0
 Paso 1.1. ¿Es solución?
c (x0) = -0.35, f (x0) - c (x0)T0 = [0.317 -0.223]T
Restricciones de igualdad

 Paso 1.2. Cálculo de la dirección de movimiento


2L0 A0T p0 L0
=-
A0 0 -0 c0
1.115 0.175 -1.2 0.317
p0 -0.471
0.175 0.620 -0.6 = - -0.223 , p0 =
-0 0.360
-1.2 -0.6 0 -0.350

0 = 0.137
Restricciones de igualdad

 Paso 1.3. Cálculo de la longitud de paso


 Funciónde mérito: penalización exacta
mE (x0 + p0) = f (x0 + p0) + c (x0 + p0) =  ( )
 Búsqueda lineal: encontrar  tal que
 ( )   (0) + ’(0),  = 0.1 ( = 10)
 Valores
previos:
 (0) = 3.005, ’(0) = g0Tp0 + c0TA0 p0 /c0  = -3.730
 Búsqueda:
 = 1,  ( ) = 3.019,  (0) + ’(0) = 2.632
 = 0.5,  ( ) = 0.386,  (0) + ’(0) = 2.909
Restricciones de igualdad

 Paso 1.4. Cálculo del nuevo punto


x1 = x0 + 0.5p0 = [-0.836 -0.120]T, 1 = 0 + 0.50 = 0.069

 Paso 2.1. ¿Es solución?


c (x1) = -0.087, f (x1) - c (x1)T1 = [0.218 -0.099]T

 Paso 2.2. Dirección de movimiento


0.637 0.024 -1.672 0.218
p1 -0.075
0.024 0.792 -0.240 = - -0.099 , p1 =
-1 0.158
-1.672 -0.240 0 -0.087
1 = - 0.104
Restricciones de igualdad

 Paso 2.3. Longitud de paso


 ( ) = f (x0 + p0) +  c (x0 + p0)
 ( )   (0) + ’(0),  = 0.1 ( = 10)
 (0) = 0.386, ’(0) = g1Tp1 + c1TA1p1/c1 = -0.113

 Búsqueda:
 = 1,  ( ) = -0.497,  (0) + ’(0) = 0.375

 Paso 2.4. Nuevo punto


x2 = x1 + p1 = [-0.911 -0.038]T, 2 = 1 + 1 = -0.035
Restricciones de desigualdad

Prob. con restricciones de desigualdad:


minx f (x )
s.a c (x )  0
Condiciones necesarias:
c (x ) = 0
f (x ) - c (x )T = 0
0
Tc (x ) =0
Restricciones de desigualdad

Dificultad:
 algunas condiciones son desigualdades
 no podemos reducir el problema a un
sistema de ecuaciones
Solución:
 construir problemas aproximados con
restricciones de igualdad
Restricciones de desigualdad

Construcción de problemas aproximados:


 Funciones de mérito: no son eficientes
Necesidad de ajustar parámetros
 funciones de barrera: términos en la función
objetivo que se comportan como restricción
 impiden tomar valores fuera de la región factible,
y
 no afectan a los valores en la región factible
Restricciones de desigualdad

16

Ejemplo: 14

minx x 2 12
x1
10

s.a x  1 8

6 x 2 - log(x - 1)

2
f (x ) = x 2
0
0 0.5 1 1.5 2 2.5 3 3.5 4
Restricciones de desigualdad

 Paso 1. Convertir restricciones:


minx f (x ) minx,s f (x )
s.a c (x )  0  s.a c (x ) - s = 0
s 0
 Paso 2. Llevar restricciones a la función
objetivo
minx f (x ) -  i log si
s.a c (x ) - s = 0
Restricciones de desigualdad

Resultado teórico:
 Sea x* ( ) la solución del problema
minx f (x ) -  i log si
s.a c (x ) - s = 0 ,
se cumple que lim0 x* ( ) = x*, donde x* es
la solución de
minx f (x )
s.a c (x )  0
Restricciones de desigualdad

Solución del problema modificado:


 Paso 1. Seleccionar un valor inicial para ,
por ejemplo, 1 = 1
 Paso 2. Tomando como valor inicial

x0 = x* (s-1) ,
resolver el problema
minx f (x ) - s i log si
s.a c (x ) - s = 0
Restricciones de desigualdad

 Paso 3. Reducir el valor de , por ejemplo,


s+1 = 0.1s
y volver al paso 2.
El proceso se repite hasta que  es del
orden del error deseado en la solución
 Por ejemplo,  = 10-5
Restricciones de desigualdad

Precauciones con la función objetivo


 La función objetivo solo está definida para
valores positivos de las variables
 El punto inicial ha de ser estrictamente
positivo
 La longitud de paso debe asegurar que todos
los puntos sean positivos
Restricciones de desigualdad

 Cálculo de la longitud de paso


 Queremos que el nuevo punto siga siendo positivo
xk+1 = xk + k pk > 0  mini {(xk)i + k (pk)i} > 0
 Condición equivalente:

k <   min{ xi /(-pi )  pi < 0 }


k = min{ 1 , 0.99 }
Restricciones de desigualdad

 Ejemplo: optimización de cartera


minx xTRx
s.a mTx  3.5
eTx = 1
x0
 Datos:
1 1.64 25.9 55.6
e= , m= , R=
1 4.60 55.6 248
Restricciones de desigualdad

Problema modificado:
 Problema en forma estándar
minx,s xTR x
s.a mTx - s = 3.5
eTx = 1
x,s0
 Problema con restricciones de desigualdad
minx,s xTR x -  (i log xi + log s )
s.a mTx - s = 3.5
eTx = 1
Restricciones de desigualdad

 Paso 0. Sean x0 = [0.5 0.5]T , 0 = [0 0]T


 Tomamos 0 = 0.1
 ¿Valor de s0? Positivo

Por ejemplo, s0 = 0.5 > 0


 Paso 1.1. ¿Es solución?
c (x0) = [-0.88 0]T
f (x0) - c (x0)T0 = [81.3 303.4 -0.2]T
Restricciones de desigualdad

 Paso 1.2. Dirección de movimiento


2L (x0,0) c (x0)T p0 f (x0) - c (x0)T0
=-
c (x0) 0 -0 c (x0)

52 111.2 0 1.46 1 81.3


111.2 496.2 0 4.6 1 p0 303.4
0 0 0.2 -1 0 = -0.2
1.46 4.6 -1 0 0 -0 -0.88
1 1 0 0 0 0

p0 = [0.675 -0.675 -2.877]T , 0 = [0.775 40.088]T


Restricciones de desigualdad
 Paso 1.3. Cálculo de la longitud de paso
m (x ) = f (x ) +  c (x )  , m (x0) = 105.283
m (x0) = f (x0) + c (x0)Tc (x0) / c (x0) 
= [64.9 257.4 9.8]T
’(0) = m (x0)Tp0 = -158.1 < 0
 Si probamos con  = 1,
x0 + p0 = [1.175 -0.175 -2.377]T
 La función objetivo no está definida
Restricciones de desigualdad
 Paso 1.3. Cálculo de la longitud de paso
 Mayor paso admisible:
 = min{xi /(-pi )| pi < 0}
= min{0.5/0.675 , 0.5/2.877} = 0.174
 = min{1 , 0.995}  0.173
 Comprobación de la condición:
m (x0 ) = 105.283 , m (x0 + p0) = 73.32
m (x0 ) + m (x0 )Tp0 = 102.55 > m (x0 + p0)
 Aceptamos el paso
Restricciones de desigualdad

 Paso 1.4. Nuevo punto:


x1 = x0 + p0 = [0.617 0.383 0.002]T
1 = 0 + 0 = [0.134 6.935]T
 Paso 2.1. ¿Es solución?
c (x1) = [-0.73 0]T
f (x1) - c (x1)T1 = [67.3 251.1 0.134]T
Restricciones de desigualdad

Programación lineal: minx cTx


s.a Ax = b
x 0
 Transformar el problema:

minx cTx - s i log si


s.a Ax = b
 Aplicar el método de Newton

 Actualizar s
Sección de Preguntas
Muchas Gracias

Вам также может понравиться