Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Транспортная логистика (линейное программирование). Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
5.5. Аналитическая экспертиза транспортных систем
( )
max ij
XI
Рис. 5.2. График функции
Таким образом, алгебраический метод позволя­ет аналитически решать задачи многокритериальной оценки эффективности действующих транспортных си­стем, экспертизы проектов ихразвития или инновации.
— 101 —
6. ПРИМЕРЫ РЕШЕНИЯ ЗАДАЧ ТРАНСПОРТНОЙ ЛОГИСТИКИ
Изучение характеристик объекта разными мето­дами повышает достоверность знаний оего свойствах. Основными объектами транспортной логистики яв­ляются грузовые ипассажирские потоки. Специфика задач линейного программирования транспортной ло­гистики заключается втом, что практически каждой задаче транспортной логистики можно поставить всоответствие взвешенный связный граф транспорт­ной сети. Методы теории графов илинейной алгебры, всочетании синструментами матричного анализа, по­зволяют аналитически находить оптимальные реше­ния ЗЛП транспортной логистики алгебраическими методами.
6.1. Минимальный остов транспортной сети
В задачах транспортной логистики схему транс­портной сети можно представить взвешенным связным графом, вершины которого соответствуют пунктам отправления иназначения, аребра графа соответству­ют путям сообщения между пунктами. Весами ребер такого взвешенного графа, могут являются расстоя­ния между пунктами, стоимость перевозки, стоимость
— 102 —
6.1. Минимальный остов транспортной сети
ij
x
ij
c
доставки сучетом погрузки/выгрузки, надежность до­ставки ит.д.
Врассматриваемой задаче веса ребер соответству­ют стоимости доставки груза, пропорциональной рас­стояниям между пунктами сучетом затрат напогруз­ку/выгрузку единицы груза.
Задача 6.1. Для заданного взвешенного графа транспортной сети (рис. 6.1.1), каждому ребру торого соответствует определенный вес
(табл.6.1.1),
ко-
требуется найти остовное дерево, сумма весов рёбер ко­торого минимальна.
Рис. 6.1.1. Исходный граф транспортной сети.
6.1.1. Алгоритм поиска минимального остовного дерева графа
Строгой математической моделью топологии транспортной сети является взвешенный связный граф, вершины которого соответствуют пунктам отправления иназначения, аребра графа соответствуют путям сооб­щения между этими пунктами.
— 103 —
6. Примеры решения задач транспортной логистики
1
v
2
v
3
v
k
v
i
v
1iv+
1, 1ik= −
, 1iix+
1
v
k
v
1
v
k
v
0
12
18
0
32
0
34
36
39
43
0
45c46
0
0
76
0
78c79
81c82
87
0
89
98
c
0
Матрица смежности вершин графа
Таблица 6.1.1
№
вершины
1
2
3 -
4 - -
5 - - -
6 - -
7 - - - - -
8
9 - -
1 2 3 4 5 6 7 8 9
- - - - -
c
c
21
c
c
c
- - - -
23
c
c
54
63c64c65
c
-
c
c
c
56
c
c
28
- -
- - -
- - -
- -
c
67
c
- - - -
c
93
- - -
c
c
c
97
-
-
c
c
c
Приведем краткие определения основных терминов теории графов, необходимых для решения задачи поис­ка минимального остовного дерева транспортной сети.
Путь вграфе— это последовательность вершин
,
, …
различны. Путь соединяет все вершины от
, вкоторой каждая пара вершин (
, соединена ребром
, причем все эти ребра
до
,
.
Цикл — конечная вершина пути совпадает с на­чальной
=
.
,
),
— 104 —
6.1. Минимальный остов транспортной сети
i
v
iI∈
n
,ij I∈
1n −
, , , …
, в
,
), 1,1, соединена ребром
,
,
до
.
= v
.
ij
. ,. Каждому ребру взвешенного графа
ij ,
называемое весом ребра.
1, где – число
Неориентированное дерево (или просто дерево)—
это связный граф без циклов. Граф называется связным если существует путь между любой парой вершин
. Мощность множества индексов вершин I равна
 — числу вершин, соединенных ребрами xij. Каждому ребру взвешенного графа сопоставлено неко­торое число c
называемое весом ребра.
ij ,
Остовным деревом (или просто остовом) связного
графа G называется любой его подграф, содержащий все вершины графа Gи являющийся деревом.
Если Т– некоторый остов графа G, товесом C(T) этого остова называют сумму весов всех образующих его ребер.
Вес остова невзвешенного графа равен числу ре­бер:
, где n— число вершин связного графа.
Для решения задачи поиска минимального остов­ного дерева взвешенного графа известно несколько ал­горитмов [13, 14, 27].
Рассмотрим алгоритм Краскала напримере графа сизвестными весами ребер (рис. 6.1.2). Численные зна­чения весов ребер приведены втаблице 6.1.2.
,
.
Рис. 6.1.2. Граф транспортной сети
— 105 —
6. Примеры решения задач транспортной логистики
0
9
11
9010
4
1007∞11
6
707
2
709
112909
902
8811
4
204
6
840
,ij k h
cc≤
,i kj h≤≤
Матрица весов ребер графа
Таблица 6.1.2
№
вершины
1
1 2 3 4 5 6 7 8 9
∞ ∞ ∞ ∞ ∞
2
3 ∞
4 ∞ ∞
5 ∞ ∞ ∞
6 ∞ ∞
7 ∞ ∞ ∞ ∞ ∞
∞ ∞ ∞ ∞
9 ∞ ∞
∞ ∞ ∞ ∞
∞ ∞
∞ ∞ ∞
∞ ∞ ∞
∞ ∞ ∞
∞
∞
∞ ∞
Алгоритм поиска минимального остова взвешенно-
го графа состоит изследующих действий.
1. Сортируем ребра повозрастанию ихвеса , иформируем множество F:
F={С
С
34
=2, С78=2, С28=4, С89=4, С39=6,
46
=7, С45=7, С79=8, С12=9, С56=9, С67=9,
С
=10, С18=11, С36=11}.
23
— 106 —
,
№вершины 1 2 3 4 5 6 7 8 9
1 0 9 ∞ ∞ ∞ ∞ ∞ 11 ∞ 2 9 0 10 ∞ ∞ ∞ ∞ 4 ∞ 3 ∞ 10 0 7 ∞ 11 ∞ ∞ 6 4 ∞ ∞ 7 0 7 2 ∞ ∞ ∞ 5 ∞ ∞ ∞ 7 0 9 ∞ ∞ ∞ 6 ∞ ∞ 11 2 9 0 9 ∞ ∞ 7 ∞ ∞ ∞ ∞ ∞ 9 0 2 8 8 11 4 ∞ ∞ ∞ ∞ 2 0 4 9 ∞ ∞ 6 ∞ ∞ ∞ 8 4 0

,
, ,, и
=2, С78=2, С28=4, С89=4, С39=6, С34=7, С45=7, С79=8, С12=9, С56=9,
18
=11, С36=11}.
46
=2, С78=2, включаем их в
=2, С78=2},
=4, С89=4, С39=6, С34=7, С45=7, С79=8, С12=9, С56=9, С67=9, С23=10,
с
с
6.1. Минимальный остов транспортной сети
2. Выбираем ребра с наименьшим весом С46=2,
С
=2, включаем ихв множество ребер остова D, иис-
78
ключаем ихиз множества F:
F={С
=4, С89=4, С39=6, С34=7, С45=7, С79=8, С12=9,
28
С
=9, С67=9, С23=10, С18=11, С36=11}.
56
D={С
Множеству ребер D соответствует несвязный
граф:
23
2 3 4
=2, С78=2},
46
34
с12
1 59
4
с39
с36
с45
2
79
с
18
8 7 6
4
3. Выбираем в F такие следующие ребра С28=4,
С
=4, имеющие наименьший вес среди оставшихся ре-
89
бер, чтобы граф сребрами С ребер С
=4, С89=4 несодержал циклов.
28
Присоединяем к уже выбранному множеству
D={С
иисключаем эти ребра С
=2, С78=2} ребра С28=4, С89=4:
46
F={С
D={С
=6, С34=7, С45=7, С79=8, С12=9, С56=9,
39
С
=2, С78=2, С28=4, С89=4},
46
=9, С23=10, С18=11, С36=11}.
67
В результате получаем следующий несвязный
граф:
с
с
=2, С78=2 при добавлении
46
=4, С89=4 измножества F:
28
672
с56
— 107 —
6. Примеры решения задач транспортной логистики
28
=4, С89=4, имеющие
С46=2, С78=2
28
=4, С89=4 не содержал циклов.
С46=2, С78=2} ребра
D={
С46=2, С78=2, С28=4, С89=4},
С28=4, С89=4 из множества F:
=6, С34=7, С45=7, С79=8, С12=9, С56=9, С67=9, С23=10, С18=11,
с
с
4. Выбираем в F такое следующее ребро: С39=6,
имеющее наименьший вес среди оставшихся ребер, чтобы граф с ребрами D={С при добавлении ребра С
Включаем ребро С
D={С
=2, С78=2, С28=4, С89=4, С39=6}, и исключаем
46
его измножества F={С С
=9, С23=10, С18=11, С36=11}.
67
=6 несодержал циклов.
39
=6 в множество ребер остова
39
=7, С45=7, С79=8, С12=9, С56=9,
34
=2, С78=2, С28=4, С89=4}
46
Врезультате получаем следующий граф:
23
2 3 4
34
с12
6
с45
с
36
1 59
4
с
18
4
79
с
672
с
2
8 7 6
5. Выбираем в F такие следующие ребра: С34=7,
С
=7, имеющие наименьший вес среди оставшихся
45
— 108 —
с56
ребер, чтобы граф с ребрами D={С46=2, С78=2, С28=4,
34
=7, С45=7, , имеющие
С46=2,
=4, С89=4} при добавлении ребер С
34
=7, С45=7 не содержал циклов.
34
=7, С45=7 в множество ребер остова D={С
46
=2,
=4, С89=4, С39=6, С34=7, С45=7}, и исключаем их из множества
12
=9, С56=9, С67=9, С23=10, С18=11, С36=11}.
1 59
2 3 4
8 7 6
с12
с23 с34
с45
с56
2
с
672
с
18
4
4
с
79
6
с
36
с23 7
С
=4} при добавлении ребер С34=7, С45=7 не содержал
89
циклов.
Включаем ребра С
остова D={С
С
=7}, иисключаем ихиз множества F={С79=8, С12=9,
45
С
=9, С67=9, С23=10, С18=11, С36=11}.
56
Получаем следующий граф:
6.1. Минимальный остов транспортной сети
=7, С45=7 в множество ребер
=2, С78=2, С28=4, С89=4, С39=6, С34=7,
46
34
2 3 4
с12
6
7
с36
1 59
4
18
с
4
8 7 6
с
79
672
с
2
с
56
6. Выбираем в F={С79=8, С12=9, С56=9, С67=9,
С
=10, С18=11, С36=11} ребро с минимальным ве-
23
сом С
=8. При добавлении этого ребра образуется
79
цикл между вершинами 7–8-9, поэтому ребро С невключается вмножество D, иисключается измно-
79
=8
жества F.
Выбираем следующие по величине ребра: С
С
=9, С67=9. При добавлении кD ребра С56=9, образу-
56
ется цикл между вершинами 4–5-6, апри добавлении С
67
поэтому ребра С
=9, образуется цикл между вершинами 3–4-6–7-8–9,
=9, С67=9 невключаются вмножество
56
12
=9,
D, иони исключаются измножества F.
Выбираем ребро С
=9, имеющее наименьший вес
12
среди оставшихся ребер множества F. При добавлении
— 109 —
6. Примеры решения задач транспортной логистики
67
=9, образуется цикл между вершинами 3-4-6-7-8-9, поэтому
67
=9 не включаются в множество D, и они исключаются из
12
=9, имеющее наименьший вес среди оставшихся
12
=9 в множество D={С
46
=2,
89
=4, С34=7, С45=7} циклов не образуется, поэтому включаем
46
=2, С78=2, С28=4, С89=4, С39=6,
12
=9}, и исключаем ребро С12=9, из множества F={С
23
=10,
ребра С12=9 вмножество D={С46=2, С78=2, С28=4, С89=4, С
=7, С45=7} циклов необразуется, поэтому включаем
34
ребро С
С
=4, С89=4, С39=6, С34=7, С45=7, С12=9}, и исключаем
28
ребро С
=9 вмножество ребер остова D={ С46=2, С78=2,
12
=9, измножества F={С23=10, С18=11, С36=11}.
12
Получаем следующий граф:
23 7
с
2 3 4
9
1 59
4
с
18
8 7 6
7. Остовное дерево должно содержать n– 1 ребер.
Если количество ребер множества Dдостигло значения
6
с
36
4
8
92
7
2
9
n– 1, тоискомый остов построен. Впротивном случае возвращаемся кпункту 2.
В рассмотренном примере число вершин n=9. Число ребер построенного графа равно 8= n– 1. Легко проверить, что при добавлении в D любого из остав­шихся ребер в F={С
=10, С18=11, С36=11} образуется
23
цикл.
Таким образом, построено минимальное остовное
дерево взвешенного связного графа транспортной сети, сумма весов ребер которого минимальна ирав-
на:
,
mn
∑
= =
1, 1
ij
cx
ij ij
=
41.
— 110 —