
TransportnaZadacha
.pdf
МІНІСТЕРСТВО ТРАНСПОРТУ ТА ЗВ’ЯЗКУ УКРАЇНИ
Дніпропетровський національний університет залізничного транспорту імені академіка В. Лазаряна
Львівська філія
Кафедра транспортних технологій
МЕТОДИЧНІ ВКАЗІВКИ ТА ЗАВДАННЯ ДО ЛАБОРАТОРНОЇ РОБОТИ “РОЗВ’ЯЗУВАННЯ ТРАНСПОРТНИХ ЗАДАЧ” З ДИСЦИПЛІНИ “КОМП’ЮТЕРНІ ТЕХНОЛОГІЇ НА ЗАЛІЗНИЧНОМУ ТРАНСПОРТІ”
Укладач: Ю. М. Гнатів
Львів 2008
Укладач: Ю. М. Гнатів
УДК 681.3
Методичні вказівки та завдання до лабораторної роботи “Розв’язування транспортних задач” з дисципліни “Комп’ютерні технології на залізничному транспорті” / Львівська філія Дніпропетровського національного університету залізничного транспорту ім. акад. В. Лазаряна; укладач: Ю. М. Гнатів. – Львів, 2008. – 20 с.
Наводяться постановка транспортної задачі та методика її розв’язування у середовищах Excel і Mathcad. Пропонуються завдання для лабораторної роботи.
Для студентів денної та безвідривної від виробництва форм навчання спеціальності “Організація перевезень і управління на залізничному транспорті”.
Друкується за рішенням методичної комісії Львівської філії.
Рецензенти:
канд. фіз.-мат. наук, доцент Б. Р. Монцібович – керівник Львівського відділення Центру прикладної інформатики НАН України; канд. фіз.-мат. наук, доцент М. Д. Грилицький – доцент кафедри
фундаментальних дисциплін Львівської філії Дніпропетровського національного університету залізничного транспорту ім. академіка В. Лазаряна
©Гнатів Ю. М., укладання, 2008
©Видавничо-поліграфічний відділ Львівського центру науково - технічної і економічної інформації, 2008
2
ЛАБОРАТОРНА РОБОТА “РОЗВ’ЯЗУВАННЯ ТРАНСПОРТНИХ ЗАДАЧ”
Мета роботи. Отримати розв’язок транспортної задачі за допомогою табличного процесора Excel і пакета Mathcad.
1.ПОРЯДОК ВИКОНАННЯ РОБОТИ
1.Отримайте у викладача завдання для лабораторної роботи.
2.Ознайомтеся з методичними вказівками до виконання завдань.
3.Виконайте завдання у середовищах Excel і Mathcad.
4.Надрукуйте результати роботи.
5.Оформіть звіт про лабораторну роботу та здайте викладачу на перевірку.
2.ПОСТАНОВКА ТРАНСПОРТНОЇ ЗАДАЧІ
Транспортна задача – це задача про найбільш економний план перевезень однорідних продуктів з пунктів постачання в пункти споживання.
Нехай у m постачальників Ai зосереджені деякі однорідні продукти в
кількостях ai (i = |
1, m |
) |
одиниць відповідно. Ці продукти необхідно перевезти |
||||||||||||
до n споживачів Bj |
у кількостях bj ( j = |
|
) одиниць. |
Відомі вартості |
cij |
||||||||||
1, n |
|||||||||||||||
перевезень одиниці вантажу від постачальників Ai |
до споживачів B j . |
|
|||||||||||||
Необхідно скласти такий план перевезень, який дозволяє вивезти всі |
|||||||||||||||
вантажі, повністю задовольнити потреби та має мінімальну вартість. |
|
||||||||||||||
Нехай xij |
– кількість одиниць вантажу, які перевозитимуться від i -го |
||||||||||||||
постачальника |
до j -го |
споживача. |
Тоді умову |
задачі |
можна |
записати |
у |
||||||||
вигляді таблиці (табл. 1). |
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Ai \ Bj |
|
|
B1 |
|
B2 |
|
|
… |
|
|
Bn |
Запаси |
|
||
A1 |
|
|
|
|
c |
c |
|
|
… |
|
|
c1n |
a1 |
|
|
|
|
|
|
11 |
12 |
|
|
|
x1n |
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
x |
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
11 |
|
|
|
|
12 |
|
|
|
|
|
|
|
|
|
A2 |
|
|
|
|
c |
c |
|
|
|
|
|
|
c2n |
a2 |
|
|
|
|
|
21 |
22 |
|
|
… |
|
x2n |
|
|
|||
x |
|
|
|
|
x |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
21 |
|
|
|
|
22 |
|
|
|
|
|
|
|
|
|
|
|
|
… |
|
… |
|
|
… |
|
|
… |
|
|
||
Am |
|
|
|
|
cm1 |
cm2 |
|
|
… |
|
|
cmn |
am |
|
|
xm1 |
|
xm2 |
|
|
|
xmn |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
||||||
Потреби |
|
|
b1 |
|
b2 |
|
|
… |
|
|
bn |
Σai = Σbj |
|
||
|
|
|
|
|
|
Табл |
. 1 |
|
|
|
|
|
|||
Вартість всього плану перевезень виражається подвійною сумою |
|
||||||||||||||
|
|
|
|
|
|
m |
|
n |
|
|
|
|
|
||
|
|
|
|
|
|
L = ∑∑cij xij . |
|
|
|
|
|
i=1 j=1
Математична модель транспортної задачі має наступний вигляд.
3

Знайти найменше значення лінійної (цільової) функції
m |
n |
||||
L = ∑∑cij xij |
|||||
i=1 j=1 |
|||||
за обмежень |
|
|
|
|
|
n |
|
|
|
|
|
(i =1, m), |
|||||
∑xij = ai |
|||||
j=1 |
|
|
|
|
|
m |
|
|
|
|
|
∑xij =bj |
( j = |
|
), |
||
1, n |
|||||
|
|
|
|
|
|
i=1 |
|
|
|
|
xij ≥ 0 (i =1, m; j =1, n).
У цій моделі припускається, що сумарні запаси дорівнюють сумарним потребам, тобто
m
∑ai
i=1
Така модель називається закритою.
n
= ∑bj .
j=1
3. РОЗВ’ЯЗУВАННЯ ЗАДАЧІ У СЕРЕДОВИЩІ EXCEL
Нехай умова транспортної задачі задана таблицею 2.
Ai \ Bj |
B1 |
|
B2 |
|
B3 |
|
B4 |
|
Запаси |
A1 |
x |
5 |
x |
7 |
x13 |
4 |
x |
8 |
140 |
|
|
|
|
||||||
|
11 |
|
12 |
|
|
|
14 |
|
|
A2 |
x |
4 |
x |
9 |
x23 |
3 |
x |
6 |
90 |
|
|
|
|
||||||
|
21 |
|
22 |
|
|
|
24 |
|
|
A3 |
x31 |
2 |
x32 |
5 |
x33 |
8 |
x34 |
3 |
170 |
|
|
|
|
||||||
|
|
|
|
|
|
||||
Потреби |
100 |
|
150 |
|
80 |
|
70 |
|
400 |
|
|
|
|
Табл |
. 2 |
|
|
|
|
Для розв’язування цієї задачі на персональному комп’ютері з використанням табличного процесора Excel достатньо:
1)увести вихідні дані в комірки робочого листа;
2)розмітити діапазони комірок, необхідні для моделювання обсягів перевезень і формування елементів математичної моделі та цільової функції;
3)сформувати на робочому листі елементи математичної моделі та цільову функцію;
4)налаштувати програму Пошук розв’язку та виконати її.
Уведення вихідних даних. Вихідними даними для розв’язування транспортної задачі є матриця вартостей перевезень, запаси постачальників і потреби споживачів. Фрагмент робочого листа з уведеними даними поданий на мал. 1.
4

Мал. 1
Розмітка діапазонів комірок. На робочому листі для розв’язування транспортної задачі необхідно передбачити:
1)діапазон комірок „Матриця обсягів перевезень”, в якому будуть моделюватися об’єми перевезень;
2)діапазон комірок „Фактично реалізовано”, в якому моделюватиметься фактична реалізація продукту;
3)діапазон комірок „Фактично отримано”, в якому буде моделюватися фактичне задоволення потреб;
4)діапазон комірок „Вартості перевезень за споживачами”, в якому будуть обчислюватися транспортні витрати за кожним споживачем;
5)комірку „Вартість усіх перевезень”, в якій будуть моделюватися транспортні витрати за всіма споживачами.
Для розмітки перелічених діапазонів достатньо обвести їх рамками.
Фрагмент робочого листа з розміченими діапазонами комірок показаний на мал. 2.
Мал. 2
Формування елементів математичної моделі та цільової функції.
Елементами математичної моделі транспортної задачі є наступні суми:
5

n |
|
|
|
|
|
∑xij |
– обсяг фактичної реалізації продукту i -м постачальником (i = |
1, m |
) , |
||
j=1 |
|
|
|
|
|
m |
|
|
|
|
|
∑xij |
– обсяг фактичного отримання продукту j -м споживачем ( j = |
1, n |
). Для |
||
i=1 |
|
|
|
|
|
розглядуваної задачі m =3, n = 4.
4
Для формування сум ∑xij (i =1, 3) достатньо:
j=1
1)заповнити комірки діапазону „Матриця обсягів перевезень” (D10:G12) числом 0,01;
2)виділити першу комірку (I10) діапазону „Фактично реалізовано”;
3)клацнути лівою клавішею миші по кнопці Автосума;
4)натиснути на клавішу Delete;
5)виділити перший рядок (D10:G10) діапазону „Матриця обсягів перевезень”;
6)натиснути на клавішу Enter;
7)скопіювати формулу =СУММ(D10:G10) із першої комірки діапазону „Фактично реалізовано” до решти комірок цього діапазону.
3
Щоб сформувати суми ∑xij ( j =1, 4), достатньо:
i=1
1)виділити першу комірку (D14) діапазону „Фактично отримано”;
2)клацнути лівою клавішею миші по кнопці Автосума;
3)натиснути на клавішу Delete;
4)виділити перший стовпець (D10:D12) діапазону „Матриця обсягів перевезень”;
5)натиснути на клавішу Enter;
6)скопіювати формулу =СУММ(D10:D12) із першої комірки діапазону „Фактично отримано” до решти комірок цього діапазону.
Для формування цільової функції спочатку доцільно ввести формули,
які відображають вартості перевезень за кожним споживачем, тобто вартості
3
∑cij xij ( j =1, 4). Щоб увести ці формули, достатньо:
i=1
1)виділити першу комірку (D17) діапазону „Вартості перевезень за споживачами”;
2)клацнути лівою клавішею миші по кнопці Автосума;
3)натиснути на клавішу Delete;
4)виділити перший стовпець (D2:D4) діапазону „Матриця вартостей перевезень”;
5)натиснути на клавішу *;
6)виділити перший стовпець (D10:D12) діапазону „Матриця обсягів перевезень”;
7)клацнути лівою клавішею миші по рядку формул;
8)натиснути комбінацію клавіш Ctrl + Shift + Enter;
6

9)скопіювати формулу {=СУММ(D2:D4*D10:D12)} із першої комірки діапазону „Вартості перевезень за споживачами” до решти комірок цього діапазону.
3 4
Щоб сформувати цільову функцію L = ∑∑cij xij , достатньо:
i=1 j=1
1)виділити комірку „Вартість усіх перевезень” (I17);
2)клацнути лівою клавішею миші по кнопці Автосума;
3)натиснути на клавішу Delete;
4)виділити діапазон комірок „Вартості перевезень за споживачами”
(D17:G17);
5)натиснути на клавішу Enter.
Після формування елементів математичної моделі та цільової функції відповідний фрагмент робочого листа набуде вигляду, показаного на мал. 3.
Мал. 3
Налаштовування та виконання програми пошуку розв’язку. Для налаштовування програми Пошук розв’язку на розв’язування транспортної задачі та виконання цієї програми достатньо:
1)виділити цільову комірку „Вартість усіх перевезень” (I17);
2)клацнути лівою клавішею миші по пункті Пошук розв’язку меню Сервіс і переконатися, що в полі Установити цільову комірку діалогового вікна Пошук розв’язку вказана адреса комірки $I$17 (мал. 4);
7

Мал. 4
3)увімкнути перемикач Рівною мінімальному значенню;
4)клацнути лівою клавішею миші по полі Змінюючи комірки;
5)виділити діапазон комірок „Матриця обсягів перевезень” (D10:G12);
6)клацнути лівою клавішею миші по кнопці Додати (діалогове вікно Додавання обмеження, яке появиться, подане на мал. 5);
Мал. 5
7)виділити діапазон комірок „Фактично реалізовано” (I10:I12);
8)вибрати операцію відношення =;
9)переконатися, що курсор уведення розташований у полі Обмеження;
10)виділити діапазон комірок „Запаси” (I2:I4) та переконатися, що діалогове вікно Додавання обмеження має вигляд, показаний на мал. 6;
Мал. 6
11)клацнути лівою клавішею миші по кнопці Додати;
12)виділити діапазон комірок „Фактично отримано” (D14:G14);
13)вибрати операцію відношення =;
14)переконатися, що курсор уведення розташований у полі Обмеження;
15)виділити діапазон комірок „Потреби” (D6:G6) і переконатися, що вигляд діалогового вікна Додавання обмеження такий, як на мал. 7;
8

Мал. 7
16)клацнути лівою клавішею миші по кнопці Додати;
17)виділити діапазон комірок „Матриця обсягів перевезень” (D10:G12);
18)вибрати операцію >=;
19)переконатися, що курсор уведення розташований у полі Обмеження;
20)увести цифру 0 і переконатися, що діалогове вікно Додавання обмеження має вигляд, показаний на мал. 8;
Мал. 8
21)клацнути лівою клавішею миші по кнопці OK;
22)переконатися, що діалогове вікно Пошук розв’язку набуде вигляду, показаного на мал. 9;
Мал. 9
23)клацнути лівою клавішею миші по кнопці Параметри;
24)у діалоговому вікні Параметри пошуку розв’язку (мал. 10), яке появиться, встановити прапорець Лінійна модель;
9

Мал. 10
25)клацнути лівою клавішею миші по кнопці ОК;
26)у вікні Пошук розв’язку, яке появиться, клацнути лівою клавішею миші по кнопці Виконати;
27)переконатися, що в діапазоні комірок „Матриця обсягів перевезень” появиться розв’язок задачі, поданий на мал. 11;
Мал. 11
28)у діалоговому вікні Результати пошуку розв’язку (мал. 12), яке появиться, ввімкнути перемикач Зберегти знайдений розв’язок або перемикач Відновити вихідні значення;
10