Ejercicio de restricción de demanda dependiente
Estás elaborando un plan de producción para 5 productos (de A a E). Una unidad del producto E incluye 2 unidades de A y 1 unidad de C. El producto C también se vende directamente a los clientes. Tu horizonte de planificación es de 3 meses. Quieres determinar cuánto producir de cada producto por mes para satisfacer la demanda de los clientes y minimizar los costes totales.
En la consola se imprime un DataFrame de Pandas llamado demand que contiene la demanda mensual de los clientes para cada producto. Además, se te ha proporcionado el código del modelo de PuLP para inicializarlo, definir las variables de decisión, la función objetivo y la restricción para que la producción sea mayor o igual que la demanda.
Este ejercicio forma parte del curso
Analítica de la cadena de suministro en Python
Instrucciones del ejercicio
- Completa el código de las restricciones que incluyen la demanda dependiente de los productos A y C.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Initialize, Define Decision Vars., Objective Function, and Constraints
model = LpProblem("Aggregate Production Planning", LpMinimize)
time = [0, 1, 2]
prod = ['A', 'B', 'C', 'D', 'E']
X = LpVariable.dicts("prod", [(t, p) for p in prod for t in time],
lowBound=0, cat="Integer")
model += lpSum([costs.loc[t, p]*X[(t, p)] for p in prod for t in time])
for p in prod:
for t in time:
model += X[(t, p)] >= demand.loc[t, p]
# Define Dependent Demand Constraints
for t in time:
model += ____ * X[(t, 'E')] <= X[(t, 'A')]
model += ____ * X[(t, ____)] + demand.loc[t, ____] <= X[(t, ____)]