II. Решить ТРАНСПОРТНУЮ ЗАДАЧУ




Одесская государственная академия строительства и архитектуры

Кафедра процессов и аппаратов технологии строительных материалов

Расчетно графическая работа

По основам системного анализа

Выполнил(а) ст. гр. ПСК-357

Расчет проверил

Доцент каф. ПАТСМ

ОГАРКОВ Б.Л.

Одесса - 2012

I. Решение задачи линейного программирования

Задача ЛП в стандартной форме с т ограничениями и п пере­менными имеет следующий вид: максимизировать или минимизировать Z = c1x1 + с2х2+ -... + cnxn

при ограничениях

Задачи ЛП в стандартной форме можно записать в компактных мат­ричных обозначениях следующим образом:

максимизировать или минимизировать Z = cx при ограничениях Ах = b, х>=0, b>=0,

где А — матрица размерности т Х п, х —вектор-столбец размер­ности их 1, b— вектор-столбец размерности т Х 1, с — вектор-строка размерности 1 Х п.

Обычно А называется матрицей коэффициентов, хвектором переменных, bвектором ресурсов, свектором оценок задачи ЛП.

Основные шаги вычислительного процесса симплекс-метода

Основными шагами процесса вычислений в соответствии с сим­плекс-методом в табличной форме применительно к задаче макси­мизации являются следующие:

Шаг 1. Записать задачу в стандартной форме.

Ш а г 2. Заполнить первоначальную таблицу с использованием начального допустимого базисного решения. (Процедура отыскания такого решения описываются ниже.)

Шаг 3. Вычислить вектор относительных оценок (строки с) при помощи правила скалярного произведения.

Ш а г 4. Если все оценки c j неположительные, текущее допу­стимое базисное решение оптимальное. В противном случае не­обходимо ввести в базис небазисную переменную с наибольшим значением c j.

Шаг 5. Определить при помощи правила минимального от­ношения переменную, выводимую из базиса.

Ш а г 6. Применить элементарное преобразование для получе­ния нового допустимого базисного решения и новой таблицы.

Шаг 7. Вычислить новые относительные оценки с использо­ванием элементарного преобразования или правила скалярного произведения. Перейти к шагу 4.

Итерацией симплекс-метода называется выполнение шагов 4—7 описанного процесса. На каждой итерации получаются новая таб­лица и улучшенное допустимое базисное решение. Число допусти­мых базисных решений, просматриваемых при использовании сим­плекс-метода, представляет собой важную характеристику эффек­тивности этого метода.

 

Условия задачи

Fmax=7x1-1x2

1x1+1x2>=3

5x1+1x2>=5

1x1+5x2>=5

1x1<=4

1x2<=4

 


II. Решить ТРАНСПОРТНУЮ ЗАДАЧУ

Транспортная задача (ТЗ) формулируется следующим образом. В m пунктах отправления А 1... A m сосредоточен однородный груз в количествах соответственно а 1... а m единиц. Имеющийся груз необходимо доставить потребителям В 1... В n, спрос которых выражается величинами b 1... b п единиц. Известна стоимость с ij перевозки единицы груза из i -го пункта отправления в j -й пункт назначения. Требуется составить план перевозок, который полностью удовлетворяет спрос потребителей в грузе, и при этом суммарные транспортные издержки минимизируются.

Для наглядности условия ТЗ можно представить таблицей (табл. 1.), которую будем называть распределительной. Распределительную таблицу называют иногда табличной или матричной моделью ТЗ.

Цель ТЗ — минимизировать общие затраты на реализацию плана перевозок.

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

Решение задачи осуществить методом потенциалов с помощью программы Optimal.

 

Представление транспортной задачи в матричной форме

Поставщик Потребитель Запас груза а i  
B 1 B 2 ... B n  
Затраты на перевозку 1ед. груза    
A 1 C 11 X 11 С 12 X 12 ... C in X in а 1
A 2 C 21 X 21 С 22 X 22 ... С 2п Х 2п a 2
... ... ... ... ... ...
A m С m1 X m1 C m2 X m2 ... C mn Х тп a m
Потребность в грузе b j b 1 b 2 ... b п  
               

 

 


Исходная таблица:

Поставщик Потребитель Запасы груза
B1 B2 B3 B4 B5 B6
A1
   
 
   
 
   
 
   
 
   
 
   
 
 
A2
   
 
   
 
   
 
   
 
   
 
   
 
 
A3
   
 
   
 
   
 
   
 
   
 
   
 
 
A4
   
 
   
 
   
 
   
 
   
 
   
 
 
Потребность              

Транспортная задача имеет закрытый тип, так как суммарный запас груза равен суммарным потребностям.
Находим опорный план по правилу северо-западного угла:
Введем некоторые обозначения:
Ai* - излишек нераспределенного груза от поставщика Ai
Bj* - недостача в поставке груза потребителю Bj

Помещаем в клетку (1,1) меньшее из чисел A1*=130 и B1*=110
Так как спрос потребителя B1 удовлетворен, то столбец 1 в дальнейшем в расчет не принимается
Помещаем в клетку (1,2) меньшее из чисел A1*=20 и B2*=50
Так как запасы поставщика A1 исчерпаны, то строка 1 в дальнейшем в расчет не принимается
Помещаем в клетку (2,2) меньшее из чисел A2*=90 и B2*=30
Так как спрос потребителя B2 удовлетворен, то столбец 2 в дальнейшем в расчет не принимается
Помещаем в клетку (2,3) меньшее из чисел A2*=60 и B3*=30
Так как спрос потребителя B3 удовлетворен, то столбец 3 в дальнейшем в расчет не принимается
Помещаем в клетку (2,4) меньшее из чисел A2*=30 и B4*=80
Так как запасы поставщика A2 исчерпаны, то строка 2 в дальнейшем в расчет не принимается
Помещаем в клетку (3,4) меньшее из чисел A3*=100 и B4*=50
Так как спрос потребителя B4 удовлетворен, то столбец 4 в дальнейшем в расчет не принимается
Помещаем в клетку (3,5) меньшее из чисел A3*=50 и B5*=100
Так как запасы поставщика A3 исчерпаны, то строка 3 в дальнейшем в расчет не принимается
Помещаем в клетку (4,5) меньшее из чисел A4*=140 и B5*=50
Так как спрос потребителя B5 удовлетворен, то столбец 5 в дальнейшем в расчет не принимается
Помещаем в клетку (4,6) меньшее из чисел A4*=90 и B6*=90

Поставщик Потребитель Запасы груза
B1 B2 B3 B4 B5 B6
A1
   
 
   
 
   
 
   
 
   
 
   
 
 
A2
   
 
   
 
   
 
   
 
   
 
   
 
 
A3
   
 
   
 
   
 
   
 
   
 
   
 
 
A4
   
 
   
 
   
 
   
 
   
 
   
 
 
Потребность              


Целевая функция F=1400


Решаем задачу методом потенциалов:
Примем некоторые обозначения:
i - индекс строки;
j - индекс столбца;
m - количество поставщиков;
n - количество потребителей.

Этап 1


Полагая потенциал U1=0, определяем остальные потенциалы из соотношения Ui+Vj=Ci,j(i=1..m, j=1..n), просматривая все занятые клетки.
Потенциалы Ui:
U1=0
V1=C1,1-U1= 2
V2=C1,2-U1= 3
U2=C2,2-V2= -2
V3=C2,3-U2= 4
V4=C2,4-U2= 5
U3=C3,4-V4= -4
V5=C3,5-U3= 8
U4=C4,5-V5= -5
V6=C4,6-U4= 11

Определяем значения оценок Si,j=Ci,j-(Ui+Vj) для всех свободных клеток:
S1,3 = c1,3 - (u1 + v3) = 2.
S1,4 = c1,4 - (u1 + v4) = 3.
S1,5 = c1,5 - (u1 + v5) = -6.
S1,6 = c1,6 - (u1 + v6) = -1.
S2,1 = c2,1 - (u2 + v1) = 8.
S2,5 = c2,5 - (u2 + v5) = -1.
S2,6 = c2,6 - (u2 + v6) = -3.
S3,1 = c3,1 - (u3 + v1) = 9.
S3,2 = c3,2 - (u3 + v2) = 5.
S3,3 = c3,3 - (u3 + v3) = 4.
S3,6 = c3,6 - (u3 + v6) = 1.
S4,1 = c4,1 - (u4 + v1) = 5.
S4,2 = c4,2 - (u4 + v2) = 10.
S4,3 = c4,3 - (u4 + v3) = 6.
S4,4 = c4,4 - (u4 + v4) = 1.

Если имеется несколько клеток с одним и тем же наименьшим значением оценки, то из них выбирается клетка, имеющая наименьший тариф. Наиболее потенциальной является клетка (1,5). Для нее оценка равна -6.
Строим для нее цикл, помечая клетки цикла знаками "плюс" и "минус".

Поставщик Потребитель Запасы груза
B1 B2 B3 B4 B5 B6
A1
   
 
-  
 
   
 
   
 
+  
 
   
 
 
A2
   
 
+  
 
   
 
-  
 
   
 
   
 
 
A3
   
 
   
 
   
 
+  
 
-  
 
   
 
 
A4
   
 
   
 
   
 
   
 
   
 
   
 
 
Потребность              


Перемещаем по циклу груз величиной в 20 единиц, прибавляя эту величину к грузу в клетках со знаком "плюс" и отнимая ее от груза в клетках со знаком "минус".
В результате перемещения по циклу получим новый план:

Поставщик Потребитель Запасы груза
B1 B2 B3 B4 B5 B6
A1
   
 
   
 
   
 
   
 
   
 
   
 
 
A2
   
 
   
 
   
 
   
 
   
 
   
 
 
A3
   
 
   
 
   
 
   
 
   
 
   
 
 
A4
   
 
   
 
   
 
   
 
   
 
   
 
 
Потребность              


Целевая функция F= 1280

Значение целевой функции изменилось на 120 единиц по сравнению с предыдущим этапом.

Этап 2


Полагая потенциал U1=0, определяем остальные потенциалы из соотношения Ui+Vj=Ci,j(i=1..m, j=1..n), просматривая все занятые клетки.
Потенциалы Ui:
U1=0
V1=C1,1-U1= 2
V5=C1,5-U1= 2
U3=C3,5-V5= 2
U4=C4,5-V5= 1
V6=C4,6-U4= 5
V4=C3,4-U3= -1
U2=C2,4-V4= 4
V2=C2,2-U2= -3
V3=C2,3-U2= -2

Определяем значения оценок Si,j=Ci,j-(Ui+Vj) для всех свободных клеток:
S1,2 = c1,2 - (u1 + v2) = 6.
S1,3 = c1,3 - (u1 + v3) = 8.
S1,4 = c1,4 - (u1 + v4) = 9.
S1,6 = c1,6 - (u1 + v6) = 5.
S2,1 = c2,1 - (u2 + v1) = 2.
S2,5 = c2,5 - (u2 + v5) = -1.
S2,6 = c2,6 - (u2 + v6) = -3.
S3,1 = c3,1 - (u3 + v1) = 3.
S3,2 = c3,2 - (u3 + v2) = 5.
S3,3 = c3,3 - (u3 + v3) = 4.
S3,6 = c3,6 - (u3 + v6) = 1.
S4,1 = c4,1 - (u4 + v1) = -1.
S4,2 = c4,2 - (u4 + v2) = 10.
S4,3 = c4,3 - (u4 + v3) = 6.
S4,4 = c4,4 - (u4 + v4) = 1.

Если имеется несколько клеток с одним и тем же наименьшим значением оценки, то из них выбирается клетка, имеющая наименьший тариф. Наиболее потенциальной является клетка (2,6). Для нее оценка равна -3.
Строим для нее цикл, помечая клетки цикла знаками "плюс" и "минус".

Поставщик Потребитель Запасы груза
B1 B2 B3 B4 B5 B6
A1
   
 
   
 
   
 
   
 
   
 
   
 
 
A2
   
 
   
 
   
 
-  
 
   
 
+  
 
 
A3
   
 
   
 
   
 
+  
 
-  
 
   
 
 
A4
   
 
   
 
   
 
   
 
+  
 
-  
 
 
Потребность              


Перемещаем по циклу груз величиной в 10 единиц, прибавляя эту величину к грузу в клетках со знаком "плюс" и отнимая ее от груза в клетках со знаком "минус".
В результате перемещения по циклу получим новый план:

Поставщик Потребитель Запасы груза
B1 B2 B3 B4 B5 B6
A1
   
 
   
 
   
 
   
 
   
 
   
 
 
A2
   
 
   
 
   
 
   
 
   
 
   
 
 
A3
   
 
   
 
   
 
   
 
   
 
   
 
 
A4
   
 
   
 
   
 
   
 
   
 
   
 
 
Потребность              


Целевая функция F= 1250

Значение целевой функции изменилось на 30 единиц по сравнению с предыдущим этапом.

Этап 3


Полагая потенциал U1=0, определяем остальные потенциалы из соотношения Ui+Vj=Ci,j(i=1..m, j=1..n), просматривая все занятые клетки.
Потенциалы Ui:
U1=0
V1=C1,1-U1= 2
V5=C1,5-U1= 2
U3=C3,5-V5= 2
U4=C4,5-V5= 1
V6=C4,6-U4= 5
U2=C2,6-V6= 1
V4=C3,4-U3= -1
V2=C2,2-U2= 0
V3=C2,3-U2= 1

Определяем значения оценок Si,j=Ci,j-(Ui+Vj) для всех свободных клеток:
S1,2 = c1,2 - (u1 + v2) = 3.
S1,3 = c1,3 - (u1 + v3) = 5.
S1,4 = c1,4 - (u1 + v4) = 9.
S1,6 = c1,6 - (u1 + v6) = 5.
S2,1 = c2,1 - (u2 + v1) = 5.
S2,4 = c2,4 - (u2 + v4) = 3.
S2,5 = c2,5 - (u2 + v5) = 2.
S3,1 = c3,1 - (u3 + v1) = 3.
S3,2 = c3,2 - (u3 + v2) = 2.
S3,3 = c3,3 - (u3 + v3) = 1.
S3,6 = c3,6 - (u3 + v6) = 1.
S4,1 = c4,1 - (u4 + v1) = -1.
S4,2 = c4,2 - (u4 + v2) = 7.
S4,3 = c4,3 - (u4 + v3) = 3.
S4,4 = c4,4 - (u4 + v4) = 1.

Если имеется несколько клеток с одним и тем же наименьшим значением оценки, то из них выбирается клетка, имеющая наименьший тариф. Наиболее потенциальной является клетка (4,1). Для нее оценка равна -1.
Строим для нее цикл, помечая клетки цикла знаками "плюс" и "минус".

Поставщик Потребитель Запасы груза
B1 B2 B3 B4 B5 B6
A1
-  
 
   
 
   
 
   
 
+  
 
   
 
 
A2
   
 
   
 
   
 
   
 
   
 
   
 
 
A3
   
 
   
 
   
 
   
 
   
 
   
 
 
A4
+  
 
   
 
   
 
   
 
-  
 
   
 
 
Потребность              


Перемещаем по циклу груз величиной в 60 единиц, прибавляя эту величину к грузу в клетках со знаком "плюс" и отнимая ее от груза в клетках со знаком "минус".
В результате перемещения по циклу получим новый план:

Поставщик Потребитель Запасы груза
B1 B2 B3 B4 B5 B6
A1
   
 
   
 
   
 
   
 
   
 
   
 
 
A2
   
 
   
 
   
 
   
 
   
 
   
 
 
A3
   
 
   
 
   
 
   
 
   
 
   
 
 
A4
   
 
   
 
   
 
   
 
   
 
   
 
 
Потребность              


Целевая функция F= 1190

Значение целевой функции изменилось на 60 единиц по сравнению с предыдущим этапом.

Этап 4


Полагая потенциал U1=0, определяем остальные потенциалы из соотношения Ui+Vj=Ci,j(i=1..m, j=1..n), просматривая все занятые клетки.
Потенциалы Ui:
U1=0
V1=C1,1-U1= 2
V5=C1,5-U1= 2
U3=C3,5-V5= 2
U4=C4,1-V1= 0
V6=C4,6-U4= 6
U2=C2,6-V6= 0
V4=C3,4-U3= -1
V2=C2,2-U2= 1
V3=C2,3-U2= 2

Определяем значения оценок Si,j=Ci,j-(Ui+Vj) для всех свободных клеток:
S1,2 = c1,2 - (u1 + v2) = 2.
S1,3 = c1,3 - (u1 + v3) = 4.
S1,4 = c1,4 - (u1 + v4) = 9.
S1,6 = c1,6 - (u1 + v6) = 4.
S2,1 = c2,1 - (u2 + v1) = 6.
S2,4 = c2,4 - (u2 + v4) = 4.
S2,5 = c2,5 - (u2 + v5) = 3.
S3,1 = c3,1 - (u3 + v1) = 3.
S3,2 = c3,2 - (u3 + v2) = 1.
S3,3 = c3,3 - (u3 + v3) = 0.
S3,6 = c3,6 - (u3 + v6) = 0.
S4,2 = c4,2 - (u4 + v2) = 7.
S4,3 = c4,3 - (u4 + v3) = 3.
S4,4 = c4,4 - (u4 + v4) = 2.
S4,5 = c4,5 - (u4 + v5) = 1.

Так как все оценки Si,j >=0, то полученный план является оптимальным.
Транспортная задача решена.

Поставщик Потребитель Запасы груза
B1 B2 B3 B4 B5 B6
A1
   
 
   
 
   
 
   
 
   
 
   
 
 
A2
   
 
   
 
   
 
   
 
   
 
   
 
 
A3
   
 
   
 
   
 
   
 
   
 
   
 
 
A4
   
 
   
 
   
 
   
 
   
 
   
 
 
Потребность              


Целевая функция F= 1190

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-12-07 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: