Blame

78fd48 Štěpán Zapadlo 2026-03-28 10:34:33
Add dual problem
1
# Duální úloha
2
3
<div style="visibility:hidden;height:0;overflow:hidden;margin:0;padding:0">
4
5
```math
6
\newcommand{\LetThereBe}[2]{\newcommand{#1}{#2}} \newcommand{\letThereBe}[3]{\newcommand{#1}[#2]{#3}}
7
\letThereBe{\addTag}{2}{\cssId{#1-#2}{\tag{#2}}} \letThereBe{\addLabel}{2}{\cssId{#1-#2}{\text{#2}}} \letThereBe{\refTag}{2}{\href{###1-#2}{(\text{#2})}}
8
\letThereBe{\eqT}{1}{\addTag{eq}{#1}}\letThereBe{\secT}{1}{\addLabel{sec}{#1}}
9
\letThereBe{\eqRef}{1}{\refTag{eq}{#1}} \letThereBe{\secRef}{1}{\refTag{sec}{#1}}
10
\letThereBe{\eqRefAt}{2}{\href{#2\#eq-#1}{(\text{#1})}}
11
\letThereBe{\secRefAt}{2}{\href{#2\#sec-#1}{(\text{#1})}}
12
\LetThereBe{\R}{\mathbb{R}} \LetThereBe{\N}{\mathbb{N}}
13
\letThereBe{\rcases}{1}{\left.\begin{align}#1\end{align}\right\}}
14
\letThereBe{\rcasesAt}{2}{\left.\begin{alignat}{#1}#2\end{alignat}\right\}}
15
\letThereBe{\lcases}{1}{\begin{cases}#1\end{cases}}
16
\letThereBe{\lcasesAt}{2}{\left\{\begin{alignat}{#1}#2\end{alignat}\right.}
17
\letThereBe{\scal}{2}{\langle #1, #2 \rangle} \letThereBe{\norm}{1}{\left\lVert #1 \right\rVert} \LetThereBe{\dist}{\rho}
18
\LetThereBe{\and}{\&}\letThereBe{\brackets}{1}{\left\{ #1 \right\}}
19
\letThereBe{\parc}{2}{\frac {\partial #1}{\partial #2}}
20
\letThereBe{\mtr}{1}{\begin{pmatrix}#1\end{pmatrix}}
21
\letThereBe{\bm}{1}{\boldsymbol{#1}} \letThereBe{\mcal}{1}{\mathcal{#1}}
22
\letThereBe{\vv}{1}{\mathbf{#1}}\letThereBe{\vvp}{1}{\pmb{#1}}
23
\LetThereBe{\ve}{\varepsilon} \LetThereBe{\l}{\lambda} \LetThereBe{\th}{\vartheta} \LetThereBe{\a}{\alpha} \LetThereBe{\vf}{\varphi}
24
\letThereBe{\conv}{1}{\mathrm{conv}\, #1} \letThereBe{\cone}{1}{\mathrm{cone}\, #1}
25
\letThereBe{\aff}{1}{\mathrm{aff}\, #1} \letThereBe{\lin}{1}{\mathrm{Lin}\, #1} \letThereBe{\span}{1}{\mathrm{span}\, #1}
26
\LetThereBe{\O}{\mathcal O}
27
\letThereBe{\ri}{1}{\mathrm{ri}\, #1} \letThereBe{\rd}{1}{\mathrm{r}\partial\, #1} \letThereBe{\interior}{1}{\mathrm{int}\, #1}
28
\LetThereBe{\proj}{\Pi} \letThereBe{\epi}{1}{\mathrm{epi}\, #1}
29
\letThereBe{\grad}{1}{\mathrm{grad}\, #1} \letThereBe{\gradT}{1}{\mathrm{grad}^T #1} \letThereBe{\gradx}{1}{\mathrm{grad}_x #1} \letThereBe{\hess}{1}{\nabla^2\, #1} \letThereBe{\hessx}{1}{\nabla^2_x #1}
30
\letThereBe{\subdif}{1}{\partial #1} \letThereBe{\co}{1}{\mathrm{co}\, #1}
31
\letThereBe{\iter}{1}{^{[#1]}} \LetThereBe{\str}{^*}
32
\LetThereBe{\spv}{\mcal V} \LetThereBe{\civ}{\mcal U}
33
\LetThereBe{\knvxProg}{\eqRefAt{4.1}{./Nutné a postačující podmínky optimality} \, \and \, \eqRefAt{4.2}{./Nutné a postačující podmínky optimality}}
34
\letThereBe{\set}{1}{\left\{ #1 \right\}}
35
```
36
37
</div>
38
39
##### **Definice** $\secT{4.3.1}$ (Kuhnovy-Tuckerovy vektory)
40
Vektor $y\str \in Q$ (*prvních $k$ složek je nezáporných*) se nazývá **Kuhnnovým-Tuckerovým** vektorem (**K-T** vektorem) úlohy $\knvxProg$, jestliže
41
42
```math
43
f\str \leq f(x) + \sum_{i = 1}^m y_i\str g_i(x) = L(x,y\str) \quad \forall x\in P, \eqT{4.3.0}
44
```
45
46
kde $f\str := \inf_{x \in X} f(x)$ je hodnota úlohy $\knvxProg$.
47
48
> **K-T** vektor pro danou úlohu **nemusí** existovat
49
50
##### **Věta** $\secT{4.3.2}$
51
Nechť úloha $\knvxProg$ je úlohou **konvexního programování**, tj. množina $P \subseteq \R^n$ je **konvexní**, funkce $f, g_1, \dots, g_k$ **konvexní** a $g_{k+1}, \dots, g_m$ jsou **afinní**, a nechť dále platí (*alespoň*) jedna z podmínek **regularity**:
52
1. **(Slaterova)** $k = m$ a existuje $\bar x \in P$ takové, že $g_i(\bar x) < 0$ pro $i = 1, \dots, m$
53
2. **(lineární)** množina $P$ je **polyedr**, funkce $f, g_1, \dots, g_k$ jsou **afinní** a $X \neq \emptyset$.
54
55
Pak **existuje K-T** vektor úlohy $\knvxProg$.
56
57
> Zde se podmínka 2. **liší** od podmínky 3. ve **Větě** $\secRefAt{4.2.3}{./Nutné a postačující podmínky optimality}$ - vyžaduje ještě **neprázdnost** přípustné množiny
58
59
Úloha konvexního programování splňující nějakou z podmínek z Věty $\secRef{4.3.2}$ se nazývá **regulární**.
60
61
##### **Definice** $\secT{4.3.3}$ (Duální úloha)
62
Nechť $y \in Q$. Definujme funkci
63
64
```math
65
\vf(y) := \inf_{x \in P} L(x,y) = \inf_{x \in P} \left( f(x) + \sum_{i = 1}^m y_i g_i(x) \right)
66
```
67
68
a množinu (tzv. **efektivní definiční obor**)
69
70
```math
71
Y := \set{y \in Q \mid \vf(y) > -\infty}.
72
```
73
74
Pak úloha
75
76
```math
77
\vf(y) \to \max, \qquad y \in Y \eqT{4.3.1}
78
```
79
80
se nazývá ***duální úlohou*** k úloze $\knvxProg$. Číslo
81
82
```math
83
\vf\str := \sup_{y \in Y} \vf(y)
84
```
85
86
se nazývá **hodnotou duální úlohy** $\eqRef{4.3.1}$.
87
88
---
89
90
Úloha $\eqRef{4.3.1}$ je úlohou **konkávního** programování, tj. množina $Y$ je ***konvexní*** a funkce $\vf$ je **konkávní** na $Y$.
91
92
##### **Věta** $\secT{4.3.5}$ (Slabá věta o dualitě)
93
Pro každé $x \in X$ a každé $y \in Q$ platí
94
95
```math
96
f(x) \geq \vf(y)
97
```
98
99
Zejména, pokud $X \neq \emptyset$ a $Y \neq \emptyset$, pak $f\str \geq \vf\str$.
100
101
> V případě $X = \emptyset$ a/nebo $Y = \emptyset$ je nerovnost splněna *triviálně*, neboť $\inf \emptyset = \infty$ a $\sup \emptyset = - \infty$.
102
103
Věta $\secRef{4.3.5}$ říká, že pro **duální rozdíl** $g$ (*duality gap*) s $x \in X \neq \emptyset$ a $y \in Y \neq \emptyset$ bude platit
104
105
```math
106
g(x,y) := f(x) - \vf(y) \geq 0
107
```
108
109
Navíc číslo $g(x\str,y\str) := f\str - g\str$ udává tzv. **optimální duální rozdíl** (*optimal duality gap*). Dá se také říct, že pro libovolné $y \in Q$ je hodnota $\vf(y)$ **dolní hranicí minima účelové** funkce úlohy $\knvxProg$.
110
111
##### **Certifikát optimality**
112
113
Jsou-li $x\str \in X$ a $y\str \in Q$ taková, že platí
114
115
```math
116
f(x\str) = \vf(y\str),
117
```
118
119
pak $x\str$ a $y\str$ jsou **optimálními řešeními** svých příslušných úloh.
120
121
---
122
123
Duální rozdíl je úzce spjat s **existencí K-T vektorů**. Jestliže je duální rozdíl **nenunlový**, tj. $f\str > \vf\str$, pak **množina K-T vektorů musí být prázdná**.
124
125
> Jinak řečeno, **existence K-T** vektorů zaručuje $f\str = \vf\str$
126
127
##### **Věta** $\secT{4.3.6}$ (Silná věta o dualitě)
128
Nechť úloha $\knvxProg$ je **regulární úlohou** konvexního programování (viz. Věta $\secRef{4.3.2}$). Pokud $f\str > -\infty$, pak platí tzv. **vztah duality**
129
130
```math
131
f\str = \vf\str, \quad \text{ tj. } \quad \inf_{x \in P}\sup_{y \in Q}L(x,y) = \sup_{y \in Q}\inf_{x \in P} L(x,y),
132
```
133
134
přičemž množina řešení duální úlohy $\eqRef{4.3.1}$ je **neprázdná a shodná** s množinou všech **K-T vektorů** úlohy $\knvxProg$.
135
136
---
137
138
Z Věty $\secRef{4.3.6}$ vyplývá, že pokud $\knvxProg$ je **regulární** úlohou **konvexního programování** (viz Věta $\secRef{4.3.2}$) a
139
1. jestliže $Y \neq \emptyset$, pak **duální úloha je řešitelná** a $f\str > -\infty$
140
2. jestliže $Y = \emptyset$, pak $f\str = -\infty$
141
142
Celkem z Vět $\secRef{4.3.5}, \secRef{4.3.6}$ a z bezprostředně výše uvedného důsledku vyplývá, že v případě **regulární úlohy konvexního programování** mohou nastat **pouze 2** možnosti
143
144
| Duální Ú. \\ Primární Ú.| Nepřípustná ($f\str = \infty$)| Přípustná a Omezená | Neomezená ($f\str = -\infty$) |
145
| ------------------------|-------------------------------|---------------------|-------------------------------|
df9327 Štěpán Zapadlo 2026-03-28 10:35:10
Fix table formatting
146
| **Neomezená** ($\vf\str = \infty$) | NE (_Ano bez **regularity**_) | NE | NE |
147
| **Přípustná a Omezená** | NE (_Možná bez **regularity**_)| **ANO** | NE |
148
| **Nepřípustná** ($\vf\str = -\infty$) | NE (_Ano bez **regularity**_) | NE | **ANO** |
78fd48 Štěpán Zapadlo 2026-03-28 10:34:33
Add dual problem
149
150
151
> Z **regularity** plyne, že $X \neq \emptyset$
152
153
##### **Věta** $\secT{4.3.8}$ (Kuhnova-Tuckerova v nediferenciálním tvaru)
154
Nechť úloha $\knvxProg$ je **regulární úlohou konvexního programování** (viz Věta $\secRef{4.3.2}$). Pak $x\str \in X$ je řešením této úlohy právě tehdy, když platí (*alespoň*) jedna z podmínek:
155
1. existuje $y\str \in Q$ takové, že $f(x\str) = \vf(y\str)$
156
2. existuje $y\str \in Q$ takové, že \
157
158
```math
159
L(x\str,y\str) = \min_{x \in P}L(x, y\str), \eqT{4.3.2}
160
```
161
162
```math
163
y_i\str g_i(x\str) = 0, \quad i \in \set{1, \dots, m}, \eqT{4.3.3}
164
```
165
166
Navíc množina takovýchto vektorů $y\str \in Q$ **splývá** s množinou **řešení duální** úlohy (a podle Věty $\secRef{4.3.6}$ tedy i s množinou **K-T vektorů** úlohy $\knvxProg$).
167
168
> Jsou-li navíc funkce $f, g_1, \dots, g_m$ **diferencovatelné** v bodě $x\str$, pak podmínka $\eqRef{4.3.2}$ **je ekvivalentní** s podmínkou $\eqRefAt{4.2.3}{./Nutné a postačující podmínky optimality}$ **pro** $y_0\str = 1$, zatímco $\eqRef{4.3.3}$ **odpovídá** $\eqRefAt{4.2.4}{./Nutné a postačující podmínky optimality}$.
169
>
170
> Tedy Věta $\secRef{4.3.8}$ je skutečně **zobecnění KKT Věty** $\secRefAt{4.2.3}{./Nutné a postačující podmínky optimality}$ pro případ **nediferencovatelných** funkcí
171
>
172
> Také se dá říct, že koncept **K-T vektorů** je **zobecněním Lagrangeových multiplikátorů** s *kvalifikovanými omezeními* (kvůli $y_0\str = 1$) - **K-T vektory splývají** s **multiplikátory** za podmínek Věty $\secRefAt{4.2.3}{./Nutné a postačující podmínky optimality}$
173
174
##### **Definice** $\secT{4.3.9}$ (Sedlový bod)
175
Bod $[x\str, y\str] \in P \times Q$ se nazývá **sedlovým bodem** Lagrangeovy funkce $L(x,y)$ úlohy $\knvxProg$ na $P \times Q$, jestliže
176
177
```math
178
L(x\str,y) \leq L(x\str, y\str) \leq L(x,y\str) \quad \forall x \in P, y \in Q,
179
```
180
181
tj. platí
182
183
```math
184
L(x\str,y\str) = \max_{y \in Q} L(x\str, y) = \min_{x \in P} L(x,y\str)
185
```
186
187
##### **Věta** $\secT{4.3.10}$ (Kuhnova-Tuckerova pro sedlový bod)
188
Nechť úloha $\knvxProg$ je **regulární úlohou** konvexní programování (viz Věta $\secRef{4.3.2}$). Pak bod $x\str \in P$ je **řešením** úlohy $\knvxProg$ právě tehdy, když **existuje** $y\str \in Q$ takové, že $[x\str, y\str]$ je **sedlovým bodem** Lagrangeovy funkce $L(x,y)$ úlohy $\knvxProg$ na $P \times Q$.