Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
фул госы.docx
Скачиваний:
1
Добавлен:
21.09.2019
Размер:
2.62 Mб
Скачать

Алгоритм решения задач

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

2. Строим вектор С.

3. Проводим линию уровня Lo, которая перпендикулярна С.

4. Линию уровня перемещаем по направлению вектора С для задач на максимум и в направлении, противоположном С, для задач на минимум.

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

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

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

5. Находим координаты точки экстремума и значение целевой функции в ней.

Пример: Выбор оптимального варианта выпуска изделий

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

Исходный продукт

Расход исходных продуктов на 1 кг мороженого

Запас, кг

Сливочное

Шоколадное

Молоко

0,8

0,5

400

Наполнители

0,4

0,8

365

Изучение рынка сбыта показало, что суточный спрос на сливочное мороженое превышает спрос на шоколадное не более чем на 100 кг. Кроме того, установлено, что спрос на шоколадное мороженое не превышает 350 кг в сутки. Розничная цена 1 кг сливочного мороженого 16 р., шоколадного — 14 р.

Какое количество мороженого каждого вида должна производить фирма, чтобы доход от реализации продукции был максимальным?

решение. Обозначим: x1 — суточный объем выпуска сливочного мороженого, кг; x2 — суточный объем выпуска шоколадного мороженого, кг.

Составим математическую модель задачи.

Целевая функция будет иметь вид L(x) = 16 x1 + 14 x2 -> max при ограничениях:

O ABDEF — область допустимых решений. Строим вектор с(1,1). Линия уровня задается уравнением 16x1+14x2=const. Перемещаем линию уровня по направлению вектора с. Точ­кой выхода из области допустимых решений является точка D, ее координаты определяются как пересечение прямых, заданных уравнениями:

Решая систему, получим координаты точки D(312,5; 300), в которой и будет оптимальное решение, т.е. Х(опт)=(312,5;300), при этом Lmax(x)=16*312,5+14*300=9200р. Таким образом, фирма должна выпускать в сутки 312,5 кг сливочного мороженого и 300 кг шоколадного мороженого, при этом доход от реализации составит 9 200 р.

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

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

Число перебираемых допустимых базисных решений можно сократить, если производить перебор не беспорядочно, а с учетом изменений линейной функции, т.е. добиваясь того, чтобы каждое следующее решение было "лучше" (или, по крайней мере, "не хуже"), чем предыдущее, по значениям линейной функции (увеличение ее при отыскании максимума F-> max, уменьшение — при отыскании минимума F-> min).

Такой перебор позволяет сократить число шагов при отыскании оптимума. Поясним это на графическом примере.

Пусть область допустимых решений изображается многоугольником ABCDEGH . Предположим, что его угловая точка А соответствует исходному допустимому базисному решению. При беспорядочном переборе пришлось бы испытать семь допустимых базисных решений, соответствующих семи угловым точкам многоугольника. Однако из чертежа видно, что после вершины А выгодно перейти к соседней вершине В, а затем — к оптимальной точке С.

Вместо семи перебрали только три вершины, последовательно улучшая линейную функцию.

Рассмотрим две задачи I и II линейного програм­мирования, обладающими следующими свой­ствами:

1. В одной задаче ищут максимум линейной функции, в другой — минимум.

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

3. Каждая из задач задана в стандартной форме, причем в задаче максимизации все неравенства вида "<", а в задаче минимизации — все неравенства вида ">".

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

Различают симметричные, несимметричные и смешанные двойственные задачи.

Две задачи I и II линейного программирования, обладающие ука­занными свойствами, называются симметричными взаимно двойст­венными задачами. В дальнейшем для простоты будем называть их просто двойственными задачами.

Исходя из определения, можно предложить следующий алго­ритм составления двойственной задачи.

1. Привести все неравенства системы ограничений исходной задачи к одному смыслу: если в исходной задаче ищут мак­симум линейной функции, то все неравенства системы ог­раничений привести к виду "≤", а если минимум — к виду "≥". Для этого неравенства, в которых данное требование не выполняется, умножить на -1.

2. Составить расширенную матрицу системы, в которую включить матрицу коэффициентов при переменных, стол­бец свободных членов системы ограничений и строку ко­эффициентов при переменных в линейной функции.

3. Найти матрицу, транспонированную к данной матрице.

4. Сформулировать двойственную задачу на основании полученной матрицы и условия неотрицательности переменных.

Связь между оптимальными решениями двойственных задач устанавливается с помощью теорем двойственности.

ТЕОРЕМА 1. Если одна из двойственных задач имеет оп­тимальное решение, то другая также имеет оптимальное решение, причем для любых оптимальных решений Х и Y вы­полняется равенство .

Если одна из двойственных задач неразрешима ввиду то­го, что , то другая задача не имеет допустимых решений.

ТЕОРЕМА 2. Для оптимальности допустимых решений Х и У пары двойственных задач необходимо и достаточно, что­бы они удовлетворяли системе уравнений

Теоремы позволяют определить оптимальное решение одной из пары задач по решению другой.

Пример. По решению исходной задачи найти решение двойственной, и наоборот.

Исходная задача

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

Двойственная задача будет иметь вид:

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

Исходную задачу можно решить графически. Получим Х(опт)=(4,1), при этом L(x)=3. На основании первой теоремы двойственности

Так как , то по второй теореме двойственности систему ограничений двойственной задачи можно записать в виде равенств Подставим Х(опт) в систему ограничений исходной задачи.

Тогда система ограничений двойственной задачи примет вид . ЕЕ решение Y(опт)=(0,2/3,1/3), при этом

С другой стороны, пусть дано решение двойственной задачи Y(опт)=(0,2/3,1/3), при этом Как по нему найти решение исходной?

По первой теореме Так как , то по второй теореме второе и третье неравенства обращаются в равенства, то есть , решением которого является Х(опт)= (4,1).

Если исходная задача решена симплексным методом, то решение двойственной задачи может быть найдено по формуле Y(опт)=С*А-1где С – матрица-строка коэффициентов при базисных переменных целевой функции в оптимальном решении исходной задачи, А-1 –обратная матрица для матрицы А, являющейся матрицей коэффициентов базисных переменных системы ограничений исходной задачи в оптимальном решении.

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