Escolar Documentos
Profissional Documentos
Cultura Documentos
tulo 8
LINEAL
PROGRAMACION
8.1. Introduccion
La programacion lineal es una tecnica matematica relativamente reciente (siglo XX), que consiste
en una serie de metodos y procedimientos que permiten resolver problemas de optimizacion en el
ambito, sobre todo, de las Ciencias Sociales.
Nos centraremos en este tema en aquellos problemas simples de programacion lineal, los que tienen
solamente 2 variables, problemas bidimensionales.
Para sistemas de mas variables, el procedimiento no es tan sencillo y se resuelven por el llamado
metodo Simplex (ideado por G.B.Danzig, matematico estadounidense en 1951).
Recientemente (1984) el matematico indio establecido en Estados Unidos, Narenda Karmarkar,
ha encontrado un algoritmo, llamado algoritmo de Karmarkar, que es mas rapido que el metodo
simplex en ciertos casos. Los problemas de este tipo, en el que intervienen gran numero de variables,
se implementan en ordenadores.
+ by c
(donde el smbolo puede ser tambien , < o bien >), donde a, b y c son numeros reales y x e y las
incognitas.
Para resolver estas inecuaciones, se recordara de otros cursos, hay que representar gracamente en
el plano la recta dada por la correspondiente ecuacion lineal y marcar una de las dos regiones en que
dicha recta divide al plano.
127
LINEAL
CAPITULO 8. PROGRAMACION
128
La recta divide al plano en dos regiones, una de las cuales es la solucion de la inecuacion. Para
saber que parte es, hay dos procedimientos:
1. Se despeja la
Observando el dibujo vemos que la recta divide al eje de ordenadas (y) en dos partes.
La solucion de la inecuacion sera aquella parte en la que la y sea mayor que la recta, es decir, la
parte superior.
LINEAL
CAPITULO 8. PROGRAMACION
129
Ejercicios:
1. Calcular los otros dos vertices.
2. Resolver los sistemas de inecuaciones lineales siguientes encontrando los vertices de las regiones
que sean solucion:
8
>
>
<x2x++2yy 12
4
3x + 5y 150
3x + 6y 420
c)
b)
a)
x
2
y 6
3x + 3y 120
4x + 2y 290
>
>
: x y0
LINEAL
CAPITULO 8. PROGRAMACION
130
= 1, es
Ejercicios: Resolver los sistemas de inecuaciones lineales siguientes, encontrando los vertices de las
regiones que sean solucion:
8
5
>
<6
a)
>
:
+ 15y 150
x + 8y 120
x 0
y 0
8
+ 3 50
>
>
>
<9 8 0
b) 3 + 4 60
>
0
>
>
:
0
x
x
y
8
2 + 10
>
< + 3 12
c)
>
: 0 8
x
0y
2
LINEAL
CAPITULO 8. PROGRAMACION
131
F x; y
)= Ax+B y
sujeta a una serie de restricciones dadas mediante un sistema de inecuaciones lineales del tipo:
8
>
>
<
>
>
>
:
+ b1y c1
a2 x + b2 y c2
..
.
am x + bm y cm
a1 x
Los puntos del plano que cumplen el sistema de desigualdades forman un recinto convexo acotado
(poligonal) o no acotado, llamado region factible del problema.
Todos los puntos de dicha region cumplen el sistema de desigualdades. Se trata de buscar, entre
todos esos puntos, aquel o aquellos que hagan el valor de F(x,y) maximo o mnimo, segun sea el
problema.
Los puntos de la region factible se denominan soluciones factibles.
De todas esas soluciones factibles, aquellas que hacen optima (maxima o mnima) la funcion objetivo se llaman soluciones optimas.
En general,un problema de programacion lineal puede tener una, innitas o ninguna solucion.
Lo que si se verica es la siguiente propiedad:
Propiedad:
Si hay una unica solucion optima, esta se encuentra en un vertice de la region factible, y si hay
innitas soluciones optimas, se encontraran en un lado de la region factible.
Es posible que no haya solucion optima, pues cuando el recinto es no acotado, la funcion objetivo
puede crecer o decrecer indenidamente.
Para resolver el problema, podemos abordarlo de dos formas, pero antes a aplicar cualquiera
de ellas siempre hay que dibujar la region factible, resolviendo el sistema de inecuaciones lineales
correspondiente, como se ha visto en los epgrafes anteriores (la region factible puede estar acotada o
no), y se calculan los vertices de dicha region.
8
<2
:22
+ 3y 3
y
90
5y 5 0
LINEAL
CAPITULO 8. PROGRAMACION
132
LINEAL
CAPITULO 8. PROGRAMACION
133
Se trata ahora de trazar paralelas al vector que pasen por los vertices anteriores, es decir:
Figura 8.4: Solucion graca. Paralelas al vector por los vertices.
Se observa gracamente que de las tres paralelas trazadas, la que corta al eje y en un punto mayor
es la que pasa por el punto (5,1), que por tanto sera la solucion optima al problema de maximos
planteado.
Para saber cual es este valor ,maximo sustituimos en la funcion:
F
Luego la funcion tiene su solucion optima en (5,1) donde toma el valor 15000.
8
<2
:22
+ 3y 3
y
90
5y 5 0
5000 = 5000
15000 = 9000
Vemos que el valor maximo se alcanza para el vertice (5,1) y que dicho valor es 15. La misma solucion
que se obtena antes.
LINEAL
CAPITULO 8. PROGRAMACION
134
8
10
>
>
<2 ++3
12
.
sujeto a:
0 8
>
>
:
x
1. Maximizar
F x; y
) = 4x + 5y
0y
2. Minimizar
F x; y
2
8
3 + 2 12
>
<4 + 5 29
.
) = 12 + 10 sujeto a:
0
>
:
0
8
6
>
<74 ++82 28
) = 120 + 80 sujeto a:
.
0
>
>
:
0
8
<4 + 5 20
) = 12 + 8 sujeto a: 7 + 2 14 .
:
x
x
y
3. Maximizar
F x; y
x
y
4. Minimizar
F x; y
Ejemplo 1:
8
>
>
<2
sujeta a las rectricciones:
>
>
:4
+ y 14
x + 3y 36
.
x + y 16
x
3y 0
x
Maximizar g (x; y ) = 3x + 4y
2 40
;
; B = (6; 8); C = (12; 4)
3 3
Observemos que la region factible es NO acotada superiormente.
A
LINEAL
CAPITULO 8. PROGRAMACION
135
Si aplicamos el metodo geometrico, debera trazar paralelas al vector director por los vertices, pero
como la region en no acotada, dichas rectas son cada vez mayores al trazarlas sobre los puntos de la
recta t, que son soluciones factibles. Por tanto el problema no tiene solucion.
Ejemplo 2:
Minimizar g (x; y ) = 3x + 3y
8
+
>
>
>
<
sujeta a las restricciones 3
>
>
>
:4 + 2
x
x
x
x
5
+3
1.
16
22
LINEAL
CAPITULO 8. PROGRAMACION
136
Es decir, como buscamos el valor mnimo, todos los puntos comprendidos entre A y E sirven, es
decir, hay innitas soluciones.
Si utilizamos el metodo algebraico: g (x; y ) = 3x + 3y , luego:
A
: g (1; 4) = 3 + 12 = 15
: g (2; 5) = 6 + 15 = 21
: g (6; 4) = 18 + 12 = 30
: g (7; 2) = 21 + 6 = 27
: g (4; 1) = 12 + 3 = 15
Observamos que el valor mnimo se toma en A y en E, y por tanto en todos los puntos comprendidos
entre ellos, es decir, hay innitas soluciones.
LINEAL
CAPITULO 8. PROGRAMACION
137
Este es un problema tpico en el que hay que usar las tecnicas de programacion lineal. Intentaremos
seguir el siguiente esquema:
1. Leer el enunciado , determinar la funcion objetivo y denir las variables.
En este caso, queremos hacer maximo el benecio, es decir, queremos maximizar una funcion.
Como queremos determinar las cantidades de sillones S1 y S2 respectivamente, llamemos x=no
de unidades de S1 e y =no de unidades de S2.
La funcion benecio a maximizar sera: B (x; y ) = 60 x + 30 y , que es la funcion objetivo.
2. Reordenar los datos del problema y escribir las inecuaciones correspondientes.
En este paso es conveniente el uso de tablas:
Tiempo(horas) Carpintera
S1
1
S2
3
Disponible
90
Tiempo(horas) Cantidad
S1
x
S2
y
Necesario
Disponible
De aqu se deduce que:
x
Tapicera
2
1
80
Carpintera Tapicera
x
2x
3y
y
x + 3y
2x + y
90
80
+ 3y 90
2x + y 80
y ademas
x
y
0
0
LINEAL
CAPITULO 8. PROGRAMACION
138
(40; 0) = 2400
con lo cual hay innitas soluciones y el benecio que se obtiene es 2400 euros.
5. Analizar la solucion obtenida en el contexto del problema: >tiene sentido?.
Debemos interpretar que en el contexto del problema no todas las soluciones son validas, sino
que solo sirven soluciones enteras, es decir, no se pueden fabricar, por ejemplo 3'8 sillones del
tipo S1. Las soluciones con sentido vendran dadas por:
S1
S2
30 31 32 33
20 18 16 14
34 35 36 37
12 10 8 6
38 39 40
4 2 0
LINEAL
CAPITULO 8. PROGRAMACION
139
Ejemplo:
Una empresa tiene 2 plantas de produccion (P1 y P2) de cierto artculo que vende en 3 ciudades
(C1,C2 y C3). En P1 produce 5000 unidades, y en P2 7000 unidades. De estas 12000 unidades las
vende as: 3500 es C1, 4000 en C2 y 4500 en C3. Los costes de transporte, en euros por unidad de
producto, desde las plantas de produccion a las ciudades son:
Envos
Hasta C1 Hasta C2 Hasta C3
Desde P1
3
2'5
3'5
Desde P2
2'25
3'75
4
Determina el no de artculos que debe enviar la empresa desde cada planta a cada ciudad para que los
costes de transporte sean mnimos.
Para problemas de este tipo necesitamos una nueva variable.
Sea x=unidades de P1 a C1, y =unidades de P1 a C2 y z =unidades de P1 a C3.
Tiene que vericarse entonces que x + y + z = 5000.
Si desde P1 a C1 se envan x unidades, como en C1 necesitan 3500, desde P2 se mandaran a C1
3500 x. Razonando del mismo modo con y y z , se obtiene la tabla:
Envos
Hasta C1 Hasta C2
Desde P1
x
y
Desde P2 3500 x 4000 y 4500
Hasta C3
z = 5000
x
y
z = 4500
(5000
Hemos sustituido z por 5000 y x, porque x + y + z = 5000 y as transformamos las 3 incognitas
en solo 2.
Para obtener las restricciones imponemos que cada cantidad ha de ser mayor o igual que cero, es
decir:
x 0
3500
0
4000
5000
8
>
>
>
>
<
0
0
+ 0
y
x
500 + x
Por tanto el sistema de inecuaciones es:
0
0
3500
0
4000
+ 5000
+ 500
x
>
>
>
>
:
C x; y
) = 3 x + 2 5 y + 3 5 (5000
0
C x; y
) + 2 25 (3500
0
) = 1 25 x
0
) + 3 75 (4000
0 75 y + 22625
0
) + 4 ( 500 + x + y )
LINEAL
CAPITULO 8. PROGRAMACION
140
(3500; 0) = 27000
(500; 0) = 23250
Ejercicio:
Dos fabricas de cemento, F1 y F2, producen respectivamente 3000 y 4000 sacos de cemento al da.
Hay que enviar ese cemento a tres centros de ventas C1, C2 y C3 en cantidades de 3000, 2500 y
1500 sacos respectivamente.
Los costes de transporte de cada fabrica a los puntos de venta vienen dados, en euros por cada
saco, por:
Envos
Hasta C1 Hasta C2 Hasta C3
Desde F1
2
2'5
2
Desde F2
1'5
3
1
Determina como hay que distribuir la produccion para que el transporte resulte lo mas economico
posible.
LINEAL
CAPITULO 8. PROGRAMACION
8.8. EJERCICIOS
1. Maximizar
F x; y
) = x + 2y
141
8
<
sujeta a: 4
:5
+ y 19
3y 15 .
x + 2y 33
2. Un club de jubilados quiere organizar un viaje para 200 socios. Contratan una agencia que dispone de 4 microbuses de 25 plazas y 5 autobuses de 50 plazas, pero solo dispone de 6 conductores.
El alquiler de los autobuses es de 160 euros por da y el de los microbuses, 70 euros da. Minimizar
el coste.
3. Un fabricante de coches lanza una oferta especial en dos de sus modelos, ofreciendo el modelo
A a un precio de 15000 euros y el modelo B en 20000 euros. La oferta esta limitada por las
existencias, que son 20 coches del modelo A y 10 del B. Por otra parte, para cubrir los gastos
de la campa~na, los ingresos obtenidos deben ser de al menos 6000 euros.
a) Plantea el problema y representa gracamente el conjunto de soluciones.
b) >Cuantos coches debera vender de cada modelo para maximizar sus ingresos? >Cual es su
importe?.
4. Una casa empacadora de alimentos recibe diariamente 700 kg de cafe del tipo C y 800 kg de
cafe del tipo K. Hace con ellos dos mezclas. La del tipo A que consta de 2 partes de cafe del tipo
C y 1 de cafe del tipo K y la mezcla del tipo B que lleva una parte del tipo C y 2 del K. En la
mezcla A se ganan 0'22 euros por kilo y en la B 0'26 euros por kilo.
Halla la cantidad de mezcla que debe hacer de cada tipo para que la ganancia sea maxima.
5. Un pastelero fabrica dos tipos de tartas Suprema y Especial, para las que usa tres ingredientes
A, B y C. dispone de 150 kg de A, 90 kg de B y 150 kg de C. Para fabricar tartas Supremas
mezcla 1 kg de A, 1 kg de B y 2 kg de C, y para la Especial necesita 5 kg de A, 2 kg de B y 1
kg de C.
a) La tarta Suprema produce 6 euros de benecio y la Especial 15 euros. Calcula el no de tartas
de cada clase que se deben fabricar para maximizar los ingresos.
b) Si la tarta Suprema produce 9 euros de benecios, que benecio debera producir la Especial
para que una solucion optima sea fabricar 60 tartas Supremas y 15 Especiales.
6. Una empresa de alimentacion fabrica dos tipos de pizzas: N y E. Cada pizza N se hace con 1 kg
de masa y 0'25 kg de recubrimiento y su venta rinde 1'5 euros. Cada pizza E necesita 1 kg de
masa y 0'5 kg de recubrimiento y rinde 2'5 euros en benecios.
La empresa dispone diariamente de 150 kg de masa y 50 kg de recubrimiento, y no puede vender
mas de 125 pizzas de cada clase.
>Cuantas pizzas N y E debe fabricar y vender para maximizar los benecios?.
7. Un comerciante dispone de 500 jamones, 400 botellas de vino y 225 bolas de queso con las que
confeccionar dos lotes de regalo A y B. El lote A lleva 1 jamon y dos botellas de vino, y el B
lleva dos jamones, 1 botella de vino y una bola de queso.
El lote A produce 12 euros de benecio y el B 18. >Cuantas unidades ha de fabricar de cada lote
para maximizar los benecios?.>Que benecio obtiene?.
8. Un hotel tiene capacidad maxima para 108 personas y admite a adultos y a ni~nos. Quiere que,
como mnimo, 48 personas sean adultos, y admite al menos un ni~no por cada 2 adultos. Si a
los ni~nos les hace un descuento de un tercio sobre el precio que cobra a los adultos , >cuantos
adultos y cuantos ni~nos admitira para obtener el maximo benecio?.
LINEAL
CAPITULO 8. PROGRAMACION
142
14. Una empresa fabrica dos tipos de almohadas. Producir una almohada cara cuesta 120 euros y se
vende a 300 euros, mientras que una almohada barata cuesta 50 euros y se vende a 180 euros.
La compa~na no puede fabricar mas de 300 almohadas al mes y no puede gastar mas de 2500
euros al mes en su produccion.
Si la compa~na ha de fabricar al menos 50 almohadas de cada tipo, >cuantas ha de fabricar de
cada clase para maximizar sus benecios?.
LINEAL
CAPITULO 8. PROGRAMACION
143
a) >Cuantos Kg de cada producto deberan comprarse semanalmente para que el costo de preparar
la dieta sea mnimo?
b) >Cuantos Kg de cada producto deberamos comprar si el precio de A subiera a 10 euros/Kg ?
18. En la elaboracion de un producto A se necesita una sustancia B. La cantidad de A obtenida es
menor o igual que el doble de B utilizada, y la diferencia entre las cantidades del producto B y
A no supera los 2 gr. mientras que la suma no debe sobrepasar los 5gr.
Ademas se utiliza por lo menos 1 gr. de B y se requiere 1 gr. de A. La sustancia A se vende a
500 euros y la B cuesta 400 euros el gramo.
Calcular la cantidad de sustancia B necesaria para que el benecio sea maximo.
19. Una empresa fabrica dos tipos de tarjetas gracas, de 16Mb y 32Mb de memoria, respectivamente. Se utilizan dos maquinas que emplean 2 min. en fabricar las de 16Mb y 3 min. en fabricar
las de 32Mb. La cadena de montaje solo puede funcionar, como maximo, 300 minutos diarios.
Ademas cada maquina tiene una capacidad maxima de fabricacion diaria de 125 unidades, entre
las cuales no puede haber mas de 90 tarjetas de 16Mb ni mas de 80 tarjetas de 32Mb, siendo el
benecio neto de las primeras de 45 euros y el de las segundas de 60 euros.
>Cuantas tarjetas de 16Mb y 32Mb debe fabricar diariamente cada maquina para que el benecio
sea maximo?.
20. Una multinacional farmaceutica desea fabricar un compuesto nutritivo a base de dos productos
A y B. El producto A contiene 30 % de protenas, un 1 % de grasas y un 10 % de azucares. El
producto B contiene un 5 % de protenas, un 7 % de grasas y un 10 % de azucares. El compuesto
tiene que tener, al menos, 25 g. de protenas, 6 g. de grasas y 30 g. de azucares.
El coste del producto A es de 0'06 euros/g. y el de B es de 0'02 pts/g. >Cuantos gramos de cada
producto debe tener el compuesto para que el coste total sea mnimo?
LINEAL
CAPITULO 8. PROGRAMACION
144
21. Una compa~na minera tiene abiertas dos minas M1 y M2, desde las cuales transporta carbon a
dos grupos G1 y G2 de una central termina. De la mina M1 salen diariamente para la central
800T de antracita y de la mina M2 300T. De las 1100T, 500 tienen que ir hasta el grupo G1 y
600T hasta el grupo G2.
El coste de cada tonelada transportada de M1 a G1 es de 60 euros, el de A1 a G2 de 80 euros,
el de M2 a G1 de 40 euros y el de M2 a G2 de 50 euros.
>Cuantas toneladas hay que transportar desde cada mina hasta cada grupo para que el coste
total sea mnimo?.
22. Una asociacion agrcola tiene de dos parcelas: la parcela P1 tiene 400 hectareas de tierra utilizable
y dispone de 500 metros cubicos de agua, mientras la parcela P2 tiene 900 hectareas de tierra
utilizable y dispone de 1200 metros cubicos de agua.
Los cultivos aconsejados son: remolacha y algodon.
La remolacha consume 3 metros cubicos de agua por hectareas y tiene un benecio de 700 euros
por hectareas y el algodon consume 2 metros cubicos de agua por hectareas y tiene un benecio
de 500 euros por hectarea.
Se ha establecido una cuota maxima por hectareas para cada cultivo: 800 para la remolacha y
600 para el algodon, siendo el porcentaje total de terreno cultivado el mismo en cada parcela.
Plantear el problema de programacion lineal.
23. Una empresa constructora dispone de dos tipos de camiones C1 y C2 y quiere transportar 100T
de arena a una obra. Sabiendo que dispone de 6 camiones tipo C1 con capacidad para 15T y
con un coste de 40 euros por viaje y de 10 camiones tipo C2 con una capacidad de 5T y con un
coste de 30 euros por viaje.
a) >Cual es el numero posible de camiones que puede usar (gracamente)?.
b) >Cual es el numero posible de camiones que debe usar para que el coste sea mnimo?.
c) >Cual es el valor de dicho coste?.
24. Un quiosco de prensa vende bolgrafos a 0'20 euros y cuadernos a 0'30 euros. Llevamos 2'40
euros y pretendemos comprar los mismos cuadernos que bolgrafos por lo menos. >Cual sera el
numero maximo de piezas que podemos comprar?.
25. Una compa~na aerea dispone de dos tipos de aviones A1 y A2 para cubrir un determinado
trayecto. El avion A1 debe hacer mas veces el trayecto que el avion A2 pero no puede sobrepasar
120 viajes. Entre los dos aviones deben hacer mas de 60 vuelos, pero menos de 200. En cada
vuelo, A1 consume 900 litros de combustible y A2 700 litros. En cada viaje del avion A1 la
empresa gana 30000 euros y 20000 euros por cada viaje del avion A2.
a) >Cuantos viajes debe hacer cada avion para obtener el maximo de ganancias?.
b) >Cuantos vuelos debe hacer cada avion para que el consumo de combustible sea mnimo?.
26. Un joyero fabrica dos tipos de anillos: los anillos A1 precisan 1g. de oro y 5g. de plata vendiendolos
a 40 euros cada uno. Para los anillos tipo A2 emplea 1,5g. de oro y 1g. de plata y los vende a 50
euros. El joyero dispone en su taller de 750g. de cada metal.
Calcular cuantos anillos debe fabricar de cada clase para obtener el maximo benecio.