Está en la página 1de 22

Programacin lineal

La programacin lineal es un procedimiento o algoritmo matemtico mediante el cual se resuelve un problema indeterminado, formulado a travs de un sistema de inecuaciones lineales, optimizando la funcin objetivo, tambin lineal. Consiste en optimizar (minimizar o maximizar) una funcin lineal, denominada funcin objetivo, de tal forma que las variables de dicha funcin estn sujetas a una serie de restricciones que expresamos mediante un sistema de inecuaciones lineales.

Historia de la programacin lineal


El problema de la resolucin de un sistema lineal de inecuaciones se remonta, al menos, a Joseph Fourier, despus de quien nace el mtodo de eliminacin de Fourier-Motzkin. La programacin lineal se plantea como un modelo matemtico desarrollado durante la Segunda Guerra Mundial para planificar los gastos y los retornos, a fin de reducir los costos al ejrcito y aumentar las prdidas del enemigo. Se mantuvo en secreto hasta 1947. En la posguerra, muchas industrias lo usaron en su planificacin diaria. Los fundadores de la tcnica son George Dantzig, quien public el algoritmo simplex, en 1947, John von Neumann, que desarroll la teora de la dualidad en el mismo ao, y Leonid Kantorvich, un matemtico ruso, que utiliza tcnicas similares en la economa antes de Dantzig y gan el premio Nobel en economa en 1975. En 1979, otro matemtico ruso, Leonid Khachiyan, dise el llamado Algoritmo del elipsoide, a travs del cual demostr que el problema de la programacin lineal es resoluble de manera eficiente, es decir, en tiempo polinomial.2 Ms tarde, en 1984, Narendra Karmarkar introduce un nuevo mtodo del punto interior para resolver problemas de programacin lineal, lo que constituira un enorme avance en los principios tericos y prcticos en el rea. El ejemplo original de Dantzig de la bsqueda de la mejor asignacin de 70 personas a 70 puestos de trabajo es un ejemplo de la utilidad de la programacin lineal. La potencia de computacin necesaria para examinar todas las permutaciones a fin de seleccionar la mejor asignacin es inmensa (factorial de 70, 70!) ; el nmero de posibles configuraciones excede al nmero de partculas en el universo. Sin embargo, toma slo un momento encontrar la solucin ptima mediante el planteamiento del problema como una programacin lineal y la aplicacin del algoritmo simplex. La teora de la programacin lineal reduce drsticamente el nmero de posibles soluciones factibles que deben ser revisadas.

Variables
Las variables son nmeros reales mayores o iguales a cero. En caso que se requiera que el valor resultante de las variables sea un nmero entero, el procedimiento de resolucin se denomina Programacin entera.

Restricciones
Las restricciones pueden ser de la forma:

Tipo 1:

Tipo 2:

Tipo 3: Donde:

A = valor conocido a ser respetado estrictamente; B = valor conocido que debe ser respetado o puede ser superado; C = valor conocido que no debe ser superado; j = nmero de la ecuacin, variable de 1 a M (nmero total de restricciones); a; b; y, c = coeficientes tcnicos conocidos; X = Incgnitas, de 1 a N; i = nmero de la incgnita, variable de 1 a N.

En general no hay restricciones en cuanto a los valores de N y M. Puede ser N = M; N > M; , N < M. Sin embargo si las restricciones del Tipo 1 son N, el problema puede ser determinado, y puede no tener sentido una optimizacin. Los tres tipos de restricciones pueden darse simultneamente en el mismo problema. Funcin Objetivo La funcin objetivo puede ser:

Donde:

= coeficientes son relativamente iguales a cero.

Programacin entera
En algunos casos se requiere que la solucin ptima se componga de valores enteros para algunas de las variables. La resolucin de este problema se obtiene analizando las posibles alternativas de valores enteros de esas variables en un entorno alrededor de la solucin obtenida considerando las variables reales. Muchas veces la solucin del programa lineal truncado esta lejos de ser el ptimo entero, por lo que se hace necesario usar algn algoritmo para hallar esta solucin de forma exacta. El ms famoso es el mtodo de 'Ramificar y Acotar' o Branch and Bound por su nombre en ingls. El mtodo de Ramificar y Acotar parte de la adicin de nuevas restricciones para cada variable de decisin (acotar) que al ser evaluado independientemente (ramificar) lleva al ptimo entero.

Aplicaciones
La programacin lineal constituye un importante campo de la optimizacin por varias razones, muchos problemas prcticos de la investigacin de operaciones pueden plantearse como problemas de programacin lineal. Algunos casos especiales de programacin lineal, tales como los problemas de flujo de redes y problemas de flujo de mercancas se consideraron en el desarrollo de las matemticas lo suficientemente importantes como para generar por si mismos mucha investigacin sobre algoritmos especializados en su solucin. Una serie de algoritmos diseados para resolver otros tipos de problemas de optimizacin constituyen casos particulares de la ms amplia tcnica de la programacin lineal. Histricamente, las ideas de programacin lineal han inspirado muchos de los conceptos centrales de la teora de optimizacin tales como la dualidad, la descomposicin y la importancia de la convexidad y sus generalizaciones. Del mismo modo, la programacin lineal es muy usada en la microeconoma y la administracin de empresas, ya sea para aumentar al mximo los ingresos o reducir

al mnimo los costos de un sistema de produccin. Algunos ejemplos son la mezcla de alimentos, la gestin de inventarios, la cartera y la gestin de las finanzas, la asignacin de recursos humanos y recursos de mquinas, la planificacin de campaas de publicidad, etc. Otros son:

Optimizacin de la combinacin de cifras comerciales en una red lineal de distribucin de agua. Aprovechamiento ptimo de los recursos de una cuenca hidrogrfica, para un ao con afluencias caracterizadas por corresponder a una determinada frecuencia. Soporte para toma de decisin en tiempo real, para operacin de un sistema de obras hidrulicas; Solucin de problemas de transporte.

Ejemplo

Este es un caso curioso, con solo 6 variables (un caso real de problema de transporte puede tener fcilmente ms de 1.000 variables) en el cual se aprecia la utilidad de este procedimiento de clculo. Existen tres minas de carbn cuya produccin diaria es:

La mina "a" produce 40 toneladas de carbn por da; La mina "b" produce 40 t/da; y, La mina "c" produce 20 t/da.

En la zona hay dos centrales termoelctricas que consumen:

La central "d" consume 40 t/da de carbn; y, La central "e" consume 60 t/da

Los costos de mercado, de transporte por tonelada son:


De "a" a "d" = 2 monedas De "a" a "e" = 11 monedas De "b" a "d" = 12 monedas De "b" a "e" = 24 monedas De "c" a "d" = 13 monedas De "c" a "e" = 18 monedas

Si se preguntase a los pobladores de la zona cmo organizar el transporte, tal vez la mayora opinara que debe aprovecharse el precio ofrecido por el transportista que va de "a" a "d", porque es ms conveniente que los otros, debido a que es el de ms bajo precio. En este caso, el costo total del transporte es:

Transporte de 40 t de "a" a "d" = 80 monedas Transporte de 20 t de "c" a "e" = 360 monedas Transporte de 40 t de "b" a "e" = 960 monedas Total 1.400 monedas.

Sin embargo, formulando el problema para ser resuelto por la programacin lineal se tienen las siguientes ecuaciones:

Restricciones de la produccin:

Restricciones del consumo:

La funcin objetivo ser:

La solucin de costo mnimo de transporte diario resulta ser:


Xb-d = 40 resultando un costo de 12 x 40 = 480 monedas Xa-e = 40 resultando un costo de 11 x 40 = 440 monedas Xc-e = 20 resultando un costo de 18 x 20 = 360 monedas Total 1.280 monedas.

120 monedas menos que antes.

Unos grandes almacenes encargan a un fabricante pantalones y chaquetas deportivas. El fabricante dispone para la confeccin de 750 m de tejido de algodn y 1000 m de tejido de polister. Cada pantaln precisa 1 m de algodn y 2 m de polister. Para cada chaqueta se necesitan 1.5 m de algodn y 1 m de polister. El precio del pantaln se fija en 50 y el de la chaqueta en 40 . Qu nmero de pantalones y chaquetas debe suministrar el fabricante a los almacenes para que stos consigan una venta mxima? 1Eleccin de las incgnitas. x = nmero de pantalones y = nmero de chaquetas 2Funcin objetivo f(x,y)= 50x + 40y 3Restricciones Para escribir las restricciones vamos a ayudarnos de una tabla: pantalones chaquetas disponible algodn 1 polister 2 x + 1.5y 750 2x + y 1000 Como el nmero de pantalones y chaquetas son nmeros naturales, tendremos dos restricciones ms: x0 1,5 1 750 1000

2x+3y1500

y0 4 Hallar el conjunto de soluciones factibles Tenemos que representar grficamente las restricciones. Al ser x 0 e y 0, trabajaremos en el primer cuadrante. Representamos las rectas, a partir de sus puntos de corte con los ejes.

Resolvemos grficamente la inecuacin: 2x +3y 1500, para ello tomamos un punto del plano, por ejemplo el (0,0). 20 + 30 1 500 Como 0 1 500 entonces el punto (0,0) se encuentra en el semiplano donde se cumple la desigualdad. De modo anlogo resolvemos 2x + y 1000. 20 + 0 1 000 La zona de interseccin de las soluciones de las inecuaciones sera la solucin al sistema de inecuaciones, que constituye el conjunto de las soluciones factibles.

5 Calcular las coordenadas de los vrtices del recinto de las soluciones factibles. La solucin ptima, si es nica, se encuentra en un vrtice del recinto. Estas son las soluciones a los sistemas: 2x + 3y = 1500; x = 0 (0, 500) 2x + y = 1000; y = 0 (500, 0) 2x + 3y =1500; 2x + y = 1000 (375, 250)

6 Calcular el valor de la funcin objetivo En la funcin objetivo sustituimos cada uno de los vrtices. f(x, y) = 50x + 40y f(0, 500) = 500 + 40500 = 20000 f(500, 0) = 50500 + 400 = 25000 f(375, 250) = 50375 + 40250 = 28750 Mximo

La solucin ptima es fabricar 375 pantalones y 250 chaquetas para obtener un beneficio de 28750 .

La solucin no siempre es nica, tambin podemos encontrarnos con una solucin mltiple. Ejemplo Si la funcin objetivo del ejercicio anterior hubiese sido: f(x,y)= 20x + 30y f(0,500) = 200 + 30500 = 15000 f(500, 0) = 20500 + 300 = 10000 f(375, 250) = 20375 + 30250 = 15000 Mximo Mximo

En este caso todos los pares, con soluciones enteras, del segmento trazado en negro seran mximos.

f(300, 300)= 20300 + 30300 = 15000

Mximo

1. Disponemos de 210.000 euros para invertir en bolsa. Nos recomiendan dos tipos

de acciones. Las del tipo A, que rinden el 10% y las del tipo B, que rinden el 8%. Decidimos invertir un mximo de 130.000 euros en las del tipo A y como mnimo 60.000 en las del tipo B. Adems queremos que la inversin en las del tipo A sea menor que el doble de la inversin en B. Cul tiene que ser la distribucin de la inversin para obtener el mximo inters anual? Solucin Es un problema de programacin lineal. Llamamos x a la cantidad que invertimos en acciones de tipo A Llamamos y a la cantidad que invertimos en acciones de tipo B inversin x y rendimiento 0,1x 0,08y 210000 Condiciones que deben cumplirse (restricciones): 0,1x+0,08y

Tipo A Tipo B

R1 R2 R3 R4 Dibujamos las rectas auxiliares asociadas a las restricciones para conseguir la regin factible (conjunto de puntos que cumplen esas condiciones)

r1 x y 0 210000 210000 0

r2 (paralela a OY) x y 130000 0 x 0

r3(paralela a OX) y 60000 x 0 130000

r4 y 0 65000

La regin factible es la pintada de amarillo, de vrtices A, B, C, D y E

A(0, 60000), B(120000, 60000), C(130000, 65000), D(130000, 80000) y E(0, 210000) La funcin objetivo es; F(x, y)= 0,1x+0,08y Si dibujamos la curva F(x, y) =0 (en rojo) y la desplazamos se puede comprobar grficamente que el vrtice mas alejado es el D, y por tanto es la solucin ptima. Comprobarlo analticamente (es decir comprobar que el valor mximo de la funcin objetivo, F, se alcanza en el vrtice D) 2. En una pastelera se hacen dos tipos de tartas: Vienesa y Real. Cada tarta Vienesa necesita un cuarto de relleno por cada Kg. de bizcocho y produce un beneficio de 250 Pts, mientras que una tarta Real necesita medio Kg. de relleno por cada Kg. de bizcocho y produce 400 Ptas. de beneficio. En la pastelera se pueden hacer diariamente hasta 150 Kg. de bizcocho y 50 Kg. de relleno, aunque por problemas de maquinaria no pueden hacer mas de 125 tartas de cada tipo. Cuntas tartas Vienesas y cuantas Reales deben vender al da para que sea mximo el beneficio?

Solucin En primer lugar hacemos una tabla para organizar los datos: Tipo T. Vienesa T. Real N x y Bizcocho 1.x 1.y 150 Relleno 0,250x 0,500y 50 Beneficio 250x 400y

Funcin objetivo (hay que obtener su mximo): f(x, y)=250x+ 400y Sujeta a las siguientes condiciones (restricciones del problema):

Consideramos las rectas auxiliares a las restricciones y dibujamos la regin factible: Para x 0 200 0.25x+0.50y=50, x + 2y=200 Y 100 0

Para x + y =150 x Y 0 150 150 0 La otras dos son paralelas a los ejes Al eje OY Al eje Ox x=125 y =125

Y las otras restricciones (x e y mayor o igual a cero) nos indican que las soluciones deben estar en el primer cuadrante

La regin factible la hemos coloreado de amarillo:

Encontremos los vrtices: El O(0,0), el A(125, 0) y el D(0, 100) se encuentran directamente (son las intersecciones con los ejes coordenados) Se observa que la restriccin y Resolviendo el sistema: es redundante (es decir sobra)

, por reduccin obtenemos y=50, x=100 Otro vrtice es el punto C(100, 50) Y el ltimo vrtice que nos falta se obtiene resolviendo el sistema: X+y=150 X=125 Cuya solucin es: X=125, Y=25 B(125, 25)

Los vrtices de la regin son O(0,0), A(125,0), B(125,25) y C(100,50) y D(0,100), Si dibujamos el vector de direccin de la funcin objetivo f(x, y)=250x+ 400y Haciendo 250x+ 400y =0, y=-(250/400)x=-125x/200 x 0 200 Y 0 -125

Se ve grficamente que la solucin es el punto (100, 50), ya que es el vrtice mas alejado (el ltimo que nos encontramos al desplazar la rectas 250x+400y=0 ) Lo comprobamos con el mtodo analtico, es decir usando el teorema que dice que si existe solucin nica debe hallarse en uno de los vrtices La uncin objetivo era: f(x, y)=250x+400y, sustituyendo en los vrtices obtenemos f(125,0)=31.250 f(125,25)=31.250+10.000=41.250 f(100,50)=25.000+20.000=45.000 f(0,100)=40.000 El mximo beneficio es 45.000 y se obtiene en el punto (100, 50) Conclusin: se tienen que vender 100 tartas vienesas y 50 tartas reales. 3. Una escuela prepara una excursin para 400 alumnos. La empresa de transporte tiene 8 autocares de 40 plazas y 10 autocares de 50 plazas, pero solo dispone de 9 conductores. El alquiler de un autocar grande cuesta 80 euros y el de uno pequeo, 60 euros. Calcular cuantos de cada tipo hay que utilizar para que la excursin resulte lo mas econmica posible para la escuela. Solucin Es un problema de programacin lineal, en este caso lo que queremos es hacer mnima la funcin objetivo.

Llamamos x al n de autocares de 40 plazas e y al n de autocares de 50 plazas que alquila la escuela. Entonces se tiene x ,y

Como slo hay 9 conductores se verifica que: x +y Como tienen que caber 400 alumnos se debe de verificar: 40x +50y , que simplificada quedara 4 x +5y

Por lo tanto las restricciones que nos van a permitir calcular la regin factible (conjunto de puntos solucin donde se cumplen todas las condiciones) son

La funcin objetivo es F(x, y)= 60x+ 80y Dibujamos las rectas auxiliares, r1 x 8 y 0 r2 x 0 y 10 r3 x 0 0 y 9 9 r4 x 0 10 y 8 0

As como la de que corresponde a F(x, y)=0 que se dibuja en rojo. Teniendo en cuenta las restricciones ( la de R4 es la parte de arriba y que la R3 es la parte de abajo), se encuentra la regin factible. En el dibujo es la parte amarilla.

Los vrtices son (0, 8), (0, 9) y el (5, 4), este ltimo es el punto de interseccin de las rectas r3 y r4

por reduccin

restando ambas ecuaciones se tiene x =5 y sustituyendo en la 1 ecuacin, y =4 Resolviendo grficamente se llega a que el punto (5, 4) es la solucin del problema. La solucin ptima . Comprobarlo sustituyendo en F(x, y) todos los vrtices y que este es el que da menor valor (mtodo analtico). 4. Una compaa posee dos minas: la mina A produce cada da 1 tonelada de hierro de alta calidad, 3 toneladas de calidad media y 5 de baja calidad. La mina B produce cada da 2 toneladas de cada una de las tres calidades. La compaa necesita al menos 80 toneladas de mineral de alta calidad, 160 toneladas de calidad media y 200 de baja calidad. Sabiendo que el coste diario de la operacin es de 2000 euros en cada mina cuntos das debe trabajar cada mina para que el coste sea mnimo?. Solucin Organizamos los datos en una tabla:

das Mina A Mina B x y

Alta calidad 1x 2y 80

Calidad media 3x 2y 160

Baja calidad 5x 2y 200

Coste diario 2000x 2000y

La funcin objetivo C(x, y)=2000x + 2000y

Las restricciones son:

La regin factible la obtenemos dibujando las rectas auxiliares: r1 x + 2y=80, r2 3x + 2y= 160 y r3 5x + 2y=200 en el primer cuadrante y considerando la regin no acotada que determina el sistema de restricciones:

Los vrtices son los puntos A(0, 100), B(20, 50), C(40, 20), D(80, 0), que se encuentran al resolver el sistema que determinan dos a dos las rectas auxiliares y (y que estn dentro de la regin factible).

r1

r2

que nos da el punto (40, 20) (comprobarlo)

r2 r1

r3

que nos da el punto (20, 50)

r3 no hace falta calcularlo pues queda fuera de la regin factible.

En la grfica se aprecia que el primer punto que se alcanza al desplazar la recta C(x, y)=0 es el (40, 20). Luego la solucin es trabajar 40 das en la mina A y 20 en la B. (mtodo grfico) Lo comprobamos aplicando el mtodo analtico:

C(0, 100)=2000.100=200000 C(20, 50)=2000.20+2000.50=40000 + 100000= 140000 C(40, 20)= 2000. 40+2000.20=80000 + 40000= 120000 C(80, 0)= 2000.80 =160000 5. Se va a organizar una planta de un taller de automviles donde van a trabajar electricistas y mecnicos. Por necesidades de mercado, es necesario que haya mayor o igual nmero de mecnicos que de electricistas y que el nmero de mecnicos no supere al doble que el de electricistas. En total hay disponibles 30 electricistas y 20 mecnicos. El beneficio de la empresa por jornada es de 250 euros por electricista y 200 euros por mecnico. Cuntos trabajadores de cada clase deben elegirse para obtener el mximo beneficio y cual es este? Sea x = n electricistas y = n mecnicos La funcin objetivo coste mnimo

f (x, y)=250x+ 200y , las restricciones La regin factible sera para estas restricciones:

Se aprecia grficamente (lnea en rojo) que la solucin ptima est en el punto (20, 20). Por tanto:

20 electricistas y 20 mecnicos dan el mximo beneficio, y este es 9000 euros, ya que f(x, y) =250.20+200.20=9000 6. Para recorrer un determinado trayecto, una compaa area desea ofertar, a lo sumo, 5000 plazas de dos tipos: T(turista) y P(primera). La ganancia correspondiente a cada plaza de tipo T es de 30 euros, mientras que la ganancia del tipo P es de 40 euros. El nmero de plazas tipo T no puede exceder de 4500 y el del tipo P, debe ser, como mximo, la tercera parte de las del tipo T que se oferten. Calcular cuntas tienen que ofertarse de cada clase para que las ganancias sean mximas. Solucin Sea x el n que se ofertan de tipo T, y el n que se ofertan de tipo P. n x y 5000 Ganancia 30x 40y 30x +40y

Turista Primera Total

La funcin objetivo es: f(x, y)=30x +40y

Las restricciones: La regin factible:

Los vrtices, A(0, 5000), B(3750, 1250), C(4500, 500) y D(4500, 0) (comprueba el punto B resolviendo el sistema correspondiente) El mtodo grfico nos da que el punto solucin es el B (3750, 1250)

Comprueba los resultados usando el mtodo analtico (sustituyendo los puntos vrtices en f y viendo q el mximo valor se obtiene en B)

También podría gustarte