Übung zu abhängiger Nachfragebeschränkung
Du entwickelst einen Produktionsplan für 5 Produkte (A bis E). Eine Einheit des Produkts E besteht aus 2 Einheiten von A und 1 Einheit von C. Produkt C wird außerdem direkt an Kundinnen und Kunden verkauft. Dein Planungshorizont sind 3 Monate. Du möchtest ermitteln, wie viel von jedem Produkt pro Monat produziert werden soll, um die Kundennachfrage zu erfüllen und die Gesamtkosten zu minimieren.
Ein Pandas-DataFrame namens demand wird in der Konsole ausgegeben und enthält die monatliche Kundennachfrage für jedes Produkt. Außerdem hast du den PuLP-Code erhalten, um das Modell zu initialisieren, die Entscheidungsvariablen und die Zielfunktion zu definieren sowie die Nebenbedingung zu setzen, dass die Produktion größer oder gleich der Nachfrage ist.
Diese Übung ist Teil des Kurses
<Kurs>Supply Chain Analytics mit Python</Kurs>Übungsanweisungen
- Vervollständige den Code für die Nebenbedingungen, die die abhängige Nachfrage für die Produkte A und C berücksichtigen.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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, ____)]