Сообщений 0    Оценка 0        Оценить  
Система Orphus

Декомпозиция задачи маршрутизации с временными окнами

Автор: Перцовский Александр Константинович
Перевод:
Источник: «RSDN Magazine», www.rsdn.ru
Материал предоставил: Перцовский Александр Константинович
Опубликовано: 04.04.2013
Исправлено: 10.12.2016
Версия текста: 1.1
Математическая постановка задачи
Задача кластеризации
Схема метода декомпозиции множества заданий на доставку на КГР
Метод дальней точки
Метод, основанный на алгоритме Свира
Алгоритм улучшения разбиения на КГР
Апробация алгоритма декомпозиции
Список литературы

Математическая постановка задачи

Задача маршрутизации транспорта является известной задачей дискретной оптимизации[1]. В классической постановке данная задача может решаться методами линейного программирования, сложность которых оценена и известна[2]. В данной статье автором рассматривается задача маршрутизации транспорта с массогабаритными и временными ограничениями. Математическая постановка задачи выглядит следующим образом:


Здесь Routes– множество допустимых в смысле различных ограничений рейсов. В зависимости от накладываемых ограничений производится классификация задач. Рассматриваемая автором задача имеет следующий набор ограничений:


Здесь p – географическая точка, TO – временной интервал ее работы, o – задание на доставку, характеризуемое параметрами L(o) – точкой загрузки, D(o) – точкой назначения, C(o) – категорией груза, W(o) – массогабаритными характеристиками груза. Значение функции T(p, r) показывает момент посещения точки p при выполнении рейса r. Под v понимается одно из доступных транспортных средств характеризуемое параметрами C(v) – категория транспортного средства, TO(v) – расписание работы транспортного средства, W(v) – вместимость транспортного средства по весу и объему. Под принадлежностью транспортного средства рейсу понимается факт обслуживания данным транспортным средством данного рейса.

Доказано, что при появлении ограничений по расписанию задача маршрутизации станивится NP полной[3]. Для ускорения процесса решения данной задачи автор предлагает производить предварительную декомпозицию рассматриваемого множества географических точек на кластерные географические районы. В кластерные географические районы предлагается группировать близлежащие точки, которые могут попасть в один рейс в итоговом решении.

Задача кластеризации

После анализа нескольких баз транспортных компаний сформулированы следующие критерии оценок кластерных географических районов:


где ρ – линейное расстояние, а c – геометрический центр кластерного географическго района.

Данная задача минимизации рассматривается при ограничениях, сформулированных на основе ограничений исходной задачи маршрутизации:



Также при построении кластерны географических районов соблюдается условие, что суммарное время переездов между точками, попавшими в КГР, в порядке их добавления не превышает время работы транспортного средства.

Схема метода декомпозиции множества заданий на доставку на КГР

Для декомпозиции задачи автор считает разумным использовать алгоритмы кластеризации. Таким образом, основной проблемой становится решение вопроса о начальном разбиении на КГР, так как их конечное число не определено. Для решения данной задачи в ходе исследования были предложены два метода: метод дальней точки и алгоритм, основанный на алгоритме Свира решения задачи коммивояжера.

Метод дальней точки

Идея данного метода основана на последовательном построении кластеров по мере их заполнения, начиная с самого дальнего.

  1. Определить точку p0, наиболее удаленную от депо;
  2. Создать кластер С0, добавить в него точку p0;
  3. Среди нераспределенных точек выбрать p ближайшую к уже созданным кластерам;
  4. Определить два ближайших к точке p кластера C1, C2;
  5. Проверить ограничения на добавление p в кластер последовательно для C1, C2 в порядке близости их к точке и добавить точку к первому кластеру, для которого ограничения выполняются;
  6. В случае, если ограничения не выполнены ни для одного из кластеров, создать новый и добавить рассматриваемую точку к нему;
  7. Повторять шаги 3-6 пока есть нераспределенные точки.

Теорема 1. Метод дальней точки имеет сложность O(n 2 ), где n – количество точек доставки в рассматриваемой постановке задачи.

Доказательство теоремы конструктивное и следует из оценок

Метод, основанный на алгоритме Свира

Данный метод во многом похож на предыдущий. Отличие заключается в порядке рассмотрения точек. Приведем его схему:

Упорядочить точки в соответствии с полярным углом, вершина которого совпадает с геометрическим центром всех рассматриваемых географических точку, а стороны направлены в депо и рассматриваемую точку;

С учетом всех массогабаритных ограничений и ограничений по расписанию начать построение готовых рейсов в порядке возрастания величины полярного угла;

В случае невыполнения ограничений начать строить новый рейс с указанной точки.

Теорема 2. Сложность алгоритма построения начального разбиения на географические районы, основанного на алгоритме Свира, составляет O(n*log(n)+n), где n – количество точек доставки в рассматриваемой постановке задачи

Оценка также строится конструктивным методом при помощи пошаговой оценки каждого этапа алгоритма.

Алгоритм улучшения разбиения на КГР

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

1. Для каждой точки, не приписанной к существующему кластеру определить расстояния до построенных кластеров d1,…, dm

2. Упорядочить полученные расстояния по возрастанию;

3. Для каждой точки определить параметр Δ = d2 - d1, где параметры d были упорядочены в пункте 2;

4. Рассматривать точку, для которой Δ максимальна.

С учетом сформулированного алгоритма выбора рассматриваемой точки приведем схему метода улучшения полученной декомпозиции. Данный метод основан на алгоритме кластеризации k-средних.

1. Получить центры начального разбиения;

2. Если есть нераспределенные точки, выбрать точку по описанному выше алгоритму;

3. Определить расстояния от полученной точки до КГР;

4. Проверить выполнение ограничений по весу, объему и расписанию для ближайшего кластерного географического района. Если точку можно добавить, то добавить и перейти к пункту 2;

5. Если точку нельзя добавить в ближайший КГР, то аналогичным образом попытаться добавить её во второй по удаленности КГР. В случае успеха добавить и перейти к пункту 2;

6. При невыполнении пункта 5 создать новый КГР и добавить в него данную точку. Перейти к пункту 2.

Апробация алгоритма декомпозиции

Построенный метод был протестирован на нескольких базах транспортных компаний. В таблице ниже приведены результаты работы методов построения КГР с использованием метода, основанном на алгоритме Свира, и метода дальней точки в качестве алгоритма построения начальной декомпозиции соответственно.

Номер итерации

Первая база

Вторая база

Метод, основанный на алгоритме Свира, км

Метод дальней точки, км

Метод, основанный на алгоритме Свира, км

Метод дальней точки, км

1

14,884

12,782

39,327

38,454

2

12,852

12,634

26,415

22,801

3

10,958

12,362

21,480

17,796

4

10,4329

-

-

-

Как видно из таблицы выше, при использовании метода дальней точки было произведено меньше итераций по улучшению полученного разбиения, однако его результаты были несколько хуже. При этом отметим, что сложность одной итерации алгоритма улучшения кластеризации не превышает O(n3). При этом, как видно из полученной таблицы, для декомпозиции задачи потребовалось не более 4х итераций.

Размерность начальных баз составляла 350 и 400 точек соответственно, размерность полученных КГР не превышала 25 точек. Таким образом, предложенный автором метод позволяет в среднем за полиномиальное время произвести декомпозицию NP полной задачи на ряд задач меньшей размерности, решение которых можно распараллелить. Также полученные КГР можно использовать в качестве первого приближения для старта генетических алгоритмов решения транспортной задачи.

Список литературы

  1. Gendreau, M., Laporte, G., Potvin, J.-Y. Metaheuristics for the Capacitated VRP // The Vehicle Routing Problem, P. Toth and D. Vigo, eds., SIAM Monographs on Discrete Mathematics and Applications, 2002, pp. 129-154.
  2. Таха, Хэмди, А. Введение в исследование операций, 6-е издание.: Пер с англ. - М.: Издательский дом «Вильямс», 2001. - 912 с.
  3. Lenstra JK, Rinnooy Kan AHG. Complexity of vehicle routing and scheduling problems. Networks 1981;11: 221−227.


mag – журнал «RSDN Magazine»;
    Сообщений 0    Оценка 0        Оценить