Вы находитесь на странице: 1из 28

UNIVERSIDAD DE GUADALAJARA

CENTRO UNIVERSITARIO DE TONAL

EJEMPLOS DE PROGRAMACIN LINEAL

Energa Elica

Jess guila Len

Ing. en Mecatrnica

Tlaquepaque, Jal. Mxico

18 de febrero del ao 2016.


2

Ejemplo 1:

En una granja de pollos se da una dieta, para engordar, con una composicin mnima de 15
unidades de una sustancia A y otras 15 de una sustancia B.

En el mercado slo se encuentra dos clases de compuestos: el tipo X con una composicin
de una unidad de A y 5 de B, y el otro tipo, Y, con una composicin de cinco unidades de A
y una de B.

El precio del tipo X es de 10 pesos y del tipo Y es de 30 pesos. Qu cantidades se han de


comprar de cada tipo para cubrir las necesidades con un coste mnimo?

Primer paso: elegir incgnitas

x=X

y=Y

Segundo paso: funcin objetivo, en este caso es el costo del producto, es decir

(, ) = 10 + 30

Tercer paso: establecimiento de restricciones

X Y Mnimo
A 1 5 15
B 5 1 15

Vemos entonces que las restricciones son


+ 5 15 (1)
5 + 15 (2)

0
0
3

La solucin ptima para el sistema de ecuaciones est en los valores de:


= 2.5
= 2.5
Para corroborarlo graficamos, obteniendo la ecuaciones
La ecuacin de la recta para (1)
15 5
= = 3
5 5
La ecuacin de la recta para (2)
= 15 5
Utilizando el siguiente cdigo en Matlab:
4

Graficando en Matlab (la zona de las posibles soluciones se sombre por medio de Paint):

La solucin del ptimo (f*) la obtenemos evaluando la funcin (f) en los puntos de
interseccin de las ecuaciones. Esto es:
(2.5,2.5) = 100
Por lo tanto el coste mnimo es de $100.00 pesos para X = 2.5 & Y = 2.5
5

Ejemplo 2:
Se dispone de 600 g de un determinado frmaco para elaborar pastillas grandes y pequeas.
Las grandes pesan 40 g y las pequeas 30 g.
Se necesitan al menos tres pastillas grandes, y al menos el doble de pequeas que de las
grandes.
Cada pastilla grande proporciona un beneficio de 2 pesos y la pequea de 1 pesos. Cuntas
pastillas se han de elaborar de cada clase para que el beneficio sea mximo?

Primer paso: Eleccin de variables


X = pastillas grandes
Y = pastillas pequeas

Segundo paso: Elaboracin de funcin objetivo beneficio


(, ) = 2 + 1

Tercer paso: Restricciones


40 + 30 600
3
2
0
0

De donde obtenemos las siguientes ecuaciones:


600 40
= (1)
30 30
=3 (2)
= 2 (3)
6

Graficando en Matlab usando el siguiente cdigo

Obtenemos
Los puntos de interseccin de las
curvas son en:
(3,16)
(3,06)
(6,12)
Evaluando la funcin de beneficio
en esos puntos:

x y (, ) = +
3 16 22
3 6 12
6 12 24

Por lo tanto el mximo beneficio es $24 pesos usando 6 pastillas grandes y 12 pequeas.
7

Ejemplo 3
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 pantaln, que se venden a 30 pesos; la
oferta B consiste en un lote de tres camisas y un pantaln, que se vende a 50 pesos. No se
desea ofrecer menos de 20 lotes de la oferta A ni menos de 10 de la B.
Cuntos lotes se han de vender de cada tipo para maximizar la ganancia?

Primer paso: definir variables


X = nmero de lotes de A
Y = nmero de lotes de B

Segundo paso: definir funcin objetivo


(, ) = 30 + 50
Tercer paso: definir restricciones
A B Mnimo
Camisas 1 3 200
Pantalones 1 1 100

+ 3 200
+ 100
20
10
De donde tenemos las siguientes ecuaciones:
200
=
3 3
= 100
= 20
= 10
8

Utilizando el siguiente cdigo:


9

Se obtiene la grfica
Donde observamos
que las curvas se
cruzan en los
puntos:
(20,10)
(20,60)
(50,50)
(90,10)

x y (, ) = +
20 10 1100
20 60 3600
50 50 4000
90 10 3200

Con lo que vemos que para optimizar la ganancia se han de vender 50 lotes de A y 50 lotes
de B, obteniendo una ganancia mxima de $4,000.00 pesos.
10

Ejemplo 4:
Un fabricante hace escritorios y mesas. Cada escritorio necesita 2.5 horas de ensamble, 3
horas de pulido y 1 hora de embalado. Cada mesa requiere de 1 hora de ensamble, 3 horas
de pulida y 2 de embalado. La firma puede hacer solo hasta 20 horas de ensamble, 30 horas
de pulido y 16 horas de embalado por semana. El beneficio es de $3 dlares por escritorio y
$4 dlares por mesa. Maximice el beneficio.

Primer paso: definir variables


x = escritorios
y = mesas

Segundo paso: definir funcin de beneficio


(, ) = 3 + 4

Tercer paso: establecer restricciones


Ensamblado
2.5 + 20
Pulido
3 + 3 30
Embalado
+ 2 16

No negatividad
0
0
Cuarto paso: ecuaciones
= 20 2.5
= 10

= 8
2
11

Utilizando el siguiente cdigo para graficar:

Utilizando el siguiente cdigo:


%Obtencin de solucion optima
f=[-3 -4]
A=[2.5 1;3 3;1 2]
b=[20;30;16]
X=A\b
z=-f*X

Obtenemos las siguientes soluciones:

X = [ 5.9006 4.4530]

Z = 35.5138

Siendo el punto (4.45,5.9) para la solucin


de mximo beneficio de 35.51 pesos.

Obtenemos la siguiente grfica:


Donde vemos que los puntos de
interseccin que se encuentran en el
rea de soluciones candidatas son:
(4,6)
(6.7,3.4)

Evaluando las soluciones candidatas:


x y (, ) = 3 + 4
4 6 36
6.7 3.4 33.7

Por lo que vemos que el mximo beneficio es de $36 pesos con 4 escritorios y 6 mesas.
12

Ejemplo 5:
Una compaa de transporte tiene dos tipos de camiones, tipo A y tipo B. El tipo A tiene
una capacidad de refrigeracin de 20 m cbicos y una capacidad de no-refrigeracin de 40
m cbicos, mientras que el tipo B tiene el mismo volumen total de capacidad pero
secciones iguales de refrigeracin y no-refrigeracin. Una tienda necesita contratar
camiones con una capacidad de transporte de 3,000 m cbicos de refrigeracin y 4,000 m
cbicos de no-refrigeracin. El costo por kilmetro del tipo A es de $30 dlares, y del tipo
B es de $40. Cuntos camiones de cada tipo debe rentar la tienda para alcanzar el costo
mnimo total?

Primer paso: definir variables.


x = camiones tipo A
y = camiones tipo B

Segundo paso: escribir la funcin objetivo.

(, ) = 30 + 40
Tercer paso: definir las restricciones.
Tipo A Tipo B Total
Refrigerado 20 30 3000
No-refrigerado 40 30 4000

Lo que nos genera las siguientes desigualdades:


20 + 30 3000
40 + 30 4000
0
0
y para encontrar la solucin buscamos la solucin al sistema de ecuaciones siguiente:
20 + 30 = 3000
40 + 30 = 4000
Por mtodo de suma y resta obtenemos que las rectas se intersectan en (50,66.67).
Corroborndolo grficamente mediante el siguiente cdigo en Matlab:
13

% Grfica de problema 5

clc, clear

% Lmites de graficacin
x1=0:0.02:200;
x2=0:0.02:200;

% Funciones a graficar
y1=3000/30-20*x1/30;
y2=4000/30-40*x2/30;

% Graficas
plot(x1,y1,'g')
grid on
hold on
plot(x2,y2, 'r')
hold on

%Para graficar los ejes en color verde.


z=zeros(size(x1));
w=zeros(size(y2));
plot(x1,z,'b')
hold on
plot(w,y2,'b')

Obtenemos la grfica
14

De donde corroboramos que la respuesta de (50,66.67) fue correcta. Para encontrar la


solucin ptima evaluamos la funcin objetivo en esos valores:
(100,33.33) = 30(50) + 40(66.67) = 4,166.80
Mismo resultado que podemos comprobar con el siguiente cdigo en Matlab:
%Obtencin de solucion optima
f=[30 40]
A=[20 30;40 30]
b=[3000;4000]
X=A\b
z=f*X

Que nos devuelve los valores de


X=

50.0000
66.6667

z=

4.1667e+03

Por lo tanto la solucin analtica corresponde a la solucin por MatLab.


15

Ejemplo 6:
Una escuela prepara un viaje para 400 estudiantes. La compaa que provee el transporte
tiene 10 camiones de 50 asientos cada uno, y 8 camiones de 40 asientos, pero slo tiene 9
conductores disponibles. El costo de renta por el camin grande es de $800 y el del camin
chico es de 600. Calcular cuntos autobuses de cada tipo debern ser utilizados para el viaje
con el menor costo posible.
Primer paso: definir variables
X = camin chico
Y = camin grande
Segundo paso: buscar funcin objetivo.
(, ) = 600 + 800
Tercer paso: definir restricciones.
40 + 50 400
+ 9
0
0
Cuarto paso: buscar puntos de interseccin.
Utilizamos el sistema de ecuaciones siguiente:
40 + 50 = 400
+ =9
Por mtodo de solucin de sistema de ecuaciones obtenemos la interseccin en (5,4)
Mismo que podemos verificar en MatLab con el siguiente cdigo:
% Grfica de problema 6

clc, clear

% Lmites de graficacin
x1=0:0.02:15;
x2=0:0.02:15;

% Funciones a graficar
y1=400/50-40*x1/50;
y2=9-x2;

% Graficas
plot(x1,y1,'g')
16

grid on
hold on
plot(x2,y2, 'r')
hold on

%Para graficar los ejes en color verde.


z=zeros(size(x1));
w=zeros(size(y2));
plot(x1,z,'b')
hold on
plot(w,y2,'b')

Obtenemos la grfica:
De donde
verificamos
que
efectivamente
las rectas se
intersectan en:
(5,4)

Usando el siguiente cdigo:


X = [5;4]
S= 6200
De donde S es el costo mnimo, lo podemos obtener analticamente substituyendo en al
funcin objetivo el punto (5,4)
(5,4) = 600(5) + 800(4) = 6,200
Por lo que verificamos que para un costo mnimo de $6,200 se necesitan 5 camiones chicos
y 4 grandes.
17

Ejemplo 7:
Un pintor tiene exactamente 32 unidades de colorante amarilla y 54 unidades de verde.
Planea mezclar tantos galones como sea posible del color A y el color B.
Cada galn de color A necesita 4 unidades de colorante amarillo y 1 unidad de colorante
verde.
Cada galn de color B necesita 1 unidad de amarillo y 6 unidades de verde.
Encontrar el nmero mximo de galones que puede hacer.

Primer paso: definir variables.


X = galones color A
Y = galones color B

Segundo paso: definir funcin objetivo. Nmero mximo de galones posible:


(, ) = +
Tercer paso: definir restricciones
Tipo A Tipo B Cantidad
Amarillo 4 1 32
Verde 1 6 54

4 + 1 32
+ 6 54
0
0
Lo que es lo mismo a tener el siguiente sistema:

4 + 1 = 32
+ 6 = 54
Solucionando encontramos que las rectas se intersectan en (6,8), por lo cual el valor
mximo de galones que puede fabricar es la funcin objetivo evaluada en ese punto:
(6,8) = 6 + 8 = 14
18

Podemos graficar en MatLab utilizando el siguiente cdigo:


% Grfica de problema 7

clc, clear

% Lmites de graficacin
x1=0:0.02:10;
x2=0:0.02:10;

% Funciones a graficar
y1=32-4*x1;
y2=54/6-x2/6;

% Graficas
plot(x1,y1,'g')
grid on
hold on
plot(x2,y2, 'r')
hold on

%Para graficar los ejes en color verde.


z=zeros(size(x1));
w=zeros(size(y2));
plot(x1,z,'b')
hold on
plot(w,y2,'b')

Donde
corroboramos
que las rectas
se intersectan
en:
(6,8)
19

Utilizando el siguiente cdigo Matlab nos devuelve el punto anterior y el valor de la


solucin ptima:
%Para graficar los ejes en color verde.
z=zeros(size(x1));
w=zeros(size(y2));
plot(x1,z,'b')
hold on
plot(w,y2,'b')

X=

6.0000
8.0000

S=

14.0000

Donde X[6,8] es el punto del valor ptimo, y S=14 es la cantidad mxima de galones de
pintura que puede fabricar.
20

Ejemplo 8:
Una pequea empresa fabrica dos tipos de cobertizo para jardn. El tipo A requiere de 2
horas de trabajo-mquina y 5 horas de trabajo-hombre. El tipo B requiere 3 horas de
trabajo-mquina y 5 horas de trabajo-hombre.
Cada da hay disponibles 30 horas-mquinas disponibles y 60 horas-hombre. El beneficio
de cada tipo A es de 60 libras, mientras que del tipo B es de 84 libras.
Formule el problema de programacin lineal.

Primer paso: identificar variables:


X = nmero de cobertizos A por da
Y = nmero de cobertizos B por da.

Segundo paso: funcin objetivo.


(, ) = 60 + 84

Tercer paso: definir restricciones.


X Y Horas disponibles
Horas-mquina 2 3 30
Horas-hombre 5 5 60

Entonces,
2 + 3 30
5 + 5 60
0
0
Podemos considerar el siguiente sistema de ecuaciones:
2 + 3 = 30
5 + 5 = 60
La solucin ptima estar en la interseccin de las rectas, solucionando el sistema de
ecuaciones tenemos que intersectan en (6,6)
21

Y el valor ptimo ser entonces la funcin objetivo evaluada en ese punto:


(6,6) = 60(6) + 84(6) = 864

Podemos verificar lo anterior por medio de Matlab utilizando el siguiente cdigo para
obtener la grfica de las rectas:
% Grfica de problema 8

clc, clear

% Lmites de graficacin
x1=0:0.02:15;
x2=0:0.02:15;

% Funciones a graficar
y1=30/3-2*x1/3;
y2=60/5-5*x2/5;

% Graficas
plot(x1,y1,'g')
grid on
hold on
plot(x2,y2, 'r')
hold on

%Para graficar los ejes en color verde.


z=zeros(size(x1));
w=zeros(size(y2));
plot(x1,z,'b')
hold on
plot(w,y2,'b')
22

Con lo que
verificamos que
efectivamente
las rectas se
cruzan en (6,6)

Utilizando el siguiente cdigo:

%Obtencin de solucion optima


F=[60 84]
A=[2 3;5 5]
B=[30;60]
X=A\B
S=F*X

Nos da los siguientes valores:


X = [6,6]

S = 864

Con lo que corroboramos que el beneficio mximo con el total de horas hombre y horas
mquina disponibles por da, considerando los tiempos de realizacin, es de 864 libras si se
realizan 6 cobertizos tipo A y 6 cobertizos tipo B.
23

Ejemplo 9:
Un granjero tiene 20 hectreas para sembrar cebada y nabos. El granjero tiene que decidir
cunto de cada uno sembrar. El costo por hectrea de cebada es de 30 libras y el de los
nabos de 20 libras. El granjero tiene un presupuesto de 480 libras.
La cebada requiere de 1 hombre-da por hectrea, y los nabos requieren 2 hombre-das por
hectrea. Hay 36 das hombre disponibles.
El beneficio del nabo es de 100 libras por hectrea y el del nabo de 120 por hectrea.
Encuentre el nmero de hectreas de cada especie que el granjero debe sembrar para
maximizar el beneficio.

Primer paso: definir variables.


X = hectreas de cebada.
Y = hectreas de nabos.
Segn paso: obtener funcin objetivo.
(, ) = 100 + 120
Tercer paso: definir restricciones.
Terreno total entre cebada y nabos
+ 20
Costo de siembra
30 + 20 480
Das-hombre
+ 2 36
No-negatividad
0
0
De donde tenemos las ecuaciones:
= 20

= 48020 3020

= 362 2
24

Utilizando el siguiente cdigo de Matlab podemos obtener una grfica para encontrar los
puntos de interseccin de las rectas, y a la vez la solucin ptima:

% Grfica de problema 9

clc, clear

% Lmites de graficacin
x1=0:0.02:15;
x2=0:0.02:15;
x3=0:0.02:15;

% Funciones a graficar
y1=20-x1;
y2=480/20-30*x2/20;
y3=36/2-x3/2;

% Graficas
plot(x1,y1,'r')
grid on
hold on
plot(x2,y2, 'r')
hold on
plot(x3,y3, 'r')
hold on

%Para graficar los ejes en color verde.


z=zeros(size(x1));
w=zeros(size(y2));
plot(x1,z,'b')
hold on
plot(w,y2,'b')

%Obtencin de solucion optima


F=[100 120]
A=[1 1;30 20; 1 2]
B=[20;480;36]
X=A\B
S=F*X

El programa devuelve los siguientes valores:


X = [6.11,14.81]
S = 2.3905e+03

La siguiente grfica nos muestra las rectas y el punto donde se encuentra la solucin
ptima:
25

Evaluando la funcin objetivo en las coordenadas de la solucin ptima tenemos:

(6.11,14.81) = 100(6.11) + 120(14.81) = 2388.2


Por lo tanto tenemos que para un mximo beneficio de 2,388.2 libras, el granjero ha de
sembrar 6.11 hectreas de cebada y 14.81 hectreas de nabos.
26

Ejemplo 10:
Usted necesita comprar algunos gabinetes.
Sabe que el gabinete X cuesta $10 dlares por unidad, requiere 6 pies cuadrados de espacio
y tiene capacidad de 8 pies cbicos.
El gabinete Y cuesta $20 dlares cada uno, requeire 8 pies cuadrados de espacio y tiene
capacidad de 12 pies cbicos.
Usted tiene un presupuesto de $140 dlares para la compra, pero no tiene que gastar mucho.
La oficina tiene espacio para no ms de 72 pies cuadrados.
Cuntos gabinetes de cada tipo debera usted comprar para maximizar el volumen de
almacenamiento?

Primer paso: definir variables


x = nmero de gabinetes X comprados.
y = nmero de gabinetes Y comprados.
Segundo paso: definir funcin objetivo
(, ) = 8 + 12
Tercer paso: definir restricciones
Costo
10 + 20 140
Espacio
6 + 8 72
No-negatividad
0
0
Consideramos el siguiente sistema de ecuaciones:
10 + 20 = 140
6 + 8 = 72
La interseccin ser el punto donde encontraremos el valor ptimo, dicho punto lo
encontramos solucionando el sistema por suma y resta, el punto de interseccin es (8,3)
27

El valor ptimo est dado por la funcin objetivo evaluada en dicho punto:
(8,3) = 8(8) + 12(3) = 100
Entonces, se han de comprar 8 gabinetes del tipo X y 3 del tipo Y para obtener un volumen
mximo de 100 pies cbicos de almacenamiento.
Verificando lo anterior por medio de MatLab, usamos el siguiente cdigo para graficar las
rectas:
% Grfica de problema 10

clc, clear

% Lmites de graficacin
x1=0:0.02:15;
x2=0:0.02:15;

% Funciones a graficar
y1=140/20-10*x1/20;
y2=72/8-6*x2/8;

% Graficas
plot(x1,y1,'r')
grid on
hold on
plot(x2,y2, 'r')
hold on

%Para graficar los ejes en color verde.


z=zeros(size(x1));
w=zeros(size(y2));
plot(x1,z,'b')
hold on
plot(w,y2,'b')
28

Con esta grfica


corroboramos
que las rectas se
intersectan en
(8,3)

Para verificar el valor ptimo en Matlab utilizamos el siguiente cdigo:

%Obtencin de solucion optima


F=[8 12]
A=[10 20;6 8]
B=[140;72]
X=A\B
S=F*X

Que nos da el resultado de:


X = [8,3]
S = 100

Con lo que acabamos de comprobar por medio de MatLab la solucin analtica. Para un
volumen mximo posible de 100 pies cbicos de almacenamiento se requiere comprar 8
gabinetes del tipo X y 3 del tipo Y.

Вам также может понравиться