Научная статья на тему 'Метод трехфазовой декомпозиции для решения задачи построения маршрутов следования транспортных средств с учетом размещения грузов'

Метод трехфазовой декомпозиции для решения задачи построения маршрутов следования транспортных средств с учетом размещения грузов Текст научной статьи по специальности «Математика»

CC BY
245
25
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МЕТАЭВРИСТИКА / МАРШРУТИЗАЦИЯ / КОМБИНАТОРНАЯ ОПТИМИЗАЦИЯ / ПОСТРОЕНИЕ МАРШРУТОВ СЛЕДОВАНИЯ / МЕТОД ТРЕХФАЗНОЙ ДЕКОМПОЗИЦИИ

Аннотация научной статьи по математике, автор научной работы — Гильманова Надежда Александровна

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

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

n this paper a hard combinatorial optimization problem, capacitated vehicle routing with three-dimensional loading constraints is considered. A new heuristic method named three-phase decomposition is proposed for its solving.

Текст научной работы на тему «Метод трехфазовой декомпозиции для решения задачи построения маршрутов следования транспортных средств с учетом размещения грузов»

2. Рапопорт, Э.Я. Оптимизация процессов индукционного нагрева металла [Текст] / Э.Я. Рапопорт. —М., 1993. -279 с.

3. Rapoport, E. Optimal Control of Induction Heating

Processes [Text] / E. Rapoport, Y. Pleshivtseva. -CRC Press, NY, 2007.

4. [Электронный ресурс] / Режим доступа: http:// www.cedrat.com

УДК 519.863

Н.А. Гильманова

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

с учетом размещения грузов

Задачи упаковки и построения маршрутов, актуальные для развивающейся быстрыми темпами сферы транспортной логистики, с давних пор изучаются многими исследователями в области комбинаторной оптимизации; разработаны точные и эвристические методы их решения. Однако лишь в последние годы появились работы, посвященные решению этих задач в тесной взаимосвязи: поиску набора маршрутов с одновременным выяснением возможности размещения грузов в транспортных средствах (ТС). Такое объединение способно точно описать реальные ситуации грузоперевозок, но, очевидно, что вычислительная сложность задачи построения маршрутов с трехмерным размещением грузов в ТС (Capacitated Vehicle Routing Problem with Three-Dimensional Loading Constraints, 3L-CVRP) существенно выше, чем сложность задач трехмерной упаковки контейнеров (3DBPP) и маршрутизации (CVRP) по отдельности, при том, что обе эти задачи яв-

ляются NP-трудными. На рис. 1 приведен пример решения задачи 3L-CVRP с 5 клиентами. Получено два маршрута и, соответственно, две схемы размещения грузов в ТС.

Задача 3L-CVRP была впервые представлена в работе [1] в 2006 г.; для ее решения предложен алгоритм поиска с запретами (Tabu Search, TS) и приведены результаты численного эксперимента с применением данного алгоритма. В более ранней работе [2] представлена аналогичная задача с двумерным размещением грузов (2L-CVRP), ее формулировка в виде задачи целочисленного линейного программирования (ЛП) и точный алгоритм решения. Для задачи 3L-CVRP единой ЛП-формулировки и точного метода решения до настоящего момента не создано, целесообразность их разработки ставится под сомнение в связи с чрезвычайно высокой сложностью задачи. Задачам 2L-CVRP и 3L-CVRP посвящена докторская диссертация Fuellerer [3], в которой для их

Рис. 1. Пример решения задачи 3L-CVRP

решения предложен алгоритм муравьином колонии (Ant Colony Optimization, ACO), превосходящий TS по эффективности.

В данной статье представлен новый алгоритм для решения задачи 3L-CVRP, названный методом трехфазной декомпозиции (Three-Phase Decomposition, 3-PD), описаны основные аспекты его работы и с помощью численного эксперимента проведено сравнение качества работы 3-PD с алгоритмами TS и ACO.

Постановка задачи 3L-CVRP

Задан полный1 взвешенный неориентированный граф G = (V,E), где V = {0, 1, ..., n} - множество вершин, среди которых вершина 0 - депо или склад предприятия, вершины 1, ..., n - клиенты, а E = {[i, j]: i, j е V} - множество ребер; cij - протяженность ребра [i, j]. В распоряжении предприятия имеется v однотипных ТС с грузоподъемностью М, длиной грузового отсека L, шириной W и высотой H. Заказ каждого клиента i (i = 1, ..., n) представляет собой множество ящиков-параллелепипедов в количестве q' с суммарной массой m'; каждый ящик характеризуется длиной l'k, шириной w'k, высотой h'k, флагом хрупкости f'k е {0,1} (при f = 1 ящик хрупкий), а также набором допустимых ориентаций

К = Гк2,..., rL), rkj е - флаг разрешения

на расположение ящика k клиента i в положении j = 1, ..., 6 (k = 1, ..., q') (каждое из шести возможных положений обеспечивает ортогональность размещения, т. е. параллельность граней ящика граням грузового отсека ТС).

Необходимо для каждого количества используемых ТС v' < v определить набор из v' маршру-

тов вида (0, р(, , ..., Рд ,0), где - число клиентов, обслуживаемых по маршруту у = 1, ..., у'. Маршруты должны иметь минимальную суммарную протяженность2:

( Qj -1 ^

I

j=1

c , + I c , , + c „

0 p( fi jh+1 pQj0 h=1

^ min

Qj :

V J

при выполнении следующих условий:

(R1) для У/ = 1,...,и 3/ = 1,..., V', к = 1,

' = рк;

(R2) для У/1, j2 = 1, ..., V', ¡1 = 1, ..., ¡2 = 1,..., Qj 2: р/ * р/2; д

(R3) для У/ = 1, ..., V': <М .

к=1

Ограничения R1-R3, традиционные для задач маршрутизации, означают, что каждый клиент посещается строго по одному маршруту и суммарная масса грузов в каждом ТС не превышает его грузоподъемность.

В связи с наличием упаковочного аспекта в задаче 3L-CVRP, для каждого маршрута требуется также найти допустимую схему размещения ящиков, заказанных клиентами, обслуживаемыми по данному маршруту. Рассмотрим отдельный маршрут доставки / (у = 1,..., у') с последовательностью посещения пунктов (0, р1, р2, ..., рд ,0). Далее индекс/ будет опущен. Схема размещения грузов в ТС представляет собой набор (хрр,ур,хр,хрк, <к,СРрк), й = 1,...,0, к = 1, ..., црк, состоящий из координат дальних левых нижних вершин всех заказанных ящиков и проекций ребер ящиков на оси координат (проекции характеризуют ориентацию ящиков). Схема допустима, если удовлетворяет следующим ограничениям:

(L1)

(ГР = 1) л (х p

П = 1) л (xPh

(rPph = 1) л (хр

(rPh = 1) л (xPh

= ip) л (ур = wph) л (ZPh = hp) = wPh) л (у? = lPph) л (ZPh = hPph ) = hp) л (у? = lPph) л (ZPh = wp) = iph) л (уph = hph) л (Zph = wph) (rp = 1) л (Xf = wph) л (у? = hp) л (ZPph = 4ph) = hph) л (уp = wp) л (Zp = lp)

= 1) л (Xf

1 Если граф не является полным, то предварительно необходимо рассчитать кратчайшие пути между каждой парой вершин.

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

(L2)

h = 1, ..., Q, k = 1, ..., qPh;

iyPhl > -v-ph2 I r,/ph 2\w/ -,.ph1 > ,ph2 I irph2\x// -phl > -.^2 i Г ph 2 Л

\Xk1 — Xk2 Ik2 JV \Ук1 — yk2 ^ Yk2 JV \Zki — Zk2 ^k2 h

(xp22 > xpi1 + xph1) v (У22 > ypi1 + Vph1) v (zf? > zkh1 + Zph1);

hi,h2 = 1, ..., Q,k1 = 1, ..., qph1 ,k = 1, ..., qPhl ,k * k2 при h = ^ ; (L3) {(xfh > 0) л (yfh > 0) л (zf > 0), ( ) [(xph + xk < L) л (y* + <h < Г) л (zph + ZPph < H); h = 1, ..., Q,k = 1, ..., qph ;

(xpr > xp22 + xp22) v (ypr > yph2 + Vp22),

(xp22 > xph1 + xph1) v (yk22 > yPph + vph1);

(L4)

h,,h2 = 1, ..., Q,k = 1, ..., qph1 ,k2 = 1, ..., qph2 : ft? = 1,^ = 0 , z^2 = zph1 + Zp

(L5)

z ph 2 = ^k 2

h2 q p

Z Z (min{xP22 + Xp22, xPi1 + x ph1} - max{xf2 2, xph1}) • (min{ yP h1=1 k1=1

+<22, yfi1 + V«} - max{y^2, yP1}) > a • xkp22 • Vp22;

rph1

+ Z ph1 •

l>ph 2

,,ph1

,ph1

<2 4 ••• 5 Ü "-2 ^ -"5 5 ^k2 Z'k1

^ ™ph 2 I - < ph 2 ™ph 2 ^ vph1 i - ,ph1 т ,ph1 ^ *ph 2 i i ,,ph 2 ,,ph 2 ^ ,ph1 i i ifph1

xk1 < Xk2 +Xk2 , Xk2 < Xk1 +Xk1 , yk1 < yk2 +Vk2 , yk2 < yk1 +Vk1 ;

y-ph1 ^ yph2 I */ph2

SU V Xk2 "Г A/k 2 '

(L6) (yph1 > yph2 + Vp22) v (yph2 > ykh1 + YkT),

(z- >zP22 +zph2)v(zP22 >zph +zph1);

h2 = 1, ..., Q, h < h2, k1 = 1, ..., qph1 , k2 = 1, ..., qh2

Условия L1, L2 и L3 обеспечивают допустимость ориентации каждого ящика3 и запрещают перекрытия предметов между собой и с гранями грузового отсека ТС, условие L4 не допускает непосредственный вертикальный контакт верхней грани установленного хрупкого ящика и дна нехрупкого ящика. Нелинейное ограничение L5 отвечает за обеспечение устойчивости размещения: дно каждого ящика не менее, чем на долю площади a должно иметь под собой твердую опору в виде дна грузового отсека ТС или верхних граней уже установленных ящиков (провисание ящика составляет не более доли площади дна (1 - a)). Наконец, условие L6 (LIFO policy) обеспечивает доступность ящиков для выгрузки в каждом пункте (при разгрузке в каждом пункте не требуется

3 Предшествующие постановки жестко устанавливали набор допустимых ориентаций сразу для всех ящиков (разрешалось поворачивать ящики в плоскости основания; переворачивания не допускались).

переставлять ящики, предназначенные для следующих по маршруту пунктов).

Трехфазная декомпозиция для решения задачи 3L-CVRP

Общая схема метода. Для решения задачи 3L-CVRP разработан метаэвристический метод, названный трехфазной декомпозицией (3-PD) по аналогии с двухфазной декомпозицией - эвристическим методом решения классической задачи CVRP, основные действия которого - разбиение множества клиентов на зоны (кластеры) и поиск маршрута по каждой зоне [4]. Третий этап 3-PD заключается в поиске допустимого размещения грузов внутри грузового отсека ТС по заданному маршруту. Таким образом, выделяются три основных процедуры 3-PD: Zoning (зонирование), Routing (маршрутизация) и Loading (загрузка). Схема представлена на рис. 2.

Поскольку ситуации, когда при суммарном объеме загружаемых объектов, близком к

4

Рис. 2. Схема алгоритма трехфазной декомпозиции (3-PD)

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

Алгоритм 1.

1. procedure Zoning(MaxV )

1 с \ груза7

2. BEGIN

3. Zone ^{{1},{2}, ..., {и}};

4. OpenZone ^ {1,2, ..., и};

5. while OpenZone Ф0

6. j ^ random(OpenZone);

7. SortZonesByDistj);

о наиденных допустимых маршрутах и о зонах, для которых допустимый маршрут наИти не удалось (запретных зонах).

Зонирование. Для зонирования разработан модифицированный алгоритм кластеризации по принципу ближнего соседа с учетом ограничения на грузоподъемность ТС. Сначала каждый пункт объявляется отдельной зоной, затем на каждой итерации выбирается случайная зона и объединяется с ближайшей к ней, если такое объединение допустимо.

Зонирование

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

Л

8. Merged ^ false;

9. for each z in OpenZone

f

10. if (z ф j) and ^ m1 < M and

^ieZonej uZonez ^

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

11. MergeZonesj, z);

12. Merged ^ true;

13. break;

14. if not(Merged)

15. OpenZone ^ OpenZone \ {j} ;

16. SortZonesByVolume;

17. END.

Маршрутизация. В рамках алгоритма 3-PD фаза маршрутизации заключается в поиске набора наиболее коротких обходов заданной зоны, начинающихся и заканчивающихся в депо, и, таким образом, представляет собой решение задачи коммивояжера (Traveling Salesman Problem, TSP). Допустимость размещения грузов в ТС может зависеть от порядка посещения пунктов разгрузки, в т. ч. если для последовательности (0, pl, p2, ..., pQ ,0) схема трехмерного размещения грузов существует, то для обратной ей последовательности (0,pq,Pq_x, ...,Pi,0) с той же длиной допустимого размещения может не быть. Количество маршрутов в выходном наборе ограничивается заранее заданным числом, которое с помощью предварительного численного эксперимента установлено равным 12.

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

//проверка возможности объединения

Z Z«h ^MaxViv

ieZone j uZonez k=1

//объединить зоны, пересмотреть откр.зоны

//если объединение не произошло //исключить у из списка открытых зон //упорядочить получ.зоны по убыванию V

ции задача решается точно простым в реализации методом ветвей и границ для числа пунктов до 10. Если же число пунктов в зоне выше, то для решения используется простейший одноточечный эволюционный алгоритм (1+1)-ЕА [5], перебирающий случайные последовательности пунктов ограниченное число раз (например, 10 млн последовательностей).

Загрузка ТС по маршруту. Цель третьей фазы алгоритма 3-PD - выяснение возможности упаковки грузов по зоне в одно ТС согласно заданному маршруту и получение допустимой схемы размещения, если таковая имеется. Для поиска трехмерной схемы размещения используется мультиметодный алгоритм 3D-MMA [6] в рамках одноточечного эволюционного алгоритма (1+1)-ММЕА. Предварительный численный эксперимент показал, что для отыскания допустимой схемы размещения грузов в ТС, как правило, достаточно тысячи итераций (1+1)-ММЕА.

Алгоритм 2. Загрузка ТС по маршруту

1. procedure Loading(p1,p2, ...,pQ )

2. BEGIN

3. Positions ^ {(0,0,0)};

4. Packed ^ true ;

5. for each i from Q downto 1;

6. ItemsUnpacked ^ {1,2, ..., qp'} while (ItemsUnpacked ^ 0) and (Positions ^ 0)

PositionHeuristic ^ random(PosHeurList) ; CurPos ^ ChoosePosition(PositionHeuristic) ; ItemHeuristic ^ random(ItemHeurList) ; CurItem ^ ChooseItem(CurPos,ItemHeuristic) ; if CurItem > 0

7.

9.

10. 11. 12.

13.

14.

//первая точка для установки объекта //ящики загружаются в порядке, //обратном посещению пунктов по маршруту //список объектов очередного пункта //пока есть точки и неупак.объекты //выбрать эвристику точки из списка //выбрать соответствующую точку //выбрать эвристику объекта из списка //выбрать соотв.объект, удовл. усл. L1-L6 //если такой объект найден //исключить его из списка неупакованных

ItemsUnpacked = ItemsUnpacked \ CurItem Positions = Positions u NewPositions(CurPos, CurItem) \ CurPos ; //обновить список точек

15. if Positions = 0 //если точек больше нет

16. Packed ^ false ; //то схему размещения найти не удалось

17. break ;

18. END.

Таблица 1

Вероятности применения элементарных эвристик (алгоритм 3D-MMA)

Эвристики выбора точки установки

Эвристика Вероятность Эвристика Вероятность

min х ^ min z ^ min y 0,1667 min (x2+z2) ^ min х ^ min y 0,1667

min y ^ min х ^ min z 0,1666 min х ^ min y ^ min z 0,1667

min z ^ min х ^ min y 0,1666 min ^2+y2+z2) ^ min х ^ min z 0,1667

Эвристики выбора объекта

Эвристика Вероятность Эвристика Вероятность

max х ^ max у ^ max Z 0,0249 max х ^ max Z ^ max у 0,0249

max х ^ max у Z ^ max у 0,0187 max х ^ max у Z ^ max Z 0,0373

max х у ^ max х ^ max Z 0,0311 max х Z ^ max х ^ max у 0,0249

max х у ^ max Z ^ max х 0,0249 max х Z ^ max у ^ max х 0,0249

max х у Z ^ max х ^ max у 0,0187 max х у Z ^ max х ^ max Z 0,0311

max х у Z ^ max х у ^ max х 0,0187 max х у Z ^ max х Z ^ max х 0,0311

max у ^ max х ^ max Z 0,0249 max у ^ max Z ^ max х 0,0187

max у ^ max х Z ^ max х 0,0187 max у ^ max х Z ^ max Z 0,0249

max х у ^ max у ^ max Z 0,0187 max у Z ^ max у ^ max х 0,0187

max х у ^ max Z ^ max у 0,0249 max у Z ^ max х ^ max у 0,0373

max х у Z ^ max у ^ max х 0,0249 max х у Z ^ max у ^ max Z 0,0311

max х у Z ^ max х у ^ max у 0,0249 max х у Z ^ max у Z ^ max у 0,0311

max Z ^ max х ^ max у 0,0124 max Z ^ max у ^ max х 0,0187

max Z ^ max х у ^ max х 0,0373 max Z ^ max х у ^ max у 0,0187

max х Z ^ max Z ^ max у 0,0249 max у Z ^ max Z ^ max х 0,0311

max х Z ^ max у ^ max Z 0,0187 max у Z ^ max х ^ max Z 0,0249

max х у Z ^ max Z ^ max х 0,0124 max х у Z ^ max Z ^ max у 0,0249

max х у Z ^ max х Z ^ max Z 0,0311 max х у Z ^ max у Z ^ max Z 0,0249

min х ^ min у ^ min Z 0,0031 min х ^ min Z ^ min у 0,0031

min х ^ min у Z ^ min у 0,0039 min х ^ min у Z ^ min Z 0,0031

min х у ^ min х ^ min Z 0,0023 min х Z ^ min х ^ min у 0,0031

min х у ^ min Z ^ min х 0,0031 min х Z ^ min у ^ min х 0,0031

min х у Z ^ min х ^ min у 0,0023 min х у Z ^ min х ^ min Z 0,0031

min х у Z ^ min х у ^ min х 0,0015 min х у Z ^ min х Z ^ min х 0,0039

min у ^ min х ^ min Z 0,0031 min у ^ min Z ^ min х 0,0031

min у ^ min х Z ^ min х 0,0047 min у ^ min х Z ^ min Z 0,0039

min х у ^ min у ^ min Z 0,0023 min у Z ^ min у ^ min х 0,0023

min х у ^ min Z ^ min у 0,0039 min у Z ^ min х ^ min у 0,0031

min х у Z ^ min у ^ min х 0,0023 min х у Z ^ min у ^ min Z 0,0039

min х у Z ^ min х у ^ min у 0,0031 min х у Z ^ min у Z ^ min у 0,0031

min Z ^ min х ^ min у 0,0031 min Z ^ min у ^ min х 0,0023

min Z ^ min х у ^ min х 0,0031 min Z ^ min х у ^ min у 0,0031

min х Z ^ min Z ^ min у 0,0023 min у Z ^ min Z ^ min х 0,0031

min х Z ^ min у ^ min Z 0,0031 min у Z ^ min х ^ min Z 0,0031

min х у Z ^ min Z ^ min х 0,0031 min х у Z ^ min Z ^ min у 0,0031

min х у Z ^ min х Z ^ min Z 0,0023 min х у Z ^ min у Z ^ min Z 0,0039

На шагах 8 и 10 алгоритм 3D-MMA использует списки простых эвристик, каждая из которых однозначно выбирает точку для установки объекта или неупакованный объект согласно заложенному в ней жадному правилу. При этом сами эвристики выбираются случайным образом с некоторыми присвоенными им вероятностями (вероятности, использованные в текущей реализации, приведены в табл. 1).

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

Эксперименты по решению задачи 3L-CVRP с помощью алгоритма, основанного на трехфазовой декомпозиции, проводились на примерах, предложенных в [1], доступных в Интернете

(www.or.deis.unibo.it/research.html). В примерах графы и массы заказов, а также грузоподъемность ТС заимствованы из 27 примеров для классической задачи СУЯР (в данных примерах пункты задаются координатами на плоскости). Заданы следующие параметры грузового отсека ТС: Ь = 60, Ж = 25, Н = 30. Для каждого клиента количество ящиков в заказе устанавлено случайно в промежутке от одного до трех с равными вероятностями. Длина, ширина и высота каждого ящика сгенерированы случайно и равномерно на отрезках [0,2¿;0,6Ь], [0,2Ж;0,6Ж] и [0,2#;0,6#] соответственно; таким образом, все объекты имеют достаточно большие размеры относительно ТС. Все объекты разрешается поворачивать на 90°

Таблица 2

Результаты численного эксперимента (решение 3L-CVRP)

Число клиентов п Число ящиков М Число ТС (доступ.) V Суммарная длина маршрутов Отклонение (3-РБ -те) ^ % Отклонение (3-РБ -АСО) Ц 2, %

7 ^ 7 АСО 7

1 15 32 5 316,32 304,13 302,02 -4,52 -0,69

2 15 26 5 350,58 334,96 334,96 -4,46 0,00

3 20 37 5 447,73 399,68 391,65 -12,53 -2,01

4 20 36 6 448,48 440,68 440,68 -1,74 0,00

5 21 45 7 464,24 450,93 456,64 -1,64 1,27

6 21 40 6 504,46 498,32 498,32 -1,22 0,00

7 22 46 6 831,66 792,13 771,07 -7,29 -2,66

8 22 43 8 871,77 820,67 821,21 -5,80 0,07

9 25 50 8 666,10 635,50 644,21 -3,29 1,37

10 29 62 10 893,61 840,75 848,69 -5,03 0,94

11 29 58 9 818,65 818,87 806,02 -1,54 -1,57

12 30 63 9 651,58 626,37 614,60 -5,67 -1,88

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

13 32 61 9 2816,93 2739,80 2753,84 -2,24 0,51

14 32 72 11 1559,64 1466,84 1505,12 -3,50 2,61

15 32 68 10 1452,34 1367,58 1368,73 -5,76 0,08

16 35 63 11 707,85 698,92 698,61 -1,31 -0,04

17 40 79 14 909,99 868,59 888,04 -2,41 2,24

18 44 94 14 1400,52 1255,64 1330,79 -4,98 5,98

19 50 99 13 827,99 777,18 814,11 -1,68 4,75

20 71 147 20 732,12 604,28 658,56 -10,05 8,98

21 75 155 18 1226,20 1110,09 1227,02 0,07 10,53

22 75 146 19 1277,94 1194,18 1288,03 0,79 7,86

23 75 150 18 1258,16 1158,51 1266,78 0,69 9,35

24 75 143 18 1307,09 1136,80 1240,84 -5,07 9,15

25 100 193 24 1570,72 1429,64 1635,45 4,12 14,40

26 100 199 28 1839,12 1611,78 1869,01 1,63 15,96

27 100 198 25 1747,52 1560,70 1734,30 -0,76 11,12

Средние 1033,31 960,87 1007,75 -2,47 4,88

в плоскости основания и не разрешается переворачивать. Коэффициент непровисания a установлен равным 75 %. Задаются максимально допустимые количества используемых ТС v.

С помощью предварительного численного эксперимента установлено, что лучшие решения по примерам получены при МахГтСе [0,62 УТС; 0,97УТС]. При проведении основного эксперимента максимально допустимый объем груза в ТС поднимался от 0,4 УТС до УТС с шагом alpha = 0,01 УТС. Время работы алгоритма 3-PD установлено равным времени работы алгоритма TS: 1800 с для примеров 1-9, 3600 с для примеров 10-18 и 7200 с для примеров 19-27. Эксперимент был выполнен на Intel Core2 Duo 2,26 ГГц (без параллельных вычислений). Проведено сравнение с результатами, полученными с помощью алгоритмов TS (эксперимент на Pentium IV 3 ГГц в 2006 г. [1]) и ACO (эксперимент на Pentium IV 3,2 ГГц в 2008 г. [3]). Результаты представлены в табл. 2; в последних двух столбцах указаны относительные отклонения решений, полученных с помощью 3-PD, от решений, полученных TS и ACO, рассчитанные по следующим формулам:

7 - 7 7 - 7

. _ 3-PD -^TS . м _ 3-PD ACO

М-1 _ 7 ■> М-2 _ 7 ■

7TS 7 ACO

По результатам эксперимента алгоритм 3-PD на 22 примерах показал результаты не хуже, чем алгоритм TS, и на 9 примерах - не хуже, чем

АСО. При этом на задачах большой размерности (от 75 клиентов) 3-PD в среднем уступает TS и значительно уступает АСО, а на сравнительно небольших примерах (до 22 клиентов) показывает лучшие результаты, чем оба других алгоритма. Это позволяет предположить, что 3-PD способен получать более точные решения, чем другие алгоритмы, однако более чувствителен к размерности задачи и на больших примерах требует большего времени работы.

Для решения задачи построения маршрутов следования транспортных средств с трехмерным размещением грузов предложен метод трехфазной декомпозиции (3-PD). Полученные результаты говорят о том, что возможности использовавшихся ранее для решения этой задачи алгоритмов поиска с запретами и муравьиной колонии даже на примерах малой размерности весьма ограничены. Причины отставания одних алгоритмов от других на разных примерах могут заключаться в следующем: недостаточно разнообразны получаемые маршруты (в некоторых случаях один маршрут должен проходить через удаленные друг от друга пункты); встроенный алгоритм поиска схемы размещения не способен найти допустимую схему в случаях, когда она существует. В этих направлениях будет продолжаться работа по усовершенствованию алгоритма 3^.

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

1. Gendreau, M. A tabu search approach for a routing and container loading problem [Текст] / M. Gendreau, M. Iori, G. Laporte [et al.] // Transportation Science. -2006. -Vol. 40. -P. 342-350.

2. Iori, M. An exact approach for the vehicle routing problem with two-dimensional loading constraints [Текст] / M. Iori, J.J. Salazar Gonzales, D. Vigo // Transportation Science. -2007. -Vol. 41. -P. 253-264.

3. Fuellerer, G. Vehicle routing with multi-dimensional loading constraints: PhD thesis [Текст] / G. Fuellerer. -Universitaet Wien, Austria, 2008.

4. Fisher, M.L. A generalized assignment heuristic

for the vehicle routing problem [Текст] / M.L. Fisher, R. Jaikumar // Networks.-1981. -Vol. 11. -P. 109-124.

5. Борисовский, П.А. О сравнении некоторых эволюционных алгоритмов [Текст] / П.А. Борисовский, А.В. Еремеев // Автоматика и телемеханика. -2004. -№ 3. -С.3-9.

6. Валиахметова, Ю.И. Мультиметодная технология ортогональной упаковки и ее применение в задачах транспортной логистики [Текст] / Ю.И. Валиахметова, Э.А. Мухачева, А.С. Филиппова, Н.А. Гиль-манова [и др.] // Информационные технологии. -2009. -№ 12 (приложение). -32 с.

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