1 CAPITULO 1 Introduccin a la Programacin Lineal Sistemas de Produccin Integrados 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 2 NDICE 1. Definicin 2. Un primer ejemplo 2.1. Construccin del modelo 2.2. La geometra del modelo 2.3. El lgebra del modelo 3. Ejercicios
1. INTRODUCCIN A LA PROGRAMACIN LINEAL 3 - Un problema de Programacin Lineal se presenta en entornos econmicos en el que hay que gestionar una serie de recursos para realizar una determinada actividad, utilizando para ello un criterio de tipo econmico. 1. Definicin - En un problema de Programacin Lineal existen diferentes soluciones y un criterio para discriminar entre ellas con el objetivo de encontrar la mejor. A este proceso de bsqueda se le denomina Optimizacin. - Optimizar significa poco ms que mejorar; en el contexto cientfico la optimizacin es el proceso de tratar de encontrar la mejor solucin posible para un determinado problema. Los problemas de Programacin Lineal pueden considerarse o denominarse como problemas de optimizacin, si bien, esta denominacin recoge un rango ms amplio de problemas. 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 4 1. Definicin - De forma ms precisa, estos problemas se trata de calcular el valor de unas variables que estn sujetas a una serie de restricciones y para las que una determinada funcin objetivo alcanza su valor mximo o mnimo. - El criterio o funcin objetivo en un problema PL va referido a la minimizacin de los costes de la actividad, o a la maximizacin de beneficios. - Los problemas de Programacin Lineal se expresan mediante un conjunto de relaciones matemticas que se conoce como modelo. - El esfuerzo se centra tanto en la construccin del modelo como en la resolucin del mismo. 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 5 Un problema de Programacin Lineal est formado por tres componentes principales: Un conjunto de variables: Referidas a la actividad que se desarrolla en el sistema que se quiere optimizar. Notacin: x 1 , x 2 , x 3 , . Un conjunto de restricciones: Expresan la relacin entre el consumo de recursos y las limitaciones de los mismos, as como toda clase de caractersticas que hay que imponer en el problema y que estn asociadas a la actividad que se realiza en el sistema. Ejemplo: x 1 + x 2 s 3 Una funcin objetivo: Criterio que se desea optimizar Ejemplo: Maximizar x 1 + 3x 2
1. Definicin 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 6 Los problemas de optimizacin dependen fundamentalmente para su resolucin del tipo de variables que forman parte del mismo y del carcter lineal o no lineal de las restricciones. Problemas Lineales (Funcin Objetivo y Restricciones lineales) No Lineales (Funcin Objetivo y/o restricciones no lineales) Continuos (Vbles. continuas) Enteros (vbles. enteras) [Entera mixta (vbles. enteras y continuas)] PROGRAMACIN LINEAL [CONTINUA] PROGRAMACIN ENTERA 1. Definicin 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 7 Resolucin Programacin Lineal Continua (Mtodos exactos) SIMPLEX Primal-Dual Mtodo de Puntos Interiores Programacin Entera Mtodo Exactos Mtodo aproximados 1. Definicin 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 8 NDICE 1. Definicin 2. Un primer ejemplo 2.1. Construccin del modelo 2.2. La geometra del modelo 2.3. El lgebra del modelo 3. Ejercicios
1. INTRODUCCIN A LA PROGRAMACIN LINEAL 9 2. Un primer ejemplo Un fabricante de mantequilla desea optimizar la produccin diaria de su factora. Fabrica dos tipos de mantequilla (Estndar y Media Sal). Un Kilo de mantequilla Estndar proporciona un beneficio de 10 y uno de MediaSal de 15 . Para la produccin de mantequillas se usan tres procesos, pasterizacin, centrifugado, y batido. La capacidad de pasterizacin es de 6horas/da, de centrifugado es de 3horas/da y de batido es de 3.5horas/da. Los tiempos(en minutos) de proceso por cada kilo de mantequilla se recogen en la siguiente tabla: Estndar Media Sal Pasterizacin 3 8 Centrifugado 3 2 Batido 3 4 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 10 NDICE 1. Definicin 2. Un primer ejemplo 2.1. Construccin del modelo 2.2. La geometra del modelo 2.3. El lgebra del modelo 3. Ejercicios
1. INTRODUCCIN A LA PROGRAMACIN LINEAL 11 Identificacin de componentes Variables asociadas a la actividad: - Cantidad de mantequilla Estndar a producir por da: x 1 - Cantidad de mantequilla Media Sal a producir por da: x 2 Objetivo: Maximizar el beneficio 2. Un primer ejemplo 2. Un primer ejemplo 2.1. Construccin del modelo Restricciones: - Limitacin de las horas de pasterizacin - Limitacin de las horas de centrifugado - Limitacin de las horas de batido Recursos: - Tiempo de pasterizacin - Tiempo de centrifugado - Tiempo de batido 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 12 Semntica de la restriccin: Consumo s Capacidad 1 Kg Estndar consume 3 minutos de pasterizacin 2 Kg Estndar consumen 6 minutos(32) de pasterizacin ..... x 1 Kgs Estndar consumen 3x 1 minutos de pasterizacin Idntico anlisis para Kgs de Media Sal: 8x 2 Consumo Total = 3x 1 + 8x 2 minutos Capacidad = 6 horas = 360 minutos Restriccin completa: 3x 1 + 8x 2 s 360 2. Un primer ejemplo 2. Un primer ejemplo 2.1. Construccin del modelo Restricciones: Expresin matemtica - Limitacin de las horas de pasterizacin Misma Unidad - Anlisis equivalente para el resto de restricciones 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 13 Objetivo: Maximizar los beneficios: 1 Kg Estndar Beneficio = 10 2 Kg Estndar Beneficio = 102 = 20 ............. x 1 Kg Estndar Beneficio = 10x 1
Idntico anlisis para Media Sal: 15x 2 Beneficio Total = 10 * x 1 + 15 * x 2
Funcin Objetivo: Expresin matemtica 2. Un primer ejemplo 2. Un primer ejemplo 2.1. Construccin del modelo Expresin: Max 10x1 + 15x2 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 14 Modelo: x 1 : Kilos de mantequilla Estndar x 2 : Kilos de mantequilla Media Sal
Funcin Objetivo: Rest. Recurso pasterizacin: Rest. Recurso centrifugado: Rest. Recurso batido: Signo de las variables: 1 2 1 2 1 2 1 2 1 2 10 15 3 8 360 (R1) 3 2 180 (R2) 3 4 210 (R3) , 0 Max x x sujeto a x x x x x x x x + + s + s + s > 2. Un primer ejemplo 2. Un primer ejemplo 2.1. Construccin del modelo Variables: Expresiones Lineales Variables continuas - Modelo lineal - Programacin lineal continua 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 15 NDICE 1. Definicin 2. Un primer ejemplo 2.1. Construccin del modelo 2.2. La geometra del modelo 2.3. El lgebra del modelo 3. Ejercicios
1. INTRODUCCIN A LA PROGRAMACIN LINEAL 16 20 30 40 50 60 70 80 90 100 110 120 130 140 150 10 10 20 30 40 50 60 70 80 90 100 1 2 3 8 360 x x + s x 1 x 2 1 2 3 8 360 x x + = 2. Un primer ejemplo 2. Un primer ejemplo 2.2. La geometra del modelo Representacin de una restriccin: - Es un semiespacio del espacio de 2
- El semiespacio se define por la recta que expresa la restriccin con signo de igualdad 1 2 3 8 360 x x + > 1 2 3 8 360 x x + < SEMIESPACIO NO ADMISIBLE SEMIESPACIO ADMISIBLE 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 17 20 30 40 50 60 70 80 90 100 110 120 130 140 150 10 10 20 30 40 50 60 70 80 90 100 1 2 1 2 1 2 1 2 1 2 10 15 . . 3 8 360 (R1) 3 2 180 (R2) 3 4 210 (R3) , 0 Max x x s a x x x x x x x x + + s + s + s > x 1 x 2 R2 R1 R3 Regin de admisibilidad convexa 2 2 3 8 360 x x + = 1 2 3 2 180 x x + = 1 2 3 4 210 x x + = 2. Un primer ejemplo 2. Un primer ejemplo 2.2. La geometra del modelo 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 18 1 2 1 2 1 2 1 2 1 2 10 15 . . 3 8 360 (R1) 3 2 180 (R2) 3 4 210 (R3) , 0 Max x x s a x x x x x x x x + + s + s + s > (R1) (R3) 20 30 40 50 60 70 10 10 20 30 40 50 x 1 x 2 (R2) 1 2 10 15 z x x = + z=0 z=100 Direccin de mxima mejora 2. Un primer ejemplo 2. Un primer ejemplo 2.2. La geometra del modelo 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 19 20 30 40 50 60 70 10 10 20 30 40 50 x 1 x 2 ptimo = Punto interior 2. Un primer ejemplo 2. Un primer ejemplo 2.2. La geometra del modelo Siguiendo la direccin de mxima mejora desde cualquier punto interior podr ir a otro punto con mejor valor de la F.O. Por tanto, el ptimo debe estar en la frontera de la regin. 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 20 X 1 V1 V2 V3 V4 o | o: ngulo agudo = Mejora |: ngulo obtuso = Empeoramiento ptimo e Vrtice 2. Un primer ejemplo 2. Un primer ejemplo 2.2. La geometra del modelo ptimo = Punto interior de una arista * 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 21 X 1 V1 V2 V3 V4 agudo agudo agudo agudo obtuso obtuso obtuso obtuso Vrtice ptimo 2. Un primer ejemplo 2. Un primer ejemplo 2.2. La geometra del modelo 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 22 NDICE 1. Definicin 2. Un primer ejemplo 2.1. Construccin del modelo 2.2. La geometra del modelo 2.3. El lgebra del modelo 3. Ejercicios 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 23 20 30 40 50 60 70 10 10 20 30 40 50 x 1 x 2 Variables de holgura 1 2 1 2 1 2 1 2 1 2 10 15 . . 3 8 360 ( ) 3 2 180 ( ) 3 4 R2 R1 210 ( ) 0 R3 , Max x x s a x x x x x x x x + + s + s + s > 1 2 1 2 1 1 2 2 1 2 3 1 2 1 2 3 10 15 . . 3 8 360 3 2 180 3 4 210 , , , , 0 Max x x s a x x h x x h x x h x x h h h + + + = + + = + + = > V1 V2 V3 V4 V5 2. Un primer ejemplo 2. Un primer ejemplo 2.3. El lgebra del modelo m = Nmero de restricciones n = Nmero de variables 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 24 Caractersticas generales de un vrtice 20 30 40 50 60 70 10 10 20 30 40 50 x 1 x 2 V1 V2 V3 V4 V5 x1l; x2=0 x2l x1=0 - El nmero de variables (>0) es igual a m Vbles BSICAS - El nmero de variables = 0 es igual a (n-m) Vbles NO BSICAS - Se intercambian una a una desde un vrtice a otro adyacente V1 (x1=0; x2=0; h1>0;h2>0;h3>0) V2 (x1=0; x2>0; h1=0;h2>0;h3>0) V3 (x1>0; x2>0; h1=0;h2>0;h3=0) V4 (x1>0; x2>0; h1>0;h2=0;h3=0) V5 (x1>0; x2=0; h1>0;h2=0;h3>0) 1 2 1 2 1 2 1 2 1 2 10 15 . . 3 8 360 ( ) 3 2 180 ( ) 3 4 R2 R1 210 ( ) 0 R3 , Max x x s a x x x x x x x x + + s + s + s > 2. Un primer ejemplo 2. Un primer ejemplo 2.3. El lgebra del modelo Variables: n=5 Restricciones: m=3 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 25 Vrtice V1: x1=x2=0 (n-m) h1>0; h2>0;h3>0 (m) Restricciones: h1=360 h2=180 h3=210 (x1 x2 h1 h2 h3) (0 0 360 180 210) Valor de la F.O. en V1 = 0 + 0 = 0 Dos cuestiones: Cmo me desplazo hacia un vrtice adyacente? Cmo averiguo si un vrtice es el ptimo? 1 2 1 2 1 1 2 2 1 2 3 1 2 1 2 3 10 15 . . 3 8 360 3 2 180 3 4 210 , , , , 0 Max x x s a x x h x x h x x h x x h h h + + + = + + = + + = > Variables: n=5 Restricciones: m=3 2. Un primer ejemplo 2. Un primer ejemplo 2.3. El lgebra del modelo 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 26 Cmo me desplazo hacia un vrtice adyacente? EJEMPLO: V1 V2 Me desplazo por la arista hasta topar con el siguiente vrtice x2l hasta que alguna de las variables que son >0 en V1 se haga = 0 Durante el desplazamiento la otra variable que es = 0 en V1 permanece a 0 en toda la arista 2 1 2 2 2 3 1 2 1 2 3 8 360 2 180 4 210 0, , , , 0 x h x h x h x x h h h + = + = + = = > Paso 1. Calcular el vrtice destino Paso 2. Preparar las restricciones para un desplazamiento posterior Paso 1: Calcular el vrtice destino 1 2 2 2 3 2 1 2 1 2 3 360 8 180 2 210 4 0, , , , 0 h x h x h x x x h h h = = = = > 2. Un primer ejemplo 2. Un primer ejemplo 2.3. El lgebra del modelo 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 27 1 2 3 0 0 0 h h h > > > 2 2 2 360 8 0 180 2 0 210 4 0 x x x > > > 2 2 2 360 45 8 180 90 2 210 52.5 4 x x x s = s = s = 2 45 x s 2 45 x = 2 1 2 2 2 3 2 1 45 360 8 0 180 2 90 210 4 30 0 x h x h x h x x = = = = = = = = (x1 x2 h1 h2 h3) = (0 45 0 90 30) Vrtice V2 Valor de la F.O. En V2 = 10x1 + 15x2 = = 0 + 675 = 675 2. Un primer ejemplo 2. Un primer ejemplo 2.3. El lgebra del modelo 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 28 Paso 2. Preparar las restricciones para un nuevo desplazamiento: Hay que realizar transformaciones lineales en las restricciones hasta conseguir la matriz identidad en las columnas de las variables bsicas del vrtice en el que me encuentro. Parto de las expresiones de las restricciones del vrtice anterior 1 2 1 1 2 2 1 2 3 1 2 1 2 3 3 8 360 3 2 180 3 4 210 , , , , 0 x x h x x h x x h x x h h h + + = + + = + + = > V1 V1 V2 1 2 1 1 1 2 1 1 3 1 2 1 2 3 3 1 45 8 8 18 2 90 8 8 3 1 30 2 2 , , , , 0 x x h x h h x h h x x h h h + + = + = + = > 2. Un primer ejemplo 2. Un primer ejemplo 2.3. El lgebra del modelo 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 29 Para responder a esta pregunta tengo que expresar la F.O.en funcin de las variables que valen 0 en el vrtice. 1 2 2 1 1 1 1 1 1 1 3 1 3 1 35 15 . . 10 15 [ 45 ] . ( 2) 10 15(45 ) 675 8 8 8 8 8 8 F O x x x x h F O V x x h x h = + = = + = + Coste relativo = ndice que me indica si el incremento de esa variable produce mejora en la F.O. Si ndice > 0 Mejoro si me desplazo por esa arista Si ndice < 0 Empeoro x1l Mejoro con tasa 35/8 h1l Empeoro con tasa 15/8 Si en el vrtice al que llego los ndices de la expresin de la F.O. en ese vrtice son todos negativos (en un problema de maximizar), dicho vrtice es el ptimo del problema El vrtice al que he llegado es ptimo? 2. Un primer ejemplo 2. Un primer ejemplo 2.3. El lgebra del modelo 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 30 NDICE 1. Definicin 2. Un primer ejemplo 2.1. Construccin del modelo 2.2. La geometra del modelo 2.3. El lgebra del modelo 3. Ejercicios 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 31 3. Ejercicios Para los sistemas productivos que aparecen a continuacin: - Obtenga el modelo matemtico del problema - Represente grficamente las restricciones - Identifique geomtricamente el vrtice ptimo - Realice el recorrido algebraico por los vrtices hasta alcanzar el vrtice ptimo 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 32 3. Ejercicios Un artesano alfarero desea optimizar la produccin diaria de su taller de alfarera. Fabrica dos tipos de nforas (Anforas1 y Anforas2). Para ello utiliza un proceso de produccin simple. Emplea dos tipos de arcilla (arcilla A y arcilla B) que mezcla en las proporciones adecuadas, les da forma durante un cierto tiempo y las pone a secar en el horno que posee hasta el da siguiente. El alfarero vende posteriormente las nforas1 a 100u.m. Y las nforas2 a 250u.m. El horno posee una capacidad para 144 nforas. Diariamente, dispone de 300 Kg de arcilla A y 16 Kg de arcilla B, y 15 horas de trabajo (l y su hijo). Las proporciones de arcilla A y B y el tiempo que necesita cada nfora se recogen en la siguiente tabla: nforas 1 nforas 2 Arcilla A 1.5 3 Arcilla B 0 0.2 Tiempo 0.1 0.12 Ejercicio 1 1. INTRODUCCIN A LA PROGRAMACIN LINEAL 33 3. Ejercicios Un fabricante de baldosas desea optimizar la produccin semanal de su factora. Fabrica dos tipos de baldosas (Estndar y Lujo). Una baldosa Estndar proporciona un beneficio de 10 y una Lujo de 15 . Para la produccin de baldosas se usan tres procesos, apomozado, pulido y abrillantado. La capacidad de apomazado es de 200horas/semana, de pulido es de 80horas/semana y la de abrillantado de 60horas/semana. Adems, cada baldosa Estndar emplea 25mg de una sustancia para su limpieza por 10 de la baldosa Lujo. Se disponen de 1,2Kg por semana de esa sustancia. Los tiempos de pulido y abrillantado(en horas) por cada unidad se recogen en la siguiente tabla: Estndar Lujo Apomazado 0.5 0.45 Pulido 0.3 0.2 Abrillantado 0.15 0.3 Ejercicio 2