Övning i beroende efterfrågerestriktioner
Du utvecklar en produktionsplan för 5 produkter (A till E). En enhet av produkt E består av 2 enheter av A och 1 enhet av C. Produkt C säljs även direkt till kunder. Din planeringshorisont är 3 månader. Målet är att bestämma hur mycket av varje produkt som ska produceras per månad för att möta kundernas efterfrågan och minimera de totala kostnaderna.
En Pandas DataFrame med namnet demand skrivs ut i konsolen och innehåller den månatliga kundefterfrågan för varje produkt. Dessutom har koden för PuLP-modellen som initierar, definierar beslutsvariabler, målfunktion och restriktion för att produktionen ska vara större än eller lika med efterfrågan tillhandahållits.
Den här övningen är en del av kursen
Supply Chain Analytics i Python
Övningsinstruktioner
- Komplettera koden för de restriktioner som inkluderar den beroende efterfrågan för produkterna A och C.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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, ____)]