Kom igångKom igång gratis

Ö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

Visa kurs

Ö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, ____)]
Redigera och kör kod