You are on page 1of 17

B.

PROGRAMACION LINEAL

La programacin lineal consiste en una funcin objetivo lineal a optimizar en presencia de un conjunto de restricciones lineales y su mximo exponente es 1, adems ninguna variable de decisin est multiplicada por otra. OPTIMIZACION DE SISTEMAS La programacin lineal (PL) se considera como una tcnica de IO, de apoyo a la toma de decisiones para la optimizacin de sistemas lineales. Este puede resolverse como una rutina en la mayora de los computadores incluyendo calculadoras de bolsillo, puesto que muchos de estos problemas involucran una gran cantidad de variables y parmetros. La PL es base importante del desarrollo de otras tcnicas de optimizacin incluidas la programacin entera, la estocstica la de flujo de redes y cuadrtica. La PL es una herramienta de optimizacin lineal determinstica. Es decir todos los parmetros del modelo se suponen conocidos con certeza. Sin embargo en la vida real es raro encontrar un problema donde prevalezca una verdadera certeza respecto a los datos [H.A.TAHA 1995] Formulacin General de un modelo de programacin lineal En general un problema de P.L puede es de maximizacin o de minimizacin y las restricciones pueden ser del tipo o o =. Las variables pueden ser no negativas o sin restriccin de signo. La forma general de un modelo de PL se expresa: Max o min Z = c1x1 + c2x2 + ... + cnxn Sujeto a a11x1 + a12x2 + ... +a1n ( , o =) b1 a21x1 + a22x2 + ... +a2n ( , o =) b2

.............................................................. am1x1 + a12x2 + ... +a1n ( , o =) bm x1, x2, ... , xn 0 Donde aij, bi, cj (i = 1,...,m, j = 1,...,n) son constantes determinadas por la naturaleza del problema. Nota: z y las restricciones son funciones lineales de las variables x1, x2, ... , xn, la inclusin de las restricciones hace imposible la solucin va los mtodos del clculo diferencial en varias variables.

Forma cannica (estndar) del modelo de Programacin Lineal


La forma general del modelo puede siempre expresarse de la siguiente manera: Maximizar Z = c1x1 + c2x2 + ... + cnxn Sujeto a a11x1 + a12x2 + ... +a1n b1 a21x1 + a22x2 + ... +a2n b2 .......................................... am1x1 + a12x2 + ... +a1n bm x1, x2, ... , xn 0 El modelo se escribe abreviadamente as: Max Z = j=1,ncjxj Sujeto a

j=1,naijxj

bi (i = 1,...,m)

xj 0, (j = 1,...,n)

Problemas de Programacin lineal


Ejemplo B1: Problema de transporte Un fabricante tiene tres plantas P1, P2, P3 y cinco bodegas B1,...,B5, el problema es establecer la planta Pi que debe producir el suministro para cada bodega. La capacidad de las plantas es limitada. En la tabla aparecen la capacidad de produccin de las plantas y los requerimientos de ventas de las bodegas en miles de cajas: Planta P1 P2 P3 Produccin 100 60 50 Bodega B1 B2 B3 B4 B5 Total 210 Total Venta 50 10 60 30 20 170

El costo de despacho de 1000 cajas desde cada planta a cada bodega aparece en la siguiente tabla: Destino Origen US$ P1 P1 P3 B1 B2 B3 B4 B5

240 420 300

300 440 340

160 300 300

500 200 480

360 220 400

La compaa desea determinar un programa de embarques que minimice los costos generales de transporte de la empresa.

Formulacin Sea xij el nmero de cajas enviadas desde la planta i a la bodega j y cij el costo de enviar la mercadera desde la planta i a la bodega j, (i=1..3, j = 1..5). El costo total es la suma de los productos del costo de embarque por el nmero de cajas enviadas por cada ruta. Entonces el objetivo es Min Z = 240x11 + 300x12 + 160x13 + 500x14 + 360x15 + 420x21 + 440x22 + 300x23 + 200x24 + 220x25 + 300x31 + 340x32 + 300x33 + 480x34 + 400x35 Hay dos conjuntos de restricciones para este problema: El primer conjunto garantiza el cumplimiento de las necesidades de venta de las bodegas, es decir la suma de las cajas enviadas por cada planta Pi a la bodega Bj debe ser igual a las ventas de esa Bodega. Entonces las restricciones de ventas son: Venta B1: x11 + x21 + x31 = 50 Venta B2: x12 + x22 + x32 = 10 Venta B3: x13 + x23 + x33 = 60 Venta B4: x14 + x24 + x34 = 30 Venta B5: x15 + x25 + x35 = 20

El segundo conjunto de restricciones garantiza que las fbricas no excedern su respectiva capacidad e produccin. Entonces las restricciones de produccin son: Planta P1: x11 + x12 + x13 + x14 + x15 100 Planta P2: x21 + x22 + x23 + x24 + x25 60

Planta P3: x31 + x32 + x33 + x34 + x35 50 Finalmente todas las xij deben ser todas mayores o iguales a 0. Ejemplo B2: Un problema de mezclas Al mezclar diferentes hidrocarburos se obtiene gasolina de diferentes grados. En este ejemplo se supone que una refinera dispone slo de dos tipos de gasolina cuyas caractersticas se presentan en la siguiente tabla: Mezclas disponibles Tipo 1 Tipo 2 Octanaje 104 94 Presin de vapor 5 9 Cantidad disponible (Barriles) 30,000 70,000

Con la combinacin de estos productos se pueden producir dos tipos de gasolina: para automvil y aviacin. Las cualidades de estos productos aparecen en la siguiente tabla: Producto final Aviacin Automvil Mnimo octanaje 102 96 Mxima presin de vapor 6 8 Mxima venta (Barriles) 20,000 Sin tope Precio de venta (Barril) 45.10 32.40

El octanaje y la presin de vapor del producto resultante es proporcional a la cantidad de cada gasolina utilizada en la mezcla. Por ejemplo para partes iguales de ambas gasolinas: Octanaje: 0.5*104 + 0.5*94 = 99 Presin de vapor: 0.5*5 + 0.5*9 = 7 La empresa desea maximizar los ingresos por la venta de gasolina como producto final

Formulacin Sean x1 el nmero de barriles de gasolina del tipo 1 para aviacin. X2 el nmero de barriles de gasolina del tipo 2 para aviacin. X3 el nmero de barriles de gasolina del tipo 1 para automvil. X4 el nmero de barriles de gasolina del tipo 2 para automvil. La venta correspondiente a gasolina para aviacin es 45.10*(x1 + x2) y la venta correspondiente a gasolina para automvil es 32.40(x3 + x4) entonces la funcin objetivo es: Maximizar: Z = 45.10x1 + 45.10x2 + 32.40x3 + 32.40x4 Existen varias restricciones: Demanda de gasolina para aviacin: X1 + x2 20,000 Cantidad disponible por tipo de gasolina: X1 + x3 30,000 X2 + x4 70,000 Restriccin de octanaje: Aviacin: (104x1 + 94x2)/(x1 + x2) 102 2x1 - 8x2 0 Automvil: (104x3 + 94x4)/(x3 + x4) 96 8x3 - 2x4 0 Restriccin de presin de vapor: Aviacin: (5x1 + 9x2)/(x1 + x2) 6 -x1 + 3x2 0 Automvil: (5x3 + 9x4)/(x3 + x4) 8 -3x3 + x4 0 No negatividad: X1, x2, x3, x4 0

Ejemplo B3: Un problema de programacin de produccin Una empresa se compromete a despachar por 6 meses un producto. Los costos de produccin varan mes a mes, la capacidad de produccin en horario normal es de 100 unidades mensuales y de 15 unidades adicionales por mes en tiempo extra. La siguiente tabla contiene los requerimientos de despacho y costo unitario de produccin: Mes: Despacho (unidades) Costo unitario (normal) US$ Costo unitario (extra) US$ Costo unitario de inventario US$ 1 95 30 35 2 2 85 30 35 2 3 110 32 37 2 4 115 32 37 2 5 90 31 36 2 6 105 32 37 2

La empresa desea cumplir con los requerimientos a un costo mnimo y no tiene unidades disponibles al principio y no desea tenerlas al finalizar el sexto mes. Formulacin: Sean x1, x2, x3, x4, x5, x6 la produccin normal de cada mes, Y1, y2, y3, y4, y5, y6 la produccin extra de cada mes, I1, I2, I3, I4, I5, I6 las unidades en inventario de cada mes. Se debe minimizar la suma del costo de produccin normal ms el costo de produccin extra y el costo de inventario, entonces la funcin objetivo es: Z = 30x1 + 30x2 + 32x3 + 32x4 + 31x5 + 32x6 + 35y1 + 35y2 + 37y3 + 37y4 + 36y5 + 37y6 + 2I1 + 2I2 + 2I3 + 2I4 + 2I5 + 2I6 Restricciones de produccin normal: x1, x2, x3, x4, x5, x6 100 Restricciones de produccin extra:

y1, y2, y3, y4, y5, y6 15 Restricciones de inventario y compromisos de despacho: (produccin) = (Uso) es decir: (Inventario inicial)+(Prod. Normal)+(Produccin extra) = (despacho) + (Inventario final) Mes1: x1 + y1 = 95 + I1 (Inventario inicial 0) Mes2: I1 + x2 + y2 - I2 = 85 Mes3: I2 + x3 + y3 - I3 = 110 Mes4: I3 + x4 + y4 - I4 = 115 Mes5: I4 + x5 + y5 - I5 = 90 Mes6: I5 + x6 + y6 - I6 = 105 I6 = 0 (Inventario final) x1, ..., x6 0 y1, ..., y6 0 I1, ..., I6 0 Ejercicio B1: Formule un modelo de sistema lineal integrado para el modelo de una fbrica de productos de madera que trabaja con dos especies de rboles y fabrica dos productos: madera aserrada y madera prensada, la funcin objetivo se obtiene de tomar el precio de los productos terminados por la cantidad producida menos los costos de operacin del sistema que se desea maximizar. Los costos de operacin provienen de la explotacin del bosque ms la compra al mercado externo, los costos de produccin de madera aserrada y de madera prensada y las ventas se obtienen del mercado externo e interno. Considere restricciones de Disponibilidad de los dos tipos de troncos, costos de embarque tanto de explotacin como de venta, costos de almacenaje, capacidad de produccin de la planta y demanda.

METODOS PARA LA SOLUCION DE PL Solucin grfica y solucin Algebraica de un Problema de PL


En las soluciones grficas vemos que basta considerar los puntos extremos de la regin factible para buscar la solucin optima. A continuacin se ver un mtodo algebraico para encontrar dichas soluciones: El primer consiste en transformar el problema a su forma tpica es decir las desigualdades se transforman en desigualdades con el lado derecho positivo. Max Z = 6x1 + 10x2 Sujeto a: 2x1 8 4x2 24 6x1 + 4x2 36 x1, x2 0 Forma tipica: Max Z = 6x1 + 10x2 Sujeto a: 2x1 + h1 = 8 4x2 + h2 = 24 6x1 + 4x2 + h3 = 36 x1, x2, h1, h2, h3 0

Las variables h1, h2, h3 se llaman variables de holgura y se usan para convertir las desigualdades en igualdades. La regin determinada por x1, x2, h1, h2, h3 0 y las restricciones es la misma determinada por las restricciones iniciales. Para obtener los puntos extremos de la regin, se observa que cada punto extremo tiene dos variables iguales a 0. Entonces los puntos pueden determinarse haciendo simultneamente dos de las cinco variables iguales a 0. El procedimiento determina una solucin bsica a partir del sistema de m ecuaciones con n incgnitas definido por la forma tpica, haciendo n - m variables iguales a 0. Las n - m variables son variables no bsicas y las m restantes son llamadas variables bsicas. Ejemplo B4 Max Z = 5x1 + 3x2 Sujeto a: 2x1 - 3x2 4 x1 + x2 10 x1, x2 0 Forma tpica: Max Z = 5x1 + 3x2 Sujeto a: 2x1 - 3x2 + x3 = 4 x1 + x2 + x4 = 10 x1, ... , x4 0 M = 2 (2 Ecuaciones) n = 4 (4 incognitas) Se efectan los siguientes clculos.

No. 1 2 3 4 5 6

Variables No Bsicas X1, x2 = 0 X3, x2 = 0 X3, x4 = 0 X1, x3 = 0 X2, x4 = 0 X1, x4 = 0

Variables Bsicas X3, x4 X1, x4 X1, x2 X2,x4 X1,x3 X2,x3

Valores de las VB X3 = 4, x4 =10 X1 = 2, x4 = 8 X1 = 34/5, x2=16/5 X2 = -4/3 X3 = -16 (no factible) X2 = 10, x3 = 34

Valores de Z 0 10 218/5* ----30

Se observa que se han resuelto 6 sistemas de ecuaciones, en general se resolveran Cnm, (por qu?) por ejemplo si m = 5 y n = 10 se resolveran C10,5 = 252 sistemas de ecuaciones.

Introduccin al Mtodo Simplex


El mtodo simplex comienza con una solucin bsica factible y est diseado para buscar en forma eficiente, nuevas soluciones que mejoran el valor de la funcin objetivo. El mtodo consiste en encontrar una solucin bsica factible de partida, determinar la variable bsica que debe salir y cual es la variable bsica que debe entrar en la iteracin. Finalmente proporciona una forma de identificar una solucin ptima. Ejemplo B5: Max: z = 3x1 + 4x2 Sujeto a: 4x1 + 2x2 80 2x1 + 5x2 120 x1, x2 0

Primer paso: Expresar el problema en forma tpica: Z -3x1 4x1 2x1 x1 -4x2 +2x2 +5x2 x2 +x3 +x4 = = = 0 80 120 0

El mtodo simplex comienza haciendo las variables de decisin iguales a 0 para z = 0 y establece como variables bsicas (VB) las variables de holgura x3 y x4 Solucin inicial: Z=0 (x1, x2, x3, x4) = (0, 0, 80, 120) Tabla inicial del mtodo: VB Z X3 X4 Z 1 0 0 X1 -3 4 2 X2 -4 2 5 X3 X4 0 1 0 0 0 1 Sol 0 80 120

Las columnas X1 y X2 corresponden a los coeficientes de las variables de decisin del problema expresado en su forma tpica, las columnas X3 y X4 corresponden a los coeficientes de las variables de holgura. La ltima columna corresponde a la solucin inicial y los bi Segundo paso: Determinacin de la nueva variable bsica y la variable que se retira de la solucin bsica factible. Variable que entra: La variable que entra es la correspondiente al coeficiente ms negativo de la fila Z. -4 Entra x2, x2 es la columna pivote.

Variable que sale: Se divide los bi de la columna solucin por los coeficientes de la columna pivote que sean estrictamente positivos y se toma el menor resultado. La variable correspondiente a esta fila es la que sale. Es la primera que llega a 0 cuando la variable que entra crece. Esta es la fila pivote. Entra (pivote) VB Z X3 Sale (pivote) X4 Z 1 0 0 X1 -3 4 2 X2 -4 2 5 X3 0 1 0 X4 0 0 1 Sol 0 80 120 80/2 = 40 120/5 = 24

El coeficiente de valor 5 de la fila x4 es el pivote. Tercer paso: Proceso Iterativo 1. Se divide la fila pivote por el pivote y se reduce a 0 el resto de la columna pivote. En ejemplo se multiplica por -2 y se suma a la fila x3, anlogamente se reduce la fila z. Primera iteracin: VB Z X3 X2 Solucin: Z = 96 (x1, x2, x3, x4) = (0, 24, 32, 0) Revisin de optimalidad: Z 1 0 0 X1 -7/5 16/5 2/5 X2 0 0 1 X3 0 1 0 X4 4/5 -2/5 1/5 Sol 96 32 24

Se llega al ptimo cuando todos los coeficientes de la funcin objetivo no son negativos, puesto que si algn coeficiente es negativo, en el lado derecho de la ecuacin, este sera positivo, por lo que un aumento de la variable correspondiente hara incrementar el valor de la funcin objetivo.

Entra (pivote) VB Z Sale (pivote) X3 X4 Z 1 0 0 X1 -7/5 16/5 2/5 X2 0 0 1 X3 0 1 0 X4 4/5 -2/5 1/5 Sol 96 32 24 32*5/16 = 10 24*4/2 = 48

Segunda iteracin: El coeficiente de valor 16/5 de la fila x3 es el pivote. Eliminamos columna pivote: VB Z X1 X2 Z 1 0 0 X1 0 1 0 X2 0 0 1 X3 7/16 5/16 -1/8 X4 5/8 -1/8 13/40 Sol 110 10 20

Revisin de optimalidad: Ahora todos los coeficientes de la funcin objetivo son no negativos entonces la solucin es la optima: Z* = 110 X1* = 10 X2* = 20 X3 = x4 = 0

Ejemplo B6 Max Z = 10x1 + 15x2 Sujeto a: 2x1 + 2x2 160 x1 + 2x2 120 4x1 + 2x2 180 x1, x2 0 Forma tpica: Variables de holgura: x3, x4, x5. Z - 10x1 - 15 x2 = 0 2x1 + 2x2 + x3 = 160 x1 + 2x2 + x4 = 120 4x1 + 2x2 + x5 = 280 x1, ... , x5 0 Tabla inicial: VB Z X3 X4 X5 Z 1 0 0 0 X1 -10 2 1 4 X2 -15 2 2 2 X3 0 1 0 0 X4 0 0 1 0 X5 0 0 0 1 Sol 0 160 120 280

Columna pivote: x2 Fila pivote: x4

Iteraciones: Segunda iteracin: VB Z X3 X2 X5 Z 1 0 0 0 X1 -5/2 1 1/2 3 X2 X3 0 0 1 0 0 1 0 0 X4 15/2 -1 1/2 -1 X5 0 0 0 1 Sol 900 40 60 160

Tercera iteracin: VB Z X1 X2 X5 Z 1 0 0 0 X1 0 1 0 0 X2 0 0 1 0 X3 5/2 1 -1/2 -3 X4 5 -1 1 2 X5 0 0 0 1 Sol 1000 40 40 40

La solucin optima es (x1, x2, x3, x4, x5)* = (40, 40, 0, 0, 40) Z* = 1000 Ejercicios B2 1. Max z = 3x1 + 10x2 Sujeto a: x1 + 4x2 8 x1 + 2x2 4 x1, x2 0 2. Max Z = 3x1 + 5x2

Sujeto a X1 -2x2 5 2x1 12 x1, x2 0 3. Max 2x1 + 3x2 Sujeto a: X1 + 2x2 + x3 = 4 X1 + x2 = 3 X1, x2, x3 0.

You might also like