Nelineární programování

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Nelineární programování (NLP) je odvětví optimalizace. Speciálním typem je konvexní programování, kvadratické programování.

Úloha[editovat | editovat zdroj]

Úlohou nelineárního programování je následující optimalizační úloha

\min_{x\in M} f (x),

přičemž:

  • f (x) je obecně nelineární funkce
  • množina přípustných řešení M je popsána soustavou nerovnic
g_i (x)\leq 0,\quad i=1,\ldots,m,
kde gi (x) jsou reálné funkce.

Metody řešení[editovat | editovat zdroj]

Úlohu nelineárního programování dělíme na dva základní typy:

Tyto metody jsou většinou iterační a založeny na následujícím algoritmickém schematu: Sestrojíme nejprve výchozí přípustné řešení (tj. bod z množiny M). Potom se postupně pohybujeme k dalším přípustným bodům, ve kterých je hodnota účelové funkce nižší. Takto pokračujeme dokud je patrná změna účelové funkce, pokud ne, tak výsledný bod prohlásíme za kandidáta na optimum. Tyto metody konvergují pouze k lokálnímu minimu. Proto je nutné celý proces opakovat s různými volbami výchozích přípustných řešení. Velkou výhodou proto je úloha tzv. konvexního programování, neboť tam je každé lokální minimum zároveň minimem globálním.

Pro řešení se používají také podmínky optimality.

Reference[editovat | editovat zdroj]

  • Milan Hamala: Nelineárne programovanie, ALFA, Bratislava 1972, 1. vydání.
  • Miroslav Maňas: Optimalizační metody, Státní nakladatelství technické literatury, Praha 1979, 1. vydání.
  • Miroslav Maňas: Nelineární programování, Státní pedagogické nakladatelství, Praha 1983, 1. vydání

Externí odkazy[editovat | editovat zdroj]