Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
statnice:bakalar:b0b33opt [2025/06/04 18:09] – [Dualita v LP] zapleka3 | statnice:bakalar:b0b33opt [2025/06/12 10:33] (current) – [Podmínky konvexity podle derivací] el_dusto | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ==== Použití lineární algebry v optimalizaci. Iterační algoritmy na volné lokální extrémy. Lineární programování. Konvexní množiny a funkce, konvexní úlohy. Dualita. ==== | + | ====== Použití lineární algebry v optimalizaci. Iterační algoritmy na volné lokální extrémy. Lineární programování. Konvexní množiny a funkce, konvexní úlohy. Dualita. |
[[https:// | [[https:// | ||
Line 718: | Line 718: | ||
== L₁-norm (taxicab-norma) == | == L₁-norm (taxicab-norma) == | ||
* Chceme minimalizovat součet absolutních odchylek: %%< | * Chceme minimalizovat součet absolutních odchylek: %%< | ||
- | * Formulujeme ekvivalentně: | + | * Formulujeme ekvivalentně: |
* Nalezené \(\{u_{i}^{*}\}\) jsou pak absolutní odchylky a \(\sum_i u_i^*\) je minimální součet. | * Nalezené \(\{u_{i}^{*}\}\) jsou pak absolutní odchylky a \(\sum_i u_i^*\) je minimální součet. | ||
Line 873: | Line 873: | ||
* Tato stěna je průnik s tzv. **opěrnou nadrovinou**: | * Tato stěna je průnik s tzv. **opěrnou nadrovinou**: | ||
+ | |||
+ | ===== 9. Dualita v LP ===== | ||
+ | |||
+ | Každé úloze lineárního programování (tzv. **primární úloze**) odpovídá jiná LP úloha – tzv. **duální úloha**. Obě spolu souvisí: řešení jedné poskytuje informace o řešení druhé a zároveň může sloužit jako nástroj pro jednodušší nalezení optima. | ||
+ | |||
+ | ==== Primární a duální úloha ==== | ||
+ | |||
+ | Nechť máme primární úlohu ve tvaru: %%< | ||
+ | |||
+ | K ní přísluší duální úloha: %%< | ||
+ | * Vektory \(x\) a \(y\) jsou proměnné v primární a duální úloze. | ||
+ | * Matice a vektory jsou převrácené – omezení primalu se stávají cílovou funkcí dualu a naopak. | ||
+ | * Duální úloha je tzv. **reverzibilní úprava** primární – přechod mezi nimi je čistě formální. | ||
+ | |||
+ | ==== Slabá dualita ==== | ||
+ | |||
+ | * **Věta o slabé dualitě:** | ||
+ | * Pro každé přípustné řešení \(x\) primární úlohy a každé přípustné \(y\) duální úlohy platí: %%< | ||
+ | * Duální hodnota je tedy **dolní mez** primalu. | ||
+ | |||
+ | * Pokud se stane, že: %%< | ||
+ | * pro nějaké přípustné dvojice \((x^*, y^*)\), pak jsou **obě řešení optimální**. | ||
+ | |||
+ | ==== Silná dualita ==== | ||
+ | |||
+ | * **Věta o silné dualitě:** | ||
+ | * Pokud má primární úloha nebo duální úloha **optimální řešení**, | ||
+ | * druhá úloha má také řešení, | ||
+ | * a platí: %%< | ||
+ | |||
+ | * Tato rovnost se označuje jako **certifikát optimality** – potvrzuje, že nalezené řešení je opravdu optimum. | ||
+ | |||
+ | * Ekvivalentně platí: | ||
+ | * Primal má optimum ⇔ dual má optimum ⇔ hodnoty jsou stejné. | ||
+ | |||
+ | ==== Komplementarita ==== | ||
+ | |||
+ | * **Komplementární podmínky: | ||
+ | * Jsou splněny právě tehdy, když jsou obě řešení optimální: | ||
+ | * Pro každé \(i\): %%< | ||
+ | * Pro každé \(j\): %%< | ||
+ | * Obecně: %%< | ||
+ | |||
+ | * Jinými slovy: **každá podmínka buď svazuje řešení (aktivní), nebo má nulový stínový dopad**. | ||
+ | |||
+ | ==== Význam a využití ==== | ||
+ | * Dualita v LP umožňuje: | ||
+ | * jednodušší konstrukci algoritmů (např. dual simplex), | ||
+ | * odhad kvality řešení primalu pomocí dualu (dolní/ | ||
+ | * výpočet **stínových cen** – jak moc se zlepší optimum, když uvolníme omezení, | ||
+ | * rozhodování o významu jednotlivých omezení a jejich dopadu na výsledek. | ||
+ | |||
+ | * V praxi se primal a duální řešení často hledají současně – např. v simplexové metodě se během výpočtu tvoří i informace o duálu. | ||
+ | |||
+ | ===== 10. Konvexní funkce a konvexní optimalizace ===== | ||
+ | |||
+ | Konvexní funkce tvoří základ moderní optimalizace – mají příznivé geometrické i analytické vlastnosti. Hledání minima konvexní funkce je jednodušší, | ||
+ | |||
+ | ==== Definice konvexní funkce ==== | ||
+ | |||
+ | * Funkce \( f: \mathbb{R}^n \to \mathbb{R} \) je **konvexní**, | ||
+ | |||
+ | * Funkce je **striktně konvexní**, | ||
+ | |||
+ | * Konvexita znamená, že graf funkce je „ohnutý směrem nahoru“. | ||
+ | |||
+ | ==== Epigraf a subkontura ==== | ||
+ | |||
+ | * **Epigraf** funkce \( f \): množina bodů nad grafem: %%< | ||
+ | |||
+ | * **Subkontura (sublevel množina)** – množina všech bodů, kde funkce nepřesahuje danou hodnotu: %%< | ||
+ | |||
+ | ==== Podmínky konvexity podle derivací ==== | ||
+ | |||
+ | Pokud je \(f\) diferencovatelná: | ||
+ | |||
+ | * **1. derivace – gradientová podmínka: | ||
+ | |||
+ | Pokud je \(f\) dvakrát diferencovatelná: | ||
+ | |||
+ | * **2. derivace – Hessova podmínka: | ||
+ | |||
+ | ==== Úloha konvexní optimalizace ==== | ||
+ | |||
+ | * Obecná úloha konvexní optimalizace má tvar: %%< | ||
+ | * kde: | ||
+ | * \( f: \mathbb{R}^n \to \mathbb{R} \) je konvexní funkce, | ||
+ | * \( C \subseteq \mathbb{R}^n \) je konvexní množina (např. množina omezení). | ||
+ | |||
+ | * Důležité vlastnosti: | ||
+ | * Pokud je funkce i množina omezení konvexní ⇒ **každé lokální minimum je globální**. | ||
+ | * Existují efektivní algoritmy (např. metoda vnitřního bodu, subgradienty, | ||
+ | |||
+ | * Typické aplikace: | ||
+ | * Optimalizace ztrátové funkce v machine learningu (ridge, LASSO), | ||
+ | * Portfolio management (mean-variance model), | ||
+ | * Řízení systémů a model prediktivního řízení (MPC), | ||
+ | * Design sítí, rozpočtové plánování. | ||