Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metod2_last_metods.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
875.52 Кб
Скачать

Лабораторная работа №6 Задача нелинейного программирования

Целью лабораторной работы является приобретение студентами практических навыков формализации экономических задач с помощью математических моделей, ознакомление с задачами, решаемыми с помощью нелинейного программирования, а также приобретение навыков решения ЗМП с помощью электронных таблиц MS Excel.

1.Общая постановка задачи

Общая задача математического программирования состоит в оптимизации целевой функции:

W = f(x1,...,xm) (6.1)

при ограничениях

gi = gi(x1,...,xm) 0, i[1,n] (6.2)

Когда все ограничения и целевая функция линейны, задача математического программирования является задачей линейного программирования. Более детальное изучение практических ситуаций показывает, что большинство задач по существу является нелинейными. Когда целевая функция или ограничения нелинейны, то возникает широкий класс задач нелинейного программирования. Общий метод решения нелинейных задач отсутствует.

Основную трудность при решении нелинейных задач составляет наличие множества экстремальных точек. Большинство же классических методов дают точки локального оптимума и не позволяют установить, является ли он глобальным, так как равенство нулю при всех производных в определенной точке необходимое, но недостаточное условие получения глобального оптимума. Перебор же всех экстремальных точек затруднен.

Эффективный симплексный алгоритм решения задач линейного программирования удалось построить, так как доказано, что область допустимых значений в линейных задачах выпукла, а решение находится в одной из вершин многогранника ограничений. В нелинейных задачах область допустимых решений не всегда выпукла, она может быть и вогнута, и даже разрывна. Кроме того, оптимум целевой функции может достигаться не только в вершине многогранника, но и на его границе и даже внутри многогранника.

Нелинейное программирование применяется для решения большого количества практических задач, в тех случаях, когда применение линейного программирования становится некорректным при формализации реальной экономической ситуации. К задачам, решаемых с помощью нелинейного программирования относятся и задача о распределения ресурсов, и задача о смеси, однако в отличие от линейного программирования ввиду отсутствия ограничений на вид функций, входящих в модель, класс задач, решаемый с помощью нелинейного программирования, является более обширным.

2.Решение задачи нелинейного программирования методом Лагранжа

Одним из методов решения задачи нелинейного программирования является метод, предложенный Лагранжем. Суть метода Лагранжа состоит в построении функции

L(x1, …, xm, 1, …, n)= f(x1,...,xm)+ igi(x1,...,xm), (6.3)

называемой функцией Лагранжа и в сведении задачи на условный экстремум функции цели W = f(x1,...,xm) к задаче на абсолютный экстремум функции Лагранжа L(x1, …, xm, 1, …, n). Функция Лагранжа представляет собой сумму целевой функции и функций ограничений, умноженной на новую независимую переменную i, называемую множителем Лагранжа, входящую в формируемую функцию обязательно в первой степени.

Для нахождения точек локального экстремума функции цели при решении задачи нелинейного программирования методом Лагранжа, следует найти критические точки функции Лагранжа, удовлетворяющие условию необходимости существования глобального экстремума функции Лагранжа, то есть найти все решения следующей системы уравнений, состоящей из m+n уравнений.

(6.4)

Далее критические точки функции Лагранжа следует «укоротить», удалив из них последние координаты i. Затем каждую «укороченную» критическую точку необходимо проанализировать на предмет, является ли она в действительности точкой условного экстремума функции цели при наличии данных ограничений или не является.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]