16.01.2015 Views

OPTIM´ALN´I ROZHODOV´AN´I AˇR´IZEN´I

OPTIM´ALN´I ROZHODOV´AN´I AˇR´IZEN´I

OPTIM´ALN´I ROZHODOV´AN´I AˇR´IZEN´I

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

KAPITOLA 2. NELINEÁRNÍ<br />

PROGRAMOVÁNÍ 20<br />

nebot’ volbou λ ≥ 0<br />

ϕ(x) = f(x) pro x ∈ X<br />

ϕ(x) = ∞ pro x ∉ X<br />

Proto platí<br />

min<br />

x∈X<br />

f(x) = min<br />

x<br />

max L(x, λ) (2.35)<br />

λ≥0<br />

Úloha (A) je totožná s původní úlohou (2.30) a proto se nazývá primární úloha. Úloha<br />

(B) je duální úloha. Mezi primární a duální úlohou nelineárního programování platí<br />

vztah - viz (2.26)<br />

(Primární úloha)<br />

min x<br />

max L(x, λ) ≥ max<br />

λ≥0 λ≥0<br />

min x<br />

L(x, λ) (Duální úloha) (2.36)<br />

Pro úlohu konvexního programování při splnění podmínek regularity platí věta o sedlovém<br />

bodě, pak<br />

min x<br />

max L(x, λ) = max min<br />

λ≥0 λ≥0 x<br />

L(x, λ) = L(x ∗ , λ ∗ ) = f(x ∗ ) (2.37)<br />

a primární i duální úloha mají stejné řešení, které je totožné s řešením původní úlohy.<br />

Duální úlohu můžeme upravit. Protože x není omezeno, platí<br />

min x<br />

L ⇒ ∂L<br />

∂x = ∂f<br />

∂x + λT ∂g<br />

∂x = 0<br />

Duální úlohu můžeme tedy vyjádřit ve tvaru<br />

max<br />

λ<br />

{f(x) + λ T g(x) :<br />

∂f<br />

∂x + ∂g<br />

λT<br />

∂x = 0 ; λ ≥ 0 } (2.38)<br />

Dualita úloh matematického programování je velmi důležitá, nebot’ řešením duální úlohy<br />

se k optimu blížíme zdola. Naopak řešením primární úlohy se k optimu blížíme shora.<br />

Existuje celá řada algoritmů nelineárního programování, které jsou založeny na sedlových<br />

vlastnostech Lagrangeovy funkce.<br />

Příklad: Nalezněte duální úlohu k úloze lineárního programování.<br />

Nejběžnější tvar úlohy lineárního programování je<br />

Nejprve upravíme tuto úlohu na úlohu minimalizace<br />

Lagrangeova funkce pro tuto úlohu je<br />

Duální úloha je tedy<br />

max { c T x : Ax ≤ b, x ≥ 0 } (2.39)<br />

min { −c T x : Ax − b ≤ 0, −x ≤ 0 }<br />

L(x, λ, µ) = −c T x + λ T (Ax − b) + µ T (−x)<br />

max min L(x, λ, µ) = max {L(x, λ, µ) : ∇ xL(x, λ, µ) = 0, λ ≥ 0, µ ≥ 0} (2.40)<br />

λ≥0,µ≥0 x<br />

λ,µ

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!