Ćwiczenie – ograniczenie popytu zależnego
Opracowujesz plan produkcji dla 5 produktów (od A do E). Jedna jednostka produktu E składa się z 2 jednostek A i 1 jednostki C. Produkt C jest również sprzedawany bezpośrednio klientom. Horyzont planowania wynosi 3 miesiące. Celem jest wyznaczenie, ile każdego produktu należy wyprodukować w danym miesiącu, aby zaspokoić popyt klientów i zminimalizować łączne koszty.
W konsoli wyświetlana jest ramka danych Pandas o nazwie demand, która zawiera miesięczny popyt klientów na każdy produkt. Dostarczono ci również kod modelu PuLP inicjalizujący model, definiujący zmienne decyzyjne, funkcję celu oraz ograniczenie zapewniające, że produkcja jest większa lub równa popytowi.
To ćwiczenie jest częścią kursu
Analityka łańcucha dostaw w Pythonie
Instrukcje do ćwiczenia
- Uzupełnij kod ograniczeń uwzględniających popyt zależny dla produktów A i C.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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, ____)]