Método lagrangiano. En el método de Jacobi, sea que el vector Λ represente los coeficientes de sensibilidad; esto es.

Documentos relacionados
Formulación del problema de la ruta más corta en programación lineal

Figura 1: Esquema de las tablas simplex de inicio y general.

May 4, 2012 CAPÍTULO 5: OPTIMIZACIÓN

OPTIMIZACIÓN Y SIMULACIÓN PARA LA EMPRESA. Tema 4 Optimización no Lineal

Clase 9 Programación No Lineal

Programación NO Lineal (PNL) Optimización sin restricciones

Clase 10: Extremos condicionados y multiplicadores de Lagrange

Derivadas Parciales (parte 2)

Introducción a la programación lineal

Programación Lineal. El método simplex

PROGRAMACIÓN NO LINEAL INTRODUCCIÓN

Un sistema de ecuaciones diferenciales son aquellas que tienen varias posibilidades para su solución. Estas son:

3.1 ESPACIO DE SOLUCIONES EN FORMA DE ECUACIÓN

Clase 8 Nociones Básicas de Convexidad

(Apuntes sin revisión para orientar el aprendizaje) CÁLCULO VECTORIAL EXTREMOS DE FUNCIONES ESCALARES DE VARIABLE VECTORIAL

Departamento de Matemáticas. ITAM Programación lineal (+ extensiones). Objetivos y panorama del c

si existe un entorno V de a contenido en A, tal que la diferencia f(x) f(a) no cambia de signo cuando x V :

Universidad del Rosario Economía Matemática II Taller 8 - Kuhn Tucker

INGENIERÍA DE SISTEMAS INVESTIGACIÓN OPERATIVA

Instituto tecnológico de Minatitlán. Investigación de operaciones Ing. Erika Lissette Minaya mortera Unidad 3: programación no lineal

DERIVADAS PARCIALES Y APLICACIONES

Optimización estática

PROBLEMAS DE OPTIMIZACIÓN CON RESTRICCIONES. PROBLEMA DE PROGRAMACIÓN NO- LINEAL (NLP).

f(x) f(x) 2.- OPTIMIZACIÓN. CONCEPTOS BÁSICOS CONCAVIDAD Y CONVEXIDAD DE FUNCIONES.

Práctica 6. Extremos Condicionados

Unidad V. 5.1 Recta tangente y recta normal a una curva en un punto. Curvas ortogonales.

Degeneración y ciclaje. Método de las dos fases CO-3411 (S08) 30/03/

ANÁLISIS I MATEMÁTICA 1 ANÁLISIS II (Computación) Práctica 5 - Verano 2009

Desarrollo de las condiciones de optimalidad y factibilidad. El problema lineal general se puede plantear como sigue:

Dada f : [a, b] R R, continua, se plantea el problema de encontrar ceros de f, es decir raíces de la ecuación

PROBLEMA 1. Considere el siguiente problema de programación lineal:

Introducción a Programación Lineal

MÉTODOS MATEMÁTICOS DE LA ECONOMÍA

Capítulo 3. Polinomios

PROGRAMACION CUADRATICA

Métodos Clásicos de Optimización para Problemas No-Lineales sin Restricciones

EL PROBLEMA GENERAL DE OPTIMIZACION

1.Restricciones de Desigualdad 2.Procedimiento algebraico

Funciones de varias variables

Juan Manuel Pacheco Instituto de Investigaciones Teóricas y Aplicadas, Escuela de Estadística

TEORÍA DE LA EMPRESA. ADOLFO GARCÍA DE LA SIENRA Instituto de Filosofía Facultad de Economía Universidad Veracruzana

Z Optima X 1 + X 2 5 Z 1 -X 1 + 2X Región factible. Figura 1

CAPÍTULO 4: DERIVADAS DE ORDEN SUPERIOR. En este capítulo D denota un subconjunto abierto de R n.

2. Cálculo diferencial de funciones de varias variables. Mayo, 2009

Tema 2 Resolución de EcuacionesNo Lineales

Álgebra Lineal Ma1010

Con miras a conocer la metodología que se aplica en el Método SIMPLEX, tenemos a continiacion un ejemplo:

Derivada de una función en un punto. Función derivada. Diferencial de una función en un punto. dy = f (x) dx. Derivada de la función inversa

Un subconjunto no vacío H de un espacio vectorial V es un subespacio de V si se cumplen las dos reglas de cerradura:

1: INTRODUCCIÓN AL USO DE LA HOJA DE CALCULO EXCEL COMO HERRAMIENTA PARA DESARROLLAR PROBLEMAS EN INGENIERÍA. SOLVER, REGRESION LINEAL MULTIPLE

Cálculo en varias variables

Tema 7: Problemas clásicos de Programación Lineal

Una variable es una cantidad que se simboliza por una literal y que puede tomar diferentes valores.

Programa. Simon, Carl; Blume, Laurence (1994) "Mathematics For Economists" W. W. Norton

PROGRAMACION DE REDES. MODELOS DE TRANSPORTE

Máximos y mínimos. Mínimo global Máximo global máximo relativo mínimo relativo

Problemas: Teoría del Consumidor

Jesús Getán y Eva Boj. Marzo de 2014

MÉTODO NUMÉRICO HEURÍSTICO PARA EL CÁLCULO DE RAÍCES DE POLINOMIOS

Espacios Vectoriales Asturias: Red de Universidades Virtuales Iberoamericanas 1

Universidad de Santiago de Chile Facultad de Ciencia Departamento de Matemática y Ciencias de la Computación

Complementos de Análisis. Año 2016

UNIDAD TEMÁTICA XIII

UNIDAD 8 INECUACIONES. Objetivo general.

Álgebra y Trigonometría Clase 2 Ecuaciones, desigualdades y Funciones

4. ANÁLISIS DE FUNCIONES DE UNA VARIABLE

TEMA 5: INTERPOLACION NUMERICA

Universidad Tec Milenio: Profesional HG04002 Análisis de Decisiones I

DESIGUALDADES. AXIOMA 1.- Tricotomía de los números reales. Si a y b son números reales entonces se cumple una y solo una de las relaciones

Proyectos de trabajos para Matemáticas

El método simplex 1. 1 Forma estándar y cambios en el modelo. 2 Definiciones. 3 Puntos extremos y soluciones factibles básicas. 4 El método simplex.

DUALIDAD EN PROGRAMACION LINEAL

OPTIMIZACIÓN VECTORIAL

UNIDAD UNO PROGRAMACIÓN LÍNEAL Parte 4

1 er Problema. 2 Problema

TEMA 1: ECONOMÍAS DE INTERCAMBIO October 6, 2015

Lo que se hace entonces es introducir variables artificiales ADAPTACIÓN A OTRAS FORMAS DEL MODELO.

2. Continuidad y derivabilidad. Aplicaciones

Problemas de Selectividad de Matemáticas II Comunidad de Madrid (Resueltos) Isaac Musat Hervás

MÉTODO DEL DUAL (TEORIA DE DUALIDAD)

La variable independiente x es aquella cuyo valor se fija previamente. La variable dependiente y es aquella cuyo valor se deduce a partir de x.

UNIVERSIDAD DE LOS LLANOS Facultad de Ciencias Básicas e Ingeniería Programa Ingeniería de Sistemas

Unidad 2: Ecuaciones, inecuaciones y sistemas.

Optimización de Problemas de Producción

Órdenes de la convergencia de sucesiones. Condiciones de la convergencia lineal y cuadrática del método de iteración simple

POST-OPTIMIZACIÓN Y SENSIBILIDAD EN PROBLEMAS LINEALES.

Análisis Numérico para Ingeniería. Clase Nro. 3

REPRESENTACION GRÁFICA DE FUNCIONES

La recta en el plano.

Programa Oficial de Asignatura. Ficha Técnica. Presentación. Competencias y/o resultados del aprendizaje. Contenidos Didácticos

Trabajo Práctico Optativo

Estadís7ca. María Dolores Frías Domínguez Jesús Fernández Fernández Carmen María Sordo. Tema 8. Programación lineal y métodos de op7mización

de febrero de Ejemplo de los vasos. Nuevos cambios en el lado derecho. FAQ. Sí, conozco la teoría, pero me puede poner un ejemplo?

Observación: El método de Euler, es el método de Taylor de orden 1.

CÁLCULO. Función Lineal. Su representación gráfica es una línea recta que intercepta al eje de las X en el punto ( ) y al eje de las Y en.

CONTENIDO Prefacio CAPITULO 1: Qué es la investigación de operaciones? CAPITULO 2: Introducción a la programación lineal...

Conjuntos y funciones convexas

3. Ecuaciones Diferenciales Lineales Homogéneas de Orden Superior con Coeficientes Constantes. Ecuaciones Diferenciales de Segundo Orden

Programación lineal: Algoritmo del simplex

Tema 2.- Formas Cuadráticas.

Transcripción:

Método lagrangiano. En el método de Jacobi, sea que el vector Λ represente los coeficientes de sensibilidad; esto es Entonces, Λ = Y0 J 1 = f g f Λ g = 0 Esta ecuación satisface las condiciones necesarias para puntos estacionarios, porque f/ g se calcula de tal modo que c f = 0. Una forma más cómoda de presentar estas ecuaciones es tomar sus derivadas parciales con respecto a todas las x j. Con eso se obtiene x j (f Λg) = 0, j = 1, 2,..., n. Las ecuaciones obtenidas, junto con las ecuaciones de restricción g(x) = 0, dan como resultado los valores factibles de X y Λ que satisfacen las condiciones necesarias para puntos estacionarios. Este procedimiento define al método lagrangiano, o de Lagrange, para identificar los puntos estacionarios de problemas de optimización con restricciones de igualdad. El procedimiento se puede desarrollar formalmente como sigue. Sea L(X, Λ) = f(x) Λg(X) A la función L se le llama función de Lagrange, y a los parámetros Λ se les llama multiplicadores de Lagrange. Por definición, esos multiplicadores tienen la misma interpretación que los coeficientes de sensibilidad del método jacobiano. Las ecuaciones = 0, Λ X = 0 expresan las condiciones necesarias para determinar los puntos estacionarios de f(x) sujetos a g(x) = 0. Las condiciones de suficiencia para el método de Lagrange se enunciarán sin demostración. Se define ( ) 0 P H B = P T Q en donde P = g 1 (X). g m (X) m n (m+n) (m+n), Q = 2 L(X, Λ) n n x i x j La matriz H B es la matriz hessiana de frontera o acotada. Dado el punto estacionario (X 0, Λ 0 ) de la función lagrangiana L(X, Λ) y la matriz hessiana de frontera H B evaluada en (X 0, Λ 0 ), entonces X 0 es 1

1. Un punto máximo si, comenzando con el determinante principal mayor de orden (2m + 1), los últimos (n m) determinantes menores de H B forman una pauta de signos alternativos con ( 1) m+1. 2. Un punto mínimo si, comenzando con el determinante menor principal de orden (2m + 1), los últimos (n m) determinantes menores principales de H B tienen el signo ( 1) m. Estas condiciones son suficientes, pero no necesarias, para identificar un punto extremo. Esto quiere decir que un punto estacionario puede ser un punto extremo sin satisfacer esas condiciones. Existen otras condiciones que son necesarias y suficientes al mismo tiempo, para identificar puntos extremos. Sin embargo, el procedimiento puede ser computacionalmente inmanejable. Se define la siguiente matriz en el punto estacionario (X 0, Λ 0 ): ( ) 0 P = P T Q µi donde µ es un parámetro desconocido. Se considera el determinante ; entonces, cada una de las (n m) raíces reales µ del polinomio debe ser 1. Negativa si X 0 es un punto máximo. 2. Positiva si X 0 es un punto mínimo. = 0 Ejemplo 20.2-4 Para el problema del ejemplo 20.2-2, la función de Lagrange es L(X, Λ) = x 2 1 + x 2 2 + x 2 3 λ 1 (x 1 + x 2 + 3x 3 2) λ 2 (5x 1 + 2x 2 + x 3 5) Esto produce las siguientes condiciones necesarias: x 1 = 2x 1 λ 1 5λ 2 = 0 x 2 = 2x 2 λ 1 2λ 2 = 0 x 3 = 2x 3 3λ 1 λ 2 = 0 λ 1 = (x 1 + x 2 + 3x 3 2) = 0 λ 2 = (5x 1 + 2x 2 + x 3 5) = 0 2

La solución de esas ecuaciones simultáneas es X 0 = (x 1, x 2, x 3 ) = (0.8043, 0.3478, 0.2826), Λ = (λ 1, λ 2 ) = (0.0870, 0.3043) En esta solución se combinan los resultados de los ejemplos 20.2-2 y 20.2-3. Los valores de los multiplicadores de Lagrange Λ son iguales a los coeficientes de sensibilidad obtenidos en el ejemplo 20.2-3 (salvo errores de redondeo). El resultado demuestra que esos coeficientes son independientes de la elección de Y, el vector dependiente en el método jacobiano. Para demostrar que este punto es un mínimo, considérese 0 0 1 1 3 0 0 5 2 1 H B = 1 5 2 0 0 1 2 0 2 0 3 1 0 0 2 Como n = 3 y m = 2, n m = 1 y se debe comprobar sólo el determinante de H B, que debe tener el signo de ( 1) 2 para que el punto estacionario X 0 sea un mínimo. Como H B = 460 > 0, X 0 es un punto mínimo. Ejemplo 20.2-5 Se tiene el problema sujeta a La función de Lagrange es de donde Minimizar z = x 2 1 + x 2 2 + x 2 3 4x 1 + x 2 2 + 2x 3 14 = 0 L(X, λ) = x 2 1 + x 2 2 + x 2 3 λ(4x 1 + x 2 2 + 2x 3 14) x 1 = 2x 1 4λ = 0 x 2 = 2x 2 2λx 2 = 0 x 3 = 2x 3 2λ = 0 λ = (4x 1 + x 2 2 + 2x 3 14) = 0 Estas ecuaciones tienen una infinidad de soluciones porque / x 2 = 0 es independiente de x 2. A manera de ejemplo se examinarán las tres soluciones siguientes: (X 0, λ 0 ) 1 = (2, 2, 1, 1) (X 0, λ 0 ) 2 = (2, 2, 1, 1) (X 0, λ 0 ) 3 = (2.8, 0, 1.4, 1.4) 3

Con las condiciones de suficiencia se obtiene H B = 0 4 2x 2 2 4 2 0 0 2x 2 0 2 2λ 0 2 0 0 2 Como m = 1 y n = 3, para que un punto estacionario sea mínimo, el signo de los últimos (3 1) = 2 determinantes menores principales debe ser igual al de ( 1) m = 1. Entonces, para(x 0, λ 0 ) 1 = (2, 2, 1, 1), 0 4 4 4 2 0 4 0 0 = 32 < 0, 0 4 4 2 4 2 0 0 4 0 0 0 2 0 0 2 = 64 < 0 Para (X 0, λ 0 ) 2 = (2, 2, 1, 1), 0 4 4 4 2 0 4 0 0 = 32 < 0, 0 4 4 2 4 2 0 0 4 0 0 0 2 0 0 2 = 64 < 0 Por último, para (X 0, λ 0 ) 3 = (2.8, 0, 1.4, 1.4) 0 4 0 4 2 0 = 12.8 > 0, 0 0 0.8 0 4 0 2 4 2 0 0 0 0 0.8 0 2 0 0 2 = 32 > 0 Esto demuestra que (X 0 ) 1 y (X 0 ) 2 son puntos mínimos y que (X 0 ) 3 no satisface las condiciones de suficiencia para ser máximo o mínimo. Esto no quiere decir que no sea un punto extremo, porque estas condiciones sólo son suficientes. Para ilustrar el uso de la otra condición de suficiencia que emplea las raíces de un polinomio, se tiene 0 4 2x 2 2 = 4 2 µ 0 0 2x 2 0 2 2λ µ 0 2 0 0 2 µ Ahora, para (X 0, λ 0 ) 1 = (2, 2, 1, 1), = 9µ 2 26µ + 16 = 0 Esto resulta en µ = 2 o 8/9. Como toda µ > 0, (X 0 ) 1 = (2, 2, 1) es un punto mínimo. Para (X 0, λ 0 ) 2 = (2, 2, 1, 1), = 9µ 2 26µ + 16 = 0 4

igual que en el caso anterior. Por consiguiente, (X 0 ) 2 = (2, 2, 1) es un punto mínimo. Por último, para (X 0, λ 0 ) 3 = (2.8, 0, 1.4, 1.4), = 5µ 2 6µ 8 = 0 En este caso, µ = 2 y µ = 0.8, que quiere decir que no se conoce la identidad de (X 0 ) 3 = (2.8, 0, 1.4). Restricciones de desigualdad Ahora ampliaremos el método de Lagrange para manejar restricciones de desigualdad. La contribución principal en este caso es el desarrollo de las condiciones generales de Karush-Kuhn-Tucker (KKT) que proporcionan la teoría básica de la programación no lineal. Extensión del método de Lagrange. Se tiene el problema sujeta a Maximizar z = f(x) g i (X) 0, i = 1, 2,..., m. Las restricciones de no negatividad X 0, si las hay, se incluyen en las m restricciones. Si el óptimo no restringido de f(x) no satisface a todas las restricciones, el óptimo restringido debe ser un punto limite en la frontera del espacio de soluciones. Esto quiere decir que al menos una restricción se debe satisfacer en forma de ecuación. Por consiguiente, el método implica los siguientes pasos. Paso 1. Resolver el problema sin restricciones: Maximizar z = f(x) Si el óptimo resultante satisface todas las restricciones, detenerse, porque todas las restricciones son redundantes. En caso contrario hacer k = 1 y seguir en el paso 2. Paso 2. Activar todas las k restricciones (es decir, convertirlas en igualdades) y optimizar a f(x) sujeta a las k restricciones activas, con el método de Lagrange. Si la solución obtenida es factible con respecto a las demás restricciones, detenerse; se tiene un óptimo local. En caso contrario, activar otro conjunto de k restricciones y repetir el paso. Si se han considerado todos los conjuntos de restricciones activas, tomadas de k en k, sin encontrar una solución factible, proceder al paso 3. Paso 3. Si k = m, detenerse. No existe solución factible. En caso contrario, poner k = k + 1 y seguir en el paso 2. 5

Un punto importante que con frecuencia se pasa por alto al presentar el procedimiento es que no garantiza una optimalidad global, aun cuando el problema tenga buen comportamiento (es decir, que posea un óptimo único). Otro punto importante es la idea errónea implícita que para p < q, el óptimo de f(x) sujeta a p restricciones de igualdad siempre es mejor que su óptimo sujeto a q restricciones de igualdad. Eso es cierto, en general, sólo si las q restricciones forman un subconjunto de las p restricciones. El ejemplo que sigue tiene por objeto ilustrar estos puntos. Ejemplo 20.2-6 sujeta a Maximizar z = (2x 1 5) 2 (2x 2 1) 2 x 1 + 2x 2 2, x k 0. La representación gráfica de la figura 1 ayuda a comprender el procedimiento analítico. Observe que el problema tiene buen comportamiento (función objetiva cóncava sujeta a un espacio de soluciones convexo), y eso quiere decir que un algoritmo razonablemente bien definido debería garantizar la optimalidad global. Sin embargo, como se demostrará, el método ampliado de Lagrange sólo produce un máximo local. Figure 1: Espacio de soluciones del ejemplo 20.2-6. El óptimo sin restricciones se obtiene resolviendo z x 1 = 4(2x 1 5) = 0 z x 2 = 4(2x 2 1) = 0 6

La solución es (x 1, x 2 ) = (5/2, 1/2), que no satisface la restricción x 1 +2x 2 2. Así, se activan las restricciones una por una. Se considerará x 1 = 0. La función lagrangiana es L(x 1, x 2, λ) = (2x 1 5) 2 (2x 2 1) 2 λx 1 Entonces, x 1 = 4(2x 1 5) λ = 0 x 2 = 4(2x 2 1) = 0 λ = x 1 = 0 Con esto se obtiene el punto de solución (x 1, x 2 ) = (0, 1/2), que se puede demostrar, con la condición de suficiencia, que es un máximo. Como este punto satisface todas las demás restricciones, el procedimiento se termina con (x 1, x 2 ) = (0, 1/2) como solución óptima local del problema. El valor objetivo es z = 25. (Las restricciones restantes x 2 > 0 y x 1 = 2x 2 < 2, activadas una por una, producen soluciones no factibles. En la figura 1, la solución factible (x 1, x 2 ) = (2, 0), que es el punto de intersección de las dos restricciones x 2 = 0 y x 1 + 2x 2 = 2 produce el valor objetivo z = 2. Este valor es mejor que el obtenido con una restricción activa. El procedimiento que acabamos de describir ilustra que lo mejor que cabe esperar usan do el método de Lagrange es una (posiblemente) buena solución factible. Esto es especialmente cierto si la función objetivo no es unimodal. Si las funciones del problema tienen buen comportamiento (es decir, el problema posee un solo óptimo restringido como en el ejemplo 20.2-6), se puede rectificar el procedimiento para localizar al óptimo global. En forma específica, considérense el óptimo no restringido y los óptimos restringidos sujetos a todos los conjuntos de una restricción activa, después a dos restricciones activas, y así sucesivamente, hasta que se activen todas las m restricciones. El mejor de todos los óptimos factibles es el óptimo global. Si se sigue este procedimiento en el ejemplo 20.2-6, será necesario resolver siete problemas para verificar la optimalidad. Esto indica que el uso del método para resolver problemas de cualquier tamaño práctico es limitado. Las condiciones de Karush-Kuhn-Tucker (KKT). En esta sección se presentan las condi ciones necesarias KKT para identificar puntos estacionarios de un problema no lineal restringido sujeto a restricciones de desigualdad. El desarrollo se basa en el método de Lagrange. Esas condiciones también son suficientes, bajo ciertas reglas que se enunciarán después. En el problema Maximizar z = f(x) sujeta a g(x) 0 7

Las restricciones de desigualdad se pueden convertir en ecuaciones usando variables no negativas de holgura. Sea Si 2 (no negativa) la holgura agregada a la i-ésima restricción g i (X) 0, y defínanse S = (S 1, S 2,..., S m ) T, S 2 = (S 2 1, S 2 2,..., S 2 m) T donde m es la cantidad total de restricciones de desigualdad. Entonces, la función de Lagrange es L(X, S, Λ) = f(x) Λ [ g(x) + S 2] Dadas las restricciones g(x) 0 una condición necesaria para la optimalidad es que Λ sea no negativo (no positivo) en proble mas de maximización (minimización). Este resultado se justifica como sigue. El vector Λ mide la rapidez de variación de f con respecto a g; esto es, Λ = f g En el caso de la maximización, cuando el lado derecho de la restricción g(x) 0 cambia de 0 a g(> 0), el espacio de soluciones se hace menos restringido y en consecuencia f no puede decrecer. Eso quiere decir que Λ 0. De igual modo para la minimización, a medida que aumenta el lado derecho de las restricciones, f no puede aumentar, lo que implica que Λ 0. Si las restricciones son igualdades, esto es, g(x) = 0, entonces Λ es libre en signo. Las restricciones de Λ son parte de las condiciones KKT necesarias. A continuación se deducirán las demás condiciones. Al tomar derivadas parciales de L con respecto a X, S y Λ se obtienen X = f(x) Λ g(x) = 0 S i = 2λ i S i = 0, i = 1, 2,..., m Λ = g(x) S2 = 0 El segundo conjunto de ecuaciones indica los siguientes resultados: 1. Si λ i 0, entonces S 2 i = 0, lo que significa que el recurso correspondiente es escaso y, en consecuencia, se consume por completo (restricción de igualdad). 2. Si S 2 i > 0, entonces λ i = 0. Esto quiere decir que el recurso i no es escaso y, en consecuencia, no tiene efecto sobre el valor de f (es decir, λ i = f/ g i = 0). Del segundo y tercer conjunto de ecuaciones se obtiene λ i g i (X) = 0, i = 1, 2,..., m 8

Esta nueva condición repite esencialmente el argumento anterior, porque si λ i > 0 g i (X) = 0 S 2 i = 0, y si g i(x) < 0 S 2 i > 0 λ i = 0. Las condiciones KKT necesarias para el problema de maximización se pueden resumir entonces como sigue: Λ 0 f(x) Λ g(x) = 0 λ i g i (X) = 0, i = 1, 2,..., m g(x) 0 Estas condiciones se aplican también al caso de minimización, con la excepción de que Λ debe ser no positiva ( compruébelo!). Tanto en la maximización como en la minimización, los multiplicadores de Lagrange que corresponden a las restricciones de igualdad deben ser libres de signo. Suficiencia de las condiciones KKT. Las condiciones necesarias de Kuhn-Tucker también son suficientes, si la función objetivo y el espacio de soluciones satisfacen las condiciones de la tabla 1. Tabla 1 sentido de la Condiciones requeridas optimización Función objetivo Espacio de soluciones Maximización Cóncava Conjunto convexo Minimización Convexa Conjunto convexo Es más fácil comprobar que una función es convexa o cóncava que demostrar que un espacio de soluciones es un conjunto convexo. Por esta razón se presenta una lista de condiciones que son más fáciles de aplicar en la práctica, en el sentido que se puede establecer la convexidad del espacio de soluciones comprobando la convexidad o la concavidad de las funciones de restricción. Para suministrar estas condiciones se definirán los problemas no lineales generalizados como sigue: sujeta a L(X, S, Λ) = f(x) Maximizar o Minimizar z = f(x) r i=1 g i (X) 0, i = 1, 2,..., r g i (X) 0, i = r + 1,..., p g i (X) = 0, i = p + 1,..., m [ λ i gi (X) + Si 2 ] p [ λ i gi (X) S 2 ] i m λ i g i (X) i=r+1 i=p+1 donde λ i, es el multiplicador de Lagrange correspondiente a la restricción i. Las condiciones para establecer la suficiencia de las condiciones KKT se resumen en la tabla 2. 9

Tabla 2 Sentido de la Condiciones requeridas optimización f(x) g i (X) λ i { Convexa 0 Maximización Cóncava Cóncava Lineal 0 Sin restricción Minimización Convexa { Convexa Cóncava Lineal 0 0 Sin restricción (1 i r) (r + 1 i p) (p + 1 i m) (1 i r) (r + 1 i p) (p + 1 i m) Las condiciones de la tabla 2 sólo representan un subconjunto de las condiciones de la tabla 1. La razón es que un espacio de soluciones puede ser convexo y no satisfacer las condiciones de la tabla 2. La tabla 2 es válida, porque las condiciones dadas producen una función lagrangiana cóncava L(X, S, Λ) en el caso de maximización, y una L(X, S, Λ) convexa en el caso de minimización. Este resultado se comprueba al notar que si g i (X) es convexa, entonces λ i g i (X) es convexa si λ i 0, y es cóncava si λ i 0. Se pueden establecer interpretaciones parecidas para todas las condiciones restantes. Observe que una función lineal es convexa y cóncava al mismo tiempo. También, si una función f es cóncava, entonces ( f) es convexa, y viceversa. Ejemplo 20.2-7 Se tiene el siguiente problema de minimización: sujeta a Minimizar f(x) = x 2 1 + x 2 2 + x 2 3 g 1 (X) = 2x 1 + x 2 5 0 g 2 (X) = x 1 + x 3 2 0 g 3 (X) = 1 x 1 0 g 4 (X) = 2 x 2 0 g 5 (X) = x 3 0 Se trata de un problema de minimización, y entonces Λ 0. Así, las condiciones KKT son (λ 1, λ 2, λ 3, λ 4, λ 5 ) 0 2 1 0 1 0 1 (2x 1, 2x 2, 2x 3 ) (λ 1, λ 2, λ 3, λ 4, λ 5 ) 1 0 0 0 1 0 = 0 0 0 1 λ 1 g 1 = λ 2 g 2 =... = λ 5 g 5 = 0 g(x) 0 10

Estas condiciones se reducen a λ 1, λ 2, λ 3, λ 4, λ 5 0 2x 1 2λ 1 λ 2 + λ 3 = 0 2x 2 λ 1 + λ 4 = 0 2x 3 λ 2 + λ 5 = 0 λ 1 (2x 1 + x 2 5) = 0 λ 2 (x 1 + x 3 2) = 0 λ 3 (1 x 1 ) = 0 λ 4 (2 x 2 ) = 0 λ 5 x 3 = 0 2x 1 + x 2 5 x 1 + x 3 2 x 1 0, x 2 2, x 3 0 La solución es x 1 = 1, x 2 = 2, x 3 = 0, λ 1 = λ 2 = λ 5 = 0, λ 3 = 2, λ 4 = 4. Como son convexos tanto f(x) como el espacio de soluciones g(x) 0, L(X, S, Λ) debe ser convexa, y el punto estacionario que resulte produce un mínimo global restringido. Este ejemplo demuestra que el procedimiento no es adecuado para cálculos numéricos, porque puede ser difícil resolver en forma explícita las condiciones resultantes. Las condiciones KKT son básicas en el desarrollo de los algoritmos de programación no lineal que estudiaremos a continuación. Algoritmos de programación no lineal Algoritmos sin Restricción En esta sección se presentarán dos algoritmos para el problema no restringido: el algoritmo de búsqueda directa y el algoritmo de gradiente. Método de búsqueda directa Los métodos de búsqueda directa se aplican principalmente a funciones estrictamente unimodales de una variable. Aunque puede parecer trivial el caso, como se mostrará, la optimización de funciones de una variable juega un papel clave en el desarrollo de los algoritmos de varias variables, más generales. La idea de los métodos de búsqueda directa es identificar el intervalo de incertidumbre que comprenda al punto de solución óptima. El procedimiento localiza el óptimo estrechando en forma progresiva el intervalo de incertidumbre hasta cualquier grado de exactitud que se desee. En esta sección se presentan dos algoritmos estrechamente relacionados: los métodos de búsqueda dicótomo y de sección aurea. Ambos buscan la maximización de una 11

función unimodal f(x) en el intervalo a x b, que se sabe que incluye el punto óptimo x. Los dos métodos comienzan con I 0 = (a, b) que representa el intervalo inicial de incertidumbre. Paso general i. Sea I i 1 = (x L, x R ) el intervalo actual de incertidumbre (en la iteración 0, x L = a y x R = b). A continuación se definen x 1 y x 2 tales que x L < x 1 < x 2 < x R El siguiente intervalo de incertidumbre, I i, se define como sigue: 1. Si f(x 1 ) > f(x 2 ) entonces x L < x < x 2. Se definen x R = x 2 e I i = (x L, x 2 ), (véase la figura 2a). 2. Si f(x 1 ) < f(x 2 ), entonces x 1 < x < x R. Se definen x L = x 1 e I i = (x 1, x R ) (véase la figura 2b). 3. Si f(x 1 ) = f(x 2 ), entonces x 1 < x < x 2. Se definen x L = x 1, x R = x 2 e I i = (x 1, x 2 ). Figure 2: Ilustración del paso general de los métodos de búsqueda dicótomo y de la sección aurea La manera en que se determinan x 1 y x 2 garantiza que I i < I i 1, como se demostrará en breve. El algoritmo termina en la iteración k si I k, donde es un grado de exactitud definido por el usuario. La diferencia entre los métodos dicótomo y de sección aurea estriba en la forma en que se calculan x 1 y x 2. La tabla siguiente presenta las fórmulas. 12

Método dicótomo x 1 = 1 2 (x R + x L ) x 2 = 1 2 (x R + x L + ) Método de la sección aurea x 1 = x R 5 1 2 (x R x L ) x 2 = x L + 5 1 2 (x R x L ) En el método dicótomo los valores x 1 y x 2 se encuentran simétricos respecto del punto medio del actual intervalo de incertidumbre. Esto significa que I i = 0.5(I i 1 + ) La aplicación repetida del algoritmo garantiza que la longitud del intervalo de incertidumbre se acercará al nivel de exactitud deseado,. En el método de la sección aurea la idea es de mayor involucramiento. Se puede apreciar que cada iteración del método dicótomo requiere calcular los dos valores f(x 1 ) y f(x 2 ), pero termina por descartar alguno de ellos. Lo que propone el método de la sección aurea es ahorrar cálculos mediante la reutilización del valor descartado en la iteración inmediata siguiente. Para definir 0 < α < 1, x 1 = x R α(x R x L ), x 2 = x L + α(x R x L ) Cuando el intervalo de incertidumbre I i, en la iteración i es igual a (x L, x 2 ) o a (x 1, x R ). Considere el caso en que I i = (x L, x 2 ), lo cual significa que x 1 está incluido en I i. En la iteración i + 1, seleccione x 2 igual a x 1 de la iteración i, lo cual lleva a la siguiente ecuación: x 2, i+1 = x 1, i Sustituyendo, se encuentra que: o lo que es igual: que finalmente se simplifica a: x L + α[x 2, i x L ] = x R α(x R x L ) x L + α[x L + α(x R x L ) x L ] = x R α(x R x L ) α 2 + α 1 = 0 La ecuación da α = ( 1 ± 5)/2. Como α es un valor entre 0 y 1, seleccionamos la raíz positiva α 0.681. El diseño de los cálculos del método de la sección aurea, garantiza una reducción α en los intervalos de incertidumbre sucesivos; esto es: I i+1 = αi i Comparado con el método dicótomo, el método de la sección aurea converge más rápidamente hacia el nivel deseado de exactitud. Adicionalmente, cada iteración en el método de la sección aurea requiere la mitad de los cálculos, en virtud de que recicla 13

siempre un conjunto de los cálculos correspondientes a la iteración inmediata anterior. Ejemplo 21.1-1 Maximizar f(x) = { 3x, 0 x 2 (20 x), 2 < x 3 1 3 El máximo valor de f(x) ocurre en x = 2. La siguiente tabla muestra los cálculos para las iteraciones 1 y 2, usando el método dicótomo y el de la sección aurea. Supondremos que = 0.1. Método dicótomo Método de la sección aurea Iteración 1 Iteración 1 I 0 = (x L, x R ) = (0, 3) I 0 = (x L, x R ) = (0, 3) x 1 = 0.5(3 + 0 0.1) = 1.45, f(x 1 ) = 4.35 x 1 = 3 0.681(3 0) = 1.146, f(x 1 ) = 3.438 x 2 = 0.5(3 + 0 + 0.1) = 1.55, f(x 2 ) = 4.65 x 1 = 0 0.681(3 0) = 1.854, f(x 2 ) = 5.562 f(x 2 ) > f(x 1 ) x L = 1.45, I 1 = (1.45, 3) f(x 2 ) > f(x 1 ) x L = 1.146, I 1 = (1.146, 3) Iteración 2 Iteración 2 I 1 = (x L, x R ) = (1.45, 3) I 0 = (x L, x R ) = (1.146, 3) x 1 = 0.5(3 + 1.45 0.1) = 2.175, f(x 1 ) = 5.942 x 1 = x 2,1 = 1.854, f(x 1 ) = 5.562 x 2 = 0.5(3 + 1.45 + 0.1) = 2.275, f(x 2 ) = 5.908 x 1 = 1.146 + 0.681(3 1.146) = 2.292, f(x 2 ) = 5.903 f(x 1 ) > f(x 2 ) x R = 2.275, I 2 = (1.45, 2.275) f(x 2 ) > f(x 1 ) x L = 1.854, I 1 = (1.854, 3) Al continuar de la misma forma, el intervalo de incertidumbre terminará por estrecharse hasta la tolerancia deseada. Método del gradiente En esta sección se presenta un método para optimizar funciones que son doble continuamente diferenciables. La idea es generar puntos sucesivos en la dirección del gradiente de la función. El método de Newton-Raphson presentado anteriormente es un método de gradiente para resolver ecuaciones simultáneas. En esta sección se presenta otra técnica, llamada método de ascenso (o descenso) más pronunciado o de la pendiente más inclinada. El final del método del gradiente se encuentra en el punto donde el vector gradiente se anula. Esta sólo es una condición necesaria para la optimalidad. La optimalidad no se puede comprobar a menos que a priori se conozca que f(x) es cóncava o convexa. Supongamos que se busca el máximo de f(x). Sea X 0 el punto inicial donde se inicia el procedimiento, y se define a f(x k ) como el gradiente de f en el punto X 0. Se trata de determinar una trayectoria particular p a lo largo de la cual f p, se maximice 14

en un punto dado. Esto se logra si se seleccionan los puntos sucesivos X k y X k+1 de tal modo que X k+1 = X k + r k f(x k ) donde r k es el tamaño de paso óptimo en X k. El tamaño de paso r k se determina de tal modo que el siguiente punto, X k+1, conduzca al mayor mejoramiento de f. Esto equivale a determinar r = r k que maximice la función h(r) = f[x k + r f(x k )] Como h(r) es función de una variable, con el método de búsqueda directa se puede determinar el punto óptimo, siempre que h(r) sea estrictamente unimodal. El procedimiento propuesto termina cuando dos puntos sucesivos de prueba, X k y X k+1, son aproximadamente iguales. Esto equivale a que r k f(x k ) 0 Ya que r k 0, la condición necesaria f(x k ) = 0 se satisface en X k. Ejemplo 21.1-2 Se tiene el siguiente problema: Maximizar f(x 1, x 2 ) = 4x 1 + 6x 2 2x 2 1 2x 1 x 2 2x 2 2 El óptimo exacto está en (x 1, x 2) = (1/3, 4/3). Para resolver el problema con el método de la pendiente más inclinada, se determina el gradiente: f(x) = (4 4x 1 2x 2, 6 2x 1 4x 2 ) La naturaleza cuadrática de la función hace que los gradientes en dos puntos sucesivos cualesquiera sean ortogonales (perpendiculares entre sí). Si el punto inicial es X 0 = (1, 1), la figura 3 muestra los puntos solución sucesivos. Iteración 1: f(x 0 ) = ( 2, 0) El siguiente punto X 1 se obtiene con la ecuación Así, X = (1, 1) + r( 2, 0) = (1 2r, 1) h(r) = f(1 2r, 1) = 2(1 2r) 2 + 2(1 2r) + 4 El tamaño óptimo del paso se obtiene usando las condiciones necesarias clásicas (también se podrían usar los algoritmos de búsqueda directa para determinar el óptimo). El valor máximo de h(r) es r 1 = 1/4, que da como resultado el siguiente punto de solución, 15

Figure 3: Maximización de f(x 1, x 2 ) = 4x 1 + 6x 2 2x 2 1 2x 1 x 2 2x 2 2 con el método de la pendiente más pronunciada. X 1 = (1/2, 1). Iteración 2: f(x 1 ) = (0, 1) X = (1/2, 1) + r(0, 1) = (1/2, 1 + r) h(r) = 2(1 + r) 2 + 5(1 + r) + 3 2 Se obtiene así, r 2 = 1/4 y X 2 = (1/2, 5/4). Iteración 3: f(x 2 ) = ( 1/2, 0) X = (1/2, 5/4) + r( 1/2, 0) = ((1 r)/2, 5/4) h(r) = 1 2 (1 r)2 + 3 35 (1 r) + 4 8 16

Por lo tanto, r 3 = 1/4 y X 3 = (3/8, 5/4). Iteración 4: f(x 3 ) = (0, 1/4, ) X = (3/8, 5/4) + r(0, 1/4) = (3/8, (5 + r)/4) h(r) = 1 8 (5 + r)2 + 21 39 (5 + r) + 16 32 Por lo tanto, r 4 = 1/4 y X 4 = (3/8, 21/16). Iteración 5: f(x 4 ) = ( 1/8, 0) X = (3/8, 21/16) + r( 1/8, 0) = ((3 r)/8, 21/16) h(r) = 1 32 (3 r)2 + 11 567 (3 r) + 64 128 Por lo tanto, r 5 = 1/4 y X 5 = (11/32, 21/16). Iteración 6: f(x 5 ) = (0, 1/16) Como f(x 5 ) 0 se puede terminar el proceso en este punto. El punto máximo aproximado es X 5 = (0.3438, 1.3125). El óptimo exacto es X = (0.3333, 1.3333). 17