praca_magisterska/pytania/odpowiedzi/12-sieciowe-modele-optymalizacji.md

282 lines
7.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Pytanie 12: Sieciowe modele optymalizacji w systemach zarządzania
## Pytanie
**"Przedstawić sieciowe modele optymalizacji stosowane w systemach zarządzania. Omówić ich właściwości."**
Przedmiot: WSYZ (Wstęp do Systemów Zarządzania)
---
## 📚 Odpowiedź główna
### Wprowadzenie
**Sieciowe modele optymalizacji** to matematyczne reprezentacje problemów decyzyjnych w postaci grafów (sieci), gdzie:
- **Węzły** = punkty decyzyjne, lokalizacje, zdarzenia
- **Krawędzie** = połączenia, przepływy, zależności
- **Wagi** = koszty, czasy, przepustowości
---
## 1. Problem najkrótszej ścieżki (Shortest Path)
### Definicja
Znaleźć ścieżkę o minimalnej sumie wag między węzłem źródłowym a docelowym.
```
2
A ────→ B
│ │
1 │ │ 3
↓ ↓
C ────→ D
1
Najkrótsza ścieżka A→D: A→C→D (koszt: 2)
```
### Algorytmy
| Algorytm | Złożoność | Wagi ujemne | Zastosowanie |
|----------|-----------|-------------|--------------|
| **Dijkstra** | O(V² lub E log V) | ❌ | GPS, routing |
| **Bellman-Ford** | O(VE) | ✅ | Finanse, arbitraż |
| **A*** | O(E) średnio | ❌ | Gry, nawigacja |
### Zastosowania w zarządzaniu
- Optymalizacja tras dostaw
- Planowanie logistyki
- Routing w sieciach telekomunikacyjnych
---
## 2. Problem maksymalnego przepływu (Max Flow)
### Definicja
Znaleźć maksymalny przepływ ze źródła (s) do ujścia (t) przy ograniczeniach przepustowości.
```
10 10
s ────→ A ────→ t
│ ↑ ↑
5 │ 5 │ │ 10
↓ │ │
B ──────┴───────┘
15
Max flow = 15 (przez A: 10, przez B: 5)
```
### Algorytmy
| Algorytm | Złożoność | Uwagi |
|----------|-----------|-------|
| **Ford-Fulkerson** | O(E × max_flow) | Metoda ścieżek powiększających |
| **Edmonds-Karp** | O(VE²) | BFS dla ścieżek |
| **Dinic** | O(V²E) | Przepływy blokujące |
### Zastosowania
- Planowanie produkcji (przepustowość linii)
- Zarządzanie siecią dystrybucji
- Przydział zasobów
---
## 3. Problem minimalnego kosztu przepływu (Min Cost Flow)
### Definicja
Przepływ o zadanej wielkości przy minimalnym koszcie (każda krawędź ma przepustowość i koszt jednostkowy).
```
(cap=10, cost=2)
s ─────────────────→ A
│ │
│(cap=5, cost=1) │(cap=10, cost=3)
↓ ↓
B ─────────────────→ t
(cap=15, cost=1)
Wymagany przepływ: 10
Min koszt = ?
```
### Zastosowania
- Transport towarów (minimalizacja kosztów)
- Przydział zadań pracownikom
- Optymalizacja łańcucha dostaw
---
## 4. Problem przydziału (Assignment Problem)
### Definicja
Przypisanie n zadań do n wykonawców przy minimalnym koszcie (jeden do jednego).
```
Zadanie 1 Zadanie 2 Zadanie 3
Prac. A 8 4 7
Prac. B 5 2 3
Prac. C 9 6 4
Optymalny przydział: A→Z2, B→Z1, C→Z3 (koszt: 4+5+4=13)
```
### Algorytm węgierski (Hungarian)
- Złożoność: O(n³)
- Gwarantuje optimum
### Zastosowania
- Planowanie grafików pracy
- Przydział maszyn do zleceń
- Matching w HR (rekrutacja)
---
## 5. Problem komiwojażera (TSP - Travelling Salesman)
### Definicja
Odwiedzić wszystkie węzły dokładnie raz i wrócić do startu przy minimalnym koszcie.
```
A ──5── B
│╲ ╱│
4│ ╲3 │6
2│ ╲ │7
│╱ ╲│
C ──8── D
Optymalna trasa: A→C→D→B→A (koszt: 2+8+6+5=21)
```
### Właściwości
- **NP-trudny** - brak algorytmu wielomianowego
- Dokładne: Branch & Bound, programowanie dynamiczne
- Heurystyki: Nearest Neighbor, 2-opt, symulowane wyżarzanie
### Zastosowania
- Planowanie tras kurierów
- Optymalizacja wizyt serwisowych
- Sekwencjonowanie produkcji
---
## 6. CPM/PERT - Harmonogramowanie projektów
### CPM (Critical Path Method)
```
┌──B(3)──┐
A(2)──┤ ├──E(2)──F(1)
└──C(4)──D(1)
Ścieżka krytyczna: A→C→D→E→F (czas: 2+4+1+2+1=10)
```
### Właściwości
| Cecha | CPM | PERT |
|-------|-----|------|
| Czasy | Deterministyczne | Probabilistyczne (a,m,b) |
| Zastosowanie | Projekty powtarzalne | Projekty R&D |
| Wynik | Ścieżka krytyczna | Rozkład prawdopodobieństwa |
### Zastosowania
- Zarządzanie projektami budowlanymi
- Planowanie wdrożeń IT
- Koordynacja produkcji
---
## 7. Drzewo rozpinające (MST - Minimum Spanning Tree)
### Definicja
Połączyć wszystkie węzły przy minimalnym koszcie (bez cykli).
```
Przed: Po (MST):
2 2
A──────B A──────B
│╲ ╱│ │
│3╲1 │4 │3
│ C │ → │ C
│ ╱╲ │ │
5 ╲6│ │5
D──────E D E
7
Koszt MST: 2+3+1+5=11
```
### Algorytmy
| Algorytm | Złożoność | Strategia |
|----------|-----------|-----------|
| **Kruskal** | O(E log E) | Sortuj krawędzie, Union-Find |
| **Prim** | O(E log V) | Rozbudowa od węzła |
### Zastosowania
- Projektowanie sieci (elektrycznych, telekomunikacyjnych)
- Klasteryzacja danych
- Minimalizacja okablowania
---
## 📊 Porównanie modeli
| Model | Typ problemu | Złożoność | Przykład zastosowania |
|-------|--------------|-----------|----------------------|
| Shortest Path | P | O(E log V) | Nawigacja GPS |
| Max Flow | P | O(V²E) | Planowanie produkcji |
| Min Cost Flow | P | O(V³) | Transport towarów |
| Assignment | P | O(n³) | Grafiki pracy |
| TSP | NP-hard | Wykładnicza | Trasy kurierów |
| CPM/PERT | P | O(V+E) | Projekty |
| MST | P | O(E log V) | Sieci infrastruktury |
---
## 🧠 Mnemoniki
### "SPAM-CT" - modele sieciowe:
- **S**hortest Path
- **P**rzepływ (Max Flow)
- **A**ssignment
- **M**ST
- **C**PM/PERT
- **T**SP
### "Graf = Węzły + Krawędzie + Wagi":
- Węzły = lokalizacje/decyzje
- Krawędzie = połączenia
- Wagi = koszty/czasy/przepustowości
---
## ❓ Możliwe pytania dodatkowe
### Q1: "Jaka jest różnica między CPM a PERT?"
**Odpowiedź:** CPM używa deterministycznych czasów (znanych), PERT używa trzech estymacji (optymistyczna, najbardziej prawdopodobna, pesymistyczna) i rozkładu beta. CPM dla projektów powtarzalnych, PERT dla R&D z niepewnością.
### Q2: "Kiedy stosować heurystyki zamiast algorytmów dokładnych?"
**Odpowiedź:** Gdy problem jest NP-trudny (TSP) lub dane wejściowe bardzo duże. Heurystyki dają "dość dobre" rozwiązanie w rozsądnym czasie. Przykład: 2-opt dla TSP daje rozwiązanie ~5% od optimum w O(n²).
### Q3: "Co to jest slack/float w CPM?"
**Odpowiedź:** Zapas czasu zadania = najpóźniejszy start najwcześniejszy start. Zadania na ścieżce krytycznej mają slack=0 (opóźnienie opóźni cały projekt).
---
## 🎯 Kluczowe punkty
1. **Sieciowe modele** = problemy jako grafy (węzły, krawędzie, wagi)
2. **Shortest Path, Max Flow, MST** = rozwiązywalne w czasie wielomianowym
3. **TSP** = NP-trudny, wymaga heurystyk
4. **CPM/PERT** = harmonogramowanie, ścieżka krytyczna
5. **Assignment** = optymalne dopasowanie 1:1
---
## 📖 Źródła
1. Hillier, Lieberman - "Introduction to Operations Research"
2. Cormen et al. - "Introduction to Algorithms"
3. Winston - "Operations Research: Applications and Algorithms"