Nutné a postačující podmínky optimality
Obecný úvod
Úlohou matematického programování nazveme
f(x)→min,x∈X(4.1)
kde přípustná množina X je zadána systém rovností a nerovností
X:={x∈P⊆Rn∣gi(x)≤0,gj(x)=0,i=1,…,k,j=k+1,…,m}(4.2)
Zde je důležité podotknout, že vždy chceme nerovnostní omezení pouze tvaru gi(x)≤0
Je dobré si zapatovat, že
- m - počet omezení
- k - počet nerovností (tzn. g1,…,gk jsou nerovnosti, zbytek rovnosti)
Omezení zakomponovaná v P se nazývají přímá, naopak omezení ve formě gl se nazývají funkcionální. Dále definujme
-
množinu přípustných vektorů
V(x∗,X):={h∈LinX∣∃α0>0:x∗+th∈X pro ∀t∈(0,α0)}
-
množinu spádových vektorů (kužel zlepšujících vektorů)
U(x∗,f):={h∈LinX∣∃α0>0:x∗+th∈D(f)&f(x∗+th)<f(x∗) pro ∀t∈(0,α0)}
Lemma 4.1.1
Nechť X⊆R a f:X→R jsou dány. Je-li bod x∗∈X lokálním řešením úlohy (4.1), potom
V(x∗,X)∩U(x∗,f)=∅
Definice 4.1.2 (Stacionární bod)
Nechť množina X⊆Rn je konvexní a funkce f:X→R je diferencovatelná na (nějaké otevřené množině obsahující) X. Řekneme, že bod x∗∈X je stacionárním bodem úlohy (4.1) (nebo také stacionárním bodem funkce f na množině X), jestliže
⟨gradf(x∗),x−x∗⟩≥0,(4.1.2)
pro každé x∈X.
Výraz v (4.1.2) je směrová derivace x∗ do libovolného bodu v X - v těchto směrech musí být f rostoucí
Pro X=Rn je podmínka (4.1.2) splněna pouze v případě gradf(x∗)=0
Dále ukažme, že stacionární bod ve smyslu Definice 4.1.2 má vlastnosti, které od něj očekáváme.
Věta 4.1.3 (Vlastnosti stacionárniho bodu)
Nechť f:X→R je diferencovatelná na (nějaké otevřené množině obsahující konvexní množinu) X⊆Rn.
- Je-li x∗∈X lokálním extrémem funkce f na X (tj. lokálním řešením úlohy (4.1)), pak x∗ je stacionárním bodem funkce f na X
- Naopak, je-li f (ostře) konvexní na X a x∗∈X je stacionárním bodem f na X, pak x∗ je (jediným) řešením úlohy (4.1), tj. (jediným) globálním minimem f na X.
Pokud avšak f není konvexní, potřebujeme o rozhodnutí "extrémnosti" stacionárního bodu další nástroje
Nutná podmínka pro (4.1)
Je-li x∗∈X lokálním minimem funkce f:X→R,f∈C2, na konvexní množině X⊆Rn, pak
(x−x∗)T∇2f(x∗)(x−x∗)≥0
pro všechna x∈X taková, že gradTf(x∗)(x−x∗)=0, tj. pro vektory (x−x∗)∈kergradTf(x∗)
Postačující podmínka pro (4.1)
Bod x∗ je lokálním minimem funkce f:X→R,f∈C2, na konvexní množině X⊆Rn, jestliže
gradTf(x∗)(x−x∗)≥0,∀x∈X,
(tj. je to stacionární bod ve smyslu Definice 4.1.2), množina X je polyedr a platí
(x−x∗)T∇2f(x∗)(x−x∗)>0
pro všechna x∈X taková, že x=x∗ a (x−x∗)∈kergradTf(x∗)
Je-li X polyedr, pak je V(x∗,X) uzavřená
Nutné a postačující podmínky optimality
Uvažujme přidruženou Lagrangeovu funkci L:P×R×Rm→R k úloze (4.1)&(4.2) definovanou jako
L(x,y0,y):=y0f(x)+i=1∑myigi(x),,(4.1.2)
přičemž v případě y0=1 bude L(x,1,y):=L(x,y). Navíc čísla y0,…,ym nazyváme Lagrangeovými multiplikátory.
Omezení nazveme aktivní, pokud se realizuje jako rovnost
Dále ještě zaveďme následující
Q:={y=(y1,…,ym)T∣y1,…,yk≥0}
a dvě další množiny:
-
Množinu aktivních omezení v bodě x∗
I(x∗):={i∈{1,…,k}∣gi(x∗)=0},x∗∈X
-
Množinu indexů všech funkcí, které se v bodě x∗ realizují jako rovnost
S(x∗):=I(x∗)∪{k+1,…,m},x∗∈X
Věta 4.2.1 (Lagrangeův princip)
Nechť množina P⊆Rn je konvexní, funkce f,g1,…,gk:P→R jsou diferencovatelné v bodě x∗∈X a gk+1,…,gm jsou spojitě diferencovatelné na nějakém okolí bodu x∗. Je-li bod x∗∈X lokálním řešením úlohy (4.1)&(4.2), pak existují Lagrangeovy multiplikátory y0∗>0 a y∗∈Q takové, že ne všechna y0∗,…,ym∗ jsou nulová a platí
⟨gradxL(x∗,y0∗,y∗),x−x∗⟩≥0∀x∈P(4.2.3)
yi∗gi(x∗)=0,i=1,…,m(4.2.4)
Podmínka (4.2.3) znamená, že x∗ musí být stacionárním bodem funkce L(x,y0∗,y∗) (podmínka stacionarity). Dále podmínka (4.2.4) se nazývá podmínka komplementarity a požadavek y1∗,…,yk∗>0 jako podmínka duality.
Jistě y0∗,y1∗,…,yk∗≥0, yk+1∗,…,ym∗∈R⟺y0∗>0 a y∗∈Q
Jelikož situace s y0∗=0 je problematická, existují podmínky na zaručení y0∗=0, což je ekvivalentní s y0∗=1. Tyto podmínky se nazývají podmínky kvalifikovaného omezení:
-
Regulárnost bodu x∗, tj, bod x∗ je regulární, pokud jsou gradgi(x∗) pro i∈S(x∗) lineárně nezávislé (tj. gradienty aktivních omezení jsou LNZ)
-
afinní omezení - funkce g1,…,gm jsou afinní
-
Slaterova podmínka - g1,…,gk jsou konvexní, gk+1,…,gm jsou afinní,
pokračuje,konstantní ale vizvektory $\tagDe{4.2.3}grad g_i$ jsou lineárně nezávislé pro $i \in \set{k+1, \dots, m}aexistuje\bar x \in Ptakoveˊ,zˇeg_i(\bar x) < 0proi \in \set{1, \dots, k}ag_j(\bar x) = 0proj \in \set{k+1, \dots, m}$
Důsledek 4.2.2
Nechť P⊆Rn je konvexní množina, funkce f,g1,…,gm jsou diferencovatelné na (nějaké otevřené množině obsahující) P a pro x∗∈X existují multiplikátory y∗∈Q takové, že platí (4.2.3) & (4.2.4) s y0∗=1. Nechť je dále splněn (alespoň) jeden z následujících předpokladů:
- funkce L(x,y∗) je konvexní na množině P
- úloha (4.1) & (4.2) je úlohou konvexního programování, tj. na konvexní množině P jsou funkce f,g1,…,gk konvexní a gk+1,…,gm afinní
Pak bod x∗ je globálním řešením úlohy (4.1) & (4.2).
Teoreticky stačí pouze kvazikonvexní g1,…,gk
Věta 4.2.3 (Karushova-Kuhnova-Tuckerova v diferenciálním tvaru)
Nechť P⊆Rn je konvexní množina, funkce f,g1,…,gk konvexní a diferencovatelné na (nějaké otevřené množině obsahující) P, funkce gk+1,…,gm afinní na P a nechť platí (alespoň) jedna z následujících podmínek:
-
(LNZ) množina P je otevřená, vektory gradgi(x),i∈S(x) jsou lineárně nezávislé pro každé x∈X.
-
(Slaterova) funkcionální omezení jsou pouze tvaru nerovností, tj. k=m, a existuje bod xˉ∈P takový, že gi(xˉ)<0 pro i∈{1,…,k}
-
(lineární) množina P je polyedr a funkce g1,…,gk jsou afinní
Pak x∗ je řešením úlohy (4.1) & (4.2) právě tehdy, když existuje y∗∈Q takové, že platí (4.2.3) & (4.2.4) s y0∗=1.
Věta 4.2.4
Nechť funkce f,g1,…,gm jsou dvakrát spojitě diferencovatelné v bodě x∗ a x∗∈intP je takový, že existují multiplikátory y∗∈Q splňující (4.2.3) & (4.2.4) s y0∗=1 a současně yi∗>0 pro i∈I(x∗) (tzv. podmínka ostré komplementarity), tj.
gradxL(x∗,y∗)=0,
gi(x∗)≤0 pro i∈{1,…,k},gi(x∗)=0 pro i∈{k+1,…,m},
yi∗>0 pro i∈I(x∗),yi∗=0 pro i∈{1,…,k}∖I(x∗),
yi∗∈R pro i∈{k+1,…,m}
Jestliže
∇x2L(x∗,y∗)>0 na ker(gradTgi(x∗))i∈S(x∗),
tj. hT∇x2L(x∗,y∗)h>0 pro všechna h∈Rn∖{0} taková, že ⟨gradgi(x∗),h⟩=0 pro i∈S(x∗), pak bod x∗ je ostré lokální minimum funkce f na množině X.