Библиотека
|
ваш профиль |
Транспортный вестник
Правильная ссылка на статью:
Олейникова С.А., Ромащенко Д.А.
Мультиагентный подход к решению задачи оптимизации грузоперевозок
// Транспортный вестник.
2017. № 1.
С. 39-48.
DOI: 10.7256/2453-8906.2017.1.20021 URL: https://nbpublish.com/library_read_article.php?id=20021
Мультиагентный подход к решению задачи оптимизации грузоперевозок
DOI: 10.7256/2453-8906.2017.1.20021Дата направления статьи в редакцию: 08-08-2016Дата публикации: 12-02-2017Аннотация: Рассматривается задача оптимизации процесса грузовых перевозок с точки зрения максимизации прибыли. Объектом исследования являются материальные и соответствующие им финансовые потоки, возникающие при доставке поступающих заказов. Предметом исследования является согласование действий по управлению процесса выбора заказа транспортными средствами при выполнении перевозок в большом объеме. Целью исследования является разработка подхода, позволяющего оптимизировать процесс грузовых перевозок с учетом текущего положения и текущей загрузки транспорта с точки зрения максимизации получаемой прибыли. В качестве метода решения поставленной задачи предложен мультиагентный подход. Каждый интеллектуальный агент системы решает задачу целесообразности принятия заказа закрепленным за ним транспортным средством. В результате предложена математическая модель системы, отличающаяся новизной и учитывающая при поступлении заказа текущее положение транспортных средств, их загрузку, а также возможность совместного выполнения заказа несколькими транспортными средствами. Новизна исследования заключается также в разработке структуры мультиагентной системы с уточнением основных функций агентов и описании специфики их взаимодействия. Ключевые слова: грузовые перевозки, оптимизация, транспортные средства, заказ, минимизация затрат, математическая модель, мультиагентный подход, интеллектуальный агент, структура мультиагентной системы, взаимодействие агентовAbstract: This article examines the task on optimization of the process of freight transports from the perspective of maximization of the profit. The object of this research is the material and corresponding to them financial flows emerging in delivering of the incoming orders. The subject of this research is the coordination of actions on managing the process of selection of an order by transportation means in large volume transports. The goal of the work consists in formulation of the approach, which allows optimizing the process of freight transports considering the current status and load of the transport from the perspective of maximization of the gained profit. The authors suggest a multi-agent approach as a method of solution of the set task. Each of the intellectual agents of the system resolves the task of purposefulness of receiving the order based on the assigned by it transportation means. As a result, the authors propose a mathematical model of the system, which takes into account the current status of transportation means, their capacity, and the ability of execution of the same order by multiple transports. The scientific novelty consists in development of the structure of multi-agent system with clarification of the key functions of the agents alongside the description of specificity of their interaction. Keywords: freight transports, optimization, transportation means, order, minimization of costs, mathematical model, multi-agent approach, intellectual agent, structure of multi-agent system , interaction of agentsВведение Современный этап развития общества характеризуется интенсивным ростом человеческих потребностей, что приводит к увеличениям объемов производств. Все это требует соответствующего уровня организации перевозок продукции. На сегодняшний день используются автомобильный, железнодорожный, водный и воздушный виды транспорта, но автомобильные грузовые перевозки превосходят по востребованности другие виды. Это связано с мобильностью автомобилей, наличием развитой дорожной инфраструктуры, что позволяет доставлять груз непосредственно от продавца до заказчика. В связи с этим возникает необходимость планирования маршрутов движения транспортных средств, и, как следствие, решения транспортных задач, а также задач о рациональном использовании грузоподъемности транспортных средств. В процессе организации грузоперевозок возникают такие проблемы как: оптимальное построение маршрутов перевозки грузов; сведение к минимуму затрат на перевозки и недогруза транспортного средства. В связи с тем, что заказы могут поступать в систему в то время, когда транспортные средства уже движутся по составленному ранее маршруту, их нужно обрабатывать в режиме «on-line». При этом нужно обеспечить минимальные издержки при эксплуатации транспортных средств. Оптимальное построение маршрутов – это так называемый класс транспортных задач, которые решаются аналитически или с помощью теории графов. К настоящему моменту уже существуют различные методы решения отдельных задач в данной области. В частности, при поиске оптимальных маршрутов применяется решение задачи коммивояжера, которое заключается в нахождении выгодного маршрута, проходящего через указанные города. При решении транспортной задачи с помощью теории графов используют алгоритм Форда – Фалкерсона, для нахождения максимального потока, и алгоритм Беллмана – Форда, для поиска самого дешевого пути. Однако существующие подходы охватывают не все специфики, возникающие при решении современных транспортных задач. В частности, данные методы ищут решение соответствующее одному из критериев: минимальный критерий стоимости (расстояний), минимальный критерий времени. При решении с помощью теории графов рассматривается только двудольный граф. Так же они не учитывают возможность перевозки сборного груза. Кроме того, указанные выше методы не предназначены для решения задачи в динамике, что является отличительной особенностью современных потребностей при организации грузоперевозок. Для устранения этих недостатков необходима разработка новых алгоритмов, которые позволили бы строить оптимальные графики движения, учитывать текущее местонахождение транспортных средств, их маршруты и загруженность при появлении нового заказа и рациональнее использовать грузовую вместимость транспортного средства. 1. Постановка задачи и ее особенности Рассматривается задача оптимизации процесса грузоперевозок. Пусть имеется n узлов, каждый из которых характеризуется своими географическими координатами (xi, yi), i = 1,…,n. узлы i и j могут быть соединены между собой «дорогами». Таким образом, систему узлов и дорог можно рассматривать как граф, вершинам которого соответствуют узлы, а ребрам – дороги. Пусть в системе имеется m транспортных средств (ТС), каждое из которых характеризуется: - грузоподъемностью cj, j = 1,…,m; - месторасположением в данный момент времени (xj, yj); - объемом груза, который средство перевозит в данный момент времени lj, 0 ≤ lj ≤ cj; - маршрутом движения (т.е. последовательностью узлов ujk, которые данное средство будет последовательно проходить, доставляя имеющийся груз или забирая уже запланированный ранее заказ). Эта последовательность образует множество Uj=(uj1,…,ujkj). В некоторые моменты времени в систему поступают заказы, причем предполагается, что в данный момент времени может поступить несколько заказов. Каждый заказ характеризуется: - объемом груза vk; - прибылью, которую система получит от перевозки груза pk; - географическими координатами источника заказа (xk1, yk1); - географическими координатами назначения заказа (xk2, yk2). Необходимо определить совокупность ТС, которые будут осуществлять перевозку всех поступивших в данный момент заказов с учетом их текущего местоположения и загрузки, а также поставить в соответствие каждому ТС: - объем перевозимого груза; - «идентификатор» перевозимого груза. Определим предположения и допущения, при которых будет решаться данная задача. Будем допускать, что стоимость перевозки любым ТС любого заказа прямопропорциональна расстоянию от источника до приемника. Иными словами, затраты на перевозку заказа zk будут определяться по формуле: `z_(k)=K*sqrt((x_(k2)-x_(k1))^(2)+(y_(k2)-y_(k1))^(2))` . (1) Здесь K – некоторый коэффициент пропорциональности, который будем считать равным для всех заказов. Другое предположение будет заключаться в так называемой однородности заказов. Это означает, что нет никаких ограничений (кроме вместимости ТС) для возможности дозагрузки заказа в ТС. Будем также предполагать, что любой заказ можно делить для перевозки несколькими транспортными средствами произвольным образом. Иными словами, если vk – общий объем заказа k, то в момент времени t идентификатор этого заказа можно поставить нескольким транспортным средствам с обозначением объема от данного заказа. Выделим особенности рассматриваемой задачи. В первую очередь, необходимо отметить, что задача решается «в динамике». Это означает, что решение необходимо получить с учетом текущего маршрута движения ТС, их загруженности и текущего местоположения. В частности, возможны случаи, когда при одних и тех же исходных данных (источнике заказа и месте его назначения, географических координатах всех машин и одной и той же их загрузке) задача будет иметь два разных решения в зависимости от того, по какому маршруту в том или ином случае будут следовать машины. Предполагается, что дорога между парой вершин может быть односторонней (в этом случае соответствующее ребро будет ориентированным). Кроме всех вышеперечисленных особенностей задачи, следует отметить необходимость ее оперативного решения, поскольку при существенном времени, затраченном на поиск оптимального варианта грузоперевозок, ситуация с текущим местоположением ТС может измениться настолько, что применить найденное решение уже не будет представляться возможным. В частности, ТС, которое, согласно решению задачи, должно забрать груз, может в процессе долгого решения уже проехать необходимый пункт с заказом и выехать, например, на одностороннюю дорогу, что сделает нецелесообразным его использование для перевозки заказа и потребует поиска других решений с учетом изменившейся ситуации. Таким образом, одним из требований, предъявляемых к методам решения задачи, будет являться требование сокращения времени, затраченного на поиск решения (даже в ущерб возможности определения самого наилучшего результата). 2. Математическая модель и оптимизационная задача Для формирования математической модели и оптимизационной задачи будем придерживаться следующих обозначений. ТС – это сложный объект, обладающий множеством характеристик, указанных ранее. При решении задачи каждому ТС ставится в соответствие идентификатор заказа и объем груза от этого заказа. В связи с этим, добавим к характеристикам ТС, представленным выше, два динамических массива. Первый массив id будет содержать идентификаторы заказов, а второй vol – объем груза от данного заказа. Таким образом: idj[n] – идентификатор n-ного заказа для ТСj, j=1,…,m; volj[n] – объем груза n-ного заказа для ТСj, j=1,…,m. Кроме того, при формировании ограничений задачи необходимо иметь доступ к грузоподъемности ТС в любом из рассматриваемых узлов. Обозначим через ljs объем груза, который ТСj будет иметь в узле s`epsi` Uj. Исходя из описанных выше особенностей задачи, сформулируем ее математическую модель. Целью является получение максимальной прибыли. Однако, с учетом того, что любой заказ, поступивший в систему, принимается к обслуживанию, максимизация прибыли в данном случае будет равносильна минимизации затрат на перевозку заказов. Опишем это с помощью критериальных функций. Пусть до приема заказа k у некоторого транспортного средства TCj была суммарная длина маршрута Lj. С учетом введенных ранее обозначений, она будет определяться следующим образом: `L_(j)=sum_(i=1)^(k_j)sqrt((x_(j i+1)-x_j)^2+(y_(j i+1)-y_j)^2)` . (2) При принятии заказа необходимо определить новый путь Ujнов=(uj1нов,…,ujkjнов), включающий точки погрузки и выгрузки заказа k. При этом будет рассчитан новый маршрут Laj. Назовем данный маршрут альтернативным. Расчет будет проводиться по формуле (2), только перебор будет осуществляться по узлам множества Ujнов. Тогда минимизация затрат на перевозку груза ТСj будет описана следующим образом: `y_j=La_j-L_j->min` . (3) Минимизация суммарных затрат будет описываться следующей функцией: `sum_(j=1)^(m)y_j->min` . (4) качестве ограничений будут использоваться ограничения на вместимость транспортного средства. Суммарный объем груза, который перевозит транспортное средства, совместно с назначенным объемом данного заказа не должно превышать вместимости ТС. Пусть для ТСj данный заказ будет n-ным. Тогда: `l_ju+vol_(j)[n]<=c_j` . (5) Здесь u – узел на графе, непосредственно предшествующий узлу – источнику заказа для TCj. 3. Выбор метода решения задачи Исследуемая задача относится к классу транспортных задач. От классической транспортной задачи ее отличает, в первую очередь, необходимость получения решений в режиме «on-line». Поскольку заказы поступают в случайные моменты времени, то в момент поступления очередного заказа необходимо учитывать не только текущее расположение транспортных средств, но и их текущую грузоподъемность. Значения этих показателей существенно влияют на выбор решения. Необходимость получения оперативного решения также существенно влияет на выбор метода решения задачи. Чтобы найти новый оптимальный план перевозок, необходимо выбрать транспортное средство, которое в данный момент будет наиболее рациональным для использования, и скорректировать его маршрут. Для этого необходимо осуществить перебор по всем транспортным средствам, и для каждого ТС определить целесообразность его использования для данного заказа. А можно распараллелить процесс нахождения значений формулы (3) для каждого ТС, реализовать аппарат принятия решения для них и организовать взаимодействие. Для этих целей можно использовать многоагентную или мультиагентную систему (МАС). МАС представляет собой множество взаимодействующих интеллектуальных единиц (агентов), каждый из которых выполняет определенные функции, направленные на достижение своих целей, а совместное поведение таких агентов должно обеспечить достижение оптимального состояния для всей системы. В данном случае задачу обеспечения оптимизации грузоперевозок можно «поручить» совокупности интеллектуальных агентов, каждый из которых будет отвечать за оптимизацию использования отдельного транспортного средства и выбора для себя таких заказов, которые обеспечат минимальное увеличение существующего маршрута (по сравнению с другими агентами) и, как следствие, минимизацию затрат на грузоперевозки. Для обоснования возможности использования данного подхода, рассмотрим свойства агентов и проанализируем степень их соответствия разрабатываемому программному обеспечению. Агент – это программно или аппаратно реализованная система, обладающая следующими свойствами [2]: - автономность – способность функционировать без прямого вмешательства людей или компьютерных средств и при этом осуществлять самоконтроль над своими действиями и внутренними состояниями. В случае поставленной задачи агенты могут самостоятельно определять длину пути с учетом нового заказа, и степень увеличения этой величины как главного показателя минимизации пройденного расстояния всеми ТС, а также точки изменения своего маршрута при необходимости выполнения заказа данным ТС; - общественное поведение (socialability), т.е. способность взаимодействия с другими агентами (а возможно, людьми), обмениваясь сообщениями с помощью языков коммуникации. В соответствие этому свойству ТС могут обмениваться сообщениями с диспетчером и агентами, отвечающими за оптимизацию движения других ТС, для принятия или доставки заказа, обмена грузом с другими ТС, уведомления о поломке или о других непредвиденных ситуациях; - реактивность – способность воспринимать состояние среды (физического мира, пользователя – через пользовательский интерфейс, совокупности других агентов, сети Internet, или сразу все этих компонентов внешней среды). ТС могут получать сообщения от диспетчера о поступлении новых заказов, об изменении ситуации на дороге; - целенаправленная активность (pro-activity) – способность агентов не просто реагировать на стимулы, поступающие из среды, но и осуществлять целенаправленное поведение, проявляя инициативу. Получая от диспетчера информацию о новом заказе, агент будет анализировать целесообразность использования своего ТС для его выполнения, и, в случае необходимости, уведомить других агентов о принятии данного заказа, об изменении маршрута, появлении свободного места для погрузки и т.д. Исходя из этого, очевидно, что мультиагентный подход является подходящим для решения данной задачи. Его применение для решения данной задачи обуславливается следующими причинами: - совместная деятельность агентов должна обеспечить оптимальное (или близкое к оптимальному) решение задачи; - возможность распараллеливания всей задачи между отдельными агентами позволит существенно сократить время, затрачиваемое на ее решение, что являлось одним из требований, предъявляемых к методам ее решения. Таким образом, в качестве общего метода решения задачи выбран подход, основанный на мальтиагентных технологиях. Далее необходимо детализировать данный метод (в частности, определить структуру мультиагентной системы и действия, выполняемые агентами). 4. Структура мультиагентной системы Любая МАС состоит из следующих основных компонентов [2]:
Определим каждый из этих компонентов для исследуемой задачи. Множество объектов, которыми можно манипулировать для решения задачи – это ТС. Манипуляция заключается в возможности назначения и изменения маршрута для них. Тогда организационные единицы, манипулирующие объектами, это диспетчер, принимающий заказы и координирующий все передвижения, и множество абстрактных агентов А_ТС, каждый из которых отвечает за определенное ТС. Цель каждого А_ТСj, j=1,…,m заключается в принятии такого решения, которое было бы выгодно (с точки зрения минимизации маршрута) данному ТСj. Множество задач - это заказы, которые необходимо выполнить. С математической точки зрения пространство, в котором будут осуществлять свою деятельность интеллектуальные агенты - это дорожный граф. Остановимся более детально на определении отношений между агентами и действии агентов. В данной задаче агенты осуществляют тесное взаимодействие для определения целесообразности принятия заказа своему ТС. Проанализируем специфику данного взаимодействия. Агент-диспетчер (А_Д), получив заказ, рассылает всем агентам А_ТС сообщение, в котором отражена вся касающаяся данного заказа информация. Каждый А_ТСj, получив эти сведения, анализирует степень увеличения маршрута в случае, если он возьмет груз (весь или частично). В качестве результата он должен отправить всем агентам следующее сообщение: - величина увеличения маршрута; - объем принятого груза. Далее на основе данной информации необходимо определить агента (одного или нескольких) для выполнения заказа. Эту функцию можно также возложить на А_Д. При необходимости, он может рассылать остальным агентам уточняющие вопросы о том, насколько увеличится маршрут, если на данного агента возложить задачу доставки всего груза (или груза данного объема). Таким образом, специфика взаимодействия агентов будет следующий (рисунок 1). Рисунок 1 - Структура мультиагентной системы В завершении, проанализируем множество действий агентов. В данном случае агенты выполняют действия, направленные на определение нового маршрута с учетом поступившего заказа, расчета величины нового маршрута и т.д. Поскольку в исследуемой задаче агент отвечает за определенное ТС, он, при поступлении нового заказа, должен выполнить следующие основные задачи: - определить точку своего маршрута, из которой можно забрать заказ; - определить точку своего маршрута, в которую необходимо следовать дальше (вместе с новым заказом); - определить точку маршрута, после которой нужно следовать в точку выгрузки нового заказа; - определить точку маршрута, в которую будет направлено ТС после выгрузки заказа; - определить величину изменения маршрута с учетом данного заказа и уведомить об этой величине других агентов; - принять решения (на основе данных, поступивших от других агентов) о целесообразности принятия данного заказа ТС и уведомить об этом остальных агентов.
Выводы Целью работы являлась разработка подхода, позволяющего оптимизировать процесс грузовых перевозок с учетом текущего положения и текущей загрузки транспорта с точки зрения максимизации получаемой прибыли. В работе получены следующие результаты, отличающиеся научной новизной:
Следующим этапом решения задачи будет являться детализация решения всех задач, возложенных на агентов в виде отдельных алгоритмов, а также алгоритмизация описания специфики взаимодействия данных агентов. Библиография
1. Ромащенко Д.А., Олейникова С.А. Об одном подходе к оптимизации процесса грузоперевозок // Международна научна школа «Парадигма»: сборник научни статии в 8 томах. Том 2. – Варна, 2015. – с. 170-177.
2. Тарасов В. Б. От многоагентных систем к интеллектуальным агентам: философия, психология, информатика – М.: Едиториал УРСС, 2002. – 352 с. 3. Городецкий В.И., Грушинский М.С., Хабалов А.В. Многоагентные системы (обзор) // Новости искусственного интеллекта. 1998. № 2. С. 64—116. 4. Городецкий В.И. Многоагентные системы: основные свойства и модели координации поведения// Информационные технологии и вычислительные системы. – 1998. – №1. – С.22-34. 5. Баженов Р.И. Интеллектуальные информационные технологии. Биробиджан: ПГУ им. Шолом-Алейхема, 2011. 176 с. 6. Баженов Р.И., Лопатин Д.К. О применении современных технологий в разработке интеллектуальных систем // Журнал публикаций аспирантов и докторантов. - 2014. - №3(93). - С.263-264. 7. Лопатин Р. С., Олейникова С.А. Разработка структуры распределенной системы для одной задачи планирования работ // Системы управления и информационные технологии. – 2011. - №3.1(45). – С. 173-176. 8. Поспелов Д.А. Многоагентные системы – настоящее и будущее // Информационные технологии и вычислительные системы. – 1998. – №1. – С.14-21. 9. Kravets O.Ya., Oleinikova S.A. Multiagent technology for the application of a distributing function for load balancing in multiserver systems // Automation and Remote Control. May 2014. Volume 75. № 5. pp 977-982. 10. Lopatin R.S., Oleynikova S.A. Complex systems scheduling on the multi-agent approach basis. Monograph. – Yelm, WA, USA: Science Book Publishing House, 2013. – 110 p. 11. Коробейников А.Г., Гришенцев А.Ю., Святкина М.Н. Применение интеллектуальных агентов магнитных измерений для мониторинга объектов железнодорожной инфраструктуры // Кибернетика и программирование. - 2013. - 3. - C. 9 - 20. DOI: 10.7256/2306-4196.2013.3.8737. URL: http://www.e-notabene.ru/kp/article_8737.html References
1. Romashchenko D.A., Oleinikova S.A. Ob odnom podkhode k optimizatsii protsessa gruzoperevozok // Mezhdunarodna nauchna shkola «Paradigma»: sbornik nauchni statii v 8 tomakh. Tom 2. – Varna, 2015. – s. 170-177.
2. Tarasov V. B. Ot mnogoagentnykh sistem k intellektual'nym agentam: filosofiya, psikhologiya, informatika – M.: Editorial URSS, 2002. – 352 s. 3. Gorodetskii V.I., Grushinskii M.S., Khabalov A.V. Mnogoagentnye sistemy (obzor) // Novosti iskusstvennogo intellekta. 1998. № 2. S. 64—116. 4. Gorodetskii V.I. Mnogoagentnye sistemy: osnovnye svoistva i modeli koordinatsii povedeniya// Informatsionnye tekhnologii i vychislitel'nye sistemy. – 1998. – №1. – S.22-34. 5. Bazhenov R.I. Intellektual'nye informatsionnye tekhnologii. Birobidzhan: PGU im. Sholom-Aleikhema, 2011. 176 s. 6. Bazhenov R.I., Lopatin D.K. O primenenii sovremennykh tekhnologii v razrabotke intellektual'nykh sistem // Zhurnal publikatsii aspirantov i doktorantov. - 2014. - №3(93). - S.263-264. 7. Lopatin R. S., Oleinikova S.A. Razrabotka struktury raspredelennoi sistemy dlya odnoi zadachi planirovaniya rabot // Sistemy upravleniya i informatsionnye tekhnologii. – 2011. - №3.1(45). – S. 173-176. 8. Pospelov D.A. Mnogoagentnye sistemy – nastoyashchee i budushchee // Informatsionnye tekhnologii i vychislitel'nye sistemy. – 1998. – №1. – S.14-21. 9. Kravets O.Ya., Oleinikova S.A. Multiagent technology for the application of a distributing function for load balancing in multiserver systems // Automation and Remote Control. May 2014. Volume 75. № 5. pp 977-982. 10. Lopatin R.S., Oleynikova S.A. Complex systems scheduling on the multi-agent approach basis. Monograph. – Yelm, WA, USA: Science Book Publishing House, 2013. – 110 p. 11. Korobeinikov A.G., Grishentsev A.Yu., Svyatkina M.N. Primenenie intellektual'nykh agentov magnitnykh izmerenii dlya monitoringa ob''ektov zheleznodorozhnoi infrastruktury // Kibernetika i programmirovanie. - 2013. - 3. - C. 9 - 20. DOI: 10.7256/2306-4196.2013.3.8737. URL: http://www.e-notabene.ru/kp/article_8737.html |