Нелінійне програмування - що це таке, визначення та поняття

Нелінійне програмування - це метод, за допомогою якого цільова функція оптимізується або шляхом максимізації, або мінімізації. Це з урахуванням різних наведених обмежень. Він характеризується тим, що цільова функція або деякі обмеження можуть бути нелінійними.

Отже, нелінійне програмування - це процес, коли функція, яку слід максимізувати, або будь-яке з обмежень відрізняється від лінійного рівняння або рівняння першого ступеня, коли змінні піднімаються до рівня 1.

Треба пам’ятати, що лінійне рівняння - це математична рівність, яка може мати одну або кілька невідомих. Таким чином, він має наступну основну форму, де a і b - константи, тоді як x і y - змінні:

сокира + b = y

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

y = сокира2+ bx + c

Тепер за допомогою нелінійного програмування цю функцію можна оптимізувати, знаходячи максимальне або мінімальне значення y. Це, беручи до уваги, що x підпадає під певні обмеження.

Елементи нелінійного програмування

Основними елементами нелінійного програмування є наступні:

  • Завдання: Це функція, яка оптимізована, або шляхом максимізації, або мінімізації її результату.
  • Обмеження: Це ті умови, яким необхідно дотримуватися при оптимізації цільової функції. Це можуть бути алгебраїчні рівняння або нерівності.

Вправа з нелінійного програмування

Подивимось, на закінчення, вправа з нелінійного програмування.

Припустимо, ми маємо таку функцію:

y = 25 + 10x-x2

Ми також маємо таке обмеження:

y = 50-3x

Як ми бачимо на графіку, цільова функція та обмеження перетинаються в двох точках, але де максимум максимізується, коли x = 2,3, де y = 43 (десяткові цифри є приблизними).

Точки відсікання можна знайти, прирівнявши обидва рівняння:

25 + 10x-x2= 50-3x

0 = х2-13x + 25

Тоді квадратичне рівняння має два розв’язки або корені, які можна знайти за такими формулами, де a = 1, b = -13 та c = 25.

Таким чином, ми знаходимо, що x1 = 2,3467 (y = 43) і x2 = 10,653 (y = 18).

Ми повинні попередити, що цей тип програмування є більш складним, ніж лінійний, і в Інтернеті не так багато інструментів для вирішення цього типу оптимізації. Наведений приклад - дуже спрощений випадок.

Популярні Пости

Паризька угода, яка опинилася під загрозою після виходу Трампа

Президент Дональд Трамп оголошує про вихід США з угоди про зміну клімату, сіючи невизначеність щодо майбутнього довкілля. Ми аналізуємо можливі наслідки цього рішення. Виконуючи свою передвиборчу програму, 2 червня Трамп офіційно оформив вихід США з Паризької угоди, підписаної в Читати далі…

Найбільші європейські енергетичні компанії

Перше місце в рейтингу найбільших енергетичних компаній у світі відведено RDSA з ринковою капіталізацією 199,41 млрд., А потім з великою перевагою Total і BP з ринковою капіталізацією 115, 89 і 105,11 млрд. Відповідно. Загальні рядкиДетальніше…

ЄС пропонує "легкі єврооблігації" як альтернативу мутуалізації європейського боргу

Європейська комісія пропонує створити безризикові боргові цінні папери для консолідації валютного союзу, подібно до старого проекту єврооблігацій. Ми аналізуємо пропозицію та спроби узаконити європейський борг. 31 травня Європейська комісія опублікувала документ, який містить її дорожню карту до валютного союзуДокладніше…