Нелинейно програмиране - какво е това, определение и концепция

Нелинейното програмиране е метод, чрез който обективната функция се оптимизира, или чрез максимизиране или минимизиране. Това, като се вземат предвид дадените различни ограничения. Характеризира се с това, че целевата функция или някои от ограниченията могат да бъдат нелинейни.

Тогава нелинейното програмиране е процес, при който функцията, която трябва да бъде максимизирана, или някое от ограниченията, се различава от линейно уравнение или уравнение от първа степен, където променливите се повишават до степен 1

Трябва да помним, че линейното уравнение е математическо равенство, което може да има едно или повече неизвестни. По този начин той има следната основна форма, където a и b са константите, докато x и y са променливите:

ax + b = y

Трябва да се добави, че не всички елементи, съставляващи този тип програмиране, ще отговарят на тази характеристика. Например може да бъде, че целевата функция е уравнение на втората степен и една от променливите е на квадрат, изпълнявайки следната форма:

y = брадва2+ bx + c

Сега, чрез нелинейно програмиране, тази функция може да бъде оптимизирана, като се намери максималната или минималната стойност на y. Това, като се има предвид, че x е обект на определени ограничения.

Елементи на нелинейното програмиране

Основните елементи на нелинейното програмиране са следните:

  • Целева функция: Функцията е тази, която се оптимизира, или чрез максимизиране или минимизиране на резултата.
  • Ограничения: Те са онези условия, които трябва да бъдат изпълнени при оптимизиране на целевата функция. Това могат да бъдат алгебрични уравнения или неравенства.

Упражнение за нелинейно програмиране

Да видим, за финал, нелинейно упражнение по програмиране.

Да предположим, че имаме следната функция:

y = 25 + 10x-x2

Имаме и следното ограничение:

y = 50-3x

Както можем да видим на графиката, целевата функция и ограничението се пресичат в две точки, но където y е максимизирано е, когато x = 2.3, където y = 43 (десетичните знаци са приблизителни).

Граничните точки могат да бъдат намерени чрез приравняване на двете уравнения:

25 + 10x-x2= 50-3x

0 = x2-13x + 25

Тогава квадратното уравнение по-горе има две решения или корени, които могат да бъдат намерени със следните формули, където a = 1, b = -13 и c = 25.

По този начин установяваме, че x1 = 2,3467 (y = 43) и x2 = 10,653 (y = 18).

Трябва да предупредим, че този тип програмиране е по-сложно от линейното и няма толкова много налични инструменти онлайн за решаване на този тип оптимизация. Показаният пример е много опростен случай.

Популярни Публикации

Решаващи моменти за Ibex 35

Ibex 35 се завръща, за да погали върховете през 2014 г., което направи 11 250 точки трудна съпротива за нашия фондов индекс. Това ниво изглежда като добро оправдание да си вземем почивка от рикошета, който видяхме от началото на годината, и да върнем спадът на 2014 г. Прочетете повече…

Цените на виното скочат нагоре поради лошите реколти в Европа

Цените на виното регистрират силен ръст в резултат на лошите реколти в страните от Европейския съюз. Насипното вино е особено засегнато от това увеличение на цените. Въпреки всичко, Испания планира да запази лидерството си в износа на вино и дори се очаква да се подобриПрочетете повече…