Está en la página 1de 1

22.

Un pastelero dispone de 150 kg de harina, 22 kg de azúcar y 26 kg de mantequilla para hacer dos tipos de tartas, A y
B. Para hacer una hornada de tartas del tipo A, necesita 3 kg de harina, 1 de azúcar y 1 de mantequilla, mientras que
para hacer una hornada de tartas del tipo B 6 kg de harina, 0.5 kg de azúcar y 1 kg de mantequilla. Sabiendo que el
beneficio que se obtiene al vender una hornada del tipo A es de 20 € y de 30 € al vender una hornada del tipo B,
determine cuántas hornadas de cada tipo debe hacer y vender para maximizar sus beneficios.

Tarta A Tarta B Limite


Harina 3 6 150
Azúcar 1 0.5 22
Mantequilla 1 1 26
Ganancia 20 30
Ecuación objetivo:

𝐹(𝐴, 𝐵) = 20𝐴 + 30𝐵


Restricciones:

3𝐴 + 6𝐵 ≤ 150
𝐴 + 0.5𝐵 ≤ 22
𝐴 + 𝐵 ≤ 26
import pulp as pl #importa la libreria de programacion lineal

#obtener el beneficio maximo


problema = pl.LpProblem("Beneficio_máximo",pl.LpMaximize)

#variables
A = pl.LpVariable('A',0,cat="Integer")#tartaA 0<=A, int
B = pl.LpVariable('B',0,cat="Integer")#tartaB 0<=B, int

#restricciones
r1 = 3*A + 6*B <= 150
r2 = A + 0.5*B <= 22
r3 = A + B <= 26

#se añaden las restricciones al problema


problema += r1
problema += r2
problema += r3

#ecuacion objetivo
a = 20 #coeficiente de A
b = 30 #coeficiente de B
c = 0 #coeficiente independiente

#se añade la ecuacion objetivo al problema


problema += a*A + b*B + c

#resolver
problema.solve()

#la ecuacion objetivo evaluada en el punto obtenido


beneficio = a*A.varValue + b*B.varValue +c

#mostrar resultado
print(f"Beneficio máximo = {beneficio} euros al dia, horneando:\n"
f"{int(A.varValue)} tartas A\n"
f"{int(B.varValue)} tartas B")

También podría gustarte