Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Практическое занятие №3




«Решение задач симплекс – методом»

Цель: научиться решать задачи симплекс - методом.

Задача: решить задачу согласно своему варианту.

Ход роботы:

 

Рассмотрим простой пример решения задачи с помощью симплекс-метода для запоминания последовательности действий.

Задача 1: Некая компания производит большие и маленькие скамейки. Каждая скамейка должна быть построена и отполирована. На стройку маленькой скамейки уходит 2 часа, на полировку 3 часа. На постройку большой уходит 4 часа, на полировку 3 часа. Строительных цех работает 100 часов в неделю, а полировочный – 90 часов. Прибыль, получаемая с маленькой скамейки, составляет 5$, а с большой - 7$. Сколько скамеек каждого вида должна производить компания для максимизации прибыли?

Пусть фирма производит х маленьких и y больших скамеек. Тогда для решение задачи необходимо найти x и y, что:

5x+7y=>max

2x+4y<=100

3x+3y<=90

x, y >=0 (А.39)

Введем переменные S1, S2>=0, тогда задача примет канонический вид:

5x+7y+0S1+0S2=>max

2x+4y+1S1+0S2=100

3x+3y+0S1+1S2=90

x,y S1, S1 >=0 (А.40)

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

 

Таблица А.2 - Решение задачи 1

 

Cj         R
CB x y S1 S2  
           
           
Zj          
Cj – Zj          
  0,5   0,25    
  1,5   -0,75    
Zj 3,5   1,75    
Cj – Zj 1,5   -1,75    
      0,5 -1/3  
      -0,5 2/3  
Zj          
Cj – Zj     -1 -1  

 

 

Рассмотрим пошаговое решение задачи.

 

1 шаг. В строке Cj выписываем коэффициенты целевой функции при переменных x,y, S1, S2. В строках 1,2 – коэффициенты при соответствующих переменных из уравнений ограничений RHS(столбец right hand side), в строках 1, 2 пишем числа 100 и 90 из правой части неравенств ограничений. Переменные, образующие единичную матрицу будем называть базисным, в данном случае S1 и S2.

2 шаг.Заполняем столбец CB строки 1, 2 коэффициентами целевой функции при базисных переменных, то есть 0 при S1 в строке 1(перечисление строки 1и столбца S1) и 0 при S2 в строке 2.

3 шаг. Заполняем строку 3 (Zj) путем перемножения каждого элемента столбца CB на соответствующие элементы строк 1,2 и сложением. То есть первый элемент строки Zj получается как: 0*2+0*3=0. В данном случае все элементы строки получаются равными 0. Аналогично получается 0 в столбце RHS.

4 шаг. Строка 4 (Cj – Zj) получается почленным вычитанием элементов строки 3 (Zj) из элементов строки Cj (всегда из верхней строки на всех шагах).

5 шаг. Ищем в строке 4 (Cj – Zj) максимальный строгоположительный элемент. Ему соответствует ведущий столбец. В данном случае, в строке 4 выбираем элемент 7, следовательно, ведущим будет столбец y (строки 1,2).

6 шаг. Ищем в ведущем столбце минимально положительное число из формулы (RHS/ведущий столбец). То есть, в данном случае, выбираем между 100/4=25 и 90/3=30. Найдя такое число, определяем ведущую строку, у меня строка 1. Пересечение ведущих столбца и строки дает нам ведущий элемент, в моем случае 4.

7 шаг. Формируем строки 5,6 путем деления ведущих строки на ведущий элемент и формирования единичного столбца на месте ведущего. Не забываем RHS. Далее следуем на шаг 2.

Итерация продолжается до тех пор, пока в строке (Cj – Zj) не останется положительных элементов (в случае, что оптимальное решение задачи существует).

Тогда в строке Zj (у нас строка 11) в RHS – столбце получаем значение целевой функции в оптимальной точке (x,y)=(10,20). Значения 10 и 20 получаем из RHS в строках 9, 10.

Задача 2. Рассмотрим более общий случай:

1 + 15х2 + 12х3 + 2х4 -> min

2 + 3х3 + х4 >= 1

х1 + 3х2 + х3 - х4 >= 0

х1, х2, х3, х4 >=0 (А.41)

 

Приведем задачу в следующий вид:

-4х1 - 15х2 - 12х3 - 2х4 -> max

-2х2 - 3х3 - х4 <= -1

1 - 3х2 - х3 + х4 <= 0

х1, х2, х3, х4 >=0 (А.42)

Введем переменные S1, S2 >= 0, тогда задача примет стандартный (канонический) вид:

-4х1 - 15х2 - 12х3 - 2х4 -> max

1 - 2х2 - 3х3 - х4 + 1S1 + 0S2 = -1

1 - 3х2 - х3 + х4 + 0S1 + 1S2 = 0

х1, х2, х3, х4, S1, S2 >=0 (А.43)

 

Теперь необходимо составить симплекс – таблицу А.3.

 

Таблица А.3 - Решение задачи 2

 

Cj -4,00 -15,00 -12,00 -2,00     R
CB х1 х2 х3 х4 S1 S2  
  0,00 -2,00 -3,00 -1,00 1,00   -1,00
  1,00 -3,00 -1,00 -1,00 0,00 1,00 0,00
Zj 0,00 0,00 0,00 0,00 0,00 0,00 0,00
Cj – Zj -4,00 -15,00 -12,00 -2,00 0,00 0,00  
0,00 0,00 0,67   0,33 -0,33 0,00 0,33
-1,00 -1,00 -2,33 0,00 1,33 -0,33 1,00 0,33
Zj 0,00 -8,00 -12,00 -4,00 4,00 0,00 -4,00
Cj – Zj -4,00 -7,00 0,00 2,00 -4,00 0,00  
-12,00 0,25 1,25 1,00 0,00 -0,25 -0,25 0,25
-2 -0,75 -1,75 0,00 1,00 -0,25 0,75 0,25
Zj -1,5 -11,51 -12,00 -1,99 3,5 1,5 -3,5
Cj – Zj -2,5 -3,49 0,00 -0,01 -3,5 -1,5  

 

 

Рассмотрим пошаговое решение данной задачи.

 

1 шаг. В строке Cj выписываем коэффициенты целевой функции при переменных х1, х2, х3, х4, S1, S2. В строках 1,2 - коэффициенты при соответствующих переменных из уравнений ограничений. В столбце RHS, в строках 1, 2 пишем числа -1 и 0 из правой части уравнений ограничений. Переменные, образующие единичную матрицу (выделена бежевым) будем называть базисными, в данном случае S1 и S2.

2 шаг. Заполняем столбец CB строки 1, 2 коэффициентами целевой функции при базисных переменных, то есть 0 при S1 в строке 1 (пересечение строки 1 и столбца S1) и 0 при S2 в строке 2.

3 шаг. Заполняем строку 3 (Zj) путем перемножения каждого элемента столбца CB на соответствующие элементы строк 1, 2 и сложением. То есть первый элемент строки Zj получается как: 0*0 + 0*(-1) = 0. Второй как 0*(-2)+0*(-3). В данном случае все элементы строки получаются равными 0. Аналогично получается 0 в столбце RHS.

4 шаг. Строка 4 (Cj – Zj) получается почленным вычитанием элементов строки 3 (Zj) из элементов строки Cj (всегда из верхней строки на всех шагах).

5 шаг. Смотрим на элементы RHS выше строки Zj (у нас на строки 1 и 2). Если все элементы RHS неотрицательные, то идем на шаг 5". Если есть хоть один отрицательный элемент, идем на шаг 5'.

5' шаг. В каждой строке 1 и 2 вычисляем соотношения RHS/x, где x пробегает значения той же строки, что и RHS, столбцы x1, x2, x3, x4, S1, S2. Мы ищем минимальный строгоположительный элемент среди получившихся чисел (то есть мы можем вычислять RHS/x только для х того же знака, что и RHS). В нашем случае:

Строка 1:

- столбец х2: (-1)/(-2)=0,5;

- столбец x3: (-1)/(-3)=0,3333(3);

- столбец x4: (-1)/(-1)=1;

Строка 2 - все соотношения равны нулю. Минимальный строгоположительный элемент получился в столбце x3. Этот элемент назовем ведущим, у нас - 3. В таблице он выделен зеленым цветом. Строка и столбец содержащие этот элемент называются ведущими.

Идем на шаг 7.

7 шаг. Формируем строки 5 и 6 путем деления ведущей строки на ведущий элемент и формирования единичного столбца на месте ведущего. Не забываем RHS.

Сделаем совместно еще одну итерацию. На предыдущем шаге мы заполнили строки 5, 6. Далее выполняем последовательно шаг 2, шаг 3 и шаг 4, получаем новую строку (Cj – Zj), у нас строка 8. Идем на шаг 5 - на второй итерации у нас RHS в строках 5, 6 >0, значит идем на шаг 5".

5" шаг. Ищем в строке 8 (Cj – Zj) максимальный строгоположительный элемент. Если такой есть, то ему соответствует ведущий столбец (у нас x4). Идем на шаг 6. Если в (Cj – Zj) нет строгоположительных элементов, то идем в конец.

6 шаг. Ищем в ведущем столбце минимально положительное число из формулы (RHS/ведущий столбец). То есть, в данном случае, выбираем между 0,33/0,33=1 и 0,33/1,33=0,25. Найдя такое число, определяем ведущую строку, у нас строка 6. Пересечение ведущих столбца и строки дает нам ведущий элемент, в нашем случае 1,33 (выделен зеленым). Идем на шаг 7.

Конец: итерации продолжаются до тех пор (в случае, что оптимальное решение задачи существует), пока на шаге 5' или на шагах 5" и 6 мы не сможем отыскать положительного ведущего элемента.

В нашем примере: мы сформировали строки 9, 10, 11. RHS (строки 9, 10) неотрицательна, следовательно, идем на шаг 5". Число 3,50 - максимальный строгоположительный элемент (столбец S1), но положительного ведущего элемента в этой строке нет.

Тогда в строке Zj (у нас строка 11) в RHS - столбце получим значение целевой функции в оптимальной точке (x3, x4) = (0,25; 0,25) равное -3,5. Значения 0,25 и 0,25 получаем из RHS в строках 9, 10.

Литература:

1 Таха, Хемди А. Введение в исследование операций, 7-е издание.: Пер. с англ. — М.: Издатель­ский дом "Вильяме". 2005. — 912 с.

2 Моисеев Н.Н. Математические задачи системного анализа. — М.: Наука, 1981. — 488 с.

3 Анфилатов В.С. Системный анализ в управлении: Учебное пособие / Под ред. А.А. Емельянова. — М.: Финансы и статистика, 2002. — 368 с.

 




Поделиться с друзьями:


Дата добавления: 2017-02-01; Просмотров: 230; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopediasu.com - Студопедия (2013 - 2026) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.