Gradientové metody jsou numerické metody pro řešení úloh pomocí gradientu , které jsou redukovány na hledání extrémů funkce.
Úkol vyřešit soustavu rovnic :
(jeden)
c je ekvivalentní problému minimalizace funkce
(2)
nebo nějaká jiná rostoucí funkce absolutních hodnot reziduí (chyb) , . Problém nalezení minima (nebo maxima) funkce proměnných má sám o sobě velký praktický význam.
Chcete-li tento problém vyřešit pomocí iteračních metod , je třeba začít s libovolnými hodnotami a konstruovat postupné aproximace:
nebo souřadnicově:
(3)
které konvergují k nějakému řešení pro .
Různé metody se liší volbou „směru“ pro další krok, tedy volbou vztahů
.
Hodnota kroku (vzdálenost, kterou se má posunout daným směrem při hledání extrému) je určena hodnotou parametru, který minimalizuje hodnotu jako funkci . Tato funkce je obvykle aproximována její Taylorovou expanzí nebo interpolačním polynomem přes tři až pět vybraných hodnot . Poslední metoda je použitelná pro nalezení max a min tabulkové funkce .
Hlavní myšlenkou metod je jít ve směru nejstrmějšího sestupu a tento směr je dán anti-gradientem :
kde je vybráno:
Vyberte , kde jsou všechny derivace počítány na a snižte délku kroku , jak se blížíte k minimu funkce .
Pro analytické funkce a malé hodnoty umožňuje Taylorova expanze zvolit optimální velikost kroku
(5)
kde se všechny deriváty počítají na . Vhodnější může být interpolace parabolické funkce .
AlgoritmusTato metoda je pojmenována analogicky s Gauss-Seidelovou metodou pro řešení soustavy lineárních rovnic. Vylepšuje předchozí metodu díky tomu, že při další iteraci se klesání provádí postupně po každé ze souřadnic, ale nyní je nutné jednou v jednom kroku vypočítat nové.
AlgoritmusMetoda konjugovaného gradientu je založena na konceptech přímé metody vícerozměrné optimalizace - metodě konjugovaných směrů .
Použití metody na kvadratické funkce v určuje minimum v krocích.
AlgoritmusOptimalizační metody | |
---|---|
Jednorozměrný |
|
Nulové pořadí | |
První objednávka | |
druhá objednávka | |
Stochastické | |
Metody lineárního programování | |
Metody nelineárního programování |