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

УДК 621.87; 681.5

В. С. Щербаков, М. С. Корытов

ОБ ОДНОЙ МОДИФИКАЦИИ АЛГОРИТМА МУРАВЬИНЫХ КОЛОНИЙ ДЛЯ ПЛАНИРОВАНИЯ ТРАЕКТОРИИ ПЕРЕМЕЩЕНИЯ ГРУЗА В ПРОСТРАНСТВЕ С ПРЕПЯТСТВИЯМИ С УЧЕТОМ УГЛОВОЙ ОРИЕНТАЦИИ

Аннотация. Описывается модификация алгоритма муравьиных колоний, позволяющая осуществлять поиск оптимальной траектории перемещения грузоподъемной машиной груза произвольной формы в трехмерном пространстве с произвольными препятствиями, заданными в дискретном виде, с учетом угловой ориентации груза.

Ключевые слова: алгоритм муравьиных колоний, модификация, планирование оптимальной траектории, поиск пути, трехмерное пространство, препятствия, графы.

Abstract. We describe a modification of the algorithm of ant colonies, which allows for searching the optimal trajectory movement for hoisting equipment cargo of arbitrary shape in three-dimensional space with arbitrary constraints, as defined in discrete form, taking into account the angular orientation of cargo.

Keywords: ant colony algorithm, modification, optimal trajectory planning, search path, three-dimensional space, the obstacles, graphs.

Введение

Муравьиные алгоритмы (алгоритмы муравьиных колоний, алгоритмы роевого интеллекта) относятся к современному направлению искусственного интеллекта - природным вычислениям (Natural Computing), и отличаются высокой эффективностью [1, 2].

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

1. Постановка задачи

Заданы начальная и конечная точки положения груза в 5-мерном пространстве линейно-угловых координат (рис. 1):

где хн0, ун0, гн0 - линейные координаты точки начала локальной системы координат груза Х&2^& в неподвижной системе координат Х^10У0, связанной с рабочей областью перемещений, соответствующие начальному положению груза; хк0, ук0, гк0 - аналогичные линейные координаты, соответствующие конечному положению груза; ун0, шн0 - координаты углов поворота груза вокруг

осей Х^, в начальной точке; уко, «ко - аналогичные угловые координаты,

соответствующие конечному положению груза.

Рис. 1. Начальное и конечное положения перемещаемого груза

Направим ось Хо неподвижной системы координат таким образом, чтобы она была параллельна линии, соединяющей две точки в пространстве: точку начала локальной системы координат груза в начальном поло-

жении груза и ту же точку в конечном положении груза. Это позволит упростить расчет и уменьшить объем вычислений.

Для описания пространства состояний груза на равномерной дискретной решетке координат задан граф О = (5, Е), где 5 = {$1, ¿2,..., - множество вершин графа, Е = - множество ребер.

Обозначим начальную вершину - s№ конечную вершину - sK. Необходимо найти кратчайший путь длины L из ¿н в ¿к, представляющий собой последовательность из смежных вершин ¿н, Sip, S2p, ..., Skp, SK

где {L} - множество возможных путей из sH в sK.

Каждая вершина графа соответствует определенному пространственному линейно-угловому положению груза. Линейные и угловые координаты груза заданы на равномерной сетке: i = 1, 2, ..., imax; j = 1, 2, ..., jmax; k = 1, 2, ..., kmax; l = 1, 2, ..., /max; m = 1, 2, ..., mmax. Индексы i, j, k соответствуют линейным перемещениям xo, yo, zo точки начала локальной системы координат груза соответственно вдоль осей Xo, Yo, Zo, а индексы /, m - двум углам поворота груза вокруг собственных осей yo, Wo соответственно (рис. 1).

В собственной локальной системе координат груза Х%2^% задан набор «габаритных» точек R (i = 1, 2, ..., с) на поверхности объемного тела груза, определяющий форму последнего. Точки заданы в виде векторов положения

10

L = min {L},

вида х^ у;ё 1^ , где хи уи zi - координаты точки г в локальной

системе координат груза.

В неподвижной системе координат Хо2оУо также задана дискретная матрица высот препятствий 2пр{г,к), где г, к - индексы координат х0, z0 соответственно.

2. Описание модифицированного алгоритма

По векторам точек поверхности тела Д- и матрице высот препятствий 2пр методом однородных координат [3] определим квадратную матрицу смежности Л=[а-] п -=1 размера «*«, элементы которой равны

Г1, если существует дуга (si, s /),

а<1 = 1о

10, если нет дуги (si, Sj).

Матрица смежности полностью определяет структуру графа с учетом геометрии препятствий в рабочей области, про которые принято допущение об их неподвижности, и геометрии объекта (точек Я ).

Муравьиный алгоритм состоит в последовательности итераций ¿2, ..., ^, на каждой из которых гкол муравьев независимо друг от друга совершают

полный цикл движения из 5н в 5к. Выбор вершины Sj для перехода в нее от-

дельного агента из текущей вершины sl осуществляется при помощи вероятностного правила на основе двух компонент - видимости щ и уровня феромонов Ту, которые ассоциированы с вершинами, смежными с текущей.

Каждая дуга (5г, 5;)еЕ имеет весовой коэффициент щ-. В терминах классического муравьиного алгоритма, разработанного для решения задачи коммивояжера, щ- - это видимость между вершинами sl и Sj. Эта величина, обратная расстоянию [1, 2]:

Щ = 1/А/,

где О- - расстояние между вершинами sl и Sj.

Расстояние О- может интерпретироваться как функция стоимости пути (целевая минимизируемая функция), которая может в общем случае определяться произвольным образом и зависеть от сколь угодно большого числа параметров. В настоящей работе использовалось выражение функции стоимости пути на основе пяти координат груза в пространстве:

/ = ^/(хог -хо/) +(Уог -Уо/) + ((г -го/) +

/ 2 2 + Ц

где к - весовой коэффициент для угловых координат.

Кроме того, помимо описанного подхода, предложен и исследован на применимость другой способ определения видимости Щ/ для вершины Sj, смежной с текущей рассматриваемой вершиной Sl. Видимость предлагается определять как предполагаемое (прогнозируемое) расстояние между смежной вершиной Sj и конечной вершиной 5к. Данный подход используется в эври-

стических алгоритмах поиска кратчайшей траектории на графах, в частности, в алгоритме А и его модификациях, и доказал свою эффективность [4, 5]. Таким образом, жадная эвристическая функция расстояния до ближайшего соседа из классического муравьиного алгоритма заменяется эвристической функцией оценки предполагаемого расстояния до цели:

Обозначим Ту(0 - количество феромонов на дуге (5г-, Sj) на итерации г. Для работы алгоритма используются две квадратные матрицы: видимости

элементы матрицы феромонов Т принимаются равными некоторому постоянному малому положительному значению.

Матрица видимости получается путем умножения соответствующих расстояний (5) между текущей и всеми смежными вершинами по прямой либо между всеми смежными и конечной вершинами по прямой (6) без учета препятствий на соответствующие элементы матрицы смежности (2).

Для практической реализации алгоритма предлагается использовать подходы из области искусственного интеллекта. Формализуем функцию определения преемника для произвольного состояния объекта [5]. Отдельный агент-муравей перемещает груз по узлам графа на равномерной сетке. В соответствии с принятым при постановке задачи расположением осей неподвижной системы координат приращение индекса г (координаты хо) на единицу целесообразно на каждом шаге агента, так как уменьшает расстояние до цели и общее число шагов. Остальные четыре координаты груза могут как увеличиваться или уменьшаться на один линейный или угловой шаг, так и оставаться неизменными (рис. 2).

Для каждой вершины графа в общем случае получим Е = ц" вершин-преемников, где ц=3 - число вариантов выбора по отдельной координате; " = 4 - количество координат, допускающих многовариантность при выборе преемника. В нашем случае Е = Ц = 34 = 81. Однако, учитывая, что некоторые вершины графа непроходимы вследствие пересечения груза с препятствиями, общее число преемников Е для каждой конкретной вершины может быть меньше 81. В некоторых пространственных состояниях число вершин-преемников может быть равно о, в этом случае путь тупиковый, он убирается из рассмотрения.

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

I=1

где а и в - весовые относительные коэффициенты значимости феромона и видимости соответственно (а + в = 1).

N = [^у]п у=1 и феромонов ДО = [ту]п у=і. В начальный момент времени все

г) д)

Рис. 2. Возможные состояния-преемники для текущего состояния груза в пространстве: а - пространственный вид; б - вид спереди; в - вид сбоку; г - вид сверху; д - углы поворота

Для реализации выбора отдельной вершины из списка вершин, смежных с текущей, одномерный вектор вероятностей Pij (j = 1, 2, ..., и) преобразуется в одномерный вектор сумм вероятностей Oj (j = 1, 2, ..., и), элементы которого определяются следующим образом:

Vj — Z

V—1

Компоненты вектора сумм вероятностей oj представляют собой последовательность монотонно возрастающих чисел со значениями в интервале [0; 1]. Последний компонент вектора сумм вероятностей имеет значение ои = 1. Затем при помощи генератора случайных чисел получается число ю в интервале [0; 1] с равномерным законом распределения. Вершина-преемник определяется как компонент вектора сумм oj, ближайший меньший к ю:

где а - знак логического умножения (конъюнкции).

При достижении индексом i координаты x0, который детерминированно увеличивается на 1 при каждом шаге агента, значения (imax - 1) построение пути муравьем завершается. После того как на итерации t построен путь Sr(t) для отдельного муравья-агента колонии с номером r (r = 1, 2, ..., гкол), определяется длина этого пути как сумма функций стоимости всех дуг вида (5), входящих в данный путь:

^кон

Lr

i—2

После нахождения путей перемещения для всех гкол муравьев колонии из совокупности путей (Si(t), S2(t),..., Srкол (t)} выбирается путь с минимальным значением функции стоимости пути на данной итерации алгоритма t:

L*

Последовательность вершин Sr(t) в описываемой реализации представляет собой матрицу размером [imaxx4], в каждой строке которой хранятся индексы j(i), k(i), l(i), m(i) вершины пути, имеющей индекс i.

Затем длина оптимального пути на данной итерации L (t) сравнивается с текущим значением длины глобального оптимального пути L , и при необходимости значение последней обновляется:

L*= min{L*

Последовательность вершин S* глобального оптимального пути L* сохраняется и при уменьшении значения L по (12) также обновляется.

После завершения каждой итерации происходит обновление феромона на всех дугах графа по известной зависимости [1, 2]:

ту

гдеp - коэффициент испарения феромона, p е [0,1],

^кол

Ату

r—1

Ахі]г (') =

где 5X0 - последовательность вершин, пройденных муравьем г на итерации Ьг(?) - длина пути, пройденного муравьем г на итерации ¿; Q - постоянная.

Рис. 3. Блок-схема алгоритма муравьиных колоний для пяти координат, описывающих положение груза

Уровень феромона на ребрах глобального оптимального пути длиной L* после каждой итерации дополнительно увеличивается на величину [1, 2]:

Дте

где e - количество элитных муравьев.

Цикл завершается после выполнения заданного числа итераций: t > tK. После этого выполняется локальная оптимизация лучшей найденной траектории S глобального оптимального пути L* с учетом препятствий рабочей области, чем завершается работа алгоритма.

Блок-схема алгоритма муравьиных колоний приведена на рис. 3. Вычислительная реализация описанного алгоритма в среде MATLAB показала его работоспособность.

Для тестового примера было проведено две серии экспериментов: одна серия - с классическим определением видимости по (5), другая - с предложенным в настоящей работе способом определения видимости как предполагаемого расстояния до конечной вершины по (6). Результаты показали, что точность найденных траекторий различается незначительно, т.е. применимы оба подхода.

Время моделирования на компьютере средней производительности (AMD Athlon 64 X2 Dual Core Processor 5600+ 2.90 GHz) составило от 50 до 1550 с. Число муравьев в колонии и итераций алгоритма составляло от 50 до 250.

Заключение

Модифицированный алгоритм позволяет вести поиск оптимальной траектории перемещения груза с учетом его пространственной формы при любой форме препятствий, заданной дискретно. Применение алгоритма возможно в системах автоматического управления грузоподъемных машин при перемещении грузов в трехмерном пространстве с препятствиями.

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

1. Dorigo, M. Swarm Intelligence, Ant Algorithms and Ant Colony Optimization / M. Dorigo // Reader for CEU Summer University Course «Complex System». - Budapest: Central European University, 2001. - P. 1-38.

2. Штовба, С. Д. Муравьиные алгоритмы / С. Д. Штовба // Exponenta Pro. Математика в приложениях. - 2003. - № 4 (4). - С. 70-75.

3. Щербаков, В. С. Статическая и динамическая устойчивость фронтальных погрузчиков : монография / В. С. Щербаков, М. С. Корытов. - Омск : Изд-во СибАДИ, 1998. - 100 с.

4. Кормен, Т. X. Алгоритмы: построение и анализ : пер. с англ. / Томас X. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн. - М. : Изд. дом «Вильямс», 2005. - 1296 с.

5. Рассел, С. Искусственный интеллект: современный подход : пер. с англ. / Стюарт Рассел, Питер Норвиг. - М. : Изд. дом «Вильямс», 2006. - 1408 с.

Щербаков Виталий Сергеевич доктор технических наук, профессор, декан факультета нефтегазовой и строительной техники, Сибирская государственная автомобильно-дорожная академия

E-mail: sherbakov_vs@sibadi.org

Корытов Михаил Сергеевич кандидат технических наук, доцент, кафедра конструкционных материалов и специальных технологий, Сибирская государственная автомобильно-дорожная академия

E-mail: kms142@mail.ru

Shcherbakov Vitaly Sergeevich Doctor of engineering sciences, professor, dean of the department of oil-and-gas and construction hardware, Siberia State Automobile and Highway Academy

Korytov Mikhail Sergeevich Candidate of engineering sciences, associate professor, sub-department of constructional materials and special processes, Siberia State Automobile and Highway Academy

УДК 621.87; 681.5 Щербаков, В. С.

Об одной модификации алгоритма муравьиных колоний для планирования траектории перемещения груза в пространстве с препятствиями с учетом угловой ориентации / В. С. Щербаков, М. С. Корытов // Известия высших учебных заведений. Поволжский регион. Технические науки. - 2010. - № 3 (15). - С. 142-150.