
- •4. Формирование маршрутов движения транспортных средств
- •Введение
- •Исходные данные
- •Расположение пунктов транспортной сети на оси координат oxy.
- •2. Определение расстояния между пунктами транспортной сети
- •3. Решение транспортной задачи методом Фогеля, определение общего пробега, пробега с грузом и транспортной работы для маятниковых маршрутов
- •4. Формирование маршрутов движения транспортных средств с помощью методов Свира и «ветвей и границ»
- •5. Определение интервалов времени прибытия и отправления транспортных средств для каждого пункта маршрутов
- •6. Определение затрат на транспортировку для выбранного транспортного средства.
- •7. Общие выводы
- •Список литературы
4. Формирование маршрутов движения транспортных средств с помощью методов Свира и «ветвей и границ»
Учитывая результаты, полученные при решении транспортной задачи по методу Фогеля, определим кольцевые маршруты. К пункту А прикреплено восемь грузополучателей, так как по условию нужно не более пяти пунктов в один кольцевой маршрут, то разобьем их на два кольцевых маршрута. Выберем такую схему, что пункты 1,3,4 и 5 составляют один кольцевой маршрут, а 6,7,8 и 9 составляют другой. Таким образом, метод Свира предполагает использование автомобиля грузоподъемностью более 10,94 тонн на маршруте от грузоотправителя А. Для работы на маршруте грузоотправителя А привлекаются грузовые автомобили MAN TGМ 12.210 грузоподъёмностью 12 тонн.
Поскольку пункты 2 и 10 закреплены за грузоотправителем Б, объединим их в один маршрут. Для работы на маршруте грузоотправителя Б привлекается грузовой автомобиль Mercedes-Benz Atego грузоподъёмностью 7 тонн.
Рис 2. Закрепление грузополучателей за грузоотправителями
Для грузоотправителя А для первого маршрута построим матрицу кратчайших расстояний.
Таблица 4.1
Матрица кратчайших расстояний для первого маршрута от А
|
А |
1 |
3 |
4 |
5 |
А |
∞ |
9 |
2 |
3 |
6 |
1 |
9 |
∞ |
8 |
8 |
14 |
3 |
2 |
8 |
∞ |
1 |
6 |
4 |
3 |
8 |
1 |
∞ |
7 |
5 |
6 |
14 |
6 |
7 |
∞ |
В каждой строке находим минимальный элемент hi и выполним приведение матрицы по строкам (табл. 4.2).
Таблица 4.2
Матрица кратчайших расстояний, приведенная по строкам
|
А |
1 |
3 |
4 |
5 |
hi |
А |
∞ |
7 |
0 |
1 |
4 |
2 |
1 |
1 |
∞ |
0 |
0 |
6 |
8 |
3 |
1 |
7 |
∞ |
0 |
5 |
1 |
4 |
2 |
7 |
0 |
∞ |
6 |
1 |
5 |
0 |
8 |
0 |
1 |
∞ |
6 |
Далее полученную в табл. 4.2 матрицу необходимо привести по столбцам. Результат приведения представлен в табл. 4.3.
Таблица 4.3
Матрица кратчайших расстояний, приведенная по столбцам
|
А |
1 |
3 |
4 |
5 |
А |
∞ |
0 |
0 |
1 |
0 |
1 |
1 |
∞ |
0 |
0 |
2 |
3 |
1 |
0 |
∞ |
0 |
1 |
4 |
2 |
0 |
0 |
∞ |
2 |
5 |
0 |
1 |
0 |
1 |
∞ |
hj |
0 |
7 |
0 |
0 |
4 |
Нижняя граница, то есть минимально возможная длина маршрута, определяется по формуле
(5)
и равна:
=
2+8+1+1+6+7+4 = 29
Для нулевых элементов матрицы, приведенной в табл. 4.3, определим оценки Qij. Так для нулевого элемента, находящегося на пересечении строки А и столбца 5, оценка QА5 = 0 + 1 = 1 (минимальное значение по строке – 0, а по столбцу – 1). При этом необходимо помнить, что элемент, для которого производиться расчет, не учитывается и необходимо искать следующее наименьшее значение.
Результаты расчета оценок представлены в табл. 4.4.
Таблица 4.4
Расчет оценок для нулевых элементов
|
А |
1 |
3 |
4 |
5 |
А |
∞ |
0 0 |
0 0 |
1 |
0 1 |
1 |
1 |
∞ |
0 0 |
0 0 |
2 |
3 |
1 |
0 0 |
∞ |
0 0 |
1 |
4 |
2 |
0 0 |
0 0 |
∞ |
2 |
5 |
0 1 |
1 |
0 0 |
1 |
∞ |
В табл. 4.4 получили две максимальные оценки равные 1. Для дальнейшего решения выберем одну из них, какую не имеет принципиального значения. Пусть ветвь маршрута будет A-5. Таким образом, исключаем из дальнейшего рассмотрения строку k = A и столбец s = 5. На пересечении строки 5 и столбца А ставим знак “-“.
Таблица 4.5
Матрица кратчайших расстояний, после исключения строки A, столбца 5
|
А |
1 |
3 |
4 |
1 |
1 |
∞ |
0 |
0 |
3 |
1 |
0 |
∞ |
0 |
4 |
2 |
0 |
0 |
∞ |
5 |
∞ |
1 |
0 |
1 |
Проверяем условие, что бы в каждой строке и столбце усеченной матрицы были нулевые значения, оно не выполняется, поэтому операция приведения проводится заново.
Таблица 4.6
Приведение матрицы усеченной на строку A и столбец 5
|
А |
1 |
3 |
4 |
hi |
1 |
0 |
∞ |
0 |
0 |
0 |
3 |
0 |
0 |
∞ |
0 |
0 |
4 |
1 |
0 |
0 |
∞ |
0 |
5 |
∞ |
1 |
0 |
1 |
0 |
hj |
1 |
0 |
0 |
0 |
|
От
начальной вершины "все решения"
проводят ответвление вершин ks и
с нижними границами:
Рис. 3. Первое ветвление «дерева решений» для метода «ветвей и границ»
Далее производиться расчет оценок для нулевых значений усеченной матрицы, выбирается максимальное значение, которое покажет новое ветвление «дерева решений» (табл. 4.7).
Таблица 4.7
Расчет оценок для нулевых элементов
|
А |
1 |
3 |
4 |
1 |
0 0 |
∞ |
0 0 |
0 0 |
3 |
0 0 |
0 0 |
∞ |
0 0 |
4 |
1 |
0 0 |
0 0 |
∞ |
5 |
∞ |
1 |
0 1 |
1 |
В
рассматриваемом случае наибольшим
значением оценки является 1, выбираем,
то которое расположено на пересечении
строки 5 и столбца 3. Получаем две «ветки
дерева решений» 5–3 и
.
Исключаем из дальнейшего рассмотрения
указанные строку и столбец. На пересечении
строки 3 и столбца 5 ставим знак “-“.
Проверяем условие, что бы в каждой строке
и столбце усеченной матрицы были нулевые
значения, оно выполняется, поэтому
операция приведения не проводится
заново.
Таблица 4.8
Матрица усеченная на строку 5 и столбец 3
|
А |
1 |
4 |
1 |
0 |
∞ |
0 |
3 |
0 |
0 |
0 |
4 |
1 |
0 |
∞ |
Полученное ветвление отмечаем на «дереве решений» (рис. 4).
Рис. 4. Второе ветвление «дерева решений»
Следующее усечение матрицы представлено в табл. 4.9.
Таблица 4.9
Расчет оценок для нулевых элементов
|
А |
1 |
4 |
1 |
0 0 |
∞ |
0 0 |
3 |
0 0 |
0 0 |
0 0 |
4 |
1 |
0 1 |
∞ |
Наибольшее искомое значение получаем 1, выбираем на пересечении столбца 1 и строки 4. Исключаем из дальнейшего рассмотрения указанные строку и столбец. Проводя расчеты аналогичным образом, получаем матрицу 2 х 2, в которой однозначно представлены две последние «ветки» маршрута (табл. 4.10).
Таблица 4.10
Матрица 2 х 2 для метода «ветвей и границ»
|
А |
4 |
1 |
0 |
∞ |
3 |
0 |
0 |
При этом «дерево решений» примет окончательный вид, который проиллюстрирован на рис. 5.
Анализируя
полученные участки (ветви), имеем
следующий маршрут: А
5
3
4
1
А,
длина которого составляет 30 км.
Рис. 5. «Дерево решений» для грузоотправителя А первого маршрута
Проверим, правильно ли была определена нижняя граница, для чего просуммируем соответствующие расстояния между пунктами маршрута: 6 + 6 + 1 + 8 + 9 = 30 км.
Для второго маршрута грузоотправителя А построим матрицу кратчайших расстояний.
Таблица 4.11
Матрица кратчайших расстояний для второго маршрута от А
|
А |
6 |
7 |
8 |
9 |
А |
∞ |
9 |
1 |
9 |
7 |
6 |
9 |
∞ |
8 |
16 |
15 |
7 |
1 |
8 |
∞ |
9 |
7 |
8 |
9 |
16 |
9 |
∞ |
2 |
9 |
7 |
15 |
7 |
2 |
∞ |
В каждой строке находим минимальный элемент hi и выполним приведение матрицы по строкам (табл. 4.12).
Таблица 4.12
Матрица кратчайших расстояний, приведенная по строкам
|
А |
6 |
7 |
8 |
9 |
hi |
А |
∞ |
8 |
0 |
8 |
6 |
1 |
6 |
1 |
∞ |
0 |
8 |
7 |
8 |
7 |
0 |
7 |
∞ |
8 |
6 |
1 |
8 |
7 |
14 |
7 |
∞ |
0 |
2 |
9 |
5 |
13 |
5 |
0 |
∞ |
2 |
Далее полученную в табл. 4.12 матрицу необходимо привести по столбцам. Результат приведения представлен в табл. 4.13.
Таблица 4.13
Матрица кратчайших расстояний, приведенная по столбцам
|
А |
6 |
7 |
8 |
9 |
А |
∞ |
1 |
0 |
8 |
6 |
6 |
1 |
∞ |
0 |
8 |
7 |
7 |
0 |
0 |
∞ |
8 |
6 |
8 |
7 |
7 |
7 |
∞ |
0 |
9 |
5 |
6 |
5 |
0 |
∞ |
hj |
0 |
7 |
0 |
0 |
0 |
Нижняя граница равна:
= 1+8+1+2+2+7 = 21
Для нулевых элементов матрицы, приведенной в табл. 4.13, определим оценки Qij.
Результаты расчета оценок представлены в табл. 4.14.
Таблица 4.14
Расчет оценок для нулевых элементов
|
А |
6 |
7 |
8 |
9 |
А |
∞ |
1 |
0 6 |
8 |
6 |
6 |
1 |
∞ |
0 6 |
8 |
7 |
7 |
0 7 |
0 7 |
∞ |
8 |
6 |
8 |
7 |
7 |
7 |
∞ |
0 13 |
9 |
5 |
6 |
5 |
0 13 |
∞ |
В табл. 4.14 получили две максимальные оценки равные 13. Для дальнейшего решения выберем одну из них, какую не имеет принципиального значения. Пусть ветвь маршрута будет 8-9. Таким образом, исключаем из дальнейшего рассмотрения строку k = 8 и столбец s = 9. На пересечении строки 9 и столбца 8 ставим знак “-“.
Таблица 4.15
Матрица кратчайших расстояний, после исключения строки 8, столбца 9
|
А |
6 |
7 |
8 |
А |
∞ |
1 |
0 |
8 |
6 |
1 |
∞ |
0 |
8 |
7 |
0 |
0 |
∞ |
8 |
9 |
5 |
6 |
5 |
∞ |
Проверяем условие, что бы в каждой строке и столбце усеченной матрицы были нулевые значения, оно не выполняется, поэтому операция приведения проводится заново.
Таблица 4.16
Приведение матрицы усеченной на строку 8 и столбец 9
|
А |
6 |
7 |
8 |
hi |
А |
∞ |
1 |
0 |
0 |
0 |
6 |
1 |
∞ |
0 |
0 |
0 |
7 |
0 |
0 |
∞ |
0 |
0 |
9 |
5 |
6 |
5 |
∞ |
|
hj |
0 |
0 |
0 |
8 |
|
От начальной вершины "все решения" проводят ответвление вершин ks и с нижними границами:
Рис. 6. Первое ветвление «дерева решений» для метода «ветвей и границ»
Далее производиться расчет оценок для нулевых значений усеченной матрицы, выбирается максимальное значение, которое покажет новое ветвление «дерева решений» (табл. 4.17).
Таблица 4.17
Расчет оценок для нулевых элементов
|
А |
6 |
7 |
8 |
А |
∞ |
1 |
0 0 |
0 0 |
6 |
1 |
∞ |
0 0 |
0 0 |
7 |
0 1 |
0 1 |
∞ |
0 1 |
9 |
5 |
6 |
5 |
∞ |
Полученное ветвление отмечаем на «дереве решений» (рис. 7).
Наибольшее искомое значение получаем 1, выбираем, например, на пересечении столбца 6 и строки 7. Исключаем из дальнейшего рассмотрения указанные строку и столбец. На пересечении строки 6 и столбца 7 ставим знак “-“.
Рис. 7. Второе ветвление «дерева решений»
Таблица 4.18
Матрица кратчайших расстояний, после исключения строки 7, столбца 6
|
А |
7 |
8 |
А |
∞ |
0 |
0 |
6 |
1 |
∞ |
0 |
9 |
5 |
5 |
∞ |
Проверяем условие, что бы в каждой строке и столбце усеченной матрицы были нулевые значения, оно не выполняется, поэтому операция приведения проводится заново.
Следующее усечение матрицы представлено в табл. 4.19.
Таблица 4.19
Приведение матрицы усеченной на строку 7 и столбец 6
|
А |
7 |
8 |
hi |
А |
∞ |
0 |
0 |
0 |
6 |
0 |
∞ |
0 |
0 |
9 |
4 |
5 |
∞ |
|
hj |
1 |
0 |
0 |
|
Таблица 4.20
Расчет оценок для нулевых элементов
|
А |
7 |
8 |
А |
∞ |
0 0 |
0 0 |
6 |
0 4 |
∞ |
0 0 |
9 |
4 |
5 |
∞ |
Наибольшее искомое значение получаем 4, выбираем, например, на пересечении столбца A и строки 6. Исключаем из дальнейшего рассмотрения указанные строку и столбец.
Таблица 4.21
Приведение матрицы усеченной на строку 6 и столбец A
|
7 |
8 |
А |
0 |
0 |
9 |
5 |
∞ |
Проверяем условие, что бы в каждой строке и столбце усеченной матрицы были нулевые значения, оно выполняется, поэтому операция приведения не проводится заново.
Таблица 4.22
Приведение матрицы усеченной на строку 6 и столбец А
|
7 |
8 |
hi |
А |
0 |
0 |
0 |
9 |
0 |
∞ |
5 |
hj |
0 |
0 |
|
И получаем матрицу 2 х 2, в которой однозначно представлены две последние «ветки» маршрута (табл. 4.23).
Таблица 4.23
Матрица 2 х 2 для метода «ветвей и границ»
|
7 |
8 |
А |
0 |
0 |
9 |
0 |
∞ |
При этом «дерево решений» примет окончательный вид, который проиллюстрирован на рис. 8.
Анализируя полученные участки (ветви), имеем следующий маршрут: A 8 9 7 6 A, длина которого составляет 35 км.
Рис. 8. «Дерево решений» для второго маршрута грузоотправителя А
Проверим, правильно ли была определена нижняя граница, для чего просуммируем соответствующие расстояния между пунктами маршрута: 9 + 2 + 7 + 8 + 9 = 35 км.
Теперь проводим аналогичные вычисления для грузоотправителя Б.
Для грузоотправителя Б построим матрицу кратчайших расстояний.
Таблица 4.24
Матрица кратчайших расстояний для маршрута от Б
|
Б |
2 |
10 |
Б |
∞ |
7 |
4 |
2 |
7 |
∞ |
3 |
10 |
4 |
3 |
∞ |
В каждой строке находим минимальный элемент hi и выполним приведение матрицы по строкам (табл. 4.25).
Таблица 4.25
Матрица кратчайших расстояний, приведенная по строкам
|
Б |
2 |
10 |
hi |
Б |
∞ |
3 |
0 |
4 |
2 |
4 |
∞ |
0 |
3 |
10 |
1 |
0 |
∞ |
3 |
Далее полученную в табл. 4.25 матрицу необходимо привести по столбцам. Результат приведения представлен в табл. 4.26.
Таблица 4.26
Матрица кратчайших расстояний, приведенная по столбцам
|
Б |
2 |
10 |
Б |
∞ |
3 |
0 |
2 |
3 |
∞ |
0 |
10 |
0 |
0 |
∞ |
hj |
1 |
0 |
0 |
Нижняя граница, то есть минимально возможная длина маршрута, определяется по формуле
(6)
и равна:
= 4+3+3+1 = 11;
Для нулевых элементов матрицы, приведенной в табл. 4.26, определим оценки Qij. Так для нулевого элемента, находящегося на пересечении строки 2 и столбца 10, оценка Q2-10 = 3 + 0 = 3 (минимальное значение по строке – 3, а по столбцу – 0). При этом необходимо помнить, что элемент, для которого производиться расчет, не учитывается и необходимо искать следующее наименьшее значение.
Результаты расчета оценок представлены в табл. 4.27.
Таблица 4.27
Расчет оценок для нулевых элементов
|
Б |
2 |
10 |
Б |
∞ |
3 |
0 3 |
2 |
3 |
∞ |
0 3 |
10 |
0 3 |
0 3 |
∞ |
В табл. 4.27 получили четыре максимальные оценки равные 3. Для дальнейшего решения выберем одну из них, какую не имеет принципиального значения. Пусть ветвь маршрута будет Б-10. Таким образом, исключаем из дальнейшего рассмотрения строку k = Б и столбец s = 10. На пересечении строки 10 и столбца Б ставим знак “-“.
Таблица 4.28
Матрица кратчайших расстояний, после исключения строки Б, столбца 10
|
Б |
2 |
2 |
3 |
∞ |
10 |
∞ |
0 |
Проверяем условие, что бы в каждой строке и столбце усеченной матрицы были нулевые значения, оно выполняется, поэтому операция приведения не проводится заново.
Таблица 4.29
Приведение матрицы усеченной на строку Б и столбец 10
|
Б |
2 |
hi |
2 |
0 |
∞ |
3 |
10 |
∞ |
0 |
0 |
hj |
0 |
0 |
|
От начальной вершины "все решения" проводят ответвление вершин ks и с нижними границами:
Рис. 9. Первое ветвление «дерева решений» для метода «ветвей и границ»
Проверяем условие, что бы в каждой строке и столбце усеченной матрицы были нулевые значения, оно выполняется, получаем матрицу 2 х 2, в которой однозначно представлены две последние «ветки» маршрута (табл. 4.30).
Таблица 4.30
Матрица 2 х 2 для метода «ветвей и границ»
|
Б |
2 |
2 |
0 |
∞ |
10 |
∞ |
0 |
При этом «дерево решений» примет окончательный вид, который проиллюстрирован на рис. 10.
Анализируя полученные участки (ветви), имеем следующий маршрут: Б 10 2 Б, длина которого составляет 14 км.
Рис. 10. «Дерево решений» для грузоотправителя Б
Проверим, правильно ли была определена нижняя граница, для чего просуммируем соответствующие расстояния между пунктами маршрута: 4 + 3 + 7 = 14 км.
Пробег с грузом (Lг), общий пробег (Lо) и транспортная работа (Р) для развозочных маршрутов определяются по следующим формулам:
(7)
(8)
(9)
Lг = (6+6+1+8)+(9+2+7+8)+(4+3) = 54 км.
Lо = (6+6+1+8+9)+(9+2+7+8+9)+(4+3+7) = 79 км.
PА1 = 6*10,94 + 6*(10,94-2,52) + (10,94-2,52-2,6) + 8*(10,94-2,52-2,6-4) = = 136,54 ткм
PА2 = 9*10,08 + 2*(10,08-2,75) + 7*(10,08-2,75-4,14) + 8*(10,08-2,75-
-4,14-2,71) = 131,55 ткм
PБ = 4*5,8 + 3*(5,8-4,74) = 26,38 ткм
Р = PА1 + PА2 + PБ = 294,47 ткм
По результатам решения третьего и четвертого пунктов задания сформируем сводную таблицу, сделаем количественные и качественные выводы.
Таблица 4.31
Сравнение технико-эксплутационных показателей
Показатель |
Пробег с грузом, км |
Общий пробег, км |
Транспортная работа, ткм |
После решения транспортной задачи |
57 |
114 |
135,84 |
После решения задачи маршрутизации |
54 |
79 |
294,47 |
После решения задачи маршрутизации значительно уменьшился пробег (в 1,82 раза), и увеличилась транспортная работа (в 2,16 раза). Можно сделать вывод о том, что кольцевые маршруты значительно уменьшают общий пробег и увеличивают транспортную работу по сравнению с маятниковыми.