Nelineární programování

Z Wikipedie, otevřené encyklopedie

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

Obsah

[editovat] Úloha


Ú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.

[editovat] Metody řešení


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

  • optimalizace bez vazeb, kdy M = Rn. Používané algoritmy:
    • metoda největšího spádu
    • metoda sdružených gradientů
    • DFP (Davidon-Fletcher-Powell)
  • optimalizace s vazbami, kdy M ⊂ Rn. Používané algoritmy:
    • metody přípustných směrů: Zoutendijk, Frank a Wolf, Topkis-Veinott,…
    • Veinottovy opěrné nadroviny
    • penalizační algoritmy
    • bariérové algoritmy

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.

[editovat] Reference


  • 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í

[editovat] Externí odkazy