Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Método Simplex INVESTIGACIÓN OPERATIVA I Objetivos Conocer Solución básica factible Modelo Canónico a Estándar. Conocer las características del método Simplex. Entender como se aplica y resuelve un MPL mediante el método simplex. Existencia de puntos extremos. Definición: Dado el problema de programación lineal se dice que una solución factible X es básica cuando es un punto extremo del conjunto de soluciones factibles S, es decir, existe una base (básica) B⊂A verificando |B|≠0 y B-1b ≥ 0. Solución Básica Factible. El concepto de solución básica es muy importante porque la solución óptima del M.P.L. se alcanza en una solución básica. Ejemplo: Dado el siguiente MPL. Y el punto extremo (26/7,4/7,0) ¿La solución óptima de un P.P.L. se obtiene evaluando la función objetivo en todas las soluciones básicas y cogiendo la mejor? ¿La solución óptima de un P.P.L. se obtiene evaluando la función objetivo en todas las soluciones básicas y cogiendo la mejor? ¿La solución óptima de un P.P.L. se obtiene evaluando la función objetivo en todas las soluciones básicas y cogiendo la mejor? ¿La solución óptima de un M.P.L. se obtiene evaluando la función objetivo en todas las soluciones básicas y cogiendo la mejor? Cada matriz básica (B) tiene asociada una solución denomina solución básica. El procedimiento para calcular esta solución es el siguiente. Sea xB el vector de las variables asociadas a las columnas de A necesarias para construir B. Las variables xB se denominan variables básicas y el resto se denominan variables no básicas. Asignando el valor cero a las variables no básicas donde N es tal que A = (B N). Por tanto B−1b nos permite obtener la solución básica asociada a B. Si B es una matriz básica factible, su solución básica se dice que es factible. El número de soluciones básicas factibles de un problema de programación lineal acotado con un número finito de restricciones es siempre finito, y cada una se corresponde con un punto extremo de la región de factibilidad. Teorema: Sea S = {X : AX=b, X ≥ 0}, donde A es una matriz m×n de rango m, y b es un arreglo de dimensión m. Un punto x es punto extremo de S si y sólo si A puede descomponerse en (B,N) tal que donde B es una matriz de dimensión m×m invertible que satisface B−1b ≥ 0. Caracterización de los puntos extremos. Si XB es una solución básica y se cumple que los valores de las variables básicas son mayores o iguales que cero, decimos que la solución es básica factible y que la base B es una base factible. Si en una solución factible básica, alguna de las variables básicas vale cero, decimos que la solución es factible básica degenerada. Si en una solución básica, alguna de las variables es negativa, decimos que la solución es básica no factible. Formas Canónicas de un MPL Programa lineal en forma canónica maximizante. Decimos que un MPL está en forma canónica maximizante si todas las restricciones son del tipo ≤ y la FO es de maximizar. Max Z=CTX s.t. AX≤b X≥0 condición de no negatividad. Programa lineal en forma canónica minimizante. Decimos que un MPL está en forma canónica minimizante si todas las restricciones son del tipo ≥ y la FO es de minimizar. Min Z=CTX s.t. AX≥b X≥0 condición de no negatividad. Modelo de Programación Lineal en forma estándar Dado que un MPL puede plantearse de diversas formas, para unificar su análisis, es conveniente transformarlo en lo que normalmente se llama forma estándar. A veces, esta transformación ha de realizarse antes de resolver el MPL y determinar el optimo. Para describir un MPL en forma estándar son necesarios los siguientes elementos: 1. Un vector C∈Rn 2. Un vector no negativo b∈Rm (osea positivos o nulos) 3. Una matriz A m×n Con estos elementos, el problema lineal asociado y en forma estándar tiene la siguiente forma. Min (Max) Z=CTX s.t. AX=b X≥0 condición de no negatividad. donde CTX indica producto escalar de los vectores C y X, AX es el producto de la matriz A y el vector X, y X≥0 hace que todas la componentes de los vectores factibles sean no negativas. Los problemas de programación lineal se estudian normalmente en esta forma. Típicamente, n es mucho mayor que m. En resumen, un problema de programación lineal se dice que está en forma estándar si y sólo si 1. Es de Min (Max). 2. Sólo incluye restricciones de igualdad. 3. El vector b es no negativo. 4. Las variables X son no negativas Transformación a la forma estándar Cualquier MPL puede expresarse siempre en forma estándar sin más que llevar a cabo una serie de manipulaciones algebraicas: Las restricciones de desigualdad pueden convertirse en restricciones equivalentes de igualdad introduciendo nuevas variables que se denominan variables de holgura Si tenemos las siguiente restricciones ai1x1 + ai2x2 + … + ainxn ≤ bi la estandarizamos de la siguiente forma ai1x1 + ai2x2 + … + ainxn + xn+1 = bi B) ai1x1 + ai2x2 + … + ainxn ≥ bi la estandarizamos de la siguiente forma ai1x1 + ai2x2 + … + ainxn - xn+1 = bi Donde xn+1≥ 0 Método Simplex El método simplex es un procedimiento matricial para resolver problemas lineales expresados en su forma estándar. Empezando con una solución básica (x0), el método localiza sucesivamente otras soluciones factibles básicas que tienen mejores valores del objetivo, hasta obtener la solución óptima. Representación del espacio de soluciones con la forma estándar El desarrollo del método simplex esta basado en el uso de la forma estándar (en la cual todas las restricciones se convierten en ecuaciones) a fin de hacer la transición de las representaciones gráficas a las algebraicas. Un punto extremo factible, se define como una solución básica factible. Propiedad fundamental Los puntos extremos factibles de un programa lineal son totalmente determinados por las soluciones básicas factibles de las ecuaciones que lo definen. La propiedad fundamental muestra cómo la definición geométrica de un punto extremo del espacio de soluciones se traduce algebraicamente como las soluciones básicas de las ecuaciones que representan el programa lineal. Segundo, muchas de estas soluciones pueden ser no factibles o no existentes. Tercero, la función objetivo juega un papel pasivo en el cálculo, ya que es utilizada únicamente después de todas las soluciones básicas factibles han sido determinadas. El método simplex está diseñado específicamente para evitar estas ineficiencias. El enfoque consiste en partir de una solución básica factible (esto es, un punto extremo factible) y luego pasar sucesivamente a través de una sucesión de soluciones básicas factibles (no redundantes), de tal manera que cada nueva solución tenga la facultad de mejorar el valor de la función objetivo. La base del método simplex que garantiza generar tal sucesión de soluciones básicas está formada por dos condiciones fundamentales. La condición de optimalidad asegura que nunca se encontrará una solución inferior (relativa al punto de solución actual). La condición de factibilidad garantiza que partiendo de una solución básica factible, únicamente se encontrarán durante el cálculo soluciones básicas factibles. Paso 1. Para ayudar a desarrollar las dos condiciones, el programa lineal en forma estándar se presenta en tablero. Todos los Ci, en primera instancia, pasan a tablero inicial con signo cambiado sea cual fuere la función objetivo. Tanto los aij como los bi se pasan con su mismo signo. Var X1 … Xn S1 … Sm Z* Z C1 … Cn 0 … 0 0 S1 a11 … a1n 1 … 0 b1 … ... … … 0 … 0 … Sm am1 … amn 0 … 1 bm Pasos para aplicar el Método Simplex Paso 2. El paso siguiente es determinar una nueva solución básica factible (punto extremo) con un valor mejorado de la función objetivo, eligiendo una variable no básica. Para ello, se elige la variable que entra en maximización (minimización) como la variable no básica que tiene el mayor coeficiente negativo (el más positivo) en la ecuación Z. Un empate entre dos variables no básicas debe descomponerse arbitrariamente.Cuando todos los coeficientes del lado izquierdo de la ecuación Z son no negativos (no positivos) se ha llegado al óptimo. Esto es: Si F.O. Max (Min) XNB_entra=Min(Max){C1,…,Cn} Para ello, se elige la variable que entra en maximización (minimización) como la variable no básica que tiene el mayor coeficiente negativo (el más positivo) en la ecuación Z. Se intercambian las respectivas variables Paso 4. Convertir el elemento pívot (aentra,sale) a 1 y los demandas elementos pertenecientes a la misma columna a 0. Paso 5. Repetir los pasos 2 al 4 hasta que todos los Ci sean no negativos (no positivos). Paso 6. La solución se obtiene igualando X*i=bi resultantes. TEOREMAS DEL SIMPLEX: MAXIMIZAR TEOREMA 1 Dado una solución básica posible, asociada a una base B, si simultaneamente se cumple: Zj – Cj < 0 para algún j N y XB_sale 0 El problema no tiene solución optima finita (Región Factible No Acotada) TEOREMA 2 Dado una solución básica posible, asociada a una base B, si simultaneamente se cumple: Zj – Cj < 0 para algún j N y XB_sale > 0 el problema tiene una solución mejor. TEOREMA 3 Dado una solución básica posible, asociado a una base B, una condición necesaria y suficiente para que la solución sea optima, se debe cumplir: Zj – Cj 0 para algún j N TEOREMA 4 Para una variable no básica cuyo: Zj – Cj = 0 y aij > 0 Para algún i (fila) El problema tiene soluciones optimas múltiples y la base es optima. El teorema 3 se puede resumir para ambos casos: maximizar / minimizar : TEOREMA: La solución optima del PL canónico: Opt Z = C X Sa A X b X 0 Se obtiene cuando todos los (Zj – Cj) 0 , para el caso de maximizar. Y (Zj – Cj) 0 si es de minimizar. Ejemplo: Dado el PL Max Z = 3X1 + 5X2 sa X1 < 4 L1 2X2 < 12 L2 3X1 + 2X2 < 18 L3 Graficando: L3 : (0,9) y (6,0) L1 L2 2 4 6 8 X2 X1 • FO L3 (2,6) (4,3) Evaluando: Z(2,6) = 3(2) + 5(6) = 36 Z(4,3) = 3(4) + 5(3) = 27 Max 36, 27 = 36 Solución: X1 = 2, X2 = 6, Z = 36 2 4 6 8 X2 X1 • FO L1 L2 L3 Z X1 X2 S1 S2 S3 RHS 1 -3 -5 0 0 0 0 S1 A22(1/2) S2 S3 1 0 0 2* 3 2 1 0 0 0 1 0 0 0 1 4 12 18 A20(5) 1 -3 0 0 5/2 0 30 S1 X2 A23(-2) S3 1 0 0 1 3* 0 1 0 0 0 1/2 0 0 -1 1 4 6 6 A30(3) 1 0 0 0 3/2 1 36 A31(-1) S1 X2 X1 0 0 0 1 1 0 1 1/3 -1/3 0 1/2 0 0 -1/3 1/3 2 6 2 Estandarizando: X1 + S1 = 4 L1 2X2 + S2 = 12 L2 3X1 + 2X2 + S3 = 18 L3 Donde: Z – 3X1 – 5X2 - 0S1 - 0S2 - 0S3 = 0 Ejemplo: Resolver el PL usando el proceso de maximizar: Min Z = -2 X1 + X2 SA - X1 + X2 2 X1 + X2 5 X1 3 X1, X2 0 SOLUCION Estandarizando el PL Min Z = -2 X1 + X2 + 0 S1 + 0 S2 + 0 S3 SA - X1 + X2 + S1 = 2 X1 + X2 + S2 = 5 X1 + S3 = 3 X1, X2, S1, S2, S3 0 Resolviendo el PL usando; proceso de maximizar: - Min (-Z) = Max (-Z) = -(-2 X1 + X2 + 0 S1 + 0 S2 + 0 S3) Max L = 2 X1 - X2 - 0 S1 - 0 S2 - 0 S3 L X1 X2 S1 S2 S3 1 -2 1 0 0 0 0 S1 S2 S3 -1 1 1 1 1* 0 1 0 0 0 1 0 0 0 1 2 5 3 A30(2) 1 0 1 0 0 2 6 A31(1) S1 A32(-1) S2 X1 0 1 0 1 1 0 1 0 1 0 1 -1 0 0 1 5 2 3 Solución del PL dado: Como L = - Z entonces Z = - L = - (6) = -6 Con X1 = 3 y X2 = 0 EJEMPLO : PRODUCCION DE SOMBREROS Una Cia. Produce dos tipos de sombrero vaquero cada sombrero del tipo I requiere el doble de tiempo en mano de obra que el tipo II. Si todos los sombreros son solo del tipo II, la Cia. puede producir un total de 500 sombreros al día. El mercado limita las ventas diarias del tipo I y II a 150, 250 sombreros respectivamente. Los beneficios por sombrero son $8 para el tipo I y $5 para el tipo II. Determinar el número de sombreros que deben producirse de cada tipo. SOLUCION. 1. Variable De decisión. Xi : Nro. De sombreros del tipo i. 2. Restricciones. Limitación de la producción de Sombreros. 2 X1 + X2 500 Ventas del sombrero I X1 150 Ventas del sombrero del tipo II X2 250 donde 2X1 = X2 3. FO Trabajamos con beneficios Max Z = 8 X1 + 5 X2 Estandarizando el modelo lineal Max Z = 8 X1 + 5 X2 + 0 S1 + 0 S2 + 0 S3 sa 2 X1 + X2 + S1 = 500 X1 + S2 = 150 X2 + S3 = 250 Z X1 X2 S1 S2 S3 1 -8 -5 0 0 0 0 S1 S2 S3 2 1 1* 0 0 1 1 0 0 0 1 0 0 0 1 500 150 250 A20(8) 1 0 -5 0 8 0 1200 A21(-2) S1 X1 S3 0 1* 1 0 0 1 1 -2 0 0 1 0 0 0 1 200 150 250 A10(5) 1 0 0 5 -2 0 2200 X2 X1 A13(-1) S3 0 1 1 0 0 0 1 -2 0 0 1 0 -1 2* 1 200 150 50 A30(2) 1 0 0 4 0 1 2250 A31(2) X2 A32(-1) X1 S2 0 1 1 0 0 0 0 0 1 1/2 0 -1/2 -1/2 1 1/2 250 125 25 Solución usando el método simplex. EJEMPLO: PLANEAMIENTO DE PRODUCCION Un taller tiene tres tipos de máquina; A,B y C . El taller produce tres productos 1, 2 y 3. Se muestra la siguiente tabla de productividad ( horas de máquina por unidad de producto ). PRODUCTO \ TIPO MAQUINA P R O D U C T O 1 2 3 DISPONIBILIDAD Hrs/Semana A B C 8 2 3 4 3 - 2 - 1 360 180 100 Ganancia 20 6 8 SOLUCION: 1. Variable de decisión Xj : Nro. de unidades del producto j a producir por semana 2. Restricciones Limitaciones de hrs por tipo de máquina 8 X1 + 2 X2 + 3 X3 360 4 X1 + 3 X2 180 2 X1 + X3 100 X1, X2, X3 0 3.FO Se desea maximizar las ventas. Max Z = 20 X1 + 6 X2 + 8 X3 Estandarizando el modelo lineal: Max Z = 20X1 + 6X2 + 8X3 + 0S1 + 0S2 + 0S3 sa 8X1 + 2X2 + 3X3 + S1 = 360 4X1 + 3X2 + S2 = 180 2X1 + X3 + S3 = 100 X1, X2, X3, S1, S2, S3 0 Z X1 X2 X3 S1 S2 S3 1 -20 -6 -8 0 0 0 0 S1 S2 S3 8 2 3 4* 3 0 2 0 1 1 0 0 0 1 0 0 0 1 360 180 100 A10(8) 0 -5/3 0 8/3 -1/3 0 900 X3 X1 A13(-1) S3 0 -4/3 1 1 3/4* 0 0 -1/6 0 1/3 -2/3 0 0 1/4 0 -1/3 1/6 1 0 45 10 A20(5/3) 20/9 0 0 8/3 2/9 0 1000 A21(4/3) X3 X2 A23(1/6) S3 16/9 0 1 4/3 1 0 2/9 0 0 1/3 -2/9 0 0 1/3 0 -1/3 4/18 1 80 60 20 Solución usando el simplex tabular: 0 9 -8 0 5 0900 A21(-8) S1 X1 A23(-2) S3 0 -4 3* 1 3/4 0 0 -3/2 1 1 -2 0 0 1/4 0 0 -1/2 1 0 45 10 A20(20) EJEMPLO DE APLICACIÓN DIRECTA SOLUCIÓN UNICA . Max Z = 5 X1 + 2 X2 SA 6 X1 + 10 X2 2 10 X1 + 4 X2 4 X1, X2 0 Estandarizando: Max Z = 5 X1 + 2 X2 + 0 S1 + 0 S2 SA 6 X1 + 10 X2 + S1 = 2 10 X1 + 4 X2 + S2 = 4 X1, X2, S1, S2 0 Z X1 X2 S1 S2 1 -5 -2 0 0 0 S1 A22(1/10) S2 6 10 10 4 1 0 0 1 2 4 Solución: v Solución usando el simplex tabular: CASOS ESPECIALES DE SOLUCIONES DE PL CON EL MÉTODO SIMPLEX a. REGIÓN FACTIBLE NO ACOTADA Max Z = 4 X1 + 4 X2 SA -2 X1 + 2 X2 2 - X1 + 2 X2 4 X1, X2 0 Estandarizando: Max Z = 4 X1 + 4 X2 + 0 S1 + 0 S2 SA -2 X1 + 2 X2 + S1 = 2 - X1 + 2 X2 + S2 = 4 X1, X2, S1 , S2 0 Z X1 X2 S1 S2 1 -4 -4 0 0 0 S1 S2 -2 2* -1 2 1 0 0 1 2 4 A10(4) 1 -8 0 2 0 4 X2 A12(-2) S2 -1 1 1* 0 1/2 0 -1 1 1 2 A20(8) 1 0 0 -6 8 20 A21(1) X2 X1 0 1 1 0 -1/2 1 -1 1 3 2 Zj – Cj < 0 para algún j N y XB_sale 0 Solución usando el simplex tabular: b. SOLUCIONES OPTIMAS MÚLTIPLES. Max Z = 4 X1 + 6 X2 SA 2 X1 + 3 X2 6 6 X1 + 4 X2 12 -2 X1 + 2 X2 2 X1, X2 0 Estandarizando: Max Z = 4 X1 + 6 X2 + 0 S1 + 0 S2 + 0S3 SA 2 X1 + 3 X2 + S1 = 6 6 X1 + 4 X2 + S2 = 12 -2 X1 + 2 X2 + S3= 2 X1, X2, S1, S2, S3 0 Z X1 X2 S1 S2 S3 1 -4 -6 0 0 0 0 S1 S2 S3 2 3 6 4 -2 2* 1 0 0 0 1 0 0 0 1 6 12 2 Solución usando el simplex tabular: LD Z X1 X2 S1 S2 S3 1 -10 0 0 0 3 6 S1 S2 X2 5* 0 10 0 -1 1 1 0 -3/2 0 1 -2 0 0 1/2 3 8 1 LD Z X1 X2 S1 S2 S3 1 0 0 2 0 0 12 X1 S2 X2 1 0 0 0 0 1 1/5 0 -3/10 -2 1 1* 1/5 0 1/5 3/5 2 8/5 LD En la tercera tabla observamos, que hemos encontrado una solución optima, pero una variable no básica cumple con la condición del teorema 4 Zj – Cj = 0 y aij > 0 Para algún i Volvemos a iterar y obtenemos la siguiente tabla: Z X1 X2 S1 S2 S3 1 0 0 2 0 0 12 X1 S3 X2 1 0 0 0 0 1 -2/5 3/10 0 -2 1 1 3/5 -1/5 0 6/5 2 6/5 LD En donde seguirá habiendo una variable no básica que cumpla el teorema 4: Zj–Cj =0 y aij > 0, Para algún i, porque las soluciones son multiples. c. SOLUCIONES MÚLTIPLES REGIÓN FACTIBLE NO ACOTADA; Dado el PL Max Z = X1 + X2 Sa X1 + X2 < 4 6X1 + 2X2 < 12 X1 is , X2 0 Cambio de variable: X1 = Sa: Z S1 S2 1 -1 1 -1 0 0 0 S1 S2 1 -1 1 6 -6 2 1 0 0 1 4 12 1 0 0 0 1 0 4 A10(1) A12(-2) X2 S2 1 -1 1 4 -4 0 1 0 -2 1 4 4 1 0 0 1 0 4 A21(-1) X2 0 0 1 1 -1 0 6/4 -1/4 -2/4 1/4 3 1 A10(1) 1 0 0 0 1 0 4 X2 A12(-2) S2 1 -1 1 4* -4 0 1 0 -2 1 4 4 Z S1 S2 1 -1 1 -1 0 0 0 S1 S2 -1 -1 1* 6 -6 2 1 0 0 1 4 12 1 0 0 0 1 0 4 A21(-1) X2 0 0 1 1 -1 0 6/4 -1/4 -2/4 1/4 3 1 Donde: X1 = 1 – 0 = 1, X2 = 3, Z = 4 Estandarizando: Max Z = 5 X1 + 2 X2 + 0 S1 + 0 S2 SA 6 X1 + 10 X2 + S1 = 2 10 X1 + 4 X2 + S2 = 4 X1, X2, S1, S2 0 Z S1 S2 1 -1 1 -1 0 0 0 S1 S2 1 -1 1 6 -6 2 1 0 0 1 4 12 1 0 0 0 1 0 4 A10(1) A12(-2) X2 S2 1 -1 1 4 -4 0 1 0 -2 1 4 4 1 0 0 1 0 4 A21(-1) X2 0 0 1 1 -1 0 6/4 -1/4 -2/4 1/4 3 1 En la segunda tabla observamos, que hemos encontrado una solución optima, pero una variable no básica cumple con la condición: Zj – Cj = 0 y aij > 0 Para algún i (fila) esto indica que se tiene más de una solución optima. Si forzamos en la segunda tabla que la variable entrante sea X2, se tiene otra solución optima igual que la anterior con Z = 4. Z S1 S2 1 -1 1 -1 0 0 0 S1 S2 1 -1 1 6 -6 2 1 0 0 1 4 12 1 0 0 0 1 0 4 A10(1) A12(-2) X2 S2 1 -1 1 4 -4 0 1 0 -2 1 4 4 1 0 0 1 0 4 A21(-1) X2 0 0 1 1 -1 0 6/4 -1/4 -2/4 1/4 3 1 Cuidemos la vida… 2 1 2 1 = X X " 1 ' 1 X X - 2 " 1 ' 1 X X X Z Max + - = 0 , , 12 2 6 6 4 2 " 1 ' 1 2 " 1 ' 1 2 " 1 ' 1 > < + - < + - X X X X X X X X X 2 " 1 ' 1 X X X ' 1 X
Compartir