
- •Общая постановка задачи линейного программирования
- •§ 1.1. Экономико-математическая модель
- •§ 1.2. Примеры задач линейного программирования
- •По смыслу задачи переменные (1.2)
- •§ 1.3. Общая задача линейного программирования
- •Глава 2. Элементы линейной алгебры и геометрии выпуклых множеств
- •§ 2.3. Геометрический смысл решений неравенств, уравнений и их систем
- •Глава 4. Геометрический метод решения задач линейного программирования
- •Глава 5. Симплексный метод
- •§ 5.1. Геометрическая интерпретация симплексного метода
- •§ 5.2. Отыскание максимума линейной функции
- •§ 5.3. Отыскание минимума линейной функции
- •§ 5.4. Определение первоначального допустимого базисного решения
- •При ограничениях
- •§ 5.5. Особые случаи симплексного метода
- •I. Неединственность оптимального решения (альтернативный оптимум)
- •II. Проблема вырожденного базисного решения
- •III. Отсутствие конечного оптимума
- •§ 5.6. Симплексные таблицы
- •§ 5.7. Понятие об м-методе (методе искусственного базиса)
- •Глава 6. Двойственные задачи
- •§ 6.1. Экономическая интерпретация задачи, двойственной задаче об использовании ресурсов
- •§ 6.2. Взаимно двойственные задачи линейного программирования и их свойства
- •§ 6.3. Первая теорема двойственности
- •§ 6.4. Вторая теорема двойственности
- •§ 6.5. Объективно обусловленные оценки и их смысл
- •Глава 7. Транспортная задача
- •§ 7.1. Экономико-математическая модель транспортной задачи
- •§ 7.2. Нахождение первоначального базисного распределения поставок
- •§ 7.3. Критерий оптимальности базисного распределения поставок
- •§ 7.4. Распределительный метод решения транспортной задачи
- •§ 7.5. Открытая модель транспортной задачи
- •23.6. Альтернативный оптимум в транспортных задачах
- •23.7. Вырожденность в транспортных задачах
§ 5.7. Понятие об м-методе (методе искусственного базиса)
Выше был изложен алгоритм получения допустимого базисного решения в случае, когда первоначальное базисное решение недопустимо. Однако при расчете с помощью симплексных таблиц удобнее пользоваться так называемым М-методом: или методом искусственного базиса. Он заключается в следующем.
В каждое уравнение, дающее отрицательную компоненту в базисном решении, вводим свою новую неотрицательную искусственную переменную у1, y2, ... , уk которая имеет тот же знак, что и свободный член в правой части уравнения. В первой таблице включаем в число основных все искусственные переменные и те обычные добавочные переменные, которые определяют неотрицательные компоненты базисного решения. Составляем новую линейную функцию Т = F - M(у1 + у2 + … +уk), где M — произвольно большое число, и ищем ее mах (Т-задача). Назовем М-функцией выражение: M(у1 + у2+ … +уk). Справедлива теорема (доказательство здесь не приводится):
Если в оптимальном решении Т-задачи все искусственные переменные равны 0, то соответствующие значения остальных переменных дают оптимальное решение исходной задачи (т.е. Тmах = Fmах, если у1 = у2 = … = yk = 0, т.е. min M-функции равен 0).
Если имеется оптимальное решение T-задачи, в котором хотя бы одна из искусственных переменных отлична от 0, то система ограничений исходной задачи несовместна.
Если Тmах = , то исходная задача также неразрешима, причем либо Fmах = , либо условия задачи противоречивы.
Из теоремы следует, что вначале следует найти минимум M - функции. Если он равен 0 и все искусственные переменные обращаются в 0, то далее можно отбросить эти переменные и решать исходную задачу, исходя из полученного допустимого базисного решения. На практике находят не минимум М-функции, а максимум (-M)-функции.
Пример 5.11. Решить задачу, приведенную в примере 5.3, M-методом, используя симплексные таблицы.
Решение. Введем необходимое число искусственных переменных и столько же дополнительных строк в симплексной таблице.
Имеем при ограничениях:
X1=(0;0;-1;3;5) - недопустимое базисное решение с одной отрицательной компонентой, поэтому в первое уравнение введем искусственную переменную y1 с тем же знаком, что свободный член.
или
Составляем первую симплексную таблицу (табл. 5.5).
Таблица 5.5
Базис |
Свободный член |
Переменные |
Оценочное отношение |
|||||
|
|
|
|
|
|
|||
|
1 |
-1 |
1 |
-1 |
0 |
0 |
1 |
1 |
|
3 |
-1 |
1 |
0 |
1 |
0 |
0 |
3 |
|
3 |
1 |
0 |
0 |
0 |
1 |
0 |
|
|
0 |
-1 |
-2 |
0 |
0 |
0 |
0 |
max |
Мф |
М |
М |
- М |
М |
0 |
0 |
М |
max |
Последняя строка - это (-М)-функция, т.е. (-М)у1. Заполняем ее, умножая строку у1 на коэффициент (-М). Проверяя выполнение критерия оптимальности при отыскании максимума (-М)-функции, определяем, что в последней строке имеется отрицательный элемент во втором столбце; значит он является разрешающим, переменная x2 переходит в основные. Минимальное оценочное отношение в первой строке, она paзрешающая. Переменная у1 переходит в неосновные, обращается в 0 на следующем базисном решении и далее исключается из рассмотрения. В соответствии с общим алгоритмом получаем табл. 5.6.
Таблица 5.6
Базис |
Свободный член |
Переменные |
Оценочное отношение |
||||
|
|
|
|
|
|||
|
1 |
-1 |
1 |
-1 |
0 |
0 |
|
|
2 |
0 |
0 |
1 |
1 |
0 |
|
|
3 |
1 |
0 |
0 |
0 |
1 |
|
|
2 |
-3 |
0 |
-2 |
0 |
0 |
max |
Мф |
0 |
0 |
0 |
0 |
0 |
0 |
max |
Последняя строка показывает, что критерий оптимальности выполнен; mах (-Мф) = 0, значит min Мф = 0, далее эту строку можно не рассматривать. Получено допустимое базисное решение (0;1;0;2;3), начиная с которого решаем исходную задачу в соответствии с обычным алгоритмом. Читателям рекомендуется завершить ее самостоятельно, а также выполнить решения примеров 5.2, 5.4—5.6 с помощью симплексных таблиц.
Замечание.
При решении задачи на отыскание минимума
линейной функции цели рекомендуется
вместо
находить
.