Análisis Convexo y Optimización Matemática
Análisis Convexo y Optimización Matemática
Contents 1
1
2 CONTENTS
Part I
3
5
Reglas prácticas
1. Comparación y suma: sin problemas en R ∪ {+∞}, igual que en R.
M ≥ x ∀x ∈ S,
tal que, si existe un número real M ′ tal que M ′ ≥ x para todo x ∈ S, entonces M ′ ≥ M .
De esta definición se siguen las propiedades. Sean E y F subconjuntos no vacios en R,
entonces
5. inf(−E) = − sup E
1. Para todo ε > 0, existe un índice n0 tal que xn > ℓ − ε para todo n ≥ n0 .
Se denota por
lim inf xn = ℓ.
n→∞
El límite superior de una sucesión {xn } de números reales, es u ∈ R ∪ {−∞} tal que:
1. Para todo ε > 0, existe un índice n0 tal que xn < u + ε para todo n ≥ n0 .
3. lim sup(xn + yn ) ≤ lim sup xn + lim sup yn (siempre que el lado derecho esté definido)
n→∞ n→∞ n→∞
4. lim inf (xn + yn ) ≥ lim inf xn + lim inf yn (siempre que el lado derecho esté definido)
n→∞ n→∞ n→∞
5. lim sup(xn · yn ) ≤ lim sup xn lim sup yn (siempre que el lado derecho no sea 0 · ∞)
n→∞ n→∞ n→∞
6. lim inf (xn · yn ) ≥ lim inf xn lim inf yn (siempre que el lado derecho no sea 0 · ∞)
n→∞ n→∞ n→∞
λx + (1 − λ)y ∈ S
k
X
x= λ i xi .
i=1
Lema I.4
Si S ⊆ Rn , entonces conv S es un conjunto convexo y S es convexo, si y solo si,
S = conv S.
Considere S = {(0, 0)} × {(ξ, 1) : ξ ≥ 0}. Observemos que S es unn conjunto cerrado; sin
embargo, conv S no contiene a R+ × 0 y por tanto conv S no es cerrado!
Definición I.6
Sea C ⊆ Rn un conjunto convexo. Una función f : C → R se dice que es convexa, si
satisface la desigualdad:
y estrictamente convexa si
Ejemplo :
■
9
Teorema I.8
Toda función f : Rn → R convexa es localmente Lipschitz en cada x ∈ Rn .
2. Sea {fi }i∈I una familia de funciones convexas; si ∩i∈I dom fi ̸= ∅, entonces si existe x0
tal que supi∈I f (x0 ) < ∞, entonces f definida por
y es semicontinua inferior si
Además, si una función es tanto semicontinua superior e inferior, entonces se dice que es
una función continua.
La continuidad de una función implica que su grafo graf f = {(x, y) ∈ Rn × R : x ∈
dom f, y = f (x)} sea un conjunto cerrado. Desde el punto de vista del epigrafo de una
función, es de interés aquellas que tienen su epigrafo cerrado. La propiedad que garantiza
que una función tenga su epigrafo cerrado es la de semicontinuidad inferior.
Teorema I.11
f : Rn → R ∪ {+∞} (f ̸≡ +∞). Las siguientes propiedades son equivalentes
Demostración.
Si f es semicontinua inferior y {(yk , αk )} ⊂ epi f es una sucesión que converge a (y, α),
entonces f (yk ) ≤ αk ; y tomando el límite inferior k → ∞ se tiene
Por tanto (f, α) ∈ epi f lo cual implica que que epi f es cerrado i.e. (i) ⇒ (ii).
Sea α ∈ R y {(yk )} es una sucesión convergente a y en levα f ̸= ∅, entonces f (yk ) ≤ α.
Es decir que (yk , α) ∈ epi f . Si asumimos (i), i.e. epi f es cerrado, entonces limk→∞ (yk , α) =
(y, α) ∈ epi f ; y en consecuencia, f (y) ≤ α, lo cual demuestra que levα f es cerrado, así
(i) ⇒ (iii).
La implicación (iii) ⇒ (i), se sigue de la definición de semicontinuidad inferior de f .
■
11
Sea f una función convexa dos veces diferenciable en C (un conjunto abierto de Rn )
(a) f es convexa en C, si y solo si, ∇2 f (x0 ) es semidefinida positiva en todo x0 ∈ C
(c) f es fuertemente convexa (de módulo c) en C, si y solo si, el eigenvalor más pequeño
de ∇2 f (x0 ) es minorado por c en C. Es decir, para todo x0 ∈ C y todo d ∈ Rn , se tiene
que
d⊤ ∇2 f (x0 )d ≥ c∥d∥2 (1.3.1)
para cualesquiera d1 y d2 en Rn .
Dado además que si f es convexa, es localmente acotada entonces (1.3.2) al ser decreciente
posee límite cuando t → 0. Es decir, posee derivada direccional f ′ (x; d).
o, equivalentemente, como
Si, además f (x) > f (x∗ ) para todo x ∈ Ω ∩ B(x∗ , ε) se dice que x∗ es un mínimo
local estricto de f sobre Ω.
13
Si, además, f (x) > f (x∗ ) para todo x ∈ Ω, x ̸= x∗ , se dice que x∗ es un mínimo
global estricto de f sobre Ω.
Teorema I.16:
Sea Ω un subconjunto de Rn y sea f una función C 1 en Ω. Si x∗ es mínimo local de f
sobre Ω, entonces para cualquier dirección factiblea d ∈ Rn en x∗ , tenemos
∇f (x∗ )d ≥ 0.
a
i.e. x + td ∈ Ω para todo t < t̄, para cierto t̄
Demostración.
Corolario I.17
Sea Ω un subconjunto de Rn y sea f ∈ C 1 una función en Ω. Si x∗ es mínimo local de
f sobre Ω y si x∗ es un punto interior de Ω, entonces ∇f (x∗ ) = 0
donde
Pn
j=1 λj fj (x)
qλ (x) = e zλ distribución de Gibbs
{fj , j = 1, · · · n} conjunto de características
zλ constante de normalización
fj (x) caracteística en el sitio x (x condiciones ambientales)
xi sitios de presencia
Aunque algunos de los problemas planteados tienen términos no diferenciables, los cuales
requieren técnicas de optimización no suave y análisis convexo, una práctica común es
reemplazar el término no diferenciable por una aproximación diferenciable de éste. Algunos
ejemplos de regularizaciones son las siguientes:
• Para 0 < γ → ∞, la siguientes funciones aproximan el valor absoluto
( 2
γ t2 if |t| ≤ γ1 ,
Huber: Para t ∈ R, hγ (t) = 1
|t| − 2γ si |t| > γ1 .
q
Berkovier-Engelman: Para t ∈ R, t 7→ t2 + γ1
15
■
Además de la condición de punto crítico, un mínimo satisface condiciones de curvatura,
en términos de la segunda derivada.
1. ∇f (x∗ ) = 0
Demostración.
g ′′ (0) = d⊤ ∇2 f (x∗ )d ≥ 0.
■
Si exigimos un poco más de la segunda derivada, podemos establecer condiciones que,
si son satisfechas por x∗ entonces podemos asegurar que se trata de un mínimo. En otras
palabras, las condiciones son suficientes para asegurar que se trata de un mínimo.
16
1. ∇f (x∗ ) = 0
5 Métodos numéricos
Nos concentramos ahora en el desarrollo de mecanismos que nos permitan el cálculo de una
solución óptima. Conocemos de la sección anterior que un mínimo x∗ para una función
diferenciable f sin imponer restricciones, se caracteriza por ser un punto crítico:
x es mínimo local o global
∗
⇐=
∇f (x∗ ) = 0 =⇒
̸ x∗ es máximo local o global
x es punto de silla
∗
f (x0 ) > f (x1 ) > · · · > f (xk ) > · · · ≥ f (x∗ ), asumiendo que xk ̸= x∗ .
Es decir, f decrece en cada punto de la sucesión {xk }k . Esta sucesión minimizante se puede
generar de manera iterativa
xk+1 = xk + sk dk , k = 0, 1, . . .
xk punto actual
sk paso de descenso
dk dirección de descenso
x k+1
actualización de xk
k iteración
De manera más general podemos escribir un método mediante una multifunción, A : Rn →
2 o A : Rn ⇒ Rn
Rn
xk+1 ∈ A(xk ) k = 0, 1, . . .
Definición I.20:
Sea la sucesión {rk } convergente a r∗ . El orden de convergencia de {rk } se define
como el supremo de los números no negativos p que satisfacen
|rk+1 − r∗ |
0 ≤ lim sup < ∞.
k→∞ |rk − r∗ |p
|rk+1 − r∗ |
lim = β < 1,
k→∞ |rk − r ∗ |
• Convergencia Superlineal:
|rk+1 − r∗ |
lim = 0.
k→∞ |rk − r ∗ |
Esto implica que el error decrece más rápido que en el caso lineal, pero no tiene
un factor constante.
|rk+1 − r∗ |
lim = β > 0.
k→∞ |rk − r ∗ |2
Esto implica que el error decrece proporcionalmente al cuadrado del error previo,
lo que significa una velocidad de convergencia muy rápida.
Valores mayores del orden p implican, en cierto sentido, una convergencia más rápida, ya
que la distancia al límite r∗ se reduce por la potencia p en un solo paso. De hecho, si la
secuencia tiene orden p y (como es usual) el límite
|rk+1 − r∗ |
β = lim
k→∞ |rk − r ∗ |p
18
|rk+1 − r∗ | = β|rk − r∗ |p .
xk+1 = xk + sdk .
El proceso de determinar el punto mínimo a lo largo de la dirección de descenso se llama
búsqueda lineal. Las técnicas de búsqueda lineal, que en realidad problemas de minimización
unidimensionales, constituyen la base de los algoritmos de programación no lineal. Existen
varios enfoques diferentes para esta fase importante de la minimización.
Interpolación cuadrática
Un esquema que a menudo es útil para la búsqueda lineal es el de proponer un modelo
cuadrático a lo largo de tres puntos. Esto tiene la ventaja adicional que no se requiere el
cálculo de derivadas.
Dados x1 , x2 , x3 y los valores correspondientes f (x1 ) = f1 , f (x2 ) = f2 , f (x3 ) = f3 .
Supongamos que la función f que deseamos minimizar tiene un solo mínimo y que sus se-
gundas derivadas parciales son continuas.
Para garantizar que la función cuadrática tenga un mínimo en [x1 , x3 ], usamos puntos x1 ,
x , x3 con x1 < x2 < x3 tales que f1 ≥ f2 ≤ f3 . En otras palabras, el valor en el punto medio
2
2.4
2.2
q(x)
1.8
1.6
1 2 3 4
x
1. Si f (x4 ) ≤ f (x2 ), los nuevos puntos son (x̄1 , x̄2 , x̄3 ) = (x2 , x4 , x3 )
2. Si f (x2 ) < f (x4 ) ≤ f (x3 ), los nuevos puntos son (x̄1 , x̄2 , x̄3 ) = (x1 , x2 , x4 )
En cualquiera de los casos, se puede determinar un nuevo patrón de tres puntos, x̄1 , x̄2 ,
x̄3 , que involucra a x4 y a dos de los puntos anteriores.
1 f ′ (xk−1 ) − f ′ (xk )
q(x) = f (xk ) + f ′ (xk )(x − xk ) + (x − xk )2 ≈ f (x).
2 xk−1 − xk
| {z }
≈f ′′ (xk )
2
f (x) = −0.005x2 + 5 sin(x) + 0.001e0.1x
P1 (x) = 0.716x2 − 7.880x + 17.858
P2 (x) = 2.101x2 − 19.589x + 40.519
x
Figure 0.2: Inicio (x1 , x2 , x3 ) = (2, 3, 9), Paso 2 (x1 , x2 , x3 ) = (3, 5.454, 9), Paso 3
(x1 , x2 , x3 ) = (3, 5.4540, 5.5010)
Se puede determinar una estimación xk+1 encontrando el punto donde se anula la derivada
de q. Así
xk−1 − xk
k+1 k ′ k
x = x − f (x ) ′ k−1 .
f (x ) − f ′ (xk )
Ajuste Cúbico
Dado los puntos xk−1 y xk , junto con los valores f (xk−1 ), f ′ (xk−1 ), f (xk ), f ′ (xk ), también
es posible ajustar un polinomio cúbico a los puntos con sus valores correspondientes. El
siguiente punto xk+1 puede determinarse entonces como el punto de mínimo local de este
polinomio cúbico.
Por tanto,
f ′ (xk ) + u2 − u1
k+1 k k k−1
x = x − (x − x ) ′ k ,
f (x ) − f ′ (xk−1 ) + 2u2
donde
Métodos aproximados
En la práctica, las búsquedas lineales se terminan antes de llegar al punto mínimo real. En
un método, por ejemplo, se elige un valor relativamente grande para x1 , y este valor se reduce
sucesivamente por un factor positivo β < 1 hasta que se obtiene una disminución suficiente
en el valor de la función. Los métodos aproximados.
Es importante determinar el parámetro de búsqueda s dentro de un porcentaje fijo de su
valor real. Específicamente, se selecciona una constante c, 0 < c < 1 (un valor razonable es
c = 0.10), y se encuentra el parámetro s en la búsqueda en línea de tal manera que satisfaga
|s − s̄| ≤ cs̄, donde s̄ es el verdadero valor minimizante del parámetro.
Regla de Armijo. Es un criterio práctico para terminar una búsqueda lineal. La idea
esencial es que la regla debe primero garantizar que el valor seleccionado de s no sea demasiado
grande ni demasiado pequeño. Para ello, definamos la función
5.2
aceptable aceptable
Para asegurar que s no sea demasiado pequeño, se selecciona un valor η > 1, y entonces
se considera que s no es demasiado pequeño si
f (xk+1 ) − f (xk )
ε≤ ≤ 1 − ε. (1.5.4)
s∇f (xk )dk
Test de Wolfe Si las derivadas de la función objetivo, así como sus valores, pueden evaluarse
de manera relativamente fácil, entonces el test de Wolfe, que es una variación del anterior,
se prefiere en ocasiones. En este caso, se selecciona ε con 0 < ε < 1/2, y se requiere que s
satisfaga y
Backtracking
Este es un método simplificado (a veces sobresimplificado) de búsqueda lineal que funciona
bien si se dispone de una estimación del paso adecuada. (Este es el caso para el método de
Newton multidimensional)
Una buena elección inicial es s = 1. El backtracking se define por la estimación inicial
s y dos parámetros positivos η > 1 y ε < 1 (generalmente ε < 0.5). El criterio de parada
utilizado es el mismo que la primera parte de la regla de Armijo o el test de Goldstein. Es
decir, definiendo ϕ(s) ≡ f (xk + sdk ), el procedimiento se detiene en el valor actual de s si
Por definición, se sabe que el valor anterior sant = snuevo η no pasa la primera prueba, y
esto significa que pasa la segunda condición de la regla de Armijo.
Dado que la búsqueda a lo largo de una línea para un punto mínimo es parte fundamental
de la mayoría de los algoritmos de programación no lineales, es deseable establecer de inmedi-
ato que este procedimiento está cerrado; es decir, que el resultado final de los procedimientos
iterativos descritos anteriormente, cuando se ve como un solo paso algorítmico que encuentra
un mínimo a lo largo de una línea, define algoritmos cerrados.
Definimos el algoritmo de búsqueda S como una aplicación de R2n a Rn .
Asumimos que la búsqueda se realizará a lo largo de la semirrecta que parte desde x en la
dirección d. También asumimos que hay un punto mínimo a lo largo de la línea. Esto será el
caso, por ejemplo, si f es continua y crece indefinidamente cuando ∥x∥ → ∞.
Definición I.21
La aplicación S : R2n → Rn definida por
Puede haber varios vectores y que alcancen el mínimo, por lo que S es una multifunción.
Teorema I.22
Sea f continua en Rn . Entonces, la aplicación definida por (1.5.6) e es cerrada en (x, d)
si d ̸= 0.
Demostración.
Supongamos que {xk } y {dk } son sucesiones tales que xk → x, dk → d ̸= 0. Supongamos
también que y k ∈ S(xk , dk ) y que y k → y. Debemos demostrar que y ∈ S(x, d).
Para cada k, tenemos y k = xk + sk dk para algún sk . De aquí, podemos escribir
∥y k − xk ∥
sk = .
∥dk ∥
Tomando el límite k → ∞
∥y k − xk ∥ ∥y − x∥
lim sk = lim = := s̄.
k→∞ k→∞ ∥dk ∥ ∥d∥
Entonces se sigue que y = x + s̄d. Aún queda por demostrar que y ∈ S(x, d).
Por definición de S, para cada k y cada s, cumple que 0 ≤ s < ∞,
f (y k ) ≤ f (xk + sdk ).
f (y) ≤ f (x + sd).
24
Por lo tanto,
f (y) ≤ min f (x + sd),
0≤s<∞
∥y k − xk ∥ ∥y − x∥
sk = k
→ ≡ s.
∥d ∥ ∥d∥
f (x + sd) − f (x)
ϕ(x, d, s) = .
s∇f (x)d
Entonces ε ≤ ϕ(xk , dk , sk ) ≤ 1 − ε para todo k.
Por nuestras suposiciones sobre f (x), tenemos que ϕ es continua. Así, ϕ(xk , dk , sk ) →
ϕ(x, d, s) y ε ≤ ϕ(x, d, s) ≤ 1 − ε, lo que implica que y ∈ S(x, d). ■
Lema I.25
Sean A : X → Y y B : Y → Z multifunciones. Supongamos que A es cerrada en x y
B es cerrada en A(x). Supongamos también que si xk → x y y k ∈ A(xk ), existe un y
tal que, para alguna subsucesión {y ki }, y ki → y. Entonces, la aplicación C = BA es
cerrada en x.
Demostración.
Sean xk → x y z k → z con z k ∈ C(xk ), se debe mostrar que z ∈ C(x). Seleccionemos
y k ∈ A(xk ) tal que z k ∈ B(y k ), y de acuerdo con la hipótesis, tomemos y y {y ki } tal que
y ki → y. Dado que A es cerrado en x, por la definición, se deduce que y ∈ A(x).
Asimismo, verificamos (i) y (ii) de la Definición I.24 dado que y ki → y, z ki → z, y B es
cerrado en y, se deduce que z ∈ B(y) ⊂ B A(x) = C(x). ■
| {z }
∋y
Corolario I.26
Sean A : X → Y y B : Y → Z aplicaciones multifuncionales. Si A es cerrada en x,
B es cerrada en A(x) y Y es compacto, entonces la aplicación compuesta C = BA es
cerrada en x.
Corolario I.27
Sea A : X → Y una función y B : Y → Z una multifunción. Si A es continua en x y
B es cerrada en A(x), entonces la composición C = BA es cerrada en x.
dk = −∇f (xk ), k = 0, 1, . . .
Introducimmos la función
1
E(x) = (x − x∗ )⊤ Q(x − x∗ ),
2
26
tenemos que E(x) = f (x) + 12 x∗ Qx∗ , lo que muestra que la función E difiere de f solo por
una constante. Además, notemos que E(x) = 12 ∥x − x∗ ∥2Q .
El gradiente (tanto de f como de E) se da explícitamente por
∇f (x) = Qx − b.
Lema I.28
El proceso iterativo del método del gradiente satisface
" #
k⊤ k 2
(d d )
E(xk+1 ) = 1 − ⊤ ⊤ −1 k
E(xk ). (1.5.8)
k k k
(d Qd )(d Q d )
Demostración.
Fijando y k = xk − x∗ , hacemos un cálculo directo:
⊤ ⊤
E(xk ) − E(xk+1 ) 2sk dk Qy k − s2k dk Qdk
= .
E(xk ) y T k Qy k
Usando dk = Qy k , tenemos
" ⊤ ⊤
#
E(xk ) − E(xk+1 ) 2(dk dk )2 (dk dk )2 ⊤
k
= ⊤
− ⊤
(dk Q−1 dk )−1
E(x ) k
(d Qd ) k 2 k
(d Qd )k 2
⊤
(dk dk )2
= .
(dk ⊤ Qdk )(dk ⊤ Q−1 dk )
■
27
Demostración.
Por el Lema 5.3 y la desigualdad de Kantorovich
4λmin λmax max − λmin
λ
k+1 k 2
E(x ) ≤ 1 − 2
E(x ) = E(xk ).
(λmax + λmin ) λ +λ
| max {z min }
<1
■
De acuerdo a la Definición de la tasa de convergencia, se tiene que además el método del
gradiente converge linealmente a la solución.
Definición I.31
Sea Γ ⊂ X un conjunto de soluciones dado y sea A un algoritmo en X. Una función
continua Z con valores reales sobre X se dice que es una función de descenso para Γ y
A si satisface:
i) Si x ∈
/ Γ y y ∈ A(x), entonces Z(y) < Z(x).
(a) si x ∈
/ Γ, entonces Z(y) < Z(x) para todo y ∈ A(x),
(b) si x ∈ Γ, entonces Z(y) ≤ Z(x) para todo y ∈ A(x),
Demostración.
Supongamos que la sunsucesión convergente {xki } converge al límite x. Dado que Z es
continua, se sigue que Z(xki ) → Z(x) si i → ∞.
Gracias a las suposiciones (i) (ii), se sigue la monotonía de Z en la sucesión {xk }. Es
decir, tenemos que Z(xk ) − Z(x) ≥ 0 para todo k. Ahora, por la convergencia de Z en la
subsucesión, se deduce que para ε > 0, existe K tal que
subsucesión {xki+1 }. Dado que todos los elementos de esta secuencia están contenidos
en un conjunto compacto, existe una subsucesión {xki+1 } (sin renombrar) que converge a
algún límite x̄. Por tanto, tenemos que xki → x, y xki+1 ∈ A(xki ). Dado que A es cerrada
en x, se sigue que x̄ ∈ A(x). Sin embargo, lo discutido anteriormente implica Z(x̄) = Z(x),
lo que contradice el hecho de que Z es una función de descenso. ■
Corolario I.33
Si bajo las condiciones del Teorema de Convergencia Global, si Γ consiste en un único
elemento x̄, entonces la sucesión {xk } converge a x̄.
Demostración.
Supongamos que, al contrario, existe una subsucesión {xki } y un ε > 0 tal que |xki − x̄| > ε
para todo i ≥ i0 para cierto i0 . Por otro lado, por compacidad debe existir una subsucesión
{xki } (sin renombrar) convergente a un límite notado por x′ . Claramente, |x′ − x̄| ≥ ε,
pero por el Teorema de Convergencia Global, x′ ∈ Γ = {x̄}, lo cual es una contradicción.
■
Formalmente, el algoritmo global para el método del gradiente
Esta función es cerrada gracias al Lema I.25. En efecto, sabemos que S es cerrado si la
dirección de descenso d = ∇f (x) ̸= 0 y además que G es continuo.
El conjunto solución Γ se define como los puntos x donde ∇f (x) = 0. Entonces, f (x) es
una función de descenso para A, dado que para ∇f (x) ̸= 0 se tiene
Lema I.34
Sea f diferenciable en Rn tal que ∇f (·) es β-Lipschitz. Entonces, para dos puntos
cualesquiera x y y, se cumple que:
β
f (x) − f (y) − ∇f (y)(x − y) ≤ ∥x − y∥2 .
2
Demostración.
30
Z 1
f (x) − f (y) − ∇f (y)(x − y) = (∇f (y + t(x − y)) − ∇f (y)) · (x − y) dt.
0
Z 1
≤ βt · ∥x − y∥2 dt
0
t2 1 β
=β ∥x − y∥2 = ∥x − y∥2
2 0 2
■
β2
∥∇f (xk )∥ ≤ p ∥x0 − x∗ ∥,
k(k + 1)
y
β
f (xk ) − f (x∗ ) ≤ ∥x0 − x∗ ∥2 .
2(k + 1)
Proof. Para x dado, consideramos la función gx (y) = f (y)−∇f (x)⊤ y. Nótese que gx también
es convexa y satisface la condición de Lipschitz con constante β. Además, x es el minimizador
de gx (y) y ∇gx (y) = ∇f (y) − ∇f (x).
Aplicando el Lema I.34 a gx y observando las relaciones entre gx y f (x), tenemos
1 1
− (∇f k )⊤ (∇f k+1 − ∇f k ) = (xk+1 − xk )⊤ (∇f k+1 − ∇f k ) ≥ ∥∇f k+1 − ∇f k ∥2 ,
β β
∥∇f k+1 ∥2 ≤ (∇f k+1 )⊤ ∇f k ≤ ∥∇f k+1 ∥∥∇f k ∥, es decir , ∥∇f k+1 ∥ ≤ ∥∇f k ∥. (1.5.12)
⊤ 1
δ k ≤∇f k dk − ∥∇f k ∥2
2β
β k+1
= − β(xk+1 − xk )⊤ dk − ∥x − xk ∥ 2 (paso de actualización)
2
β
=− (∥xk+1 − xk ∥2 + 2(xk+1 − xk )⊤ dk ) (factorizando β/2)
2
β
= − (∥dk+1 − dk ∥2 + 2(dk+1 − dk )⊤ dk )
2
β
= (∥dk ∥2 − ∥dk+1 ∥2 ).
2
Sumando la relación anterior desde 0 hasta k, tenemos
k
X β β
δl ≤ (∥d0 ∥2 − ∥dk+1 ∥2 ) ≤ ∥d0 ∥2 . (1.5.13)
l=0
2 2
Usando de nuevo (1.5.10) para x = xk+1 y y = xk y observando que el paso se toma sk = 1/β,
tenemos
k
X k
X
δl =δk (k + 1) + (δl−1 − δl )l
l=0 l=1
k
X 1
≥δk (k + 1) + (∥∇f l ∥2 + ∥∇f l−1 ∥2 )
l=1
2β
k(k + 1)
≥δk (k + 1) + ∥∇f k ∥2
2β
k(k + 1) β
(k + 1)δ k + ∥∇f k ∥2 ≤ ∥d0 ∥2 .
2β 2
En vista de que δ k = f (xk )−f (x∗ ) ≥ 0 y d0 = x0 −x∗ , esta desigualdad prueba las acotaciones
deseadas.
Ejemplo : Métodos de Penalización
Tenemos un problema de optimización con restricciones:
Esto significa que queremos minimizar la función f (x), y que la solución satisfaga h(x) = 0.
Una forma de abordar este problema con restricciones es aproximarlo como un problema
sin restricciones añadiendo un término de penalización por violar la restricción. El nuevo
problema se convierte en:
1
minimizar f (x) + µh(x)2 ,
2
donde µ es un coeficiente de penalización, típicamente un valor grande. La idea es
que, al añadir este término, penalizamos cualquier violación de la restricción h(x) = 0. A
medida que µ se hace más grande, la solución al problema penalizado tiende a satisfacer
h(x) = 0 de manera más estricta.
A medida que µ aumenta, la solución a este problema penalizado acercará h(x) a cero,
aplicando efectivamente la restricción. El problema penalizado se puede resolver utilizando
métodos de optimización sin restricciones estándar como el descenso por gradiente.
Este enfoque de penalización convierte un problema de optimización con restricciones en
uno sin restricciones, lo que simplifica el proceso de solución mientras controla la violación
de la restricción a través del parámetro µ. ■
Ejemplo : Regularización de LASSO
Consideremos
1 2
min ∥Ax − y∥ + β∥x∥1
x 2
1
Reemplazando ∥x∥1 = ni=1 |xi | por ∥x∥1,γ = ni=1 (x2i + γ1 ) 2 (usando Berkovier-Engelman)
P P
33
∇f (x) = A⊤ (Ax − y)
El gradiente del término de regularización g(x) = ∥x∥1,γ es:
⊤
x1 x2 xn
∇g(x) = β 1/2 , 1/2 , . . . ,
1/2
1 1 1
x21 + γ
x22 + γ
x2n + γ
A⊤ Ax + βζ(x) = A⊤ y
⊤
donde ζ(x) = x1
1/2 ,..., xn
1/2
(x21 + γ1 ) (x2n + γ1 )
■
El rendimiento del método de descenso por gradiente está influenciado por la elección
particular de las variables x que se utilizan para definir el problema y un nuevo conjunto de
variables puede alterar sustancialmente las características de convergencia.
Supongamos que T ∈ Rn×n es una matriz invertible. Entonces, podemos hacer un cambio
de variable de x a un nuevo vector y, donde:
T y = x.
Este enfoque implica escalar el problema al introducir una matriz de transformación T ,
lo que podría mejorar las tasas de convergencia dependiendo de las propiedades de T y de
cómo encaja con la geometría del problema.
Minimizar f (x) es equivalente a encontrar y para minimizar h(y) = f (T y). Usando y
como el conjunto de variables subyacente, tenemos:
∇h(·) = ∇f (·)T,
donde ∇f es el gradiente de f con respecto a x.
p
0 1+ 1 + 4(λk )2 1 − λk
λ = 0, λk+1 = , αk = ,
2 λk+1
1
x̃k+1 = xk − ∇f (xk )⊤ , xk+1 = (1 − αk )x̃k+1 + αk x̃k .
β
Observemos que (λk )2 = λk+1 (λk+1 − 1), λk > k
2
y αk ≤ 0.
Se puede probar lo siguiente:
Demostración.
35
Existen ρ > 0, β1 > 0, β2 > 0 tales que para todo x con ∥x − x∗ ∥ < ρ, se cumple
∥∇2 f (x)−1 ∥ < β1 y ∥∇f (x∗ )⊤ − ∇f (x)⊤ − ∇2 f (x)(x∗ − x)∥ ≤ β2 ∥x − x∗ ∥2 . Supongamos
ahora que xk es seleccionado con β1 β2 ∥xk − x∗ ∥ < 1 y ∥xk − x∗ ∥ < ρ. Entonces:
Data: x0 , f , ∇f , ∇2 f , tol
Result: xk solución aproximada
k=0
Inicializar d0 (ejm. ∇2 (x0 )d0 = −∇f (x0 ))
while ∥dk ∥ > tol do
Resolver ∇2 (xk )dk = −∇f (xk )
sk = linesearch(xk , ∇f (xk ))
xk+1 = xk + sk dk
k ←k+1
end
Algorithm 2: Algoritmo de Newton
Ahora examinemos la situación cuando estamos cerca de la solución. Suponemos que todas
las derivadas de f hasta la tercera son continuas y uniformemente acotadas. Asumimos que
en una vecindad de la solución, ∇2 f (·) es definida positiva con a > 0 y A > 0, siendo,
respectivamente, cotas inferiores y superiores uniformes en los valores propios de ∇2 f (x).
1
f (xk + dk ) =f (xk ) − ∇f (xk )⊤ ∇2 f (xk )−1 ∇f (xk ) + ∇f (xk )⊤ ∇2 f (xk )−1 ∇f (xk )
2
k 2
+ o(∥∇f (x )∥ )
1
=f (xk ) − ∇f (xk )⊤ ∇2 f (xk )−1 ∇f (xk ) + o(∥∇f (xk )∥2 )
2
<f (x ) − ε∇f (xk )⊤ ∇2 f (xk )−1 ∇f (xk ) + o(∥∇f (xk )∥2 ),
k
(1.5.16)
donde el término o está uniformemente acotado para todo xk . Dado que ∥∇f (xk )∥ → 0
(uniformemente) cuando xk → x∗ Para xk suficientemente cerca de x∗ , entonces f (xk + dk ) <
f (xk ) − ε∇f (xk )⊤ dk , y por lo tanto se satisface la primera parte de la regla de Armijo. Esto
significa que sk = 1 se utilizará durante toda la fase final.
dk = −(εk I + ∇2 f k )−1 ∇f k
e iteramos de acuerdo con la fórmula
xk+1 = xk + sk dk ,
1 ⊤
minimizar x Qx − b⊤ x,
2
donde Q es una matriz simétrica positiva definida de n × n.
Definición I.38
Dada una matriz simétrica Q, se dice que dos vectores d1 y d2 son Q-ortogonales, o
conjugados con respecto a Q, si d⊤
1 Qd2 = 0.
En las aplicaciones que consideramos, la matriz Q será definida positiva, pero esto parte
de la definición. Por lo tanto, si Q = 0, cualquier par de vectores son conjugados, mientras
que si Q = I, la conjugación es equivalente a la noción usual de ortogonalidad.
Lema I.39
Si Q es definida positiva y el conjunto de vectores no nulos d0 , d1 , d2 , . . . , dk son Q-
ortogonales, entonces estos vectores son linealmente independientes.
Demostración.
Supongamos que existen constantes αi , i = 0, 1, 2, . . . , k, tales que
α0 d0 + · · · + αk dk = 0.
Multiplicando por Q y tomando el producto escalar con di obtenemos
α i d⊤
i Qdi = 0.
Dado que d⊤
i Qdi > 0 en vista de la definitud positiva de Q, tenemos αi = 0 ■
La proposición anterior (ya que vectores son linealmente independientes) implica que la
solución x∗ puede expandirse como
para ciertos αi ’s. De hecho, multiplicando por Q y luego tomando el producto escalar con
di se obtiene directamente
d⊤i Qx
∗
d⊤i b
αi =⊤
= ⊤
. (1.5.17)
di Qdi di Qdi
Esto muestra que los αi ’s y, por lo tanto, la solución x∗ pueden encontrarse mediante la
evaluación de productos escalares simples. De aqui, se deduce
n−1
∗
X d⊤i b
x = ⊤
di .
i=0
d i Qd i
xk+1 = xk + sk dk , k≥0
con
⊤
g k dk
sk = − (1.5.18)
dk ⊤ Qdk
y
g k = Qxk − b,
converge a la solución única, x∗ , de Qx = b después de n pasos, es decir, xn = x∗ .
Demostración.
Dado que los dk ’s son linealmente independientes, podemos escribir
x∗ − x0 = s0 d0 + s1 d1 + · · · + sn−1 dn−1
para algún conjunto de sk ’s. Como hicimos para obtener (1.5.17), multiplicamos por Q y
tomamos el producto escalar con dk para encontrar
⊤
dk Q(x∗ − x0 )
sk = . (1.5.19)
dk ⊤ Qdk
xk − x0 = s0 d0 + s1 d1 + · · · + sk−1 dk−1 ,
y por la Q-ortogonalidad de los dk ’s, se sigue que
⊤
dk Q(xk − x0 ) = 0.
39
Teorema I.41
Sea {di }n−1
i=0 una sucesión de vectores no nulos Q-ortogonales en R . Entonces, para
n
xk+1 = xk + sk dk
⊤
g k dk
sk = −
dk ⊤ Qdk
tiene la propiedad de que xk minimiza f (x) = 12 x⊤ Qx − b⊤ x sobre el subespacio x =
xk−1 + sdk−1 , −∞ < s < ∞, así como en la variedad lineal x0 + Bk , donde Bk =
span{d1 , d2, . . . dn−1 }.
Demostración.
⊤
g k+1 g k+1
(v) βk = gk ⊤ gk
xk+1 = xk + sk dk
g k+1 = Qxk+1 − b
⊤
g k+1 g k+1
βk = gk ⊤ gk
dk+1 = −g k+1 + βk dk
end
Algorithm 3: Algoritmo del Gradiente Conjugado para el problema cuadrático
minimizar f (x)
puede abordarse haciendo aproximaciones adecuadas al algoritmo de gradiente conjugado.
Hay varias maneras en que esto puede lograrse. La elección depende de las propiedades de f
que son fácilmente computables.
Aproximación Cuadrática
En el método de aproximación cuadrática hacemos las siguientes asociaciones en xk :
41
g k ↔ ∇f (xk )⊤ , Q ↔ ∇2 f (xk ),
⊤
g k+1 g k+1
βk = .
gk ⊤gk
Data: f , ∇f , x(0) ∈ Rn
Result: x(k) solución aproximad
while ∥∇f (xk )∥ > tol do
k=0
d0 = −g 0 = b − Ax0
for k = 0, 1, . . . , n − 1 do
xk+1 = xk + sk dk tal que sk minimiza f (xk + sdk )
g k+1 = ∇f (xk+1 )
if k < n − 1 then
⊤
g k+1 g k+1
βk = gk ⊤ gk
dk+1 = −g k+1 + βk dk
else
x0 ← x n
end
end
end
Algorithm 4: Algoritmo del Gradiente Conjugado para problemas no cuadrático con
reinicio
42
Demostración.
43
q k ≡ g k+1 − g k = ∇2 f pk , (1.5.22)
y vemos que la evaluación del gradiente en dos puntos proporciona información sobre ∇2 f .
Si se conocen n direcciones linealmente independientes p0 , p1 , . . . , pn−1 y los q k asociados,
entonces ∇2 f (xk ) está determinada de manera única.
De hecho, si P = [p0 p1 · · · pn−1 ] y Q = [q 0 q 1 · · · q n−1 ] matrices de tamañon × n tenemos
que
∇2 f (xk ) = QP −1
Es natural intentar construir aproximaciones sucesivas Hk a ∇2 f (xk )−1 basadas en los datos
obtenidos de los primeros k pasos de un proceso de descenso, de manera que si ∇2 f (xk ) fuese
44
constante la aproximación sería consistente con (1.5.22) para estos pasos. Específicamente,
si ∇2 f (xk ) fuera constante, Hk+1 cumple que
Hk+1 q i = pi , 0 ≤ i ≤ k. (1.5.23)
Hn = ∇2 f −1
Dado que ∇2 f (xk ) y ∇2 f (xk )−1 son simétricas, es natural requerir que la matriz Hk que
aproxima a ∇2 f (xk )−1 , sea simétrica. Investigemos la posibilidad de definir una fórmula
recursiva, que preserve la simetría, de la forma:
⊤
Hk+1 = Hk + ak z k z k , (1.5.24)
El vector z k y la constante ak definen una matriz de (como máximo) rango uno, mediante la
cual se actualiza la aproximación de la inversa. Los seleccionamos de manera que se satisfaga
(1.5.22). Al establecer i igual a k en (1.5.22) y sustituyendo la relación anterior obtenemos
⊤
pk = Hk+1 q k = Hk q k + ak z k z k q k (1.5.25)
⊤ ⊤ ⊤
q k pk − q k Hk q k = ak (z k q k )2 . (1.5.26)
(pk − Hk q k )(pk − Hk q k )⊤
Hk+1 = Hk + ,
ak (z k ⊤ q k )2
(pk − Hk q k )(pk − Hk q k )⊤
Hk+1 = Hk + . (1.5.27)
q k ⊤ (pk − Hk q k )
Hemos determinado que una corrección de rango uno debe satisfacer (1.5.23) para i = k.
Queda por demostrar que, para el caso donde ∇2 f (xk ) es constante, (1.5.23) también se
satisface para i < k. Esto, a su vez, implica que la fórmula recursiva de rango uno (1.5.27)
converge a ∇2 f (xk )−1 después de, como máximo, n pasos.
45
Teorema I.44
Sea F una matriz simétrica fija y sean los vectores p0 , p1 , p2 , . . . , pk . Notemos los
vectores qi = F pi , i = 0, 1, 2, . . . , k.
Comenzando con cualquier matriz simétrica inicial H0 , se considera:
(pi − Hi q i )(pi − Hi q i )⊤
Hi+1 = Hi + (1.5.28)
q i ⊤ (pi − Hi q i )
Entonces,
pi = Hk+1 q i , para i ≤ k. (1.5.29)
Demostración.
De la relación
⊤ ⊤ ⊤
q k p i = p k F pi = p k q i ,
de donde se deduce que el segundo término se anula. ■
Sin embargo, las matrices generadas por (1.5.28) no necesariamente son definidas positivas,
lo cual puede ser un problema para generar las direcciones de descenso.
Recordando que
Método de Davidon–Fletcher–Powell
Propuesto por Davidon y luego desarrollado por Fletcher y Powell. Tiene la propiedad de que,
para una función objetivo cuadrática, simultáneamente genera las direcciones del método de
gradiente conjugado mientras construye la inversa de la Hessiana.
En cada paso, la inversa de la Hessiana se actualiza mediante la suma de dos matrices
simétricas de rango uno, y este esquema se denomina, por lo tanto, un procedimiento de
corrección de rango dos. El método también se conoce a menudo como el método de
métrica variable, el nombre originalmente sugerido por Davidon.
El procedimiento es el siguiente: comenzando con cualquier matriz H0 simétrica y definida
positiva, cualquier punto x0 , y con k = 0:
Data: f , ∇f , H0 ∈ Rn×n , x(0) ∈ Rn
Result: xk solución aproximada
k=0
while ∥∇f (xk )∥ > tol do
Calcular dk = −Hk ∇f (xk )
Calcular sk mediante una búsqueda lineal
Actualizar xk+1 ← xk − sk dk
Calcular pk = sk dk y q k = ∇f (xk+1 ) − ∇f (xk )
⊤ ⊤
pk pk Hk q k q k Hk
Calcular Hk+1 = Hk + ⊤ −
pk q k q k ⊤ Hk q k
k ←k+1
end
Algorithm 6: Algoritmo DFP
Una ventaja de este método es que el es quema recursivo
⊤ ⊤
pk pk Hk q k q k Hk
Hk+1 = Hk + − ,
pk ⊤ q k q k ⊤ Hk q k
qi = ∇2 f (xk )pi , 0 ≤ i ≤ k,
que se cumpliría en el caso puramente cuadrático.
Además, es posible actualizar aproximaciones a la Hessiana ∇2 f (xk ) en sí misma, en lugar
de su inversa. Por lo tanto, denotando la k-ésima aproximación de F como Bk , buscaríamos
análogamente satisfacer:
47
q i = Bk+1 pi , 0 ≤ i ≤ k. (1.5.30)
En la ecuación (1.5.30) q i y pi se intercambian, y H es reemplazada por B.
Análogamente, cualquier fórmula de actualización para B que satisfaga (1.5.30) puede
convertirse mediante el mismo proceso en una fórmula complementaria para actualizar H.
Para ilustrar las fórmulas complementarias, considere la actualización de rango uno, que
es:
(pk − Hk q k )(pk − Hk q k )⊤
Hk+1 = Hk +
q k ⊤ (pk − Hk q k )
La fórmula complementaria correspondiente es:
(q k − B k pk )(q k − B k pk )⊤
Bk+1 = Bk + . (1.5.31)
pk ⊤ (q k − Bk pk )
Del mismo modo, la fórmula de Davidon–Fletcher–Powell (o simplemente DFP) es:
⊤ ⊤
DFP pk pk Hk q k q k Hk
Hk+1 = Hk + − ,
pk ⊤ q k q k ⊤ Hk q k
y su fórmula complementaria es:
⊤ ⊤
qk qk Bk pk pk Bk
Bk+1 = Bk + − .
q k ⊤ pk pk ⊤ Bk pk
Esta última actualización es conoce como aproximación BFGS cuyo nombre viene de las
iniciales de sus desarrolladores (Broyden-Fletcher-Goldfarb-Shanno ).
Otra manera de convertir una fórmula de actualización para H a una para B o viceversa
es tomar la inversa. Si,
Hk+1 qi = pi , 0 ≤ i ≤ k,
entonces
−1
qi = Hk+1 pi , 0 ≤ i ≤ k,
lo que implica que Hk+1
−1
satisface el criterio para una actualización de B(5.9).
Además, y lo más importante, la inversa de una fórmula de rango dos también es una
fórmula de rango dos.
La nueva fórmula se puede encontrar explícitamente mediante dos aplicaciones de la iden-
tidad de inversión general:
entonces la convergencia global está garantizada por la presencia del primer paso de descenso
de cada ciclo (que actúa como un paso separador).
Una mala distribución de valores propios, que surja de esta manera, jugará un papel
dominante siempre que existan factores que tiendan a debilitar su aproximación al método
de gradiente conjugado. Factores comunes de este tipo son los errores de redondeo, búsquedas
de línea inexactas y términos no cuadráticos en la función objetivo. De hecho, se ha observado
con frecuencia, de manera empírica, que el desempeño del método DFP es altamente sensible
a la precisión del algoritmo de búsqueda de línea, al punto de que las propiedades superiores
de convergencia paso a paso solo pueden obtenerse mediante un gasto excesivo de tiempo en
la fase de búsqueda de línea.
Estudiamos la convergencia global de BFGS, con una búsqueda de línea práctica, cuando
se aplica a una función convexa suave desde un punto inicial arbitrario x0 y desde cualquier
aproximación inicial de la Hessiana B0 que sea simétrica y definida positiva. Establecemos
nuestras suposiciones precisas sobre la función objetivo de manera formal:
Assumption I.45
1. La función objetivo f es dos veces continuamente diferenciable.
3.
m∥z∥2 ≤ z ⊤ ∇2 f (x)z ≤ M ∥z∥2
para todo z ∈ Rn y x ∈ Ω.
Teorema I.46
Sea B0 cualquier matriz inicial simétrica definida positiva, y sea x0 un punto inicial
para el cual se satisface la Suposición 8.1. Entonces, la sucesión {xk } generada por el
Algoritmo BFGS converge al minimizador x∗ de f .
Assumption I.47
La matriz Hessiana ∇2 f (·) es Lipschitz continua en x∗ , es decir,
Teorema I.48
Supongamos que f es dos veces continuamente diferenciable y que las iteraciones gen-
eradas por el algoritmo BFGS convergen a un minimizador x∗ para el cual, se cumple
la Hipótesis (5.10). Supongamos también que se satisface
X
∥xk − x∗ ∥ < ∞.
k
51
53
f (x)
f (x) f (x)
a x∗ b ∗ x∗ = a b
a b=x
x
x x
∇f (x∗ ) > 0
∇f (x∗ ) < 0
∇f (x∗ ) = 0
Figure 0.1: A diferencia de los problemas sin restricciones, el mínimo debe cumplir que
∇f (x∗ )⊤ (x − x∗ ) ≥ 0 para todo x admisible.
min f (x)
sujeto a: h1 (x) = 0, g1 (x) ≤ 0,
h2 (x) = 0, g2 (x) ≤ 0,
.. (2.1.1)
.
hm (x) = 0, gp (x) ≤ 0,
x ∈ Ω ⊂ Rn ,
54
min f (x)
sujeto a h(x) = 0, g(x) ≤ 0,
x ∈ Ω.
Por convención, nos referimos a cualquier restricción de igualdad hi (x) = 0 como activa en
cualquier punto factible.
Las restricciones activas en un punto factible x restringen el dominio de factibilidad en
vecindades de x, mientras que las otras restricciones, inactivas, no tienen influencia en vecin-
dades de x.
h1 (x) = 0,
h2 (x) = 0,
..
.
hm (x) = 0,
• La curva es diferenciable si ẋ = d
dt
x(t) existe, y es dos veces diferenciable si
ẍ(t) existe.
• Se dice que una curva x(t) pasa por el punto x∗ si x∗ = x(t∗ ) para algún t∗ ,
a ≤ t∗ ≤ b. La derivada de la curva en x∗ se define como ẋ(t∗ ) ∈ Rn .
Ahora, consideremos todas las curvas diferenciables en S que pasan por un punto x∗ .
El plano tangente en x∗ se define como la colección de las derivadas en x∗ de todas
estas curvas diferenciables. El plano tangente es un subespacio de Rn .
Qué relación tiene el plano tangente de una superficie definida por funciones hi con el
gradiente de h = (h1 , . . . , hm ) ?
Idealmente, nos gustaría expresar el plano tangente en términos de las derivadas de las
funciones hi que definen la superficie.
Introducimos el subespacio:
M = {y : h′ (x∗ )y = 0} ⊂ Rm
2. hi (x0 ) = 0, i = 1, 2, . . . , m.
3. La matriz Jacobiana m × m:
∂h1 (x0 ) ∂h1 (x0 )
∂x1
··· ∂xm
J(x0 ) = .. ... ..
. .
∂hm (x0 ) ∂hm (x0 )
∂x1
··· ∂xm
es no singular.
Entonces, existe una vecixndad de x̂0 = (x0m+1 , x0m+2 , . . . , x0n ) ∈ Rn−m , tal que, para
x̂ = (xm+1 , xm+2 , . . . , xn ) en esta vecindad, existen funciones ϕi (x̂), i = 1, 2, . . . , m,
tales que:
1. ϕi ∈ C p .
2. x0i = ϕi (x̂0 ), i = 1, 2, . . . , m.
Teorema II.4
Si el punto x∗ de la superficie S definida por h(x) = 0 es regular, el plano tangente es
igual a:
M = {y : h′ (x∗ )y = 0} = Ker(h).
Demostración.
Por definición de y, tenemos h′ (x∗ )y = 0, y así, concluimos que u̇(0) = 0. Por lo tanto:
Lema II.5
Sea x∗ un punto regular de las restricciones h(x) = 0 y un punto extremo local (mínimo
o máximo) de f sujeto a estas restricciones.
Entonces, todo y ∈ Rn que satisfaga
h′ (x∗ )y = 0,
entonces, también debe satisfacer
∇f (x∗ )⊤ y = 0.
Demostración.
Sea y cualquier vector en el plano tangente en x∗ y sea x(t) cualquier curva suave sobre
la superficie {x : h(x) = 0} que pase por x∗ con derivada y en x∗ ; es decir,
• x(0) = x∗ ,
• ẋ(0) = y, y
Dado que x∗ es un punto regular, el plano tangente coincide con M = {y : h′ (x∗ )y = 0}.
Entonces, como x∗ es un punto extremo local de f sujeto a restricciones, tenemos
d
f (x(t)) = 0,
dt t=0
equivalentemente,
∇f (x∗ )⊤ y = 0.
■
Teorema II.6
Sea x∗ un punto extremo local de f sujeto a las restricciones h(x) = 0. Supongamos
además que x∗ es un punto regular de estas restricciones. Entonces, existe un λ ∈ Rm
tal que
Demostración.
59
C(A⊤ ) C(A)
dim = r dim = r
⊥ ⊥
x⊤ (A⊤ y = 0) y ⊤ (A⊤ x) = 0
Rn Rn
Figure 0.2: Teorema de la dimensión y relación entre los espacios nulo e imagen
Sea A ∈ Rm×n , notamos por C(A⊤ ) al espacio generado por las columnas de A⊤ . Gracias
a que Ker(A)⊥ ⊆ C(A⊤ ) y al Teorema II.4 se tiene que
lo cual, a su vez, implica que ∇f (x∗ )⊤ se encuentra en el espacio generado por las filas de
h′ (x∗ ). Por tanto, existen λ̂i , i = 1, . . . , m tales que
m
X
∗
∇f (x ) = λ̂i ∇hi (x∗ ),
i=1
■
60
Ejemplo :
El resultado anterior también se puede demostrar utilizando la equivalencia de un problema
de programación lineal y su dual. Por ejemplo: Problema Primal:
minimizar cT x
sujeto a Ax = b,
x≥0
Problema Dual:
maximizar yT b
sujeto a yT A ≤ cT
Recuerde que el teorema de dualidad para problemas lineales establece que si alguno
de los problemas anteriores Primal o Dual, tiene una solución óptima finita, entonces el
otro problema también la tiene, y los valores correspondientes de las funciones objetivo
son iguales. Si alguno de los problemas tiene una función objetivo no acotada, el otro
problema no tiene soluciones factibles.
■
Recapitulemos los resultados anteiores para el problema
minf (x)
sujeto a: h(x) = 0
∇x L(x, λ) = 0 (2.1.4)
∇λ L(x, λ) = 0, (2.1.5)
Ejemplo :
Sea Q ∈ Rn×n y A ∈ Rm×n con n ≥ m.
1 ⊤
minimizar x Qx − y ⊤ x + c
2
sujeto a Ax = b
Por tanto, un punto x es regular para la restricción, si las filas de A son linealmente
independientes; en otras palabras si rank(A) = m. En este caso,
T = M = {y ∈ Rn : Ay = 0} = Ker(A).
0 = ∇f (x∗ )⊤ + λ⊤ h′ (x∗ ) = x∗ ⊤ Q + y ⊤ + λ⊤ A
lo que es equivalente a: (
Q⊤ x∗ + y + A⊤ λ = 0,
Ax∗ − b = 0,
o, en forma matricial:
Q⊤ A⊤
∗
x −y
= .
A 0 m×m λ b
■
Ejemplo : Entropía máxima
Consideremos la caracterización de distribuciones de probabilidad que ocurren natural-
mente como distribuciones de máxima entropía.
La probabilidad asociadaPan una variable discreta que toma n valores xi es pi , i = 1, . . . , n
(los pi satisfacen pi ≥ 0 y i=1 pi = 1.)
La entropía de tal densidad es
n
X
ε=− pi log(pi ).
i=1
Si se conoce (por la situación física) que el valor medio vale m el argumento de máxima
entropía sugiere que la densidad debe ser aquella que resuelva el siguiente problema:
62
n
X
maximizar − pi log(pi )
i=1
n
X
sujeto a pi = 1
i=1
Xn
xi pi = m,
i=1
pi ≥ 0, i = 1, 2, . . . , n.
Suponiendo que las restricciones de no negatividad son inactivas, podemos ignorar la
última condición sobre los pi .
Introduciendo dos multiplicadores de Lagrange, λ y µ, el Lagrangiano es:
n
X Xn Xn
L(p, (λ, µ)) = −pi log pi + λ( pi − 1) + µ( xi pi − m).
i=1 i=1 i=1
− log pi − 1 + λ + µxi = 0, i = 1, 2, . . . , n.
Esto se reduce a:
pi = e(λ−1)+µxi , i = 1, 2, . . . , n.
¿Qué condiciones se debe imponer para que el punto sea regular? ■
∇f (x∗ )⊤ + λ⊤ h′ (x∗ ) = 0.
Si denotamos por M el plano tangente M = {y : h′ (x∗ )(x∗ )y = 0}, entonces la matriz:
m
X
L(x∗ ) = ∇2 f (x∗ ) + λi ∇2 hi (x∗ )
i=1
Demostración.
Observemos que para toda curva dos veces diferenciable sobre la superficie de restricción
S que pasa por x∗ (con x(0) = x∗ ). Haciendo una expansión de Taylor alrededor de t = 0
tenemos que
f (x(t)) − f (x∗ )
0≤
t
f (x(t)) − f (x(0))
=
t
t t o(t2 )
= ∇f (x∗ )⊤ ẋ(t) + ẋ(t))⊤ ∇2 f (x∗ )ẋ(t) + ∇f (x∗ )⊤ ẍ(t) +
| {z } 2 2 t
≤0
de donde,
t t o(t2 )
0 ≤ ẋ(t))⊤ ∇2 f (x∗ )ẋ(t) + ∇f (x∗ )⊤ ẍ(t) + .
2 2 t
Dividiendo para t > 0 y tomando el límite t → 0 se cumple que:
d2
f (x(t)) = ẋ(0)⊤ ∇2 f (x∗ )ẋ(0) + ∇f (x∗ )⊤ ẍ(0) ≥ 0. (2.1.6)
dt2 t=0
d2
0≤ f (x(t)) =ẋ(0)T L(x∗ )ẋ(0) + (∇f (x∗ )⊤ + λ⊤ h′ (x∗ ))ẍ(0)
dt2 t=0
=ẋ(0)T L(x∗ )ẋ(0).
∇f (x∗ ) + λ⊤ ∇h(x∗ ) = 0.
m
X
Supongamos además que la matriz: L(x ) = ∇ f (x ) +
∗ 2 ∗
λi ∇2 hi (x∗ ), es definida
i=1
positiva en M = {y : ∇h(x∗ )y = 0}, es decir,
y ⊤ L(x∗ )y > 0, ∀y ∈ M, y ̸= 0
Demostración.
h′ (x∗ )d∗ = 0.
Usando la expansión de Taylor para hj y f en x∗ , tenemos para cada j existe ηj entre y k
y x∗ que verifica:
s2k k ⊤ 2
0 = hj (y k ) − hj (x∗ ) = sk ∇hj (x∗ )dk + d ∇ hj (ηj )dk , (2.1.8)
2
y, además
s2k k ⊤ 2
0 ≥ f (yk ) − f (x∗ ) = sk ∇f (x∗ )dk + d ∇ f (η0 )dk , (2.1.9)
2
Multiplicando (2.1.8) por λj y sumando estas a (2.1.9), en vista de la condición necesaria
de primer orden, deducimos que:
( m
)
s2k k ⊤ X
0≥ d ∇2 f (η0 ) + λi ∇2 hi (ηi ) dk ,
2 i=1
maximizar x 1 x2 + x2 x3 + x1 x3
sujeto a x1 + x2 + x3 = 3.
Observemos que cualquier punto es regular respecto a la restricción. Las condiciones
necesarias se expresan en las ecuaciones:
x2 + x3 + λ = 0,
x1 + x3 + λ = 0,
x1 + x2 + λ = 0,
x1 + x2 + x3 − 3 = 0. (restricción)
que se pueden resolver para las cuatro incógnitas x1 , x2 , x3 , λ. La solución es:
x1 = x2 = x3 = 1, λ = −2.
De las condiciones anteriores de primer orden, la matriz ∇2 f (x) + λ∇2 h(x) en este caso
se convierte en:
0 1 1
L = 1 0 1 ,
1 1 0
la cual no es ni definida positiva ni definida negativa. En el subespacio M = {y : y1 + y2 +
y3 = 0}, sin embargo, observamos que:
Hesianas proyectadas
Si A = h′ (x∗ ) es de rango completo, por tanto x∗ es regular. Entonces AA⊤ ∈ Rm×m es
una matriz invertible. Si y pertenece al plano tangente entonces, dado que AA⊤ z = y tiene
solución, entonces
Definición II.10
• La proyección sobre el Ker(A) = M es la matriz PA = I − A† A
Lema II.11
La matriz L (segunda derivada del Lagrangiano) es definida positiva en M si y solo si
la hessiana proyectada L|M es semi-definida positiva en Rn y tiene rango m − n.
Ejemplo :
Consideremos el problema:
1 2
sujeto a (x + x22 + x23 ) = 1.
2 1
Las condiciones necesarias de primer orden son:
1 + λx1 = 0,
2x2 + x3 + λx2 = 0,
x2 + 4x3 + λx3 = 0.
Una solución a este conjunto es fácilmente visible como x1 = 1, x2 = 0, x3 = 0,
λ = −1. Examinemos las condiciones de segundo orden en este punto de solución. La
matriz lagrangiana es:
−1 0 0
L = 0 1 1 ,
0 1 3
y el subespacio correspondiente es:
M = {y : y1 = 0}.
En este caso, M es el subespacio generado por los dos últimos vectores base en R3 , y, por
lo tanto, la restricción de L a M puede encontrarse tomando la submatriz correspondiente
de L. Así, en este caso:
⊤ 1 1
E LE = .
1 3
observando que A = ∇h(x∗ )⊤ = (1, 0, 0), tenemos:
1 0 0 0
PA = I − 0 1 0 0 = 0 1 0 .
0 0 0 1
Entonces:
0 0 0
PA LPA = 0 1 1 ,
0 1 3
que es claramente semidefinida positiva y tiene rango 2. ■
solución x(c) cercano a x(0) = x∗ . Para cada una de estas soluciones existe un valor óptimo
correspondiente f (x(c)), y este valor puede considerarse como una función del lado derecho
de la restrición dado por c.
Los componentes del gradiente de esta función pueden interpretarse como la tasa de cambio
incremental en el valor óptimo respecto de los cambios de la perturbación.
Mostraremos a continuación cómo estos costos están relacionados con los multiplicadores
de Lagrange del problema con c = 0.
Teorema II.12
Sean f y h de clase C 2 . Consideremos la familia de problemas
Demostración.
Consideremos el sistema de ecuaciones
∇f (x) + λ⊤ h′ (x) = 0, (2.1.13)
h(x) = c. (2.1.14)
Por hipótesis, existe una solución x∗ con multiplicador asociado λ a este sistema cuando
c = 0. La matriz Jacobiana del sistema x∗ es
L(x∗ ) h′ (x∗ )⊤
.
h′ (x∗ ) 0
Por hipótesis, x∗ es un punto regular y L(x∗ ) es definida positiva en M . Por tanto, se
deduce que esta matriz es no singular Por lo tanto, por el Teorema de la Función Implícita,
existe una solución x(c), λ(c) para el sistema, la cual es continuamente diferenciable.
69
y
Dc h(x(c))|c=0 = h′ (x∗ )Dc x(0).
En vista de (2.1.14), esta última es igual a la identidad I en Rm , mientras que (2.1.13)
implica que la primera puede escribirse como
∇c f (x(c))|c=0 = −λ⊤ .
■