SlideShare a Scribd company logo
1 of 67
Предмет: Исследование операций
Практическое занятие 1
Материал подготовил: доцент кафедры «Автоматика и информационные
технологии» Р.Ф. Касумов.
E-mail: 6292710@mail.ru
Азербайджанский Технологический Университет
Транспортная задача линейного
программирования
 Имеется m поставщиков (A1….Am) некоторого
однородного продукта в количествах a1….am
соответственно.
Требуется доставить этот продукт n
потребителям (B1….Bn) в количествах b1…bn
соответственно.
Известна cij стоимость перевозки единицы
груза от i-го поставщика к j-му потребителю.
Составить план перевозок, удовлетворяющий
потребности в продукте и имеющий
минимальную стоимость.
 Обозначим xij груз, перевозимый от i-го поставщика к j-
му потребителю, сij – стоимость перевозки единицы
груза.
 Условия задачи запишем в матрицу планирования.
• Составим модель задачи
n
j
i
b
m
i
ij
x
обеспечены
быть
должны
грузах
в
и
Потребност
m
i
i
a
n
j
ij
x
вывезены
быть
должны
грузы
Все
m
i
n
j
ij
x
ij
c
Z
перевозок
всех
Стоимость
.....
2
,
1
1
:
.....
2
,
1
1
:
min
1 1
:















 


n
j
j
m
i
i b
a
1
1
Модель закрытая, т.е. суммарные потребности
равны суммарным затратам.
Теорема
•Любая транспортная задача, у которой
суммарный объем запасов совпадает с
суммарным объемом потребностей, имеет
решение
Построение первоначального опорного
плана
• Система ограничений ТЗ содержит m x n
неизвестных и m+n уравнений.
)
2
(
.....
2
,
1
1
)
1
(
.....
2
,
1
1
n
j
j
b
m
i
ij
x
m
i
i
a
n
j
ij
x








Если сложить почленно уравнения
подсистемы (1) и отдельно подсистемы (2)
то получим два одинаковых уравнения.
Следовательно подсистема линейно
зависима.
Если одно из уравнений отбросить, то
система ограничений должна содержать
m+n-1 линейно независимых уравнений.
Следовательно невырожденный
опорный план ТЗ содержит m+n-1
положительных компонент (xij), а
остальные равны нулю.
Если условия задачи представлены в матрице
планирования, то клетки, в которых находятся отличные
от нуля перевозки называются занятыми, а остальные –
незанятыми.
Занятые клетки
соответствуют
базисным
переменным и
для
невырожденного
опорного плана
их количество
должно быть
равно m+n-1.
Опорность плана при записи в виде
таблицы означает его ацикличность ,
т.е. в таблице нельзя построить
замкнутый цикл, все вершины которого
лежат в занятых клетках.
(Циклом называется набор клеток, в
котором только две соседние клетки
расположены в одном столбце или
одной строке, причем последняя клетка
находится в той же строке или столбце,
что и первая).
Всякий план ТЗ содержащий более m+n-1
занятых клеток не является опорным, т.к. ему
соответствует линейно зависимая система
векторов.
При таком плане в таблице всегда можно
построить замкнутый цикл.
Если к занятым клеткам, определяющим
опорный план (ацикличный) добавить одну
незанятую клетку, то появится единственный
цикл.
Построение циклов начинают с какой-
либо занятой клетки и переходят по
столбцу (или строке) к другой занятой
клетке, в которой делают поворот под
прямым углом и движутся по строке
(столбцу) к следующей занятой клетке и
т.д. , пытаясь возвратиться к первой
клетке.
Если такой возврат возможен, то
получаем цикл и план не является
опорным.
Существует несколько методов
построения первоначального опорного
плана.
Метод северо-западного угла
Пусть условия ТЗ заданы таблицей.
 Начинаем с первого потребителя В1 и первого поставщика
А1.
 Сравниваем a1=100 и b1=200, a1<b1, меньший из объемов
100 записываем в левый нижний угол клетки А1В1.
 Запасы первого поставщика израсходованы, поэтому в
клетках первой строки ставим черту.
Потребности В1 неудовлетворенны на 200-100=100 ед.
Сравниваем этот остаток с запасами А2: 100<250, 100 ед.
записываем в А2В1 и удовлетворяем потребности В1, в
оставшихся клетках первого столбца ставим черту.
У А2 осталось 150 ед. груза. Отдаем их В2.
Потребности В2 =200, Записываем 150 в клетку А2В2 и
т.к. запасы А2 израсходованы прочеркиваем клетки
второй строки.
 Потребности В2 не удовлетворены на 50 ед. Берем их у
А3 и переходим к В3 и т.д.
 Процесс продолжается пока не закончатся запасы и
потребности.
Начиная движение от занятой клетки А1В1
вернуться в нее, двигаясь только по занятым
клеткам невозможно. Следовательно план
опорный.
План является невырожденным, т.к. содержит
m+n-1=4+5-1=8 занятых клеток.
Мы не учитывали стоимость перевозок, поэтому
план наверное не оптимальный.
Найдем общую стоимость перевозок:
Z=100·10+100·2+150·7+50·5+100·3+50·2+
+50·16+235·13=6950 ед. стоимости.
Если при составлении опорного плана учитывать
стоимость, то план будет ближе к оптимальному.
Метод минимальной стоимости.
Суть метода в том, что из всей таблицы
стоимостей выбирают наименьшую и в эту
клетку (ij) помещают меньшее из чисел ai или bj.
Вычеркивают столбец или строку (запасы
израсходованы или запрос удовлетворен)
Из оставшейся таблицы снова выбирают клетку
с наименьшей стоимостью и т.д.
 Процесс продолжается пока все запасы не будут
распределены, а потребности удовлетворены.
Пусть условия ТЗ заданы таблицей
Выбираем наименьшую стоимость, она
помещена в клетке А1В4, т.к. а1=b4=100, то 100
помещаем в А1В4 и вычеркиваем первую
строку и четвертый столбец.
 Наименьшей является стоимость в А2В1 и А3В5.
 В А2В1 200<250, →200 записываем и исключаем столбец
В1.
 В А3В5 200<250 записываем 200 и исключаем строку А3.
 В таблице снова выбираем наименьшую стоимость и
продолжим пока все запасы не будут распределены
X=(x14=100, x21=200, x22=50,x35=200,x42=150,x43=100, x45=50).
План вырожденный опорный, т.к. 7 занятых клеток и
нет циклов.
Z=100·1+200·2+50·7+200·2+150·8+100·12+50·13=4300 ед.
Метод двойного предпочтения.
Если таблица большая, то перебор элементов
сложен и используют этот метод.
В каждом столбце и строке отмечают знаком γ
клетку с наименьшей стоимостью. В результате
некоторые клетки имеют отметку γγ.
В эти клетки помещают максимально
возможные объемы перевозок и исключают
соответствующие строки и столбцы.
Затем распределяют перевозки по клеткам с γ.
В оставшейся таблице распределение
производят по наименьшей стоимости.
Пусть условия ТЗ заданы таблицей
Отметим клетки c минимальной стоимостью
по строкам
Отметим клетки c минимальной стоимостью по
столбцам
Сначала заполним клетки А2В1, А1В4 А3В5
а затем А4В2
 Далее заполним клетки по минимальной стоимости
А2В3, А4В3 , А4В5
Получился вырожденный опорный план.
Z=100·1+200·2+50·10+200·2+200·8+50·12+50·13=4250ед
.
С помощью рассмотренных методов
можно получить вырожденный или
невырожденный опорный план.
Оптимальный план можно найти с
помощью симплекс метода, однако, из-
за большого количества переменных
обычно используют более простой
метод – метод потенциалов.
Метод потенциалов
Теорема
Если план X* транспортной задачи является
оптимальным, то ему соответствует система
из m+n чисел U*
I V*
j, удовлетворяющих
условиям
U*
i+V*
j=Cij
U*
i+V*
j≤Cij
Числа U*
I и V*
j называются потенциалами
соответственно поставщиков и потребителей.
• Доказательство
Транспортную задачу
)
,...
2
,
1
,...
2
,
1
(
0
,...
2
,
1
...
,...
2
,
1
...
min
2
1
2
1
1 1
n
j
m
i
x
n
j
b
x
x
x
m
i
a
x
x
x
x
C
Z
ij
j
mj
j
j
i
in
i
i
m
i
n
j
ij
ij

















 
 
можно рассматривать как двойственную некоторой
исходной задаче линейного программирования
Пусть каждому ограничению вида
j
mj
j
j b
x
x
x 


 ...
2
1
i
in
i
i a
x
x
x 


 ...
2
1
)
,...
2
,
1
,...
2
,
1
(
max
1 1
n
j
m
i
C
V
U
V
b
U
a
f
ij
j
i
m
i
n
j
j
j
i
i






  
 
в исходной задаче соответствует переменная Ui
(i=1,2,..m), а каждому ограничению вида
переменная Vj j=(1,2,…n) .
Тогда двойственная задача запишется так:
• План X* является оптимальным планом
двойственной задачи, поэтому план
Y*=(U*
I, V*
j) является оптимальным планом
исходной задачи и согласно теоремы
двойственности
0
min
max
*
1 1 1 1




  
   
ij
m
i
n
j
m
i
n
j
ij
ij
j
j
i
i
x
где
x
С
V
b
U
a
или
Z
f
• На основании свойств двойственных задач
получаем:
• ограничения исходной задачи, соответствующие
положительным переменным оптимального
плана двойственной задачи, являются
равенствами, а соответствующие нулевым
переменным, неравенствами, т.е.
0
0
*
*
*
*
*
*






ij
ij
j
i
ij
ij
j
i
x
для
C
V
U
x
для
C
V
U
Из теоремы следует, что для того, чтобы опорный план
был оптимальным, необходимо выполнение
следующих условий:
1. Для каждой занятой клетки сумма потенциалов
должна быть равна стоимости единицы перевозки,
стоящей в этой клетке
ij
j
i C
V
U 

2. Для каждой незанятой клетки сумма потенциалов
должна быть меньше или равна стоимости единицы
перевозки, стоящей в этой клетке
ij
j
i C
V
U 

Если хотя бы одна незанятая клетка не
удовлетворяет этому условию, то план не
оптимален и его можно улучшить, вводя
в базис вектор, соответствующий клетке,
для которой нарушается условие
оптимальности
(в клетку надо переместить некоторое
количество груза).
Таким образом, для проверки плана на
оптимальность надо построить систему
потенциалов.
• Построение системы потенциалов.
Используем условие
ij
j
i C
V
U 

Систему потенциалов можно построить только для
невырожденного плана. Он должен содержать m+n-1
занятых клеток и для него можно составить систему из
m+n-1 линейно независимых уравнений с n+m-1
неизвестными.
Если уравнений меньше чем неизвестных, система
неопределенная, то одному неизвестному (Ui) придают
нулевое значение и все потенциалы определяются
однозначно.
• Пусть известен потенциал Ui тогда
i
ij
j U
C
V 

j
ij
i V
C
U 

Если известен потенциал Vj тогда
 В таблице выбираем строку с наибольшим количеством
занятых клеток (А4) и полагаем U4=0.
 В А4 три занятых клетки А4В2 А4В3 А4В5, которые
связывают потенциал U4 c потенциалами V2 , V3, ,V5
 Определим эти потенциалы
V2= C42-U4=8-0=8
V3= C43-U4=12-0=12
V5= C45-U4=13-0=13
C помощью U4 нельзя определить больше никакой
потенциал, подчеркиваем U4
 Поочередно просматриваем столбцы В2 В3 В5 , для которых
потенциалы определены.
 В столбце В2 две занятые клетки А2В2 и А4В2 , которые связывают
V2 c U2 и U4(уже определен).
U2= C22-V2=7-8=-1Подчеркиваем V2
 В столбце В3 нет занятых клеток, связывающих V3 с
неизвестными потенциалами строк, подчеркиваем V3
 Переходим к В5. В нем одна занятая клетка А3В5 , которая
связывает V5 c неизвестным U3=C32-V5=2-13=-11
Подчеркиваем V5
 Потенциал U2 занятой клетки А2В1 связан с неизвестным
потенциалом V1=2-(-1)=3. Подчеркиваем U2 и U3
 Подчеркиваем V 1 т.к. в В1 нет занятых клеток,
связывающих его с неизвестным потенциалом строки
 Построение системы потенциалов прервалось. Потенциалы
U1 и V4 остались неопределенными, поскольку план
вырожденный.
 Добавляем фиктивно занятую клетку с нулевой
перевозкой в столбце В4 или строке А1. Целесообразно
найти клетку с наименьшей стоимостью, это клетка А3В4.
 Тогда, V4=C34-U3=2-(-11)=13 U1=C14-V4=1-13=-12
ij
j
i C
V
U 

Система потенциалов построена, уберем знаки
подчеркивания и проверим правильность
системы. Для этого проверяем для всех занятых
клеток выполнение равенства
Проверка выполнения условия
оптимальности для незанятых клеток
• План будет оптимальным, если для всех незанятых
клеток выполняется условие
ij
j
i C
V
U 

0
)
( 

 ij
j
i C
V
U
Если план не оптимальный, то для каждой клетки,
в которой не выполняется условие находим
величину разности и записываем в левый нижний
угол клетки
Для строки А1: -9<10, -4<7. 0<4, -8<4.
Для строки А2 : для А2В3 11> 10 или 11-10=1, 1
записываем в клетку. Для А2В4: 12>6, 12-6=6
записываем в клетку. Для А2В5 12>11, 12-11=1
записываем в клетку.
Для строки А3: -8<8, -3<5, 1<3
Для строки А4: 3<11, 13<16
Выбор клетки, в которую следует послать
перевозку
Загрузке подлежит клетка соответствующая max[(Ui+Vj)-Cij]
Таким образом, выбираем max(1;6;1)=6 клетку А2В4
Отмечаем знаком + клетку, которую надо загрузить, она
считается занятой.
Построение цикла и определение величины
перераспределения груза
 В таблице m+n-1 занятых клеток, поэтому имеется
единственный цикл, все вершины которого в занятых
клетках.
 Начинаем движение от клетки с + поочередно
проставляем – и +.
 Находим Q0=min xij, где xij – перевозки, стоящие в
вершинах цикла со знаком “-”. Q0=min(50;50;0)=0.
 Следовательно, нулевую перевозку перемещаем в
клетку А2В4, остальные числа при вычитании и
прибавления нуля не изменяются.
Новый опорный план проверяется на оптимальность
 Строится новая система потенциалов
 Клетка А2В4 стала занятой и для нее должно выполняться
равенство U2+V4=C24=-1+13=12≠6. Следовательно, надо
U2 либо V4 уменьшить на 6.
 Удобнее изменить V4, т.к. он связан только с U1 . V4=13-6=7
U1=C14-V4=1-7=-6.
 Проверяется выполнение условий оптимальности для
каждой незанятой клетки.
 Значение V4 уменьшилось на 6 и в В4 не могут появиться
свободные клетки не удовлетворяющие условию
оптимальности. Такие клетки могут быть только в строке
(столбце) потенциал которой увеличился.
U1 увеличился на 6. Строка А1: -3<10; 2<7; 6>4; 7>4. А1В3 и
А1В5 не удовлетворяют условию для их находим Ui+Vj-Cij и
записываем в левый нижний угол клеток.
 Находим max(2;3;1;1)=3. А1В5 подлежит загрузке,
отмечаем ее + и определяем цикл перераспределения.
Q0=min(50;50;100)=50.
 По циклу 50 переносим в А1В5
План улучшился на 150 единиц стоимости (произведение
груза перемещенного в свободную клетку на величину
(Ui+Vj)-Cij .
(Ui+Vj)-Cij>0 в свободных клетках показывает, на сколько
уменьшится стоимость плана, если единицу груза
перераспределить в эту клетку.
 В полученном опорном плане изменяем систему
потенциалов.
Условию оптимальности не удовлетворяют 2
клетки А1В3 и А2В3, груз перемещаем в А1В3.
Строим цикл перераспределения.
Q0=min (50;0;100)=0. Нулевую перевозку перемещаем
в А1В3 и получаем новый опорный план.
Вносим изменения в систему потенциалов
План оптимальный, его стоимость равна 4150 единиц.
Открытая(несбалансированная) модель
транспортной задачи
Возможны два случая открытой модели:
1. Суммарные запасы превышают суммарные потребности

 


n
j
j
m
i
i b
a
1
1

 


n
j
j
m
i
i b
a
1
1
2. Суммарные потребности превышают суммарные запасы
n
j
i
b
m
i
ij
x
m
i
i
a
n
j
ij
x
m
i
n
j
ij
x
ij
c
Z
случая
для
Модель
.....
2
,
1
1
.....
2
,
1
1
min
1 1
:
1














n
j
i
b
m
i
ij
x
m
i
i
a
n
j
ij
x
m
i
n
j
ij
x
ij
c
Z
случая
для
Модель
.....
2
,
1
1
.....
2
,
1
1
min
1 1
:
2














Открытая модель решается приведением к
закрытой модели.
В случае 1 вводится фиктивный потребитель
Bn+1, потребности которого bn+1=∑ai-∑bj
В случае 2 вводится фиктивный поставщик
Аm+1, потребности которого am+1=∑bj-∑ai
Стоимость перевозки единицы груза до
фиктивного потребителя или фиктивного
поставщика полагают равной нулю.
Получается закрытая задача. При ее решении
фиктивному потребителю (поставщику)
направляют груз от наименее выгодных
поставщиков (потребителей).
Пример
.
50
;
750
;
700 5
5
1
4
1


 
 

a
b
a
j
j
i
i
При составлении первого опорного плана
методом минимальной стоимости или
двойного предпочтения необходимо
наименьшую стоимость выбирать
только среди реальных поставщиков и
потребителей, а запасы фиктивного
поставщика (или потребителя)
распределять в последнюю очередь.
Это правило используют и при введении
фиктивных клеток.
Ответ
Вопросы
1. Как формулируется транспортная задача?
2. Как составить первый опорный план в транспортной
задаче?
3. В чем сущность метода потенциалов?
4. Как с помощью метода потенциалов опорный план
проверяется на оптимальность?
5. Как решается проблема вырождения в транспортной
задаче?
6. Как решаются транспортные задачи с нарушенным
балансом между спросом и предложением?

More Related Content

Featured

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellSaba Software
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming LanguageSimplilearn
 

Featured (20)

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 

45864.ppt

  • 1. Предмет: Исследование операций Практическое занятие 1 Материал подготовил: доцент кафедры «Автоматика и информационные технологии» Р.Ф. Касумов. E-mail: 6292710@mail.ru Азербайджанский Технологический Университет
  • 2. Транспортная задача линейного программирования  Имеется m поставщиков (A1….Am) некоторого однородного продукта в количествах a1….am соответственно. Требуется доставить этот продукт n потребителям (B1….Bn) в количествах b1…bn соответственно. Известна cij стоимость перевозки единицы груза от i-го поставщика к j-му потребителю. Составить план перевозок, удовлетворяющий потребности в продукте и имеющий минимальную стоимость.
  • 3.  Обозначим xij груз, перевозимый от i-го поставщика к j- му потребителю, сij – стоимость перевозки единицы груза.  Условия задачи запишем в матрицу планирования.
  • 4. • Составим модель задачи n j i b m i ij x обеспечены быть должны грузах в и Потребност m i i a n j ij x вывезены быть должны грузы Все m i n j ij x ij c Z перевозок всех Стоимость ..... 2 , 1 1 : ..... 2 , 1 1 : min 1 1 :              
  • 5.      n j j m i i b a 1 1 Модель закрытая, т.е. суммарные потребности равны суммарным затратам. Теорема •Любая транспортная задача, у которой суммарный объем запасов совпадает с суммарным объемом потребностей, имеет решение
  • 6. Построение первоначального опорного плана • Система ограничений ТЗ содержит m x n неизвестных и m+n уравнений. ) 2 ( ..... 2 , 1 1 ) 1 ( ..... 2 , 1 1 n j j b m i ij x m i i a n j ij x        
  • 7. Если сложить почленно уравнения подсистемы (1) и отдельно подсистемы (2) то получим два одинаковых уравнения. Следовательно подсистема линейно зависима. Если одно из уравнений отбросить, то система ограничений должна содержать m+n-1 линейно независимых уравнений. Следовательно невырожденный опорный план ТЗ содержит m+n-1 положительных компонент (xij), а остальные равны нулю.
  • 8. Если условия задачи представлены в матрице планирования, то клетки, в которых находятся отличные от нуля перевозки называются занятыми, а остальные – незанятыми. Занятые клетки соответствуют базисным переменным и для невырожденного опорного плана их количество должно быть равно m+n-1.
  • 9. Опорность плана при записи в виде таблицы означает его ацикличность , т.е. в таблице нельзя построить замкнутый цикл, все вершины которого лежат в занятых клетках. (Циклом называется набор клеток, в котором только две соседние клетки расположены в одном столбце или одной строке, причем последняя клетка находится в той же строке или столбце, что и первая).
  • 10. Всякий план ТЗ содержащий более m+n-1 занятых клеток не является опорным, т.к. ему соответствует линейно зависимая система векторов. При таком плане в таблице всегда можно построить замкнутый цикл. Если к занятым клеткам, определяющим опорный план (ацикличный) добавить одну незанятую клетку, то появится единственный цикл.
  • 11. Построение циклов начинают с какой- либо занятой клетки и переходят по столбцу (или строке) к другой занятой клетке, в которой делают поворот под прямым углом и движутся по строке (столбцу) к следующей занятой клетке и т.д. , пытаясь возвратиться к первой клетке. Если такой возврат возможен, то получаем цикл и план не является опорным.
  • 12. Существует несколько методов построения первоначального опорного плана.
  • 13. Метод северо-западного угла Пусть условия ТЗ заданы таблицей.
  • 14.  Начинаем с первого потребителя В1 и первого поставщика А1.  Сравниваем a1=100 и b1=200, a1<b1, меньший из объемов 100 записываем в левый нижний угол клетки А1В1.  Запасы первого поставщика израсходованы, поэтому в клетках первой строки ставим черту.
  • 15. Потребности В1 неудовлетворенны на 200-100=100 ед. Сравниваем этот остаток с запасами А2: 100<250, 100 ед. записываем в А2В1 и удовлетворяем потребности В1, в оставшихся клетках первого столбца ставим черту.
  • 16. У А2 осталось 150 ед. груза. Отдаем их В2. Потребности В2 =200, Записываем 150 в клетку А2В2 и т.к. запасы А2 израсходованы прочеркиваем клетки второй строки.
  • 17.  Потребности В2 не удовлетворены на 50 ед. Берем их у А3 и переходим к В3 и т.д.  Процесс продолжается пока не закончатся запасы и потребности.
  • 18. Начиная движение от занятой клетки А1В1 вернуться в нее, двигаясь только по занятым клеткам невозможно. Следовательно план опорный. План является невырожденным, т.к. содержит m+n-1=4+5-1=8 занятых клеток. Мы не учитывали стоимость перевозок, поэтому план наверное не оптимальный. Найдем общую стоимость перевозок: Z=100·10+100·2+150·7+50·5+100·3+50·2+ +50·16+235·13=6950 ед. стоимости. Если при составлении опорного плана учитывать стоимость, то план будет ближе к оптимальному.
  • 19. Метод минимальной стоимости. Суть метода в том, что из всей таблицы стоимостей выбирают наименьшую и в эту клетку (ij) помещают меньшее из чисел ai или bj. Вычеркивают столбец или строку (запасы израсходованы или запрос удовлетворен) Из оставшейся таблицы снова выбирают клетку с наименьшей стоимостью и т.д.  Процесс продолжается пока все запасы не будут распределены, а потребности удовлетворены.
  • 20. Пусть условия ТЗ заданы таблицей
  • 21. Выбираем наименьшую стоимость, она помещена в клетке А1В4, т.к. а1=b4=100, то 100 помещаем в А1В4 и вычеркиваем первую строку и четвертый столбец.
  • 22.  Наименьшей является стоимость в А2В1 и А3В5.  В А2В1 200<250, →200 записываем и исключаем столбец В1.  В А3В5 200<250 записываем 200 и исключаем строку А3.
  • 23.  В таблице снова выбираем наименьшую стоимость и продолжим пока все запасы не будут распределены X=(x14=100, x21=200, x22=50,x35=200,x42=150,x43=100, x45=50). План вырожденный опорный, т.к. 7 занятых клеток и нет циклов. Z=100·1+200·2+50·7+200·2+150·8+100·12+50·13=4300 ед.
  • 24. Метод двойного предпочтения. Если таблица большая, то перебор элементов сложен и используют этот метод. В каждом столбце и строке отмечают знаком γ клетку с наименьшей стоимостью. В результате некоторые клетки имеют отметку γγ. В эти клетки помещают максимально возможные объемы перевозок и исключают соответствующие строки и столбцы. Затем распределяют перевозки по клеткам с γ. В оставшейся таблице распределение производят по наименьшей стоимости.
  • 25. Пусть условия ТЗ заданы таблицей
  • 26. Отметим клетки c минимальной стоимостью по строкам
  • 27. Отметим клетки c минимальной стоимостью по столбцам
  • 28. Сначала заполним клетки А2В1, А1В4 А3В5 а затем А4В2
  • 29.  Далее заполним клетки по минимальной стоимости А2В3, А4В3 , А4В5 Получился вырожденный опорный план. Z=100·1+200·2+50·10+200·2+200·8+50·12+50·13=4250ед .
  • 30. С помощью рассмотренных методов можно получить вырожденный или невырожденный опорный план. Оптимальный план можно найти с помощью симплекс метода, однако, из- за большого количества переменных обычно используют более простой метод – метод потенциалов.
  • 31. Метод потенциалов Теорема Если план X* транспортной задачи является оптимальным, то ему соответствует система из m+n чисел U* I V* j, удовлетворяющих условиям U* i+V* j=Cij U* i+V* j≤Cij Числа U* I и V* j называются потенциалами соответственно поставщиков и потребителей.
  • 32. • Доказательство Транспортную задачу ) ,... 2 , 1 ,... 2 , 1 ( 0 ,... 2 , 1 ... ,... 2 , 1 ... min 2 1 2 1 1 1 n j m i x n j b x x x m i a x x x x C Z ij j mj j j i in i i m i n j ij ij                      можно рассматривать как двойственную некоторой исходной задаче линейного программирования
  • 33. Пусть каждому ограничению вида j mj j j b x x x     ... 2 1 i in i i a x x x     ... 2 1 ) ,... 2 , 1 ,... 2 , 1 ( max 1 1 n j m i C V U V b U a f ij j i m i n j j j i i            в исходной задаче соответствует переменная Ui (i=1,2,..m), а каждому ограничению вида переменная Vj j=(1,2,…n) . Тогда двойственная задача запишется так:
  • 34. • План X* является оптимальным планом двойственной задачи, поэтому план Y*=(U* I, V* j) является оптимальным планом исходной задачи и согласно теоремы двойственности 0 min max * 1 1 1 1            ij m i n j m i n j ij ij j j i i x где x С V b U a или Z f
  • 35. • На основании свойств двойственных задач получаем: • ограничения исходной задачи, соответствующие положительным переменным оптимального плана двойственной задачи, являются равенствами, а соответствующие нулевым переменным, неравенствами, т.е. 0 0 * * * * * *       ij ij j i ij ij j i x для C V U x для C V U
  • 36. Из теоремы следует, что для того, чтобы опорный план был оптимальным, необходимо выполнение следующих условий: 1. Для каждой занятой клетки сумма потенциалов должна быть равна стоимости единицы перевозки, стоящей в этой клетке ij j i C V U   2. Для каждой незанятой клетки сумма потенциалов должна быть меньше или равна стоимости единицы перевозки, стоящей в этой клетке ij j i C V U  
  • 37. Если хотя бы одна незанятая клетка не удовлетворяет этому условию, то план не оптимален и его можно улучшить, вводя в базис вектор, соответствующий клетке, для которой нарушается условие оптимальности (в клетку надо переместить некоторое количество груза). Таким образом, для проверки плана на оптимальность надо построить систему потенциалов.
  • 38. • Построение системы потенциалов. Используем условие ij j i C V U   Систему потенциалов можно построить только для невырожденного плана. Он должен содержать m+n-1 занятых клеток и для него можно составить систему из m+n-1 линейно независимых уравнений с n+m-1 неизвестными. Если уравнений меньше чем неизвестных, система неопределенная, то одному неизвестному (Ui) придают нулевое значение и все потенциалы определяются однозначно.
  • 39. • Пусть известен потенциал Ui тогда i ij j U C V   j ij i V C U   Если известен потенциал Vj тогда
  • 40.  В таблице выбираем строку с наибольшим количеством занятых клеток (А4) и полагаем U4=0.  В А4 три занятых клетки А4В2 А4В3 А4В5, которые связывают потенциал U4 c потенциалами V2 , V3, ,V5
  • 41.  Определим эти потенциалы V2= C42-U4=8-0=8 V3= C43-U4=12-0=12 V5= C45-U4=13-0=13 C помощью U4 нельзя определить больше никакой потенциал, подчеркиваем U4
  • 42.  Поочередно просматриваем столбцы В2 В3 В5 , для которых потенциалы определены.  В столбце В2 две занятые клетки А2В2 и А4В2 , которые связывают V2 c U2 и U4(уже определен). U2= C22-V2=7-8=-1Подчеркиваем V2  В столбце В3 нет занятых клеток, связывающих V3 с неизвестными потенциалами строк, подчеркиваем V3
  • 43.  Переходим к В5. В нем одна занятая клетка А3В5 , которая связывает V5 c неизвестным U3=C32-V5=2-13=-11 Подчеркиваем V5  Потенциал U2 занятой клетки А2В1 связан с неизвестным потенциалом V1=2-(-1)=3. Подчеркиваем U2 и U3  Подчеркиваем V 1 т.к. в В1 нет занятых клеток, связывающих его с неизвестным потенциалом строки
  • 44.  Построение системы потенциалов прервалось. Потенциалы U1 и V4 остались неопределенными, поскольку план вырожденный.  Добавляем фиктивно занятую клетку с нулевой перевозкой в столбце В4 или строке А1. Целесообразно найти клетку с наименьшей стоимостью, это клетка А3В4.  Тогда, V4=C34-U3=2-(-11)=13 U1=C14-V4=1-13=-12
  • 45. ij j i C V U   Система потенциалов построена, уберем знаки подчеркивания и проверим правильность системы. Для этого проверяем для всех занятых клеток выполнение равенства
  • 46. Проверка выполнения условия оптимальности для незанятых клеток • План будет оптимальным, если для всех незанятых клеток выполняется условие ij j i C V U   0 ) (    ij j i C V U Если план не оптимальный, то для каждой клетки, в которой не выполняется условие находим величину разности и записываем в левый нижний угол клетки
  • 47. Для строки А1: -9<10, -4<7. 0<4, -8<4. Для строки А2 : для А2В3 11> 10 или 11-10=1, 1 записываем в клетку. Для А2В4: 12>6, 12-6=6 записываем в клетку. Для А2В5 12>11, 12-11=1 записываем в клетку. Для строки А3: -8<8, -3<5, 1<3 Для строки А4: 3<11, 13<16
  • 48. Выбор клетки, в которую следует послать перевозку Загрузке подлежит клетка соответствующая max[(Ui+Vj)-Cij] Таким образом, выбираем max(1;6;1)=6 клетку А2В4 Отмечаем знаком + клетку, которую надо загрузить, она считается занятой.
  • 49. Построение цикла и определение величины перераспределения груза  В таблице m+n-1 занятых клеток, поэтому имеется единственный цикл, все вершины которого в занятых клетках.  Начинаем движение от клетки с + поочередно проставляем – и +.
  • 50.  Находим Q0=min xij, где xij – перевозки, стоящие в вершинах цикла со знаком “-”. Q0=min(50;50;0)=0.  Следовательно, нулевую перевозку перемещаем в клетку А2В4, остальные числа при вычитании и прибавления нуля не изменяются.
  • 51. Новый опорный план проверяется на оптимальность  Строится новая система потенциалов  Клетка А2В4 стала занятой и для нее должно выполняться равенство U2+V4=C24=-1+13=12≠6. Следовательно, надо U2 либо V4 уменьшить на 6.  Удобнее изменить V4, т.к. он связан только с U1 . V4=13-6=7 U1=C14-V4=1-7=-6.
  • 52.  Проверяется выполнение условий оптимальности для каждой незанятой клетки.  Значение V4 уменьшилось на 6 и в В4 не могут появиться свободные клетки не удовлетворяющие условию оптимальности. Такие клетки могут быть только в строке (столбце) потенциал которой увеличился. U1 увеличился на 6. Строка А1: -3<10; 2<7; 6>4; 7>4. А1В3 и А1В5 не удовлетворяют условию для их находим Ui+Vj-Cij и записываем в левый нижний угол клеток.
  • 53.  Находим max(2;3;1;1)=3. А1В5 подлежит загрузке, отмечаем ее + и определяем цикл перераспределения. Q0=min(50;50;100)=50.  По циклу 50 переносим в А1В5
  • 54. План улучшился на 150 единиц стоимости (произведение груза перемещенного в свободную клетку на величину (Ui+Vj)-Cij . (Ui+Vj)-Cij>0 в свободных клетках показывает, на сколько уменьшится стоимость плана, если единицу груза перераспределить в эту клетку.
  • 55.  В полученном опорном плане изменяем систему потенциалов. Условию оптимальности не удовлетворяют 2 клетки А1В3 и А2В3, груз перемещаем в А1В3.
  • 56. Строим цикл перераспределения. Q0=min (50;0;100)=0. Нулевую перевозку перемещаем в А1В3 и получаем новый опорный план.
  • 57. Вносим изменения в систему потенциалов
  • 58. План оптимальный, его стоимость равна 4150 единиц.
  • 59. Открытая(несбалансированная) модель транспортной задачи Возможны два случая открытой модели: 1. Суммарные запасы превышают суммарные потребности      n j j m i i b a 1 1      n j j m i i b a 1 1 2. Суммарные потребности превышают суммарные запасы
  • 62. Открытая модель решается приведением к закрытой модели. В случае 1 вводится фиктивный потребитель Bn+1, потребности которого bn+1=∑ai-∑bj В случае 2 вводится фиктивный поставщик Аm+1, потребности которого am+1=∑bj-∑ai Стоимость перевозки единицы груза до фиктивного потребителя или фиктивного поставщика полагают равной нулю. Получается закрытая задача. При ее решении фиктивному потребителю (поставщику) направляют груз от наименее выгодных поставщиков (потребителей).
  • 64.
  • 65. При составлении первого опорного плана методом минимальной стоимости или двойного предпочтения необходимо наименьшую стоимость выбирать только среди реальных поставщиков и потребителей, а запасы фиктивного поставщика (или потребителя) распределять в последнюю очередь. Это правило используют и при введении фиктивных клеток.
  • 67. Вопросы 1. Как формулируется транспортная задача? 2. Как составить первый опорный план в транспортной задаче? 3. В чем сущность метода потенциалов? 4. Как с помощью метода потенциалов опорный план проверяется на оптимальность? 5. Как решается проблема вырождения в транспортной задаче? 6. Как решаются транспортные задачи с нарушенным балансом между спросом и предложением?