Лабораторная работа № 5
Цель работы: Освоить симплекс-метод решения задач ЛП.
Постановка задачи: решить задачу линейного программирования maxF=3x1+3x2 симплекс-методом при условиях x1-4x2≤4, 3x1+2x2≤6, -x1+x2≤1, x1+2x2≥2 (-x1+x2≤3, 4x1+3x2≤20)
Ход работы:
Сперва представим целевую функцию и ограничения модели в стандартной форме:
                    z-3x1-3x2                     =0         (целевая функция)
  
  | 
 
x1-4x2+s1 =4
3x1+ 2x2 +s2 =6
-x1+x2 +s3 =1
x1 +2x2 +s4 =2
Как отмечалось ранее, в качестве начального пробного решения используется решение системы уравнений, в которой две (6—4) переменные принимаются равными нулю. Это обеспечивает единственность и допустимость получаемого решения. В рассматриваемом случае очевидно, что подстановка x1=x2=0 сразу же приводит к следующему результату: s1=4, s2=6, s3=1, s4=2 (т.е. решению, соответствующему точке C на графике из предыдущей лабораторной). Полученные результаты удобно представить в виде таблицы 1.
Таблица 1. Исходная симплекс-таблица
| 
    Базисные переменные  | 
   
    Z  | 
   
    X1  | 
   
    X2  | 
   
    S1  | 
   
    S2  | 
   
    S3  | 
   
    S4  | 
   
    Решение b  | 
  
| 
   Z  | 
  
   1  | 
  
   -3  | 
  
   -3  | 
  
   0  | 
  
   0  | 
  
   0  | 
  
   0  | 
  
   0  | 
 
| 
   S1  | 
  
   0  | 
  
   1  | 
  
   -4  | 
  
   1  | 
  
   0  | 
  
   0  | 
  
   0  | 
  
   4  | 
 
| 
   S2  | 
  
   0  | 
  
   3  | 
  
   2  | 
  
   0  | 
  
   1  | 
  
   0  | 
  
   0  | 
  
   6  | 
 
| 
   S3  | 
  
   0  | 
  
   -1  | 
  
   1  | 
  
   0  | 
  
   0  | 
  
   1  | 
  
   0  | 
  
   1  | 
 
| 
   S4  | 
  
   0  | 
  
   1  | 
  
   2  | 
  
   0  | 
  
   0  | 
  
   0  | 
  
   1  | 
  
   2  | 
 
Анализируя z-уравнение, нетрудно заметить, что обе небазисные переменные x1 и x2, равные нулю, имеют отрицательные коэффициенты. Так как мы имеем дело с задачей максимизации, значение z может быть улучшено при увеличении как x1, так и x2 . Однако всегда выбирается переменная с большим абсолютным значением отрицательного коэффициента (в z-уравнении), так как в этом случае оптимум достигается быстрее. Применяя условие оптимальности к таблице 1, выберем в качестве переменной, включаемой в базис, переменную x1 . Переменная должна быть выбрана из совокупности базисных переменных s1, s2, s3, s4. Процедура выбора исключаемой переменной предполагает проверку условия допустимости, требующего, чтобы в качестве исключаемой переменной выбиралась та из переменных текущего базиса, которая первой обращается в нуль при увеличении включаемой переменной x2 вплоть до значения, соответствующего смежной экстремальной точке. Симплекс-таблица 2, получаемая после проверки условия допустимости (т. е. после вычисления соответствующих отношений и определения исключаемой переменной) приведена ниже.
Таблица 2. Определение ведущего элемента
| 
   Базисные переменные  | 
  
   X1  | 
  
   X2  | 
  
   S1  | 
  
   S2  | 
  
   S3  | 
  
   S4  | 
  
   Решение b  | 
  
   Отношения  | 
 
| 
   z  | 
  
   -3  | 
  
   -3  | 
  
   0  | 
  
   0  | 
  
   0  | 
  
   0  | 
  
   0  | 
  
   0  | 
 
| 
   S1  | 
  
   1  | 
  
   -4  | 
  
   1  | 
  
   0  | 
  
   0  | 
  
   0  | 
  
   4  | 
  
   4/1  | 
 
| 
   S2  | 
  
   3  | 
  
   2  | 
  
   3  | 
  
   1  | 
  
   0  | 
  
   0  | 
  
   6  | 
  
   6/2  | 
 
| 
   S3  | 
  
   -1  | 
  
   1  | 
  
   0  | 
  
   0  | 
  
   1  | 
  
   0  | 
  
   1  | 
  
   1/1  | 
 
| 
   S4  | 
  
   1  | 
  
   1  | 
  
   0  | 
  
   0  | 
  
   0  | 
  
   1  | 
  
   2  | 
  
   8/2  | 
 
Из таблицы видно что строка S2 является ведущей, а столбец X1 является ведущим столбцом, из этого следует, что 3 это ведущий элемент.
После того как определены включаемая и исключаемая переменные (с использованием условий оптимальности и допустимости), следующая итерация (поиск нового базисного решения) осуществляется методом исключения переменных, илиметодом Гаусса — Жордана.
Процессизменения базиса включает вычислительные процедуры двух типов.
Тип 1 (формирование ведущего уравнения).
Новая ведущая строка = Предыдущая ведущая строка/ Ведущий элемент
Тип 2 (формирование всех остальных уравнений, включая z-уравнение).
Новое уравнение = Предыдущее уравнение—
![]()
          Коэффициент
ведущего столбца
— предыдущего (Новая ведущая строка).
уравнения
Процедура 1 приводит к следующим изменениям исходной симплекс-таблицы (таблица 3).
Таблица 3. Новая ведущая строка.
| 
   Базисные переменные  | 
  
   X1  | 
  
   X2  | 
  
   S1  | 
  
   S2  | 
  
   S3  | 
  
   S4  | 
  
   Решение b  | 
 
| 
   Z  | 
  |||||||
| 
   S1  | 
  |||||||
| 
   X1  | 
  
   1  | 
  
   2/3  | 
  
   0  | 
  
   1/3  | 
  
   0  | 
  
   0  | 
  
   6/2=3  | 
 
| 
   S3  | 
  |||||||
| 
   S4  | 
  
Чтобы составить новую симплекс-таблицу, выполним необходимые вычислительные процедуры типа 2.
1. z-уравнение.
Предыдущее z-уравнение: (-3 -3 0 0 0 0 0 )
-(-3) × Новая ведущая строка: ( 3 2 0 1 0 0 9 )
=Новое z-уравнение: ( 0 -1 0 1 0 0 9 )
2. s1-уравнение
Предыдущее s1-уравнение: (1 -4 1 0 0 0 4)
-(1) × Новая ведущая строка: (-1 -2/3 0 -1/3 0 0 -3)
= Новое s1-уравнение: (0 -14/3 1 -1/3 0 0 1)
3. s3-уравнение.
Предыдущее s3-уравнение: (-1 1 0 0 1 0 1)
-(-1) × Новая ведущая строка: (1 2/3 0 1/3 0 0 3)
= Новое s3-уравнение: (0 5/3 0 1/3 1 0 4)
4. s4-уравнение.
Предыдущее s3-уравнение: (1 1 0 0 0 1 2)
-(1) × Новая ведущая строка: (-1 -2/3 0 -1/3 0 0 -3)
= Новое s3-уравнение: (0 1/3 0 -1/3 0 1 -1)
Результат вычислений с помощью рассмотренных операций представлен в таблице 4.
Таблица 4. Промежуточное решение.
| 
   Базисные переменные  | 
  
   X1  | 
  
   X2  | 
  
   S1  | 
  
   S2  | 
  
   S3  | 
  
   S4  | 
  
   Реше- ние b  | 
  
   Отно-шения  | 
 
| 
   Z  | 
  
   0  | 
  
   -1  | 
  
   0  | 
  
   1  | 
  
   0  | 
  
   0  | 
  
   12  | 
  |
| 
   S1  | 
  
   0  | 
  
   -14/3  | 
  
   1  | 
  
   -1/3  | 
  
   0  | 
  
   0  | 
  
   1  | 
  
   1/(-14/3)  | 
 
| 
   X1  | 
  
   1  | 
  
   2/3  | 
  
   0  | 
  
   1/3  | 
  
   0  | 
  
   0  | 
  
   3  | 
  
   3/(2/3)  | 
 
| 
   S3  | 
  
   0  | 
  
   5/3  | 
  
   0  | 
  
   1/3  | 
  
   1  | 
  
   0  | 
  
   4  | 
  
   4/(5/3)  | 
 
| 
   S4  | 
  
   0  | 
  
   1/3  | 
  
   0  | 
  
   -1/3  | 
  
   0  | 
  
   1  | 
  
   -1  | 
  
   -1/(1/3)  | 
 
В новом решении x2=1 и x1=0 (точка A на рисунке предыдущей лабараторной). Из таблицы 4 следует, что на очередной итерации в соответствии с условием оптимальности в качестве вводимой переменной следует выбрать x2, так как коэффициент при этой переменной в z-уравнении равен -1. Исходя из условия допустимости, определяем, что исключаемой переменной будет s1. Отношения, фигурирующие в правой части таблицы 4, показывают, что в новом базисном решении значение включаемой переменной x2 будет равно -3/14. Оптимальное решение представлено в симплекс-таблице 5 (результирующие значения были найдены по аналогии с предыдущей таблицей).
Таблица 5. Оптимальное решение.
| 
   Базисные переменные  | 
  
   X1  | 
  
   X2  | 
  
   S1  | 
  
   S2  | 
  
   S3  | 
  
   S4  | 
  
   Решение b  | 
 
| 
   Z  | 
  
   0  | 
  
   1  | 
  
   -3/14  | 
  
   1/14  | 
  
   0  | 
  
   0  | 
  
   3/14  | 
 
| 
   X2  | 
  
   0  | 
  
   0  | 
  
   3/14  | 
  
   15/14  | 
  
   0  | 
  
   0  | 
  
   3  | 
 
| 
   X1  | 
  
   1  | 
  
   0  | 
  
   1/7  | 
  
   -0,43  | 
  
   0  | 
  
   0  | 
  
   1,3  | 
 
| 
   S3  | 
  
   0  | 
  
   0  | 
  
   0,12  | 
  
   10,7  | 
  
   0  | 
  
   0  | 
  
   4,2  | 
 
| 
   S4  | 
  
   0  | 
  
   0  | 
  
   9/14  | 
  
   -0,54  | 
  
   0  | 
  
   0  | 
  
   5/14  | 
 
В новом базисном решении x1=1,3 и x2=3 (точка В на рисунке
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.