Дробно-линейное программирование

Дробно-линейное программирование - student2.ru Дробно-линейное программирование относится к нелиней­ному программированию, так как имеет целевую функцию, за­данную в нелинейном виде.

Задача дробно-линейного программирования в общем виде записывается следующим образом:

Дробно-линейное программирование - student2.ru

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

где cj, dj, bi, aij — постоянные коэффициенты и Дробно-линейное программирование - student2.ru djxj ≠0.

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

1. Находится область допустимых решений.

2. Определяется угловой коэффициент k и устанавливаем на­правление поворота целевой функции.

3. Находится точка max(min) целевой функции или устана­вливаем неразрешимость задачи.

Математическая модель задачи дробно-линейного програм­мирования может быть использована для определения рента­бельности затрат на производство изделий, рентабельности продаж, затрат в расчете на рубль выпускаемой продукции, себестоимости изделий.

Рассмотрим использование дробно-линейного программи­рования для нахождения себестоимости изделий.

Пример 6. Для производства двух видов изделий А и В пред­приятие использует три типа технологического оборудования. Каждое из изделий должно пройти обработку на каждом из типов оборудования. Время обработки каждого из изделий, затраты, связанные с производством одного изделия, даны в табл. 28.1

Оборудование I и III типов предприятие может использо­вать не более 26 и 39 ч соответственно, оборудование II типа целесообразно использовать не менее 4 ч.

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

Решение. Пусть x1 — количество изделий вида А, которое следует из­готовить предприятию, x2 — количество изделий вида В. Об­щие затраты на их производство составят (2х1 + 3x2) тыс. р., а средняя себестоимость одного изделия будет равна

Дробно-линейное программирование - student2.ru

Дробно-линейное программирование - student2.ru Математическая модель задачи примет вид

Дробно-линейное программирование - student2.ru

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

ΔАВС — область допустимых решений

Дробно-линейное программирование - student2.ru Найдем x2: L = (2x1 + 3x2) / (x1 + x2), 2x1 + 3х2 = Lx1 + Lx2, x2 (3 - L) = x1(L - 2),

Дробно-линейное программирование - student2.ru

Угловой коэффициент прямой равен k = (L - 2)/(3 — l), тогда

Дробно-линейное программирование - student2.ru

Дробно-линейное программирование - student2.ru Так как dk/dL > 0, то функция k = (L - 2)/(3 - L) возрастает. Это соответствует вращению прямой против часовой стрелки. Следовательно, в точке С (рис.) целевая функция будет иметь наименьшее значение (глобальный минимум).

Найдем координаты точки С. Решая систему, получим С (3, 1),

Дробно-линейное программирование - student2.ru опт = (3, 1), L =9/4.

Следовательно, предприятию следует выпускать 3 изделия вида А и 1 изделие вида В. При этом средняя себестоимость одного изделия будет минимальной и равной 2,25 тыс. р.

Задачу дробно-линейного программирования можно свести к задаче линейного программирования и решить симплексным методом.

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

Дана задача нелинейного программирования Дробно-линейное программирование - student2.ru

при ограничениях: Дробно-линейное программирование - student2.ru

Предположим, что функции f(x1, х2,..., xп) и gi(x1, x2,..., xп) непрерывны вместе со своими первыми частными про­изводными.

Дробно-линейное программирование - student2.ru Ограничения заданы в виде уравнений, поэтому для ре­шения задачи воспользуемся методом отыскания условного эк­стремума функции нескольких переменных.

Для решения задачи составляется функция Лагранжа

где λi — множители Лагранжа.

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

Затем определяются частные производные:

Дробно-линейное программирование - student2.ru

Приравняв к нулю частные производные, получим систему

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

Дробно-линейное программирование - student2.ru

Пример 8. Найти точку условного экстремума функции

Дробно-линейное программирование - student2.ru

Ограничения:

Дробно-линейное программирование - student2.ru Решение. Составим функцию Лагранжа:

Пояснения. Для составления функции Лагранжа запишем ограничения в виде: q1=x1-x2-2 и q2=x2+2x3-4. Функция Лагранжа есть сумма целевой функции и ограничений, умноженных на множитель, который будет получен при решении системы составленной из частных производных функции Лагранжа.

Найдем частные производные функции Лагранжа по пере­менным x1, x2, x3, λ1, λ2. Приравняв к нулю полученные вы­ражения, решим систему

λ1 = -x2, λ2 = - x2/2,

х1 = -2, x2 = -4, x3 = 4, L = -8.

Определим характер экстремума, изменяя полученные зна­чения переменных.

Измененные значения должны удовлетво­рять заданной системе ограничений.

Возьмем х1 > -2, напри­мер x1 = -1, тогда из системы ограничений получим х2 = -3, x3 = 7/2, L = -15/2.

Возьмем х1 < -2, например х1 = -3, тогда получим х2 = -5, x3 = 9/2, L = -15/2.

Следовательно, L = -8 — минимальное значение функции.

Ответ. Точка экстремума х1 = -2, x2 = -4, x3 = 4, максимальное значение функции L = -8.

Пример 9. Мукомольный комбинат реализует муку двумя способами: в розницу через магазин и оптом через торговых агентов.

При продаже x1 кг муки через магазин расходы на реализацию составляют х12 руб., а при продаже x2 кг муки посредством торговых агентов — х22 руб.

Определить, сколько килограммов муки следует продавать каждым способом, чтобы затраты на реализацию были мини­мальными, если в сутки выделяется для продажи 5 000 кг муки.

Дробно-линейное программирование - student2.ru Решение. Составим математическую модель задачи.

Найдем минимум суммарных расходов Дробно-линейное программирование - student2.ru

Ограничения:

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

Дробно-линейное программирование - student2.ru Дробно-линейное программирование - student2.ru

Найдем частные производные функции F по x1, x2 и λ, приравняем их к нулю, получим систему уравнений, решив ко которую, получим: λ = -5 000, x1 = 2 500, x2 = 2 500, L = 12 500 000 руб.

Давая х1 значения больше и меньше 2500, находим L и из определения экстремума функции получаем, что L при х1 = x2 = 2 500 достигает минимума.

Для получения минимальных расходов не­обходимо расходовать в сутки через магазин и торговых аген­тов по 2 500кг муки, при этом расходы на реализацию составят 12 500 000 руб.

Практические занятия.

Используя графический метод, найти глобальные экстремумы функций.

1. . L =x1 + 2x2 при ограничениях: Дробно-линейное программирование - student2.ru 2. L = x1 + 3x2 при ограничениях: Дробно-линейное программирование - student2.ru
3.L = (x1 - 6)2 + (x­2 - 2)2 при ограничениях: Дробно-линейное программирование - student2.ru 4.L = (x1 — 3)2 + (x2 — 4)2 при ограничениях: Дробно-линейное программирование - student2.ru
5. L = (x1 - 4)2 + (x2 - 3)2 при ограничениях: Дробно-линейное программирование - student2.ru 6. L = (x1 - 3)2 + (x2 — 2)2 при ограничениях: Дробно-линейное программирование - student2.ru
7. L = (x1 — 2)2 + (x2 — l)2 при ограничениях: Дробно-линейное программирование - student2.ru L = x12 + x22 при ограничениях: Дробно-линейное программирование - student2.ru

Используя метод множителей Лагранжа, найти точку условно­го экстремума

12. L = 2х1х3 – х2х3 при ограничениях: Дробно-линейное программирование - student2.ru 13. L = х1х2 + x2x3, при ограничениях: Дробно-линейное программирование - student2.ru
L =x1x2 + х2х3 при ограничениях: Дробно-линейное программирование - student2.ru 15. L = 2x1 — x2 + х3 при ограничениях: Дробно-линейное программирование - student2.ru

16. Фирма реализует автомобили двумя способами: через розничную и оптовую торговлю. При реализации х1 автомоби­лей в розницу расходы на реализацию составляют 4x1 + х12 р., а при продаже x2 автомобилей оптом — х22 р.

Найти оптимальный способ реализации автомобилей, ми­нимизирующий суммарные расходы, если общее число пред­назначенных для продажи автомобилей составляет 200 шт.

***

Найти глобальные максимум и минимум дробно-линейных функций.

9. L = (2x1 - x2) / (x1 + x2) при ограничениях: Дробно-линейное программирование - student2.ru 10. L = (3x1 - x2)/(x1 + x2) при ограничениях: Дробно-линейное программирование - student2.ru
11. L = (3x1 + 7x2)/(xl + х2) при ограничениях: Дробно-линейное программирование - student2.ru

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