Kontrola správnosti řešení

Supply Chain Analytics v Pythonu

Aaren Stubberfield

Supply Chain Analytics Mgr.

vývojový diagram strategie řešení

Supply Chain Analytics v Pythonu

Kontrola stavu modelu

  • Infeasible (nepřípustná): Neexistuje žádné přípustné řešení.
    • Zkontrolujte omezení
  • Unbounded (neomezená): Účelová funkce není ohraničena – maximalizace nebo minimalizace směřuje k nekonečnu.
    • Zkontrolujte účelovou funkci
  • Undefined (neurčená): Optimální řešení může existovat, ale nemuselo být nalezeno.
    • Možná jde o nejlepší dostupné řešení
    • Zkontrolujte způsob modelování problému
Supply Chain Analytics v Pythonu

Kontrola, zda jsou výsledky v očekávaném rozsahu

Jsou rozhodovací proměnné a hodnota účelové funkce v očekávaném rozsahu?

  • Vychází ze znalosti a pochopení problému
  • Pokud „Ano", řešení je platné
  • Pokud „Ne", zkontrolujte:
    • Kód v Pythonu
    • Data
    • Zapište soubor LP
Supply Chain Analytics v Pythonu

Zápis LP souboru

writeLP(filename)
  • filename = Název souboru, který má být vytvořen

Zobrazuje:

  • Název problému
  • Účelovou funkci a typ optimalizace (minimalizace/maximalizace)
  • Omezení, včetně omezení na rozhodovací proměnné (Bounds)
  • Rozhodovací proměnné
Supply Chain Analytics v Pythonu

Příklad kódu

\* Aggregate Production Planning *\
Minimize
OBJ: 20 prod_('A',_0) + 17 prod_('A',_1) 
    + 18 prod_('A',_2) + 15 prod_('B',_0) 
    + 16 prod_('B',_1) + 15 prod_('B',_2)
Subject To
_C1: prod_('A',_0) >= 0
_C2: prod_('A',_1) >= 0
_C3: prod_('A',_2) >= 0
_C4: prod_('B',_0) >= 8
_C5: prod_('B',_1) >= 7
_C6: prod_('B',_2) >= 6
Bounds
0 <= prod_('A',_0)
0 <= prod_('A',_1)
0 <= prod_('A',_2)
0 <= prod_('B',_0)
0 <= prod_('B',_1)
0 <= prod_('B',_2)
Generals
prod_('A',_0)
prod_('A',_1)
prod_('A',_2)
prod_('B',_0)
prod_('B',_1)
prod_('B',_2)
Supply Chain Analytics v Pythonu

Shrnutí

Strategie kontroly správnosti

  • Zkontrolujte stav modelu
  • Ověřte, zda jsou rozhodovací proměnné a účelová funkce v očekávaném rozsahu
  • V případě potřeby použijte writeLP()
Supply Chain Analytics v Pythonu

Čas na procvičení!

Supply Chain Analytics v Pythonu

Preparing Video For Download...