Раздел III. Моделирование процессов и систем
УДК 681.516.73:004.896 DOI 10.18522/2311-3103-2023-3-144-157
В.В. Соловьев, А.Я. Номерчук
МОДЕЛЬ ОБРАБОТКИ ЗАЯВОК И РАСПРЕДЕЛЕНИЯ ЗАДАЧ ДЛЯ РОБОТИЗИРОВАННОГО СКЛАДА
Целью данной работы является разработка модели обработки заявок и распределения задач между роботами, которые обслуживают роботизированный склад. Данное исследование является актуальным в свете увеличения количества складских площадей, появления магазинов без покупателей (дарксторов) и популяризации покупок через среду Интернет, что требует привлечения роботов для решения транспортных задач при компоновке заказов. Для достижения поставленной цели в работе решена задача концептуального представления роботизированного склада в виде системы массового обслуживания, что позволяет использовать ее показатели качества для совершенствования транспортных процессов. Модели системы управления одиночным роботом и поступления и обработки заказов представлены в виде конечных автоматов, что упрощает модельные эксперименты и дальнейшую реализацию в бортовых вычислителях роботов. Предложен критерий оценки длительности выполнения заказов роботами, включающих несколько типов и позиций товаров в заказе, что позволяет осуществлять обработку одного заказа несколькими роботами одновременно. При этом, маршрут каждого робота представляется совокупностью участков пути между точками сбора отдельных товаров, описанный в виде упорядоченных перестановок. Такое представление позволило сформулировать систему неравенств, на основе которых формируются маршруты нескольких роботов для обработки одного заказа. Разработаны алгоритмы распределения задач для бортового вычислителя робота и центрального сервера склада. Наибольшая вычислительная нагрузка лежит на сервере, так как все возможные перестановки для каждого заказа вычисляются именно там. Экспериментальные исследования на имитационной модели показали высокую эффективность разработанных моделей и алгоритмов.
Роботизированный склад; планирование траекторий; распределение задач; конечный автомат; машина состояний.
V.V. Soloviev, A.Ya. Nomerchuk
A MODEL FOR PROCESSING APPLICATIONS AND DISTRIBUTING TASKS FOR A ROBOTIC WAREHOUSE
The purpose of this work is - development of a model for processing applications and distributing tasks between robots that serve a robotic warehouse. This research is relevant due to increase number of warehouse space, the appearance of stores without buyers (darkstores) and the popularization of purchases through the Internet, which requires the involvement of robots to solve transport problems when arranging orders. To achieve this goal, in this work solves the problem of conceptual representation of a robotic warehouse in the form of a queuing system, which allows using its quality indicators to improve transport processes. Models of the control system of a single robot and processing of orders are presented in the form offinite state machine, which simplifies model experiments and further implementation in onboard robot computers. Propose the criterion for evaluating the duration of the execution of orders by robots, including several types and positions of product in the order, is proposed, which allows processing one order by several robots at the same time. The route of each robot is represented by a set of sections of
the path between the collection points of individual products, described in the form of ordered permutations. Such representation made it possible to define a system of inequalities, on the basis of which routes of several robots for processing one order are formed. Algorithms for the distribution of tasks for the robot's onboard computer and the central warehouse server have been developed. The greatest computational load lies on the server because all possible permutations for each order are calculated there. Experimental researches on the simulation model have shown the high efficiency of the developed models and algorithms.
Robotic warehouse; trajectory planning; task allocation; finite state machine; state machine.
Введение. Можно считать толчком развития роботизации складов внедрение компанией Amazon складских роботов [1]. На сегодняшний день на складах компании трудятся более 10 тыс. автономных роботов и тенденция наращивания роботизации продолжает развиваться. Непосредственное влияние на этот процесс оказала пандемия, в результате которой резко увеличились объемы on-line торговли. Единственным способом снижения логистических издержек для крупных сетевых компаний является роботизация и цифровизация складов.
По результатам роботизации складов в компании Amazon получены следующие результаты:
♦ снижение длительности рабочего цикла с 60 минут до 10 минут;
♦ сокращение расходов на содержание складов на 20%;
♦ увеличение количества хранимых товаров на складах на 50%;
♦ снижение ошибок и аварий.
Автоматизация складов является эффективной и экономически выгодной для компаний со складами, на которых происходит активное движение товаров. Роботизация складов востребована в сортировочных центрах, транспортных компаниях, логистических центрах, железнодорожных узлах и аэропортах. Это позволит высвободить большое количество персонала, сократить количество временно нанимаемых работников, увеличить оборот товаров за счет снижения операционного времени. Бурный рост роботизации складов показывает, что это - неизбежная перспектива дальнейшего развития, в том числе, и в нашей стране.
Задачам автоматизации складов посвящены многочисленные, преимущественно зарубежные, публикации. Авторы работы [2] представили алгоритм управления роботами для автоматизированного склада. В качестве критерия оптимальности перемещения использовался квадратичный критерий для минимизации ошибки управления и затрат энергии.
В статье [3] авторы рассматривали проблему целераспределения между группой роботов автоматизированного склада. Данную проблему авторы декомпозировали на три задачи: группировка, планирование и распределение. Все три задачи формализованы в виде задач линейного программирования, для которых предложены эвристические алгоритмы решения.
В работе [4] рассмотрена задача сортировки посылок группой автономных роботов и ее решение с использованием генетических алгоритмов. Представлена формализация среды функционирования группы роботов в виде регулярной сетки. Задача сформулирована при условии различного соотношения роботов, посылок и целевых точек сортировки. В системе планирования пути перемещения роботов реализован уровень глобального планирования маршрута к целевой точке и уровень локального планирования для исключения с препятствиями и другими роботами. В этом случае задача сортировки сведена к решению задачи размещения.
Авторы работы [5] рассмотрели особенности роботизации складов. Представлена классификация складских систем для автоматического перемещения товаров, включающая краны, тележки, транспортеры, роботов и лифты. Представлены возможные модели описания роботизированных складов, включая сетевые модели взаимодействия.
В работе [6] рассмотрена задача планирования траектории движения складского мобильного робота. Склад формализован в виде двумерной координатной плоскости. Предлагается метод планирования перемещения роботов на сетке и представлены результаты моделирования в среде MatLab для случая перемещения трех роботов.
В работе [7] рассматривалась гетерогенная группа роботов для склада, включающая наземную платформу для перемещения грузов и квадрокоптер для сканирования штрих-кодов с товаров. Проведены аналитические и экспериментальные исследования системы связи, навигации и позиционирования. Разработан алгоритм оптимизации полета квадрокоптера для минимизации длины маршрута.
Bolu и Omer в статье [8] представили адаптивную систему планирования задач в группе роботов на складе. Отмечено, что при планировании задач необходимо учитывать ограничения количества роботов, количества зарядных станций, количества и последовательности поступающих заявок на перемещение товаров, текущие позиции роботов и прочее. Авторы предлагают помещать новые заказы в пул заказов, которые далее конвертировать в пул задач для роботов и затем выполнять назначение роботов на задачи. Склад представлялся в виде полностью определенной двумерной сетки. При выборе задачи для назначения роботу определялся ее приоритет.
В работе [9] представлен способ планирования задач в группе роботов на складе. Склад представлен в виде графа, узлы которого представляют возможные позиции для движения роботов. Ребра графа обладают различной стоимостью в зависимости от расстояния, которое нужно преодолеть роботам между узлами. В качестве метода поиска на графе и назначения задачи авторы предлагают использовать метод Монте-Карло. Модельные эксперименты проводились для 8 роботов в группе и склада на 200 полок с товарами.
Работа [10] посвящена решению проблемы децентрализованного планирования задач и маршрутов перемещения роботов на складе. Каждая задача представлялась в виде Марковского процесса с учетом ограничений, накладываемых окружающей средой и возможностями роботов. Для планирования маршрутов предложен метод поиска на графе, отличающийся возможностью учитывать маршруты других роботов, чтобы избегать коллизий.
В публикации [11] представлен вычислительно эффективный алгоритм планирования маршрута робота на складе и адаптивный генетический алгоритм назначения задач. Склад представлен в виде двумерной матрицы. Разработана система автоматизации склада, включающая распределитель задач в виде централизованного сервера.
Работа [12] посвящена проблеме планирования маршрутов в группах роботов с учетом кинематических ограничений. Среда функционирования роботов представлялась в виде двумерной матрицы и формализовывалась в виде графа состояний. Решалась задача перемещения нескольких групп роботов в среде с препятствиями. Для этого предложено строить граф перемещения роботов с учетом скоростей движения.
Авторы статьи [13] рассмотрели проблему планирования действий для роботов в мультиагентной системе для склада. Склад представлен в двумерном виде. Задача группы роботов заключалась в перемещении товаров с полок к нескольким местам выдачи. Для каждого робота составлен список элементарных действий, которые он может выполнить в текущий момент времени.
По результатам обзора публикаций можно сделать следующие выводы:
♦ процесс обработки заявок роботами можно представить в виде системы массового обслуживания;
♦ распределение задач между роботами на складе необходимо выполнять с учетом ограничений и критерия минимизации времени их решения;
♦ необходимо согласовывать между разными роботами процедуру обработки одной заявки.
В связи с этим в данной работе предложена концептуальная модель обработки заявок и распределения задач между роботами в парадигме систем массового обслуживания.
Постановка задачи. Задачу разработки моделей и алгоритмов рассмотрим применительно для роботизированного склада с мобильными роботами, обрабатывающими поступающие заказы и доставляющие товары в зону выдачи.
Дано:
♦ роботизированный склад в двумерном представлении, разделенный на ячейки размером 1х1 м;
♦ N мобильных роботов с дискретным перемещением по ячейкам;
♦ поток заказов из ^-товаров и Z-позиций каждого товара.
Требуется:
♦ разработать концептуальную модель роботизированного склада в виде системы массового обслуживания;
♦ предложить модели системы управления и поступления и обработки заказов роботом в виде конечных автоматов;
♦ сформулировать критерий оценки длительности выполнения заказов роботами склада;
♦ разработать алгоритмы распределения задач между роботами и обработки задач на сервере склада;
♦ провести модельные эксперименты и оценить эффективность предложенных решений.
Описание моделей и алгоритмов. В соответствии с проведенным обзором литературы роботизированный склад можно рассматривать как систему массового обслуживания [14, 15] с несколькими обслуживающими каналами (роботами). Также необходимо учитывать, что несколько роботов могут собирать заказ параллельно или один робот может собирать заказ из нескольких компонентов последовательно.
Для описания потока заказов на роботизированный склад определим интервал времени тк = tk — tk_1 между поступлением заказов. Среднее количество заказов, которое приходит на склад, определяет интенсивность I. Так как заказы поступают не регулярно будем рассматривать случайный поток. Кроме того, в зависимости от времени суток может меняться интенсивность потока заказов, следовательно, поток является нестационарным. Заказы поступают независимо друг от друга, а также могут поступать одновременно, что характеризует поток, как групповой поток без последействия.
Так как заказы на склад могут быть разными по объему, длительность обслуживания заказов роботами можно описать плотностью распределения b(t), а из нее определить интенсивность обслуживания ^ = 1 /Ь, где Ъ - среднее число заявок, которые могут обслужить роботы в единицу времени.
Время обслуживания заказа роботом Т0 определяется интервалом от момента поступления заказа до завершения его выполнения.
При разработке модели обработки заказов будем предполагать, что отсутствует приоритет между разными заказами, т.е. все заказы бесприоритетные.
Также предположим, что длина очереди заказов не ограничена. В первом приближении будем считать, что один заказ может быть назначен только одному роботу и не может обрабатываться группой. Кроме этого, заказы обслуживаются роботами в порядке поступления, то есть очередь из заказов формируется по типу буфера FIFO.
В роботизированном складе следует рассматривать однородный поток заказов из-за того, что несмотря на разный объем заказов, их могут обслуживать любые роботы.
В связи с ранее изложенными положениями можно предложить следующую схему системы массового обслуживания (СМО) и временную диаграмму для роботизированного склада, представленные на рис. 1.
Поток заказов кл
FIFO
_Л_
Заказ
Заказ
Заказ
Очередь
Обслужен
1 n +1 n+2 n 4 n+ n+1 ,, 4 n+5 n+ 6 n+4
1 2 n+4 n+3 n +5
n n+ t-3 --Л+2 n+ 5
n J n+ 5
n+ 1-1 n+2
1 n 2 n+1 n+2 n+3
б
Рис. 1. Схема СМО (а) и временная диаграмма (б) роботизированного склада
Согласно приведенной временной диаграмме, заказы последовательно выполняются роботами. В силу того, что типы и количество товаров в заказе различаются, то и длительность обработки заказов роботами разная. В том случае, если все роботы заняты обработкой заказов, то формируется очередь (заказы n+1 и n+2). Как только роботы высвобождаются, то заказы из очереди начинают обрабатываться. Если приходит новая заявка и очередь не пустая, то согласно концепции FIFO она помещается в конец очереди. Также возможны простои роботов при отсутствии новых заказов и пустой очереди (робот 1: между заказами n+1 и n+4, после заказа n+4; робот 2: между заказами 2 и n+3, между заказами n+3 и n+5, после заказа n+5; робот m: между заказами n+2 и n+6).
В соответствии с разработанной схемой и временной диаграммой СМО требуют решения следующие задачи:
♦ минимизация времени простоя роботов;
♦ определение оптимальных мест размещения роботов при ожидании заказов;
♦ минимизация времени нахождения заказов в очереди.
В качестве общих критериев оценки эффективности работы роботизированного склада можно выбрать следующие:
♦ количество обработанных заказов роботами за заданное время T;
а
Робот 1
Робот 2
Робот m
n+5 n+4
♦ длительность простоя каждого робота;
♦ суммарная длительность простоя роботов;
♦ максимальная длина очереди;
♦ длительность обработки заказов каждым роботом;
♦ суммарная длительность обработки заказов за время Т.
В соответствии с рассмотренными теоретическими положениями предлагается следующая формальная модель СМО для роботизированного склада:
где Ь = [V, р})-1 - V, р - объем и приоритет заказа, поступившего в дискретный момент времени Т;
Х={8к//, г}, - 8- - состояние к-го робота (/'=1, 2, 3, = 0 - к-й робот свободен; •к2 = 1 - к-й робот занят; sk3 = -1 - к-й робот вышел из строя), г - оценка времени выполнения заказа;
У - загруженность склада в дискретный момент времени /¿;
Я - правила назначения заказов;
Т - время моделирования.
Опираясь на (1), разработана модель системы управления роботом в виде конечного автомата [16], представленная на рис. 2. Согласно модели выделен перечень возможных событий: ек1 - заказ не назначен, ек2 - заказ назначен, ек3 - заказ выполнен, ек4 - сбой в системе, ек5 - заказ не выполнен, ек6 - робот восстановлен.
Рис. 2. Модель системы управления роботом в виде конечного автомата
Модель поступления и обработки заказов может быть представлена в виде конечного автомата, изображенного на рис. 3. В соответствии с моделью поступления и обработки заказов предусмотрен следующий перечень состояний: 81 - ожидание заказа, 82 - обработка заказа, 83 - постановка заказа в очередь, 84 - передача заказа к-му роботу, 85 - завершение заказа и возможных событий: е1 - заказ не поступил, е2 - заказ поступил, е3 - все роботы заняты, е4 - появился свободный робот, е5 - есть свободный робот, е6 - заказ не выполнен, е7 - заказ выполнен.
5 = (1,Х,У,И,Т),
(1)
Рис. 3. Модель поступления и обработки заказов
Представленные модели основаны на соображении, что заказ назначается любому свободному роботу. Современные склады занимают большую площадь и нецелесообразно размещать роботов во время ожидания в одном месте, а распределить по нескольким позициям. В связи с этим появляется задача распределения задач между роботами [17, 18], чтобы минимизировать время обработки заказов и уменьшить загруженность роботизированной системы.
В силу того, что задачи между роботами должны распределяться по мере поступления заказов, то необходимо применять алгоритмы, которые показывают высокое быстродействие и способны работать практически в реальном времени.
В качестве такого алгоритма можно рассматривать Венгерский алгоритм распределения задач или целей [19], который ориентирован на минимизацию затрат на их выполнение (достижение), но в условиях роботизированного склада его применение может быть неэффективно. Это обусловлено тем, что поток заказов можно рассматривать последовательно и каждый раз решать задачу назначения одного заказа в рамках группы роботов. Такую постановку можно обосновать также и тем, что после того, как роботу назначено выполнение заказа, он может приступить к следующему заказу только после выполнения текущего.
В связи с этим при поступлении заказа каждый робот должен рассчитать длительность его выполнения и предоставить данные на сервер, где заказ будет назначен роботу с минимальной длительностью выполнения [20].
Положим, что любой заказ может содержать ^-типов товаров по ¿-позиций каждого товара.
В такой постановке можно предложить следующую оценку длительности выполнения поступившего заказа каждым роботом:
где с^ - пройденный путь роботом до стеллажа с j-м товаром;
V - скорость движения робота;
- время погрузки^го товара на робота;
сСд - пройденный путь роботом до зоны выдачи заказа;
Ьи - длительность разгрузки робота.
Рассмотрим один заказ, в котором нужно собрать 3 товара на складе с двумя роботами. Возможны следующие варианты обработки заказов роботами: один робот обрабатывает заказ в произвольном порядке; два робота обрабатывают заказ в произвольном порядке. Поэтому возникает задача определения оптимального пути перемещения до стеллажей с товарами.
Рассмотрим задачу обработки заказа одним роботом. Ее можно рассмотреть, как задачу поиска на графе:
где V - множество вершин;
Е - множество ребер.
В роботизированном складе вершины графа - это позиции товаров на полках, которые нужно собрать роботу в заказе, а ребра - это маршруты следования робота между позициями товаров. Тогда маршрут робота при выполнении заказа - это последовательность ребер графа, которые необходимо обойти. Очевидно, что таких путей может быть множество.
Рассмотрим множество маршрутов робота при обработке заказа в терминах комбинаторики [21]. Перестановка (р^Р) - это комбинация элементов из Е взятых в определенном порядке. При этом первым е0£Е и последним еЕЕ элементом в перестановках обязательно должен быть путь из стартовой позиции робота и путь
(2)
G = (V, E),
(3)
к зоне выдачи заказа, соответственно. Для успешного выполнения заказа необходимо, чтобы все элементы из Е были задействованы в перестановках по одному разу. Пусть мощность множества Е равна п, тогда общее количество всех возможных упорядоченных перестановок может быть найдено как К = п!.
Таким образом, для поиска кратчайшего маршрута выполнения заказа одним роботом необходимо:
1) найти все возможные упорядоченные перестановки без повторений;
2) вычислить длины маршрутов для каждой перестановки;
3) выбрать перестановку с маршрутом наименьшей длины.
Для рассмотренного примера обработки заказа из трех товаров можно получить шесть (К=3!) упорядоченных перестановок без повторений для робота №1:
Р0 = {(1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2), (3, 2, 1)}, которые нужно дополнить зоной стартовой позиции робота и зоной выдачи товара: Рр = {(0, 1, 2, 3, 4), (0, 1, 3, 2, 4), (0, 2, 1, 3, 4), (0, 2, 3, 1, 4), (0, 3, 1, 2, 4), (0, 3, 2, 1, 4)},
Для каждого элемента из Рр можно вычислить длины маршрутов:
ЬР = {lll, ll2, ll3, ll4, ll5, ll6},
и найти среди них наименьший:
1ш1П 1 = тт^ь ll2, ll3, ll4, ll5, 116}.
Перестановка с маршрутом наименьшей длины Р/1(1шт 1) будет оптимальным маршрутом робота №1 для обработки заказа.
Очевидно, что если заказ обрабатывают два робота, то Рр = Р^, но длины маршрутов робота №2 будут другими из-за разных стартовых позиций роботов. Совместная обработка заказов предусматривает, что часть заказа будет обрабатываться роботом №1, а другая часть - роботом №2. В связи с этим, рассмотрим длины подмаршрутов в маршруте 1шт 1:
1Ш1П 1 = 10 + 11 + 12 + 13.
Так как робота два, то рассмотрим половину длины маршрута 1Ш1П 1/2, которая может удовлетворять следующим неравенствам:
1тш г/2 < 10, (5)
, (6) , (7)
1тш г/2 < к. (8)
Неравенство (5) показывает, что маршрут следования из стартовой позиции робота №1 к первому товару существенно длиннее остальных подмаршрутов, как представлено на рис. 4,а.
Неравенство (8) показывает, что маршрут следования робота №1 из позиции последнего товара к зоне выдачи заказа существенно длиннее остальных под-маршрутов, как представлено на рис. 4,б.
В первом случае для совместного выполнения заказа, робот №1 может выполнить последовательность Рр = (0, 1, 4), а робот №2 - Рр = (0, 2, 3, 4).
Во втором случае для совместного выполнения заказа, робот №1 может выполнить последовательность Р^1 = (0, 1, 2, 4), а робот №2 - Рр2 = (0, 3, 4).
В остальных случаях, когда 1Ш1П 1/2 удовлетворяет неравенствам (6) или (7), для робота №1 назначается последовательность переходов, удовлетворяющая неравенствам, а для робота №2 - оставшиеся переходы для полного выполнения за-
каза. Аналогичные рассуждения можно развить на случай большего количества роботов, обрабатывающих один заказ. Наименьший маршрут обработки заказа одним роботом следует выбирать для разделения между другими роботами склада.
S ир 1 1 1
-V
а б
Рис. 4. Конфигурация склада для неравенств (5) и (8)
Алгоритм распределения задач для /'-го робота имеет следующую последовательность шагов:
Шаг 1. Ожидание поступления заказа с сервера склада. Если заказ получен, то переход к шагу 2.
Шаг 2. Считывание массива последовательностей перехода на маршрутах Ру.
Шаг 3. Расчет длины маршрутов Ьу.
Шаг 4. Выбор маршрута минимальной длины /т1п 1 и оценка времени Т1 выполнения заказа на данном маршруте.
Шаг 5. Передача /тт 1 и Т1 на сервер склада.
Шаг 6. Ожидание ответа сервера. Если ответ получен, то переход к шагу 7.
Шаг 7. Расчет всех возможных подмаршрутов Рп/ длиной не более 1п.
Шаг 8. Расчет длительности Тп/ выполнения для всех подмаршрутов из Рп/.
Шаг 9. Перебор массива Тп/ ^ Тпу и исключение маршрутов с Т„ > Т1.
Шаг 10. Передача Тпу и Рпу на сервер склада.
Шаг 11. Ожидание получения подмаршрута с сервера склада. Если подмар-шрут получен, то переход к шагу 12.
Шаг 12. Передача полученного подмаршрута Рп в алгоритм планирования пути робота.
Алгоритм распределения задач на сервере склада имеет следующую последовательность шагов:
Шаг 1. Передача всем свободным роботам массива последовательностей Ру обработки поступившего заказа.
Шаг 2. Проверка ответов роботов. Если все свободные роботы ответили, то переход к шагу 3.
Шаг 3. Определение минимального пути /т1п j среди всех переданных роботами.
Шаг 4. Запрос у ^го робота последовательности переходов Ру..
Шаг 5. Ожидание ответа _/-го робота. Если робот ответил, то переход к шагу 6.
Шаг 6. Расчет длины максимального участка маршрута 1п в заказе для каждого робота.
Шаг 7. Передача свободным роботам максимального времени выполнения заказа Т/, длины максимального участка маршрута 1п, последовательности переходов Ру.
Шаг 8. Проверка ответов от свободных роботов. Если все роботы ответили, то переход к шагу 9.
Шаг 9. Проверка: есть ли среди массивов Тп- пустые. Если у роботов есть пустые массивы, то переход к шагу 10.
Шаг 10. Определение количества М незадействованных роботов.
Шаг 11. Изменение количества свободных роботов N = N - М.
Шаг 12. Запуск Венгерского алгоритма для распределения подмаршрутов Рпк среди свободных роботов.
Шаг 13. Передача Рпк свободным роботам.
В алгоритме используется вложение Венгерского алгоритма, который является алгоритмом оптимизации для решения задачи о назначениях за полиномиальное время. Кроме того, Венгерский алгоритм уже реализован на большинстве языков высокого уровня, включая МЛТЬЛБ, что существенно упрощает реализацию метода распределения задач между роботами.
Результаты экспериментов. Для исследования метода распределения задач разработана программа в среде Ма1ЬаЬ. Роботы размещались в центре склада и должны доставить заказ в зону выдачи, размещенную в углу.
Эксперимент 1. Дано два робота с координатами р81 = (25, 25) и р82 = (26, 25), соответственно. Необходимо распределить заказ между роботами и товарами, расположенными на стеллажах:
[(14, 18); (15, 18); (13, 33); (19, 45)].
Как видно из заказа, роботам нужно посетить 4 стеллажа с товарами и доставить заказ в зону выдачи. Сначала получены все возможные неповторяющиеся упорядоченные перестановки участков маршрута:
4 3 2 1 3 2 4 1 2 1 4 3
4 3 1 2 3 2 1 4 2 1 3 4
4 2 3 1 3 1 4 2
4 2 1 3 3 1 2 4
4 1 3 2 2 4 3 1
4 1 2 3 2 4 1 3
3 4 2 1 2 3 4 1
3 4 1 2 2 3 1 4
4 3 2
4 2 3
3 4 2
3 2 4
2 4 3
2 3 4
в количестве 24 шт. для каждого робота. Затем найдены длины всех маршрутов и найден маршрут минимальной длины 29,55 м:
Ьт1П = (13,42 м, 15,13 м, 1,00 м), которому соответствует перестановка:
Р0р4 = (4 3 2 1),
и последовательность координат точек: Р = [(19, 45), (13, 33), (15, 18), (14, 18)].
Так как роботов два, то предельная длина подмаршрута с 10% запасом -16,25 м. На основании этого условия найдены все возможные последовательности переходов: Ре1 = [(19, 45), (13, 33)]; Ре2 = [(13, 33), (15, 18)]; Ре3 = [(13, 33), (15, 18), (14, 18)]; Ре4 = [(15, 18), (14, 18)].
Из представленного перечня переходов единственный маршрут для двух роботов при выполнении заказа образуют: Ре1 + Ре4 = Р, а длины подмаршрутов равны 13,42 м и 1,00 м, соответственно, что на 52% меньше первоначальной длины минимального маршрута для одного робота. После получения подмаршрута в бортовых вычислителях роботов выполняется поиск всех упорядоченных перестановок, чтобы минимизировать путь сбора заказа. Маршруты перемещения роботов представлены на рис. 5,а.
Эксперимент 2. Дано три робота с координатамиps1 = (25, 25), ps2 = (26, 25) и ps3 = (27, 25), соответственно. Необходимо распределить заказ между роботами и товарами, расположенными на стеллажах:
[(1, 6), (14, 28), (35, 40), (49, 13), (14, 32), (2, 27), (39, 3), (19, 4)].
Как видно из заказа, роботам нужно посетить 8 стеллажей с товарами и доставить заказ в зону выдачи. Сначала получены все возможные неповторяющиеся упорядоченные перестановки участков маршрута в количестве 40320 шт.
Затем найдены длины всех маршрутов и найден маршрут минимальной длины 111,82 м:
Lmin = (14,14 м, 20,03 м, 18,11 м, 21,02 м, 12,04 м, 4,00м, 22,47 м), которому соответствует перестановка: Popt = (4, 7, 8, 1, 6, 2, 5, 3), и последовательность координат точек:
P = [(49, 13), (39, 3), (19, 4), (1, 6), (2, 27), (14, 28), (14, 32), (35, 40)].
Так как роботов три, то предельная длина подмаршрута с 10% запасом -40,99 м. На основании этого условия найдены все возможные последовательности переходов:
Pe1 = [(49, 13), (39, 3)]; = [(49, 13), (39, 3), (19, 4)]; Pe3 = [(39, 3), (19, 4)];
Pe4 = [(39, 3), (19, 4), (1, 6)]; Pe5 = [(19, 4), (1, 6)]; Pe6 = [(19, 4), (1, 6), (2, 27)];
Pe7 = [(1, 6), (2, 27)]; Pe8 = [(1, 6), (2, 27), (14, 28)];
Pe9 = [(1, 6), (2, 27), (14, 28), (14, 32)]; PeW = [(2, 27), (14, 28)];
Pen = [(2, 27), (14, 28), (14, 32)]; Pel2 = [(2, 27), (14, 28), (14, 32), (35, 40)];
Pe13 = [(14, 28), (14, 32)]; Pe14 = [(14, 28), (14, 32), (35, 40)];
Pe15 = [(14, 32), (35, 40)].
Из представленного перечня переходов маршрут для трех роботов при выполнении заказа образуют: Pe2 + Pe8 + Pe15 = P, а длины подмаршрутов равны 34,16 м, 39,13 м и 38,51 м, соответственно, что на 65% меньше первоначальной длины минимального маршрута для одного робота. После получения подмаршрута в бортовых вычислителях роботов выполняется поиск всех упорядоченных перестановок, чтобы минимизировать путь сбора заказа. Маршруты перемещения роботов представлены на рис. 5,б.
а б
Рис. 5. Маршруты перемещения роботов в экспериментах 1 и 2
Заключение. Представленные в статье модели и алгоритмы могут быть использованы при разработке систем управления роботизированными складами. Предлагаемые решения отличаются простотой реализации в бортовых вычислителях роботов и центральном сервере склада, высокой скоростью получения результатов, фактически в реальном времени. Кроме того, объединение алгоритмов распределения задач и дополнение их, например, механизмом аукциона, позволяет реализовать децентрализованную систему управления роботизированным складом и исключить центральный сервер из процесса распределения. Представление концептуальной модели в виде системы массового обслуживания позволяет использовать ее показатели качества (вероятность обслуживания заказов за заданное время, пропускная способность склада, вероятность занятости робота, вероятность простоя робота и т.п.) для организационно-технического совершенствования роботизированных складов.
В дальнейшем авторы планируют исследовать систему массового обслуживания и определить соотношение предельного количества заказов и количества роботов, оптимальных мест их размещения и прочее.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Соловьев В.В., Шкурко Е.И. Современное состояние дел в области роботизации складов // Сб. трудов X Всероссийской научной конференции и молодежного научного форума в рамках мероприятий, посвященных году Науки и технологий в Российской Федерации, Геленджик, 20-22 октября 2021 года. - Ростов-на-Дону: ЮФУ, 2021. - С. 173-178.
2. Trefilov S., Nikitin Y. Automatic warehouses with transport robots of increased reliability // Acta Logistica. - 2018. - Vol. 5, No. 3. - P. 19-23.
3. Li Zhenping, Li Wenyu. Mathematical model and algorithm for the task allocation problem of robots in the smart warehouse // American Journal of Operations Research. - 2015. - Vol. 5.
- P. 493-502.
4. Zhang H.G., Zilong C.H., Chris Z., Weinan Y., Yong L., Wenxin W. Layout design for intelligent warehouse by evolution with fitness approximation // IEEE Access. - 2019. - P. 1-7.
5. Azadeh K., Debjit R. Robotized Warehouse Systems: Developments and Research Opportunities // SSRN Electronic Journal. - 2017. - P. 55.
6. Sultanova A.B., Abdullayeva M.Y. Planning the Trajectory of a Warehouse Mobile Robot // International Academy Journal Web of Scholar. - 2020. - Vol. 7 (49). - P. 1-5.
7. Kalinov I. Development of a heterogeneous robotic system for automated inventory stocktaking of industrial warehouse. Doctoral Program in Engineering Systems. - 2020. - 175 p.
8. Bolu A. Omer K. Adaptive Task Planning for Multi-Robot Smart Warehouse // IEEE Access.
- 2021. - P. 1-13.
9. Claes D., Oliehoek F., Baier H., Tuyls K. Decentralised Online Planning for Multi-Robot Warehouse Commissioning // Proceedings of the 16th International Conference on Autonomous Agents and Multiagent Systems (AAMAS 2017). - 2017. - Paper No. 536.
10. Chen Yuxiao, Rosolia Ugo, and Aaron D. Ames Decentralized Task and Path Planning for Multi-Robot Systems // arXiv:2011.10034v1 [cs.RO]. - 2020. - P. 1-8.
11. Kam Fai Elvis Tsang, Yuqing Ni, Cheuk Fung Raphael Wong and Ling Shi. A Novel Warehouse Multi-Robot Automation System with Semi-Complete and Computationally Efficient Path Planning and Adaptive Genetic Task Allocation Algorithms // 15th International Conference on Control, Automation, Robotics and Vision, ICARCV 2018. - 10 p.
12. Honig Wolfgang, Satish Kumar T.K., Cohen Liron, Ma Hang, Koenig Sven, Ayanian Nora. Path Planning With Kinematic Constraints For Robot Groups // Southern California Robotics Symposium. - 2016. - 2 p.
13. Ledzinski D., Marchinak T., Maszewski M., Boronski D. Robot Actions Planning Algorithms // Multi-Agent System. Solid State Phenomena. - 2015. - P. 221-230.
14. Романенко В.А. Системы и сети массового обслуживания: учеб. пособие. - Самара: Изд-во Самарского университета, 2021. - 68 с.
15. Денисов А.А. Системы массового обслуживания // Вестник Воронежского института высоких технологий. - 2019. - № 2 (29). - C. 60-63.
16. Любимова Т.В. Конечный автомат: теория и реализация // Университетская наука. - 2020. - № 1 (9). - С. 117-121.
17. Каляев И.А., Гайдук А.Р., Капустян С.Г. Модели и алгоритмы коллективного управления в группах роботов. - М.: Физматлит, 2009. - 278 с.
18. Bertsekas D., Castanon D. Parallel synchronous and asynchronous implementations of the auction algorithm // Intern. J. of Parallel Computing. - 1991. - Vol. 17. - P. 707-732.
19. BruffD. The Assignment Problem and the Hungarian Method. Retrieved June 26, 2016.
20. Белоглазов Д.А., Соловьев В.В., Титов А.Е. [и др.]. Метод распределения целей в группах интеллектуальных мобильных роботов // Известия Тульского государственного университета. Технические науки. - 2016. - № 11-3. - С. 122-133.
21. Jukna S. Extremal Combinatorics: With Applications in Computer Science. - Berlin. Springer, 2001. - 375 p.
REFERENCES
1. Solov'ev V.V., Shkurko E.I. Sovremennoe sostoyanie del v oblasti robotizatsii skladov [The current state of affairs in the field of robotization of warehouses], Sb. trudovX Vserossiyskoy nauchnoy konferentsii i molodezhnogo nauchnogo foruma v ramkakh meropriyatiy, posvyashchennykh godu Nauki i tekhnologiy v Rossiyskoy Federatsii, Gelendzhik, 20-22 oktyabrya 2021 goda [Proceedings of the X All-Russian Scientific Conference and Youth Scientific Forum as part of events dedicated to the Year of Science and Technology in the Russian Federation, Gelendzhik, October 20-22, 2021]. Rostov-on-Donu: YuFU, 2021, pp. 173-178.
2. Trefilov S., Nikitin Y. Automatic warehouses with transport robots of increased reliability, Acta Logistica, 2018, Vol. 5, No. 3, pp. 19-23.
3. Li Zhenping, Li Wenyu. Mathematical model and algorithm for the task allocation problem of robots in the smart warehouse, American Journal of Operations Research, 2015, Vol. 5, pp. 493-502.
4. Zhang H.G., Zilong C.H., Chris Z., Weinan Y., Yong L., Wenxin W. Layout design for intelligent warehouse by evolution with fitness approximation, IEEE Access, 2019, pp. 1-7.
5. Azadeh K., Debjit R. Robotized Warehouse Systems: Developments and Research Opportunities, SSRNElectronic Journal, 2017, pp. 55.
6. Sultanova A.B., Abdullayeva M.Y. Planning the Trajectory of a Warehouse Mobile Robot, International Academy Journal Web of Scholar, 2020, Vol. 7 (49), pp. 1-5.
7. Kalinov I. Development of a heterogeneous robotic system for automated inventory stocktaking of industrial warehouse. Doctoral Program in Engineering Systems, 2020, 175 p.
8. Bolu A. Omer K. Adaptive Task Planning for Multi-Robot Smart Warehouse, IEEE Access, 2021, pp. 1-13.
9. Claes D., Oliehoek F., Baier H., Tuyls K. Decentralised Online Planning for Multi-Robot Warehouse Commissioning, Proceedings of the 16th International Conference on Autonomous Agents andMultiagent Systems (AAMAS 2017), 2017, Paper No. 536.
10. Chen Yuxiao, Rosolia Ugo, and Aaron D. Ames Decentralized Task and Path Planning for Multi-Robot Systems, arXiv:2011.10034v1 [cs.RO], 2020, pp. 1-8.
11. Kam Fai Elvis Tsang, Yuqing Ni, Cheuk Fung Raphael Wong and Ling Shi. A Novel Warehouse Multi-Robot Automation System with Semi-Complete and Computationally Efficient Path Planning and Adaptive Genetic Task Allocation Algorithms, 15th International Conference on Control, Automation, Robotics and Vision, ICARCV 2018, 10 p.
12. Honig Wolfgang, Satish Kumar T.K., Cohen Liron, Ma Hang, Koenig Sven, Ayanian Nora. Path Planning With Kinematic Constraints For Robot Groups, Southern California Robotics Symposium, 2016, 2 p.
13. Ledzinski D., Marchinak T., Maszewski M., Boronski D. Robot Actions Planning Algorithms, Multi-Agent System. Solid State Phenomena, 2015, pp. 221-230.
14. Romanenko V.A. Sistemy i seti massovogo obsluzhivaniya: ucheb. posobie [Systems and networks of queuing: a tutorial]. Samara: Izd-vo Samarskogo universiteta, 2021, 68 p.
15. Denisov A.A. Sistemy massovogo obsluzhivaniya [Queuing systems], Vestnik Voronezhskogo instituta vysokikh tekhnologiy [Bulletin of the Voronezh Institute of High Technologies], 2019, No. 2 (29), pp. 60-63.
16. Lyubimova T.V. Konechnyy avtomat: teoriya i realizatsiya [Finite automaton: theory and implementation], Universitetskaya nauka [Universitetskaya nauka], 2020, No. 1 (9), pp. 117-121.
17. Kalyaev I.A., Gayduk A.R., Kapustyan S.G. Modeli i algoritmy kollektivnogo upravleniya v gruppakh robotov [Models and algorithms of collective control in groups of robots]. Moscow: Fizmatlit, 2009, 278 p.
18. Bertsekas D., Castanon D. Parallel synchronous and asynchronous implementations of the auction algorithm, Intern. J. of Parallel Computing, 1991, Vol. 17, pp. 707-732.
19. BruffD. The Assignment Problem and the Hungarian Method. Retrieved June 26, 2016.
20. Beloglazov D.A., Solov'ev V.V., Titov A.E. [i dr.]. Metod raspredeleniya tseley v gruppakh intellektual'nykh mobil'nykh robotov [The method of distribution of goals in groups of intelligent mobile robots], Izvestiya Tul'skogo gosudarstvennogo universiteta. Tekhnicheskie nauki [Bulletin of the Tula State University. Technical science], 2016, No. 11-3, pp. 122-133.
21. Jukna S. Extremal Combinatorics: With Applications in Computer Science. Berlin. Springer, 2001, 375 p.
Статью рекомендовал к опубликованию д.т.н., профессор В.В. Курейчик.
Соловьев Виктор Владимирович - Южный федеральный университет; e-mail: vvsolovev@sfedu.ru; г. Таганрог, Россия; тел.: +79043438844; кафедра систем автоматического управления; старший преподаватель; руководитель Центра проектной деятельности ИРТСУ ЮФУ.
Номерчук Александр Яковлевич - e-mail: aynomerchuk@sfedu.ru; тел. +79185945894; кафедра систем автоматического управления; старший преподаватель.
Soloviev Viktor Vladimirovich - Southern Federal University; e-mail: vvsolovev@sfedu.ru; Taganrog, Russia; phone: +79043438844; the department of automatic control systems; senior lecturer; head of the Center for Project Activities, Institute of Radio Engineering Systems and Control, SFU.
Nomerchuk Alexandr Yakovlevich - e-mail: aynomerchuk@sfedu.ru; phone: +79185945894; the department of automatic control systems; senior lecturer.
УДК 004.056.5 Эй 10.18522/2311-3103-2023-3-157-172
С.С. Велигодский, Н.Г. Милославская
УНИФИЦИРОВАННАЯ МОДЕЛЬ ЗРЕЛОСТИ ЦЕНТРОВ УПРАВЛЕНИЯ СЕТЕВОЙ БЕЗОПАСНОСТЬЮ ИНФОРМАЦИОННО-ТЕЛЕКОММУНИКАЦИОННЫХ СЕТЕЙ
Создаваемые согласно Указу Президента Российской Федерации № 250 субъектами критической информационной инфраструктуры специальные структурные подразделения способны противодействовать компьютерным атакам на их информационно-телекоммуникационные сети (ИТКС). Чтобы быть эффективными, в составе этих подразделения должны существовать центры управления сетевой безопасностью (ЦУСБ) ИТКС, имеющие высокий уровень зрелости, соответствующий предъявляемыми к его организации-владельцу требованиями по обеспечению информационной безопасности. В настоящее время единого подхода к проведению оценки уровня зрелости ЦУСБ не существует. Поэтому целью статьи является описание разработанной унифицированной модели зрелости ЦУСБ ИТКС организаций (УМЗ ЦУСБ), созданной на основе обобщения и развития проанализированных моделей зрелости и собственной систематики процессов управления сетевой безопасностью (УСБ) и услуг по УСБ типовой ИТКС, реализуемыми в ЦУСБ, а также технологий, поддерживающих выполнение процессов и предоставление услуг, дополненных рассмотрением общей организации функционирования ЦУСБ и его кадровым обеспечением. Модель зрелости ЦУСБ определена как структурированный набор элементов, объединяющий информационную потребность установления уровня зрелости ЦУСБ с их атрибутами - свойствами или характеристиками ЦУСБ. Сформулированы требования к разрабатываемой УМЗ внут-