5. Система динамической консолидации LTL грузов&nbsp

advertisement
Аннотация
Рассматривается применение мультиагентной системы для адаптивного планирования перевозок LTL грузов в реальном времени, в которой план представляется
«неустойчивым равновесием» интересов агентов заказов и ресурсов и не пересматривается всякий раз полностью заново при поступлении новых событий, а лишь корректируется по мере необходимости. LTL (Less than Truckload) считается груз, для перевозки которого, требуется не весь, а только часть объема грузовика. По сравнению с
FTL (Full Truckload) перевозками, где под заказ целиком выделяется грузовик, решение LTL задачи распределения ресурсов по заказам в реальном времени, является более сложной. Помимо нахождения условно оптимального плана сбора заказов для
каждого грузовика и постоянного пересмотра этого плана по мере поступления новых
заказов, реальной системе планирования необходимо также учитывать множество
условий и ограничений на помещение разных заказов в один грузовик таких как: различные температурные режимы разных грузов, «чистые» и «грязные» не могут ехать
в одном грузовике, опасные грузы могут перевозиться только с определенными не
опасными или определенными опасными и т.д. Однако в рассматриваемой статье мы
будем рассматривать сам подход к решению задачи планирования LTL грузов в реальном времени.
Ключевые слова: мультиагентные системы, адаптивное планирование, грузоперевозки, моделирование, реальное время
1. Введение
Задачи распределения, планирования и оптимизации ресурсов, как правило,
решаются при хорошо определенных условиях, когда все заказы и ресурсы известны
заранее [1-2].
Для решения сложных задач распределения, планирования и оптимизации ресурсов в реальном времени, плохо поддающихся строгой математической формулировке, в последнее время все чаще применяется мультиагентный подход [3-4].
Разрабатываемый нами подход [5] основан на сопоставлении заказам и ресурсам программных агентов, имеющих противоположные интересы, способных реагировать на события, принимать решения и взаимодействовать между собой для разрешения конфликтов и поиска компромиссов путем переговоров (взаимных уступок),
что позволяет находить согласованные решения и поддерживать баланс их интересов
в интересах компании в целом.
В результате взаимодействия (переговоров) агентов и изменения состояний
соответствующих заказов и ресурсов достигается локально оптимальное решение,
которое далее в реальном времени при поступлении событий (новый заказ, отзыв уже
запланированного, поломка грузовика, задержка в пути и другие) вновь локально
корректируется и т.д.
Несмотря на достаточно простую логику каждого отдельного агента, мультиагентная система (МАС) позволяет решать сложные оптимизационные задачи в
реальном времени, отличающиеся большим разнообразием элементов и числом связей между ними, причем в условиях существенной неопределенности, когда ни число
заказов, ни число ресурсов заранее не известно, и высокой динамики происходящих
событий.
Одной из таких задач является задача оптимального планирования грузоперевозок в реальном времени, когда от момента времени принятия решений о планах
грузовиков зависит качество и эффективность предоставлений транспортных услуг.
2. Постановка задачи
Пусть имеется флот грузовиков из M машин, базирующихся в определенном
пункте в некоторой транспортной сети. Стоимость эксплуатации каждого грузовика
известна и заранее задана ставками переменных (в движении) и постоянных (утилизация) затрат. В систему поступают LTL-заказы, характеризующиеся доходом от выполнения (стоимость заказа) и набором требований на погрузку и разгрузку. Каждое
требование в свою очередь, характеризуется пунктом требования (погрузки/разгрузки), временем прибытия в пункт требования, величиной штрафа за опоздание и объемом перевозимого груза. Расстояния между всеми пунктами требований
также известны.
Требуется распределить заказы по грузовикам в реальном времени, по возможности оптимально, сведя эксплуатационные расходы транспортной компании к
минимуму. Планирование в реальном времени означает, что в каждый момент времени известны только те заказы, время поступления которых раньше текущего момента.
3. Описание модельной мультиагентной системы LTL
планирования
В используемой нами модели планирования принимаются следующие допущения:
1) Все грузы, перевозимые в рамках задачи, считаются однородными и равномерно распределяемыми по всему объему тягача материалами, которые
совместимы друг с другом, т.е. любой груз любой заявки может быть помещен с любым другим грузом любой другой заявки в любом тягаче.
2) Каждый тягач характеризуется его полезным объемом. Также тягач считается универсальным контейнером, с точки зрения доступа к грузу, т.е. всегда можно вытащить любую часть груза из любого места тягача и расположение груза в тягаче не накладывает ограничений на порядок объезда
мест разгрузки.
3) Каждое требование погрузки может быть удовлетворено только каким-то
одним грузовиком, т.е. нельзя взять часть объема требования груза одним,
а часть другим грузовиком - только полный объем по требованию.
4) Если в рамках одного заказа у нас несколько требований погрузки, то грузовик, выбранный на выполнение первого требования, обязан выполнить и
последующие, т.е. нельзя для первой погрузки заказа использовать один, а
для второй другой грузовик.
После запуска система загружает сцену планирования, состоящую из требований заказов и грузовиков. Отбираются все первые требования погрузки каждого заказа и создается очередь требований, согласно времени их начала, начиная с самого
раннего. Эта очередь формирует бесконечный МА цикл, где каждое требование по
очереди отбирает себе самый лучший с его точки зрения грузовик с минимальными
эксплуатационными затратами (в большинстве случаев ближайший), за исключением
требований, принадлежащих одному заказу, для них рассматривается только один
грузовик, который выбрало себе первое требование данного заказа. Каждое успешно
запланированное требование погрузки, автоматически вставляет в расписание остальные требования (разгрузки) заказа, которому оно принадлежит. Каждое последующее
требование учитывает уже сформированный до него план по грузовикам и остаток
полезного объема в каждом из них и вынуждено с ним считаться. При возникновении
конфликта (не хватает полезного объема или времени с учетом штрафов за опоздание)
текущее планируемое требование вытесняет конфликтные требования, но с добавлением штрафа, в размере стоимости заявок вытесненных требований. Вытесненные
требования встают вне очереди и пытаются планироваться вновь. В случае успеха
цикл продолжается, в противном случае вытеснение продолжается, пока не будет
превышен параметр максимального количества вытеснений в сцене планирования.
При поступлении нового заказа, его требования погрузки встают в текущую очередь
согласно их времени начала и ждут своей очереди на обработку. В какой-то момент
по заявкам наступает время принятия решения (commit time) о выборе грузовика и
отправки его в рейс и по всем требованиям, принадлежащим этим заявкам происходит фиксация текущего грузовика, что обеспечивает окончательное разрешение конфликтов, поскольку зафиксированные требования более никогда не пересматриваются и принимаются как свершившийся факт. Процесс повторяется бесконечно, имитируя цикл жизни.
4. Пример работы системы LTL планирования
В качестве примера рассмотрим задачу планирования 4х заказов на 2х одинаковых грузовиках полезным объемом 10. Для наглядности представим задачу графически.
A
T1
V3
B
O
7
T2
V2
2(10)
2
10
D
1
7
1(10)
4
C
T3
V5
6
T4
V5
6
5
2
E
T5
V15
Имеем 4 заказа, состоящих из требований, каждое из которых, характеризуется временем прибытия на погрузку T и грузом объемом V: А(T1V3), B(T2V2),
C(T3V5), D(T4V5). Для простоты положим, что все заказы нужно разгрузить в одном
пункте E(T5V15). Имеем также флот из 2х грузовиков полезным объемом 10 каждый,
находящихся в пункте O. Расстояния между пунктами заданы на схеме. Постоянные
затраты в единицу времени положены равными 0, т.о. во внимание принимаем только
затраты на пробег. Прибыль от выполнения каждого из заказов считаем одинаковой и
не учитываем ее при анализе конфликтов. Параметр максимального количества вытеснений в сцене устанавливаем равным 1, т.е. в случае конфликта не позволяем требованию выбирать один и тот же грузовик более одного раза. Штраф за опоздание
положим равным бесконечности, т.о. не рассматриваем варианты объезда пунктов не
в хронологическом порядке. После запуска системы создается очередь требований:
А(T1V3), B(T2V2), C(T3V5), D(T4V5) каждое из которых, начинает по очереди выбирать себе наилучший с ее точки зрения грузовик.
1. Требование А выбирает себе первый грузовик 1(10) и создает для него расписание по маршруту OAE. После планирования A, в момент T1 грузовик 1(7)
находится в точке A.
2. Для требования B лучший грузовик 2(10). Для него создается расписание по
маршруту OBE. После планирования B, в момент T2 грузовик 2(8) находится
в точке B.
3. Для требования C лучший грузовик 1(7) в точке A. Для него создается расписание по маршруту OACE. После планирования С в момент T3 грузовик 1(2)
находится в точке C.
4. Для требования D лучший грузовик 1(2) в точке C, но возникает конфликт нехватки объема и требование D вытесняет C, меняет расписание на OADE, в
момент T4 грузовик 1(2) находится в точке D.
5. Вытесненное требование C планируется вне очереди и для него вновь лучшим
является грузовик 1(7) в точке A, но так как он уже был выбран им на предыдущем шаге, а количество вытеснений в сцене равно 1, то требование С берет
грузовик 2(8) в точке B. Для него создается расписание по маршруту OBCE.
После планирования С в момент T3 грузовик 1(2) находится в точке C.
Рассмотрим полученные расписания с точки зрения затрат. Для грузовика 1 имеем:
OADE=OB+BA+AD+DE=1+7+2+2=12
Для грузовика 2 имеем:
OBCE=OB+BC+CE=1+10+5=16
Суммарные затраты по флоту составят 28. Нетрудно увидеть, что полученный результат не является оптимальным, так например вариант OACE=17 и OBDE=10 более оптимален. Однако при добавлении нового заказа, оптимальный план для каждого грузовика может быть другим уже в самом начале маршрута, в то время как, грузовик
уже по дороге к первому пункту погрузки. Так же стоит заметить, что полученный
вариант решения далек от заведомо не оптимальных, но вполне возможных вариантов
объезда, так например можно выбрать маршрут OCDE=19 и OABE=21.
5. Заключение
В статье рассмотрено применение мультиагентного подхода при создании системы адаптивного планирования LTL грузов в реальном времени.
На примере показано, что полученный при таком подходе план распределения
заказов по грузовикам, хоть и не является оптимальным, но довольно близким к нему
и самое главное более ценным с точки зрения применимости его в реальной транспортной задаче.
Литература
1. Handbook of Scheduling: Algorithms, Models and Performance Analysis.
Edited by J. Y-T. Leung // Chapman & Hall / CRC Computer and Information Science Series. – 2004.
2. Stefan Vos. Meta-heuristics: The State of the Art. // Local Search for Planning and Scheduling. Edited by A. Nareyek // ECAI 2000 Workshop, Germany, August 21, 2000 // Springer-Verlag, Germany, 2001.
3. Bonabeau E., Theraulaz G. Swarm Smarts. What computers are learning from
them? // Scientific American. – 2000. - Vol. 282. - N 3. – P. 54-61.
4. Wooldridge,
M.“An
Introduction
to
Multi-Agent
Sys-
tems”,JohnWiley&Sons, 2002,340 pp.
5. П.О. Скобелев. Мультиагентные технологии в промышленных применениях:
к 20-летию основания Самарской школы мультиагентных систем – «Мехатроника, автоматизация, управление» – 2010, №12.
6.
Ivaschenko A., Skobelev P., Tsarev A. Smart solutions multi-agent platform for
dynamic transportation scheduling / 3rd International Conference on Agents and
Artificial Intelligence (ICAART) ICAART 2011 (Rome, Italy), Volume 2, 2011. –
pp. 372 – 375, ISBN: 978-989-8425-41-6.
Download