ÎncepețiÎncepe gratuit

Exercițiu cu constrângeri de cerere dependentă

Dezvolți un plan de producție pentru 5 produse (A până la E). O unitate din produsul E conține 2 unități din A și 1 unitate din C. Produsul C este vândut și direct clienților. Orizontul de planificare este de 3 luni. Scopul este să determini câte unități din fiecare produs trebuie produse pe lună, astfel încât să fie satisfăcută cererea clienților și să fie minimizate costurile totale.

Un DataFrame Pandas numit demand este afișat în consolă și conține cererea lunară a clienților pentru fiecare produs. De asemenea, codul modelului PuLP pentru inițializare, definirea variabilelor de decizie, a funcției obiectiv și a constrângerii care asigură că producția este mai mare sau egală cu cererea îți este deja furnizat.

Acest exercițiu face parte din cursul

Analitică în lanțul de aprovizionare cu Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Completează codul pentru constrângerile care includ cererea dependentă pentru produsele A și C.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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, ____)]
Editează și rulează codul