Gradientní metody Metoda největšího spádu (volný extrém) Zoutendijkova metoda (vázaný extrém)
Metoda největšího spádu Řešíme úlohu na volný extrém Předpoklad: funkce f je diferencovatelná Největší spád je ve směru gradientu Volíme výchozí bod Určíme směr Určíme délku k-tého kroku Konstruujeme posloupnost bodů
Pro lineární funkci je gradient směrnicí kolmice Pro lineární funkci je gradient směrnicí kolmice. Přímka účelové funkce se posouvá ve směru kolmice, tj. ve směru gradientu. Nejkratší cesta?
Gradientní metoda s krátkým krokem Volíme konstantní délku kroku Optimum: Sledujeme konvergenci: Zvolíme dostatečně malé - optimum:
Příklad 1 Minimalizujte funkci: Výchozí bod: Délka kroku:
Gradientní metoda s dlouhým krokem Pro každý krok počítáme délku kroku Pro největší zlepšení hodnoty účelové funkce Délka kroku – pomocná úloha
Příklad 1 b Stejná funkce i výchozí bod, hledáme takovou délku kroku,aby v bodě x1 dosáhla funkce minima (lokálního). Vyjádříme x1 a dosadíme do původní funkce f. Vzniklá funkce je konvexní funkce 1 proměnné , její bod minima najdeme pomocí první derivace=0.
Optimalizace s podmínkami Úloha s přípustným směrem Řešíme úlohu na vázaný extrém (omezující podmínky mohou být nelineární) Konstruujeme posloupnost bodů Řešení je přípustné: Snížení účelové funkce dosáhneme, pokud navíc platí:
Příklad 2 Je daná úloha: Výchozí bod: Vektor s je přípustným směrem, pokud platí: Ke snížení hodnoty účelové funkce dojde, jestliže: (Řešením může být více než jeden přípustný směr, v němž dojde ke snížení ÚF)
Grafické znázornění X0 výchozí bod X=(3,1) globální minimum
2. krok - Směr a délka kroku Obecný algoritmus 1. krok - Výchozí řešení Za výchozí bod iteračního postupu zvolíme libovolný bod x z množiny M , tj. libovolné přípustné řešení, které označíme x0 , k = 0. 2. krok - Směr a délka kroku Řešení (k+1) iteračního kroku vypočítáme pomocí směrového vektoru a délky kroku Přitom musí platit: xk+1 M a f(xk+1 ) = f(xk + sk) < f(xk ) 3. krok - Test optimality Pokud nelze nalézt směrový vektor nebo délku kroku tak, aby byly splněny podmínky 2), je poslední nalezené řešení xk optimálním řešením a výpočet končí. Jinak je určeno nové řešení xk+1, položíme k = k+1 a přejdeme ke kroku 2 - budeme hledat nový směr a délku kroku.
Zoutendijkova metoda 1. krok Zvolíme přípustné výchozí řešení x0;k=0 Pokud bod leží na některé hraniční přímce (není vnitřním bodem množiny přípustných řešení), přidává se k úloze o optimálním směru podmínka:
Zoutendijkova metoda 2. krok Určení optimálního směru: Směr, který svírá minimální úhel s gradientem a je přípustný. Příslušná úloha je nelineární a nahrazuje se jednodušším lineárním vztahem – lineární normalizace vztahu
Úloha o optimálním směru Vypočítáme gradienty funkcí f a g v bodě xk a vyřešíme pomocnou úlohu lineárního programování o optimálním směru. Jestliže opt. řešení úlohy (OS) má nulovou hodnotu kritéria, pak je algoritmus u konce a řešení xk je optimálním řešením
Úloha o optimálním směru Úloha vede na řešení simplexem. Abychom zajistili nezápornost proměnných, přičteme 1:
Zoutendijkova metoda 3. krok: Určení optima Jestliže opt. řešení úlohy (OS) má nulovou hodnotu kritéria, pak je algoritmus u konce a řešení xk je optimálním řešením, jinak pokračujeme krokem 4.
4. Krok: Určení délky kroku Zoutendijkova metoda 4. Krok: Určení délky kroku z hlediska přípustnosti nového řešení a z hlediska největší možné celkové změny hodnoty účelové funkce. 5. krok – test optimality II. Jestliže délka kroku nulová, je řešení xk je optimální Jinak jsme nalezli nové řešení a přejdeme ke kroku 2.
Příklad 2b 1. krok Výchozí bod splňuje první 2 omezující podmínky jako rovnice, tj. leží na příslušných hraničních přímkách
Příklad 2b 2. Krok – úloha o OS
Hodnota optimální ÚF úlohy o optimálním směru není nula – řešení není optimální.
Příklad 2b- Určení délky kroku
Grafické znázornění X0 =(2,1) výchozí bod X=(3,1) globální minimum Směr s0 X1=(2,5;0,5) Grafické znázornění
ŘEŠENÍ JE OPTIMÁLNÍ