Алгоритм метода множителей Лагранжа

Метод множителей Лагранжа.

Метод множителей Лагранжа является одним из методов, которые позволяют решать задачи нелинейного программирования.

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

Задача нелинейного программирования ставится как задача нахождения оптимума определенной целевой функции

F(x1,…xn), F (x) → max

при выполнении условий

gj(x1,…xn)≥0,, g (x) ≤ b, x ≥ 0

где x —вектор искомых переменных;

F (x) —целевая функция;

g (x) — функция ограничений (непрерывно дифференцируемая);

b — вектор констант ограничений.

Решение задачи нелинейного программирования (глобальный максимум или минимум) может принадлежать либо границе, либо внутренней части допустимого множества.

В отличие от задачи линейного программирования, в задаче программирования нелинейного оптимум не обязательно лежит на границе области, определенной ограничениями. Иначе говоря, задача состоит в выборе таких неотрицательных значений переменных, подчиненных системе ограничений в форме неравенств, при которых достигается максимум (или минимум) данной функции. При этом не оговариваются формы ни целевой функции, ни неравенств. Могут быть разные случаи: целевая функция нелинейная, а ограничения линейны; целевая функция линейна, а ограничения (хотя бы одно из них) нелинейные; и целевая функция, и ограничения нелинейные.

Задача нелинейного программирования встречается в естественных науках, технике, экономике, математике, в сфере деловых отношений и в науке управления государством.

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

Метод "затраты - эффективность" также укладывается в схему нелинейного программирования. Данный метод был разработан для использования при принятии решений в управлении государством. Общей функцией эффективности является благосостояние. Здесь возникают две задачи нелинейного программирования: первая - максимизация эффекта при ограниченных затратах, вторая - минимизация затрат при условии, чтобы эффект был выше некоторого минимального уровня. Обычно эта задача хорошо моделируется с помощью нелинейного программирования.

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

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

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

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

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

Метод множителей Лагранжа заключается в сведении задач на условный экстремум к задачам на безусловный экстремум вспомогательной функции — т. н. функции Лагранжа.

Для задачи об экстремуме функции f (х1, x2,..., xn) при условиях (уравнениях связи) φi(x1, x2, ..., xn) = 0, i = 1, 2,..., m, функция Лагранжа имеет вид

L(x1,x2…xn1,λ2,…λm)=f(x1,x2…xn)+∑i-1mλiφi (x1,x2…xn)

Множители λ1, λ2, ..., λm наз. множителями Лагранжа.

Если величины x1, x2, ..., xn, λ1, λ2, ..., λm суть решения уравнений, определяющих стационарные точки функции Лагранжа, а именно, для дифференцируемых функций являются решениями системы уравнений

Алгоритм метода множителей Лагранжа - student2.ru , i=1,…n ,

Алгоритм метода множителей Лагранжа - student2.ru =0 , i=1,…m,

то при достаточно общих предположениях x1, x2, ..., xn доставляют экстремум функции f.

Рассмотрим задачу минимизации функции n переменных с учетом одного ограничения в виде равенства:

Минимизировать f(x1,x2…xn) (1)

при ограничениях h1(x1,x2…xn)=0 (2)

В соответствии с методом множителей Лагранжа эта задача преобразуется в следующую задачу безусловной оптимизации:

минимизировать L(x,λ)=f(x)-λ*h(x) (3)

где Функция L(х;λ) называется функцией Лагранжа,

λ — неизвестная постоянная, которая носит название множителя Лагранжа. На знак λ никаких требований не накладывается.

Пусть при заданном значении λ=λ0 безусловный минимум функции L(x,λ) по х достигается в точке x=x0 и x0 удовлетворяет уравнению h1(x0)=0. Тогда, как нетрудно видеть, x0 минимизирует (1) с учетом (2), поскольку для всех значений х, удовлетворяющих (2), h1(x)=0 и L(x,λ)=min f(x).

Разумеется, необходимо подобрать значение λ=λ0 таким образом, чтобы координата точки безусловного минимума х0 удовлетворяла равенству (2). Это можно сделать, если, рассматривая λ как переменную, найти безусловный минимум функции (3) в виде функции λ, а затем выбрать значение λ, при котором выполняется равенство (2). Проиллюстрируем это на конкретном примере.

Минимизировать f(x)=x12+x22=0

при ограничении h1(x)=2x1+x2-2=0=0

Соответствующая задача безусловной оптимизации записывается в следующем виде:

минимизировать L(x,λ)=x12+x22-λ(2x1+x2-2)

Решение. Приравняв две компоненты градиента L к нулю, получим

Алгоритм метода множителей Лагранжа - student2.ru → x10

Алгоритм метода множителей Лагранжа - student2.ru → x20=λ/2

Для того чтобы проверить, соответствует ли стационарная точка х° минимуму, вычислим элементы матрицы Гессе функции L(х;u), рассматриваемой как функция х,

HL(x)= Алгоритм метода множителей Лагранжа - student2.ru ,

которая оказывается положительно определенной.

Это означает, что L(х,u) — выпуклая функция х. Следовательно, координаты x10=λ, x20=λ/2 определяют точку глобального минимума. Оптимальное значение λ находится путем подстановки значений x10и x20в уравнение2x1+x2=2, откуда 2λ+λ/2=2 или λ0=4/5. Таким образом, условный минимум достигается при x10=4/5 и x20=2/5 Алгоритм метода множителей Лагранжа - student2.ru и равен min f(x)=4/5.

При решении задачи из примера мы рассматривали L(х;λ) как функцию двух переменных x1и x2и, кроме того, предполагали, что значение параметра λ выбрано так, чтобы выполнялось ограни­чение. Если же решение системы

Алгоритм метода множителей Лагранжа - student2.ru , j=1,2,3,…,n

в виде явных функций λ получить нельзя, то значения х и λ находятся путем решения следующей системы, состоящей из n+1 уравнений с n+1 неизвестными:

Алгоритм метода множителей Лагранжа - student2.ru , j=1,2,3,…,n., h1(x)=0

Для нахождения всех возможных решений данной системы можно использовать численные методы поиска (например, метод Ньютона). Для каждого из решений ( Алгоритм метода множителей Лагранжа - student2.ru ) следует вычислить элементы матрицы Гессе функции L, рассматриваемой как функция х, и выяснить, является ли эта матрица положительно определенной (локальный минимум) или отрицательно определенной (локальный максимум).

Метод множителей Лагранжа можно распространить на случай, когда задача имеет несколько ограничений в виде равенств. Рассмотрим общую задачу, в которой требуется

Минимизировать f(x)

при ограничениях hk =0, k=1, 2, ..., К.

Функция Лагранжа принимает следующий вид:

L(x,λ)=f(x)- Алгоритм метода множителей Лагранжа - student2.ru

Здесь λ1, λ2, ..., λk —множители Лагранжа, т.е. неизвестные параметры, значения которых необходимо определить. Приравнивая частные производные L по х к нулю, получаем следующую систему n уравнении с n неизвестными:

Алгоритм метода множителей Лагранжа - student2.ru

Алгоритм метода множителей Лагранжа - student2.ru

………..

Алгоритм метода множителей Лагранжа - student2.ru

Если найти решение приведенной выше системы в виде функций вектора λ оказывается затруднительным, то можно расширить систему путем включения в нее ограничений в виде равенств

h1(x)=0

h2(x)=0

hK(x)=0

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

Рассмотрим частный случай общей задачи нелинейного программирования, предполагая, что система ограничений содержит только уравнения, отсутствуют условия неотрицательности переменных и Алгоритм метода множителей Лагранжа - student2.ru и Алгоритм метода множителей Лагранжа - student2.ru - функции непрерывные вместе со своими частными производными

Алгоритм метода множителей Лагранжа - student2.ru ® max (min) (4)

Алгоритм метода множителей Лагранжа - student2.ru (5)

Данную задачу называют задачей на условный экстремум или классической задачей оптимизации.

Чтобы найти решение этой задачи, вводят набор переменных Алгоритм метода множителей Лагранжа - student2.ru называемых множителями Лагранжа, составляют функцию Лагранжа

Алгоритм метода множителей Лагранжа - student2.ru (6)

находят частные производные Алгоритм метода множителей Лагранжа - student2.ru и рассматривают систему n+m уравнений

Алгоритм метода множителей Лагранжа - student2.ru (7)

с n+m неизвестными Алгоритм метода множителей Лагранжа - student2.ru Всякое решение системы уравнений (7) определяет точку Алгоритм метода множителей Лагранжа - student2.ru в которой может иметь место экстремум функции Алгоритм метода множителей Лагранжа - student2.ru . Следовательно решив систему уравнений (7), получают все точки, в которых функция (6) может иметь экстремальные значения.

Алгоритм метода множителей Лагранжа

1.Составляем функцию Лагранжа.

2.Находим частные производные от функции Лагранжа по переменным xJi и приравниваем их нулю.

3.Решаем систему уравнений (7), находим точки, в которых целевая функция задачи может иметь экстремум.

4.Среди точек, подозрительных на экстремум, находим такие, в которых достигается экстремум, и вычисляем значения функции (6) в этих точках.

Пример .

Исходные данные:По плану производства продукции предприятию необходимо изготовить 180 изделий. Эти изделия могут быть изготовлены двумя технологическими способами. При производстве x1 изделий 1 способом затраты равны 4x1+x12 руб., а при изготовлении x2 изделий 2 способом они составляют 8x2+x22 руб. Определить сколько изделий каждым из способов следует изготовить, чтобы затраты на производство продукции были минимальными.

Решение:

Целевая функция для поставленной задачи имеет вид
Алгоритм метода множителей Лагранжа - student2.ru ®min при условиях x1+x2=180, x2≥0.
1.Составляем функцию Лагранжа
Алгоритм метода множителей Лагранжа - student2.ru .
2. Вычисляем частные производные по x1, x2, λ и приравниваем их нулю:
Алгоритм метода множителей Лагранжа - student2.ru
3. Решая полученную систему уравнений, находим x1=91,x2=89

4.Сделав замену в целевой функции x2=180-x1 , получим функцию от одной переменной, а именно f1=4x1+x12+8(180-x1)+(180-x1)2

Вычисляем Алгоритм метода множителей Лагранжа - student2.ru или 4x1-364=0 ,

откуда имеем x1*=91, x2*=89.

Ответ: Количество изделий изготовленных первым способом равно х1=91, вторым способом х2=89 при этом значение целевой функции равно 17278 руб.

Наши рекомендации