Научная статья на тему 'Об одном классе задач маршрутизации'

Об одном классе задач маршрутизации Текст научной статьи по специальности «Математика»

CC BY
99
24
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАРШРУТИЗАЦИЯ / ROUTING / ОПТИМИЗАЦИЯ / OPTIMIZATION / ЭВРИСТИКА / HEURISTICS

Аннотация научной статьи по математике, автор научной работы — Бронштейн Ефим Михайлович, Гиндуллин Рамиз Вилевич

Рассмотрена оптимизационная задача доставки однородного груза из некоторых пунктов производства в пункты потребления транспортным средством ограниченной вместимости с возможностью неоднократного посещения каждого пункта. Приведена формализация поставленной задачи, предложено несколько эвристических алгоритмов решения и результаты вычислительных экспериментов.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

On one class of routing problems

Some problem of optimization of delivery of homogeneous cargo from some points of manufacture in points of consumption by a vehicle of the limited capacity with opportunity of multiple visitations are considered. Formalization of tasks is resulted, group algorithms of the decision and results of computing experiments are offered.

Текст научной работы на тему «Об одном классе задач маршрутизации»

Математическое моделирование: методы, алгоритмы, технологии

УДК 658.512

Е.М. Бронштейн, Р.В. Гиндуллин

Уфа, Россия

ОБ ОДНОМ КЛАССЕ ЗАДАЧ МАРШРУТИЗАЦИИ

E.M. Bronshtein, R.V. Gindullin

Ufa, Russia

ON ONE cLASS OF ROuTING PROBLEMS

Рассмотрена оптимизационная задача доставки однородного груза из некоторых пунктов производства в пункты потребления транспортным средством ограниченной вместимости c возможностью неоднократного посещения каждого пункта. Приведена формализация поставленной задачи, предложено несколько эвристических алгоритмов решения и результаты вычислительных экспериментов.

МАРШРУТИЗАЦИЯ. ОПТИМИЗАЦИЯ. ЭВРИСТИКИ.

Some problem of optimization of delivery of homogeneous cargo from some points of manufacture in points of consumption by a vehicle of the limited capacity with opportunity of multiple visitations are considered. Formalization of tasks is resulted, group algorithms of the decision and results of computing experiments are offered.

ROUTING. OPTIMIZATION. HEURISTICS.

Задачи маршрутизации - важный класс задач дискретной оптимизации. Начиная с работы Данцига и Рамцера [1], в которой исследовалась задача, названная VRP (Vehicle Routing Problem), анализировался широкий класс задач этого класса (см., в частности, обзоры [2-4, 6, 7]).

В данной статье рассматривается оптимизационная задача доставки однородного груза из некоторых пунктов производства в пункты потребления транспортным средством ограниченной вместимости c возможностью неоднократного посещения каждого пункта, приводятся и экспериментально исследуются несколько эвристических методов решения поставленной задачи. Транспортное средство (ТС) первоначально находится в депо и по окончании перевозок должно в депо вернуться. Доставку груза необходимо организовать по кратчайшему пути.

Будем считать, что все пункты пронумеро-

ваны числами 0, 1, ..., п, депо присвоен номер 0. Через а(г) обозначим объем груза в пункте производства (в этом случае а(г) > 0) или потребность в пункте потребления (тогда а(г) < 0). Мы не исключаем, что депо совпадает с пунктом производства, в противном случае а(0) = 0. Естественно

п

считать, что ^ а(г) = 0 . Задана также матрица С

г=0

расстояний между пунктами: С..(/,/' = 0, 1, ..., п) -расстояние от г-го пункта до .-го.

В [5] рассмотрен вариант задачи, в которой ТС могло посещать каждый пункт, кроме депо, только один раз.

Постановка задачи

Поскольку ТС может посещать каждый пункт неоднократно (из каждого пункта производства вывозить груз можно в несколько заходов и также в несколько заходов можно завозить груз в пункт

Научно-технические ведомости СПбГПУ 1' 2013 ^ Информатика. Телекоммуникации. Управление

потребления), то доставка возможна при любой вместимости ТС.

Формализация задачи имеет следующий вид. Необходимо найти последовательность пар (и(0), у(0)), (и(1), у(1)), ..., (п(Ы), У(Щ) (число N априори неизвестно), первый элемент которых -номер пункта, то есть и(1)е{0, 1, ..., п}, второй -вес груза, вывозимого или доставляемого при соответствующем посещении пункта

Должны выполняться следующие ограничения:

и(0)= и(Щ=0

(1)

(ТС должно начинать и заканчивать движение на базе);

0 <£г(1) < 5 (к = 0, 1, ..., N)

1=0

(ограничение на вместимость ТС);

(2)

£ {у(1 ): и (1) = Л = а (у) (у = 0, 1, ..., п) (3)

1=0

(из каждого пункта груз полностью вывозится, потребность каждого потребителя удовлетворяется);

если и(1) = У, то v(У)а(У) > 0

(4)

(из пункта производства груз только вывозится, в пункт потребления только доставляется - из условия (3) это не следует). Целевая функция:

^ (5)

£ Си (1), и (1+1)

^ Ш1П .

Для решения задачи (1)-(5) применен следующий эвристический подход.

На каждом шаге ТС выбирает пункт, куда оно отправится. Для этого ТС перебирает все возможные допустимые варианты перемещения на к последующих шагов. Из них выбирается вариант с наименьшей длиной перемещения, и ТС делает один шаг по выбранному пути. Далее ТС снова производит перебор вариантов перемещения на к последующих шагов, выбирает из них маршрут с наименьшей длиной, делает один шаг и так происходит до тех пор, пока не будут пройдены все пункты. Перед запуском алгоритма выбирается значение параметра к.

Во время перебора последующих к шагов следует следить за тем, чтобы не попадать в пункты, которые уже были полностью обслужены, а также, чтобы заполненное ТС не попадало в пункт производства или пустое ТС - в пункт потребления. При попадании в пункт производства ТС вывозит весь наличный груз (если позволяет вместимость), либо заполняется полностью. При попадании в пункт потребления ТС оставляет весь груз (если при этом не возникает избытка груза), либо полностью заполняет пункт потребления.

Следует заметить, что стратегии описанного типа (забери или оставь как можно больше) не обязательно приводят к оптимальному решению.

Пример 1. На рисунке отмечены пункты 0, 1, 2, 3 и соответствующая сеть дорог (некоторые из них с односторонним движением).

Полагаем, что длины всех отрезков равны единице. Расстояния определяются как длины кратчайших путей. Например: С12 = 1, С21 = 2,

С = 2 С = 3

0,2 2,0

Пример задачи, в которой неэффективен жадный алгоритм

,-п

4

Математическое моделирование: методы, алгоритмы, технологии^

Результаты численных экспериментов

Среднее время решения, с Среднее отношение длины маршрута

п к длине маршрута, найденного алгоритмом А

k = 1 k = 2 k = 3 1 1 4 k = 1 k = 2 k = 3 1 1 4

Группа задач I

4 0,00047 0,0012 0,0016 0,0030 1 1,031 0,986 0,959

5 0,0012 0,0019 0,0042 0,0095 1 1,058 1,010 0,974

6 0,0011 0,0028 0,0089 0,029 1 1,106 1,037 1,017

7 0,0011 0,0045 0,019 0,074 1 1,086 1,067 1,038

8 0,0025 0,0068 0,037 0,18 1 1,086 1,056 1,034

9 0,0026 0,011 0,06 0,33 1 1,083 1,073 1,032

10 0,0028 0,014 0,10 0,62 1 1,101 1,098 1,074

11 0,0031 0,020 0,15 1,1 1 1,106 1,083 1,046

12 0,0031 0,026 0,22 1,8 1 1,108 1,090 1,085

13 0,0042 0,037 0,33 3,0 1 1,092 1,060 1,036

14 0,0042 0,046 0,45 4,6 1 1,115 1,076 1,065

15 0,0053 0,058 0,66 7,1 1 1,099 1,119 1,101

16 0,0053 0,072 0,84 10,0 1 1,137 1,129 1,128

17 0,0066 0,092 1,1 14,0 1 1,101 1,110 1,081

18 0,0070 0,11 1,5 19,7 1 1,121 1,095 1,113

19 0,0073 0,13 1,8 25,5 1 1,128 1,097 1,070

20 0,0082 0,16 2,4 35,1 1 1,112 1,072 1,081

21 0,0094 0,19 3,0 46,8 1 1,099 1,090 1,099

22 0,0079 0,23 3,8 63,4 1 1,132 1,104 1,080

23 0,0089 0,26 4,6 79,8 1 1,124 1,092 1,100

24 0,011 0,31 5,8 102,1 1 1,106 1,101 1,103

25 0,011 0,36 7,0 136,5 1 1,141 1,109 1,129

Группа задач II

4 0,00077 0,0042 0,010 0,027 1 1,008 1,007 1,007

5 0,0009 0,0088 0,023 0,073 1 1,011 1,009 1,009

6 0,0014 0,014 0,047 0,17 1 1,007 1,007 1,006

7 0,0010 0,026 0,095 0,39 1 1,012 1,015 1,012

8 0,0022 0,040 0,17 0,81 1 1,009 1,009 1,012

9 0,0027 0,059 0,29 1,6 1 1,007 1,008 1,010

10 0,0027 0,081 0,41 2,4 1 1,009 1,012 1,015

11 0,0036 0,11 0,64 4,2 1 1,007 1,012 1,013

12 0,0042 0,15 0,94 6,7 1 1,010 1,013 1,015

13 0,0046 0,20 1,4 10,7 1 1,011 1,012 1,019

14 0,0044 0,26 1,9 16,3 1 1,013 1,020 1,023

15 0,0056 0,34 2,7 24,0 1 1,012 1,014 1,016

16 0,0051 0,41 3,4 31,8 1 1,016 1,020 1,026

17 0,0083 0,53 4,8 49,0 1 1,011 1,013 1,018

18 0,0078 0,81 7,8 82,3 1 1,011 1,014 1,020

19 0,0070 0,74 7,4 83,9 1 1,009 1,016 1,022

20 0,0083 0,87 9,5 114,3 1 1,011 1,018 1,024

Научно-технические ведомости СПбГПУ 1' 2013 Информатика. Телекоммуникации. Управление

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

21 0,011 1,4 15,4 190,9 1 1,013 1,018 1,024

22 0,011 1,5 17,6 226,0 1 1,012 1,018 1,022

23 0,010 1,6 19,6 267,2 1 1,010 1,016 1,020

24 0,012 1,7 22,1 314,7 1 1,010 1,015 1,025

25 0,013 2,1 28,6 426,0 1 1,012 1,014 1,021

Группа задач III

4 0,00077 0,0014 0,0036 0,0065 1 1,019 1,003 0,969

5 0,00093 0,0027 0,0076 0,023 1 1,033 1,013 0,991

6 0,00078 0,0047 0,018 0,059 1 1,055 1,018 0,996

7 0,0020 0,0059 0,031 0,12 1 1,025 1,012 1,014

8 0,0011 0,0129 0,056 0,27 1 1,051 1,028 1,023

9 0,0025 0,02 0,10 0,65 1 1,049 1,065 1,023

10 0,0020 0,03 0,16 0,97 1 1,034 1,027 1,025

11 0,0023 0,04 0,24 1,6 1 1,042 1,060 1,032

12 0,0035 0,05 0,34 2,5 1 1,038 1,024 1,014

13 0,0039 0,07 0,58 4,8 1 1,043 1,046 1,032

14 0,0049 0,08 0,74 6,4 1 1,024 1,041 1,045

15 0,0060 0,10 0,96 9,0 1 1,035 1,044 1,037

16 0,0053 0,14 1,4 14,0 1 1,045 1,046 1,031

17 0,0059 0,16 1,7 18,4 1 1,051 1,041 1,036

18 0,0067 0,21 2,4 28,2 1 1,044 1,050 1,033

19 0,0076 0,25 3,0 37,6 1 1,066 1,064 1,074

20 0,0086 0,31 3,9 50,7 1 1,030 1,039 1,037

21 0,0085 0,38 5,0 69,1 1 1,020 1,047 1,033

22 0,010 0,41 5,7 82,5 1 1,056 1,070 1,070

23 0,010 0,51 7,5 112,5 1 1,045 1,051 1,047

24 0,010 0,61 9,4 148,2 1 1,049 1,061 1,056

25 0,013 0,78 12,5 207,5 1 1,034 1,040 1,039

Наличие и потребности в грузе в пунктах равны соответственно 2, -2, -1, 1. Оптимальный план перевозок, очевидно, имеет вид ((0,2), (1,-1), (2,-1), (3,1), (1,-1), (0,0)). Длина маршрута при этом равна 5.

Описанная стратегия приводит к плану перевозок ((0,2), (1,-2), (3,1), (2,-1), (0,0)). Длина маршрута равна 8.

Численные эксперименты

Для заданного числа пунктов п

• генерируются с помощью датчика случайных чисел целочисленные величины а(1), ..., а(п) из заданного промежутка (см. ниже), принимаем

п-1

а(п) = -£ а(1);

1=1

• аналогично генерируются 2п вещественных чисел - координаты пунктов (х(/), у(/)) ( = 1, ..., п),

за базу принимается точка (0,0), расстояния C, принимаются равными евклидовым расстояниям между точками.

Вместимость ТС, S считается целочисленной и задается случайным образом в указанном промежутке (см. ниже).

Производилась генерация трех групп задач:

I. -2 < a(i) < 2 , S < 5 ;

II. -5 < a(i) < 5, S < 50 ;

III. -50 < a(i) < 50, S < 50 .

Для каждого n e [4; 25] в каждой группе генерировались сто примеров.

К каждой полученной задаче применялся указанный алгоритм при k равном 1, 2, 3 или 4. Длины полученных маршрутов сравниваются c результатом алгоритма при к, равном единице.

В таблице приведены результаты численных экспериментов.

4

Математическое моделирование: методы, алгоритмы, технологии

На основании полученных данных можно сделать следующие выводы:

во всех группах задач при п >= 6 алгоритм при k = 1 находит результат по длине маршрута и затраченному времени (число операций), чем при других значениях к;

средняя длина маршрута, полученная при k = 2, близка к аналогичному результату при k = 3 и k = 4, но временные затраты существенно ниже;

разница в расстояниях найденных маршрутов

в среднем находится в пределах 10 %, а у второй группы задач - в пределах 1 %. С увеличением количества пунктов эта величина сохраняется;

вторая группа задач (значительные веса потребителей при небольшой вместимости ТС) является самой трудоемкой с точки зрения затрат времени.

Рассмотрена задача маршрутизации. Приведена ее формализация. Предложены подходы к решению и проведены численные эксперименты.

СПИСОК ЛИТЕРАТУРЫ

1. Dantzig, G.B. The Truck Dispatching Problem [Text] / G.B. Dantzig, J.H. Ramser // Management Science. -1959. -Vol. 6. -№ 1. -P. 80-91.

2. Parragh, S. A survey on pickup and delivery problems. Part I: Transportations between customers and depot [Text] / S. Parragh, K. Doerner, R. Hartl // J. fur Betriebswirtschaft. -2008. -Vol. 58. -P. 21-51.

3. Parragh, S. A survey on pickup and delivery problems. Part I: Transportations between customers and depot [Text] / S. Parragh, K. Doerner, R. Hartl // J. fur Betriebswirtschaft. -2008. -Vol. 58. -P. 82-117.

4. Berbeglia, G. Static pickup and delivery problems: A classi_cation scheme and survey [Text] / G. Berbeglia,

J.F. Cordeau, I. Gnbkovskarn [et al.] // TOP. -2007. -Vol. 15. -№ 1. -P. 1-31.

5. Бронштейн, Е.М. Об одном классе задач маршрутизации [Текст] / Е.М. Бронштейн, Р.В. Гиндуллин // Математическое моделирование. -2011. -Т. 23. -№ 6. -С. 123-122.

6. Бронштейн, Е.М. Детерминированные оптимизационные задачи транспортной логистики [Текст] / Е.М. Бронштейн, Т.А Заико // Автоматика и телемеханика. -2010. -№ 10. -С. 133-147.

7. Кристофидес, Н. Теория графов. Алгоритмический подход [Текст] / Н. Кристофидес. -М.: Мир, 1978. -432 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.