Dualita (optimalizace) - Duality (optimization)

V teorii matematické optimalizace je dualita nebo princip duality principem, že na problémy optimalizace lze nahlížet buď ze dvou perspektiv, prvotního problému nebo dvojího problému . Řešení duálního problému poskytuje dolní mez řešení primárního (minimalizačního) problému. Obecně však nemusí být optimální hodnoty primárních a duálních problémů stejné. Jejich rozdíl se nazývá mezera v dualitě . U konvexních optimalizačních problémů je mezera duality za podmínek kvalifikace omezení nulová .

Duální problém

Termín „duální problém“ obvykle označuje Lagrangeův duální problém, ale používají se i jiné duální problémy - například Wolfeův duální problém a Fenchelův duální problém . Lagrangeův duální problém je získán vytvořením Lagrangeova problému minimalizace použitím nezáporných Lagrangeových multiplikátorů pro přidání omezení do objektivní funkce a poté řešením pro hodnoty primárních proměnných, které minimalizují původní objektivní funkci. Toto řešení dává primární proměnné jako funkce Lagrangeových multiplikátorů, které se nazývají duální proměnné, takže novým problémem je maximalizace objektivní funkce s ohledem na duální proměnné za odvozených omezení duálních proměnných (včetně alespoň nezápornosti omezení).

Obecně uvedeny dva duální páry z oddělených lokálně konvexní prostory a a funkci , můžeme definovat prvotní problém jako zjištění tak, aby Jinými slovy, pokud existuje, je minimální funkce a infima (největší dolní odhad) funkce je dosaženo.

Pokud existují omezující podmínky, lze je integrovat do funkce tak, že necháme kde je vhodná funkce, která má na omezení minimálně 0, a pro které to lze dokázat . Druhá podmínka je triviálně, ale ne vždy vhodně, splněna pro charakteristickou funkci (tj. Pro splnění omezení a jinak). Poté rozšiřte na poruchovou funkci tak, že .

Mezera dualita je rozdíl z pravé a levé strany ruka nerovnosti

kde je konvexní konjugát v obou proměnných a označuje supremum (nejmenší horní hranice).

Mezera v dualitě

Mezera v dualitě je rozdílem mezi hodnotami jakýchkoli primárních řešení a jakýchkoli duálních řešení. Pokud je optimální duální hodnota a je optimální primární hodnota, pak je rozdíl v dualitě roven . Tato hodnota je vždy větší nebo rovna 0. Mezera v dualitě je nulová právě tehdy, pokud silná dualita platí. Jinak je mezera přísně pozitivní a slabá dualita platí.

Ve výpočetní optimalizaci je často hlášena další „mezera v dualitě“, což je rozdíl v hodnotě mezi jakýmkoli duálním řešením a hodnotou proveditelné, ale suboptimální iterace primárního problému. Tato alternativní „mezera v dualitě“ kvantifikuje rozpor mezi hodnotou současného proveditelného, ​​ale suboptimálního iterátu primárního problému a hodnotou duálního problému; hodnota duálního problému je za podmínek pravidelnosti rovna hodnotě konvexní relaxace primárního problému: Konvexní relaxace je problém vznikající nahrazením nekonvexní proveditelné sady uzavřeným konvexním trupem a nahrazením non- konvexní funkce s jejím konvexním uzavřením , to je funkce, která má epigraf, který je uzavřeným konvexním trupem původní primární objektivní funkce.

Lineární případ

Lineární programovací problémy jsou optimalizační problémy, v níž objektivní funkce a omezení jsou všechny lineární . V prvotním problému je objektivní funkce lineární kombinací n proměnných. Existuje m omezení, z nichž každé klade horní hranici na lineární kombinaci n proměnných. Cílem je maximalizovat hodnotu objektivní funkce podléhající omezením. Řešení je vektor (seznam) z n hodnot, které dosahuje maximální hodnotu cílové funkce.

V duálním problému je objektivní funkce lineární kombinací hodnot m, které jsou limity v m omezeních z primárního problému. Existuje n dvojího omezení, z nichž každé klade spodní hranici na lineární kombinaci m duálních proměnných.

Vztah mezi prvotním problémem a dvojitým problémem

V lineárním případě v primárním problému z každého suboptimálního bodu, který splňuje všechna omezení, existuje směr nebo podprostor směrů pohybu, který zvyšuje objektivní funkci. Pohyb v jakémkoli takovém směru údajně odstraní vůli mezi kandidátským řešením a jedním nebo více omezeními. Neproveditelné hodnota kandidátní řešení je ta, která překračuje jednu nebo více omezení.

V duálním problému duální vektor znásobuje omezení, která určují polohy vazeb v primalu. Změna duálního vektoru v duálním problému je ekvivalentní revizi horních hranic v primárním problému. Hledá se nejnižší horní hranice. To znamená, že duální vektor je minimalizován, aby se odstranila vůle mezi kandidátskými polohami omezení a skutečným optimem. Neproveditelná hodnota duálního vektoru je příliš nízká. Nastavuje kandidátské pozice jednoho nebo více omezení v pozici, která vylučuje skutečné optimum.

Tuto intuici formalizují rovnice v lineárním programování: Dualita .

Nelineární případ

V nelineárním programování nejsou omezení nutně lineární. Přesto platí mnoho stejných zásad.

Aby bylo zajištěno, že globální maximum nelineárního problému lze snadno identifikovat, formulace problému často vyžaduje, aby funkce byly konvexní a měly kompaktní sady nižších úrovní.

To je význam podmínek Karush – Kuhn – Tucker . Poskytují nezbytné podmínky pro identifikaci lokálních optima problémů nelineárního programování. Aby bylo možné definovat směr k optimálnímu řešení , jsou nutné další podmínky (omezující kvalifikace) . Optimálním řešením je lokální optimum, ale možná ne globální optimum.

Silný Lagrangeův princip: Lagrangeova dualita

Daný problém nelineárního programování ve standardní formě

s doménou s neprázdným vnitřkem je Lagrangianova funkce definována jako

Vektory a jsou nazývány duální proměnné nebo Lagrangeova multiplikátoru vektory spojené s tímto problémem. Dvojí Lagrangeova funkce je definována jako

Duální funkce g je konkávní, i když počáteční problém není konvexní, protože jde o bodový infimum afinních funkcí. Duální funkce poskytuje dolní hranice optimální hodnoty počátečního problému; pro cokoli a cokoli, co máme .

Pokud platí omezující kvalifikace, jako je Slaterův stav, a původní problém je konvexní, pak máme silnou dualitu , tzn .

Konvexní problémy

Pokud jde o problém konvexní minimalizace s omezeními nerovnosti,

Lagrangeův duální problém je

kde objektivní funkcí je Lagrangeova dvojí funkce. Za předpokladu, že funkce a jsou spojitě diferencovatelné, dojde k infimu tam, kde je gradient roven nule. Problém

se nazývá duální problém Wolfe. Tento problém může být obtížné řešit výpočetně, protože objektivní funkce není ve společných proměnných konkávní . Rovněž omezení rovnosti je obecně nelineární, takže duální problém Wolfe je obvykle problém nekonvexní optimalizace. V každém případě platí slabá dualita .

Dějiny

Podle George Dantziga teorii duality pro lineární optimalizaci navrhl John von Neumann bezprostředně poté, co Dantzig představil problém lineárního programování. Von Neumann poznamenal, že používá informace ze své teorie her , a domníval se, že maticová hra pro dvě osoby s nulovým součtem je ekvivalentní lineárnímu programování. Rigorózní důkazy poprvé publikoval v roce 1948 Albert W. Tucker a jeho skupina. (Dantzigova předmluva k Neringovi a Tuckerovi, 1993)

Viz také

Poznámky

Reference

Knihy

Články