#EJERCICIO 2.4 #importo librerias from pulp import LpMaximize, LpProblem, LpStatus, lpSum, LpVariable, LpMinimize import pandas as pd import matplotlib.pyplot as plt from scipy.optimize import linprog import numpy as np #Creo el modelo model= LpProblem (name="Pullovers", sense=LpMaximize) #Inicializo las variables A=LpVariable(name="A", lowBound=0)#Siendo A: cantidad de pullovers A B=LpVariable(name="B", lowBound=0)#Siendo B: cantidad de pullovers B B1=LpVariable(name="B1", lowBound=0)#Siendo B1: cantidad de pullovers B aproducirse en la maquina 1 B2=LpVariable(name="B2", lowBound=0)#Siendo B2: cantidad de pullovers B aproducirse en la maquina 2 C=LpVariable(name="C", lowBound=0)#Siendo B1: cantidad de pullovers C #Determino las restricciones model+= (B1 + B2 == B, "Balance B") model+= (5*A+ 6*B1 <= 80, "Maq 1") model+= (4*B2+6*C <=80, "Maq 2") model+= (1.6*A+1.2*B <=20, "Materia Prima M") model+= (1.8*B <=36, "Materia Prima N") model+= (B >=10, "Compromiso de Venta") #Definimos la funcion objetivo la cual queremos maximizar model+=1000*A+1500*B+1800*C #Resolvemos el problema de programacion lineal status = model.solve() #Imprimo la solucion print(f"status:{model.status},{LpStatus[model.status]}")#tipo de solucion print(f"objective:{model.objective.value()}")#Beneficio maximo sujeto a las restricciones for var in model.variables(): print(f"{var.name}:{var.value()}")#Valores de solucion de las variables for name, constraint in model.constraints.items(): print(f"{name}:{constraint.value()}")