Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Optimización Convexa
Optimización Convexa
E FACULTAD DE
CIENCIAS
S DE LA SALUD
Alejandro Garcés Ruiz
ISBN: 978-958-722-466-5
eISBN: 978-958-722-465-8
CDD. 519.6
Autor
© Alejandro Garcés Ruiz
Universidad Tecnológica de Pereira
Pereira, Colombia
Coordinador editorial:
Luis Miguel Vargas Valencia
luismvargas@utp.edu.co
Teléfono 313 7381
Edificio 9, Biblioteca Central “Jorge Roa Martínez”
Cra. 27 No. 10-02 Los Álamos, Pereira, Colombia
www.utp.edu.co
Montaje y producción:
David Restrepo Suarez.
Universidad Tecnológica de Pereira
INTRODUCCIÓN.............................................................................................12
PRIMERA PARTE.............................................................................................17
FUNDAMENTACIÓN TEÓRICA....................................................................17
CAPÍTULO UNO..............................................................................................18
PRELIMINARES MATEMÁTICOS..................................................................19
1.1 Modelos de optimización matemática..................................................... 19
1.2 Sobre conjuntos y funciones..................................................................21
1.3. Formas cuadráticas.................................................................................. 24
1.4 Productos interiores y normas..............................................................26
1.5 Teoría básica de máximos y mínimos....................................................30
1.6 Multiplicadores de Lagrange.................................................................31
1.7. Lecturas complementarias....................................................................... 33
1.8. Ejercicios................................................................................................... 33
CAPÍTULO DOS...............................................................................................35
PROGRAMACIÓN LINEAL............................................................................36
2.1 Representación de problemas PL............................................................. 36
2.2 Geometría de los problemas PL.............................................................38
2.3 Dualidad en problemas PL....................................................................41
2.4 Lecturas complementarias.....................................................................43
2.5 Ejercicios................................................................................................43
PROBLEMAS DE OPTIMIZACIÓN CONVEXA............................................46
3.1 Conjuntos convexos.................................................................................. 46
3.1.1. Politopos...................................................................................................... 49
3.1.2. Bolas............................................................................................................. 50
3.1.3. Elipsoides..................................................................................................... 50
3.1.4. Mapas no expansivos.................................................................................. 51
3.1.5. Conos convexos.......................................................................................... 53
3.1.6. Suma de polinomios cuadráticos.............................................................. 53
3.2. Funciones convexas.................................................................................. 54
3.3. Optimización convexa............................................................................. 58
3.4. Unicidad de la solución y óptimo global................................................ 61
3.5. Lecturas complementarias....................................................................... 64
3.6. Ejercicios................................................................................................... 64
CAPÍTULO CUATRO.......................................................................................66
CONDICIONES DE OPTIMALIDAD.............................................................67
4.1. Condiciones de primer orden................................................................. 67
4.2 Condiciones de segundo orden................................................................ 73
4.3 Subgradientes............................................................................................ 74
4.4. Solución de modelos en Python.............................................................. 78
4.5. Lecturas complementarias....................................................................... 79
4.6. Ejercicios................................................................................................... 79
DUALIDAD.......................................................................................................82
5.1 Función dual.............................................................................................. 82
5.2. Relación entre el primal y el dual............................................................ 87
5.3. Condiciones de KKT................................................................................ 92
5.3.1. Interpretación mecánica de las condiciones KKT.............................. 93
5.4. Análisis de sensibilidad........................................................................... 94
5.5. Lecturas complementarias....................................................................... 96
5.6. Ejercicios................................................................................................... 96
SEGUNDA PARTE............................................................................................98
MODELOS DE OPTIMIZACIÓN CONVEXA................................................98
CAPÍTULO SEIS...............................................................................................99
OPTIMIZACIÓN CÓNICA............................................................................100
6.1. Conos convexos...................................................................................... 100
6.2. Programación semidenida.................................................................... 101
6.2.1. La traza, el determinante y el complemento de Shur........................... 102
6.2.2. El cono de las matrices semidenidas...................................................... 104
6.2.3. Dualidad en problemas SDP................................................................... 107
6.3. Programación cónica de segundo orden SOC..................................... 108
6.3.1. Dualidad en problemas SOC................................................................... 111
6.4. Lecturas complementarias..................................................................... 113
6.5. Ejercicios................................................................................................. 113
CAPÍTULO SIETE..........................................................................................115
MANEJO DE LA INCERTIDUMBRE............................................................116
7.1. Incertidumbre en problemas de optimización..................................... 116
7.2. Optimización por escenarios................................................................ 117
7.3. Espacio de incertidumbre como un politopo....................................... 118
7.4. Espacio de incertidumbre como una bola............................................ 119
7.5. Conjunto convexo de incertidumbre................................................... 122
7.6. Robustez vs optimalidad........................................................................ 124
7.7. Restricciones probabilísticas................................................................. 125
7.7.1. Incertidumbre en las restricciones......................................................... 125
7.7.2. Incertidumbre en la función objetivo.................................................... 126
7.8. Lecturas complementarias..................................................................... 127
7.9. Ejercicios................................................................................................. 127
CAPÍTULO OCHO.........................................................................................129
SUMA DE POLINOMIOS CUADRÁTICOS..................................................130
8.1. Optimización en el espacio de los polinomos...................................... 130
8.2. Suma de cuadrados (SOS)..................................................................... 132
8.3. Equivalente semidenido........................................................................ 133
8.4. Dispersidad en problemas SOS............................................................. 137
8.5. Solución de problemas polinomiales.................................................... 141
8.7. Ejercicios................................................................................................. 146
CAPÍTULO NUEVE........................................................................................147
APROXIMACIONES CONVEXAS............................................................. 148
9.1. Linealización y envolvente convexa...................................................... 148
9.2. Optimización convexa secuencial......................................................... 149
9.4. Problemas binarios................................................................................ 152
9.5. Optimización polinomial usando linealización................................... 154
9.5.1. Aproximación SOS a problemas polinomiales..................................... 156
9.6. Jerarquía de Lasserre.............................................................................. 158
9.6.1. El problema de la medida de un conjunto............................................. 158
9.6.2. Optimización sobre un espacio de medida........................................... 159
9.7. Lecturas complementarias..................................................................... 163
9.8. Ejercicios................................................................................................. 164
TERCERA PARTE...........................................................................................165
APLICACIONES EN OPERACIÓN Y CONTROL DE SISTEMAS DE
POTENCIA......................................................................................................165
CAPÍTULO DIEZ............................................................................................166
OPERACIÓN DE SISTEMAS DE POTENCIA...............................................167
10.1. Despacho económico y despacho ambiental...................................... 167
10.2. Restricciones de capacidad.................................................................. 170
10.3. Flujo de carga óptimo.......................................................................... 171
10.4. Gestión de la demanda........................................................................ 171
10.5. Plantas de potencia virtuales............................................................... 173
10.7. Problemas binarios en sistemas eléctricos.......................................... 176
10.9. Ejercicios............................................................................................... 178
CAPÍTULO ONCE..........................................................................................181
APROXIMACIÓN CONVEXA AL FLUJO DE CARGA................................182
11.1. Problemas convexos en variable compleja.......................................... 182
11.2. Flujo de carga en redes de distribución.............................................. 184
CAPÍTULO DOCE..........................................................................................193
DINÁMICA Y ESTABILIDAD DE SISTEMAS ELÉCTRICOS......................194
12.1. Dinámica en sistemas eléctricos......................................................... 194
12.2. Análisis de sistemas dinámicos........................................................... 196
12.6. Lecturas complementarias................................................................... 204
12.7. Ejercicios............................................................................................... 204
CAPÍTULO TRECE........................................................................................206
CONTROL PREDICTIVO BASADO EN EL MODELO................................207
13.1. La estrategia de receding horizon....................................................... 207
13.4. Análisis de estabilidad......................................................................... 213
CUARTA PARTE.............................................................................................216
ALGORITMOS DE SOLUCIÓN.....................................................................216
CAPÍTULO CATORCE...................................................................................217
MÉTODO DEL GRADIENTE........................................................................218
14.1. Conceptos preliminares....................................................................... 218
14.3. Método del gradiente con paso óptimo.............................................. 226
CAPÍTULO QUINCE......................................................................................231
MÉTODO NEWTON......................................................................................232
15.1. Método de Newton............................................................................... 232
CAPÍTULO DIECISÉIS..................................................................................244
MÉTODO DE PUNTOS INTERIORES..........................................................245
16.1. Métodos de puntos interiores.............................................................. 245
CAPÍTULO DIECISIETE...............................................................................254
MÉTODOS PROXIMALES.............................................................................255
17.1. Métodos de proyección........................................................................ 255
REFERENCIAS................................................................................................267
ÍNDICE ALFABÉTICO...................................................................................272
FIGURAS
Introducción
INTRODUCCIÓN
12
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Realidad Modelo
Análisis Software
implica retornar al paso de modelado. El proceso se repite hasta que la solución sea
adecuada desde el punto de vista teório, computacional y practico.
Los problemas convexos tienen asociados algunos conceptos teóricos que son
importantes en todos los problemas de optimización matemática. Entender estos
conceptos permite entender mejor los problemas de optimización matemática y
la eficiencia de los algoritmos de solución. En particular, los problemas convexos
garantizan que la solución encontrada sea el óptimo global. Así mismo, se puede
demostrar la convergencia de los algoritmos bajo condiciones específicas.
Existen algoritmos altamente eficientes que solucionan problemas convexos; en
la práctica, cualquier problema convexo es tratable computacionalmente. En
algunos casos, se puede incluso desarrollar algoritmos que funcionen en tiempo
real y que permitan solucionar problemas de operación y control de sistemas
eléctricos.
Muchos problemas prácticos en Ingeniería Eléctrica son convexos; por ejemplo,
1 Todas las figuras que se presentan en el libro son elaboración propia del autor (N.del E.).
13
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
PE
∙∙∙∙∙∙
∙∙∙∙∙∙∙∙∙
∙∙∙∙∙∙∙∙∙
∙∙∙∙∙∙∙∙
∙∙∙∙∙∙∙∙
∙∙∙∙∙∙∙∙
PL
∙∙∙∙∙∙∙
∙∙∙∙∙∙∙
PNLE
∙∙∙∙∙
∙∙∙∙∙∙
∙∙∙∙∙∙∙
∙∙∙∙∙∙∙∙
∙∙∙∙∙∙∙∙
∙∙∙∙∙∙∙∙
PNL
∙∙∙∙∙∙∙∙∙
∙∙∙∙∙∙∙∙∙
14
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Para finalizar, quiero agradecer a las personas que han contribuido en este trabajo.
En primer lugar, a mi esposa Juanita Escobar quien hizo la primera revisión de estilo
15
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
del documento; a David Mejía de la Editorial UTP, quien perfeccionó esta corrección;
igualmente, al doctor Cristian Guarnizo por sus invaluables recomendaciones técnicas
y de formato en LaTex; finalmente, a los estudiantes del curso de optimización convexa
quienes contribuyeron a detectar algunos gazapos en las ecuaciones y ejemplos.
El autor.
16
PRIMERA PARTE
FUNDAMENTACIÓN TEÓRICA
1 CAPÍTULO
UNO
Alejandro Garcés Ruiz
Capítulo uno
PRELIMINARES MATEMÁTICOS
Preliminares matemáticos
ḿın 𝑓(𝑥, 𝛽)
muestra en la ecuación 1.1
𝑥∈Ω
(1.1)
en donde 𝑥 son las variables de decisión, 𝛽 son los parámetros del modelo y Ω es el
problema? ¿Cómo estamos seguros que una solución 𝑥 es realmente óptima? Para
resolver estos interrogantes, necesitamos estudiar la geometría tanto de Ω como de
27
19
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Γ. Igualmente, necesitamos definiciones formales que nos permitan avanzar con paso
firme.
Definición 1.1. Óptimos locales y óptimo global. Un punto 𝑥̃ es un óptimo local
asociado al problema de optimización {ḿın 𝑓(𝑥), 𝑥 ∈ Ω}, si existe un conjunto abierto
̃ llamado vecindario, el cual contiene a 𝑥,
𝒱(𝑥) ̃ tal que 𝑓(𝑥) ≥ 𝑓(𝑥), ̃ ∀𝑥 ∈ 𝒱(𝑥). ̃ Si
Ω ⊇ 𝒱 entonces el óptimo es global.
a) b)
𝒱2
óptimo local
𝒱1
óptimo local y global
óptimo local y global
en ℝ con sus respectivos vecindarios 𝒱. En el primer caso, se tiene una función con dos
La Figura nro. 1.1 muestra el concepto de óptimo local y global para dos funciones
La Figura nro. 1.2 muestra un ejemplo de una región plana para una función
univariada. Este caso muestra que aunque existe un óptimo global, este se produce
palabras, un óptimo global no implica que la solución sea única; estamos interesados
en investigar tanto las propiedades de globalidad como de unicidad de las soluciones.
Estas propiedades están estrechamente relacionadas con el concepto de convexidad, el
cual constituye el eje central de este libro.
28
20
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑓(𝑥)
𝑓̃
𝑥
𝑥1 𝑥2
Figura nro. 1.2. Ejemplo de una región plana en una función univariable.
Reflexibilidad: 𝑎 ≤ 𝑎 ∀𝑎 ∈ Ω.
Antisimetría: si 𝑎 ≤ 𝑏 y además 𝑏 ≤ 𝑎 entonces necesariamente 𝑎 = 𝑏.
Transitividad: 𝑎 ≤ 𝑏 y 𝑏 ≤ 𝑐 implica que 𝑎 ≤ 𝑐.
Tricotomía: para cualquier par de elementos 𝑎, 𝑏 del conjunto se cumple que
𝑎 ≤ 𝑏 o bien 𝑏 ≤ 𝑎.
29
21
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
puede encontrar relaciones del tipo ≤ entre dos objetivos usualmente contradictorios.
parcialmente ordenados; ese es el caso de la optimización multi-objetivo en donde no se
pueden estar por fuera del conjunto. Por ejemplo, el supremo del conjunto Ω = [3, 5)
mínimo de un conjunto. La principal diferencia radica en que el ínfimo y el supremo
■
Ejemplo 1.1. La Tabla nro. 1.1 muestra algunos casos de mínimos y máximos en
intervalos abiertos y cerrados sobre la recta numérica.
Ω1 = {1, 2, 3, 4}
conjunto sup max inf min
Ω2 = {𝑥 ∈ ℝ ∶ 1 ≤ 𝑥 ≤ 2}
4 4 1 1
Ω3 = {𝑥 ∈ ℝ ∶ 3 < 𝑥 ≤ 8}
2 2 1 1
Ω4 = {𝑥 ∈ ℝ ∶ 2 ≤ 𝑥 < 9}
8 8 3 -
Ω5 = {𝑥 ∈ ℝ ∶ 4 < 𝑥 < 7}
9 - 2 2
7 - 4 -
redes AC. En este caso, el espacio de soluciones corresponde a los números complejos mientras que el
espacio de la función objetivo apunta a las pérdidas de potencia activa, las cuales se representan en los
reales.
30
22
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
es necesario hacer distinción entre sup y max́ o entre ı́ nf y ḿın. Sin embargo, algunos
En la mayoría de nuestras aplicaciones, los conjuntos son cerrados y, por tanto, no
análisis teóricos van a requerir hacer énfasis en este detalle, al menos para unificar la
nomenclatura.
Algunas propiedades útiles en el caso de ser aplicado sobre funciones reales son las
siguientes:
2 Por ejemplo, el costo directo de operación asociado a las centrales de generación hidroeléctrica se suele
asumir como cero.
31
23
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
0 𝑥∈Ω
𝐼Ω (𝑥) = { }
∞ 𝑥∉Ω
(1.7)
ḿın 𝑓(𝑥)
10 ≤ 𝑥 ≤ 20
(1.8)
0 10 ≤ 𝑥 ≤ 20
𝐼Ω (𝑥) = { }
∞ 𝑥 > 20, 𝑥 < 10
(1.9)
■
En este caso, necesitamos desarrollar el concepto de subdiferencial como se mostrará
en el capítulo tres.
𝑄(𝑥) = 𝑥⊺ 𝐴𝑥 + 𝑏⊺ 𝑥 + 𝑐 (1.11)
32
24
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Nótese que esta no es la única representación posible, pues la siguiente forma también
es una representación de muchas posibles:
⊺ ⊺
𝑥 5 3 𝑥 8 𝑥
𝑄(𝑥, 𝑦) = ( ) ( )( )+( ) ( ) + 15
𝑦 −1 3 𝑦 4 𝑦
(1.14)
Demostración. Dado que 𝑞(𝑥) es un escalar entonces 𝑞(𝑥) = 𝑞(𝑥)⊺ , esto signfica que
𝑞(𝑥) = 𝑞(𝑥)⊺
= (𝑥⊺ 𝑁𝑥)⊺
= (𝑁𝑥)⊺ 𝑥
(1.16)
= 𝑥⊺ 𝑁 ⊺ 𝑥
1 1
𝐴 = (𝐴 + 𝐴⊺ ) + (𝐴 − 𝐴⊺ )
reescribir como:
2 2
(1.17)
Definimos ahora 𝑀 = 𝐴 + 𝐴 y 𝑁 = 𝐴 − 𝐴 . Nótese que 𝑀 es simétrica mientras que
⊺ ⊺
33
25
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Ejemplo 1.5. La forma cuadrática mostrada en la ecuación 1.13 puede ser reescrita en
forma simétrica como se muestra a continuación:
⊺ ⊺
1 𝑥 10 2 𝑥 8 𝑥
𝑄(𝑥, 𝑦) = ( ) ( )( )+( ) ( ) + 15
2 𝑦 2 6 𝑦 4 𝑦
(1.19)
Definición 1.9. Matriz semidefinida. Decimos que una matriz simétrica 𝐴 ∈ ℝ𝑛×𝑛
es semidefinida positiva, denotada por 𝐴 ⪰ 0, si para cualquier vector 𝑢 ∈ ℝ𝑛 se cumple
𝑢⊺ 𝐴𝑢 ≥ 0
que
(1.20)
positiva (𝐴 ≻ 0). De otro lado, decimos que una matriz 𝐴 es semidefinida o definida
Así, si la desigualdad se cumple estrictamente, decimos que la matriz es definida
1. 𝑥 + 𝑦 ∈ ℒ.
2. 𝛼𝑥 ∈ ℒ.
3. 𝑥 + 𝑦 = 𝑦 + 𝑥.
4. (𝑥 + 𝑦) + 𝑧 = 𝑥 + (𝑦 + 𝑧).
5. Existe un elemento 0⃗ tal que 𝑥 + 0⃗ = 𝑥.
34
26
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
6. 𝛼(𝑥 + 𝑦) = 𝛼𝑥 + 𝛼𝑦.
7. (𝛼 + 𝛽)𝑥 = 𝛼𝑥 + 𝛽𝑦.
8. (𝛼𝛽)𝑥 = 𝛼(𝛽𝑥).
9. 0𝑥 = 0⃗.
10. 1𝑥 = 𝑥.
coeficientes reales. Este último genera los problemas de sumas de cuadrados o SOS (por
sus siglas en ingles: sum of squares).
Definición 1.11. Subespacio lineal. Un subconjunto no vacio 𝒮 de un espacio lineal
ℒ es un subespacio lineal si cada vector de la forma 𝛼𝑥+𝛽𝑦 ∈ 𝒮 para cualquier 𝑥, 𝑦 ∈ 𝒮.
Todo subespacio lineal es también un espacio lineal. Esta propiedad es útil para
un subespacio lineal de ℝ𝑛 .
Definición 1.12. Espacio afín. Un espacio afín es un conjunto Ω que admite
traslaciones libres de un espacio lineal 𝒱. En otras palabras, es un espacio que admite
un mapa Ω × 𝒱 → Ω tal que
En términos informales, podemos decir que un espacio afín es un espacio lineal que
Una vez hemos definido el espacio lineal podemos asociarle una serie de
operaciones adicionales, tales como el producto interior y la norma. La primera
operación genera los llamados espacios de Hilbert mientras que la segunda genera los
espacios de Banach. En ambos casos, se requiere además que el espacio sea completo;
esto significa que es lo suficientemente «suave» como para permitir las operaciones
que no es completo).
35
27
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
denotado por 𝑥 ⋅𝑦 es una operación que toma dos vectores de un espacio lineal y genera
Definición 1.13. Producto interior o escalar. El producto interior o producto punto,
(𝑥 + 𝑦) ⋅ 𝑧 = 𝑥 ⋅ 𝑧 + 𝑦 ⋅ 𝑧.
(𝛼𝑥) ⋅ 𝑦 = 𝛼(𝑥 ⋅ 𝑦).
𝑥 ⋅ 𝑥 ≥ 0, 𝑥 ⋅ 𝑥 = 0 si 𝑥 = 0⃗.
(𝑥 ⋅ 𝑦)2 ≤ (𝑥 ⋅ 𝑥)(𝑦 ⋅ 𝑦) —desigualdad de Cauchy–Schwarz—.
𝑥 ⋅ 𝑦 = 𝑥⊺ 𝑦
𝑥 ⋅ 𝑦 = 𝑥⊺ 𝐴𝑦
(1.21)
(1.22)
En donde 𝐴 es una matriz definida positiva. El uso de un producto interior dependerá
de la aplicación pero es importante identificar sus propiedades, especialmente la
Nótese que dos vectores son perpendiculares si 𝑥 ⋅ 𝑦 = 0; esto significa que dos vectores
desigualdad de Cauchy–Schwarz que será de utilidad en múltiples problemas prácticos.
pueden ser perpendiculares bajo una definición de producto-punto, pero no serlo bajo
otra definición.
Definición 1.14. Norma. Sea ℒ un espacio lineal. Decimos que una función ‖.‖ ∶
ℒ → ℝ es una norma si cumple las siguientes propiedades:
{ }
‖𝑥‖ > 0 ∀𝑥 ∈ ℒ − 0⃗ (1.23)
‖𝑥‖ = 0 → 𝑥 = 0⃗
‖𝛼𝑥‖ = |𝛼| ‖𝑥‖
(1.24)
‖𝑥 + 𝑦‖ ≤ ‖𝑥‖ + ‖𝑦‖
(1.25)
(1.26)
Un espacio normado completo lo llamamos espacio de Banach.
Los tres ejemplos más comunes de normas sobre ℝ𝑛 son los siguientes:
∑
‖𝑥‖1 = |𝑥𝑖 | (1.27)
𝑖
√∑
‖𝑥‖2 = 𝑥𝑖2 (1.28)
𝑖
36
28
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
∑
1∕𝑝
‖𝑥‖𝑝 = ( |𝑥𝑖 |𝑝 ) (1.30)
𝑖
en donde 𝑝 ≥ 1. Un espacio lineal junto con una de estas normas se le conoce como
espacio ℒ𝑝 o espacio Lebesgue. En general, se tiene que ‖𝑥‖1 ≤ ‖𝑥‖2 ≤ ‖𝑥‖∞ , como se
muestra en la Figura nro. 1.3 para el caso de ℝ2 .
𝑥2
‖𝑥‖∞
‖𝑥‖2
‖𝑥‖1
𝑥1
También podemos generar normas sobre el espacio de las matrices inducida por
alguna norma-p.
Definición 1.15. Norma matricial inducida. Dada una norma ‖⋅‖ en ℝ𝑛 podemos
definir una nueva norma sobre el espacio ℝ𝑚×𝑛 dada por
‖𝐴 ⋅ 𝐵‖ ≤ ‖𝐴‖ ⋅ ‖𝐵‖
decir,
(1.32)
‖‖ 𝑀𝑥 ‖‖
sup ‖𝑀𝑥‖ = sup ‖‖‖ ‖‖
sea unitario
‖
‖𝑥‖=1 ‖𝑥‖≠0 ‖‖ ‖𝑥‖ ‖‖
(1.33)
37
29
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Ahora, calculamos ‖𝐴𝐵‖ y definimos 𝑦 = 𝐵𝑥, premultiplicando por este factor sin
‖‖ 𝐴𝐵𝑥 ‖‖
‖𝐴𝐵‖ = sup ‖‖‖ ‖‖
modificar la ecuación
‖
‖𝑥‖≠0 ‖ ‖ ‖𝑥‖ ‖‖
‖‖ (‖𝐵𝑥‖)𝐴𝐵𝑥 ‖‖
= sup ‖‖‖ ‖‖
‖𝑥‖≠0 ‖ ‖ (‖𝐵𝑥‖) ‖𝑥‖ ‖‖‖
‖‖ (‖𝐵𝑥‖)𝐴𝑦 ‖‖
= sup ‖‖‖ ‖‖
‖𝑥‖≠0 ‖ ‖ (‖𝑦‖) ‖𝑥‖ ‖‖‖
(1.34)
‖‖ 𝐵𝑥 ‖‖ ‖ ‖
≤ sup ‖‖‖ ‖‖ sup ‖‖‖ 𝐴𝑦 ‖‖‖
‖ ‖ ‖
‖
‖𝑥‖≠0 ‖ ‖𝑥‖ ‖ ‖𝑦‖≠0 ‖ ‖𝑦‖ ‖
‖ ‖ ‖
≤ ‖𝐴‖ ‖𝐵‖
𝑓(𝑥̃ ± 𝑡) ≥ 𝑓(𝑥)
̃ (1.35)
De este modeo, podemos notar que 𝑡 puede ser positivo o negativo. Si 𝑡 > 0, entonces
𝑓(𝑥̃ + 𝑡) − 𝑓(𝑥)
̃
̃ = ĺım+
𝑓 ′ (𝑥) ≥0
𝑡→0 𝑡
(1.36)
𝑓(𝑥̃ + 𝑡) − 𝑓(𝑥)
̃
̃ = ĺım−
𝑓 ′ (𝑥) ≤0
𝑡→0 𝑡
(1.37)
38
30
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑔(𝑡) ≥ 𝑔(0)
siguiente:
̃ a saber:
de 𝑥,
Demostración. Consideremos una expansión en un polinomio de Taylor alrededor
1
̃ + ∇𝑓(𝑥)
𝑓(𝑥) = 𝑓(𝑥) ̃ ⊺ (𝑥 − 𝑥) ̃ ⊺ 𝐻𝑓 (𝑥)(𝑥
̃ + (𝑥 − 𝑥) ̃ ̃
− 𝑥)
2
(1.40)
̃ = 0 entonces,
Si ∇𝑓(𝑥)
1
̃ = (𝑥 − 𝑥)
𝑓(𝑥) − 𝑓(𝑥) ̃ ⊺ 𝐻𝑓 (𝑥)(𝑥
̃ ̃
− 𝑥)
2
(1.41)
̃ ⊺ 𝐻𝑓 (𝑥)(𝑥
̃ cuando (𝑥 − 𝑥)
Esto significa que 𝑓(𝑥) ≥ 𝑓(𝑥) ̃ − 𝑥)
̃ ≥ 0, es decir, cuando ℋ𝑓
1
2
̃ En este caso, podemos asegurar que se trata de un
es semidefinida positiva ∀𝑥 ∈ 𝒱(𝑥).
mínimo local.
ḿın𝑓(𝑥)
se muestra a continuación:
𝑔(𝑥) = 𝑎
(1.42)
39
31
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Ω = {𝑥 ∈ ℝ𝑛 ∶ 𝑔(𝑥) = 𝑎} (1.43)
Así, nuestro problema será encontrar el valor que minimice a 𝑓(𝑥) pero que, al mismo
tiempo, pertenezca al conjunto Ω. Para solucionar este problema, establecemos otra
función llamada lagrangeano dada por
Nótese que está función está definida en un nuevo espacio ℝ𝑛+1 , ya que hemos
introducido una nueva variable 𝜆, denominada multiplicador de Lagrange.
Teorema 1.4. Sean 𝑓, 𝑔 ∶ ℝ𝑛 → ℝ, funciones continuas y diferenciables entonces,
el óptimo del problema de optimización dado por 1.42 es equivalente al óptimo de la
función lagrangeana.
De la segunda expresión, podemos concluir que Ω es igual a la ecuación 1.43, esto es,
el conjunto de soluciones factibles. Además, si 𝑥 ∈ Ω entonces ℒ(𝑥, 𝜆) = 𝑓(𝑥) en la
ecuación 1.44 con lo cual concluimos que corresponde al óptimo en 𝑓.
40
32
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
̃
∇𝑓(𝑥)
̃
∇𝑔(𝑥)
̃
∇𝑓(𝑥)
𝑥̃
𝑥𝐵 ̃
∇𝑔(𝑥)
𝑥𝐴 𝑔(𝑥) = 0
Puesto que 𝑥˜ es una solución que cumple con las condiciones de optimalidad de primer
𝜕ℒ 𝜕𝑓
orden, se tiene que
= = −𝜆
𝜕𝑎 𝜕𝑎
(1.48)
Por tanto, el multiplicador de Lagrange (𝜆) representa la derivada de la fución
objetivo respecto a una variación en el parámetro que acompaña la restricción. Esta
interpretación económica será desarrollada más adelante en el capítulo cuatro cuando
presentemos el concepto de dualidad en problemas convexos.
Los conceptos presentados en este capítulo, aunque básicos, son necesarios para
comprender el material que se presentá más adelante. Hemos obviado algunos detalles
tales como el teorema de la función implícita, el cual es de utilidad para una
demostración más completa del método de multiplicadores de Lagrange. El estudiante
interesado puede referirse a [1] y sobre todo a [2] para más detalles sobre este aspecto.
1.8. Ejercicios
1. Considere un sistema de tren eléctrico con una vía lineal como se muestra en
la Figura nro. 1.5. Suponga que deseamos alimentar este sistema desde dos
subestaciones A y B; para ello, proponemos una tercera subestación C la cual
está sobre la ruta del tren. Determine la posición de la subestación C de tal forma
que se use el mínimo cable, es decir, que la distancia ACB sea mínima.
Usar argumentos puramente geométricos
Usar el criterio de la derivada.
41
33
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
B
A
C
tren eléctrico
Figura nro. 1.5. Sistema de tren eléctrico alimentado desde dos subestaciones A,B.
ḿın𝑓(𝑥, 𝑦) = 𝑥 + 𝑦
saber:
(𝑥, 𝑦) ∈ Ω
{ }
Ω = (𝑥, 𝑦) ∈ ℝ ∶ 𝑥 + 𝑦 = 1
(1.50)
2 2 2
ı́ nf 𝑓 − ı́ nf 𝑔 ≥ ı́ nf (𝑓 − 𝑔)
Ω Ω Ω
(1.52)
ı́ nf 𝑓 + ı́ nf 𝑔 ≤ ı́ nf (𝑓 + 𝑔)
Ω Ω Ω
(1.53)
42
34
2 CAPÍTULO
DOS
Alejandro Garcés Ruiz
Capítulo dos
PROGRAMACIÓN LINEAL
Programación lineal
y 𝑏 son vectores columna. Una de las propiedades más importantes de los problemas
de programación lineal es que se puede encontrar el óptimo global. Más adelante
veremos que existen propiedades similares en todos los problemas convexos y que los
problemas de programación lineal son solo un caso particular.
43
36
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ḿın 𝑐⊺ 𝑥
𝐴𝑥 = 𝑏
𝑥≥0
(2.1)
ḿın − 3𝑥 + 2𝑦
𝑥+𝑦+𝑧 =5
𝑥, 𝑦, 𝑧 ≥ 0
(2.3)
44
37
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
G1
D1
G2
D2
G3
D3
G4
Figura nro. 2.1. Grafo orientado que representa un problema de transportes entre los nodos de
producción (G) y los nodos de demanda (D).
∑∑
cuenta el balance de masas en cada nodo, como se muestra a continuación:
𝑥𝑖𝑗 ≥ 0
■
puede ser extendido fácilmente a aplicaciones eléctricas, como veremos más adelante.
una forma abierta como la que se muestra en el lado derecho de la figura. En ese
extremas; esto es, el conjunto de puntos de Ω que pertenecen al rayo, 𝑟 definido como
caso, el politopo está definido no solo por los vértices, sino también por las direcciones
𝑟 = {𝑥 ∶ 𝑥 = 𝑥0 + 𝜇𝑑, 𝜇 ≥ 0}
sigue:
(2.5)
45
38
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑥2 𝑥2
𝑣3
𝑣4 𝑑1
𝑣2
𝑣2
politopo
𝑣5
𝑥1 𝑥1
𝑣1 𝑣1
𝑣3
Figura nro. 2.2. Ejemplo de un poliedro cerrado (politopo) y de un poliedro abierto con sus
respectivas direcciones extremas.
⎧ 𝑥1 + 2𝑥2 ≤ 4 ⎫
representación
⎪ 4𝑥1 + 2𝑥2 ≤ 12 ⎪
Ω = (𝑥1 , 𝑥2 ) ∶ −𝑥1 + 𝑥2 ≤ 1
⎨ ⎬
⎪ 𝑥1 ≥ 0 ⎪
(2.6)
⎩ 𝑥2 ≥ 0 ⎭
𝑥2
6
𝑎 = (0, 0)
4𝑥 1
1
≤
5
+2
2
𝑥
𝑏 = (1, 0)
+
𝑥2
1
−𝑥
4
≤1
𝑐 = (2∕3, 5∕3)
2
2 c 𝑑 = (8∕3, 2∕3)
𝑒 = (3, 0)
𝑥1 + 2𝑥2 ≤ 4
1 b
𝑥1
d
e
a
1 2 3 4
Figura nro. 2.3. Ejemplo de politopo en ℝ2 dado por una restricción de la forma 𝐴𝑥 ≤ 𝑏.
⎛ 1 2 1 0 0 ⎞ ⎛ 4 ⎞
de holgura:
𝐴 = ⎜ 4 2 0 1 0 ⎟ , 𝑏 = ⎜ 12 ⎟
⎝ −1 1 0 0 0 ⎠ ⎝ 1 ⎠
(2.7)
46
39
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Figura nro. 2.4 en donde 𝑥 es un punto arbitrario en su interior. Por tanto, podemos
Demostración. Consideremos un politopo cerrado, como el que se muestra en la
𝑣4
𝑦
𝑣5
𝑥
𝑣3
𝑣1
𝑣2
Figura nro. 2.4. Representación de los puntos interiores a un politopo como una combinación
lineal de sus vertices.
∑
En donde 𝑣𝑘 es el conjunto de vértices, 𝜆𝑘 = 1 y 𝑑𝑖 es el conjunto de direcciones
extremas.
47
40
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ḿın 𝑐⊺ 𝑥
∑ ∑
𝑥= 𝜆𝑘 𝑣 𝑘 + 𝜇𝑖 𝑑𝑖
∑
𝑘 𝑖
𝜆𝑘 = 1
(2.10)
𝜇𝑖 ≥ 0
∑ ∑
ḿın 𝜆𝑘 (𝑐⊺ 𝑣𝑘 ) + 𝜇𝑖 (𝑐⊺ 𝑑𝑖 ) (2.11)
𝑘 𝑖
⎧ max
́ 𝑐⊺ 𝑥 ⎫
siguiente problema PL:
𝒫= 𝐴𝑥 ≤ 𝑏
⎨ ⎬
𝑥≥0
(2.12)
⎩ ⎭
48
41
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Y el siguiente problema dual, el cual tiene los mismos parámetros de 𝒫 pero con una
estructura y variables de decisión diferentes, a saber:
⎧ ḿın 𝑏⊺ 𝑦 ⎫
𝒟= 𝐴⊺ 𝑦 ≥ 𝑐
⎨ ⎬
𝑦≥0
(2.13)
⎩ ⎭
los problemas 𝒫 y 𝒟.
optimización. Por ahora solo nos interesa conocer algunas propiedades que relacionan
𝑐⊺ 𝑥 ≤ 𝑏⊺ 𝑦
cumplen la siguiente relación:
(2.14)
𝑥 ≥ 0 e 𝑦 ≥ 0,
Demostración. Partimos de la función objetivo del problema primal, recordando que
𝑐⊺ 𝑥 ≤ (𝐴⊺ 𝑦)⊺ 𝑥
= 𝑦 ⊺ 𝐴𝑥 ≤ 𝑦 ⊺ 𝑏
(2.15)
Por tanto, 𝒟 puede ser una herramienta para encontrar limites inferiores al problema
En algunos casos, solucionar el dual es mucho mas simple que solucionar el primal.
original.
Teorema 2.4. Dualidad fuerte. En un problema de programación lineal se cumple
solo uno de los siguientes posibilidad:
𝒫 es ilimitado y 𝒟 es infactible.
𝒟 es ilimitado y 𝒫 es infactible.
49
42
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
pues solo en el punto óptimo obtenemos soluciones factibles tanto en 𝑥 como en 𝑦. Así,
problema de programación lineal puede ser reducido a un problema de factibilidad,
𝐴𝑥 ≤ 𝑏
𝐴⊺ 𝑦 ≥ 𝑐
𝑥≥0
𝑦≥0
(2.16)
𝑐 𝑥 = 𝑏⊺ 𝑦
⊺
Los conceptos básicos asociados a los problemas de programación lineal pueden ser
consultados en [4] y en [5]. Existen múltiples algoritmos para solucionar problemas
de programación lineal, tanto en su formulación primal como en su forma dual. La
mayoría de ellos se basan en las propiedades antes descritas. Por ejemplo, el método
simplex, propuesto por George Dantzig en los años 40, usa el hecho de que el óptimo se
encuentra en un vértice del politopo. Por tanto, el algoritmo parte de un vértice factible
moviéndose a vértices vecinos que minimizan la función objetivo. El otro método
clásico es el de puntos interiores, el cual parte de una barrera logarítmica en el interior
del politope, siguiendo la dirección del gradiente. Este último método es el más usuado
en aplicaciones prácticas y puede ser extendido a otros problemas no lineales. Este
método será estudiado en el capítulo dieciséis).
2.5. Ejercicios
0 ≤ 𝑥1
0 ≤ 𝑥2 ≤ 2
50
43
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
51
44
3 CAPÍTULO
TRES
Alejandro Garcés Ruiz
Capítulo tres
PROBLEMAS DE OPTIMIZACIÓN
CONVEXA
Problemas de optimización
convexa
En este capítulo, se definen tanto funciones como conjuntos convexos y la forma en que
estos se relacionan entre sí para formular problemas de optimización. Se presentan las
condiciones de unicidad y globalidad de la solución en funciones fuerte y estrictamente
convexas. Finalmente, se presentan una serie de ejemplos simples y una taxonomía básica
de los problemas de optimización convexa.
53
46
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
que pertenecen al segmento de recta, pero que se salen del espacio; por lo tanto, Ω𝐴
es convexo mientras que Ω𝐵 es no convexo. Esta intuición geométrica es útil para
problemas en ℝ2 ; no obstante, el caso general requiere el uso de la definición, como
se muestra a continuación:
𝑥1
𝑥2
Ω𝐴 Ω𝐵
𝑥1
𝑥2
Ejemplo 3.1. Considere un espacio afín dado por 𝐴𝑥 = 𝑏 y dos puntos 𝑥, 𝑦 que
pertenecen al espacio; ahora tomemos un tercer punto 𝑧 = (1 − 𝜆)𝑥 + 𝜆𝑦
𝐴𝑥 = 𝑏
𝐴𝑦 = 𝑏
(1 − 𝜆)𝐴𝑥 + 𝜆𝐴𝑦 = (1 − 𝜆)𝑏 + 𝜆𝑏
(3.2)
𝐴𝑧 = 𝑏
Consideremos, por ejemplo, conjuntos generados por una bola en ℝ2 , como se muestra
Ejemplo 3.2. La definición de conjuntos convexos puede ser engañosa a simple vista.
{ }
Ω𝐴 = (𝑥, 𝑦) ∶ 𝑥2 + 𝑦 2 ≤ 1
{ }
(3.3)
Ω𝐵 = (𝑥, 𝑦) ∶ 𝑥2 + 𝑦 2 = 1
{ }
(3.4)
Ω𝐶 = (𝑥, 𝑦) ∶ 𝑥2 + 𝑦 2 ≥ 1 (3.5)
54
47
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑦 𝑦 𝑦
Ω𝐵 Ω𝐶
Ω𝐴
𝑥 𝑥 𝑥
𝑥2 + 𝑦2 ≤ 1 𝑥2 + 𝑦2 = 1 𝑥2 + 𝑦2 ≥ 1
Figura nro. 3.2. Ejemplo de tres conjuntos definidos por una bola en el plano.
⋂
Demostración. Sea 𝒞 = 𝐶𝑖 . En caso de que 𝒞 sea no vacío, tomamos dos puntos
𝑥, 𝑦 ∈ 𝒞 y seleccionamos un 𝜆 ∈ ℝ tal que 0 ≤ 𝜆 ≤ 1. Evidentemente, 𝑥, 𝑦 ∈ 𝐶𝑖 pues
tanto 𝑥 como 𝑦 pertenecen a la intersección de 𝐶𝑖 . Ademas, 𝑧 = (1 − 𝜆)𝑥 + 𝜆𝑦 ∈ 𝐶𝑖
pues cada uno de los conjuntos es convexo; por tanto, 𝑧 ∈ 𝒞 con lo que se concluye que
𝒞 es convexo [6].
𝑔1 (𝑥) ≤ 0
𝑔2 (𝑥) ≤ 0
(3.6)
𝑔3 (𝑥) ≤ 0
(3.7)
(3.8)
55
48
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Ω𝐶 = {(𝑥1 , 𝑥2 ) ∶ 𝑥1 ≥ 0}
(3.10)
Ω𝐷 = {(𝑥1 , 𝑥2 ) ∶ 𝑥2 ≥ 0}
(3.11)
(3.12)
La Figura nro. 3.3 muestra que esta intersección constituye un conjunto convexo,
llamada politopo. En las siguientes subsecciones, estudiaremos en detalle este y otros
conjuntos convexos que son clásicos en problemas de ingeniería.
Figura nro. 3.3. Ejemplo de un politopo como la intersección de tres conjuntos convexos.
3.1.1. Politopos
𝒫 = {𝑥 ∈ ℝ𝑛 ∶ 𝐴𝑥 ≤ 𝑏} (3.13)
56
49
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝐴𝑥 ≤ 𝑏
𝐴𝑦 ≤ 𝑏
𝛼𝐴𝑥 ≤ 𝛼𝑏
𝛽𝐴𝑦 ≤ 𝛽𝑏
(3.14)
𝐴(𝛼𝑥 + 𝛽𝑦) ≤ 𝑏
3.1.2. Bolas
ℬ𝛿 (𝑥0 ) = {𝑥 ∈ ℝ𝑛 ∶ ‖𝑥 − 𝑥0 ‖ ≤ 𝛿} (3.15)
≤ (1 − 𝜆)𝛿 + 𝜆𝛿 = 𝛿
Con esto concluimos 𝑧 ∈ ℬ𝛿 (𝑥0 ); por tanto, el conjunto es convexo. Nótese que esta
propiedad es independiente del tipo de norma utilizada.
3.1.3. Elipsoides
{ }
Definición 3.3. Elipsoide. Un elipsoide es un conjunto definido como sigue:
ℰ = 𝑥 ∈ ℝ𝑛 ∶ (𝑥 − 𝑥0 )⊺ 𝐴(𝑥 − 𝑥0 ) ≤ 𝑏2 (3.17)
Es fácil demostrar que ℰ es, de hecho, una bola de radio 𝑏 para la siguiente norma
√
‖𝑥‖𝐴 = 𝑥⊺ 𝐴𝑥 (3.18)
57
50
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Esta última cumple con todas las propiedades de la definición 1.14, es decir, ‖𝑥‖𝐴 ≥ 0
(definida positiva), ‖𝑥‖𝐴 = 0 cuando 𝑥 = 0 y la desigualdad triangular, es decir:
= 𝑥⊺ 𝐴𝑥 + 𝑦 ⊺ 𝐴𝑦 + 2𝑥⊺ 𝐴𝑦
(3.19)
√
Ahora, usamos la desigualdad de Cauchy para obtener:
√
Por lo tanto:
= (‖𝑥‖𝐴 + ‖𝑦‖𝐴
(3.22)
)2 (3.23)
𝒟 = {𝑥 ∈ ℝ𝑛 ∶ 𝑥 = 𝑇(𝑥)} (3.25)
Dicho de otro modo, 𝒟 corresponde a los puntos fijos de 𝑇. Este conjunto es convexo;
para demostrarlo, consideremos dos teoremas básicos tomados de [7]. Omitimos el
subíndice entendiendo que se trata de la norma-2.
Teorema 3.1. Si 𝑥, 𝑦 dos vectores en ℝ𝑛 y 𝜆 un escalar positivo entonces se cumple
58
51
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
( 2 )
Entonces tenemos que:
≤ 𝜆 ‖𝑥 − 𝑧‖ + (1 − 𝜆) ‖𝑦 − 𝑧‖ − 𝜆(1 − 𝜆) ‖𝑥 − 𝑦‖
2 2 2
− 𝜆(1 − 𝜆) ‖𝑥 − 𝑦‖
2
= (𝜆)(1 − 𝜆) ‖𝑥 − 𝑦‖ (1 − 𝜆 + 𝜆 − 1) = 0
2
(3.34)
Esto significa que ‖𝑧 − 𝑇(𝑧)‖ = 0 lo que implica que 𝑧 = 𝑇(𝑧) y, por tanto, 𝑧 ∈ Ω; es
decir, el conjunto Ω es convexo.
59
52
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Definición 3.5. Un cono es un subconjunto 𝒞 sobre un espacio lineal tal que, para
cada 𝑥 ∈ 𝒞 y un número escalar positivo 𝛼, se tiene que 𝛼𝑥 ∈ 𝐶.
𝑦 𝑦
Ω𝐴 Ω𝐵
𝑥 𝑥
𝒞 = {𝑥 ∈ ℝ𝑛 ∶ 𝐴𝑥 = 𝑏, 𝑥 ≥ 0}
capítulo uno)
(3.35)
Cono de segundo orden
𝒞 = {𝑥 ∈ ℝ𝑛 ∶ ‖𝐴𝑥 + 𝑏‖ ≤ 𝑐𝑥 + 𝑑} (3.36)
60
53
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
en donde 𝑚(𝑥) son polinomios. Para ver que este conjunto es convexo, consideremos
dos polinomios 𝑝(𝑥) ∈ 𝒮 y 𝑞(𝑥) ∈ 𝒮. Obviamente, 𝜆𝑝(𝑥) y (1 − 𝜆)𝑞(𝑥) también
son polinomios y como 𝜆 ≥ 0, (1 − 𝜆) ≥ 0 entonces el nuevo polinomio 𝑠(𝑥) =
𝜆𝑝(𝑥)+(1−𝜆)𝑞(𝑥), también pertenece a 𝒮. El conjunto de los polinomios representables
como suma de polinomios cuadrados forma una interesante gama de problemas de
optimización que serán estudiados en el capítulo ocho.
Una función convexa implica que cualquier segmento de recta entre dos puntos 𝑥, 𝑦
61
54
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑓(𝑥) = 𝑥2
)𝑦 𝑦 𝜆𝑥 + (1 − 𝜆)𝑦
1 −𝜆
+(
𝜆𝑥 𝑦
𝑥
− ln(𝑥)
Figura nro. 3.5. Ejemplo de dos funciones convexas: a) 𝑓(𝑥) = 𝑥2 , b) 𝑓(𝑥) = − ln(𝑥).
Esto último es cierto para todos los reales debido a que 0 ≤ 𝜆 ≤ 1; por tanto, se cumple
la desigualdad y se concluye que la función 𝑓(𝑥) = 𝑥2 es convexa. ■
Demostración. Nótese que 𝑔 es una función en una sola variable mientras que 𝑓
es una función en multiples variables. Debemos demostrar que 𝑓 convexa implica 𝑔
convexa y viceversa. Primero, asumimos que 𝑓 es convexa entonces, para un par de
puntos 𝑡, 𝑠 y dos escalares 𝛼 + 𝛽 = 1, tenemos
𝑔(𝛼𝑡 + 𝛽𝑠) = 𝑓(𝑥 + (𝛼𝑡 + 𝛽𝑠)𝑣)
= 𝑓(𝛼(𝑥 + 𝑣𝑡) + 𝛽(𝑥 + 𝑣𝑠))
≤ 𝛼𝑓(𝑥 + 𝑣𝑡) + 𝛽𝑓(𝑥 + 𝑣𝑠)
(3.45)
≤ 𝛼𝑔(𝑡) + 𝛽𝑔(𝑠)
62
55
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Con esto concluimos que 𝑔 es convexa. Ahora, para demostrar el lema en sentido
opuesto, asumimos que 𝑔 es convexa, entonces tenemos lo siguiente:
𝑔(𝛼𝑡1 + 𝛽𝑡2 ) ≤ 𝛼𝑔(𝑡1 ) + 𝛽𝑔(𝑡2 ) (3.46)
Definimos las dos variables 𝑦1 = 𝑥 + 𝑣𝑡 y 𝑦2 = 𝑥 + 𝑣𝑡 las cuales permiten concluir
fácilmente que 𝑓 también es convexa.
𝑖
(3.48)
63
56
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
arbitrarios 𝑥, 𝑦, a saber:
Demostración. Nuevamente tomamos un punto intermedio entre dos puntos
Ejemplo 3.5. Queremos demostrar que la función 𝑓(𝑥) = (5𝑥 + 8)4 es convexa; para
ello, definimos las siguientes funciones auxiliares:
𝑔1 (𝑥) = 5𝑥 + 8 (3.55)
𝑔2 (𝑦) = 𝑦2 (3.56)
𝑔3 (𝑧) = 𝑧2 , con 𝑧 ≥ 0 (3.57)
64
57
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
■
diferencia). El mismo resultado se puede obtener mediante la definición, pero es más
simple usar las propiedades de composición.
especialmente las del Lema 3.7. Consideremos la función 𝑓(𝑥) = (𝑥2 − 5)2 , la
Ejemplo 3.6. Debemos tener cuidado con las propiedades de composición,
ḿın 𝑓(𝑥)
𝑥
𝑔𝑖 (𝑥) = 0 (3.60)
ℎ𝑗 (𝑥) ≤ 0
65
58
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ḿın 𝑐⊺ 𝑥
Programación lineal (LP):
𝐴𝑥 ≤ 𝑏
(3.61)
con 𝐻 ⪰ 0.
Programación cuadrática con restricciones cuadráticas (QCQP):
1
ḿın 𝑥⊺ 𝐻𝑥 + 𝑐⊺ 𝑥
2
𝑥⊺ 𝑄𝑖 𝑥 + 𝑎𝑖 𝑥 ≤ 𝑏𝑖
(3.63)
con 𝐻 ⪰ 0, 𝑄𝑖 ⪰ 0.
Programación geométrica:
∑ ∏
ḿın 𝑐𝑘 ( 𝑥𝑚𝑚 )
𝑎
𝑘 𝑚
∑ ∏
ℎ𝑘 ( 𝑥𝑚𝑚 ) ≤ 1
𝑏
(3.64)
𝑘 𝑚
∏
( 𝑥𝑚𝑚 ) = 1
𝑑
ḿın 𝑇𝑟(𝐶𝑋)
Programación semidefinida:
𝐴𝑋 = 𝐵
𝑋≻0
(3.65)
66
59
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
∑
sigue:
𝑎𝑘 2
𝑛
ḿın 𝑝 + 𝑏 𝑘 𝑝𝑘 + 𝑐 𝑘
𝑘=1
2 𝑘
∑
𝑛
𝑝𝑘 = 𝐷
(3.69)
𝑘=1
𝑝min ≤ 𝑝𝑘 ≤ 𝑝max
■
asociados a la curva de costos de cada unidad; el problema es claramente convexo pues
las restricciones son afines y la función objetivo es cuadrática y convexa.
Ejemplo 3.8. Los problemas con valor absoluto pueden transformarse en problemas
lineales mediante un simple cambio de variables, a saber:
|𝑥| = 𝑥𝑝 + 𝑥𝑛
𝑥 = 𝑥𝑝 − 𝑥𝑛
𝑥𝑝 ≥ 0
(3.70)
𝑥𝑛 ≥ 0
𝑐⊺ 𝑥 + 𝛼
ḿın
𝑑⊺ 𝑥 + 𝛽
𝐴𝑥 ≤ 𝑏
(3.71)
ḿın 𝑐⊺ 𝑦 + 𝛼𝑡
es equivalente al problema
𝐴𝑦 ≤ 𝑏𝑡
𝑑⊺ 𝑦 + 𝛽𝑡 = 1
(3.72)
𝑡≥0
67
60
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
1
𝑡=
𝑑⊺ 𝑥 + 𝛽
𝑦 = 𝑡𝑥
(3.73)
̃ = ı́ nf {𝑓(𝑥) ∶ 𝑥 ∈ Ω}
𝑓(𝑥) (3.74)
en donde ℋ es la vecidad del óptimo 𝑥̃ (i.e, un óptimo local), ‖⋅‖ es una norma arbitraria
y 𝑟 es un número positivo que permite definir la vecindad de 𝑥̃ como se muestra en la
ecuación 3.75 y en la Figura nro. 3.6.
𝒱 = {𝑥 ∈ Ω, ‖𝑥 − 𝑥‖
̃ < 𝑟} (3.75)
𝑦
𝒱 ̃ ≤ 𝑓(𝑥)
𝑓(𝑥)
𝑥
𝑥̃
𝑟
Ω
68
61
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑥 = 𝛼𝑥̃ + 𝛽𝑦
tenemos que:
(3.76)
En donde 𝛼 + 𝛽 = 1 y 0 ≤ 𝛼 ≤ 1, 0 ≤ 𝛽 ≤ 1. Ahora, puesto que 𝑓 es una función
̃ + 𝛽𝑓(𝑦)
𝑓(𝑥) ≤ 𝛼𝑓(𝑥)
convexa sabemos que:
(3.77)
̃ ≤ 𝑓(𝑥) puesto que 𝑥 se encuentra en la vecindad de 𝑥,
Evidentemente, 𝑓(𝑥) ̃ esto es:
̃ ≤ 𝑓(𝑥) ≤ 𝛼𝑓(𝑥)
𝑓(𝑥) ̃ + 𝛽𝑓(𝑦)
̃ ≤ 𝛽𝑓(𝑦)
(1 − 𝛼)𝑓(𝑥)
̃ ≤ 𝛽𝑓(𝑦)
𝛽𝑓(𝑥)
(3.78)
̃ ≤ 𝑓(𝑦)
𝑓(𝑥)
con 𝛼 + 𝛽 = 1, 0 ≤ 𝛼 ≤ 1 y además 𝑥 ≠ 𝑦.
̃ = 𝑓(𝑦)
𝑓(𝑥) ̃ ≤ 𝑓(𝑧) (3.81)
̃ + 𝛽𝑓(𝑦)
𝑓(𝑧) < 𝛼𝑓(𝑥) ̃ = 𝑓(𝑥)
̃ = 𝑓(𝑦)
̃ (3.82)
69
62
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Sin embargo, 𝑓(𝑧) < 𝑓(𝑥) ̃ contradice nuestra supoción inicial. Por tanto, no pueden
existir dos puntos óptimos diferentes.
̄ = 𝑥̄ ⊺ 𝐴𝑥̄ + 𝑏⊺ 𝑥̄ + 𝑐
𝑓(𝑥)
= 𝜆𝑥̄ ⊺ 𝑥̄ + 𝑏⊺ 𝑥̄ + 𝑐
(3.84)
̄ = −∞
ĺım 𝑓(𝑡𝑥)
Tomemos ahora el límite
𝑡→∞
(3.85)
■
puede ser ilimitado o 0. En el segundo caso, el óptimo puede existir pero hay infinitas
soluciones que toman ese valor.
es decir,
70
63
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
En este punto, usando el Teorema 2.1 teniendo en cuenta que ℎ(𝑥, 𝑦) = −𝜇𝛼𝛽 ‖𝑥 − 𝑦‖ ,
2
3.6. Ejercicios
1
multiplicadores de Lagrange
ḿın 𝑥⊺ 𝐻𝑥
2
𝑥⊺ 𝑥 = 1
(3.91)
71
64
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
∏
𝑛 ∑𝑛
1
𝑥𝑘 ≤ 𝑥𝑘
1∕𝑛
𝑛
(3.96)
𝑘=1 𝑘=1
∏
𝑁
4. Mostrar que conjunto hiperbólico Ω = {𝑥 ∈ ℝ𝑁 ∶ 𝑥𝑘 ≥ 1, 𝑥𝑘 ≥ 0} es
𝑘=1
convexo.
72
65
4 CAPÍTULO
CUATRO
Alejandro Garcés Ruiz
Capítulo cuatro
CONDICIONES DE OPTIMALIDAD
Condiciones de optimalidad
de 𝑥 y 𝑦, así:
para cualquier par de puntos arbitrarios, por lo que se pueden intercambiar los valores
73
67
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
condición 4.1 implica que la función es convexa. Ahora, debemos demostrar que una
función convexa implica 4.1. Partimos entonces de la definición de convexidad
𝑓(𝑡𝑥 + (1 − 𝑡)𝑦) ≤ 𝑡𝑓(𝑥) + (1 − 𝑡)𝑓(𝑦) (4.5)
con 0 ≤ 𝑡 ≤ 1; ahora, reorganizamos la ecuación de la siguiente forma:
𝑓(𝑦 + 𝑡(𝑥 − 𝑦)) − 𝑓(𝑦)
≤ 𝑓(𝑥) − 𝑓(𝑦)
𝑡
(4.6)
Luego, definimos una nueva variable 𝑣 = 𝑥 − 𝑦 y una nueva función 𝑔 como sigue:
𝑔(𝑡) = 𝑓(𝑦 + 𝑡(𝑥 − 𝑦)) = 𝑓(𝑦 + 𝑡𝑣) (4.7)
Nótese que 𝑔 es una función en una sola variable tal que, 𝑔(0) = 𝑓(𝑦) y 𝑔(1) = 𝑓(𝑥) y,
por lo tanto, podemos representar la ecuación 4.6 de la siguiente forma:
𝑔(𝑡) − 𝑔(0)
+ 𝑓(𝑦) ≤ 𝑓(𝑥)
𝑡
(4.8)
condición dada por el teorema anterior para una función en ℝ. Las desigualdad de
La Figura nro. 4.1 muestra la relación entre la desigualdad de Jensen y la
Jensen indica que los puntos sobre la recta 𝛼𝑓(𝑥1 ) + 𝛽𝑓(𝑥2 ) estan siempre por encima
de cualquier punto sobre la función 𝑓(𝑦) para todo 𝑦 = 𝛼𝑥1 + 𝛽𝑥2 con 𝛼 + 𝛽 = 1 y
𝛼, 𝛽 ≥ 0. Sin embargo, podemos acercar los puntos 𝑥1 → 𝑦 y 𝑥2 → 𝑦 de tal forma
punto 𝑥. Esta línea (o hiperplano, para el caso mas general) se denomina hiperplano
que en el límite se obtiene una línea que está por debajo de la función para cualquier
de soporte. Nótese que en una función convexa de tipo 𝒞1 existe uno solo hiperplano
para cada punto en el dominio de la función.
que, en este caso, usamos dos formas diferentes de la desigualdad de Jensen. Estas son 𝑓(𝑡𝑥 + (1 −
𝑡)𝑦) ≤ 𝑡𝑓(𝑥) + (1 − 𝑡)𝑓(𝑦) y 𝑓(𝛼𝑥 + 𝛽𝑦) ≤ 𝛼𝑓(𝑥) + 𝛽𝑓(𝑦) con 𝛼 + 𝛽 = 1. Ambas expresiones son
1 Nótese
equivalentes; sin embargo, en algunos casos, es mucho más fácil usar una u otra. Debemos, por tanto,
aprender a usar ambas representaciones según se requiera.
74
68
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
)
𝑓 (𝑥 2
+𝛽)
(𝑥 1 )
𝛼𝑓
−𝑦
( 𝑦 )(𝑥
𝑓(𝑥2 ) ∇𝑓
)+
𝑓(𝑦
𝑓(𝑦)
𝑓(𝑦) = 𝑓(𝛼𝑥1 + 𝛽𝑥2 )
𝑓(𝑥1 )
𝑥1 𝑦 𝑥2
Figura nro. 4.1. Interpretación geométrica de las condiciones dadas por el Teorema 4.1.
puntos 𝑥 y 𝑦
Demostración. Consideremos las condiciones de primer orden para un par de
̃ ∀𝑥 ∈ dom(𝑓) si ∇𝑓(𝑥)
Demostración. Solo basta notar que 𝑓(𝑥) ≥ 𝑓(𝑥), ̃ = 0 en
vista de la ecuación 4.1.
75
69
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
para que 𝑥̃ sea óptimo. Probar suficiencia es usualmente más fácil. Consideremos un
Demostración. Debemos probar que 4.13 es una condición necesaria y suficiente
punto que cumpla con la condición dada por 4.13 el cual, debido a la ecuación 4.1, se
ajusta también lo siguiente:
̃ + ∇𝑓(𝑥)
𝑓(𝑥) ≥ 𝑓(𝑥) ̃
̃ ⊺ (𝑥 − 𝑥)
̃ ≥ ∇𝑓(𝑥)
𝑓(𝑥) − 𝑓(𝑥) ̃ (𝑥 − 𝑥)
⊺ ̃ ≥0
̃
∴𝑓(𝑥) ≥ 𝑓(𝑥)
(4.14)
reductio ad absurdum. Dicho esto, suponemos que existe un punto factible 𝑥̃ que es
Ahora, para probar que la condición es necesaria podemos usar un método de
óptimo global 𝑓(𝑥) ≥ 𝑓(𝑥), ̃ pero que no cumple con la condición 4.13; por tanto,
̃ ⊺ (𝑥 − 𝑥)
debería existir un punto 𝑥 ∈ Ω, tal que ∇𝑓(𝑥) ̃ < 0. Como el espacio es convexo
entonces cualquier punto intermedio 𝑦 = 𝛼𝑥 + (1 − 𝛼)𝑥̃ ∈ Ω. Ahora, definimos una
nueva función en una variable 𝛼
𝑔(𝛼)
𝑔(0)
𝑔(𝛼)
𝑔′ (0) < 0
𝛼
global. La Figura nro. 4.2 muestra mejor la situación. Si 𝑔′ (0) fuera negativa entonces
condición 4.13, sin embargo, esto contradice la hipótesis de que se trata de un óptimo
76
70
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
̃ no podría ser el
existirían puntos 𝑥 tales que 𝑔(𝛼) < 𝑔(0) y, por tanto, 𝑔(0) = 𝑓(𝑥)
óptimo global. Esto contradice nuestra suposición inicial.
𝑦𝐴
Ω: espacio afín
𝑥̃
∇𝑓(𝑥)⊺
𝒩(𝐴)
̃ ⊺𝑣 = 0
∇𝑓(𝑥) (4.21)
77
71
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Tomemos ahora un nuevo par de variables 𝑢 y 𝑦 con las cuales definimos el siguiente
espacio afín ℛ = {(𝑢, 𝑦) ∶ 𝑢 = 𝐴⊺ 𝑦}. Es claro que 𝑢 debe ser perpendicular a todos los
puntos 𝑣 ∈ 𝒩(𝐴) ya que 𝑢⊺ 𝑣 = 𝑦 ⊺ 𝐴𝑣 = 0 para cualquier punto 𝑦; por tanto, ∇𝑓(𝑥) ̃
se puede representar como un punto de ℛ, es decir, existe un 𝑦 tal que ∇𝑓(𝑥) ̃ = 𝐴⊺ 𝑦.
Como resultado, obtenemos las siguientes condiciones de optimalidad, a saber:
̃ − 𝐴⊺ 𝑦 = 0
∇𝑓(𝑥)
𝐴𝑥̃ = 𝑏
(4.22)
ḿın𝑓(𝑥)
desigualdad
𝑥≥0
(4.23)
̃ ⊺ (𝑥 − 𝑥)
Sabemos que ∇𝑓(𝑥) ̃ ≥ 0 lo cual, término a término, está dado por
̃
𝜕𝑓(𝑥)
(𝑥𝑖 − 𝑥̃ 𝑖 ) ≥ 0
𝜕𝑥𝑖
𝑥𝑖 ≥ 0
(4.24)
𝑥̃ 𝑖 ≥ 0
𝑥̃ 𝑖 > 0 → ∇𝑓(𝑥̃ 𝑖 ) = 0
𝑥̃ 𝑖 = 0 → ∇𝑓(𝑥̃ 𝑖 ) ≥ 0
(4.25)
̃
𝜕𝑓(𝑥)
𝑥̃ 𝑖 =0
𝜕𝑥𝑖
̃
𝜕𝑓(𝑥)
≥0
𝜕𝑥𝑖
(4.26)
𝑥̃ 𝑖 ≥ 0
78
72
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Si un punto cumple estas condiciones, podemos asegurar que se trata del óptimo global
■
del problema. Esto nos permite evaluar la optimalidad de un punto dado. Encontrar
dicho punto es otro problema que será analizado en la sección de algoritmos.
ḿın 𝑓(𝑥)
𝑥≥𝑎
(4.27)
𝑦𝑖 ≥ 0
optimalidad son la siguientes:
𝜕𝑓
≥0
𝜕𝑦𝑖
𝜕𝑓
(4.28)
𝑦𝑖 =0
𝜕𝑦𝑖
Usando las variables originales, dichas condiciones corresponden a:
𝑥𝑖 − 𝑎 ≥ 0
𝜕𝑓
≥0
𝜕𝑥𝑖
𝜕𝑓
(4.29)
(𝑥𝑖 − 𝑎) =0
𝜕𝑦𝑖
■
ℋ𝑓 (𝑥) ⪰ 0 (4.30)
en donde ℋ𝑓 es la hessiana.
79
73
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑔′ (𝑡) − 𝑔′ (0)
(∇𝑓(𝑥 + 𝑡𝑣)⊺ − ∇𝑓(𝑥))⊺ 𝑣 = ≥0
𝑡
(4.32)
Así, tomando el límite 𝑡 → 0 obtenemos que 𝑔′′ (0) = 𝑣⊺ ℋ𝑓 (𝑥)𝑣 ≥ 0 con lo que el
teorema queda demostrado.
𝜇
ℋ𝑔 (𝑥) = ℋ𝑓 (𝑥) − 𝐼⪰0
2
(4.34)
2 0
la siguiente propiedad:
𝐻(𝑥, 𝑦) = ( )≻0
0 2
(4.35)
2 0 1 0
𝐻(𝑥, 𝑦) − 𝜇𝐼 = ( )−𝜇( )≻0
0 2 0 1
(4.36)
con 2 ≥ 𝜇 > 0. ■
4.3. Subgradientes
80
74
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑔1
𝑔 = ∇𝑓(𝑦) 𝑔2
𝑦 𝑦
Lema 4.2. Sea 𝑓 una función convexa con subdiferecial 𝜕𝑓. Entonces 𝑥̃ minimiza 𝑓 si
0 ∈ 𝜕𝑓(𝑥).
Demostración. Basta con notar que 𝑓(𝑥) ≥ 𝑓(𝑦) en la ecuación 4.37 cuando 𝑔 = 0.
Esto significa que 𝑦 es un óptimo global si 𝑔 ∈ 𝜕𝑓 = 0.
sign(𝑥) 𝑥 ≠ 0
𝜕𝑓(𝑥) = { }
[−1, 1] 𝑥 = 0
(4.39)
sign(𝑥) 𝑥 ≠ 0
𝜕𝑓(𝑥) = { }
[−1, 1] 𝑥 = 0
(4.40)
81
75
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑓(𝑥) = |𝑥|
∇𝑓(𝑥1 )
𝑥1
𝑔 = 0.8
𝑔 = 0.0
𝑥2
𝑔 = −0.5
Figura nro. 4.5. Ejemplo de subdiferencial asociado a la función 𝑓(𝑥) = |𝑥| en dos puntos 𝑥1 y
𝑥2 .
Este teorema es consecuencia del Teorema 4.4, la intuición del mismo se muestra
en la Figura nro. 4.7.
Teorema 4.6. Dada una función 𝑓 ∶ ℝ𝑛 → ℝ convexa y un punto 𝑥0 ∈ dom(Ω),
entonces existe al menos un sugradiente 𝑔 en 𝑥0 .
82
76
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Hiperplano de separación
Ω𝐴 Ω𝐵 Ω𝐴 Ω𝐵
Figura nro. 4.6. Existencia de un hiperplano de separación entre dos conjuntos convexos
disyuntos.
Hiperplano de soporte
𝑥0
𝑡 + 𝑔⊺ 𝑥 ≤ 𝑐 (4.41)
𝑡0 + 𝑔⊺ 𝑥0 = 𝑐
𝑓(𝑥0 ) + 𝑔⊺ 𝑥0 = 𝑐
(4.42)
𝑡 ≤ 𝑐 − 𝑔⊺ 𝑥
𝑓(𝑥) ≤ 𝑡 ≤ 𝑐 − 𝑔⊺ 𝑥
𝑓(𝑥) ≤ 𝑓(𝑥0 ) + 𝑔⊺ 𝑥0 − 𝑔⊺ 𝑥
(4.43)
83
77
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑡 + 𝑔⊺ 𝑥 ≤ 𝑐
epi(𝑓) 𝑡 + 𝑔⊺ 𝑥 ≥ 𝑐
𝑥
(𝑡0 , 𝑥0 )
𝑡
𝑧≥0
El código en Python es el siguiente:
x = cvx.Variable(1)
y = cvx.Variable(1)
z = cvx.Variable(1)
obj = cvx.Minimize(3*x**2+2*y**2+5*z**2)
res = [x+y+z == 1,
x>= 0,
y>=0,
z>=0]
prob = cvx.Problem(obj, res)
84
78
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
prob.solve(verbose=True)
4.6. Ejercicios
1
optimización
ḿın 𝑥⊺ 𝐻𝑥 + 𝑐⊺ 𝑥 + 𝑟
2
− 1 ≤ 𝑥𝑖 ≤ 1
(4.45)
⎛ 13 12 −2 ⎞ ⎛ −22 ⎞
con
𝐻 = ⎜ 12 17 6 ⎟ 𝑐 = ⎜ −14.5 ⎟
⎝ −2 6 12 ⎠ ⎝ 13 ⎠
¿Se trata de un problema convexo ? Justifique su respuesta.
ḿın𝑐⊺ ⋅ 𝑥
𝑥⊺ ⋅ 𝐻 ⋅ 𝑥 ≤ 1
(4.46)
85
79
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
⎛ 62 10 −9 −17 ⎞ ⎛ −1 ⎞
10 103 8 101 ⎟𝑐 = ⎜ 3 ⎟
𝐻=⎜
⎜ −9 8 48 −14 ⎟ ⎜ −3 ⎟
⎝ −17 101 −14 130 ⎠ ⎝ 4 ⎠
Comprobar el resultado usando cvxpy o cualquier herramienta similar.
4. Determinar si las siguientes funciones son convexas. Usar el criterio de la
hessiana.
𝑓(𝑥) = |𝑥 + 5|
{ }
(4.53)
𝑓(𝑥) = sup 𝑥2 , 𝑥 + 1 (4.54)
86
80
5 CAPÍTULO
CINCO
Alejandro Garcés Ruiz
Capítulo cinco
DUALIDAD
Dualidad
ḿın 𝑓(𝑥)
𝑔𝑖 (𝑥) = 0
ℎ𝑗 (𝑥) ≤ 0
(5.1)
87
82
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
∑ ∑
ℒ(𝑥, 𝜆, 𝜇) = 𝑓(𝑥) + 𝜆𝑖 𝑔𝑖 (𝑥) + 𝜇𝑗 ℎ𝑗 (𝑥)
forma:
(5.2)
𝑖 𝑗
∑
y, por tanto, tenemos lo siguiente:
Nótese que esta función depende solo de (𝜆, 𝜇) y el ínfimo se esta tomando sobre 𝑥.
̃ ≤ 𝑓(𝑥), es decir, que el valor de la función dual
Por tanto, es claro que 𝒲(𝜆, 𝜇) ≤ 𝑓(𝑥)
es siempre menor al valor del primal.
Lema 5.1. La función dual 𝒲 es cóncava para cualquier tipo de funciones 𝑓, ℎ, 𝑔.
Demostración. Para que 𝒲 sea cóncava entonces −𝒲 debe ser convexa. Por tanto,
solo debemos comprobar que la función −𝒲 cumple con la desigualdad de Jensen.
Tomamos los puntos (𝜆1 , 𝜇1 ), (𝜆2 , 𝜇2 ), dos valores reales 𝛼 ≥ 0, 𝛽 ≥ 0 con 𝛼 + 𝛽 = 1 y
evaluamos la función en el segmento de recta resultante, así1 :
−𝒲(𝛼𝜆1 + 𝛽𝜆2 , 𝛼𝜇1 + 𝛽𝜇2 ) = −́ınf {ℒ(𝑥, 𝛼𝜆1 + 𝛽𝜆2 , 𝛼𝜇1 + 𝛽𝜇2 )}
𝑥
= sup {−ℒ(𝑥, 𝛼𝜆1 + 𝛽𝜆2 , 𝛼𝜇1 + 𝛽𝜇2 )}
𝑥
≤ 𝛼sup {−ℒ(𝑥, 𝜆1 , 𝜇1 )} + 𝛽sup {−ℒ(𝑥, 𝜆2 , 𝜇2 )}
(5.6)
𝑥 𝑥
= −𝛼𝒲(𝜆1 , 𝜇1 ) − 𝛽𝒲(𝜆2 , 𝜇2 )
No hemos usado el hecho de que 𝑓, ℎ y 𝑔 son convexas y, por tanto, la función dual
es cóncava incluso en problemas no-convexos.
1 Recordar que ı́ nf (𝐴) = − sup(−𝐴).
88
83
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
max
́ 𝒲(𝜆, 𝜇)
𝜇≥0
(5.7)
en donde 𝒲 está dado por la ecuación 5.5. Al problema original lo llamamos primal
(𝒫) y a este nuevo problema de optimización lo llamamos problema dual (𝒟).
El problema dual puede ser de utilidad para resolver el problema primal como
veremos en la siguiente sección. El problema dual es convexo, así que cualquier
problema de optimización lo podemos convertir en uno de optimización convexa
usando la función dual. Sin embargo, no siempre la solución del problema primal y
del problema dual son iguales. Ese es un detalle importante que estudiaremos en la
siguiente sección; por ahora, veamos algunos ejemplos de problemas duales:
ḿın𝑓(𝑥) = 𝑥2
𝑥≥3
(5.8)
{ }
Ahora bien, la función dual está dada por
Nótese que 𝑥 es irrestricto así que podemos encontrar el ínfimo usando el criterio de la
primera derivada (aprovechamos el hecho de que 𝒲 es convexa). Entonces tenemos lo
■
Esta carácteristica es propia de algunos problemas de optimización convexa, pero no
es general, como veremos más adelante.
89
84
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
10
3 9
20 5
9 0
10
−5
0
−5 0 5 0 5 10 15
𝑥 𝜇
Figura nro. 5.1. Comparación entre el problema primal y dual para el ejemplo 1.
ḿın𝑥⊺ 𝑥
𝐴𝑥 = 𝑏
(5.13)
ℒ(𝑥, 𝜆) = 𝑥⊺ 𝑥 + 𝜆⊺ (𝐴𝑥 − 𝑏)
𝒲(𝜆) = ı́ nf {𝑥⊺ 𝑥 + 𝜆⊺ (𝐴𝑥 − 𝑏)} (5.14)
𝑥
1
siguiente modo:
𝑥̂ = argmin {𝑥⊺ 𝑥 + 𝜆⊺ (𝐴𝑥 − 𝑏)} = − 𝐴⊺ 𝜆
2
(5.15)
Por tanto, el problema dual puede ser escrito de forma explícita, así:
−1 ⊺
max
́ 𝒲(𝜆) = 𝜆 (𝐴𝐴⊺ )𝜆 − 𝑏⊺ 𝜆
4
(5.16)
ḿın𝑐⊺ 𝑥
lineal:
𝐴𝑥 = 𝑏
𝑥≥0
(5.17)
90
85
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
En este caso, 𝒲 solo puede tomar dos valores: −∞ o 𝜆⊺ 𝑏. Desde luego, el segundo caso
es más interesante, de este modo, el problema dual toma la siguiente forma:
ḿın 𝑏⊺ 𝜆
𝑐 − 𝐴⊺ 𝜆 − 𝜇 = 0
𝜇≥0
(5.19)
Cabe mencionar que pueden existir diferentes formas del dual; sin embargo, bajo
■
ciertas condiciones que analizaremos en la siguiente sección, el óptimo del problema
primal es igual al óptimo del problema dual.
ḿın 𝑥⊺ 𝐻𝑥
saber:
𝑥⊺ 𝑥 = 1
(5.20)
en donde el óptimo se produce en los puntos 𝑥 que pertenecen al espacio nulo de 𝐻 −𝜆𝐼
(𝐼 es la matriz identidad) de donde se deduce que necesariamente 𝜆 = eig(𝐻) ya que,
la restricción misma implica que 𝑥 ≠ 0. Es decir, la función dual está definida sobre
puntos discretos (ver Figura nro. 5.2). Este caso atípico deja ver los problemas a los
que nos enfrentamos cuando el espacio de soluciones es no-convexo.
Este ejemplo deja ver que el concepto de dualidad puede ser utilizado incluso en
funciones que no son convexas. Sin embargo, no se puede garantizar que el óptimo del
dual corresponda a la solución del primal. Así mismo, los ejemplos anteriores muestran
que en algunos casos el problema dual puede ser más simple que el primal. Ahora, nos
91
86
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Eigenvector de 𝐻
𝑥⊺ 𝑥 = 1
Eigenvector de 𝐻
Máximo
Mínimo
Mínimo
Curvas de nivel de 𝑥⊺ 𝐻𝑥
Máximo
Figura nro. 5.2. Diagrama esquemático del problema primal del ejemplo 5.4.
Lema 5.2. dualidad débil. Dado un punto factible del problema primal 𝒫 y un punto
factible del problema dual 𝒟, se tiene que
problema de optimización en el espacio (𝜆, 𝜇), de tal forma que cualquier valor factible
del dual es siempre inferior a cualquier valor factible del primal. De esta forma, el dual
se convierte en una cota inferior del problema. Nuestro objetivo es tratar de minimizar
el primal y maximizar el dual para que la diferencia entre uno y otro sea mínima. El
criterio de dualidad débil nos garantiza esta diferencia. Sin embargo, nos gustaría saber
en qué condiciones podemos asegurar que el primal y el dual se tocan. Para ello, usamos
el criterio de dualidad fuerte, a saber:
Definición 5.3. Decimos que un problema de optimización cumple con el criterio
fuerte de dualidad si el óptimo del problema primal es igual al óptimo del problema
dual.
92
87
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑓(𝑥)
𝑔(𝑥) = 0
𝜇≥0
Primal
ℎ(𝑥) ≤ 0
min
𝑓min
𝑊(𝜆, 𝜇)
max
Dual
ḿın 𝑓(𝑥)
ℎ(𝑥) ≤ 0
(5.23)
93
88
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
̃ =0
𝑎⊤ 𝑦 + 𝑏⊤ (𝑧 − 𝑝) (5.25)
𝑡 𝑡
𝜕𝒱 𝜕𝒱
int(𝒱) int(𝒱)
𝑝̃ 𝑝̃ (𝑦, 𝑧)
𝑦 𝑦
𝒲(𝜇)
Γ𝐴
Γ𝐵
𝑡 𝑧
𝜕𝒱
𝜕𝒱
int(𝒱)
int(𝒱)
(𝑦, 𝑧)
𝑝̃
𝒲(𝜇) 𝑝̃ = 𝒲(𝜇) Γ𝐴
𝑦 Γ𝐵 𝑦
Γ𝐴
Γ𝐵
Figura nro. 5.4. Interpretación gráfica del concepto de dualidad fuerte en un problema de
optimización convexa con una variable.
Todos los puntos que pertenecen a 𝒱 están por encima de este hiperplano, es decir:
𝑎⊤ 𝑦 + 𝑏⊤ 𝑧 ≥ 𝑏⊤ 𝑝̃ (5.26)
94
89
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝜇⊤ 𝑦 + 𝑧 ≥ 𝑝̃
siguiente forma:
(5.28)
Esta inecuación se cumple para todos los puntos (𝑦, 𝑧) ∈ 𝒱; en particular, se cumple
para (ℎ(𝑥), 𝑓(𝑥)), es decir,
𝜇⊤ ℎ(𝑥) + 𝑓(𝑥) ≥ 𝑝̃ (5.29)
Tomamos el ínfimo en 𝑥 y luego el supremo en 𝜇 para obtener el valor de la solución
𝜇 𝑥
(5.30)
la Figura nro. 5.5. Nótese que no hay forma de separar el espacio en el punto 𝑝. ̃ La
solución del problema dual puede ser diferente a la del primal, lo cual se evidencia en
95
90
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑡
int(Ω)
(𝑦1 , 𝑡1 )
𝑝̃
𝜕Ω
(𝑦2 , 𝑡2 )
𝒲(𝜇1 )
𝒲(𝜇2 )
el espacio mismo es solo un punto; esto es, Ω = {0}, 𝜕Ω = {0} e int(Ω) = vacío. La
El espacio de soluciones de este problema es convexo pero su interior es vacío ya que
Aunque el valor de la función objetivo 𝒲(𝜇) → 1, podemos ver que esto se cumple
cuando 𝜇 → ∞. En otras palabras, este problema no cumple con las condiciones de
ḿın 𝑒−𝑥
𝑥2 ∕𝑦 ≤ 0
(5.36)
𝑥2
ℒ(𝑥, 𝑦, 𝜇) = 𝑒−𝑥 + 𝜇
𝑦
(5.37)
96
91
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝒲(𝜇) = ı́ nf ℒ(𝑥, 𝑦, 𝜇) = 0
obtenemos lo siguiente:
ℳ
(5.38)
𝜇̃ 𝑗 ≥ 0
Factibilidad del dual:
(5.41)
𝜕𝑓 ̃ 𝜕𝑔 + diag(𝜇) 𝜕ℎ
Optimalidad de la función dual:
+ diag(𝜆) ̃ =0
𝜕𝑥 𝜕𝑥 𝜕𝑥
(5.42)
Condiciones de complementariedad:
̃ 𝑥)
diag(𝜇)ℎ( ̃ =0 (5.43)
Las primeras tres condiciones son evidentes, así que analizaremos con más detalle las
condiciones de complementariedad. En primera instancia, asumimos que el problema
cumple con el teorema de Slater y, por tanto, el primal es igual al dual, esto es:
̃ = ı́ nf {𝑓(𝑥) + 𝜆⊺ 𝑔(𝑥) + 𝜇⊺ ℎ(𝑥)}
𝑓(𝑥)
𝑥
(5.44)
̃ + 𝜇⊺ ℎ(𝑥)
̃ + 𝜆⊺ 𝑔(𝑥)
≤ 𝑓(𝑥) ̃ (5.45)
97
92
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Así, si cancelamos 𝑓(𝑥)̃ a ambos lados de la desigualdad, notamos que 𝑔(𝑥) = 0 debido
a la factibilidad del primal. Por ende, tenemos que 0 ≤ 𝜇⊺ ℎ(𝑥). ̃ Sin embargo, como
̃ ≤ 0 y 𝜇 ≥ 0 entonces la única posibilidad es que 𝜇𝑗 ℎ𝑗 (𝑥) = 0. Esto significa que
ℎ(𝑥)
la variable dual es 0 cuando la restricción no está activa y viceversa.
Ejemplo 5.7. Consideremos una masa que se mueve sobre un plano inclinado sin
evidentes—; por tanto, el campo gravitacional estaría dado por 𝜙(𝑥, 𝑦, 𝑧) = 10𝑦. Desde
luego, este campo no tiene límite inferior, lo que significa que la masa seguirá cayendo
estos elementos están dados por el plano inclinado 𝑥 = 𝑦 y por el plano vertical 𝑥 = 8;
indefinidamente si no hay algún elemento que lo detenga. En el ejemplo de la figura,
por ende, el equilibrio puede ser totalmente determinado por el siguiente problema de
ḿın 10𝑦
optimización, a saber:
𝑥−𝑦 =0
8−𝑥 ≤0
(5.47)
0+𝜆−𝜇 =0
10 − 𝜆 = 0
𝜇≥0
𝑥−𝑦 =0
(5.48)
8−𝑥 ≤0
𝜇(8 − 𝑥) = 0
98
93
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑦 𝑥
𝑥= 𝑥=8
−∇𝑓 = 10
Figura nro. 5.6. Ejemplo de un sistema con una masa sobre un plano inclinado.
cuyo lagrangeano es
ℒ(𝑥, 𝜆, 𝜇) = 𝑓(𝑥) + 𝜆(𝑔(𝑥) − 𝑎) + 𝜇(ℎ(𝑥) − 𝑏) (5.50)
ḿın𝑓(𝑥)
perturbación
𝑔(𝑥) = 𝑎 + ∆𝑎
ℎ(𝑥) ≤ 𝑏 + ∆𝑏
(5.51)
99
94
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝒲𝑁 − 𝒲
𝜆=−
∆𝑎
(5.54)
𝒲𝑁 − 𝒲
𝜇=−
∆𝑏
(5.55)
Ejemplo 5.8. Cvxpy permite obtener las variables duales del problema de una forma
𝑥 = 10 y 𝑦 = 5, veamos:
directa. Consideremos el siguiente problema de optimización cuyos valores óptimo son
ḿın 8𝑥 + 7𝑦 2
𝑥 ≥ 10
𝑦≥5
(5.56)
El resultado de las variables duales son 8 y 70. Esto significa que si la restricción no
fuera 𝑥 ≥ 10 sino 𝑥 = 11, la función objetivo aumentaría en aproximadamente 8
en la vecindad del punto óptimo. En el ejemplo, la función objetivo pasa de 255 a 263.
unidades. Este valor no es preciso porque se trata de una aproximación de la derivada
x = cvx.Variable(1);
y = cvx.Variable(1);
obj = cvx.Minimize(8*x+7*y**2)
res = [x>=10, y>=5]
prob = cvx.Problem(obj, res)
prob.solve(verbose=False)
100
95
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
5.6. Ejercicios
ḿın𝑓(𝑥) = 𝑥2 + 1
𝑔(𝑥) = (𝑥 − 2)(𝑥 − 4) ≤ 0
(5.57)
ḿın𝑓(𝑥) = 𝑥 + 𝑦
óptima.
𝑔(𝑥) = 𝑥2 + 𝑦 2 ≤ 1
(5.58)
1 ⊺
ℰ𝑖 = {𝑥 ∶ 𝑥 𝐻𝑖 𝑥 + 𝑏𝑖 𝑥 + 𝑐𝑖 ≤ 0}
2
(5.59)
ḿın 𝑥2 + 𝑦 2
(𝑥 − 1)2 + (𝑦 − 1)2 ≤ 1 (5.60)
(𝑥 − 1)2 + (𝑦 + 1)2 ≤ 1
101
96
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
102
97
SEGUNDA PARTE
MODELOS DE OPTIMIZACIÓN
CONVEXA
6 CAPÍTULO
SEIS
Alejandro Garcés Ruiz
Capítulo seis
OPTIMIZACIÓN CÓNICA
Optimización cónica
𝒞𝑃𝐿 = {𝑥 ∈ ℝ𝑛 ∶ 𝐴𝑥 = 𝑏, 𝑥 ≥ 0}
𝒞𝑆𝑂𝐶 = {𝑥 ∈ ℝ𝑛 ∶ ‖𝐴𝑥 + 𝑏‖ ≤ 𝑐𝑥 + 𝑑}
(6.1)
𝒞𝑆𝐷𝑃 = {𝑋 ∈ ℝ𝑛×𝑛 ∶ 𝑋 ⪰ 0}
(6.2)
(6.3)
105
100
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Convexo
SDP
SOCP
QCQP QP
LP
𝒞𝑃𝐿 ya fue estudiado en el capítulo dos, así que nos centraremos en los dos últimos.
convexos y por tanto los problemas resultantes son de optimización convexa. El cono
De ahora en adelante, usaremos las siglas en inglés asociadas a cada uno de estos
problemas, es decir, SOC para second order cone optimization y SDP para semidefinite
programming.
ḿın tr(𝐶𝑋)
𝐴𝑋 = 𝐵
𝑋⪰0
(6.4)
hasta ahora. Primero, las variables de decisión 𝑋 ∈ ℝ𝑛×𝑛 son ahora matrices y
Este problema luce muy diferente a los problemas convexos que hemos estudiando
106
101
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
un producto matricial; y tercero, aparece una restricción del tipo 𝑋 ⪰ 0 la cual indica
que la matriz debe ser semidefinida positiva. Nótese que el símbolo es diferente al de
una desigualdad.
tr(𝛼𝐴) = 𝛼 tr(𝐴).
tr(𝐴) = tr(𝐴⊺ ).
tr(𝐴⊺ 𝐵) = tr(𝐴𝐵⊺ ).
si 𝐴 ≻ 0 y 𝐵 ≻ 0 entonces tr(𝐴𝐵) ≥ 0.
𝑥⊺ 𝐻𝑥 = tr(𝐻𝑥𝑥⊺ ).
∑
tr(𝐻) = 𝜆𝑖 en donde 𝜆𝑖 son los egienvalores de 𝐻.
107
102
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
det([𝑎⃗1 , … 𝑎⃗𝑖 + 𝑏⃗𝑖 , … 𝑎⃗𝑛 ]) = det([𝑎⃗1 , … , 𝑎⃗𝑖 , … 𝑎⃗𝑛 ]) + det([𝑎⃗1 , … 𝑏⃗𝑖 , … 𝑎⃗𝑛 ])
det([𝑎⃗1 , … 𝛼𝑎⃗𝑖 , … 𝑎⃗𝑛 ]) = 𝛼 ⋅ det([𝑎⃗1 , … 𝑎⃗𝑖 , … 𝑎⃗𝑛 ])
(6.6)
det(𝐼) = 1 (6.8)
El determinante está, a su vez, relacionado con las permutaciones de los vectores 𝑎𝑖 que
forman la matriz 𝐴, así:
∑ ∏
det(𝐴) = sgn(𝜎) (𝜎(𝑎)𝑖 )𝑘𝑘 (6.9)
𝑖 𝑘
108
103
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑦2 𝑀 −1 𝑥1
𝑦1 𝑥1
Figura nro. 6.2. Uso del determinante para calcular el volumen de un elipsoide visto como una
transformación lineal de una bola unitaria.
𝐴 𝐵
bloques como la siguiente:
𝑀=( ⊺ )
𝐵 𝐶
(6.11)
𝑀∕𝐶 = 𝐴 − 𝐵𝐶 −1 𝐵⊺ (6.12)
𝑀∕𝐴 = 𝐶 − 𝐵⊺ 𝐴−1 𝐵 (6.13)
Demostración. Nótese que la función objetivo en 6.4 es lineal debido a que 𝐶 es una
109
104
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
matriz constante, mientras que la primera restricción define un espacio afín. De esta
índole, solo basta demostrar que el conjunto definido por
Ω = {𝑋 ∈ ℝ𝑛×𝑛 ∶ 𝑋 ⪰ 0} (6.14)
es convexo. Para ello, tomamos dos matrices diferentes 𝑋, 𝑌 ∈ Ω y notamos que 𝛼𝑋 +
𝛽𝑌 ⪰ 0; la definición de matriz semidefinida nos puede ser útil en este últmo punto, a
saber:
𝑢⊺ 𝑋𝑢 ≥ 0, 𝛼 ≥ 0 ⟹ 𝑢⊺ (𝛼𝑋)𝑢 ≥ 0
𝑢⊺ 𝑌𝑢 ≥ 0, 𝛽 ≥ 0 ⟹ 𝑢⊺ (𝛽𝑌)𝑢 ≥ 0
(6.15)
∴ 𝑢⊺ (𝛼𝑋 + 𝛽𝑌)𝑢 ≥ 0, ∀𝑢 ∈ ℝ𝑛
(6.16)
(6.17)
Con lo anterior, podemos concluir que los problemas de programación semidefinida
son convexos.
Ejemplo 6.2. Los problemas de programación lineal son un caso particular de SDP; por
ejemplo, consideremos el siguiente problema:
ḿın 𝑐⊺ 𝑥
𝐴𝑥 = 𝑏
𝑥≥0
(6.18)
𝑋⪰0
Evidentemente, este es un problema de optimización semidefinida. El conjunto de
soluciones factibles en un problema de programación lineal es un politope mientras
■
que en un problema de SDP es un objeto geométrico más general (aunque convexo)
llamado espectraedro.
110
105
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
1+𝑥 𝑦
( )⪰0
𝑦 1−𝑥
(6.21)
con 1 + 𝑥 ≥ 0, 1 − 𝑥 ≥ 0. ■
(𝑐⊺ 𝑥)2
ḿın
𝑑⊺ 𝑥
𝐴𝑥 + 𝑏 ≥ 0
(6.22)
ḿın 𝑡
(𝑐⊺ 𝑥)2
≤𝑡
𝑑⊺ 𝑥
(6.23)
𝐴𝑥 + 𝑏 ≥ 0
(𝑐⊺ 𝑥)2
≤𝑡
𝑑⊺ 𝑥
(𝑐⊺ 𝑥)2 − 𝑡(𝑑⊺ 𝑥) ≤ 0, con 𝑑⊺ 𝑥 ≠ 0
𝑑⊺ 𝑥 𝑐⊺ 𝑥
(6.24)
( )≻0
𝑐⊺ 𝑥 𝑡
ḿın 𝑡
⎛ diag(𝐴𝑥 + 𝑏) 0 0 ⎞
⎜ 0 𝑡 𝑐⊺ 𝑥 ⎟ ⪰ 0
(6.25)
⎝ 0 𝑐⊺ 𝑥 𝑑⊺ 𝑥 ⎠
111
106
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ḿın tr(𝑋)
saber:
𝑋⪰0
(6.26)
X = cvx.Variable((2,2),symmetric = True)
obj = cvx.Minimize(cvx.trace(X))
res = [X >> 0]
prob = cvx.Problem(obj, res)
prob.solve(verbose=False)
■
La principal diferencia con respecto a los ejemplos anteriores en cvxpy está en la
definción de la matriz simétrica y semidefinida.
ḿın tr(𝐶𝑋)
tr(𝐴𝑖 𝑋) = 𝑏𝑖
𝑋⪰0
(6.27)
∑
Definimos un lagrangeano dado por
𝒲(𝑧, 𝑌) = ı́ nf ℒ(𝑥, 𝑧, 𝑌)
𝑥
(6.29)
∑
Para que este ínfimo exista, se necesita que
∴ 𝑧𝑖 𝐴𝑖 + 𝑌 = 𝐶
𝑖
112
107
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Recordemos que la traza es distributiva con respecto a la suma; por tanto, el problema
dual toma la siguiente forma:
́ 𝑏⊺ 𝑧
max
∑
𝑌+ 𝑧𝑖 𝐴𝑖 = 𝐶 (6.31)
𝑌⪰0
condiciones de Slater. Esto significa que debe existir un punto interior relativo tanto en
el problema primal como en el problema dual.
Los problemas cónicos de segundo orden o second order cone optimization (SOC) son
aquellos que se pueden representar de la siguiente forma:
ḿın 𝑐⊺ 𝑥
‖𝐴𝑖 𝑥 + 𝑏𝑖 ‖ ≤ 𝛼𝑖 𝑥 + 𝛽𝑖
⊺
ḿın 𝑐⊺ 𝑥
‖𝑢𝑖 ‖ ≤ 𝛼𝑖 𝑥 + 𝛽𝑖
⊺
(6.32)
𝑢𝑖 = 𝐴𝑖 𝑥 + 𝑏𝑖
Ejemplo 6.6. Los problemas de programación lineal pueden ser representados como
ḿın 𝑥⊺ 𝑃0 𝑥 + 2𝑞0 𝑥 + 𝑟0
⊺
𝑥 ⊺ 𝑃𝑖 𝑥 + 2𝑞𝑖 𝑥 + 𝑟𝑖 ≤ 0
⊺ (6.33)
113
108
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
‖‖ 1∕2 ‖2
‖‖𝑃𝑖 𝑥 + 𝑃𝑖−1∕2 𝑞𝑖 ‖‖‖ = (𝑃𝑖1∕2 𝑥 + 𝑃𝑖−1∕2 𝑞𝑖 )⊺ (𝑃𝑖1∕2 𝑥 + 𝑃𝑖−1∕2 𝑞𝑖 )
‖ ‖
= 𝑥⊺ 𝑃𝑖 𝑥 + 2𝑞𝑖 𝑥 + 𝑞𝑖 𝑃𝑖−1 𝑞𝑖
⊺ ⊺
(6.34)
ḿın 𝑡
‖‖ 1∕2 −1∕2 ‖
‖‖𝑃0 𝑥 + 𝑃0 𝑞0 ‖‖‖ ≤ 𝑡
‖ ‖
‖‖ 1∕2 ‖
‖‖𝑃𝑖 𝑥 + 𝑃𝑖−1∕2 𝑞𝑖 ‖‖‖ ≤ (𝑞𝑖⊺ 𝑃𝑖−1 𝑞𝑖 − 𝑟𝑖 )1∕2
(6.35)
‖ ‖
particular con 𝑃𝑖 = 0. ■
Los problemas de programación cuadrática (con restricciones lineales) son solo un caso
𝑡𝐼 𝑢
( )⪰0
𝑢⊺ 𝑡
(6.36)
Ahora, podemos generar una restricción SOC usando el complemento de Shur, a saber:
‖𝑢‖ ≤ 𝑡 (6.37)
Los algoritmos de solución de problemas SOC suelen ser más eficientes que los de SDP;
■
por tanto, es deseable reformular los problemas como SOC. Sin embargo, no todos los
problemas SDP son SOC-representables.
Ejemplo 6.9. Las restricciones hiperbólicas también pueden ser representadas como
𝑥𝑦 ≥ 𝑤⊺ 𝑤
SOC, veamos:
𝑥≥0
𝑦≥0
(6.38)
una matriz 𝑃 definimos 𝑃1∕2 a la matriz que se genera de la factorización de Cholesky, de tal forma
que 𝑃 = (𝑃1∕2 )⊺ (𝑃1∕2 ). Igualmente, definimos 𝑃−1∕2 = ((𝑃1∕2 )−1 )⊺ de tal forma que (𝑃−1∕2 )⊺ (𝑃1∕2 ) = 𝐼.
3 Dada
114
109
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
4𝑤⊺ 𝑤 ≤ 4𝑥𝑦
𝑤⊺ 𝑤 ≤ 𝑥𝑦
𝑧 = 𝑥𝑦
0≤𝑥≤1
0≤𝑦≤1
(6.41)
𝑧≥0
Esta se suele relajar como
𝑥≤𝑧
𝑦≤𝑧
(6.42)
𝑧 ≥𝑥+𝑦−1
De esta forma, se expresa una aproximación lineal que puede funcionar en muchos
■
casos; sin embargo, la aproximación SOC presentada en el ejemplo anterior conserva
parte de la no-linealidad del modelo y, por tanto, puede ser más precisa.
∑
siguiente problema de optimización
ḿın 𝑡2 + 𝑥𝑖
‖𝑥‖ ≤ 𝑡
(6.43)
x = cvx.Variable(10)
t = cvx.Variable()
obj = cvx.Minimize(cvx.sum(x)+t**2)
res = [cvx.norm(x) <= t]
prob = cvx.Problem(obj, res)
115
110
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
prob.solve(verbose=False)
Aunque otras librerías como numpy tienen funciones para extraer la norma de un
vector, es siempre recomendable usar las funciones asociadas a la librería de cvxpy
para definir las restricciones del problema.
Dado un problema primal como en la ecuación 6.32 podemos calcular la función dual
∑
correspondiente
ℒ(𝑥, 𝑢, 𝑦, 𝑧) = 𝑐⊺ 𝑥 + 𝑦𝑖 (‖𝑢𝑖 ‖ − 𝛼𝑖 𝑥 − 𝛽𝑖 ) + 𝑧𝑖 (𝑢𝑖 − 𝐴𝑖 𝑥 − 𝑏𝑖 )
⊺ ⊺
(6.44)
𝑖
𝒲(𝑦, 𝑧) = ı́ nf ℒ(𝑥, 𝑢, 𝑦, 𝑧)
𝑥,𝑢
(6.45)
∑
ínfimo aprovechando que el problema es separable, como se muestra a continuación:
ı́ nf ℒ(𝑥, 𝑢, 𝑦, 𝑧) = − 𝛽𝑖 𝑦𝑖 − 𝑏𝑖 𝑧𝑖 + ı́ nf ℒ + ı́ nf ℒ
⊺
𝑥,𝑢 𝑥 𝑢
(6.46)
𝑖
∑ ∑
con
ı́ nf ℒ = ı́ nf {(𝑐 − 𝑦𝑖 𝛼𝑖 − 𝐴𝑖 𝑧𝑖 )⊺ 𝑥} = 0 ↔ 𝑐 − 𝑦𝑖 𝛼𝑖 − 𝐴𝑖 𝑧𝑖 = 0
⊺ ⊺
𝑥 𝑥
𝑖 𝑖
∑ ∑ { }
𝑦𝑖 ‖𝑢𝑖 ‖ + 𝑧𝑖 𝑢𝑖 } ı́ nf 𝑦𝑖 ‖𝑢𝑖 ‖ + 𝑧𝑖 𝑢𝑖
(6.47)
ı́ nf ℒ = ı́ nf { =
⊺ ⊺
𝑢 𝑢 𝑢𝑖
𝑖 𝑖
𝑚𝑖 𝑢𝑖
corresponde al producto punto entre los vectores 𝑢𝑖 y 𝑚𝑖 . Este
⊺
Nótese que
producto se puede representar en función del ángulo que se forma entre los vectores,
116
111
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
‖𝑚𝑖 ‖ ≤ 1
implica lo siguiente:
1
‖𝑧 ‖ ≤ 1
𝑦𝑖 𝑖
(6.51)
‖𝑧𝑖 ‖ ≤ 𝑦𝑖
∑
𝑖
𝐴 𝑖 𝑧 𝑖 + 𝛼 𝑖 𝑦𝑖 = 𝑐
⊺
(6.52)
𝑖
‖𝑧𝑖 ‖ ≤ 𝑦𝑖
La diferencia entre el primal y dual (gap) está dado por la siguiente expresión4 :
∑
gap = 𝑐⊺ 𝑥 + (𝑏𝑖 𝑧𝑖 + 𝛽𝑖 𝑦𝑖 )
⊺
(6.53)
∑ ∑
⊺
( 𝐴𝑖 𝑧𝑖 + 𝛼𝑖 𝑦𝑖 ) 𝑥 + 𝑏𝑖 𝑧𝑖 + 𝛽𝑖 𝑦𝑖
⊺ ⊺
∑
𝑖
𝑧𝑖 (𝐴𝑖 𝑥 + 𝑏𝑖 ) + 𝑦𝑖 (𝛼𝑖 𝑥 + 𝛽𝑖 )
⊺ ⊺ (6.54)
∑
𝑖
𝑧𝑖 𝑢𝑖 + 𝑡𝑖 𝑦𝑖
⊺
∑
𝑖 𝑖
≥ (𝑦𝑖 − ‖𝑧𝑖 ‖)𝑡𝑖 ≥ 0
(6.55)
𝑖
dado que gap = primal − dual ≥ 0 concluimos que el primal es siempre mayor que el
dual (dualidad débil). Las condiciones de dualidad fuerte se cumplen cuando ambos
conos tienen un interior no-vacío (condiciones Slater).
117
112
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Los problemas de SOC y SDP son solo dos casos particulares de optimización cónica;
sin embargo, son los casos más comunes en problemas de ingeniería eléctrica. Una
revisión más detallada puede encontrarse en [12]. En la tercera parte de este libro
mostraremos varias aplicaciones de estas técnicas. El complemento de Shur es uno de
los aspectos más importantes para tener en cuenta en estas aplicaciones. Conforme a lo
anterior, un repaso de algebra lineal es clave para avanzar con seguridad; por ejemplo,
se recomienda revisar [10].
6.5. Ejercicios
𝑥+𝑦 ≤3
Nótese que (≥) y (⪰) son dos operaciones diferentes. Graficar el espacio de
soluciones factibles, asociado a este problema. Formular el problema dual y
resolverlo igualmente usando cvxpy.
3. Formular el dual del siguiente problema no convexo con 𝐻 ⪰ 0.
ḿın 𝑥 ⊺ 𝐻𝑥
𝑥𝑖2 = 1
(6.57)
1≤𝑡≤2
tal que −0.5 ≤ 𝑐𝑖 ≤ 0.5. Mostrar el caso para 𝑛 = 10, 𝑛 = 20, … , 𝑛 = 100. Señale
en la misma gráfica, los tiempos de cálculo como función del numero de variables
para cada caso.
118
113
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
∑
𝑛
‖𝐹𝑖 𝑥 + 𝑔𝑖 ‖
2
SOC-representables:
ḿın
𝑎𝑖 𝑥 + 𝑏𝑖
⊺
𝑖=1 (6.59)
𝑎𝑖 𝑥 + 𝑏𝑖 > 0
⊺
∏
𝑛
ḿın (𝑎𝑖 𝑥 + 𝑏𝑖 )1∕𝑛
⊺
𝑖=1 (6.60)
𝑎𝑖 𝑥 + 𝑏𝑖 ≥ 0
⊺
119
114
7 CAPÍTULO
SIETE
Alejandro Garcés Ruiz
Capítulo siete
MANEJO DE LA INCERTIDUMBRE
Manejo de la incertidumbre
Hasta ahora nos hemos preocupado por problemas de la forma ḿın 𝑓(𝑥, 𝛽) en
donde 𝑥 son las variables de decisión y 𝛽, los parámetros conocidos del modelo. Sin
embargo, es muy común que los parámetros 𝛽 no sean completamente determinísticos.
Existen dos formas de hacer frente a este problema, a saber: optimización estocástica
conjunto cerrado 𝒜. En tal caso, nuestro objetivo es encontrar un solución que sea
óptima en el sentido de 𝑓 pero que, al mismo tiempo, sea factible sin importar el valor
121
116
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
1 ∑
𝑁
𝔼(𝑓(𝑥, 𝛽)) = 𝑓(𝑥, 𝛽𝑘 )
𝑁 𝑘=1
(7.2)
Esta metodología se denomina SSA por las siglas en inglés de sample average
122
117
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
∑
3 ∑
𝑛
𝑎𝑘𝑖 2
ḿın 𝜌𝑖 ( 𝑝 + 𝑏𝑘𝑖 𝑝𝑖𝑘 + 𝑐𝑘𝑖 )
𝑖=1 𝑘=1
2 𝑖𝑘
∑𝑛
𝑝𝑖𝑘 = 𝐷𝑖
(7.4)
𝑘=1
𝑝𝑚𝑖𝑛(𝑖𝑘) ≤ 𝑝𝑖𝑘 ≤ 𝑝𝑚𝑎𝑥(𝑖𝑘)
■
Claramente, el problema sigue siendo convexo. Podemos obtener un modelo similar
si tenemos presente la aleatoriedad de la demanda mediante escenarios.
En algunos casos, las restricciones 𝑎⊺ 𝑥 ≤ 𝑏 pueden ser tal, que los valores de 𝑎 estarían
confinados en un politopo ℳ, como se muestra a continuación:
ḿın 𝑐⊺ 𝑥
𝑎⊺ 𝑥 ≤ 𝑏
𝑎 ∈ ℳ = {𝑎 ∶ 𝐷⊺ 𝑎 ≤ 𝑑}
(7.5)
El problema parece complejo porque tanto 𝑎 como 𝑥 son variables; sin embargo,
nos interesa analizar solo el peor de los casos, es decir:
𝒫(𝑎) = { sup 𝑎⊺ 𝑥 ≤ 𝑏}
𝑎∈ℳ
(7.6)
123
118
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑡 = max
́ 𝑎⊺ 𝑥
que
𝒫(𝑎) = { }
𝐷⊺𝑎 ≤ 𝑑
(7.7)
⎧ 𝑡 = ḿın 𝑦 ⊺ 𝑑 ⎫
𝒟(𝑦) = 𝑦⊺ 𝐷 = 𝑥
⎨ ⎬
𝑦≥0
(7.8)
⎩ ⎭
ḿın 𝑐⊺ 𝑥
𝑦⊺ 𝑑 ≤ 𝑏
𝑦⊺ 𝐷 = 𝑥
(7.9)
𝑦≥0
Una forma de modelar el espacio de incertidumbre es como una bola cerrada 𝒜, usando
cualquier norma 𝐿𝑝 . En el caso de un problema de programación lineal, tendríamos la
siguiente representación:
ḿın 𝑓 = 𝑐⊺ 𝑥
𝛼⊺ 𝑥 ≤ 𝛽
∀𝛼 ∈ 𝒜 = {𝛼 ∈ ℝ𝑛 ∶ ‖𝛼 − 𝛼0 ‖ ≤ 𝛿}
(7.10)
Definición 7.1. Norma-dual. Dada una norma ‖𝑥‖ podemos definir una norma-dual
‖𝑦‖∗ , dada por
𝑥
‖𝑦‖∗ = sup {𝑦 ⊺ 𝑥, ‖𝑥‖ ≤ 1} = sup {𝑦 ⊺ }
‖𝑥‖≠0 ‖𝑥‖
(7.11)
La norma dual cumple con todas las propiedades para ser una norma. Además el
operador es biyectivo, lo cual significa que el dual de una norma-dual es nuevamente
la norma original.
124
119
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
{ }
‖𝑦‖∗ = sup 𝑦 ⊺ 𝑥, ‖𝑥‖∞ ≤ 1
= sup {𝑦 ⊺ 𝑥, |𝑥1 | ≤ 1, |𝑥2 | ≤ 1, … |𝑥𝑖 | ≤ 1}
(7.12)
en un vértice por lo que si 𝑦𝑖 > 0 → 𝑥̃ 𝑖 = 1, mientras que 𝑦𝑖 < 0 → 𝑥𝑖 = −1, así que:
∑
𝑦 ⊺ 𝑥̃ = 𝑦𝑖 𝑥̃ 𝑖
∑
𝑖
= |𝑦𝑖 | = ‖𝑦‖1
(7.13)
𝑖
De forma análoga, es fácil ver que la norma dual de la norma-1 es la norma-∞ (el
operador es involutivo).
{ }
‖𝑦‖∗ = sup 𝑦 ⊺ 𝑥, ‖𝑥‖2 ≤ 1 (7.14)
⎛ √∑ ⎞
ℒ(𝑥, 𝜆) = 𝑦 ⊺ 𝑥 + 𝜆 ⎜1 − 𝑥𝑖2 ⎟
⎝ ⎠
(7.15)
𝑖
125
120
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑎⊺ 𝑥 ≤ 𝑏 (7.16)
𝑎0 𝑥 + 𝜌 ‖𝑥‖∗ ≤ 𝑏
⊺
(7.18)
sup 𝑎⊺ 𝑥 ≤ 𝑏
‖𝜉‖≤1
𝑎0 𝑥 + 𝜌 sup 𝜉 ⊺ 𝑥 ≤ 𝑏
⊺
(7.19)
‖𝜉‖≤1
𝑎0 𝑥 + 𝜌 ‖𝑥‖∗ ≤ 𝑏
⊺
segundo orden. Mientras que para el caso de la norma-1 o la norma − ∞ sigue siendo
sea un elipsoide, el problema resultante se convierte en uno de optimización cónica de
126
121
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
3𝑥 + |𝑥| ≤ 1 (7.22)
(3 + 𝛽)𝑥 + 𝑠 = 1
𝑠≥0
|𝛽| ≤ 1
(7.23)
■
en problemas robustos y, por tanto, debemos mantener, dentro de lo posible, las
restricciones de desigualdad.
Los casos presentados en las dos secciones anteriores pueden ser generalizados para
cualquier conjunto de incertidumbre convexo. Consideremos, por ejemplo, la siguiente
restricción:
𝑎𝑇 𝑥 + 𝜌𝜉 𝑇 𝑥 ≤ 𝑐 (7.24)
127
122
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ℎ(𝜉) ≤ 0 (7.25)
en donde ℎ es una función convexa que genera un espacio cerrado. En este caso,
podemos proceder a encontrar la restricción robusta como sigue
{ }
𝑎𝑇 𝑥 + sup 𝜌𝜉 𝑇 𝑥 ≤ 𝑐
ℎ(𝜉)≤0
(7.26)
ḿın −𝜌𝜉 𝑇 𝑥
𝒫(𝜉) = { }
ℎ(𝜉) ≤ 0
(7.27)
{ }
𝒲 = ı́ nf ℒ(𝑥, 𝜉, 𝑢) = ı́ nf −𝜌𝜉 𝑇 𝑥 + 𝑢ℎ(𝜉) (7.28)
ℎ∗ = sup 𝑥𝑇 𝜉 − ℎ(𝜉)
𝜉
(7.29)
𝑎𝑇 𝑥 + 𝑢ℎ∗ (𝜌𝑥∕𝑢) ≤ 𝑐
𝑢≥0
(7.31)
la función dual.
128
123
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
max
́ {𝑓(𝑥), 𝑔(𝑥)} (7.32)
Dado lo anterior, se puede observar que este operador no cumple con todas las
propiedades para ser un orden, aunque sí cumple con algunas y, por tanto, es un
semi-orden. Nuestro objetivo es encontrar soluciones no dominadas las cuales se
puedan representar en un frente de Pareto, como se muestra en la Figura nro. 7.1. En
esta figura, las soluciones a la izquierda presentan una mejor función objetivo pero son
menos robustas, mientras que las soluciones a la derecha son mas robustas sacrificando
optimalidad. Mediante este tipo de gráficas podemos tomar decisiones, asociadas a
cuánto estamos dispuestos a sacrificar en la función objetivo con el fin de obtener una
solución robusta.
con respecto a 𝜌. Cabe anotar que el concepto de eficiencia de Pareto puede ser utilizado
El problema multiobjetivo resultante es convexo, ya que cada problema es convexo
129
124
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑓(𝑥)
frente de Pareto
𝑥 ∼ 𝒩(𝑥0 , 𝜎𝑥 )
𝑦 ∼ 𝒩(𝑦0 , 𝜎𝑦 )
𝑧 = 𝑥 + 𝑦 ∼ 𝒩(𝑧0 , 𝜎𝑧 )
𝑧0 = 𝑥0 + 𝑦0
(7.33)
√
𝜎𝑧 = 𝜎𝑥2 + 𝜎𝑦2
Prob(𝑎⊺ 𝑥 ≤ 𝑏) ≥ 𝜂 (7.34)
en donde cada valor de 𝑎 se distribuye normalmente, asumiendo que las variables 𝑎𝑖 son
independientes. La idea básica es convertir este problema estocástico en uno robusto
definiendo un elipsoide, como
‖ ‖
𝑎 = 𝑎̄ + 𝜌 ‖‖‖𝑆 1∕2 𝜉 ‖‖‖2 (7.35)
130
125
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
aleatorios. Desde luego, este problema es más complejo y requiere técnicas adicionales
de modelado y aproximación, las cuales van mas allá de los objetivos de este libro.
2 Recordar que una función acumulada de probabilidad 𝜙(𝑥) está dada por Prob(𝑠 ≤ 𝑥) y la función cuantil
distribución acumulada de probabilidad.
131
126
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
siguiente forma:
Esta varianza indica qué tanto se espera que la solución final se desplace de la
media. Deseamos encontrar una relación de compromiso entre el óptimo medido desde
√
el punto de vista de la media y la desviación. Para ello, penalizamos la función objetivo
√
√∑
así:
𝑛
ḿın 𝑐̄⊺ 𝑥 + 𝜉 𝜎𝑖 𝑥𝑖2 (7.41)
𝑖=1
7.9. Ejercicios
1. Sea ‖𝑥‖ una norma cualquiera y ‖𝑦‖∗ su correspondiente normal dual, demuestre
𝑥⊺ 𝑦 ≤ ‖𝑥‖ ‖𝑦‖∗
la siguiente desigualdad:
(7.42)
132
127
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑛(𝑥) = 𝑥⊺ 𝐻𝑥 (7.43)
ḿın 𝑓(𝑥)
saber:
𝑎⊺ 𝑥 ≤ 𝑏
(7.44)
un tope de 10MWh, b) un contrato tipo pague lo demandado sin tope por valor de
320COP∕kWh y c) comprar energía en bolsa. El precio de bolsa es aleatorio pero
se distribuye normalmente con una media de 243COP∕kWh y una desviación de
20COP∕kWh. Determinar el valor óptimo del portafolio de compra de energía
para una demanda promedio de 23MWh con diferentes valores de aversión al
riesgo. Usar un enfoque directo como el presentado en la sección 6.6 y un enfoque
basado en escenarios como el presentado en la sección 6.2. Finalmente, comparar
los resultados.
133
128
8 CAPÍTULO
OCHO
Alejandro Garcés Ruiz
Capítulo ocho
SUMA DE POLINOMIOS
CUADRÁTICOS
Suma de polinomios cuadráticos
Las funciones continuas forman un espacio lineal (ver sección 1.4 y el ejercicio 3 del
135
130
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Es fácil ver que ℝ[𝑥]𝑑 es un subespacio lineal, ya que la suma de dos polinomios es
un polinomio (ver capítulo uno, definición 1.10). Al igual que en el caso de ℝ𝑛 , podemos
nuevamente un polinomio y la multiplicación de un polinomio por un escalar genera
𝑛+𝑑
Nótese que el tamaño de 𝑚(𝑥) es ( ). ■
𝑑
𝑓, 𝑔, ℎ ∈ ℝ[𝑥]
136
131
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
∑
𝑓(𝑥) = (𝑝𝑖 (𝑥))2 (8.7)
ḿın 𝑓(𝑥)
∑
𝑝𝑖 (𝑥) ∈ 𝑆𝑂𝑆
(8.10)
Este problema es mucho más abstracto que los problemas anteriores debido a que el
conjunto de soluciones factibles no está contenido en el espacio de los números reales
sino en el de los polinomios reales.
Lema 8.1. El conjunto de los polinomios SOS es convexo.
137
132
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Una restricción SOS puede ser reescrita como un espectraedro, permitiendo usar
(matriz de Gram). Así, el polinomio 𝑝(𝑥) ∈ 𝑆𝑂𝑆 puede ser reescrito como 𝑝(𝑥) =
(𝑄𝑚(𝑥))⊺ (𝑄𝑚(𝑥)).
Teorema 8.1. Un polinomio 𝑝 ∈ ℝ[𝑥] tiene una descomposición como suma de
tal que 𝑝(𝑥) = 𝑚(𝑥)⊺ 𝑄𝑚(𝑥), ∀𝑥 ∈ ℝ𝑛 , en donde 𝑚(𝑥) representa una base asociado a
polinomios cuadráticos, si y solo si existe una matriz real, simétrica y definida positiva
ℝ[𝑥].
Demostración. Suponga que existe una matriz definida positiva 𝑄 que permite
escribir al polinomio como 𝑝(𝑥) = 𝑚(𝑥)⊺ 𝑄𝑚(𝑥), ∀𝑥 ∈ ℝ𝑛 . Entonces, existe una
factorización de Cholesky 𝑄 = 𝐻𝐻 ⊺ , tal que
Para ello, definimos un vector de monomios 𝑚(𝑥), el cual forma la base canónica
⎛ 𝑥 ⎞
2
del polinomio, como sigue:
𝑚(𝑥) = ⎜ 𝑥 ⎟
⎝ 1 ⎠
(8.14)
Así, el polinomio podría ser representado como 𝑝(𝑥) = 𝑚(𝑥)⊺ 𝑄𝑚(𝑥) con
138
133
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
⎛ 1 2 2 ⎞
𝑄=⎜ 2 2 2 ⎟
⎝ 2 2 5 ⎠
(8.15)
⎛ 1 2 0 ⎞
𝑄=⎜ 2 6 2 ⎟
⎝ 0 2 5 ⎠
(8.16)
Esta es semidefinida positiva ya que 𝑝(𝑥) > 0 para cualquier 𝑥. Ahora, hacemos
una factorización de Cholesky 𝑄 = 𝐶 ⊺ 𝐶, como sigue:
⎛ 1 0 0 ⎞ ⎛ 1 √2 √0 ⎞
⎛ 1 2 0 ⎞ √
⎜ ⎟⎜ 0 2 √2 ⎟
⎜ 2 6 2 ⎟ = 2 √2 √0
0 2 5 ⎜ ⎟⎜ ⎟
⎝ ⎠ 0 2 3 0 0 3
(8.17)
⎝ ⎠⎝ ⎠
⎛ 1 2 ⎞ ⎛ (𝑥2 + 2𝑥) ⎞
√ √0 ⎛ 𝑥 ⎞ √
2
⎜ 0 2 √2 ⎜ 𝑥 ⎟ = ⎜ 2(𝑥 + 1)
⎟ ⎟
⎜ ⎟ ⎜ √ ⎟
0 0 3 ⎝ 1 ⎠ 3
(8.18)
⎝ ⎠ ⎝ ⎠
Por lo tanto,
139
134
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
⎛ 1 ⎞ ⎛ 5 2 −1 ⎞ ⎛ 1 ⎞
𝑝(𝜃) = ⎜ cos(𝜃) ⎟ ⎜ 2 2 0 ⎟ ⎜ cos(𝜃) ⎟
⎝ sen(𝜃) ⎠ ⎝ −1 0 −2 ⎠ ⎝ sen(𝜃) ⎠
(8.21)
⎛ 1 ⎞ ⎛ 2 2 −1 ⎞ ⎛ 1 ⎞
𝑝(𝜃) = ⎜ cos(𝜃) ⎟ ⎜ 2 5 0 ⎟ ⎜ cos(𝜃) ⎟
⎝ sen(𝜃) ⎠ ⎝ −1 0 −1 ⎠ ⎝ sen(𝜃) ⎠
(8.22)
√ √ √
⎛ 2 ⎞
√2 √2∕2
⎜ 0 3 √3∕3 ⎟
⎜ ⎟
0 0 6∕6
(8.23)
⎝ ⎠
1 1 1
2 2 2
𝑝(𝜃) = 2 (1 + cos(𝜃) + sen(𝜃)) + 3 (cos(𝜃) + sen(𝜃)) + 6 ( sen(𝜃))
2 3 6
(8.24)
140
135
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
⊺
⎛ 𝑥 ⎞ ⎛ 𝑞11 𝑞12 𝑞13 ⎞ ⎛ 𝑥 ⎞
2 2
= 𝑞33 + (𝑞32 + 𝑞23 )𝑥 + 𝑞11 𝑥4 + (𝑞12 + 𝑞21 )𝑥3 + (𝑞13 + 𝑞31 )𝑥2 + 𝑞22 𝑥2
𝑄⪰0
𝑞11 = 1
𝑞12 + 𝑞21 = 4
𝑞22 + 𝑞13 + 𝑞31 = 6
(8.26)
𝑞23 + 𝑞32 = 4
𝑞33 = 5
Ahora, factorizamos el polinomio como 𝑝(𝑥, 𝑦) = 𝑚(𝑥, 𝑦)⊺ 𝑄𝑚(𝑥, 𝑦), de la siguiente
⊺
⎛ 𝑥2 ⎞ ⎛ 𝑞11 𝑞12 𝑞13 𝑞14 𝑞15 𝑞16 ⎞ ⎛ 𝑥2 ⎞
forma:
𝑄⪰0
𝑞11 = 2
𝑞13 + 𝑞31 = −1
(8.29)
141
136
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Ejemplo 8.8. No todos los polinomios positivos son SOS, consideremos el siguiente
polinomio multivariado:
𝑥 4 𝑦 2 + 𝑥 2 𝑦 4 + 𝑧6
tanto, tenemos que,
(𝑥6 𝑦 6 𝑧6 )1∕3 ≤
3
(8.31)
Lo anterior, implica que 𝑝(𝑥, 𝑦, 𝑧) ≥ 0 para todo 𝑥, 𝑦 y 𝑧. Sin embargo, este polinomio
■
no puede escribirse como un SOS. Esto se puede demostrar planteando el equivalente
SDP y exhibiendo su infactibilidad.
ℝ[𝑥, 𝑦]4 ,
Ejemplo 8.9. Calcular el politope de Newton, asociado al siguiente polinomio en
142
137
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
■
Para ello, graficamos cada uno de los coeficientes asociados a los exponentes del
polinomio, como se muestra en la Figura nro. 8.1.
24𝑥𝑦 2
2
13𝑥2 𝑦 18𝑥3 𝑦
1
−27 −15𝑥4
0 1 2 3 4 𝑥
Figura nro. 8.1. Politopo de Newton para 𝑝(𝑥, 𝑦) = 18𝑥3 𝑦 − 15𝑥4 + 13𝑥2 𝑦 + 24𝑥𝑦 2 − 27.
Teorema 8.2. Si 𝑝(𝑥) ∈ ℝ[𝑥]𝑑 es SOS entonces cada vértice de 𝒩(𝑝) debe
corresponder a exponentes pares y coeficientes positivos (ver [17]).
■
a exponentes pares. Nótese que el politope de Newton tiene la misma forma que el de
la Figura nro. 8.1.
143
138
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
un conjunto convexo.
{ }
𝐴 = (𝑥, 𝑦) ∈ ℝ2 ∶ 𝑥2 + 𝑦 2 ≤ 1
{ }
(8.33)
𝐵 = (𝑥, 𝑦) ∈ ℝ2 ∶ −2 ≤ 𝑥 ≤ 2, −2 ≤ 𝑦 ≤ 2 (8.34)
𝑦
𝑦
𝐵 suma 𝐶 =𝐴+𝐵
𝐴
𝑥 𝑥
Figura nro. 8.2. Ejemplo de suma de Minkoswki para dos conjuntos convexos 𝐴 y 𝐵.
Teorema 8.3. Dado dos polinomios 𝑝(𝑥) ∈ ℝ[𝑥]𝑑 y 𝑞(𝑥) ∈ ℝ[𝑥]𝑑 , tenemos lo
∑
𝑛
𝑝(𝑥) = (𝑔𝑖 (𝑥))2 (8.36)
𝑖=1
144
139
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑦
𝑦4
4
4𝑥𝑦 3
3
10𝑦 2 6𝑥2 𝑦 2
2
𝒩(𝑝)
20𝑥𝑦 4𝑥3 𝑦
1
𝒩(𝑚)
25 10𝑥2 𝑥4
0 1 2 3 4 𝑥
Figura nro. 8.3. Politopo de Newton para 𝑝 y para la posible descomposición SOS.
optimización resultante.
Deseamos una representación SOS de la forma 𝑝(𝑥, 𝑦) = 𝑚(𝑥, 𝑦)⊺ 𝑄𝑚(𝑥, 𝑦). Para
ello, generamos el politopo de Newton 𝒩(𝑚) el cual tiene como propiedad que 𝒩(𝑚)+
𝒩(𝑚) = 𝒩(𝑝). Es decir, el conjunto de monomios 𝑚 estará dado por
{ }
𝑚(𝑥, 𝑦) = 1, 𝑥, 𝑥2 , 𝑥𝑦, 𝑦, 𝑦 2 (8.38)
De esta forma, descartamos una gran cantidad de monomios que sabemos no van
matriz 𝑄. En este caso particular, podemos alcanzar una representación SOS dada por
a estar presentes en la representación SOS; por consiguiente, se reduce el tamaño de la
145
140
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
En este punto, tenemos todos los elementos necesarios para solucionar problemas
de optimización polinomial que puedan ser representados como SOS. En general, la
técnica consiste en identificar la restricción SOS y convertirla en una restricción SDP,
como se muestra a continuación.
ḿın 𝑦1 + 𝑦2
𝑦
𝑥4 + 𝑦1 𝑥 + 2 + 𝑦2 ≥ 0 (8.40)
(𝑦1 − 𝑦2 + 1)𝑥2 + 𝑦2 𝑥 + 1 ≥ 0
ḿın 𝑦1 + 𝑦2
𝑦
𝑥4 + 𝑦1 𝑥 + 2 + 𝑦2 ∈ 𝑆𝑂𝑆(𝑥) (8.41)
(𝑦1 − 𝑦2 + 1)𝑥2 + 𝑦2 𝑥 + 1 ∈ 𝑆𝑂𝑆(𝑥)
⊺
⎛ 1 ⎞ ⎛ 𝛼11 𝛼12 𝛼13 ⎞ ⎛ 1 ⎞
𝑥4 + 𝑦1 𝑥 + 2 + 𝑦2 = ⎜ 𝑥 ⎟ ⎜ 𝛼21 𝛼22 𝛼23 ⎟ ⎜ 𝑥 ⎟
⎝ 𝑥 ⎠ ⎝ 𝛼31 𝛼32 𝛼33 ⎠ ⎝ 𝑥 ⎠
2 2
⊺
1 𝛽 𝛽12 1
(8.42)
(𝑦1 − 𝑦2 + 1)𝑥2 + 𝑦2 𝑥 + 1 = ( ) ( 11 )( )
𝑥 𝛽21 𝛽22 𝑥
146
141
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
ḿın 𝑦1 + 𝑦2
𝑦
⎛ 𝑦2 − 2 𝑦1 ∕2 −𝛼22 ∕2 ⎞
⎜ 𝑦1 ∕2 𝛼22 0 ⎟⪰0
⎝ −𝛼 22 ∕2 0 1 ⎠
(8.43)
1 𝑦2 ∕2
( )⪰0
𝑦2 ∕2 𝑦1 − 𝑦2 + 1
nuestro análisis con el caso de un polinomio en una variable 𝑝(𝑥) ∈ ℝ[𝑥] cuyo mínimo
la aproximación a problemas polinomiales, no necesariamente convexos. Iniciamos
̃ es decir,
global es 𝑝,
̃ ∀𝑥 ∈ ℝ
𝑝(𝑥) ≥ 𝑝, (8.44)
En esta ecuación, podemos notar que 𝑝(𝑥) no es necesariamente SOS y, por tanto,
el problema puede ser no convexo. Ahora, como 𝑝̃ es el mínimo global, entonces
𝑝(𝑥) − 𝑝̃ ≥ 0 ∀𝑥 ∈ ℝ
necesariamente
(8.45)
𝑝(𝑥) − 𝑝̃ ∈ 𝑆𝑂𝑆
saber:
(8.46)
max
́ 𝑡
𝑝(𝑥) − 𝑡 ∈ 𝑆𝑂𝑆
(8.47)
Ejemplo 8.15. Queremos encontrar el mínimo del siguiente polinomio, cuyo gráfico se
muestra en la Figura nro. 8.4.
147
142
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
−100
𝑝(𝑥)
−200
−5 −4 −3 −2 −1 0 1 2 3 4 5
𝑥
y 𝑝(3.8) ≈ −209.28, respectivamente. El óptimo global es, por tanto, ≈ −271.25. Ahora,
planteamos el problema SOS equivalente, a saber:
ḿın 𝑡
𝑥4 − 30𝑥2 + 8𝑥 − 15 − 𝑡 ∈ 𝑆𝑂𝑆
(8.49)
max
́ 𝑡
veamos:
𝑄⪰0
𝑞33 = 1
2𝑞23 = 0
𝑞22 + 2𝑞13 = −30
(8.51)
2𝑞12 = 8
𝑞11 = −15 − 𝑡
el paso clave fue transferir el problema del espacio 𝑥 ∈ ℝ a un espacio más abstracto y
encontrado el mínimo global a un problema no convexo, usando un modelado convexo;
148
143
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Este se trata de una función racional en donde 𝑞(𝑥) > 0. Si 𝑡 corresponde al mínimo
global, entonces se cumple lo siguiente para cualquier valor de 𝑥 ∈ ℝ:
𝑝(𝑥)
≥𝑡
𝑞(𝑥)
(8.53)
max
́ 𝑡
𝑝(𝑥) − 𝑡𝑞(𝑥) ∈ 𝑆𝑂𝑆
(8.54)
Así, se tiene una factorización SOS con la misma estructura que 8.50, la cual genera
el siguiente problema SDP equivalente:
max
́ 𝑡
𝑄⪰0
𝑞33 = −𝑡
2𝑞23 = 0
𝑞22 + 2𝑞13 = 0
(8.55)
2𝑞12 = 2
𝑞11 = −1 − 𝑡
Ejemplo 8.17. La Figura nro. 8.50 muestra que también existe un máximo global al
problema de optimización del ejemplo anterior. En el presente caso, podemos proceder
de forma análoga, de tal manera que el máximo global de la función cumpla lo
𝑝(𝑥)
siguiente:
𝑡≥
𝑞(𝑥)
(8.56)
149
144
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
−1
𝑝(𝑥)
−2
−5 −4 −3 −2 −1 0 1 2 3 4 5
𝑥
Figura nro. 8.5. Gráfica del polinomio 𝑓(𝑥) = (2𝑥 − 1)∕(𝑥4 + 1).
ḿın 𝑡
𝑡𝑞(𝑥) − 𝑝(𝑥) ∈ 𝑆𝑂𝑆
(8.57)
ḿın 𝑡
𝑄⪰0
𝑞33 = 𝑡
2𝑞23 = 0
𝑞22 + 2𝑞13 = 0
(8.58)
2𝑞12 = −1
𝑞11 = 𝑡 + 1
150
145
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
sin embargo, los problemas SOS tienen la ventaja de ser representables como SDP
y, por tanto, pueden ser solucionados eficientemente por medio de algoritmos de
optimización convexa. Los polinomios SOS pueden ser utilizados en todo tipo de
problemas de optimización matemática y, en particular, en aplicaciones de ingeniería
eléctrica, como se mostrará en la tercera parte del libro.
8.7. Ejercicios
𝑥3 − 8𝑥 + 1
𝑓(𝑥) =
𝑥4 + 𝑥2 + 12
(8.59)
21 4 1 6
ḿın 𝑓(𝑥, 𝑦) = 4𝑥2 − 𝑥 + 𝑥 + 𝑥𝑦 − 4𝑦 2 + 4𝑦 4
10 3
(8.60)
max
́ 𝑧
𝑓(𝑥, 𝑦) − 𝑧 ∈ 𝑆𝑂𝑆
(8.61)
151
146
9 CAPÍTULO
NUEVE
Alejandro Garcés Ruiz
Capítulo nueve
APROXIMACIONES CONVEXAS
Aproximaciones convexas
Una de las formas más simples y comúnmente usadas para encontrar modelos
convexos, consiste en la linealización de las restricciones no lineales; especialmente,
las restricciones de igualdad. Este enfoque es adecuado en espacios de baja curvatura
que puedan ser aproximados por un hiperplano. No obstante, muchos problemas
se mueven en rangos de operación en donde las linealizaciones son insuficientes
para modelar el problema. Además, el uso de linealizaciones puede ser innecesario,
ya que algunas restricciones no-lineales pueden ser transformadas en problemas
SDP o SOC. En algunos casos, la expansión de la función en polinomios de Taylor
puede ser truncada hasta obtener una ecuación cuadrática o incluso SOS. Estas son
tratables con las metodologías presentadas hasta el momento. La recomendación
153
148
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ḿın 𝑓(𝑥)
𝑥∈ℳ
(9.1)
Allí, 𝑓(𝑥) es una función convexa pero el espacio ℳ no es convexo. Una forma de
154
149
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
ḿın 𝑓(∆𝑥)
∆𝑥 ∈ 𝑇𝑥 ℳ
(9.2)
ℳ
𝑇𝑥
𝑥 ∆𝑥
𝑥′
Figura nro. 9.2. Retracción desde el espacio tangente 𝒯𝑥ℳ asociado al espacio ℳ.
𝑥⊺ 𝐻𝑥 = 1 (9.3)
Allí, 𝐻 es una matriz cuadrada. Ahora, definimos una nueva variable 𝑋 = 𝑥𝑥⊺ . Esta
última es una matriz cuadrada y simétrica.
Lema 9.1. La matriz 𝑋 = 𝑥𝑥⊺ es semidefinida positiva y de rango 1.
155
150
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑥⊺ 𝐻𝑥 = tr(𝐻𝑋) = 1
continuación:
𝑋⪰0
rango(𝑋) = 1
(9.4)
Una vez solucionado este problema, podemos proyectar la matriz 𝑋 sobre el espacio
original en busca de la matriz de rango 1 que más se acerque a 𝑋. Esto se traduce en el
siguiente problema de optimización:
2(𝑥𝑥⊺ − 𝑋)(2𝑥) = 0
cero. Veamos:
(9.7)
𝛼𝑥 − 𝑋𝑥 = 0 (9.8)
156
151
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
∑
de la diagonal son mayores o iguales a los términos fuera de la diagonal.
ḿın 𝑥⊺ 𝑄𝑥
𝑥 ∈ {1, −1}
(9.12)
157
152
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ḿın tr(𝑄𝑋)
diag(𝑋) = 𝑒
𝑋≻0
(9.13)
rango(𝑋) = 1
De otro lado, los problemas binarios {0, 1} también pueden ser relajados, generando
modelos de optimización semidefinida [20]; para ello, creamos una nueva variable 𝑦𝑖 =
(𝑥𝑖 +1)∕2; dado que 𝑥𝑖 toma valores ±1, entonces 𝑦𝑖 tomará valores {1, 0}. De este modo,
las restricciones del problema relajado serán
diag(𝑌) = 𝑦
158
153
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝐼 diag(𝑌)⊺
restricciones:
( )⪰0
diag(𝑌) 𝑌 (9.20)
𝑌⪰0
Finalmente, los métodos de programación lineal entera, tales como branch and
bound, y los cortes de Gomory pueden ser extendidos al caso de problemas convexos,
especialmente, en problemas cónicos. Un caso particular es el de optimización cónica
de segundo orden el cual presenta un bajo costo computacional, comparable al de los
problemas lineales pero, al mismo tiempo, mantiene la no linealidad del problema. El
estudio detallado de los problemas enteros-mixtos va más allá de los objetivos de este
libro, el lector interesado, puede revisar [21].
Este problema es, desde luego, no convexo a menos que 𝑝, 𝑔 y ℎ sean polinomios
SOS. No obstante, podemos generar problemas convexos aproximados mediante la
técnica de reformulación-linealización o RLT (reformulation-linearization technique
∏
generar una nueva restricción de la forma
(𝑥𝑖 − 𝑙𝑖 )(𝑢𝑖 − 𝑥𝑖 ) ≥ 0 (9.23)
159
154
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
3 𝒦
0 𝑥
0 1 2 3 4 5 6
ḿın 𝑥2 + 𝑦 2
𝑥2 − 3𝑥𝑦 + 8𝑥 − 2𝑦 2 + 16𝑦 − 26 ≥ 0
1∕2 ≤ 𝑥 ≤ 5
(9.24)
1≤𝑦≤6
160
155
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
del tipo 𝑧ḿın ≤ 𝑧𝑖 ≤ 𝑧𝑚𝑎𝑥 , las cuales se obtienen a partir de los límites inferiores y
En este punto, el problema es ilimitado así que incluimos restricciones adicionales
aumentar el orden de los polinomios 𝑢𝑖 y repetir el proceso. Esto ofrecerá una jerarquía
se presentó en el capítulo ocho. En caso de no encontrar una solución, podemos
de problemas SOS que se acerca cada vez más a la solución del problema original.
Desde luego, el tamaño del modelo equivalente de optimización semidefinida puede
crecer significativamente tal y como ocurre en la mayoría de problemas SOS. Esta es
la principal limitante de la metodología. Veamos el uso de la técnica a traves de un
ejemplo.
polinomios en 𝑥 y 𝑦:
el ejemplo anterior usando una relajación SOS, para ello definimos los siguientes
𝑓(𝑥, 𝑦) = 𝑥2 + 𝑦 2
𝑞1 (𝑥, 𝑦) = 𝑥2 − 3𝑥𝑦 + 8𝑥 − 2𝑦 2 + 16𝑦 − 16
𝑞2 (𝑥, 𝑦) = 𝑥 − 1∕2
𝑞3 (𝑥, 𝑦) = 5 − 𝑥
(9.28)
𝑞4 (𝑥, 𝑦) = 𝑦 − 1
𝑞5 (𝑥, 𝑦) = 6 − 𝑦
161
156
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
max
́ 𝜆
𝑓(𝑥, 𝑦) − 𝜆 = 𝑢0 (𝑥, 𝑦) + 𝑢1 (𝑥, 𝑦)𝑞1 (𝑥, 𝑦) + 𝑢2 (𝑥, 𝑦)𝑞2 (𝑥, 𝑦)+
𝑢3 (𝑥, 𝑦)𝑞3 (𝑥, 𝑦) + 𝑢4 (𝑥, 𝑦)𝑞4 (𝑥, 𝑦) + 𝑢5 (𝑥, 𝑦)𝑞5 (𝑥, 𝑦)
(9.30)
𝑢𝑖 (𝑥, 𝑦) ∈ 𝑆𝑂𝑆
Cada una de estas ecuaciones se debe expandir en terminos de 𝑎𝑘𝑚 , tal y como se
explicó en el capítulo ocho, garantizando que cada submatriz (𝑎𝑘𝑚 )𝑖 sea semidefinida
positiva. De esta forma, obtendremos el siguiente modelo SDP:
max
́ 𝜆
𝑎003
26𝑎001 − 𝑎000 − 𝜆 − 5𝑎002 + − 6𝑎004 + 𝑎005 = 0
2
𝑎004 − 16𝑎001 − 𝑎005 − 2𝑎010 + 52𝑎011 − 10𝑎012 + 𝑎013 − 12𝑎014 + 2𝑎015 = 0
2𝑎001 − 32𝑎011 + 2𝑎014 − 2𝑎015 − 𝑎020 + 26𝑎021 − 5𝑎022 +
𝑎023
− 6𝑎024 + 𝑎025 + 1 = 0
2
4𝑎011 − 16𝑎021 + 𝑎024 − 𝑎025 = 0
2𝑎021 = 0
𝑎002 − 8𝑎001 − 𝑎003 − 2𝑎100 + 52𝑎101 − 10𝑎102 + 𝑎103 − 12𝑎104 + 2𝑎105 = 0
3𝑎001 − 16𝑎011 + 2𝑎012 − 2𝑎013 − 32𝑎101 + 2𝑎104 − 2𝑎105 − 2𝑎110 +
52𝑎111 − 10𝑎112 + 𝑎113 − 12𝑎114 + 2𝑎115 = 0
6𝑎011 − 8𝑎021 + 𝑎022 − 𝑎023 + 4𝑎101 − 32𝑎111 + 2𝑎114 − 2𝑎115 = 0
3𝑎021 + 4𝑎111 = 0
2𝑎102 − 16𝑎101 − 𝑎001 − 2𝑎103 − 𝑎200 + 26𝑎201 − 5𝑎202 +
𝑎203
− 6𝑎204 + 𝑎205 + 1 = 0
2
6𝑎101 − 2𝑎011 − 16𝑎111 + 2𝑎112 − 2𝑎113 − 16𝑎201 + 𝑎204 − 𝑎205 = 0
6𝑎111 − 𝑎021 + 2𝑎201 = 0
𝑎202 − 8𝑎201 − 2𝑎101 − 𝑎203 = 0
3𝑎201 − 2𝑎111 = 0
− 𝑎201 = 0
(𝑎𝑘𝑚 )𝑖 ⪰ 0 ∀𝑘, 𝑚 ∈ {1, 2, 3} , 𝑖 ∈ {0, … , 5}
(9.31)
162
157
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Las relajaciones SOS son mucho mas precisas que las linealizaciones; aunque, el
esfuerzo computacional, asociado a las restricciones semidefinidas, puede ser elevado.
Un punto intermedio consiste en reemplazar las restricciones semidefinidas por
restricciones SOC, tal y como se presentó en la ecuación 9.10.
𝜇(𝒦) ≥ 0
𝜇(∅) = 0
(9.32)
geométrica, pues un estudio detallado de dichos conceptos nos apartarian de nuestro objetivo. El lector
interesado puede visitar [15] y [23].
163
158
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝐴 1 𝐵 1 𝐶 1 𝐷
1 2 2
ser interpretada como una medida 𝜇 con la propiedad adicional de que 𝜇(𝒦) = 1; es
decir, la medida de todo el espacio es igual a uno.
Existe una formulación dual, asociada a la aproximación SOS del problema 9.21
definiendo el equivalente:
𝑝̃ = ı́ nf {∫ 𝑝𝑑𝜇 ∶ 𝜇(𝒦) = 1}
𝜇∈ℳ(𝒦)
(9.35)
𝒦
∫ 𝑝𝑑𝜇 ≥ ∫ 𝑝𝑑𝜇
̃ (9.36)
𝒦 𝒦
∫ 𝑝𝑑𝜇 ≥ 𝑝̃ ∫ 𝑑𝜇 = 𝑝̃ (9.37)
𝒦 𝒦
La última igualdad se debe a que 𝜇(𝒦) = 1, así que si tomamos el ínfimo respecto
a 𝜇, tenemos lo siguiente:
ı́ nf {∫ 𝑝𝑑𝜇} ≥ 𝑝̃
𝜇∈ℳ
(9.38)
𝒦
ℒ = ∫ 𝑝𝑑𝜇 − 𝜆 (∫ 𝑑𝜇 − 1) (9.39)
𝒦 𝒦
164
159
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
sup {𝜆 ∶ 𝑝(𝑥) − 𝜆 = 0; 𝑥 ∈ 𝒦}
𝑥,𝜆
(9.40)
∑
𝕃(𝑝) = 𝑚𝛼𝑘 𝕃(𝑥𝛼𝑘 )
de donde obtenemos
(9.45)
165
160
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ḿın 𝕃(𝑝)
𝕃(𝑝) = 1
𝕃(𝑞2 𝑔𝑖 ) = 0
(9.47)
𝕃(𝑞2 ℎ𝑖 ) ≥ 0
garantizan que 𝑦 sea una secuencia de momentos asociado al espacio 𝒦. Esta secuencia
La metodología consiste en generar una jerarquía de polinomios SOS que
ḿın 𝕃(𝑝)
problema equivalente como
𝑀𝑖 (𝑦) ⪰ 0
𝑦0 = 1
(9.51)
166
161
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
ḿın 𝕃(𝑝)
𝑀𝑖 (𝑦) ⪰ 0
𝑀𝑖 (𝑔𝑦) = 0
𝑀𝑖 (ℎ𝑦) ⪰ 0
(9.52)
𝑦0 = 1
162
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
6𝑀 − 𝑀𝑦 ⪰ 0
𝑀𝑥2 − 3𝑀𝑥𝑦 + 8𝑀𝑥 − 2𝑀𝑦2 + 16𝑀𝑦 − 26𝑀 ⪰ 0
𝑦00 = 1
168
163
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
9.8. Ejercicios
ḿın 3𝑥2 + 2𝑦 2
𝑥2 − 10𝑥 + 𝑦 2 − 16𝑦 + 𝑧2 + 4𝑧 + 92 = 0 0.5 ≤ 𝑧 ≤ 1
(9.59)
𝑀 = 𝐼 + 𝑥𝐴 + 𝑦𝐵 (9.60)
los puntos 𝑥 y 𝑦 que hacen que 𝑀 sea semidefinida positiva. Mostrar del mismo
modo los puntos que hacen que 𝑀 sea diagonalmente dominante y aquellos que
cumplan la ecuación 9.10.
⎛ 80 96 73 58 144 ⎞
⎜ 96 202 126 60 193 ⎟
𝑄=⎜ 73 126 117 47 186 ⎟
⎜ 58 60 47 56 112 ⎟
(9.62)
ḿın 𝑥 + 𝑦
soluciones.
𝑥2 + 𝑦 − 8 ≥ 0
− 𝑥 + 𝑦2 + 1 ≥ 0 (9.63)
1 ≤ 𝑥 ≤ 10
2≤𝑦≤8
169
164
TERCERA PARTE
APLICACIONES EN OPERACIÓN
Y CONTROL DE SISTEMAS DE
POTENCIA
10 CAPÍTULO
DIEZ
Alejandro Garcés Ruiz
Capítulo diez
OPERACIÓN DE SISTEMAS DE
POTENCIA
Operación de sistemas de
potencia
173
167
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
∑
ḿın 𝑓𝑖 (𝑝𝑖 )
∑
𝑖
𝑝𝑖 = 𝑑 (10.1)
𝑖
𝑝𝑚𝑖𝑛 ≤ 𝑝𝑖 ≤ 𝑝𝑚𝑎𝑥
1 Aunque el flujo de carga óptimo es un problema operativo, hemos decidido incluir un capítulo exclusivo para
este problema debido a su importancia en sistemas de potencia y a los avances recientes en optimización
convexa, aplicados a este modelo.
174
168
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
∑∑
modelo clásico de despacho hidrotérmico, a saber:
ḿın 𝑓𝑖 (𝑝𝑖𝑡 )
∑ ∑
𝑡 𝑖
𝑝𝑖𝑡 + 𝑝𝑗𝑡 = 𝑑𝑡 ∀𝑡 ∈ 𝒯
𝑖 𝑗
𝑑𝑡 como las afluencias 𝑎𝑗𝑡 son variables aleatorias. En todos los casos, se pueden
los casos, el problema se hace estocástico si se tienen en cuenta que tanto la demanda
usar aproximaciones robustas como las presentadas en el capítulo seis. En el caso del
despacho de corto plazo, podemos además utilizar un esquema de receding horizon
en que se tiene un modelo de predicción sobre una ventana de tiempo, el cual será
solucionado iterativamente usando el modelo convexo3 .
en el capítulo trece
175
169
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
A B
1 2 3 4 5 6 7
200 MW max
300 MW 200 MW
C
500 MW
Figura nro. 10.1. Modelo de despacho económico por áreas, considerando restricciones de red
con el modelo de transportes.
Ahora bien, consideremos una red de potencia con tres áreas de operación,
como se muestra en la Figura nro. 10.1, en donde las líneas son representadas
exclusivamente por su capacidad de potencia. El problema de despacho económico se
plantea considerando estas restricciones:
176
170
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
(es decir {𝑝𝐴𝐵 , 𝑝𝐵𝐶 , 𝑝𝐴𝐶 }). Estas restricciones son lineales por lo que el problema se
restricciones del flujo de potencia, asociadas a la transferencia de potencia entre áreas
mantiene convexo.
𝑝 = 𝑓𝑃 (𝑣, 𝜃)
ecuaciones, de la forma:
𝑞 = 𝑓𝑞 (𝑣, 𝜃)
(10.4)
en donde 𝑝 y 𝑞 son las potencias activas y reactivas en cada nodo. Estas ecuaciones
entran como restricciones al problema de despacho económico y al problema de flujo
de carga óptimo. Este último consiste en minimizar las pérdidas del sistema, sujeto a
las restricciones físicas de la red, como se muestra a continuación:
𝑞 = 𝑓𝑞 (𝑣, 𝜃)
𝑝𝑚𝑖𝑛 ≤ 𝑝 ≤ 𝑝𝑚𝑎𝑥
𝑞𝑚𝑖𝑛 ≤ 𝑞 ≤ 𝑞𝑚𝑎𝑥 (10.5)
𝑣𝑚𝑖𝑛 ≤ 𝑣 ≤ 𝑣𝑚𝑎𝑥
𝜃𝑚𝑖𝑛 ≤ 𝜃 ≤ 𝜃𝑚𝑎𝑥
𝜃0 = 0
177
171
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Las cargas fijas son aquellas que no pueden ser controladas, ya sea por sus
características técnicas o bien por su importancia para el usuario. Un hospital
es un buen ejemplo de una carga fija en un sistema de distribución. A nivel de
usuario final, una carga fija puede ser un proceso importante y continuo en una
fábrica, el sistema de seguridad de un banco o la alimentación de los servidores
en un data-center.
Las cargas continuamente controlables son cargas con alguna interfaz basada en
electrónica de potencia que permite un control fino de la potencia consumida. El
tipo de carga más común de este tipo son los variadores de velocidad en usuarios
industriales y algunos sistemas de aire acondicionado en usuarios comerciales.
Las cargas desplazables son cargas que se pueden trasladar en el tiempo, por
ejemplo, una lavadora de un usuario residencial. El reto en el modelado de este
tipo de cargas consiste en que debe permitir un movimiento como bloque a través
del tiempo; esto significa que una vez iniciado el proceso no se puede interrumpir.
Muchos procesos industriales tienen esta característica por lo que estas cargas
son particularmente importantes en este tipo de aplicaciones.
178
172
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
∑∑
ḿın 𝑐𝑖𝑡 𝑝𝑖𝑡
continuación:
∑
𝑡 𝑖
(𝑝̄ 𝑖𝑡 − 𝑝𝑖𝑡 ) = 𝑑𝑡 (10.6)
𝑡
0 ≤ 𝑝𝑖𝑡 ≤ 𝑝̄ 𝑖𝑡
Agregador
Figura nro. 10.2. Esquema V2G con un agregador que centraliza las acciones de control y
resuelve problemas de optimización convexa en tiempo real.
179
173
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
180
174
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝐼 = 𝑌𝑉
𝐼𝑚𝑖𝑛 ≤ 𝐼 ≤ 𝐼𝑚𝑎𝑥
(10.7)
𝑉𝑚𝑖𝑛 ≤ 𝑉 ≤ 𝑉𝑚𝑎𝑥
Medición
ac
dc Master (𝑣)
switch
1 6
2 5
7
4 3
9
10 8
11
16
15
14 12
13
1
ḿın 𝑓(𝑌) = ‖𝐼 − 𝑌𝑉‖𝐹
2
𝑌 2
(10.8)
181
175
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
(𝑉𝑉 ⊺ )𝑌 − 𝑉𝐼 ⊺ (10.9)
estructura de la matriz 𝑌; por ejemplo, sabemos que la matriz es simétrica y que algunas
Una modificación al problema consiste en incluir información disponible de la
1
ḿın 𝑓(𝑌) = ‖𝐼 − 𝑌𝑉‖𝐹
𝑌 2
𝑦𝑖𝑗 = 𝑦𝑗𝑖 , ∀𝑖, 𝑗 (10.11)
4 De hecho, la función objetivo puede ser cualquier norma; no obstante, la derivada de la norma de Frobenius
182
176
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
ḿın 𝑓𝐿 (𝑝, 𝑞)
(∑ )
ℎ(𝑣) = 𝑀𝑘 𝑥𝑘 𝑠
∑
𝑥𝑘 = 1
(10.14)
𝑥𝑘 ∈ {0, 1}
183
177
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
10.9. Ejercicios
𝑓1 = 0.0054𝑝12 + 11.67𝑝1 + 5
𝑓1 = 0.0088𝑝22 + 11.33𝑝2 + 10
(10.15)
varía entre 310 × 104 m3 y 670 × 104 m3 . Determinar el despacho óptimo para una
El sistema hídrico está representado por un reservorio equivalente cuyo volumen
184
178
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Tabla nro. 10.2. Generación solar y precio de bolsa para la micro-red del ejercicio 1.
185
179
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑣1 𝑣2 𝑣2 𝑖1 𝑖2 𝑖3
1.0000 1.0000 1.0000 1.0000 1.0000 0.6667
1.0000 1.0100 0.9900 0.9667 1.2100 0.4933
0.8000 0.9500 1.0100 -2.1000 2.1500 2.3733
0.9300 0.8500 0.9700 1.4633 -0.5500 1.5133
0.9800 0.9700 0.9500 1.2800 0.9700 0.3333
1.1200 0.9000 1.0500 3.7867 -2.0500 0.9833
1.0200 1.0000 1.0100 1.2867 0.7500 0.6567
Tabla nro. 10.3. Mediciones de voltaje y corriente en una micro-red dc para diferentes puntos
de operación.
186
180
11 CAPÍTULO
ONCE
Alejandro Garcés Ruiz
Capítulo once
APROXIMACIÓN CONVEXA AL
FLUJO DE CARGA
Aproximaciones convexas al
flujo de carga
187
182
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ḿın 𝑓(𝑧)
𝑔(𝑧) = 0
ℎ(𝑧) ≤ 0
(11.1)
conjunto ordenado; por tal razón, la imagen de 𝑓 debe estar sobre los reales. Lo mismo
Como se mencionó en el capítulo uno, el espacio de la función objetivo debe ser un
se aplica a ℎ para que la desigualdad tenga sentido. La formulación compleja es, por
ende, solo una representación del problema, la cual puede resultar conveniente en el
momento de implementarla computacionalmente y de hacer análisis de los resultados.
No obstante, la solución del modelo se realiza separando en parte real e imaginaria y,
por consiguiente, el problema se soluciona en los reales. Es importante destacar que la
mayoría de lenguajes modernos admiten una representación compleja de los problemas
de optimización; no obstante, se deben cumplir las condiciones de la definición 11.1.
𝑓(𝑧) − 𝑓(𝑧0 )
𝑓 ′ (𝑧) = ĺım
𝑧→𝑧0 𝑧 − 𝑧0
(11.2)
Figura nro. 11.1. Una función es holomorfa (o análitica sobre los complejos) si el
límite es el mismo sin importar la dirección.
Teorema 11.1. Una función compleja 𝑓 = 𝑢(𝑥, 𝑦) + 𝑗𝑣(𝑥, 𝑦) es holomorfa si cumple
las condiciones de Cauchy-Riemann [ver [34]], a saber:
𝜕𝑢 𝜕𝑣
=
𝜕𝑥 𝜕𝑦
𝜕𝑢 𝜕𝑣
=−
(11.3)
𝜕𝑦 𝜕𝑥
188
183
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
∆𝑧
𝑠𝑘 ∗ ∑
𝑛
( ) = 𝑦𝑘𝑚 𝑣𝑚 , ∀𝑘 ∈ 𝒩
𝑣𝑘
(11.5)
𝑚=0
189
184
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
1
ḿın 𝑥⊺ 𝐻𝑥
2
𝑥⊺ 𝐵𝑥 = 1
(11.6)
en la sección 9.3, en donde 𝑋 es ahora la variable de decisión1 . Haciendo uso del Lema
9.1 establecemos el siguiente problema de optimización:
1
ḿın tr(𝐻𝑋)
2
tr(𝐵𝑋) = 1
𝑋⪰0
(11.7)
Rango(𝑋) = 1
∑
𝑛
𝑝𝑘 − 𝑗𝑞𝑘 = (𝑒𝑘 − 𝑗𝑓𝑘 )(𝑔𝑘𝑚 + 𝑗𝑏𝑘𝑚 )(𝑒𝑚 + 𝑗𝑓𝑚 )
𝑚=0
∑𝑛
𝑝𝑘 = 𝑔𝑘𝑚 𝑒𝑘 𝑒𝑚 + 𝑔𝑘𝑚 𝑓𝑘 𝑓𝑚 − 𝑏𝑘𝑚 𝑓𝑚 𝑒𝑘 + 𝑏𝑘𝑚 𝑒𝑚 𝑓𝑘 (11.8)
𝑚=0
∑𝑛
−𝑞𝑘 = 𝑔𝑘𝑚 𝑓𝑘 𝑒𝑚 − 𝑏𝑘𝑚 𝑒𝑚 𝑒𝑘 + 𝑔𝑘𝑚 𝑒𝑚 𝑓𝑘 − 𝑏𝑘𝑚 𝑓𝑚 𝑓𝑘
𝑚=0
1 Como se puede observar, 𝑥 ⊺ 𝑥 es un escalar; sin embargo, 𝑥𝑥⊺ es una matriz cuadrada, tal que 𝑥𝑘𝑚 = 𝑥𝑘 𝑥𝑚 .
190
185
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝐸𝑘𝑚 = 𝑒𝑘 𝑒𝑚
variables, a saber:
𝐹𝑘𝑚 = 𝑓𝑘 𝑓𝑚
𝑍𝑘𝑚 = 𝑒𝑘 𝑓𝑚 − 𝑒𝑚 𝑓𝑘
(11.9)
𝑄𝐺 ≥ 𝑄𝑚𝑖𝑛
𝐸⪰0
𝐹⪰0
rango(𝐸) = 1
rango(𝐹) = 1
rango(𝑍) = 2
semidefinida.
Las variables originales pueden ser recuperadas teniendo en cuenta que cada matriz
semidefinida se puede factorizar de la siguiente forma:
∑
𝑛
𝑋= 𝜆𝑀𝑖 𝑀𝑖
⊺
(11.11)
𝑖=0
191
186
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Las aproximaciones SOC son una alternativa más eficiente computacionalmente para
solucionar el problema de flujo de carga en sistemas de distribución radial. La
formulación se basa en el flujo de potencia por las líneas, tal y como se muestra en
la Figura nro. 11.2
𝑘 𝑆𝐸 (𝑖) 𝑆𝑅 (𝑖) 𝑚
𝑦𝑖
de rama 𝑤𝑖 = 𝑣𝑘 𝑣𝑚
∗
, las cuales nos generan el siguiente conjunto de ecuaciones afín
𝑆𝐸(𝑖) = 𝑦𝑖∗ 𝑢𝑘 − 𝑤𝑖 𝑦𝑖∗
𝑆𝑅(𝑖) = 𝑦𝑖∗ 𝑢𝑚 − 𝑤𝑖∗ 𝑦𝑖∗
(11.14)
Nótese que 𝑤𝑖 es una variable real asociada a cada línea, mientras que 𝑢𝑘 es real y se
𝑤𝑖 = 𝑣𝑘 𝑣𝑚
∗
𝑤𝑖 𝑤𝑖∗ = 𝑣𝑘 𝑣𝑚 𝑣𝑘 𝑣𝑚
∗ ∗
‖𝑤𝑖 ‖ = 𝑢𝑘 𝑢𝑚
2
‖𝑤𝑖 ‖ ≤ 𝑢𝑘 𝑢𝑚
2
‖‖ ‖‖
‖‖ 2𝑤𝑖 ‖
‖‖( )‖‖‖ ≤ 𝑢𝑘 + 𝑢𝑚
‖‖ 𝑢𝑘 − 𝑢𝑚 ‖‖
(11.16)
‖ ‖
192
187
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
‖𝑆𝐺 ‖ ≤ 𝑆𝑚𝑎𝑥
‖‖ ‖‖
‖‖ 2𝑤𝑖 ‖
‖‖( )‖‖‖ ≤ 𝑢𝑘 + 𝑢𝑚
‖‖ 𝑢𝑘 − 𝑢𝑚 ‖‖
‖ ‖
real(𝑆𝐸 + 𝑆𝑅 ) ≥ 0
√
𝑣 𝑘 = 𝑢𝑘
𝜃𝑘𝑚 = angulo(𝑤𝑖 ), con 𝑖 = (𝑘𝑚)
(11.18)
Existen múltiples variantes a esta metodología, pero en todos los casos se parte de
la aproximación hiperbólica de las restricciones no convexas2 .
Otra forma de considerar las ecuaciones de flujo de carga es mediante una linealización
realizada directamente sobre los complejos [36]. Para esto utilizamos el concepto de
derivada de Wirtinger.
Definición 11.3. Derivadas de Wirtinger. Dada una función compleja 𝑓 = 𝑢(𝑥, 𝑦)+
𝑗𝑣(𝑥, 𝑦) con 𝑧 = 𝑥 + 𝑗𝑦, definimos la derivada simple y la derivada conjugada de
Wirtinger como sigue:
𝜕𝑓 1 𝜕𝑢 𝜕𝑣 𝑗 𝜕𝑣 𝜕𝑢
= ( + )+ ( − )
𝜕𝑧 2 𝜕𝑥 𝜕𝑦 2 𝜕𝑥 𝜕𝑦
𝜕𝑓 1 𝜕𝑢 𝜕𝑣 𝑗 𝜕𝑣 𝜕𝑢
= ( − )+ ( + )
(11.19)
𝜕𝑧∗ 2 𝜕𝑥 𝜕𝑦 2 𝜕𝑥 𝜕𝑦
2 En [35] se pueden encontrar más detalles.
193
188
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝜕𝑧 𝜕𝑧 𝜕𝑧
𝜕(𝑓 ⋅ 𝑔) 𝜕𝑔 𝜕𝑓
=𝑓 ∗ +𝑔 ∗
𝜕𝑧∗ 𝜕𝑧 𝜕𝑧
𝜕 ∗ 𝜕
𝑧 = ∗𝑧 = 0
𝜕𝑧 𝜕𝑧
(11.21)
usando la Definición 11.3. Sea 𝑓(𝑧) = 𝑘𝑧, en donde 𝑘 ∈ ℝ es una constante, las
Ejemplo 11.1. Las condiciones del Teorema 11.2 se pueden demostrar fácilmente
De igual forma,
194
189
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
√
Ejemplo 11.2. Consideremos la función 𝑓 = 𝑧𝑧∗ ,
𝜕𝑓 𝑧∗
= √
𝜕𝑧 2 𝑧𝑧∗
𝜕𝑓 𝑧
= √
(11.24)
𝜕𝑧∗ 2 𝑧𝑧∗
195
190
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑆 ∗ = 𝐻𝑉𝑁 ∗
+ 𝑀𝑉𝑁 + 𝑇
ecuación:
(11.29)
𝑀 = diag(𝑉𝑁0
∗
) ⋅ 𝑌𝑁𝑁
𝑇= − diag(𝑉𝑁0 ) ⋅ (𝑌𝑁𝑁 ⋅ 𝑉𝑁0 )
(11.30)
∗
Esta aproximación se decanta en una restricción afín que puede ser incluida en
cualquier modelo de optimización convexa; por ejemplo, en el problema de flujo de
carga óptimo, como se muestra a continuación:
real(𝑆𝑘 ) ≤ 𝑃𝑘(𝑚𝑎𝑥)
196
191
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
para sistemas de distribución desbalanceados. Las redes DC también son sujetas a este
tipo de análisis; por ejemplo, en [46], se presenta una linealización del flujo de carga
tanto en redes DC multiterminal como en micro-redes DC; y en [47], se muestra la
formulación secuencial de este problema.
11.7. Ejercicios
197
192
12 CAPÍTULO
DOCE
Alejandro Garcés Ruiz
Capítulo doce
DINÁMICA Y ESTABILIDAD DE
SISTEMAS ELÉCTRICOS
Dinámica y estabilidad de
sistemas eléctricos
199
194
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
con modelos simplificados. No obstante, las técnicas a presentar en este capítulo son
generales para problemas más complejos.
𝑑𝜔
𝑀 = 𝑝𝑀 − 𝑝𝐸 (𝛿) − 𝜉∆𝜔
𝑑𝑡
𝑑𝛿
=𝜔
(12.1)
𝑑𝑡
Ejemplo 12.1. Una máquina síncrona se conecta a un barraje infinito, como se muestra
en la Figura nro. 12.1, en donde las tensiones tanto del barraje como del generador
son 1 pu. En este caso, la potencia eléctrica está dada por:
𝐸𝐵
𝑉1 𝑉2 𝑉3
Barraje
𝑥𝐿 = 0.4 1∠0
Infinito
𝑥𝑇 = 0.1 𝑥𝑇 = 0.1
𝑀 = 6, 𝑥′ = 0.2
Máquina sincrona
Figura nro. 12.1. Ejemplo de una máquina síncrona conectada a un barraje infinito.
200
195
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑥̇ = 𝐴𝑥 + 𝐵𝑢 (12.4)
Aquí, 𝑥 son las variables de estado y 𝑢 son las variables de control. El problema de
control de área amplia consiste en determinar la forma de realimentar 𝑢 con el fin de
llevar al sistema a un punto estable deseado. ■
enlaces existentes. En su versión más simple, los cables son representados por el efecto
resistivo y los convertidores por el efecto capacitivo más la inyección de potencia. De
esta forma, la dinámica del sistema tiene la siguiente estructura:
𝑑𝑣𝑘 𝑝𝑘 − 𝜉𝑘 (𝑣𝑘 − 1) ∑
𝑛
𝑐𝑘 = − 𝑔𝑘𝑚 𝑣𝑚
𝑑𝑡 𝑣𝑘
(12.5)
𝑚=1
𝑥̇ = 𝑓(𝑥) (12.6)
Decimos que este punto es Lyapunov estable, si para ∀𝜖 > 0 existe un 𝛿 = 𝛿(𝜖) >
0, tal que si ‖𝑥(𝑡) − 𝑥0 ‖ ≤ 𝛿 entonces ‖𝑥(𝑡)‖ , ∀𝑡 ≥ 0.
201
196
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ĺım𝑡→+∞ 𝑥(𝑡) = 𝑥0 .
Decimos que el punto es asintóticamente estable, si es Lyapunov estable y además
𝑥𝑖 +∞
𝑥𝐴 𝑥𝐵 𝑥𝐶
𝑥𝑖
𝑉(𝑥0 ) = 0
𝑉(𝑥) > 0, ∀𝑥 ≠ 𝑥0
̇
𝑉(𝑥) ≤ 0, ∀𝑥 ∈ ℬ
(12.7)
̇
Entonces podemos decir que 𝑓 es estable. Además, si 𝑉(𝑥) < 0, el sistema es
asintóticamente estable.
Las condiciones asociadas a este teorema son suficientes pero no necesarias. Así
pues, una función que no cumpla las tres condiciones no implica que el sistema sea
inestable; en cambio, puede implicar que requerimos buscar otra función de Lyapunov.
202
197
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
1
𝑉(𝑥) = 𝑥⊺ 𝐻𝑥
2
(12.8)
Esta cumple las dos primeras condiciones del teorema de Lyapunov para 𝑥0 = 0, si
𝐻 = 𝐻 ⊺ ≻ 0. La tercera condición se puede determinar de la siguiente forma:
̇
𝑉(𝑥) = 𝑥⊺ 𝐻 𝑥̇ + 𝑥̇ ⊺ 𝐻𝑥
= 𝑥⊺ 𝐻𝐴𝑥 + 𝑥⊺ 𝐴⊺ 𝐻𝑥
= 𝑥⊺ (𝐻𝐴 + 𝐴⊺ 𝐻)𝑥 ≤ 0
(12.9)
∴𝐻𝐴 + 𝐴⊺ 𝐻 ⪯ 0
lineal 𝑥̇ = 𝐴𝑥, puede ser resuelto mediante el siguiente problema de factibilidad sobre
Así que el problema asociado a encontrar una función de Lyapunov del sistema
𝐻𝐴 + 𝐴⊺ 𝐻 ⪯ 0
un spectraedro.
𝐻⪰0
(12.10)
𝐻𝐴 + 𝐴⊺ 𝐻 ⪯ 0
𝐻 ⪰ 𝜇𝐼
(12.11)
𝑥̇ = 𝐴𝑥 + 𝐵𝑢
el sistema lineal
(12.12)
Para ello, definimos una función de Lyapunov cuadrática tal y como en el ejemplo
203
198
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Este sistema es no-convexo ya que tanto 𝐻 como 𝐾 son incóngnitas. Para encontrar
una representación convexa, premultiplicamos por 𝑄 = 𝐻 −1 (aprovechando que 𝐻 es
definida positiva y, por tanto, tiene inversa) y definimos una nueva variable 𝑌 = 𝐾𝑄.
Esto permitirá obtener el siguiente conjunto:
𝐴𝑄 + 𝐵𝑌 + 𝑄𝐴⊺ + 𝑌 ⊺ 𝐵⊺ ⪯ 0
𝑄 ⪰ 𝜇𝐼
(12.14)
1 𝑥⊺
( )≻0
𝑥 𝑄
(12.16)
𝑄−1 𝑌 ⊺ 𝑌𝑄−1
1 − 𝑥⊺ ( )𝑥 ≥ 0
𝜇2
1 𝑥⊺
( )≻0
𝑥 𝑍
(12.18)
204
199
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
−1
𝑄−1 𝑌 ⊺ 𝑌𝑄−1
Con
𝑍=( )
𝜇2
(12.19)
{ }
Este corresponde a un elipsoide que se define de la siguiente forma:
ℰ𝑧 = 𝑥0 ∈ ℝ𝑛 ∶ 𝑥0 𝑍 −1 𝑥0 ≤ 1, 𝑍 ≻ 0
⊺
(12.20)
𝑄−1 ⪰ 𝑍 −1
𝑄−1 𝑌 ⊺ 𝑌𝑄−1
𝑄−1 − ⪰0
𝜇2
𝜇𝐼 − 𝑌 ⊺ 𝑌𝑄−1 ⪰ 0
𝜇𝑄 − 𝑌 ⊺ 𝑌 ⪰ 0
(12.21)
𝑄 𝑌⊺
( )≻0
𝑌 𝜇2 𝐼
La técnica de SOS puede ser utilizada para generar función de Lyapunov en problemas
polinomicos. Consideremos un sistema no-lineal en una variable
𝑥̇ = 𝑝(𝑥) (12.22)
Aquí, 𝑝(𝑥) es un polinomio con coeficientes reales. Ahora, definimos una función
de Lyapunov 𝑉(𝑥) = 𝑚(𝑥)⊺ 𝑄𝑚(𝑥) ∈ SOS, tal que 𝑉(0) = 0. De esta forma, cumplimos
las dos primeras condiciones para garantizar estabilidad en el sentido de Lyapunov. En
este punto, solo debemos comprobar que la derivada sea negativa, es decir:
̇
𝑉(𝑥) ≤0 (12.23)
Una forma de garantizarlo es haciendo que −𝑉̇ ∈ 𝑆𝑂𝑆. Esto nos genera una
serie de restricciones semidefinidas. El procedimiento es simplemente formular estas
restricciones. En caso de encontrar una solución factible, podemos garantizar que el
sistema sea estable.
205
200
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑥̇ = −𝑥 − 𝑥2 𝑦
𝑦̇ = −𝑦 + 𝑥3
(12.24)
Para ello, proponemos una función de Lyapunov de forma 𝑉 = 𝑚(𝑥, 𝑦)⊺ 𝑄𝑚(𝑥, 𝑦),
𝑦
Politope de 𝑟(𝑥) Politope de 𝑉̇
4
𝑥
1 2 3 4 5 6
206
201
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
⎛ 1 0 0 ⎞
cvx. El resultado es
𝑄=⎜ 0 2 0 ⎟
⎝ 0 0 1 ⎠
(12.29)
𝑑𝑥 𝜕𝜙
representada como
𝑀(𝑥) =−
𝑑𝑡 𝜕𝑥
(12.31)
Demostración. Primeramente, nótese que el equilibrio está dado por los puntos que
𝜕𝜙
cumplen la condición
=0
𝜕𝑥
(12.32)
la cual corresponde al mínimo de la función 𝜙(𝑥). Este punto es el único mínimo global
debido a que la función es estrictamente convexa.
207
202
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝜕𝜙 𝜕𝜙
⊺
𝑉̇ = − ( ) 𝑀(𝑥)−1 ( ) < 0
𝜕𝑥 𝜕𝑥
(12.34)
Esta resulta en una función negativa. Cabe anotar que 𝑀(𝑥) ≻ 0 y, por tanto,
podemos garantizar que la inversa existe.
admitancia nodal 𝑔𝑘𝑚 es de tamaño 3 × 3. El modelo dinámico del sistema puede ser
eliminados mediante la técnica de reducción de Kron, por lo que la matriz de
𝑑𝑡 𝑣2
𝑝1 ∕𝑣12 0 𝑔 𝑔
( ) + ( 11 12 ) ≻ 0
0 𝑝2 ∕𝑣22 𝑔21 𝑔22
(12.37)
0, lo cual se ajusta a nuestra intuición del problema. De esta índole, esperamos que el
■
con la condición 12.37. En este espacio, podemos garantizar existencia del equilibrio y
la estabilidad transitoria.
208
203
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Optimización Convexa Alejandro Garcés Ruiz
12.7. Ejercicios
función ODE45 de Matlab para diferentes condiciones iniciales, tales que |𝑥0 | <
2. Mostrar el comportamiento dinámico del sistema en lazo cerrado usando la
2.
Lyapunov. Usar una función polinomial SOS con 𝑝(𝑥) = [𝑥2 , 𝑦 2 , 𝑥𝑦, 𝑥, 𝑦]. Usar
3. Demostrar estabilidad del siguiente sistema diámico usando el criterio de
𝑥̇ = −𝑥 + 𝑦 + 𝑥 ⋅ 𝑦
𝑦̇ = −𝑥 − 𝑥2
(12.39)
209
204
Alejandro Garcés Ruiz
Alejandro Garcés Ruiz Optimización Convexa
𝑝1 = −5, 𝑝2 = 3
𝑝1 = 5, 𝑝2 = −3
𝑝1 = −5, 𝑝2 = −3
Determine la región de atracción en caso de ser estable.
210
205
13 CAPÍTULO
TRECE
Alejandro Garcés Ruiz
Capítulo trece
CONTROL PREDICTIVO BASADO EN
EL MODELO
Control predictivo basado en el
modelo
211
207
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
horizonte de tiempo 𝑇, como se muestra en la Figura nro. 13.1. La idea básica detrás
y para ello convertimos el problema de control en uno de optimización sobre un
𝑥
Ventana de predicción 𝑥𝑟𝑒𝑓
el modelo, es que la predicción se hace con el mismo modelo del sistema, es decir, con
la ecuación 13.1. No obstante, la estrategia de receding horizon puede ser usada en un
contexto más amplio. Por ejemplo, podemos considerar un problema de operación de
un sistema con alta penetración de generación eólica y solar fotovoltaica. En este caso,
podemos integrar diferentes elementos, presentados en el capítulo nueve, en donde la
medición se realiza por medio de un estimador de estado y la optimización por medio de
un despacho económico. La etapa de predicción se puede realizar mediante cualquier
técnica inteligente como redes neuronales o mediante modelos auto-regresivos.
212
208
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝜌(𝑘 + 1)
𝜌(𝑘 + 2)
Predicción … Optimización
𝑦(𝑘)
Medición y/o
Sistema Real
Estimación
𝑦(𝑘) = 𝐶𝑥(𝑘)
(13.2)
1 ∑
𝑘+𝑁−1
𝐽(𝑘) = (𝑦(𝑘+𝑚)−𝑟(𝑘+𝑚))⊺ (𝑦(𝑘+𝑚)−𝑟(𝑘+𝑚))+𝑢(𝑘+𝑚)⊺ 𝑄𝑢(𝑘+𝑚) (13.3)
2 𝑚=𝑘+1
213
209
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
⎛ 𝑥(𝑘 + 1) ⎞ ⎛ 𝐴 ⎞ ⎛ 𝐵 0 0 0 0 ⎞⎛ 𝑢(𝑘) ⎞
⎜ 𝑥(𝑘 + 2) ⎟ ⎜ 𝐴2 ⎟ ⎜ 𝐴𝐵 𝐵 0 0 0 ⎟⎜ 𝑢(𝑘 + 1) ⎟
⎜ 𝑥(𝑘 + 3) ⎟=⎜ 𝐴3 ⎟ 𝑥(𝑘) + ⎜ 𝐴2 𝐵 𝐴𝐵 𝐵 0 0 ⎟⎜ 𝑢(𝑘 + 2) ⎟ (13.6)
⎜ 𝑥(𝑘 + 4) ⎟ ⎜ 𝐴4 ⎟ ⎜ 𝐴3 𝐵 𝐴2 𝐵 𝐴𝐵 𝐵 0 ⎟⎜ 𝑢(𝑘 + 3) ⎟
⎝ 𝑥(𝑘 + 5) ⎠ ⎝ 𝐴5 ⎠ ⎝ 𝐴4 𝐵 𝐴3 𝐵 𝐴2 𝐵 𝐴𝐵 𝐵 ⎠⎝ 𝑢(𝑘 + 4) ⎠
Cabe recordar que cada 𝑥 es en realidad un vector y, por tanto, la matriz puede
resultar de grandes dimensiones. Ahora, podemos relacionar las salidas 𝑦 con las
entradas 𝑢, como sigue:
⎛ 𝑦(𝑘 + 1) ⎞ ⎛ 𝐶𝐴2 ⎞
⎜ 𝑦(𝑘 + 2) ⎟ ⎜ 𝐶𝐴3 ⎟
⎜ 𝑦(𝑘 + 3) ⎟ = ⎜ 𝐶𝐴 ⎟ 𝑥(𝑘)+
⎜ 𝑦(𝑘 + 4) ⎟ ⎜ 𝐶𝐴4 ⎟
⎝ 𝑦(𝑘 + 5) ⎠ ⎝ 𝐶𝐴 ⎠
5
⎛ 𝐶𝐵 0 0 0 0 ⎞ ⎛ 𝑢(𝑘) ⎞
(13.7)
⎜ 𝐶𝐴𝐵 𝐶𝐵 0 0 0 ⎟ ⎜ 𝑢(𝑘 + 1) ⎟
⎜ 𝐶𝐴2 𝐵 𝐶𝐴𝐵 𝐶𝐵 0 0 ⎟ ⎜ 𝑢(𝑘 + 2) ⎟
⎜ 𝐶𝐴3 𝐵 𝐶𝐴2 𝐵 𝐶𝐴𝐵 𝐶𝐵 0 ⎟ ⎜ 𝑢(𝑘 + 3) ⎟
⎝ 𝐶𝐴4 𝐵 𝐶𝐴3 𝐵 𝐶𝐴2 𝐵 𝐶𝐴𝐵 𝐶𝐵 ⎠ ⎝ 𝑢(𝑘 + 4) ⎠
en donde 𝑌 = [𝑦(𝑘 + 1), 𝑦(𝑘 + 2), … , 𝑦(𝑘 + 𝑁)]⊺ , 𝑈 = [𝑢(𝑘), 𝑢(𝑘 + 1), … , 𝑦(𝑘 + 𝑁 − 1)]⊺
y 𝑋𝑚 son los estados medidos en la iteración actual. Definimos ahora 𝑅 = [𝑦𝑟𝑒𝑓 (𝑘 +
214
210
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
1), 𝑦𝑟𝑒𝑓 (𝑘 + 2), … , 𝑦𝑟𝑒𝑓 (𝑘 + 𝑁)] y 𝑊 = [𝑢𝑟𝑒𝑓 (𝑘 + 1), 𝑢𝑟𝑒𝑓 (𝑘 + 2), … , 𝑢𝑟𝑒𝑓 (𝑘 + 𝑁)]; por
consiguiente, el problema de optimización resultante es el siguiente:
1 1
ḿın 𝐽(𝑘) = (𝑅 − 𝑌)⊺ (𝑅 − 𝑌) + (𝑈 − 𝑊)⊺ 𝑄(𝑈 − 𝑊)
2 2
𝑌 = 𝐹𝑋𝑚 + 𝐺𝑈
(13.9)
forma 𝑥min ≤ 𝑥 ≤ 𝑥max y 𝑢min ≤ 𝑢 ≤ 𝑢max , las cuales son tambien convexas.
principal ventaja de MPC es la posibilidad de incluir restricciones de desigualdad de la
Ejemplo 13.1. Queremos determinar el valor de 𝑢𝑟𝑒𝑓 a partir de 𝑦𝑟𝑒𝑓 . Para ello, partimos
de la ecuación en el punto de equilibrio, a saber:
𝑥𝑟𝑒𝑓 = 𝐴𝑥𝑟𝑒𝑓 + 𝐵𝑢𝑟𝑒𝑓 (13.10)
1 Si la matriz 𝐶(𝐼− 𝐴)−1 𝐵 existe y no es singular entonces el sistema puede tener una realización mínima y,
por tanto, es controlable y observable.
215
211
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Una acción integral sobre el modelo dinámico puede mejorar la respuesta del sistema,
disminuyendo el error de estado estable y rechazando posibles ruidos en las señales de
entrada. Estos ruidos son comunes en aplicaciones de electrónica de potencia debido a
la conmutación de los convertidores. Consideremos el siguiente sistema discreto:
En este momento, definimos ∆𝑢(𝑘) = 𝑢(𝑘) − 𝑢(𝑘 − 1), ya que el modelo toma la
𝑦(𝑘) = 𝐶𝑥(𝑘)
(13.17)
Ahora, incluimos una acción integral sobre este modelo precisando 𝑧(𝑘) = 𝑢(𝑘 − 1) y
aumentando el modelo, como sigue:
𝑥(𝑘 + 1) 𝐴 𝐵 𝑥(𝑘) 𝐵
( )=( )( )+( ) ∆𝑢(𝑘)
𝑧(𝑘 + 1) 0 𝐼 𝑧(𝑘) 𝐼
𝑥(𝑘)
(13.19)
𝑦(𝑘) = (𝐶 0) ( )
𝑧(𝑘)
216
212
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑃𝑌 − 𝑃𝑅 − 𝜆 = 0
𝑄∆𝑢 + 𝐺 ⊺ 𝜆 = 0
𝐹𝑥𝑚 + 𝐺∆𝑢 − 𝑌 = 0
(13.21)
con 𝑅 = 𝐼𝑁 ⊗ 𝑦𝑟𝑒𝑓 .
Un punto de equilibrio de este sistema corresponde al punto fijo del mapa 𝑇(𝑥) =
𝐴𝑥.
Teorema 13.1. El sistema lineal dado por 13.23 es estable si ‖𝐴‖ ≤ 1.
sistema discreto 13.24 y asuma que existe una función 𝑉 ∶ 𝒟 → ℝ, tal que:
Teorema 13.2. Teorema de Lyapunov para sistemas discretos. Considere el
𝑉(0) = 0
𝑉(𝑥) ≥ 0, ∀𝑥 ∈ 𝒟, 𝑥 ≠ 0
𝑉(𝑓(𝑥)) − 𝑉(𝑥) ≤ 0, ∀𝑥 ∈ 𝒟
(13.25)
Usaremos este teorema para analizar la estabilidad del MPC bajo condiciones
ideales, esto significa que el modelo de predicción es exacto. Consideremos dos
217
213
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑡
𝑚 𝑚+1 𝑚+2 𝑚+𝑘 𝑚+𝑁 𝑚+𝑁+1
La función 𝑉 cumple las dos primeras condiciones para ser una función de
Lyapunov, veamos si cumple la tercera condición:
Esta resta es negativa si 𝐽(𝑚 + 𝑁 + 1) = 0, ya que 𝐽 > 0 por lo tanto, añadimos una
restricción adicional en el problema de optimización, de tal forma que en el último
punto del horizonte de predicción el valor se haga cero, entonces
∑
siguiente:
𝑁
ḿın 𝑉(𝑚) = 𝐽(𝑥(𝑚 + 𝑘), ∆𝑢(𝑚 + 𝑘))
𝑘=1
𝑋 = 𝐹𝑥𝑚 + 𝐺∆𝑢
(13.30)
𝑥(𝑚 + 𝑁) = 0
218
214
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Existe una literatura amplia sobre control predictivo, basado en el modelo. Gran parte
del material presentado en este capítulo está inspirado en el trabajo de [52], en donde
se da una mirada completa al problema lineal incluyendo restricciones, análisis de
estabilidad y acción integral. Una revisión actualizada tanto de la teoría como de las
apliaciones se presenta en [53], mientras que en [54] se analiza el caso de MPC con un
solo paso de predicción, un enfoque común en aplicaciones de electrónica de potencia.
13.6. Ejercicios
219
215
CUARTA PARTE
ALGORITMOS DE SOLUCIÓN
14 CAPÍTULO
CATORCE
Alejandro Garcés Ruiz
Capítulo catorce
eptos preliminares
223
218
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
1
𝑓(𝑦) − 𝑓(𝑥) = ∫ ∇𝑓(𝑥 + 𝑡(𝑦 − 𝑥))⊺ (𝑦 − 𝑥)𝑑𝑡 (14.4)
0
𝑓(𝑥) = −𝑙𝑛(𝑥) es Lipschitz continua, para comprobarlo, podemos hacer uso del
teorema del valor medio.
ḿın 𝑓(𝑥)
restricciones:
(14.6)
en donde 𝑓 ∶ ℝ𝑛 → ℝ es una función convexa, continua y diferenciable. Es claro que
el óptimo se obtiene cuando el gradiente de 𝑓 es 0 y, por tanto, resulta lógico definir el
( )
siguiente algoritmo que llamaremos método del gradiente:
𝑥𝑘+1 = 𝑥𝑘 − 𝑡𝑘 ∇𝑓 𝑥𝑘 (14.7)
224
219
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
2. Paso variable: en esta estrategia, podemos cambiar el paso mediante una regla
√
𝑡𝑘 = 𝑡0 ∕ 𝑘 + 1
heurística, por ejemplo,
(14.8)
𝑡
(14.9)
El valor de 𝑡𝑘 depende por tanto del tipo de problema; sin embargo, podemos definir
paso grande puede generar oscilaciones e incluso incremento en la función objetivo.
Su óptimo es evidentemente (10, 8). Sin embargo, queremos usar el método del
gradiente para encontrar este punto, partiendo de una aproximación inicial 𝑥 = (0, 0).
En ese caso, el paso del algoritmo está dado por
14.1 muestra la convergencia del algoritmo en dos casos: 𝑡 = 0.8 y 𝑡 = 1.1. La línea
Usamos diferentes pasos para analizar la tasa de convergencia. La Figura nro.
225
220
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
40
20
‖∇𝑓‖
0
0 5 10 15 20
iteraciones
import numpy as np
def grad(x):
dx0 = 2*(x[0]-10)
dx1 = 2*(x[1]-8)
return np.array([dx0,dx1])
importante tener en cuenta que los vectores de Python inician en cero y, por tanto, 𝑥[0] corresponde a
𝑥1 y 𝑥[1] corresponde a 𝑥2
1 Es
226
221
Optimización Convexa Alejandro Garcés
Alejandro Ruiz
Garcés Ruiz
Para analizar la convergencia del método del gradiente, necesitamos primero algunas
propiedades asociadas a las funciones continuas con gradiente Lipschitz.
Teorema 14.3. Una función 𝑓 ∶ ℝ𝑛 → ℝ convexa y de clase 𝐶 1 cuyo gradiente
sea 𝛾−Lipschitz continuo cumple las siguientes desigualdades para cualquier par de
puntos 𝑥, 𝑦 ∈ ℝ𝑛 .
𝛾
0 ≤ 𝑓(𝑦) − 𝑓(𝑥) − ∇𝑓(𝑥)⊺ (𝑦 − 𝑥) ≤ ‖𝑥 − 𝑦‖
2
2
(14.13)
1
𝑓(𝑦) ≥ 𝑓(𝑥) + ∇𝑓(𝑥)⊺ (𝑦 − 𝑥) + ‖∇𝑓(𝑥) − ∇𝑓(𝑦)‖
2
2𝛾
(14.14)
1
(∇𝑓(𝑥) − ∇𝑓(𝑦))⊺ (𝑥 − 𝑦) ≥ ‖∇𝑓(𝑥) − ∇𝑓(𝑦)‖
2
𝛾
(14.15)
0 0
𝛾
≤ ‖𝑥 − 𝑦‖
2
2
227
222
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Para la segunda desigualdad, definimos una nueva función 𝜙(𝑦) = 𝑓(𝑦) − ∇𝑓(𝑥)⊺ 𝑦,
la cual es convexa si 𝑓 es convexa (la función solo depende de 𝑦, así que, para un valor
fijo de 𝑥, el término ∇𝑓(𝑥)⊺ 𝑦 es una función afín). Además, ∇𝜙(𝑥) es Lipschitz si ∇𝑓(𝑥)
también lo es. En vista de estas propiedades, tomamos dos puntos arbitrarios 𝑥 y 𝑦 tal
que 𝑦 − 𝑥 = 1∕𝛾∇𝜙(𝑦) y aplicamos la desigualdad 14.13.
𝛾
𝜙(𝑥) − 𝜙(𝑦) − ∇𝜙(𝑦)⊺ (𝑥 − 𝑦) ≤ ‖𝑦 − 𝑥‖
2
2
1 𝛾 ‖‖ 1 ‖‖2
𝜙(𝑥) − 𝜙(𝑦) + ∇𝜙(𝑦)⊺ ∇𝜙(𝑦) ≤ ‖‖‖ ∇𝜙(𝑦)‖‖‖
𝛾 2 ‖‖ 𝛾 ‖‖
1
𝜙(𝑥) ≤ 𝜙(𝑦) − ‖∇𝜙(𝑦)‖
2
(14.18)
2𝛾
1
𝑓(𝑥) − ∇𝑓(𝑥)⊺ 𝑥 ≤ 𝑓(𝑦) − ∇𝑓(𝑥)⊺ 𝑦 − ‖∇𝑓(𝑥) − ∇𝑓(𝑦)‖
2
2𝛾
1
𝑓(𝑥) − ∇𝑓(𝑥)⊺ 𝑥 ≤ 𝑓(𝑦) − ∇𝑓(𝑥)⊺ 𝑦 − ‖∇𝑓(𝑥) − ∇𝑓(𝑦)‖
2
2𝛾
1
𝑓(𝑦) − ∇𝑓(𝑦)⊺ 𝑥 ≤ 𝑓(𝑥) − ∇𝑓(𝑦)⊺ 𝑥 − ‖∇𝑓(𝑦) − ∇𝑓(𝑥)‖
2
2𝛾
(14.19)
1
∴ (∇𝑓(𝑥) − ∇𝑓(𝑦))⊺ (𝑥 − 𝑦) ≥ ‖∇𝑓(𝑥) − ∇𝑓(𝑦)‖
2
𝛾
‖ ‖2
𝑓(𝑥𝑘+1 ) ≤ 𝑓(𝑥𝑘 ) − 𝛽 ‖‖‖∇𝑓(𝑥𝑘 )‖‖‖ (14.20)
228
223
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
( ) ( ) 𝛾(𝑡 )
2
‖ ( )‖2
𝑓 𝑥𝑘+1 ≤ 𝑓 𝑥𝑘 + ( − 𝑡) ‖‖‖∇𝑓 𝑥𝑘 ‖‖‖
2
función es fuertemente convexa cuando 𝑔(𝑥) = 𝑓(𝑥) − 𝜇∕2 ‖𝑥‖ tambien lo es. Esto
2
tiene gradiente Lipschitz y, además, es fuertemente convexa. Recordemos que una
(∇𝑓(𝑥) − ∇𝑓(𝑦)) (𝑥 − 𝑦) ≥ 𝜇 ‖𝑥 − 𝑦‖
⊺ 2
(14.22)
Demostración. Como 𝑔(𝑥) = 𝑓(𝑥) − 𝜇∕2 ‖𝑥‖ es convexa entonces podemos usar la
2
‖ ‖ ‖ ‖ (14.24)
√
𝜇 2
en donde
𝜉= 1−( ) ≤1
𝛾
(14.25)
229
224
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Dado lo anterior, podemos concluir que 𝑡 ≤ 2∕𝛾 para asegurar que el radio de
convergencia decrezca. Supongamos ahora que, además, la función 𝑓 es fuertemente
‖ ‖ ‖ ‖
convexa en cuyo caso, debido a la expresión 14.22, tenemos que ‖‖‖∇𝑓(𝑥𝑘 )‖‖‖ ≥ 𝜇 ‖‖‖𝑟𝑘 ‖‖‖ y,
‖‖ 𝑘+1 ‖‖2 𝜇 2 ‖ ‖2
por tanto,
230
225
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
del tipo 𝑡 = 2∕(𝛾 𝑘), la cual hace que el valor de 𝛼 decrezca en cada interación
actualizando el valor
𝑘
Esto significa resolver un problema de optimización (en una variable) por cada
iteración. De esta forma, el método se mueve de forma óptima en cada iteración a
expensas de un mayor esfuerzo computacional. La eficiencia del método depende de
se muestra en la Figura nro. 14.2. Nótese que en las siguientes iteraciones solo se
genera un nuevo punto para evaluar la función objetivo.
̃ y creciente en
Sabemos por tanto, que 𝑓(𝑥) es decreciente en el intervalo [𝑎, 𝑥]
̃ 𝑏]. Ahora, generamos dos nuevos puntos 𝑥1 , 𝑥2 dados por la siguiente
el intervalo [𝑥,
𝑥1 = 𝑏 − 𝜏(𝑏 − 𝑎)
relación:
𝑥2 = 𝑎 + 𝜏(𝑏 − 𝑎)
(14.35)
2 El método se puede extender a funciones unimodales, ver [55] para mas detalles.
231
226
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑓(𝑎) 𝑓(𝑏)
𝑓(𝑥1 )
Iteración 0
𝑓(𝑥2 )
𝑎 𝑥1 𝑥2 𝑏
𝑓(𝑏)
Iteración 1
𝑎 𝑥1 𝑥2 𝑏
𝑥2 − 𝑎 𝑏 − 𝑥 1
= =𝜏
a saber:
𝑏−𝑎 𝑏−𝑎
(14.36)
√
Es fácil demostrar que este valor corresponde a la región dorada con
5−1
𝜏= ≈ 0.618
2
(14.37)
232
227
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑡𝑘 que minimice la función 14.32. El nuevo punto 𝑥 estará sobre la línea 𝑥𝑘 + 𝑠∆𝑥𝑘 la
El método del gradiente descendiente se mueve en este espacio, en busca del paso
𝜕𝑓(𝑠) ⊺ 𝜕𝑥 ( )⊺
= (∇𝑓(𝑥)) = ∇𝑓(𝑥𝑘+1 ) ∆𝑥𝑘 = 0
𝜕𝑠 𝜕𝑠
(14.39)
𝑇𝑥𝑘 𝑓
𝑥𝑘 ∇𝑓(𝑥𝑘 )
𝑥𝑘+1
𝑇𝑥𝑘+1 𝑓
∇𝑓(𝑥𝑘+1 )
Las propiedades de convergencia de los métodos del gradiente han sido estudiadas en
[9] y [56] entre otros libros clásicos. Un análisis más simplificado se puede encontrar
en [8] y en [57]. Aplicaciones de estos métodos en sistemas de potencia se encuentran
en [28] y en [31]. Se invita al estudiante a realizar diferentes ejercicios en cualquier
lenguaje de programación y probar con diferentes valores del paso y puntos iniciales.
233
228
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
14.5. Ejercicios
𝑓(𝑥) = 𝑥 − ln(𝑥)
del gradiente, a saber:
(14.40)
2
(14.42)
En este, 𝑥 ∈ ℝ100 , 𝐴 ∈ ℝ100×100 es una matriz aleatoria, tal que, 0 ≤ 𝑎𝑖𝑗 ≤ 0.1; y
𝑏 y 𝑐 ∈ ℝ100 son vectores generados aleatoriamente, tal que 0 ≤ 𝑏𝑖 ≤ 1, 0 ≤ 𝑐𝑖 ≤
1. Usar los siguientes métodos para el paso de optimización en una variable: a)
método de la región dorada, b) ajuste cuadrático, c) paso constante. Comparar la
convergencia del método en cada caso.
4. Resolver el siguiente problema de optimización usando los métodos de gradiente
con paso fijo y paso óptimo. Mostrar la convergencia desde diferentes puntos
iniciales en el dominio de la función. Concluir al respecto.
𝜕 ‖𝑋‖𝐹
2
= 2𝑋
𝜕𝑋
(14.45)
234
229
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Como se puede observar, esta derivada es una matriz, así que el método del
⎛ 7 3 −5 ⎞
𝐴 = ⎜ 8 −2 15 ⎟
⎝ 0 4 1 ⎠
(14.46)
⎛ 1 0 0 ⎞
𝐵=⎜ 0 3 0 ⎟
⎝ 0 10 −1 ⎠
(14.47)
235
230
15 CAPÍTULO
QUINCE
Alejandro Garcés Ruiz
Capítulo quince
MÉTODO NEWTON
Método de Newton
Este capítulo muestra la aplicación del método de Newton para solucionar problemas
de optimización tanto irrestrictos como con restricciones de igualdad. Se inicia con
el análisis del método en el problema clásico de hallar las raíces de un sistemas de
ecuaciones algebráicas. Posteriormente, se presenta la aplicación del método a problemas
de optimización matemática irrestrictos y con restricciones afínes.
237
232
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
con una tolerancia aceptable ‖𝑓(𝑥)‖ ≤ 𝜖. En el caso más general, el método toma
punto, se recalcula la derivada y se repite el proceso hasta alcanzar una solución
𝑓(𝑥)
𝑥(0)
𝑥(1)
𝑥(2)
𝑥
Figura nro. 15.1. Diagrama esquemático del funcionamiento del método de Newton-Raphson.
2𝑥 + 2𝑦 2𝑥 + 5
𝐷𝑓(𝑥, 𝑦) = ( )
2𝑥 2𝑦
(15.5)
238
233
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
(𝑥𝐶 , 𝑦𝐶 ) 𝑥2 + 𝑦2 − 5 = 0
(𝑥𝐴 , 𝑦𝐴 )
(𝑥𝐷 , 𝑦𝐷 )
(𝑥𝐵 , 𝑦𝐵 )
𝑥2 + 2𝑥𝑦 + 5𝑦 + 10 = 0
Figura nro. 15.2. Posibles soluciones del sistema dado por las ecuaciónes 15.3 y 15.4.
con una línea punteada en la figura; esta produce una singularidad y hace que la
función sea discontinua. Se invita al lector a programar el algoritmo y experimentar
con diferentes condiciones iniciales. A partir de este simple ejemplo, podemos concluir
que existen dificultades asociadas a la convergencia y unicidad de la solución en este
tipo de problemas. Afortunadamente, los problemas de optimización convexa permiten
■
garantizar convergencia en caso de que la función sea Lipchitz continua y fuertemente
convexa.
239
234
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
El método de Newton puede ser usado para encontrar el valor de 𝑥 que hace que
∇𝑓(𝑥) = 0. Para ello expandimos la función ∇𝑓(𝑥) alrededor de un punto 𝑥𝑘 truncando
en la componente lineal, como sigue:
1
𝑓(𝑥 + ∆𝑥) = 𝑓(𝑥) + ∇𝑓(𝑥)⊺ ∆𝑥 + ∆𝑥⊺ ℋ𝑓 (𝑥)∆𝑥
2
(15.9)
240
235
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑓 ′ (𝑥𝑘 )
𝑥𝑘+1 = 𝑥𝑘 −
𝑓 ′′ (𝑥𝑘 )
(15.15)
𝑓 ′ (𝑦 𝑘 )
𝑦 𝑘+1 = 𝑦 𝑘 −
𝑓 ′′ (𝑦 𝑘 )
𝛼𝑓 ′ (𝑥𝑘 )
𝑦 𝑘+1 = 𝑦 𝑘 −
𝛼2 𝑓 ′′ (𝑥𝑘 )
𝑓 ′ (𝑥𝑘 )
𝛼𝑦 𝑘+1 = 𝛼𝑦 𝑘 −
(15.19)
𝑓 ′′ (𝑥𝑘 )
𝑓 ′ (𝑥𝑘 )
𝑥𝑘+1 = 𝑥𝑘 −
𝑓 ′′ (𝑥𝑘 )
241
236
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
Teorema 15.1. Para 𝑓(𝑥) fuertemente convexa con hessiana Lipschitz tenemos lo
siguiente:
ℋ𝑓 (𝑥) ≻ 𝜇𝐼
‖‖ ‖
‖‖ℋ𝑓 (𝑥) − ℋ𝑓 (𝑦)‖‖‖ ≤ 𝑀 ‖𝑥 − 𝑦‖
(15.20)
(15.21)
1
∇𝑓(𝑥𝑘 ) = ∫ ℋ𝑓 (𝑥̃ + 𝑡(𝑥𝑘 − 𝑥))(𝑥
̃ ̃
𝑘 − 𝑥)𝑑𝑡 (15.23)
0
1
̃ − [ℋ𝑓 (𝑥𝑘 )]−1 ∫
̃ = (𝑥𝑘 − 𝑥)
(𝑥𝑘+1 − 𝑥) ℋ𝑓 (𝑥̃ + 𝑡(𝑥𝑘 − 𝑥))(𝑥
̃ ̃
𝑘 − 𝑥)𝑑𝑡
0
1
= [ℋ𝑓 (𝑥𝑘 )]−1 ∫ ̃
ℋ𝑓 (𝑥𝑘 )(𝑥𝑘 − 𝑥)𝑑𝑡−
0
1
(15.24)
[ℋ𝑓 (𝑥𝑘 )]−1 ∫ ℋ𝑓 (𝑥̃ + 𝑡(𝑥𝑘 ̃
− 𝑥))(𝑥 𝑘 ̃
− 𝑥)𝑑𝑡
0
1
= [ℋ𝑓 (𝑥𝑘 )]−1 ∫ (ℋ𝑓 (𝑥𝑘 ) − ℋ𝑓 (𝑥̃ + 𝑡(𝑥𝑘 − 𝑥)))(𝑥
̃ ̃
𝑘 − 𝑥)𝑑𝑡
0
1
𝑟𝑘+1 = [ℋ𝑓 (𝑥𝑘 )]−1 ∫ (ℋ𝑓 (𝑥𝑘 ) − ℋ𝑓 (𝑥̃ + 𝑡𝑟𝑘 ))𝑟𝑘 𝑑𝑡 (15.25)
0
242
237
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
0
1
‖ ‖ ‖‖ ‖‖ ‖
≤ ‖‖‖[ℋ𝑓 (𝑥𝑘 )]−1 ‖‖‖ ∫ ‖‖(ℋ𝑓 (𝑥𝑘 ) − ℋ𝑓 (𝑥̃ + 𝑡𝑟𝑘 ))‖‖‖ ‖‖‖𝑟𝑘 ‖‖‖ 𝑑𝑡
0
‖‖ 𝑘 ‖‖2
‖‖ ⎛ 𝑀 ‖‖𝑟 ‖‖ ⎞
Y, por tanto,
‖‖ 𝑘+1 ‖‖ ‖‖
‖‖𝑟 ‖‖ ≤ ‖‖[ℋ𝑓 (𝑥 )] ‖‖ ⎜
2 ⎟
𝑘 −1
⎝ ⎠
(15.28)
ℋ𝑓 (𝑥𝑘 ) ≻ 𝜇𝐼
siguiente:
𝐼 ≻ 𝜇[ℋ𝑓 (𝑥)]−1
‖ ‖
1∕𝜇 ≥ ‖‖‖[ℋ𝑓 (𝑥)]−1 ‖‖‖
(15.29)
‖‖ 𝑘+1 ‖‖ 𝑀 ‖‖ 𝑘 ‖‖2
‖‖𝑟 ‖‖ ≤ ‖𝑟 ‖
2𝜇 ‖ ‖
(15.30)
243
238
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑥0 + 𝑥1 + 𝑥2 = 1
(15.37)
244
239
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑘 )
(𝑥
−∇𝑓
𝐴⊺ 𝜆 𝑘
𝑥𝑘
∆𝑥𝑘
𝒩(𝐴)
Figura nro. 15.3. Diagrama esquemático que representa la proyección del gradiente ∇𝑓(𝑥𝑘 )
sobre el espacio nulo de 𝐴.
⎛ 2𝑥0 + 6𝑥1 ⎞
este problema, son
∇𝑓 = ⎜ 6𝑥0 + 18𝑥1 ⎟
⎝ 2𝑥2 ⎠
⎛ 2 6 0 ⎞
(15.38)
ℋ𝑓 = ⎜ 6 18 0 ⎟
⎝ 0 0 2 ⎠
import numpy as np
def F(x):
"Funcion objetivo"
return (x[0]+3*x[1])**2 + x[2]**2
def G(x):
"Gradiente"
return [2*(x[0]+3*x[1]),6*(x[0]+3*x[1]),2*x[2]]
def R(x):
"Restriccion"
return [x[0]+x[1]+x[2]-1]
M = np.array([[2,6,0,1],[6,18,0,1],[0,0,2,1],[1,1,1,0]])
x = [100,0,5] # punto inicial
245
240
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
for i in range(n_iter):
N = G(x)+R(x)
D = np.linalg.solve(M,N)
x = x - D[0:3]
print(F(x), R(x))
print(’Resultado final x:’, x)
print(’Variable dual :’, D[3])
Por tanto, podemos establecer una función indicatriz del conjunto Ω, así:
0 𝑥∈Ω
𝐼Ω (𝑥) = {
+∞ 𝑥 ∉ Ω
(15.41)
246
241
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Este capítulo solo muestra una pequeña introducción a los métodos de Newton tanto
en problemas algebraicos como en problemas de optimización matemática. En [2],
15.6. Ejercicios
√
método de Newton, a saber:
ḿın 𝑥2 + 2𝑥𝑦 + 𝑦 2 − 16
Newton:
(15.44)
1 ∑
ḿın 𝑓(𝑥) = ‖𝐴𝑥 + 𝑏‖ + 𝑒𝑐𝑖 𝑥𝑖
2
2
(15.45)
∑
4. Resolver el siguiente problema de optimización usando el método de Newton
cuando 𝑥 es factible).
247
242
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ḿın ‖𝑋‖𝐹
2
𝐴𝑋 = 𝐵
(15.47)
3 4 8
𝐴=( )
−5 3 1
(15.48)
1 0 0
𝐵=( )
0 2 1
(15.49)
Tener en cuenta que el gradiente es una matriz, entonces, ¿qué estructura tiene
la hessiana? Recordar que la multiplicación matricial no es conmutativa, así que
el método de la cadena debe ser aplicado con la precaución de no modificar el
orden de la multiplicación. Comprobar el resultado usando cvxpy.
248
243
16 CAPÍTULO
DIECISÉIS
Alejandro Garcés Ruiz
Capítulo dieciséis
Probablemente, los métodos más utilizados para solucionar problemas convexos son
los de puntos interiores. El origen de estos métodos se remonta al trabajo de John
Von Neumann a mediados del siglo xx aunque fue en la década de los 80 en donde se
demuestra su utilidad práctica para resolver problemas convexos de gran tamaño [9].
En este capítulo, estudiaremos la filosofía básica del método; para ello, consideramos
el siguiente problema de optimización:
ḿın 𝑓(𝑥)
𝑔(𝑥) = 𝐴𝑥 − 𝑏 = 0
ℎ𝑖 (𝑥) ≤ 0
(16.1)
249
245
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
0 ℎ𝑖 (𝑥) ≤ 0
𝐼(𝑥) = {
+∞ ℎ𝑖 (𝑥) > 0
(16.2)
∑
𝐼(𝑥) ≈ 𝑠𝜙𝑖 (𝑥) (16.5)
𝑖
en donde 𝑠 > 0.
cercanos a 0 cuando 𝑥 ≤ 0 y valores muy grandes para 𝑥 > 0. De esta forma, se aproxima
La Figura nro. 16.1 muestra la forma de la función. Esta toma valores muy
𝜙(𝑥)
250
246
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
aproximación de esta función va a depender del valor de 𝑠, así que la idea es partir
entonces el logaritmo nos dará inmediatamente un valor infinito. Desde luego, la
de valores positivos y disminuir iterativamente este valor hasta que obtengamos una
solución lo suficientemente cercana al óptimo.
Con estas funciones, podemos usar el método de Newton para darle solución al
problema aproximado. Consideremos un modelo convexo con una única restricción de
desigualdad. El problema aproximado, por tanto, se puede solucionar usando el método
de Newton, aplicado sobre el siguiente sistema no lineal:
El nuevo punto 𝑥𝑘+1 es primal factible con respecto al problema original pues
pertenece al interior relativo del espacio de soluciones, ℎ𝑖 (𝑥𝑘+1 ) < 0, 𝑔(𝑥𝑘+1 ) = 0. El
método consiste entonces en actualizar el valor 𝑥𝑘+1 y reducir iterativamente 𝑠 con el
objetivo de que el problema aproximado se acerque al problema original, considerando
puntos en el interior relativo del espacio de soluciones. Este es el método básico de
puntos interiores. Su principal dificultad radica en el cálculo de las derivadas asociadas
a la barrera. No obstante, muchos problemas presentan características que permiten
una implementación más sistemática.
ḿın 𝑥0 + 𝑥1
problema:
𝑥02 + 𝑥12 ≤ 25
(16.10)
Primero, debemos definir las funciones que vamos a usar mas adelante.
import numpy as np
def f(x):
"Funcion objetivo"
return x[0]+x[1]
251
247
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
def g(x):
"Restriccion"
return x[0]**2 + x[1]**2 - 25
def Gr_f(x):
"Gradiente de la funcion objetivo"
return np.array([1,1])
def Gr_g(x):
"Gradiente de la restriccion"
return np.array([2*x[0],2*x[1]])
def Gr_B(x):
"Gradiente de la barrera logaritmica"
return -1/g(x)*Gr_g(x)
def H_f(x):
"Hessiana de la funcion objetivo"
return np.array([[0,0],[0,0]])
def H_g(x):
"Hessiana de la restriccion"
return np.array([[2,0],[0,2]])
def H_B(x):
"Hessiana de la barrera logaritmica"
return 1/(g(x)**2)*np.array([[4*x[0]**2,4*x[0]*x[1]],
[4*x[0]*x[1],4*x[1]**2]])-1/g(x)*H_g(x)
252
248
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
ḿın 𝑓(𝑥, 𝑦) = 𝑥 + 𝑦
optimización
𝑔(𝑥, 𝑦) = 𝑥2 + 𝑦 2 − 25 ≤ 0
(16.11)
1 4𝑥2 4𝑥𝑦 1 2 0
es decir,
ℋ𝜙 = ( )− ( )
𝑔(𝑥, 𝑦) 4𝑥𝑦 4𝑦 2 𝑔(𝑥, 𝑦) 0 2
(16.14)
Ejemplo 16.3. Los problemas de optimización cónica de segundo orden tienen una
estructura que facilitan la aplicación del método de barrera logarítmica. Consideremos
el siguiente problema SOC, a saber:
ḿın 𝑐⊺ 𝑥
‖𝐴𝑥 + 𝑏‖ ≤ 𝛼⊺ 𝑥 + 𝛽
(16.15)
𝑢 = 𝐴𝑥 + 𝑏
SOC:
𝑔 = ‖𝑢‖ − 𝛼⊺ 𝑥 − 𝛽
(16.16)
253
249
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
■
el gradiente y la hessiana de la restricción, las cuales son usadas para calcular las
correspondientes derivadas de la barrera tal y como se mostró en 16.6 y 16.7.
ḿın tr(𝐶𝑋)
continuación:
tr(𝐴𝑋) = 𝑏
𝑋⪰0
(16.19)
Nótese que el determinante será positivo siempre que 𝑋 ⪰ 0 y, por tanto, la función
logaritmo estará definida sobre los reales. El problema resultante es el siguiente:
∑
𝒲𝑎𝑝 (𝜆) = ı́ nf {𝑓(𝑥) + 𝑠 𝜙𝑖 (𝑥) + 𝜆⊺ (𝐴𝑥 − 𝑏)} (16.22)
𝑖
∑
𝒲(𝜆, 𝜇) = ı́ nf {𝑓(𝑥) + 𝜆⊺ (𝐴𝑥 − 𝑏) + 𝜇𝑖 ℎ𝑖 (𝑥)} (16.23)
𝑖
254
250
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
Ahora, definimos 𝜇𝑖 = −𝑠∕ℎ𝑖 (𝑥) como un punto dual factible tanto en el problema
original como en el problema aproximado porque 𝑠 > 0 y ℎ𝑖 (𝑥) < 0. Debemos recordar
que la factibilidad del dual está dada por 𝜇 ≥ 0. Dicho de otro modo, un punto (𝑥, 𝜆, 𝜇)
es primal y dual factible si además de cumplir con la condición de optimalidad; solo
cumple con 𝜇𝑖 ℎ𝑖 (𝑥) = 𝑠 así que nuestra estrategía será nuevamente hacer 𝑠 más
pequeño mediante un acercamiento continuo en el interior del espacio de soluciones.
∇𝑓(𝑥) + 𝐴⊺ 𝜆 + diag(𝜇)∇ℎ(𝑥) = 0
𝐴𝑥 = 𝑏
ℎ(𝑥) ≤ 0
(16.25)
diag(𝜇)ℎ(𝑥) = −𝑠
⎜ − diag(𝜇)𝐷ℎ(𝑥 )
𝑘 − diag(ℎ(𝑥 )) 0 ⎟ ⎜ ∆𝜇 ⎟ = − ⎜ 𝑟𝑐𝑒𝑛𝑡 ⎟
𝑘
⎝ 𝐴 0 0 ⎠ ⎝ ∆𝜆 ⎠ ⎝ 𝑟𝑝𝑟𝑖𝑚𝑎𝑙 ⎠
(16.26)
𝑟𝑝𝑟𝑖𝑚 = 𝑟𝑑𝑢𝑎𝑙 = 0.
Si el punto inicial es factible, desde el punto de vista del primal y del dual, entonces
255
251
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
ḿın 𝑐⊺ 𝑥
forma canónica:
𝐴𝑥 = 𝑏
𝑥≥0
(16.29)
⎛ 0 𝐼 𝐴⊺ ⎞ ⎛ ∆𝑥 ⎞ ⎛ 0 ⎞
⎜ − diag(𝜇) − diag(𝑥) 0 ⎟⎜ ∆𝜇 ⎟ = − ⎜ diag(𝜇)𝑥 + 𝑠1⃗ ⎟
⎝ 𝐴 0 0 ⎠ ⎝ ∆𝜆 ⎠ ⎝ 0 ⎠
(16.30)
■
problemas de gran tamaño. Es por ello que la gran mayoría de paquetes comerciales
usan métodos de puntos interiores.
𝐴𝑥 − 𝑏 = 0
satisfaga las restricciones
ℎ𝑖 (𝑥) ≤ 0
(16.31)
∑
Para ello, definimos el siguiente problema de optimización:
ḿın 𝑠𝑖
𝐴𝑥 − 𝑏 = 0
ℎ𝑖 (𝑥) ≤ 𝑠𝑖
(16.32)
𝑠𝑖 ≥ 0
256
252
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
16.4. Ejercicios
17 −9
con
𝐴=( )
−13 −6
(16.36)
𝑏 = (45 − 15)⊺
𝛼 = (0 1)⊺
𝛽 = 164
(16.37)
2 5
con
𝐶=( )
3 8
(16.39)
257
253
17 CAPÍTULO
DIECISIETE
Alejandro Garcés Ruiz
Capítulo diecisiete
MÉTODOS PROXIMALES
Métodos proximales
1
𝑀𝑓 (𝑢) = ı́ nf {𝑓(𝑥) + ‖𝑥 − 𝑢‖ }
2
𝑥∈Ω 2
(17.1)
259
255
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
= ı́ nf 𝑓(𝑥)
𝑥
nro. 17.1. En este caso, prox Ω (𝑦𝐴 ) = 𝑦𝐴 , mientras que prox Ω (𝑦𝐵 ) = 𝑥𝑅 .
1 1
prox Ω (𝑢) = argmin {𝐼Ω (𝑥) + ‖𝑥 − 𝑢‖ } = argmin { ‖𝑥 − 𝑢‖ }
2 2
𝑥∈Ω 2 𝑥∈Ω 2
(17.5)
⎛ 𝑝1 ⎞ ⎧ 𝑥𝑚𝑖𝑛(𝑘) 𝑢𝑘 ≤ 𝑥𝑚𝑖𝑛(𝑘)
𝑝2
prox Ω (𝑢) = ⎜ ⎟ con 𝑝𝑘 = 𝑥𝑘 𝑥𝑚𝑖𝑛(𝑘) < 𝑢𝑘 < 𝑥𝑚𝑖𝑛(𝑘)
⎜ ⋮ ⎟ ⎨
𝑥𝑚𝑎𝑥(𝑘) 𝑢𝑘 ≥ 𝑥𝑚𝑎𝑥(𝑘)
(17.6)
⎝ 𝑝𝑛 ⎠ ⎩
260
256
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑦𝐵
𝑥𝑅
Ω(𝑥)
𝑦𝐴
Figura nro. 17.1. Diagrama del operador de proyección sobre un conjunto convexo Ω.
∇𝑓(𝑥) + (𝑥 − 𝑢) = 0
condición de optimalidad:
(17.9)
261
257
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
1
𝑀𝑓 (𝑢 + ℎ𝑣) = ı́ nf {𝑓(𝑥) + ‖𝑥 − 𝑢 − ℎ𝑣‖ }
2
𝑥∈Ω 2
1
≤ 𝑓(𝑥) + ‖𝑥 − 𝑢 − ℎ𝑣‖
2
2
(17.10)
1 ℎ2
≤ 𝑓(𝑥) + ‖𝑥 − 𝑢‖ − ℎ𝑣⊺ (𝑥 − 𝑢) + ‖𝑣‖
2 2
2 2
ℎ2
𝑀𝑓 (𝑢 + ℎ𝑣) ≤ 𝑀𝑓 (𝑢) + ℎ𝑣⊺ prox 𝑓 (𝑢) + ‖𝑣‖
2
2
𝑀𝑓 (𝑢 + ℎ𝑣) − 𝑀𝑓 (𝑢) ℎ
≤ 𝑣⊺ prox 𝑓 (𝑢) − ℎ𝑣⊺ 𝑢 + ‖𝑣‖
2
(17.11)
ℎ 2
Luego, tomamos el límite cuando ℎ → 0. Este límite existe bajo las condiciones
antes mencionadas de la función 𝑓, veamos:
( )
𝑣⊺ ∇𝑀𝑓 (𝑢) ≤ 𝑣⊺ (prox 𝑓 (𝑢) − 𝑢) (17.12)
Esta desigualdad se debe cumplir para cualquier vector 𝑣 (por ejemplo +𝑣 y −𝑣) y,
262
258
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
soluciones Ω ≠ 𝜙 entonces 𝑥𝑘+1 está bien definido (nunca es infinito). Ahora, como
más adelante, puede ser más lento que los algorimos convencionales. Si el espacio de
1 1
𝑓(𝑥𝑘+1 ) + ‖𝑥 − 𝑥𝑘 ‖ ≤ 𝑓(𝑥) + ‖𝑥 − 𝑥𝑘 ‖ , ∀𝑥 ∈ Ω
2 2
2 𝑘+1 2
(17.16)
En particular, para 𝑥 = 𝑥𝑘 ,
1
𝑓(𝑥𝑘+1 ) + ‖𝑥 − 𝑥𝑘 ‖ ≤ 𝑓(𝑥𝑘 )
2
2 𝑘+1
(17.17)
Es decir, 𝑓(𝑥𝑘+1 ) está más cerca del óptimo 𝑥̃ que 𝑓(𝑥𝑘 ), veamos:
1
̃ ≤ 𝑓(𝑥𝑘 ) − 𝑓(𝑥)
𝑓(𝑥𝑘+1 ) − 𝑓(𝑥) ̃ − ‖𝑥 − 𝑥𝑘 ‖
2
2 𝑘+1
(17.18)
Dado lo anterior, podemos intuir que la función objetivo se hace más pequeña hasta
alcanzar el óptimo.
1
ḿın { 𝑥2 , con 1 ≤ 𝑥 ≤ 10}
2
(17.19)
1 1
prox 𝑓 (𝑢) = argmin { 𝑥2 + |𝑥 − 𝑢|2 }
1≤𝑥≤10 2 2
(17.20)
⎧ 𝑢∕2 2 ≤ 𝑢 ≤ 20
prox 𝑓 (𝑢) = 10 𝑢 ≥ 20
⎨
1 𝑢≤2
(17.21)
⎩
263
259
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
𝑓(𝑥)
𝑥2
𝑥
1 10
prox 𝑓 (𝑢)
10
1
𝑢
2 20
Figura nro. 17.2. Gráfico de la función 𝑓(𝑥) para el problema 3 y operador proximal
correspondiente.
ejemplo, 𝑥0 = 100:
𝑥0 = 100
𝑥1 = prox 𝑓 (100) = 10
𝑥2 = prox 𝑓 (10) = 5
𝑥3 = prox 𝑓 (5) = 2.5
𝑥4 = prox 𝑓 (2.5) = 1.25
(17.22)
𝑥5 = prox 𝑓 (1.25) = 1
𝑥6 = prox 𝑓 (1) = 1
𝜇
siguiente:
𝑥𝑘+1 = prox 𝑓 (𝑥𝑘 ) = argmin {𝑓(𝑥) + ‖𝑥̃ − 𝑥𝑘 ‖ }
2
2
∴0 = ∇𝑓(𝑥) ̃ + 𝜇(𝑥̃ − 𝑥𝑘 )0
1
𝑥̃ = 𝑥𝑘 − ∇𝑓(𝑥) ̃
𝜇
(17.23)
1
𝑥𝑘+1 = 𝑥𝑘 − ∇𝑓(𝑥𝑘+1 )
𝜇
264
260
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
𝑑𝜙(𝑥)
= −∇𝑓(𝑥)
𝑑𝑡
(17.24)
forma 𝑓(𝑥) + 𝑔(𝑥) usando un algoritmo de tipo proximal. Para ello, planteamos el
(alternating direction method of multipliers). Deseamos minimizar una función de la
1
ℒ(𝑥, 𝑦, 𝑧) = 𝑓(𝑥) + 𝑔(𝑧) + 𝑦 ⊺ (𝑥 − 𝑧) + ‖𝑥 − 𝑧‖
2
2
(17.26)
1 1
ℒ(𝑥, 𝑦, 𝑧) = 𝑓(𝑥) + 𝑔(𝑧) + ‖𝑥 − 𝑧 + 𝑦‖ − ‖𝑦‖
2 2
2 2
(17.27)
265
261
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
La primera expresión toma la siguiente forma –debemos recordar que (𝑦𝑘 , 𝑥𝑘 ) son
constantes para este paso–:
1
𝑥𝑘+1 = argmin {𝑓(𝑥) + ‖𝑥 − 𝑧 + 𝑦)‖ }
2
2
= prox 𝑓 (𝑧 − 𝑦)
(17.29)
En este punto, procedemos de igual forma con las variables (𝑥, 𝑦) y obtenemos la
Como se puede observar, cada paso proximal depende de una sola función: 𝑓 en
el caso de 𝑥 y 𝑔 en el caso de 𝑦. Esto permite que el algoritmo pueda dar solución a
problemas con restricciones de desigualdad y hace que 𝑔(𝑧) sea la función indicatriz.
Cuando se alcance un punto fijo, entonces 𝑥 = 𝑧. Lo anterior demuestra que se cumple
la restricción que hemos impuesto artificialmente.
En este, 𝜇 > 0 puede ser variable a lo largo del proceso iterativo con el fin de acelerar
la convergencia. Los operadores proximales de funciones convexas individuales son
relativamente fáciles de calcular por lo que este algoritmo es adecuado para solucionar
problemas distribuidos.
266
262
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
∑
𝑁
ḿın 𝑓𝑖 (𝑥𝑖 )
𝑖=1 (17.34)
𝑥1 = 𝑥2 = ⋯ = 𝑥𝑖 = 𝑥𝑁
En el anterior algoritmo, 𝑥̄ son las variables que se quedan fijas para calcular las
variables 𝑖. La ventaja de este método es que permite separar fácilmente un problema
complejo en varios problemas más simples y usar programación en paralelo. Desde
luego, diferentes particiones generan desempeños diferentes del algoritmo. La Figura
en donde cada nodo se comunique únicamente con nodos cercanos, sin necesidad de
un nodo común.
𝑦𝑖 ← 𝑦𝑖 + 𝑥𝑖 − 𝑥̄ 𝑖
267
263
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
∑
𝑁
𝑎𝑖
ḿın 𝑝𝑖2 + 𝑏𝑖 𝑝𝑖
𝑖
2
∑
𝑁
𝑝𝑖 = 𝑑
(17.36)
𝑖
𝑝𝑖(min) ≤ 𝑝𝑖 ≤ 𝑝𝑖(min)
Definimos una función 𝑓𝑖 (𝑝𝑖 ) para cada planta térmica, de la siguiente forma:
∑
𝑁 (∑ ) 𝜇 ‖∑ ‖2
ℒ(𝑝, 𝜆) = 𝑓𝑖 (𝑝𝑖 ) + 𝜆 𝑝𝑖 − 𝑑 + ‖‖‖ 𝑝𝑖 − 𝑑‖‖‖
2
(17.38)
𝑖=1
∑
𝑁
𝜇 1
ℒ(𝑝, 𝜆) = 𝑓𝑖 (𝑝𝑖 ) + ‖∆𝑑 + (1∕𝜇)𝜆‖ − ‖𝜆‖
2 2
2 2𝜇
(17.39)
𝑖=1
𝜆𝑘+1 = 𝜆𝑘 + 𝜇∆𝑑
(17.40)
Aquí, 𝑖 representa las plantas térmicas y 𝑘 la iteración. Nótese que cada planta 𝑖
recibe información local (𝑝𝑖 , 𝜆𝑖 ) además de dos variables globales ∆𝑑, 𝜆. El operador
proximal puede ser fácilmente establecido teniendo en cuenta que es un problema
de optimización en una variable. Aunque este algoritmo puede ser más lento que los
algoritmos convencionales, su utilidad radica en la posibilidad de separar el problema
por áreas de operación y solucionar el problema correspodiente a cada área, de forma
independiente. En mercados competitivos, esto puede ser importante debido a que
cada area de operación puede corresponder a un operador de red diferente; así, el
■
algoritmo de consensus permite solucionar el problema de despacho económico sin
que los agentes tengan la información de sus competidores.
268
264
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
17.5. Ejercicios
con
⎛ 4328 2096 2480 3136 ⎞
2096 2628 1720 2712 ⎟
𝑄=⎜
⎜ 2480 1720 1700 2200 ⎟
(17.43)
𝑏 = (7 5 7 6)⊺
(17.45)
(17.46)
demanda de 800𝑀𝑊.
un algoritmo distribuido ADMM para los datos de la Tabla nro. 17.1 y una
269
265
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
270
266
Alejandro Garcés Ruiz
Referencias
REFERENCIAS
[1] L. H. Loomis and S. Sternberg, Advanced calculus. NY: World scientific, Harvard
University, 2014.
[2] J. H. Hubbard and B. B. Hubbard, Vector Calculus, Linear Algebra And Differential
Forms A Unified Approach. NY: Prentice Hall, 1999.
[3] J. de Loera, R. Hemmecke, and M. Koppe, Algebraic and geometric ideas in the
theory of discrete optimization. NY: MOS-SIAM series on optimization, 2013.
[4] M. Bazaraa, J. Jarvis, and H. Sherali, Linear programming and network flows. NY:
Wiley, 2010.
[5] E. Castillo, A. Conejo, P. Pedregal, R. Garcia, and N. Alguacil, Formulación
y resolución de modelos de programación matemática en ingeniería y ciencia.
Castilla, España: Universidad De Castilla-La Mancha, 2002.
[6] D. Luenberger, Optimization by vector space methods. Stanford: Wiley
professional paperback series, 1969.
[7] W. Takahashi, Introduction to Nonlinear and Convex Analysis, 1st ed. Yokohama,
Japan: Yokohama Publishers, 2009, vol. 1.
[8] S. Boyd and L. Vandenberhe, Convex optimization. Cambridge, UK: Cambridge
university Press, 2004.
[9] Y. Nesterov, Introductory Lectures on Convex Programming Volume I: Basic course.
Berlin, Germany: Springer, 2008.
[10] S. Axler, F. Gehring, and K. Ribet, Linear algebra done wright, 2nd ed. New York,
NY: Springer, 2009.
271
267
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
272
268
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
273
269
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
[42] A. Garces, “A linear three-phase load flow for power distribution systems,” IEEE
Trans. on Pow. Syst., vol. PP, no. 99, pp. 1–2, 2015.
[43] S. Bolognani and S. Zampieri, “On the existence and linear approximation of the
power flow solution in power distribution networks,” IEEE Trans. on Pow. Syst.,
vol. PP, no. 99, pp. 1–10, 2015.
[51] S. M. V. Gasca, S. P. Londoño, and A. G. Ruiz, “Robust wide area control in power
systems using linear matrix inequalities,” in 2016 IEEE PES Trans. Distribution
Conf. and Expos.-Lat. Am. (PES T D-LA), Sep. 2016, pp. 1–6.
274
270
Alejandro Garcés Ruiz
Optimización Convexa Alejandro Garcés Ruiz
[60] G. Chen and Q. Yang, “An admm-based distributed algorithm for economic
dispatch in islanded microgrids,” IEEE Trans. on Ind. Inform., vol. 14, no. 9, pp.
3892–3903, Sep. 2018.
275
271
Alejandro Garcés Ruiz
Índice alfabético
ÍNDICE ALFABÉTICO
277
272
Optimización convexa aplicaciones en operación y dinámica de sistemas de potencia
Alejandro Garcés Ruiz Optimización Convexa
278
273
La optimización matemática es una herramienta clave en la operación y el análisis
dinámico de los sistemas eléctricos modernos, con una amplia aplicación, que va
desde problemas de despacho económico y flujo de carga óptimo, hasta el diseño de
controles centralizados y análisis de estabilidad. Además de su aplicación práctica, los
problemas de optimización responden a preguntas teóricas tales como la unicidad y
globalidad de la solución, así como la convergencia de los algoritmos y la equivalencia
entre el problema primal y dual. Las preguntas descritas pueden ser respondidas
usando el paradigma de optimización convexa. Aunque la mayoría de problemas en
sistemas eléctricos no son convexos, es posible generar aproximaciones convexas
buscando un balance entre precisión y complejidad del modelo. Por ello, es
fundamental contar con una adecuada fundamentación teórica y un conocimiento real
del sistema a optimizar.
Así pues, este libro ha sido diseñado bajo la premisa del balance entre teoría y
aplicación, con un enfoque autocontenido partiendo de lo teórico a lo práctico. El libro
está dividido en cuatro secciones, a saber: La primera trata de la fundamentación
teórica necesaria para abordar el resto del texto. En la segunda parte, se presentan
conceptos complementarios tales como optimización cónica y suma de polinomios
cuadráticos. En la tercera sección, se aborda la aplicación en diferentes problemas de
operación y análisis dinámico de sistemas eléctricos. En la sección final, se analizan
algoritmos de optimización convexa y su implementación en Python.
Los ejemplos y ejercicios fueron diseñados con esmero, esperando que sean valiosos
para que el conocimiento del estudiante puede trascender de lo teórico a lo práctico y
viceversa.
eISBN: 978-958-722-465-8
Facultad de Ingenierías
Colección Textos Académicos