- •На заседании кафедры автоматизированных систем обработки информации и управления Протокол № 1 от 29.08.2012
- •Содержание
- •1. Формы злп
- •2. Эквивалентность различных форм злп
- •Упражнения
- •3. Основные свойства злп
- •4. Идея симплекс – метода
- •5. Преобразованная задача
- •6. Способ перехода от одного дбр к другому
- •7. Условие оптимальности дбр
- •8. Схема симплекс-метода
- •Базисные переменные
- •9. Табличный симплекс-метод
- •9.1. Схема табличного симплекс-метода
- •10. Примеры реализации табличного симплекс-метода
- •Контрольные вопросы
- •11. Искусственное начальное решение
- •11.2. Двухэтапный метод
- •Пример 11.2.
- •Этап 1.
- •12. Вырожденность
- •12.1 Вырожденное оптимальное решение
- •12.2. Промежуточное вырожденное решение
- •12.3. Особые случаи, возникающие при применении двухэтапного мтода
- •Пример 12.3 (Вырожденность).
- •Пример 12.4 (Наличие избыточных ограничений, которые есть линейной комбинацией других ограничений.)
- •Контрольные вопросы
- •13. Альтернативные оптимальные решения
- •14. Неограниченность пространства решений и целевой функции
- •Контрольные вопросы
- •15. Отсутствие допустимых решений
- •16.Задания для контрольной работы
- •Список литературы
Контрольные вопросы
Предположим, что при использовании симплекс-метода в задаче на отыскание максимума в качестве включаемой в базис переменной выбирается любая из небазисных переменных, имеющих отрицательный коэффициент в z-уравнении. Приведут ли в этом случае итерации симплекс-метода к получению оптимального решения?
Пользуясь графическим представлением пространства решений ЗЛП (см. рисунок 1), определить, сколько потребуется итераций для нахождения оптимального решения (точка E), если в исходной симплекс-таблице в качестве вводимой в базис переменной будет выбрана x1.
Используя таблицу 10, содержащую оптимальное решение задачи, определите исключаемую переменную и соответствующее изменение величины z, если в качестве новой базисной переменной будет выбрана:
3.1) переменная s3,
3.2) переменная s4.
Какой вывод следует из результатов вопроса в)?
На рисунке 2 показано пространство допустимых решений трёхмерной задачи ЛП с вершинами A, B, … , J.
5.1) Являются ли следующие пары вершин смежными: (A, B), (B, D), (E, H), (A, I)?
5.2) Предположим, что реализация симплекс-метода начинается в точке A и заканчивается в точке оптимума H. Определите, какие из следующих последовательностей вершин могут привести к точке оптимума. Обоснуйте свой вывод.
ABGH.
AEIH.
ACEBADH.
x3
D G
J
H
F
B
A
I
x1
C E
Рисунок 2
6. Пусть в задаче ЛП, которой соответствует пространство допустимых решений, показанное на рис.2, все ограничения являются неравенствами типа “≤”, а все исходные переменные задачи (т.е. x1, x2 и x3) неотрицательны. Обозначим через s1, s2, s3 и s4 дополнительные (неотрицательные) переменные, ассоциируемые с ограничениями, представленными плоскостями CEIJF, BEIHG, DFJHG и IJH соответственно. Определите базисные и небазисные переменные для каждой вершины пространства допустимых решений.
7. Пусть в задаче ЛП, для которой пространство допустимых решений представлено на рис. 2, реализация симплекс-метода начинается в точке A. Определите вводимую переменную на первой итерации симплекс-метода, а также её значение и значение целевой функции, если целевая функция имеет следующий вид:
Максимизировать z = x1 – 2x2 + 3x3.
Максимизировать z = 5x1 + 2x2 + 4x3.
Максимизировать z = -2x1 + 7x2 + 2x3.
Максимизировать z = x1 + x2 + x3.
11. Искусственное начальное решение
В рассмотренной ранее вычислительной схеме симплекс-метода для получения начального базисного решения использовались остаточные переменные. Однако, когда исходное ограничение записано в виде "=" или имеет знак "≥", нельзя сразу же получить допустимое начальное базисное решение. Покажем это на примере.
Пример 11.1
Запишем в канонической форме:
Таким образом, имеем 3 уравнения, содержащих 4 неизвестных. Это означает, что каждому базисному решению соответствует одна небазисная переменная (равная нулю). В отличие от случая, когда каждое уравнение содержит остаточную переменную, в данной ситуации уже нельзя быть уверенным в том, что при нулевом значении одной из переменных все базисные переменные будут неотрицательными. При выборе переменной, которой следует придать нулевое значение, можно использовать метод проб и ошибок.
Однако этот метод требует дополнительных затрат времени и неудобен для выполнения расчетов на ЭВМ. Поэтому применяется более рациональный способ нахождения начального допустимого базисного решения.
Идея использования искусственных переменных достаточно проста. Она предполагает включение неотрицательных переменных в левую часть каждого из уравнений, не содержащих “очевидных” начальных базисных переменных (т.е. тех переменных, которые входят только в одно уравнение с положительным коэффициентом, а в симплекс-таблице им соответствуют единичные столбцы [0 0 1 0 … 0]T).
Обеспечивая получение начального базиса, эти дополнительно вводимые переменные выполняют, по существу, ту же роль, что и остаточные переменные. Однако, поскольку такие искусственные переменные не имеют отношения к содержанию поставленной задачи (отсюда и их название “искусственные”), их введение допустимо только в том случае, если соответствующая схема вычислений будет обеспечивать получение оптимального решения, в котором все искусственные переменные окажутся равными нулю.
Для построения требуемой схемы вычислений можно применить следующий прием: наложить “штраф” за использование искусственных переменных, вводимых в целевую функцию. Разработаны два тесно связанных между собой метода получения стартовой точки, в которых используются “штрафование” искусственных переменных:
1) М-метод (или метод больших штрафов);
2) двухэтапный метод.
11.1. М - метод
Вернемся к введенной в примере 11.1 линейной модели.
В первом и во втором уравнениях нет переменных, выполняющих роль остаточных. Поэтому введем в каждое из уравнений по одной искусственной переменной, обозначив их через R1 и R2:
За использование этих переменных в составе целевой функции можно ввести штраф, приписывая им достаточно большой положительный коэффициент М. Такой способ введения искусственных переменных R1 и R2 приводит к следующей линейной модели:
Логика использования искусственных переменных: имеем m=3 уравнения, n=6 неизвестных. Следовательно, базисное решение должно включать n-m= =6-3=3 нулевые переменные. Если положить равными нулю переменные x1, x2 и x3, то сразу же будет получено требуемое начальное допустимое решение: R1=3, R2=6, x4=4.
Рассмотрим теперь, каким образом “новая” структура модели автоматически приводит к тому, что на конечной стадии процесса оптимизации переменные и принимают нулевое значение. Так как мы имеем дело с задачей на отыскание минимума, а переменным R1 и R2 в целевой функции приписан большой по величине коэффициент М, то метод оптимизации, направленный на нахождение минимального значения z, приведет к тому, что переменные R1 и R2 в оптимальном решении обратятся в ноль. Заметим:
Все промежуточные итерации, предшествующие получению оптимума, не имеют значения с точки зрения окончательного результата. Поэтому неважно, фигурирует ли на этих итерациях положительные искусственные переменные.
Если целевая функция подлежит максимизации: приписываем искусственным переменным в целевой функции достаточно большой по абсолютной величине отрицательный коэффициент –М (М>0), что обусловит недопустимость положительных значений искусственных в оптимальном решении.
После получения допустимого начального решения нужно так “переформулировать” условия задачи, чтобы можно было представить процесс решения в удобной табличной форме. Для этого необходимо, чтобы начальное решение в явном виде фигурировало в столбце, характеризующем правые части всех уравнений модели. Этого можно добиться, подставляя в целевую функцию полученные из соответствующих ограничений выражения для искусственных переменных:
В результате
При этом z-уравнение в симплекс-таблице будет иметь вид:
,
.
Таким образом, стартовой точке, в которой x1=x2=x3=0, соответствует значение z=9M, как и должно быть при R1=3, R2=6.
Построим симплекс-таблицу (таблица 11).
Так как целевая функция минимизируется, переменные, включаемые в базис, должны иметь наибольшие положительные коэффициенты в z-уравнении. Оптимум достигается на той итерации, где все небазисные переменные имеют неположительные коэффициенты в z-уравнении (М – положительный коэффициент, значение которого принимается очень большим).
Итерация 0 (начало вычислений).
Таблица 11
БП |
x1 |
x2 |
x3 |
R1 |
R2 |
x4 |
Решение |
z |
- 4+7M |
-1+4M |
-M |
0 |
0 |
0 |
9M |
R1 |
3 |
1 |
0 |
1 |
0 |
0 |
3 |
R2 |
4 |
3 |
-1 |
0 |
1 |
0 |
6 |
x4 |
1 |
2 |
0 |
0 |
0 |
1 |
4 |
Согласно условию оптимальности переменная x1 вводится в базис. Согласно условию допустимости переменная R1 выводится из базиса. Получаем таблицу 12.
Итерация 1.
Таблица 12
БП |
x1 |
x2 |
x3 |
R1 |
R2 |
x4 |
Решение |
z |
0 |
(1+5M)/3 |
-M |
(4-7M)/3 |
0 |
0 |
4+2M |
x1 |
1 |
1/3 |
0 |
1/3 |
0 |
0 |
1 |
R2 |
0 |
5/3 |
-1 |
-4/3 |
1 |
0 |
2 |
x4 |
0 |
5/3 |
0 |
-1/3 |
0 |
1 |
3 |
Согласно условию оптимальности переменная x2 вводится в базис. Согласно условию допустимости переменная R2 выводится из базиса. Получаем таблицу 13.
Итерация 2.
Таблица 13
БП |
x1 |
x2 |
x3 |
R1 |
R2 |
x4 |
Решение |
z |
0 |
0 |
1/5 |
8/5-M |
-1/5-M |
0 |
18/5 |
x1 |
1 |
0 |
1/5 |
3/5 |
-1/5 |
0 |
3/5 |
x2 |
0 |
1 |
-3/5 |
-4/5 |
3/5 |
0 |
6/5 |
x4 |
0 |
0 |
1 |
1 |
-1 |
1 |
1 |
Согласно условию оптимальности переменная x3 вводится в базис. Согласно условию допустимости переменная x4 выводится из базиса. Получаем таблицу 14.
Итерация 3.
Таблица 14
БП |
x1 |
x2 |
x3 |
R1 |
R2 |
x4 |
Решение |
z |
0 |
0 |
0 |
7/5-M |
-M |
-1/5 |
17/5 |
x1 |
1 |
0 |
0 |
2/5 |
0 |
-1/5 |
2/5 |
x2 |
0 |
1 |
0 |
-1/5 |
0 |
3/5 |
9/5 |
x3 |
0 |
0 |
1 |
1 |
-1 |
1 |
1 |
Согласно условию оптимальности данное решение является оптимальным.
