Nelineární programování - co to je, definice a koncept

Obsah:

Nelineární programování - co to je, definice a koncept
Nelineární programování - co to je, definice a koncept
Anonim

Nelineární programování je metoda, pomocí které je optimalizována objektivní funkce, a to buď maximalizací nebo minimalizací. To s přihlédnutím k různým daným omezením. Je charakterizován tím, že objektivní funkce nebo některá omezení mohou být nelineární.

Nelineární programování je tedy proces, kde se funkce, která má být maximalizována, nebo kterékoli z omezení, liší od lineární rovnice nebo rovnice prvního stupně, kde jsou proměnné zvýšeny na mocninu 1.

Musíme si uvědomit, že lineární rovnice je matematická rovnost, která může mít jednu nebo více neznámých. Má tedy následující základní tvar, kde a a b jsou konstanty, zatímco x a y jsou proměnné:

ax + b = y

Je třeba dodat, že ne všechny prvky, které tvoří tento typ programování, budou vyhovovat této charakteristice. Může se například stát, že objektivní funkcí je rovnice druhého stupně a jedna z proměnných je čtvercová, splňující následující tvar:

y = sekera2+ bx + c

Nyní by bylo možné pomocí nelineárního programování optimalizovat tuto funkci a zjistit maximální nebo minimální hodnotu y. To s přihlédnutím k tomu, že x podléhá určitým omezením.

Prvky nelineárního programování

Hlavní prvky nelineárního programování jsou následující:

  • Objektivní funkce: Je to funkce, která je optimalizována buď maximalizací nebo minimalizací jejího výsledku.
  • Omezení: Jsou to podmínky, které musí být splněny při optimalizaci objektivní funkce. Může to být algebraické rovnice nebo nerovnice.

Nelineární programovací cvičení

Podívejme se na závěr na nelineární programovací cvičení.

Předpokládejme, že máme následující funkci:

y = 25 + 10x-x2

Máme také následující omezení:

y = 50-3x

Jak vidíme na grafu, objektivní funkce a omezení se protínají ve dvou bodech, ale kde y je maximalizováno, je když x = 2,3, kde y = 43 (desetinná místa jsou přibližná).

Mezní body lze najít rovnicemi obou rovnic:

25 + 10x-x2= 50-3x

0 = x2-13x + 25

Pak má výše uvedená kvadratická rovnice dvě řešení nebo kořeny, které lze najít pomocí následujících vzorců, kde a = 1, b = -13 a c = 25.

Zjistili jsme tedy, že x1 = 2,3467 (y = 43) a x2 = 10,663 (y = 18).

Musíme upozornit, že tento typ programování je složitější než lineární a online není k dispozici tolik nástrojů k vyřešení tohoto typu optimalizace. Uvedený příklad je velmi zjednodušený případ.