Dualita (optimalizace)

Dualita v teorií optimalizace znamená, že optimalizační problém může být interpretován dvěma způsoby, skrz úlohu primární, nebo k ní úlohu duální. Vztah těchto dvou úloh se liší v závislosti na vlastnostech řešeného problému. Obecně, optimální řešení duální úlohy tvoří spodní mez pro optimální řešení primární úlohy. V konkrétních případech mají tyto dvě úlohy velmi příjemné vlastnosti jakou je například silná dualita.

Obecná formulace editovat

Pro primární úlohu matematického programování ve tvaru[1]

 

, kde   definujeme Lagrangeovu funkci   předpisem

 ,

proměnné   a   se nazývají Lagrangeovy multiplikátory. Vektory   a   nazveme duální proměnné k původnímu problému.

Duální Lagrangeovu funkci definujeme jako

 .

Buď   optimální řešení primární úlohy potom platí

 

Pokud navíc platí Slaterova podmínka[2] potom taky platí silná dualita, tj.  . V takovém případe se tedy optimální řešení primární a duální úlohy shodují.

Dualita v úloze lineárního programování editovat

Dualita se týká dvojice úloh lineárního programování (LP), která je dána společnými vstupními daty, to jest maticí A s m řádky a n sloupci, m-rozměrným vektorem b a n-rozměrným vektorem c. Kromě daných koeficientů je každá úloha lineárního programování (LP) určena také druhem optimalizace, tj. jestli se daný problém týče minimalizace neboli maximalizace, dále tvarem omezení, jestli se v problému vyskytuje rovnost nebo nerovnost, přítomností či absencí podmínek nezápornosti. Obecná dvojice duálních úloh v matematice vypadá následovně.

Definice editovat

Nechť je dána matice   s m řádky a n sloupci, m-rozměrný vektor b, n-rozměrný vektor c a disjunktní rozklady množin indexů  ,  . Pak dvojice úloh lineárního programování (LP)

minimalizovat  

za podmínek  

 

 

 

 

 ,

maximalizovat  

za podmínek  

 

 

 

 

 

se nazývá dvojice duálních úloh lineárního programování (LP). Množinu přípustných řešení úlohy minimalizace označíme jako  , tj. množinu všech  , která splňují výše uvedené podmínky, a množinu všech jejich optimálních řešení symbolem  . Množinu přípustných řešení úlohy maximalizace označíme jako  , tj. množinu všech  , která splňují výše uvedené podmínky, a množinu všech jejich optimálních řešení symbolem  .

Někdy také hovoříme o úloze primární a k ní úloze duální. Jako primární označujeme tu úlohu, která vznikla na základě řešeného problému. Zbylou úlohu, pak nazýváme úlohou k ní duální. V případě, že je optimalizační problém lineární, tedy úlohu lineárního programování (LP) ve standardním tvaru, dvojici duálních symetrických úloh lineárního programování (LP) můžeme zapsat ve tvaru[3]

 

kde  . V tomto případě minimalizační úlohu nazveme primární a maximalizační úlohu, úlohou k ní duální. Množinu přípustných řešení primární úlohy budeme značit   a množinu přípustných řešení duální úlohy označíme  . Úlohy lineárního programování lze převádět na zvolený tvar. Stačí se proto zabývat pouze jedním typem dvojice duálních úloh. Dokázaná tvrzení jsou potom platná i pro libovolnou dvojici duálních úloh, nejen pro ty ve standardním tvaru. Pro tuhle dvojici úloh pak platí následující tvrzení.

Slabá věta o dualitě pro případ LP editovat

Nechť   jsou libovolná, pak platí

 

přičemž rovnost nastane, právě když jsou splněny podmínky komplementarity

 

Důkaz editovat

Tvrzení stačí ukázat pro dvojici symetrických duálních úloh, jak bylo zmíněno výše. Pro libovolné   , tj. pro přípustné řešení úlohy minimalizace a pro přípustné řešení úlohy maximalizace, platí

 .

Rovnost v předcházejícím výrazů nastává, právě tehdy když

 

tedy když jsou obě nerovnosti splněny jako rovnosti. Po rozepsáni předcházejících výrazů dostaneme přímo podmínky komplementarity.

Silná věta o dualitě pro případ LP editovat

Primární úloha má optimální řešení, právě tehdy když duální úloha má optimální řešení. V takovém případě navíc platí

 

Jedním z důsledků silné věty o dualitě v LP je například Farkasová věta.

Duální bazické řešení editovat

Pro lineární optimalizační úlohu a bázi   definujeme  , které je jednoznačně určené podmínkou  . Vektor   nazveme duální bazické řešení příslušné k bázi  .

Aplikace duality editovat

Nejzákladnější aplikace duality nastává pro případ, kdy jsou splněny podmínky pro silnou dualitu a součet dimenzí duálních proměnných je   a zároveň dimenze primární proměnné je  . V tomto případě lze složitější primární problém řešit pomocí často jednoduššího duálního problému. Zatím co k řešení primárního problému by byly zapotřebí pokročilejší výpočetní techniky, například simplexový algoritmus, duální problém může být řešitelný graficky a k jeho vyřešení (zejména, jestli se jedná o úlohu LP) může stačit jednoduše jeho nakreslení na papír. Jednoduchou interpretací dvojice duálních úloh je predikce vývoje po investici, jinými slovy, uvažujeme maximální zisk výroby v daném podniku, který je dán optimalizační úlohou. V ekonomické literatuře se optimální řešení duální úlohy nazývá stínové ceny nebo duální ceny.

Finanční portfolio editovat

Jednou z nejzákladnějších aplikací z praxe je maximalizace výnosu akcí finančního portfolia. Z matematického pohledu rozumíme pod pojmem portfolio vektor  , jehož člen   reprezentuje podíl jehož i-tého aktiva (s cenou v čase t reprezentovanou pomocí  ). Hodnota portfolia   v čase t je rovna  , kde   značí skalární součin. V praxi se můžeme setkat s různými typy portfolií. Podstatným příkladem je Markowitzovo portfolio.

Markowitzovo portfolio editovat

Markowitz ve své teorii uvažuje jenom riziková aktiva. Pro pevný výnos je zapotřebí volit portfolia s minimální variací, která také slouží jako míra rizika. Obecně, zajímá nás portfolio s vysokým očekávaným výnosem a zároveň s minimální variancí. Tahle teorie přímo vychází teorie optimalizace. Označme   jako cenu rizikových aktiv,   portfolio. Nechť   je dána očekávaná výplata,   počáteční kapitál. Pak formulujeme úlohu

 

 

 ,

kde   je řádkový vektor,   je řádkový vektor a platí  . Předpisem   rozumíme střední hodnotu náhodné veličiny X. Maticovým zápisem  ,   lze danou úlohu přepsat následovně

 

  .

Zde platí, že  ,  , . Zjevně   je symetrická, pozitivně definitní matice. Dále označme . Jelikož  , je splněná podmínka silné věty o dualitě a tedy úloha je duální k úloze

 .

Optimálním řešením této úlohy duální k zadané je  . Označme   řešení původní úlohy a platí  , kde   značí skalární součin. Konečně dostáváme optimální portfolio

 .

Reference editovat

  1. BOYD, Stephen; VANDENBERGHE, Lieven. Convex Optimization. https://web.stanford.edu/~boyd/cvxbook/bv_cvxbook.pdf#page=230: Cambridge University Press, 2004. ISBN 978-0-521-83378-3. 
  2. SLATER, Morton. Lagrange Multipliers Revisited. Cowles Commission Discussion Paper. 1950. Dostupné online. 
  3. DUPAČOVÁ, Jitka; LACHOUT, Petr. Úvod do optimalizace. Praha: Matfyzpress, 2011. 10 s. ISBN 978-80-7378-176-7. S. 31.