“Методы решения систем линейных неравенств”
Оглавление
Вступление *
Графический метод *
Симплекс-метод *
Метод искусственного базиса *
Принцип двойственности *
Список использованной литературы *
Отдельные свойства систем линейных неравенств рассматривались еще в первой половине 19 века в связи с некоторыми задачами аналитической механики. Систематическое же изучение систем линейных неравенств началось в самом конце 19 века, однако о теории линейных неравенств стало возможным говорить лишь в конце двадцатых годов 20 века, когда уже накопилось достаточное количество связанных с ними результатов.
Сейчас теория конечных систем линейных неравенств может рассматриваться как ветвь линейной алгебры, выросшая из неё при дополнительном требовании упорядоченности поля коэффициентов.
Линейные неравенства имеют особо важное значение для экономистов, т.к именно при помощи линейных неравенств можно смоделировать производственные процессы и найти наиболее выгодные планы производства, транспортировки, размещения ресурсов и т. д.
В данной работе будут изложены основные методы решения линейных неравенств, применительно к конкретным задачам.
Графический метод заключается в построении множества допустимых решений ЗЛП, и нахождении в данном множестве точки, соответствующей max/min целевой функции.
В связи с ограниченными возможностями наглядного графического представления данный метод применяется только для систем линейных неравенств с двумя неизвестными и систем, которые могут быть приведены к данному виду.
Для того чтобы наглядно продемонстрировать графический метод, решим следующую задачу:
Так как и графики и область допустимых решении находятся в первой четверти.
Для того чтобы найти граничные точки решаем уравнения (1)=(2), (1)=(3) и (2)=(3).
Как видно из иллюстрации многогранник ABCDE образует область допустимых решений.
Если область допустимых решений не является замкнутой, то либо max(f)=+ ∞, либо min(f)= -∞.
Поочерёдно подставляя координаты вершин многогранника в функцию f и сравнивать значения, находим что
f(C)=f(4;1)=19 – максимум функции.
Такой подход вполне выгоден при малом количестве вершин. Но данная процедура может затянуться если вершин довольно много.
В таком случае удобнее рассмотреть линию уровня вида f=a. При монотонном увеличении числа a от -∞ до +∞ прямые f=a смещаются по вектору нормали. Если при таком перемещении линии уровня существует некоторая точка X – первая общая точка области допустимых решений (многогранник ABCDE) и линии уровня, то f(X)- минимум f на множестве ABCDE. Если X- последняя точка пересечения линии уровня и множества ABCDE то f(X)- максимум на множестве допустимых решений. Если при а→-∞ прямая f=a пересекает множество допустимых решений, то min(f)= -∞. Если это происходит при а→+∞, то
max(f)=+ ∞.
В нашем примере прямая f=a пересевает область ABCDE в точке С(4;1). Поскольку это последняя точка пересечения, max(f)=f(C)=f(4;1)=19.
Реальные задачи линейного программирования содержат очень большое число ограничений и неизвестных и выполняются на ЭВМ. Симплекс-метод – наиболее общий алгоритм, использующийся для решения таких задач. Суть метода заключается в том, что после некоторого числа специальных симплекс- преобразований ЗЛП, приведенная к специальному виду, разрешается. Для того, чтобы продемонстрировать симплекс-метод в действии решим, с попутными комментариями следующую задачу:
Для того, чтобы приступить к решению ЗЛП симплекс методом, надо привести ЗЛП к специальному виду и заполнить симплекс таблицу.
Система (4) – естественные ограничения и в таблицу не вписываются. Уравнения (1), (2), (3) образуют область допустимых решений. Выражение (5) – целевая функция. Свободные члены в системе ограничений и области допустимых решений должны быть неотрицательны.
В данном примере X3, X4, X5 – базисные неизвестные. Их надо выразить через свободные неизвестные и произвести их замену в целевой функции.
Теперь можно приступить к заполнению симплекс-таблицы:
Б. |
X1 |
X2 |
X3 |
X4 |
X5 |
C |
X3 |
0 |
-1 |
1 |
1 |
0 |
1 |
X4 |
0 |
1 |
-1 |
0 |
1 |
1 |
X5 |
1 |
1 |
1 |
0 |
0 |
2 |
f |
0 |
-6 |
7 |
0 |
0 |
3 |
В первом столбце данной таблицы обозначены базисные неизвестные, в последнем – значения свободных неизвестных, в остальных – коэффициенты при неизвестных.
Б |
X1 |
X2 |
X3 |
X4 |
X5 |
C |
X3 |
-1 |
1 |
1 |
0 |
0 |
1 |
X4 |
1 |
-1 |
0 |
1 |
0 |
1 |
X5 |
1 |
1 |
0 |
0 |
1 |
2 |
f |
-6 |
7 |
0 |
0 |
0 |
3 |
Для этого выбираем столбец с отрицательным коэффициентом в последней строке (столбец 3) и составляем для положительных элементов данного столбца отношения свободный член/коэффициент (1/1; 2/1). Из данных отношений выбираем наименьшее и помечаем соответствующую строку.
Нами выбран элемент в ячейке (3;3). Теперь с помощью метода Гаусса обнуляем другие коэффициенты в данном столбце, это приводит к смене базиса и мы на один шаг приближаемся к оптимальному решению.
Б |
X1 |
X2 |
X3 |
X4 |
X5 |
C |
X3 |
0 |
0 |
1 |
1 |
0 |
2 |
X1 |
1 |
-1 |
0 |
1 |
0 |
1 |
X5 |
0 |
2 |
0 |
-1 |
1 |
1 |
f |
0 |
1 |
0 |
6 |
0 |
9 |
Как видно из таблицы теперь все коэффициенты в последней строке больше либо равны нулю. Это означает, что нами найдено оптимальное значение. Свободные неизвестные равны нулю, значению базисных неизвестных и максимуму функции f соответствует значения свободных неизвестных.
Если после подготовки ЗЛП к специальному виду для решения симплекс методом, не в каждой строке системы ограничений есть базисная переменная (входящая в данную строку с коэффициентом 1, а в остальные строки с коэффициентом 0), то для решения данной ЗЛП надо воспользоваться методом искусственного базиса.
Суть метода довольно проста:
Рассмотрим следующий пример:
min(f)-?
Для того, чтобы избавится от искусственной базисной неизвестной нам предстоит решить вспомогательную задачу:
F=Y1→min
Выражая базисную неизвестную Y1 через свободные получаем:
F+4X1+X2=4 →min
Б |
X1 |
X2 |
X3 |
X4 |
Y1 |
С |
Y1 |
4 |
1 |
0 |
0 |
1 |
4 |
X4 |
11 |
3 |
-5 |
-1 |
0 |
12 |
F |
4 |
1 |
0 |
0 |
0 |
4 |
Выбираем элемент в ячейке (3;2) и делаем шаг.
Б |
X1 |
X2 |
X3 |
X4 |
Y1 |
С |
X2 |
4 |
1 |
0 |
0 |
1 |
4 |
X4 |
-1 |
0 |
-5 |
-1 |
-3 |
0 |
F |
0 |
0 |
0 |
0 |
-1 |
0 |
min(f)=0, все коэффициенты в последней строке меньше или равны нулю, следовательно мы перешли к новому естественному базису. Теперь можно решать основную задачу.
В реальной практике встречаются задачи в которых число неизвестных больше числа ограничений. Такие задачи решать в их первозданном виде довольно трудно, но, применяя принцип двойственности можно заметно упростить решение, поскольку в двойственной задаче будет, наоборот, больше ограничений, чем переменных.
Для того чтобы показать, как принцип двойственности может упростить процесс решения приведем следующий пример:
max(f)-? min( φ )-?
Из данного примера легко просматривается взаимосвязь между исходной и двойственной задачами.
Введя в рассмотрение следующие элементы:
Эту связь можно обозначить следующим образом:
max(f)-? min( φ )-?
В двойственной задаче всего 2 переменных. Её можно легко решить графическим методом и, используя вторую теорему двойственности, найти решение исходной.
Пропустим процесс решения двойственной ЗЛП, записав только результаты:
Y1=2 Y2=4 min(φ)=150
Т.к max(f)=min( φ ), решение исходной задачи уже известно. Остаётся только найти значения X1, X2, X3, при которых это значение достигается. Здесь мы применим вторую теорему двойственности, которая устанавливает следующее соответствие:
В нашем примере получается следующая вполне тривиальная система линейных уравнений:
Решение данной системы легко находится методом Гаусса и окончательный ответ таков:
Функция f достигает максимума при X 1 =0, X 2 =5, X 3 =10 и max(f)=150
Список использованной литературы