/ / Nelineární programování - jedna ze součástí matematického programování

Nelineární programování je jednou ze součástí matematického programování

Nelineární programování je součástímatematické programování, ve kterém je nelineární funkce reprezentována určitými omezeními nebo objektivní funkcí. Hlavním úkolem nelineárního programování je nalezení optimální hodnoty dané cílové funkce s určitým počtem parametrů a omezení.

Problémy nelineárního programování se lišíproblémy lineární s obsahem optimálního výsledku nejen v oblasti s určitými omezeními, ale i mimo její hranice. Tyto typy úkolů zahrnují úkoly matematického programování, které mohou být reprezentovány buď rovnostmi, nebo nerovnostmi.

Nelineární programování vv závislosti na rozmanitosti funkce F (x), funkce omezení a rozměr vektoru řešení x. Takže název úlohy závisí na počtu proměnných. Při použití jedné proměnné lze nelineární programování provádět pomocí bezpodmínečné optimalizace jednoho parametru. S množstvím proměnných větších než jedna může být použita nepodmíněná multiparametrická optimalizace.

Řešíme problémy linearity, které používámestandardní metody lineárního programování (například metoda simplex). Ale v případě nelineární obecné metody řešení neexistuje řešení, jeden si zvolí v každém jednotlivém případě a také závisí na funkci F (x).

Nelineární programování je běžné v každodenním životě poměrně často. Jedná se například o nepřiměřené zvýšení nákladů na počet vyrobených nebo zakoupených výrobků.

Někdy, abychom našli optimální řešeníProblémy s nelineárním programováním se snaží provést aproximaci lineárních problémů. Příkladem je kvadratické programování, ve kterém je funkce F (x) reprezentována polynomem druhého stupně vzhledem k proměnným, zatímco linearita omezení je pozorována. Druhým příkladem je použití metody sankčních funkcí, jejichž použití s ​​určitými omezeními snižuje úlohu nalezení extrému do podobného postupu bez takových omezení, které lze mnohem jednodušší řešit.

Nicméně, pokud budeme analyzovat obecně, pak nelineárníprogramování je řešením problémů zvýšené výpočetní náročnosti. Velmi často při jejich rozhodování musíme použít přibližné metody optimalizace. Dalším silným nástrojem, který lze navrhnout k řešení tohoto problému, jsou numerické metody, které umožňují nalezení správného řešení s danou přesností.

Jak již bylo uvedeno výše, nelineární programování vyžaduje individuální zvláštní přístup, který musí zohledňovat jeho specifičnost.

Existují následující nelineární programovací metody:

- Metody gradientu založené na vlastnictvífunkční gradient v bodě. Jinými slovy je to vektor částečných derivátů vypočtených v bodě, který je považován za znaménko směru největšího zvýšení funkce v blízkosti tohoto bodu.

- Metoda Monte Carlo, v nížparalelipkupem n-té dimenze, která zahrnuje řadu plánů pro následné modelování náhodných N-bodů s rovnoměrným rozdělením v daném rovnoběžce.

- Metoda dynamického programování snižuje na vícerozměrný úkol optimalizace úkolů na menší dimenzi.

- Konvexní programovací metoda je implementována vHledání minimální hodnoty konvexní funkce nebo maximální hodnoty sady plánů konkávních na konvexní části. V případě, že soubor plánů je konvexní polyhedron, lze použít jednoduchou metodu.

Přečtěte si více: