Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР 5. Задания со стр.52.doc
Скачиваний:
35
Добавлен:
02.04.2015
Размер:
1.93 Mб
Скачать

1.2.2. Основная идея симплекс-метода

Если ранг матрицы Асистемы (1.1) и ранг расширенной матрицысистемы равенr(r£m), тоr переменных могут быть выражены через остальные переменные:

(1.25)

Переменные (неизвестные)          называютсябазисными, а весь набор () –базисом, остальные переменные называютсясвободными. Система ограничений (1.25) называетсясистемой приведенной к единичному базису.

Отметим важнейшие условия наличия единичного базиса:

  • от каждого уравнения в него входит одна и только одна неизвестная;

  • каждая переменная из этого набора входит с коэффициентом +1 и отсутствует в остальных уравнениях;

  • все значения ,

Подставляя в линейную форму F(1.3) вместо базисных переменных их выражения через свободные переменные из системы (1.25), получим:

(1.26)

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

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

Решение симплекс-методом заканчивается, когда среди опорных решений будет найдено такое, которое обеспечивает максимум линейной формы (1.3). Такое решение называется оптимальным.

1.2.3. Реализация симплекс-метода (простейший случай)

Рассмотрим идею симплекс-метода на конкретном примере:

(1.27)

(1.28)

(1.29)

Решение

Данная система уравнений совместна, так как ранги матрицы системы

и расширенной матрицы

совпадают и равны 3. Следовательно, три переменные (базисные) можно линейно выразить через две свободные переменные. Выразим, например,x1, x2иx3 черезx4иx5, т.е. приведем систему к единичному базису:

(1.30)

Линейная форма уже выражена черезx4иx5.

При x4=0 иx5=0, найдем значения базисных переменныхx1=1, x2=2 иx3=3.

Таким образом, первое допустимое решение имеет вид x1=1, x2=2 ,x3=3, x4 =0 , x5=0 или (1,2,3,0,0). При найденном допустимом решении линейная формаFимеет значение 0, т.е.F1=0.

Теперь попытаемся увеличить значение F:

  • увеличение x4уменьшитF, так как передx4стоит отрицательный коэффициент, а увеличениеx5даст увеличение;

  • будем увеличивать x5 таким образом, чтобы одна из базисных переменных (x1 или x2 илиx3) обратилась в ноль, а остальные базисные переменные оставались бы неотрицательными.

Анализируя первое уравнение системы (1.30), приходим к выводу, что x5 можно увеличить неограниченно. При этомx1 остается положительным и никогда не обратиться в ноль. Из второго уравнения системы (1.30) следует, чтоx5 можно увеличить до 2 (больше увеличивать нельзя, т.к.x2станет отрицательным). Из третьего уравнения системы (1.24) следует, чтоx5 можно увеличить до 3. Принимая во внимание приведенный анализ, приходим к выводу, чтоx5=2.

Таким образом, получим второе допустимое решение x1=5, x2=0 , x3=1, x4 =0 , x5=2 или (5,0,1,0,2).

Значение линейной формы Fпри этом допустимом решении равноF2=2, т.е. значение целевой функции увеличилось.

Примем за свободные переменные x2иx4., т.е. те переменные, которые в этом решении равны0. С этой целью из второго уравнения системы (1.27) выразимx5 .

Получим. Тогда

(1.31)

Для увеличения значения Fбудем увеличиватьx4.Проведя аналогичный анализ системы (1.31), заключаем, чтоx4 можно увеличить до 1/5 (следует из рассмотрения второго уравнения системы (1.31)). Таким образом, получим третье допустимое решениеx1=28/5, x2=0, x3=0, x4=1/5, x5=12/5 или (28/5, 0, 0, 1/5, 12/5). Значение линейной формыFпри этом допустимом решении равноF3=11/5, т.е. значение целевой функции увеличилось.

(1.32)

               

Так как в последней линейной форме обе свободные переменные входят с отрицательными коэффициентами, то наибольшее значение достигается при x2=0 ,x3=0.

Из этого следует, что решение (28/5, 0, 0, 1/5, 12/5) является оптимальным и Fmax=11/5.

Для того, чтобы упростить трудоемкие операции по пересчету коэффициентов и перезаписи системы ограничений, можно выполнять преобразования специальной симплекс-таблицы.

Симплексные таблицы

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

(1.33)

(1.34)

                    

В виде таблицы (табл.1.1) эти данные можно представить так:

Таблица 1.1

Базисные переменные

Свободные члены

1

0

0

0

0

0

0

1

0

….

0

0

1

F

0

0

0

Заметим, что в строку с целевой функцией коэффициенты записываются с противоположным знаком .

Каждой итерации соответствует преобразование симплексной таблицы, в результате которого получается новое базисное решение, которому соответствует первый столбец.

Правила преобразования симплексной таблицы.

1. Выбирают разрешающийстолбец из условия и хотя бы один элемент.

2. Выбирают qразрешающуюстроку из условия

Элемент , стоящий на пересечении разрешающего (с индексомp) столбца и разрешающей (с индексомq) строки, называетсяразрешающим элементом.

3. В состав базисных переменных вводят переменную , которую записывают в строку с номеромq.

4. Производят пересчет элементов разрешающей q-й строки по формуле

В результате преобразования получают единицу на месте разрешающего элемента.

5. Вычисляют элементы всех остальных строк (при kp) по формуле:

Строке с номером r+1 соответствует строка целевой функции, столбцу с номеромn+1 соответствует столбец свободных членов.

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

6. Далее анализируем полученную таблицу. Если решение получено или выяснено, что его нет, процесс решения закончен. Иначе переходим к пункту 1.

Анализ базируется на основной теореме симплекс-метода.

Теорема.

Если после выполнения очередной итерации (преобразования):

  1. найдется хотя бы один отрицательный коэффициент , и в каждом столбце с таким коэффициентом окажется хотя бы один положительный элемент, то можно улучшить решение, выполнив следующую итерацию;

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

  3. все коэффициенты окажутся неотрицательными, то оптимальное решение достигнуто.

Рассмотрим решение той же задачи (1.27) - (1.29) с помощью симплекс-таблиц.

Исходная симплекс-таблица, определяемая соотношениями (1.27) - (1.29) показана на рис. 1.5.

Базисные

переменные

x1

x2

x3

x4

x5

Свободные

члены

x1

1

0

0

1

-2

1

x2

0

1

0

-2

1

2

x3

0

0

1

3

1

3

F

0

0

0

1

-1

0

Рис.1.5. Исходная симплекс таблица

Заметим, что целевая функция в данном примере может быть записана в виде , что соответствует виду (1.34). В качестве разрешающего столбца выберем столбец, соответствующийx5 , поскольку в нем в строке с целевой функцией стоит отрицательный элемент (– 1).

Для определения разрешающей строки заполним вспомогательный столбец (рис. 1.6).

Первая клетка в этом столбце оставлена пустой, поскольку в соответствующей клетке столбца x5 стоит отрицательный элемент (– 2).

Из этого столбца выбираем минимальное значение min{2;3}=2; это значение стоит во второй строке, поэтому берем её в качестве разрешающей.

Базисные переменные

x1

x2

x3

x4

x5

Свобод-ные члены

Вспомога-тельный

x1

1

0

0

1

-2

1

x2

0

1

0

-2

1

2

2/1=2

x3

0

0

1

3

1

3

3/1=3

F

0

0

0

1

-1

0

Рис.1.6. Выбор разрешающего столбца и разрешающей строки (они выделены) для первой итерации

Выполним преобразования указанные в п.п.4–5 для табл. 1.1. Результат приведен на рис. 1.7. Значение целевой функции F=2.

Базисные переменные

x1

x2

x3

x4

x5

Свободные члены

x1

1

2

0

-3

0

5

x5

0

1

0

-2

1

2

x3

0

-1

1

5

0

1

F

0

1

0

-1

0

2

Рис.1.7. Симплекс таблица после первой итерации

Поскольку в строке, соответствующей целевой функции, имеется отрицательный элемент –1 (столбец x4), необходимо выполнить еще одну итерацию.

Для определения разрешающей строки (разрешающий столбец уже очевиден - x4) заполним таблицу (рис.1.8.):

Базисные

переменные

x1

x2

x3

x4

x5

Свободные

члены

Вспомогательный

x1

1

2

0

-3

0

5

x5

0

1

0

-2

1

2

x3

0

-1

1

5

0

1

1/5

F

0

1

0

-1

0

2

Рис.1.8. Выбор разрешающего столбца и разрешающей строки для второй итерации

Выбор разрешающей строки свелся к выбору из одной строки, поскольку только в строке x3 стоит положительный элемент. Выполним преобразования указанные в п.п.4–5 для таблицы (рис. 1.7), результат – в таблице на рис. 1.9.

Базисные

переменные

x1

x2

x3

x4

x5

Свободные

члены

x1

1

7/5

3/5

0

0

28/5

x5

0

3/5

2/5

0

1

12/5

x4

0

-1/5

1/5

1

0

1/5

F

0

4/5

1/5

0

0

11/5

Рис. 1.9. Симплекс таблица после второй итерации

В строке, соответствующей целевой функции, нет отрицательных элементов, следовательно, получено оптимальное решение (28/5,0,0, 1/5, 12/5) и Fmax=11/5. Заметим, что решения совпали.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]