praca_magisterska/pytania/odpowiedzi/17-optymalizacja-nieliniowa.md

209 lines
5.8 KiB
Markdown
Raw Normal View History

2025-12-21 19:58:11 +01:00
# Pytanie 17: Optymalizacja nieliniowa - warunki optymalności
## Pytanie
**"Przedstawić warunki konieczne i dostateczne optymalności różniczkowalnych zadań optymalizacji bez ograniczeń i z ograniczeniami oraz warunki regularności i omówić metody poszukiwania rozwiązań zadań optymalizacji nieliniowej."**
Przedmiot: AMO (Analiza i Metody Optymalizacji)
---
## 📚 Odpowiedź główna
### 1. Optymalizacja bez ograniczeń
#### Problem
$$\min_{x \in \mathbb{R}^n} f(x)$$
#### Warunki konieczne (I rzędu)
Jeśli $x^*$ jest minimum lokalnym i $f$ jest różniczkowalna:
$$\nabla f(x^*) = 0$$
(Gradient zerowy - punkt stacjonarny)
#### Warunki dostateczne (II rzędu)
Jeśli $\nabla f(x^*) = 0$ oraz hesjan $H(x^*) = \nabla^2 f(x^*)$:
| Hesjan | Wniosek |
|--------|---------|
| $H \succ 0$ (dodatnio określony) | **Minimum lokalne** |
| $H \prec 0$ (ujemnie określony) | Maximum lokalne |
| $H$ nieokreślony | Punkt siodłowy |
| $H \succeq 0$ (półdodatni) | Brak wniosku |
**Sprawdzenie:** Wszystkie wartości własne $\lambda_i > 0 \Rightarrow H \succ 0$
---
### 2. Optymalizacja z ograniczeniami
#### Problem ogólny
$$\min_{x} f(x)$$
$$\text{s.t. } g_i(x) \leq 0, \quad i = 1, \ldots, m$$
$$\quad\quad h_j(x) = 0, \quad j = 1, \ldots, p$$
#### Lagrangian
$$L(x, \lambda, \mu) = f(x) + \sum_{i=1}^{m} \lambda_i g_i(x) + \sum_{j=1}^{p} \mu_j h_j(x)$$
---
### 3. Warunki KKT (Karush-Kuhn-Tucker)
#### Warunki konieczne I rzędu
Jeśli $x^*$ jest minimum i spełnione są warunki regularności:
1. **Stacjonarność:**
$$\nabla_x L(x^*, \lambda^*, \mu^*) = 0$$
2. **Dopuszczalność pierwotna:**
$$g_i(x^*) \leq 0, \quad h_j(x^*) = 0$$
3. **Dopuszczalność dualna:**
$$\lambda_i^* \geq 0$$
4. **Komplementarność:**
$$\lambda_i^* g_i(x^*) = 0 \quad \forall i$$
```
KKT interpretacja geometryczna:
∇f(x*)
│ ∇g₁(x*)
│ ↗
─────●───── (granica ograniczenia)
x*
W optimum: ∇f = -λ∇g (przeciwne kierunki, λ≥0)
```
---
### 4. Warunki regularności (Constraint Qualification)
Warunki zapewniające, że KKT są konieczne:
| Warunek | Definicja |
|---------|-----------|
| **LICQ** (Linear Independence CQ) | Gradienty aktywnych ograniczeń liniowo niezależne |
| **MFCQ** (Mangasarian-Fromovitz CQ) | Słabsza wersja LICQ |
| **Slater** | Istnieje punkt ściśle wewnątrz (dla wypukłych) |
**LICQ:** $\{\nabla g_i(x^*) : g_i(x^*) = 0\} \cup \{\nabla h_j(x^*)\}$ są liniowo niezależne
---
### 5. Warunki dostateczne II rzędu
Jeśli spełnione KKT i dla hesjanu Lagrangianu:
$$d^T \nabla_{xx}^2 L(x^*, \lambda^*, \mu^*) d > 0$$
dla wszystkich $d \neq 0$ spełniających:
- $\nabla g_i(x^*)^T d = 0$ dla aktywnych $g_i$
- $\nabla h_j(x^*)^T d = 0$ dla wszystkich $h_j$
To $x^*$ jest **ścisłym minimum lokalnym**.
---
### 6. Metody optymalizacji nieliniowej
#### Metody gradientowe (bez ograniczeń)
| Metoda | Kierunek | Zbieżność |
|--------|----------|-----------|
| **Gradient Descent** | $d = -\nabla f$ | Liniowa |
| **Newton** | $d = -H^{-1}\nabla f$ | Kwadratowa |
| **BFGS** | Quasi-Newton | Superlinearna |
| **Conjugate Gradient** | Sprzężone kierunki | Superlinearna |
```
Gradient Descent:
x_{k+1} = x_k - α_k ∇f(x_k)
Newton:
x_{k+1} = x_k - [∇²f(x_k)]^{-1} ∇f(x_k)
```
#### Metody z ograniczeniami
| Metoda | Idea |
|--------|------|
| **Kary zewnętrznej** | $\min f(x) + \rho \sum \max(0, g_i)^2$ |
| **Kary wewnętrznej (Barrier)** | $\min f(x) - \mu \sum \log(-g_i)$ |
| **SQP** (Sequential Quadratic Programming) | Iteracyjne rozwiązywanie QP |
| **Interior Point** | Barrier + Newton |
| **Augmented Lagrangian** | Lagrangian + kara |
#### SQP - Algorytm
```
Repeat:
1. Rozwiąż podproblem QP:
min ∇f(x_k)^T d + ½ d^T H_k d
s.t. g_i(x_k) + ∇g_i(x_k)^T d ≤ 0
h_j(x_k) + ∇h_j(x_k)^T d = 0
2. x_{k+1} = x_k + α_k d_k
3. Aktualizuj H_k (BFGS)
```
---
### 7. Porównanie metod
| Metoda | Ograniczenia | Złożoność iter. | Zbieżność |
|--------|--------------|-----------------|-----------|
| **Gradient** | Bez | O(n) | Liniowa |
| **Newton** | Bez | O(n³) | Kwadratowa |
| **BFGS** | Bez | O(n²) | Superlinearna |
| **SQP** | Z | O(n³) per QP | Superlinearna |
| **Interior Point** | Z | O(n³) | Polinomialna |
---
## 🧠 Mnemoniki
### "KKT = Keep Killing Troubles":
- **K**ondycja stacjonarności (∇L = 0)
- **K**onieczność dopuszczalności (g ≤ 0, h = 0, λ ≥ 0)
- **T**rick komplementarności (λg = 0)
### "Hesjan dodatni = Minimum":
$H \succ 0$ → punkt jest minimum (jak miska)
### "LICQ = Linear Independence":
Gradienty aktywnych ograniczeń muszą być liniowo niezależne
---
## ❓ Pytania dodatkowe
### Q1: "Co oznacza warunek komplementarności λᵢgᵢ = 0?"
**Odpowiedź:** Albo ograniczenie nieaktywne ($g_i < 0$, wtedy $\lambda_i = 0$), albo aktywne ($g_i = 0$, wtedy $\lambda_i \geq 0$). Mnożnik niezerowy tylko dla "ciasnych" ograniczeń.
### Q2: "Kiedy KKT są warunkami dostatecznymi?"
**Odpowiedź:** Dla problemów wypukłych (f wypukła, g wypukłe, h liniowe). Wtedy każdy punkt KKT jest globalnym minimum.
### Q3: "Jaka jest przewaga BFGS nad Newtonem?"
**Odpowiedź:** BFGS nie wymaga obliczania hesjanu (tylko gradienty), przybliża hesjan iteracyjnie. O(n²) zamiast O(n³) per iteracja. Bardziej odporny na nieścisłości.
---
## 🎯 Kluczowe punkty
1. **Bez ograniczeń:** $\nabla f = 0$ (konieczny), $H \succ 0$ (dostateczny)
2. **Z ograniczeniami:** KKT = stacjonarność + dopuszczalność + komplementarność
3. **Regularność:** LICQ, Slater - warunki na poprawność KKT
4. **Metody:** Gradient, Newton, BFGS (bez), SQP, Interior Point (z)
5. **Wypukłość:** KKT konieczne i dostateczne
---
## 📖 Źródła
1. Boyd, Vandenberghe - "Convex Optimization"
2. Nocedal, Wright - "Numerical Optimization"
3. Bazaraa et al. - "Nonlinear Programming"