Bazele optimizării

Analitică în lanțul de aprovizionare cu Python

Aaren Stubberfield

Supply Chain Analytics Mgr.

Ce este un lanț de aprovizionare

  • Un lanț de aprovizionare include toate părțile implicate, direct sau indirect, în satisfacerea cererii unui client.¹
  • Include:
    • Furnizori
    • Producție internă
    • Furnizori de logistică externalizată (ex. furnizori terți)
1 Chopra, Sunil, and Peter Meindl. _Supply Chain Management: Strategy, Planning, and Operations._ Pearson Prentice-Hall, 2007.
Analitică în lanțul de aprovizionare cu Python

Ce este optimizarea lanțului de aprovizionare

  • Presupune identificarea celei mai bune căi de atingere a unui obiectiv în funcție de constrângeri

diagramă a fluxului de materiale de la furnizori la clienți

Analitică în lanțul de aprovizionare cu Python

Introducere rapidă în LP

  • Programarea liniară (LP) este un instrument puternic de modelare pentru optimizare

  • Metodă de optimizare folosind un model matematic cu relații liniare

  • LP are 3 componente de bază:

    • Variabile de decizie - ce puteți controla
    • Funcție obiectiv - expresie matematică ce exprimă scopul prin variabile
    • Constrângeri - expresii matematice ce descriu limitele soluțiilor
Analitică în lanțul de aprovizionare cu Python

Exemplu introductiv

Utilizați LP pentru a planifica o rutină de exerciții care să ardă cât mai multe calorii.

Flotări Alergare
Minute 0,2 per flotare 10 per milă
Calorii 3 per flotare 130 per milă

Constrângere - doar 10 minute disponibile pentru exerciții

Analitică în lanțul de aprovizionare cu Python

Componentele de bază ale unui LP

Variabile de decizie - Ce putem controla:

  • Număr de flotări & Număr de mile alergați

Funcție obiectiv - Expresie matematică ce folosește variabilele pentru a exprima scopul:

  • Max (3 * Număr de flotări + 130 * Număr de mile)

Constrângeri - Expresii matematice ce descriu limitele soluțiilor:

  • 0.2 * Număr de flotări + 10 * Număr de mile ≤ 10
  • Număr de flotări ≥ 0
  • Număr de mile ≥ 0
Analitică în lanțul de aprovizionare cu Python

Exemplu de soluție

Soluție optimă:

  • 50 de flotări
  • 0 mile alergați

Calorii arse: 150

grafic cu soluțiile acceptabile pentru exemplul de exerciții, inclusiv punctul optim

Analitică în lanțul de aprovizionare cu Python

LP vs IP vs MIP

Termeni Variabile de decizie
Programare liniară (LP) Doar continue
Programare întreagă (IP) Doar discrete sau întregi
Programare mixtă întreagă (MIP) Combinație de continue și discrete
Analitică în lanțul de aprovizionare cu Python

Rezumat

  • Definit optimizarea lanțului de aprovizionare
  • Definit programarea liniară și componentele sale de bază
    • Variabile de decizie
    • Funcție obiectiv
    • Constrângeri
  • Definit LP vs IP vs MIP
Analitică în lanțul de aprovizionare cu Python

Să exersăm!

Analitică în lanțul de aprovizionare cu Python

Preparing Video For Download...