Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Основні види задач нелінійного програмування
Для розв’язування задач нелінійного програмування не існує універсального методу, а тому доводиться застосовувати багато методів та обчислювальних алгоритмів, які в основному ґрунтуються на теорії диференціального числення, і вибір їх залежить від конкретної постановки задачі та форми економіко-математичної моделі. Методи нелінійного програмування бувають прямі та непрямі. Прямими методами оптимальні розв’язки шукають у напрямку найшвидшого збільшення (зменшення) цільової функції. Типовими для цієї групи методів є градієнтні. Непрямі методи полягають у зведенні задачі до такої, знаходження оптимального розв’язку якої вдається спростити. Найпоширенішими методами цього класу є методи квадратичного програмування. Оптимізаційні задачі, на змінні яких накладаються обмеження, розв’язуються методами класичної математики. Оптимізацію з обмеженнями-рівностями виконують методами зведеного градієнта, наприклад, методом множників Лагранжа. У задачах оптимізації з обмеженнями-нерівностями досліджують необхідні та достатні умови існування екстремуму Куна-Таккера. Розглянемо метод множників Лагранжа на прикладі такої задачі нелінійного програмування: Z = f(x1, x2,..., xn) max(min), (7.3)
де f(x1, x2,..., xn) та Ідея методу Лагранжа полягає в заміні окресленої задачі простішою - знаходження екстремуму складнішої функції, але без обмежень. Ця функція називається функцією Лагранжа і записується у вигляді:
де Необхідною умовою екстремуму функції багатьох змінних є рівність нулю частинних похідних стосовно всіх змінних функції. Візьмемо ці частинні похідні і прирівняємо їх до нуля:
Отримуємо систему (m+n) рівнянь із (т+n) невідомими, розв’язавши яку, знайдемо Теорема. Нехай в околі критичної точки
1) Якщо а) досягає свого максимального значення, якщо б) досягає свого мінімального значення, якщо 2) Якщо 3) Якщо екстремуми можуть існувати чи не існувати. Розглянемо задачі випуклого програмування, які є структурними складовими класу задач нелінійного програмування, в яких використовують опуклі чи вгнуті функції. Функція f(x1, x2,..., xn), яка визначена на опуклій множині М, називається опуклою, якщо для будь-яких двох точок х1 і х 2 з множини М і довільної константи
Функція f(xl, x2,..., xn), яка визначена на опуклій множині М, називається увігнутою, якщо для будь-яких двох точок х1 і х 2 з множини М і довільної константи
Розглянемо задачу опуклого програмування. Z = f(x1, x2,..., xn) max(min), (7.6)
де f(x1, x2,..., xn) - увігнута (опукла) функція; Множина допустимих рішень задачі (7.6)-(7.8) задовольняє умову регулярності, якщо існує хоч би одна точка X = (х1, х2,..., хп) в описуваній множині з координатами, що задовольняють нерівності Якщо f(xux2,..., xn) - увігнута (опукла) функція, яка задана на опуклій множині, то будь-який локальний максимум (мінімум) є глобальним максимумом (мінімумом). Функція Лагранжа для задачі опуклого програмування записується в такому ж вигляді, як і для будь-якої задачі нелінійного програмування
де Точка
для всіх Теорема (теорема Куна-Таккера). Якщо множина допустимих розв’язків задачі опуклого програмування (7.6)-(7.8) задовольняє умову регулятивності, то точка Теорема Куна-Таккера дає можливість сформулювати математичні вирази, що визначають необхідні та достатні умови наявності сідлової точки. Це відображає така теорема. Теорема. Якщо задачу нелінійного програмування Z = f(x1, x2,..., xn) max,,
де Z = f(x1, x2,..., xn) та
Розглянемо задачі квадратичного програмування, які є частковим випадком задач опуклого програмування, в яких цільова функція є сумою лінійної та квадратичної форми. Квадратичною формою відносно змінних
Квадратична форма Квадратична форма Z(X) називається напіввизначеною, якщо Z(X)> 0 (Z(X)< 0) для всіх значень змінних X = (х1, х2,..., хп), крім цього існує такий вектор Квадратична форма Z(X) називається неозначеною, якщо її значення є додатними для одних значень Х і від’ємними для інших. Вид квадратичної форми можна визначити через власні значення (характеристичні корені)
Складаємо характеристичне рівняння матриці С.
3 цього рівняння визначаємо вектор характеристичних коренів:
Теорема. Квадратична форма є додатно (від’ємно) визначеною тільки тоді, коли всі компоненти вектора характеристичних коренів є додатними (від’ємними). Якщо власні числа мають різні знаки, то квадратична форма є невизначеною. Задача квадратичного програмування - це задача виду
де Умови Куна-Таккера для задачі випуклого програмування мають вигляд:
Теорема. I. II. III. IV.
|