Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Metody nelineárního programování

Podobné prezentace


Prezentace na téma: "Metody nelineárního programování"— Transkript prezentace:

1 Metody nelineárního programování
RNDr. Jiří Dvořák, CSc. Teorie systémů a operační analýza

2 Členění metod nelineárního programování
Metody NLP můžeme členit na: metody jednorozměrné optimalizace a metody vícerozměrné optimalizace metody hledání volného extrému a metody hledání vázaného extrému metody nevyužívající derivace a metody využívající derivace metody zaručující nalezení nějakého lokálního extrému a metody pro hledání globálního extrému metody přesné a metody heuristické TSOA: Metody nelineárního programování

3 Metody jednorozměrné optimalizace
Předpokládejme, že máme najít minimum funkce () na intervalu [a, b], a že funkce  je na tomto intervalu kvazikonvexní. Pak bod minima můžeme s danou přesností najít postupnou redukcí tohoto intervalu. Metody bez použití derivace: Interval zužujeme na základě porovnání hodnot funkce ve dvou vnitřních bodech (metoda zlatého řezu, Fibonacciho metoda). Metody s použitím derivací: V metodě půlení intervalu se interval redukuje na základě znaménka 1. derivace ve středu intervalu. Newtonova metoda využívá 2. derivaci pro hledání kořene rovnice ´() = 0. Metody založené na aproximaci: V každém iteračním kroku se provádí kvadratická nebo kubická interpolace funkce  . TSOA: Metody nelineárního programování

4 Vícerozměrné metody hledání volných extrémů
Obvykle se postupuje podle tohoto schématu (předpokládáme minimalizační problém): 1. Nalezneme výchozí řešení x1 a položíme k = 1. 2. Nalezneme vektor dk určující směr dalšího postupu z bodu xk . 3. Přejdeme k dalšímu řešení xk+1 podle vztahu xk+1 = xk + k dk . Koeficient k je často řešením jednorozměrné optimalizační úlohy 4. Postup končí, je-li splněna nějaká podmínka zastavení. V opačném případě položíme k = k + 1 a vrátíme se na krok 2. TSOA: Metody nelineárního programování

5 Vícerozměrné metody nevyužívající derivace
Metody souřadnicového hledání: V nejjednodušším případě se provádí postupné hledání ve směru souřadných os. To je pomalé a hrozí nebezpečí uváznutí v neoptimálním bodě. Určité zrychlení přináší metoda Hooka a Jeevese vkládáním urychlujících kroků podél směru xk+1 – xk. Rosenbrockova metoda čelí nebezpečí uváznutí tak, že před každou iterací dojde k pootočení souřadné soustavy. Metody polyedrického hledání: Funkce n proměnných se minimalizuje pomocí polyedrů s n + 1 vrcholy (vrchol s největší hodnotou se projektuje přes těžiště ostatních vrcholů, které pak spolu s takto získaným bodem vytvářejí další polyedr). Příkladem je metoda Neldera a Meada. Metody konjugovaných směrů: Pro kvadratickou funkci n proměnných tyto metody teoreticky zaručují dosažení minima nejvýše po n krocích. Příkladem je Powellova metoda. TSOA: Metody nelineárního programování

6 TSOA: Metody nelineárního programování
Konjugované směry Nechť D je symetrická matice typu (n, n). Vektory s1, s2, … , sk se nazývají konjugovanými vzhledem k matici D, jestliže jsou lineárně nezávislé a pro všechna i  j platí Obecně platí, že minimum kvadratické funkce s n proměnnými může být nalezeno nejvýše v n krocích při podmínce, že hledání se provádí postupně podél směrů s1, s2, … , sn , konjugovaných vzhledem k Hessově matici této funkce. Protože libovolná funkce může být v okolí bodu minima dostatečně dobře nahrazena její kvadratickou aproximací, je pojem konjugovanosti užitečný i při minimalizaci nekvadratických funkcí. TSOA: Metody nelineárního programování

7 Gradientní metody pro volné extrémy
V gradientních metodách se směry dalšího postupu určují pomocí gradientů. Tyto metody vlastně pracují s lineární aproximací účelové funkce pomocí vztahu V metodě největšího spádu (Cauchyho metodě) je směr z bodu xk dán výrazem V blízkosti stacionárního bodu hrozí nebezpečí pomalé konvergence. Tento nedostatek odstraňuje např. metoda Fletchera a Reevese, která směr největšího spádu odklání pomocí směru z předchozí iterace. Tato metoda patří k metodám sdružených (konjugovaných) směrů, které pro kvadratickou funkci n proměnných teoreticky zaručují dosažení minima nejvýše po n krocích. TSOA: Metody nelineárního programování

8 Newtonova metoda a kvazinewtonovské metody
Newtonova metoda: Tato metoda používá kvadratickou aproximaci účelové funkce pomocí prvých tří členů Taylorova rozvoje. Směr dk dalšího postupu z bodu xk je dán pomocí inverzní Hessovy matice takto: Obecně tato metoda nemusí konvergovat. Rychle konverguje dostatečně blízko minima. Kvazinewtonovské metody: V těchto metodách se inverzní Hessova matice aproximuje pomocí jisté symetrické pozitivně definitní matice Dk . K těmto metodám patří metoda Davidona, Fletchera a Powella, která generuje konjugované směry. TSOA: Metody nelineárního programování

9 Metody hledání vázaných extrémů
Metody založené na transformaci úlohy hledání vázaného extrému na úlohu hledání volného extrému: penalizační a bariérové metody metoda využívající Lagrangeovu funkci rozšířenou o kvadratický penalizační člen Linearizační metody: metody spočívající v řešení posloupnosti úloh LP, aproximujících danou úlohu NLP metody výběru směru založené na linearizaci Metody řešení speciálních úloh: metody kvadratického programování metody separovatelného programování TSOA: Metody nelineárního programování

10 TSOA: Metody nelineárního programování
Penalizační metody Úloha se řeší pomocí posloupnosti úloh hledání volného extrému funkce F(x) = f(x) + k P(x) pro rostoucí kladné hodnoty koeficientů k . P(x) je penalizační funkce, která penalizuje porušení omezujících podmínek. Tato funkce musí být volena tak, že pro přípustná x má nulovou hodnotu a pro nepřípustná x nabývá kladných hodnot. Obvyklý tvar penalizační funkce (p je celé kladné číslo) : TSOA: Metody nelineárního programování

11 TSOA: Metody nelineárního programování
Bariérové metody Úloha se řeší pomocí posloupnosti úloh hledání volného extrému funkce F(x) = f(x) + k B(x) pro klesající kladné hodnoty koeficientů k . B(x) je bariérová funkce zabraňující porušení omezujících podmínek. Jestliže se x blíží k hranici množiny přípustných řešení, bariérová funkce konverguje k nekonečnu. Příklady tvarů bariérové funkce: TSOA: Metody nelineárního programování

12 Metody výběru směru založené na linearizaci
V těchto metodách se pro výběr vhodného směru dalšího postupu používá linearizace pomocí prvých dvou členů Taylorova rozvoje. Metody přípustných směrů vybírají vhodný směr z těch směrů, které nevybočují z množiny přípustných řešení. Příklady těchto metod jsou Zoutendijkova metoda a metoda Topkise a Veinotta, v nichž se vhodný směr určuje řešením úlohy LP. Metody projekce gradientu (např. Rosenova metoda) získávají vhodný směr projekcí gradientu –f(x) na aktivní omezení. Metody redukovaného gradientu (např. Wolfeho metoda) určují vhodný směr pomocí gradientu účelové funkce v podprostoru nezávislých proměnných. TSOA: Metody nelineárního programování


Stáhnout ppt "Metody nelineárního programování"

Podobné prezentace


Reklamy Google