Fundamentos de optimización numérica
IE3041 - Sistemas de Control 2
La tecnología oculta detrás de la ingeniería contemporánea
Sistemas de control
Ingeniería mecánica
Ingeniería eléctrica
Machine learning
Geofísica
Investigación de operaciones
Economía y finanzas
Ingeniería civil
Biología computacional
propuesta 1
propuesta 2
propuesta \(n\)
\(\cdots\)
¿Qué es optimización?
métrica de evaluación
propuesta 1
propuesta 2
propuesta \(n\)
\(\cdots\)
¿Qué es optimización?
métrica de evaluación
propuesta 1
propuesta 2
propuesta \(n\)
mejor
propuesta
\(\cdots\)
¿Qué es optimización?
métrica de evaluación
propuesta 1
propuesta 2
propuesta \(n\)
mejor propuesta
óptima
\(\cdots\)
por esto la perspectiva puede aplicarse en una amplia variedad de casos (!)
¿Qué es optimización?
¿Qué es optimización?
métrica de evaluación
propuesta 1
propuesta 2
propuesta \(n\)
mejor propuesta
óptima
\(\cdots\)
por esto la perspectiva puede aplicarse en una amplia variedad de casos (!)
Un poco de historia...
Planteamiento general
s.t.
Planteamiento general
\(\mathbf{x} \in \mathbb{R}^n\)
variables de decisión
[las cantidades que se pueden cambiar | ajustar]
Planteamiento general
s.t.
función objetivo | función de costo [escalar]
s.t.
\(\mathbf{x} \in \mathbb{R}^n\)
variables de decisión
Planteamiento general
función objetivo | función de costo [escalar]
s.t.
\(\mathbf{x} \in \mathbb{R}^n\)
variables de decisión
restricciones de desigualdad
Planteamiento general
función objetivo | función de costo [escalar]
s.t.
\(\mathbf{x} \in \mathbb{R}^n\)
variables de decisión
restricciones de desigualdad
restricciones de igualdad
Planteamiento general
función objetivo | función de costo [escalar]
s.t.
\(\mathbf{x} \in \mathbb{R}^n\)
variables de decisión
restricciones de desigualdad
restricciones de igualdad
x = fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon)
Programa No Lineal (general)
Planteamiento general
función objetivo | función de costo [escalar]
s.t.
\(\mathbf{x} \in \mathbb{R}^n\)
variables de decisión [lo que se puede cambiar | ajustar]
restricciones de desigualdad
restricciones de igualdad
Planteamiento general
lower bounds
upper bounds
Programas Lineales (LP)
lower bounds
upper bounds
en general
Programas Lineales (LP)
lower bounds
upper bounds
x = linprog(c,A,b,Aeq,beq,lb,ub)
SIMPLEX
en general
Programas Lineales (LP)
Mínimos Cuadrados (Lineales)
x = lsqlin(C,d,A,b,Aeq,beq,lb,ub)
x = quadprog(Q,c,A,b,Aeq,beq,lb,ub)
Programas Cuadráticos (QP)
producto cuadrático
x = quadprog(Q,c,A,b,Aeq,beq,lb,ub)
Programas Cuadráticos (QP)
Programas Cuadráticos (QP)
producto cuadrático
x = quadprog(Q,c,A,b,Aeq,beq,lb,ub)
Entre otros casos específicos.
Sin embargo, la clasificación más importante entre programas | algoritmos ha sido:
convexos vs. no convexos
La revolución convexa
programa no lineal + función objetivo y restricciones convexas
Programas Convexos
programa no lineal + función objetivo y restricciones convexas
Programas Convexos
Programas Convexos
combinación convexa
programa no lineal + función objetivo y restricciones convexas
Programas Convexos
todo programa convexo tiene una única solución óptima
slack variables
valor mínimo de \(f\)
variables de decisión que generan el valor mínimo de \(f\)
variables de "holgura", cambian restricciones de desigualdad (complejas) a restricciones de igualdad, las cuales son más sencillas para los solvers
Algunos detalles adicionales
slack variables
valor mínimo de \(f\)
variables de decisión que generan el valor mínimo de \(f\)
variables de "holgura", cambian restricciones de desigualdad (complejas) a restricciones de igualdad, las cuales son más sencillas para los solvers
Algunos detalles adicionales
slack variables
valor mínimo de \(f\)
variables de decisión que generan el valor mínimo de \(f\)
variables de "holgura", cambian restricciones de desigualdad (complejas) a restricciones de igualdad, las cuales son más sencillas para los solvers
Algunos detalles adicionales
slack variables
valor mínimo de \(f\)
variables de decisión que generan el valor mínimo de \(f\)
Algunos detalles adicionales
Una compañía de manufactura produce dos modelos A y B de un producto. Cada unidad del modelo A requiere 9 horas de labor para fabricarlo y 1 hora de labor para darle los acabados finales. Para el modelo B estos tiempos son de 12 y 3 horas respectivamente. Para fabricación y acabados finales, el número máximo de horas laborales por semana son de 180 y 30 respectivamente. La compañía percibe una ganancia de Q.8,000.00 por cada unidad del modelo A y Q.12,000.00 por cada unidad del modelo B. ¿Cuántas unidades del modelo A y B deben manufacturarse por semana para obtener una máxima ganancia? ¿Cuál es la ganancia máxima por semana?
Ejemplo: manufactura
Ejemplo: manufactura
Ejemplo: manufactura
>> ejemplo_manufactura.m
Ejemplo: manufactura
Suponga que se quieren invertir $.1,000.00 en las compañías A, B y C, por un período de un mes. Se compra a inicio de mes cierta cantidad de acciones por dólar y se venden a otra cantidad de acciones por dólar al final del mes. La tasa de retorno de cada inversión es una variable aleatoria con cierto valor esperado/media \(r_i\). El objetivo es invertir tal que el retorno esperado a final del mes sea por lo menos $.50.00 (5% de la inversión inicial total).
Ejemplo: portfolio optimization
dada
Ejemplo: portfolio optimization
dada
Ejemplo: portfolio optimization
>> ejemplo_inversion.m
minimizar la función de Himmelblau:
Ejemplo: función Himmelblau
minimizar la función de Himmelblau:
Ejemplo: función Himmelblau
>> ejemplo_himmelblau.m
1. dentro de la región: \(0\le x_1\le 10\), \(0\le x_2\le 10\)
Ejemplo: función Himmelblau
2. dentro del círculo de radio \(2\), centrado en \((2,2)\) planteado como una restricción de desigualdad
Ejemplo: función Himmelblau
3. lo mismo que el caso anterior pero planteado como una restricción de igualdad con slack variables
Ejemplo: función Himmelblau