programación lineal

24

Click here to load reader

Upload: jdsgt

Post on 18-Jun-2015

4.612 views

Category:

Documents


5 download

DESCRIPTION

para alumnos Mariano Galvez

TRANSCRIPT

Page 1: Programación lineal

Universidad Mariano Gálvez de Guatemala Facultad de Ingeniería Ingeniería en Sistemas de información Investigación de Operaciones Ing. Jorge Rivera

Programación lineal La programación lineal da respuesta a situaciones en las que se exige maximizar o minimizar funciones que se encuentran sujetas a determinadas limitaciones, que llamaremos restricciones .

Su empleo es frecuente en aplicaciones de la industria, la economía, la estrategia militar, etc.

Función objetivo

En esencia la programación lineal consiste en optimizar (maximizar o minimizar) una función objetivo , que es una función lineal de varias variables:

f(x,y) = ax + by .

Restricciones

La función objetivo está sujeta a una serie de restricciones , expresadas por inecuaciones lineales :

a1x + b1y ≤ c1

a2x + b2y ≤c2

... ... ...

anx + bny ≤cn

Cada desigualdad del sistema de restricciones determina un semiplano.

Page 2: Programación lineal

Solución factible

El conjunto intersección, de todos los semiplanos formados por las restricciones, determina un recinto, acotado o no, que recibe el nombre de región de validez o zona de soluciones factibles .

Solución óptima

El conjunto de los vértices del recinto se denomina conjunto de soluciones factibles básicas y el vértice donde se presenta la solución óptima se llama solución máxima (o mínima según el caso).

Page 3: Programación lineal

Valor del programa lineal

El valor que toma la función objetivo en el vértice de solución óptima se llama valor del programa lineal .

Pasos para resolver un problema de programación lineal

1. Elegir las incógnitas .

2. Escribir la función objetivo en función de los datos del problema.

3. Escribir las restricciones en forma de sistema de inecuaciones.

4. Averiguar el conjunto de soluciones factibles representando gráficamente las restricciones.

5. Calcular las coordenadas de los vértices del recinto de soluciones factibles (si son pocos).

6. Calcular el valor de la función objetivo en cada uno de los vértices para ver en cuál de ellos presenta el valor máximo o mínimo según nos pida el problema (hay que tener en cuenta aquí la posible no existencia de solución si el recinto no está acotado).

Page 4: Programación lineal

Ejemplos de programación lineal Unos grandes almacenes encargan a un fabricante pantalones y chaquetas deportivas.

El fabricante dispone para la confección de 750 m de tejido de algodón y 1000 m de tejido de poliéster. Cada pantalón precisa 1 m de algodón y 2 m de poliéster. Para cada chaqueta se necesitan 1.5 m de algodón y 1 m de poliéster.

El precio del pantalón se fija en 50 € y el de la chaqueta en 40 €.

¿Qué número de pantalones y chaquetas debe suministrar el fabricante a los almacenes para que éstos consigan una venta máxima?

1Elección de las incógnitas .

x = número de pantalones

y = número de chaquetas

2Función objetivo

f(x,y)= 50x + 40y

3Restricciones

Para escribir las restricciones vamos a ayudarnos de una tabla:

pantalones chaquetas disponible

algodón 1 1,5 750

poliéster 2 1 1000

x + 1.5y ≤ 750 2x+3y≤1500

2x + y ≤ 1000

Como el número de pantalones y chaquetas son números naturales, tendremos dos restricciones más:

x ≥ 0

y ≥ 0

Page 5: Programación lineal

4 Hallar el conjunto de soluciones factibles

Tenemos que representar gráficamente 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 gráficamente la inecuación: 2x +3y ≤ 1500, para ello tomamos un punto del plano, por ejemplo el (0,0).

2·0 + 3·0 ≤ 1 500

Como 0 ≤ 1 500 entonces el punto (0,0) se encuentra en el semiplano donde se cumple la desigualdad.

De modo análogo resolvemos 2x + y ≤ 1000.

2·0 + 0 ≤ 1 00

La zona de intersección de las soluciones de las inecuaciones sería la solución al sistema de inecuaciones, que constituye el conjunto de las soluciones factibles.

Page 6: Programación lineal

5 Calcular las coordenadas de los vértices del recinto de las soluciones factibles.

La solución óptima , si es única, se encuentra en un vértice del recinto. éstos 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)

Page 7: Programación lineal

6 Calcular el valor de la función objetivo

En la función objetivo sustituimos cada uno de los vértices.

f(x, y) = 50x + 40y

f(0, 500) = 50·0 + 40·500 = 20000 €

f(500, 0) = 50·500 + 40·0 = 25000 €

f(375, 250) = 50·375 + 40·250 = 28750 € Máximo

La solución óptima es fabricar 375 pantalones y 250 chaquetas para obtener un beneficio de 28750 €.

La solución no siempre es única, también podemos encontrarnos con una solución múltiple .

Ejemplo

Si la función objetivo del ejercicio anterior hubiese sido:

f(x,y)= 20x + 30y

f(0,500) = 20·0 + 30·500 = 15000 € Máximo

f(500, 0) = 20·500 + 30·0 = 10000 €

f(375, 250) = 20·375 + 30·250 = 15000 € Máximo

En este caso todos los pares, con soluciones enteras, del segmento trazado en negro serían máximos.

Page 8: Programación lineal

f(300, 300)= 20·300 + 30·300 = 15000 € Máximo

Page 9: Programación lineal

Ejercicios resueltos de programación lineal

1

Una compañía fabrica y venden dos modelos de lámpara L1 y L2. Para su fabricación se necesita un trabajo manual de 20 minutos para el modelo L1 y de 30 minutos para el L2; y un trabajo de máquina para L1 y de 10 minutos para L2. Se dispone para el trabajo manual de 100 horas al mes y para la máquina 80 horas al mes. Sabiendo que el beneficio por unidad es de 15 y 10 euros para L1 y L2, respectivamente, planificar la producción para obtener el máximo beneficio.

1Elección de las incógnitas.

x = nº de lámparas L1

y = nº de lámparas L2

2Función objetivo

f(x, y) = 15x + 10y

3Restricciones

Pasamos los tiempos a horas

20 min = 1/3 h

30 min = 1/2 h

10 min = 1/6 h

Para escribir las restricciones vamos a ayudarnos de una tabla:

L1 L2 Tiempo

Manual 1/3 1/2 100

Máquina 1/3 1/6 80

1/3x + 1/2y ≤ 100

1/3x + 1/6y ≤ 80

Page 10: Programación lineal

Como el número de lámparas son números naturales, tendremos dos restricciones más:

x ≥ 0

y ≥ 0

4 Hallar el conjunto de soluciones factibles

Tenemos que representar gráficamente 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 gráficamente la inecuación: 1/3 x + 1/2 y ≤ 100; para ello tomamos un punto del plano, por ejemplo el (0,0).

1/3·0 + 1/2·0 ≤ 100

1/3·0 + 1/6·0 ≤ 80

La zona de intersección de las soluciones de las inecuaciones sería la solución al sistema de inecuaciones, que constituye el conjunto de las soluciones factibles.

5 Calcular las coordenadas de los vértices del recinto de las soluciones factibles.

Page 11: Programación lineal

La solución óptima si es única se encuentra en un vértice del recinto. éstos son las soluciones a los sistemas:

1/3x + 1/2y = 100; x = 0 (0, 200)

1/3x + 1/6y = 80; y = 0(240, 0)

1/3x + 1/2y = 100; 1/3x + 1/6y = 80(210, 60)

6 Calcular el valor de la función objetivo

En la función objetivo sustituimos cada uno de los vértices.

f(x, y) = 15x + 10y

f(0, 200) = 15·0 + 10·200 = 2 000 €

f(240, 0 ) = 15·240 + 10·0 = 3 600 €

f(210, 60) = 15·210 + 10·60 = 3 750 € Máximo

La solución óptima es fabricar 210 del modelo L1 y 60 del modelo L1 para obtener un beneficio de 3 750 € .

Page 12: Programación lineal

2

Con el comienzo del curso se va a lanzar unas ofertas de material escolar. Unos almacenes quieren ofrecer 600 cuadernos, 500 carpetas y 400 bolígrafos para la oferta, empaquetándolo de dos formas distintas; en el primer bloque pondrá 2 cuadernos, 1 carpeta y 2 bolígrafos; en el segundo, pondrán 3 cuadernos, 1 carpeta y 1 bolígrafo. Los precios de cada paquete serán 6.5 y 7 €, respectivamente. ¿Cuántos paquetes le conviene poner de cada tipo para obtener el máximo beneficio?

1Elección de las incógnitas.

x = P1

y = P2

2Función objetivo

f(x, y) = 6.5x + 7y

3Restricciones

P1 P2 Disponibles

Cuadernos 2 3 600

Carpetas 1 1 500

Bolígrafos 2 1 400

2x + 3y ≤ 600

x + y ≤ 500

2x + y ≤ 400

x ≥ 0

y ≥ 0

4 Hallar el conjunto de soluciones factibles

Page 13: Programación lineal

5 Calcular las coordenadas de los vértices del recinto de las soluciones factibles.

6 Calcular el valor de la función objetivo

f(x,y)= 6.5 · 200 + 7 · 0 = 1300 €

f(x,y)= 6.5 · 0 + 7 · 200 = 1 400 €

f(x,y)= 6.5 · 150 + 7 · 100 = 1 675 € Máximo

La solución óptima son 150 P1 y 100 P2 con la que se obtienen 1 675 €

Page 14: Programación lineal

3

En una granja de pollos se da una dieta, para engordar, con una composición mínima de 15 unidades de una sustancia A y otras 15 de una sustancia B. En el mercado sólo se encuentra dos clases de compuestos: el tipo X con una composición de una unidad de A y 5 de B, y el otro tipo, Y, con una composición de cinco unidades de A y una de B. El precio del tipo X es de 10 euros y del tipo Y es de 30 €. ¿Qué cantidades se han de comprar de cada tipo para cubrir las necesidades con un coste mínimo?

1Elección de las incógnitas.

x = X

y = Y

2Función objetivo

f(x,y) = 10x + 30y

3Restricciones

X Y Mínimo

A 1 5 15

B 5 1 15

x + 5y ≥ 15

5x + y ≥ 15

x ≥ 0

y ≥ 0

Page 15: Programación lineal

4 Hallar el conjunto de soluciones factibles

5 Calcular las coordenadas de los vértices del recinto de las soluciones factibles.

6 Calcular el valor de la función objetivo

f(0, 15) = 10 · 0 + 30 · 15 = 450

Page 16: Programación lineal

f(15, 0) = 10 · 15 + 30 · 0 = 150

f(5/2, 5/2) = 10 · 5/2 + 30 · 5/2 = 100 Mínimo

El coste mínimo son 100 € para X = 5/2 e Y = 5/2.

4

Se dispone de 600 g de un determinado fármaco para elaborar pastillas grandes y pequeñas. Las grandes pesan 40 g y las pequeñas 30 g. Se necesitan al menos tres pastillas grandes, y al menos el doble de pequeñas que de las grandes. Cada pastilla grande proporciona un beneficio de 2 € y la pequeña de 1 €. ¿Cuántas pastillas se han de elaborar de cada clase para que el beneficio sea máximo?

1Elección de las incógnitas.

x = Pastillas grandes

y = Pastillas pequeñas

2Función objetivo

f(x, y) = 2x + y

3Restricciones

40x + 30y ≤ 600

x ≥ 3

y ≥ 2x

x ≥ 0

y ≥ 0

4 Hallar el conjunto de soluciones factibles

Page 17: Programación lineal

5 Calcular las coordenadas de los vértices del recinto de las soluciones factibles.

6 Calcular el valor de la función objetivo

f(x, y)= 2 · 3 + 16 = 22 €

f(x, y)= 2 · 3 + 6 = 12 €

Page 18: Programación lineal

f(x, y)= 2 · 6 + 12 = 24 € Máximo

El máximo beneficio es de 24 €, y se obtiene fabricando 6 pastillas grandes y 12 pequeñas .

5

Unos grandes almacenes desean liquidar 200 camisas y 100 pantalones de la temporada anterior. Para ello lanzan, dos ofertas, A y B. La oferta A consiste en un lote de una camisa y un pantalón, que se venden a 30 €; la oferta B consiste en un lote de tres camisas y un pantalón, que se vende a 50 €. No se desea ofrecer menos de 20 lotes de la oferta A ni menos de 10 de la B. ¿Cuántos lotes ha de vender de cada tipo para maximizar la ganancia?

1Elección de las incógnitas.

x = nº de lotes de A

y = nº de lotes de B

2Función objetivo

f(x, y) = 30x + 50y

3Restricciones

A B Mínimo

Camisas 1 3 200

Pantalones 1 1 100

x + 3y ≤ 200

x + y ≤ 100

x ≥ 20

y ≥ 10

Page 19: Programación lineal

4 Hallar el conjunto de soluciones factibles

5 Calcular las coordenadas de los vértices del recinto de las soluciones factibles.

6 Calcular el valor de la función objetivo

f(x, y) = 30 · 20 + 50 · 10 = 1100 €

f(x, y) = 30 · 90 + 50 · 10 = 3200 €

f(x, y) = 30 · 20 + 50 · 60 = 3600 €

Page 20: Programación lineal

f(x, y) = 30 · 50 + 50 · 50 = 4000 € Máximo

Con 50 lotes de cada tipo se obtiene una ganancia máxima de 4000 €.

1

Una empresa de transportes tiene dos tipos de camiones, los del tipo A con un espacio refrigerado de 20 m3 y un espacio no refrigerado de 40 m3. Los del tipo B, con igual cubicaje total, al 50% de refrigerado y no refrigerado. La contratan para el transporte de 3 000 m3 de producto que necesita refrigeración y 4 000 m3 de otro que no la necesita. El coste por kilómetro de un camión del tipo A es de 30 € y el B de 40 €. ¿Cuántos camiones de cada tipo ha de utilizar para que el coste total sea mínimo?

1Elección de las incógnitas.

x = camiones de tipo A

y = camiones de tipo B

2Función objetivo

f(x,y) = 30x + 40y

3Restricciones

A B Total

Refrigerado 20 30 3

000

No

refrigerado 40 30

4

000

20x + 30y ≥ 3 000

40x + 30y ≥ 4 000

Page 21: Programación lineal

x ≥ 0

y ≥ 0

4 Hallar el conjunto de soluciones factibles

5 Calcular las coordenadas de los vértices del recinto de las soluciones factibles.

6 Calcular el valor de la función objetivo

Page 22: Programación lineal

f(0, 400/3) = 30 · 0 + 40 · 400/3 = 5 333.332

f(150, 0) = 30 · 150 + 40 · 0 = 4 500

Como x e y han de ser números naturales redondeamos el valor de y.

f(50, 67) = 30 · 50 + 40 ·67 = 4180 Mínimo

El coste mínimo son 4 180 € para A = 50 yz B = 67.

2

Una escuela prepara una excursión para 400 alumnos. La empresa de transporte tiene 8 autobuses de 40 plazas y 10 de 50 plazas, pero sólo dispone de 9 conductores. El alquiler de un autocar grande cuesta 800 € y el de uno pequeño 600 €. Calcular cuántos autobuses de cada tipo hay que utilizar para que la excursión resulte lo más económica posible para la escuela.

1Elección de las incógnitas.

x = autobuses pequeños

y = autobuses grandes

2Función objetivo

f(x, y) = 600x + 800y

3Restricciones

40x + 50y ≥ 400

x + y ≤ 9

x ≥ 0

y ≥ 0

4 Hallar el conjunto de soluciones factibles

Page 23: Programación lineal

5 Calcular las coordenadas de los vértices del recinto de las soluciones factibles.

6 Calcular el valor de la función objetivo

f(0, 8) = 600 · 0 + 800 · 8 = 6 400 €

f(0, 9) = 600 · 0 + 800 · 9 = 7 200 €

f(5, 4) = 6 00 · 5 + 800 · 4 = 6 200 € Mínimo

El coste mínimo es de 6 200 € , y se consigue 4 autobuses grandes y 5 pequeños .

Page 24: Programación lineal