8.6. Методы нахождения опорного решения задачи линейного программирования
Метод искусственного базиса
Сформированный выше алгоритм симплекс-метода можно применять лишь в том случае, если выделено первое допустимое решение, т. е. исходная задача линейного программирования приведена к виду
При этом , тогда, положив свободные неизвестные равными нулю, получаем опорное решение .
Рассмотрим метод нахождения опорного решения, основанный на введении искусственных переменных. Для этого запишем задачу линейного программирования в общем виде. Будем рассматривать задачу с числом неизвестных «n» и «r» ограничениями:
(8.42)
Перепишем систему (7.42) в другом виде. Для этого введем искусственные переменные так, чтобы был выделен базис. Тогда система примет вид
(8.43)
Системы (8.42) и (8.43) будут эквивалентны в том случае, если все уi для будут равны 0. Кроме того, мы считаем, что все для . В противном случае соответствующие ограничения из системы (8.42) умножим на — 1. Для того чтобы уi, были равны 0, мы должны преобразовать задачу таким образом, чтобы все искусственные переменные y1 перешли в свободные неизвестные.
В этом случае система (8.43) после преобразования примет вид
(8.44)
От системы (8.43) к системе (8.44) всегда можно перейти шагами симплекс-метода. При таком переходе в качестве линейной формы рассматривают функцию
(8.45)
равную сумме искусственных переменных. Переход заканчивают, когда Fmin = 0 и все искусственные переменные уi,- переведены в свободные неизвестные.
Анализ вариантов решений
-
Если , а все yi переведены в свободные переменные, то задача не имеет положительного решения.
-
Если , а часть yi, осталась в базисе, то для перевода их в свободные переменные необходимо применять специальные приемы.
В симплекс-таблице, соответствующей системе (8.44), после того как Fmin = 0, а все yi; — свободные, вычеркивают строку для Fmin и столбцы для уi. и решают задачу для исходной линейной формы Zmin
Рекомендуется вводить минимум искусственных переменных.
Пример 8.13. Решение задачи линейного программирования симплекс-методом. Для нахождения опорного плана использовать метод искусственных переменных.
Ограничения:
Целевая функция:
В базис можно выделить переменную x3. Введем две искусственные переменные — y1 и y2.
Составим симплекс – таблицу:
Свободные неиз-вестные
Базисные неизвестные | Свободный член | ||||
x3 | 1 | 3 | -5 | 2 | 0 |
y1 | 4 | -2 | 2 | -1 | |
y2 | 5 | -1 | 3 | -2 | 1 |
Zmin | 0 | -1 | -2 | 0 | 0 |
Fmin | 9 | -3 | 5 | -3 | 2 |
Наименьший положительный элемент в строке линейной формы Fmin = 2. Разрешающий элемент находится на пересечении столбца переменной x5 и строки переменной y1.
Заполним следующую симплекс – таблицу:
Свободные неиз-вестные
Базисные неизвестные | Свободный член | y1 | |||
x3 | 1 | 3 | -5 | 2 | 0 |
x5 | 4 | -2 | 2 | -1 | 1 |
y2 | 1 | 1 | -1 | -1 | |
Zmin | 0 | -1 | -2 | 0 | 0 |
Fmin | 1 | 3 | 1 | -1 | -2 |
Наименьший положительный элемент в строке линейной формы Fmin = 1. Минимальное симплекс – отношение соответствует строке переменной y2.
Заполним новую симплекс – таблицу:
Свободные неиз-вестные
Базисные неизвестные | Свободный член | y2 | Y1 | ||
x3 | 6 | 8 | 5 | -3 | 5 |
x5 | 2 | -4 | -2 | 1 | 3 |
x2 | 1 | 1 | 1 | -1 | -1 |
Zmin | 2 | 1 | 2 | -2 | -1 |
Fmin | 0 | 0 | -1 | 0 | -1 |
Так как Fmin = 0, а у1 и у2 переведены в число свободных, переход к первому опорному решению завершен. Строку, соответствующую Fmin, и столбцы переменных у] и у2 вычеркиваем в последней таблице и переписываем ее в новом виде:
Свободные неиз-вестные
Базисные неизвестные | Свободный Член | ||
x3 | 6 | -3 | |
x5 | 2 | -4 | 1 |
x2 | 1 | 1 | -1 |
Zmin | 2 | 1 | -2 |
Решим задачу для исходной линейной формы Zmln. В последней таблице находим разрешающий элемент. Он равен 8. Выполняя действия согласно алгоритму симплекс-метода, получим следующую таблицу:
Свободные неиз-вестные
Базисные неизвестные | Свободный Член | X3 | x4 |
x1 | 6/8 | 1/8 | -3/8 |
x5 | 5 | 4/8 | -12/8 |
x2 | 2/8 | -1/8 | -5/8 |
Zmin | 10/8 | -1/8 | -13/8 |
В последней строке (Zmin) положительных элементов нет, следовательно, оптимальное решение найдено.
Значение целевой функции Zmin равно 10/8. Оптимальный план = (6/8; 2/8; 0; 0; 5).
Второй алгоритм отыскания опорного плана
Пусть задача линейного программирования записана в каноническом виде:
(8.46)
(8.47)
Построим первую таблицу Жордана – Гаусса для задач (8.46) и (8.47). Для единообразия вычислительной процедуры к исходной таблице приписываем строку целевой функции:
(8.48)
После приведения системы ограничений к единичному базису целевая функция, как и базисные переменные, будет выражена через свободные переменные. Аналогичным приемом мы пользовались, когда решали задачи графическим методом с числом переменных более двух.
Алгоритм метода следующий.
-
Запишем задачу в форме таблицы (8.48), при этом все элементы столбца свободных членов bi должны быть неотрицательны . Уравнения системы (8.46), в которых свободные члены отрицательны, предварительно нужно умножить на — 1.
-
Таблицу (8.48) преобразуем шагами Жордана— Гаусса исключений. При этом на каждом шаге разрешающим может быть выбран любой столбец, содержащий хотя бы один положительный элемент. Строка целевой функции на выбор разрешающих столбцов влияние не оказывает.
-
Разрешающая строка определяется по наименьшему из отношений свободных членов к положительным элементам разрешающего столбца.
-
В процессе преобразований вычеркиваем строки, состоящие из одних нулей.
-
Если в процессе преобразований встречается строка, все элементы которой нули, а свободный член отличен от нуля, то задача не имеет решения. Если встретится строка, в которой, кроме свободного члена, других положительных элементов нет, то говорят, что задача не имеет положительных решений.
Пояснение. В п.1 алгоритма предполагается, что все элементы столбца свободных членов неотрицательны. Это требование необязательно. В случае когда в столбце свободных членов встречаются отрицательные числа, будем пользоваться теоремой.
Теорема. Если разрешающий элемент выбирать по наименьшему положительному симплекс-отношению, то после шага Жордана—Гаусса свободный член в разрешающей строке становится положительным, а остальные члены сохраняют свой знак.
Выбор разрешающего элемента производят иначе, а именно.
-
Просматриваем строку, соответствующую какому-либо отрицательному свободному члену. Выбираем в ней какой-либо отрицательный элемент — соответствующий этому элементу столбец будет разрешающим.
-
Выбор разрешающего элемента производится по минимальному положительному симплекс-отношению. Если задача разрешима, то через конечное число шагов получают первое допустимое решение и можно применять симплекс-метод.
В некоторых случаях найденное таким образом первое допустимое решение является также и оптимальным решением.
Пример8.14. Определение опорного плана.
Дана следующая система:
(8.49)
(8.50)
Два свободных члена в системе ограничений отрицательны, поэтому перед тем, как записать задачу в виде таблицы (8.48), умножим соответствующие уравнения (8.49) на -1:
Запишем данную задачу в виде таблицы (8.48).
x1 | x2 | x3 | x4 | x5 | Свободный член |
|
-1 | -1 | 1 |
| 0 | 4 | 4 |
-1 | 2 | 1 | 0 | 1 | 7 | 10 |
2 | -1 | 0 | 1 | 1 | 7 | 10 |
3 | -1 | 0 | 0 | 0 | 5 | 7 |
Выберем произвольно столбец с положительным элементом. Затем по минимальному положительному отношению находим разрешающий элемент. В нашем примере он равен I и находится на пересечении столбца переменной х4 и первой строки (элемент отмечен квадратом). Выполняя преобразования Жордана-Гаусса, получим следующую таблицу:
x1 | x2 | x3 | x4 | x5 | Свободный член |
|
-1 | -1 | 1 | 1 | 0 | 4 | 4 |
-1 | 2 | 1 | 0 | 1 | 7 | 10 |
3 | 0 | -1 | 0 |
| 3 | 6 |
3 | -1 | 0 | 0 | 0 | 5 | 7 |
Выполняя в дальнейшем все действия алгоритма, получим ряд следующих аналогичных таблиц:
x1 | x2 | x3 | x4 | x5 | Свободный член |
|
-1 | -1 | 1 | 1 | 0 | 4 | 4 |
-4 | 2 |
| 0 | 0 | 4 | 4 |
3 | 0 | -1 | 0 | 1 | 3 | 6 |
3 | -1 | 0 | 0 | 0 | 5 | 7 |
x1 | x2 | x3 | x4 | x5 | Свободный член |
|
-1 | -2 | 0 | 1 | 0 | 2 | 2 |
-2 | 1 | 1 | 0 | 0 | 2 | 2 |
1 | 1 | 0 | 0 | 1 | 5 | 8 |
3 | -1 | 0 | 0 | 0 | 5 | 7 |
На данном этапе расчетов в последней таблице мы получили три нулевых столбца, что соответствует количеству ограничений в примере. Здесь необходимо закончить преобразования Жордана—Гаусса.
Запишем нашу задачу из последней таблицы так:
Получено первое допустимое решение, выделим его. Для этого положим х1, = 0; х2= 0, тогда = (0; 0; 2; 2; 5); Zmax = 5.
Задача решена.
- 8.2. Построение экономико-математических моделей задач линейного программирования
- 8.3. Графическое решение задачи линейного программирования
- 8.4. Анализ моделей на чувствительность
- 8.5. Симплекс – метод. Общая идея симплекс – метода
- 8.6. Методы нахождения опорного решения задачи линейного программирования
- 8.7. Экономическая интерпретация решения задачи линейного программирования
- 8.8. Двойственные задачи линейного программирования. Взаимодвойственные задачи
- 8.9. Экономико-математический анализ полученных оптимальных решений
- Итоговая таблица
- Задачи Построить математическую модель задачи линейного программирования (8.1 — 8.30).
- Решите задачи линейного программирования (8.31 — 8.60) графическим методом, проведите анализ на чувствительность.
- Задачи линейного программирования (8.61 – 8.90) решите симплекс-методом и проведите анализ моделей на чувствительность, сформулируйте двойственную задачу к исходной и решите её.
- 9. Транспортные задачи линейного программирования
- 9.1. Постановка задачи
- Исходные данные
- 9.2. Алгоритм метода потенциалов
- Исходные данные
- Начальный план перевозок
- Оптимальный план перевозок
- 9.3. Усложненные задачи транспортного типа
- Исходные данные
- Оптимальное решение
- Исходные данные
- Исходные данные
- Оптимальное решение
- 10. Математическое моделирование управления рынком
- 10.1. Общий подход к разработке аналитической математической модели управления рынком
- 10.2. Содержательная характеристика особенностей модели сэо
- 10. 3. Методы обоснования модели сэо
- 10.4. Основные компоненты модели
- 1.Оценивание требует:
- 2.Оценивание предполагает:
- 3.Оценивание позволяет:
- 11. Основы математического моделирования управления рынком (На примере управления рынком труда)
- 11.1 Механизмы регулирования занятости: понятие, теории и уровни его регулирования
- 11.2. О диалектических связях в развитии рынка труда и занятости сэо
- 11.3 Общий подход к формированию системы рынка труда и занятости населения
- 12. Алгоритмическое обеспечения управления системой рынка труда и занятости населения
- 12.1 Обоснование методологических основ деятельности администрации
- 12.2 Алгоритмическое обеспечение управления системой рынка труда и занятости
- 1.Оценивание требует:
- 2.Оценивание предполагает:
- 3.Оценивание позволяет:
- 12.3 Разработка алгоритма реализации модели поставки ресурсов на рынок труда в условиях воздействия разнородных факторов
- 12.4 Разработка алгоритма реализации комплексной модели информационно-управляющей системы рынка труда и занятости населения
- Приложение 1
- Приложение 2
- Литература
- Содержание
- В.Г. Бурлов математические методы моделирования в экономике