Научная статья на тему 'Метод приближенного построения границы области достижимости многосекционного манипулятора типа «Хобот»'

Метод приближенного построения границы области достижимости многосекционного манипулятора типа «Хобот» Текст научной статьи по специальности «Математика»

CC BY
293
47
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЛОБАЛЬНАЯ ОПТИМИЗАЦИЯ / МНОГОКРИТЕРИАЛЬНАЯ ОПТИМИЗАЦИЯ / РОБОТ-МАНИПУЛЯТОР

Аннотация научной статьи по математике, автор научной работы — Карпенко А. П., Семенихин А. С., Черная Л. А.

Рассмотрена задача приближенного построения границы области достижимости многосекционного робота-манипулятора типа «хобот». Предложен метод SPSO решения этой задачи. Идейной основой метода является известный метод MOPSO, предназначенный для решения задачи многокритериальной оптимизации. Метод SPSO, как и метод MOPSO, использует алгоритм роя частиц (PSO) для решения задачи глобальной оптимизации и -алгоритм для отбора недоминируемых решений. Эффективность метода SPSO продемонстрирована на нескольких задачах построения области достижимости, как в случае отсутствия препятствий, так и в случае их наличия.

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

Похожие темы научных работ по математике , автор научной работы — Карпенко А. П., Семенихин А. С., Черная Л. А.

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

Текст научной работы на тему «Метод приближенного построения границы области достижимости многосекционного манипулятора типа «Хобот»»

электронное научно-техническое издание

НАУКА и ОБРАЗОВАНИЕ

Эя №ФС 77 - 305Б9. Государственная регистрация №0421100025.155Н 1994-040В_

Метод приближенного построения границы области достижимости многосекционного манипулятора типа «хобот» # 01, январь 2011

авторы: Карпенко А. П., Семенихин А. С., Черная Л. А.

УДК 519.6

МГТУ им. Н.Э. Баумана

Введение

Построение области достижимости манипулятора (ОДМ) является одной из базовых задач робототехники. Знание этой области позволяет определить такие важные параметры робота-манипулятора, как объем области достижимости, показатель Ли-Янга, пределы достижимости схвата и т.д. [1].

Аналитически задача построения ОДМ может быть решена только в простейших случаях. Для многосекционного манипулятора типа «хобот» [2-4] возможны лишь приближенные численные методы решения этой задачи.

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

В работе для построения границы ОДМ предлагается SPSO-метод, источником идеи которого является метод MOPSO приближенного построения

фронта Парето (а тем самым, и множества Парето) в задаче многокритериальной оптимизации [5-7].

В первом разделе работы приведена постановка задачи. Во втором разделе рассмотрены метод MOPSO и а -алгоритм. Третий раздел содержит описание метода SPSO, четвертый раздел - краткое описание программной системы, реализующей данный метод, пятый раздел - некоторые экспериментальные результаты исследования его эффективности. В заключении сформулированы основные результаты работы и перспективы ее развития.

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

Рассмотрим многосекционный манипулятор типа «хобот», схема которого представлена на рисунке 1.

v

1, 2, ..., п - номера секций; 0п - схват манипулятора Рисунок 1 - Схема манипулятора

Свяжем с i -ой секцией манипулятора систему координат 0ixiyizi, в которой ось 0г. у. совпадает с продольной осью симметрии этой секции, а оси 0.x., 0г^г. расположены таким образом, что образуют с осью О.у. правую тройку; . е [1: п]. Инерциальную систему координат, связанную с неподвижным основанием манипулятора, обозначим 00 х0 у0 z0. Там, где это не может вызвать неверного чтения, будем для простоты письма для этой системы координат использовать также обозначение 0xyz.

Пусть Li - длина . -ой секции манипулятора, а также сама эта секция; . е [1: п]. Положим, что каждая кинематическая пара (Ь1 _1,Li) имеет две степени свободы и ориентацию . -ой секции относительно (. _ 1) -ой секции определяют углы Эйлера 1, р. 2 (рисунок 2).

Рисунок 2 - Системы координат 0._1 х_ у. _1 zi_1, 0. xiyizi

Геометрические соотношения между системами координат 0._1 хул_1 zi_1, 0.х.уможно представить в виде (4 х 4)-матрицы однородных преобразований

_ ( 0 0

sin ( с0( _ д с0( Sin (,2 L 2

sin (г л sin (,2 _ cos ( sin (,2 C0S (,2 0

0 0 0 1

При этом координаты точки 0., i е[1: п] в системе координат 00 х0у0z0 определяются формулой

к У>, Zo, 1)т = к, (о 0 0 1)т,

где (4х4)-матрица ¥0г = ¥г¥2...¥г [1].

Положим, что секция манипулятора с номером . е [1: п] представляет собой прямой круговой усеченный конус высотой Li, диаметр большего основания которого равен di_1, а меньшего основания - di (рисунок 3).

Рисунок 3 - Форма секций манипулятора

Введем в рассмотрение (2п х 1) -вектор обобщенных координат манипулятора q = ((П,(12,(21,...,(п2)т и множество допустимых значений его компонентов

Я9 = {( | _( < ( < (,. е [1: п],] = 1,2}, (1)

где (р~ , (I - заданные константы.

Областью достижимости манипулятора D называется множество всех возможных положений его схвата (x0n, y0n, z0n), удовлетворяющих ограничению

q е Dq. (2)

Границу области D обозначим Г.

Ставится задача 1 (без препятствий) - задача приближенного построения границы Г области D .

В области D может находиться некоторое число неподвижных препятствий B1, B2,... При этом ОДМ некоторым образом трансформируется.

Обозначим D трансформированную препятствиями ОДМ и определим следующим образом:

- область D удовлетворяет ограничениям (1), (2);

- каждая из секций манипулятора отстоит от каждого из препятствий Bj, j = 1,2,... не менее чем на заданную величину sB > 0 .

Границу области D обозначим Г.

Ставится задача 2 (задача с препятствиями) - задача приближенного построения границы Г области D .

Отметим, что отображения Dq ^ D, Dq ^ D являются, вообще говоря, однозначными, но не взаимно-однозначными.

2. Оптимизация роем частиц

2.1. Рассмотрим сначала задачу глобальной безусловной однокритеральной оптимизции

min f (X) = f (X*), X е Rm. (3)

где f (X) - целевая функция, определенная в m -мерном арифметическом пространстве Rm (пространстве параметров).

Множество частиц (рой, популяцию) обозначим {Р, г е [1: N]}, где N -число частиц в рое (размер популяции). Частица Р определяется т -мерными векторами координат X. , и скоростей V. ,. Здесь t е[0: Т] - дискретный момент времени (номер итерации); Т - общее число итераций. Начальные координаты и скорости частицы Р известны и равны Xг. 0 = X., Vl0 = V0 соответственно.

В каноническом алгоритме роя частиц (PSO) итерации выполняются по схеме

X.м = X., + vt+1, V,+1 = ФУ« + и[0, Фг ] ® (XI - хи)+и[0, Ф3 ] ® (Хг^ - Хи).

Здесь и[а,Ь] - т -мерный вектор псевдослучайных чисел, равномерно распределенных в интервале [а,Ь]; ® - символ покомпонентного умножения векторов; Xъгt - вектор координат частицы Р с наилучшим (в смысле формулы (3)) значением целевой функции f (X) за все время поиска [0:,]; Xgt - вектор координат частицы, которая является соседней с данной частицей Р и имеет наилучшее за то же время значение целевой функции f (X); ф1, ф2, ф3 -свободные параметры алгоритма. Соседство частиц определяется используемой топологией соседства. Позиция Xъit частицы Р называется локально лучшей

позицией этой частицы, а Xgt - глобально лучшей позицией соответствующей

соседней частицы [8].

2.2. Перейдем к рассмотрению задачи многокритериальной оптимизации (МКО-задачи). Положим, что множеством допустимых значений вектора варьируемых параметров X является ограниченное и замкнутое множество Dх с R'n. На множестве Dх определен векторный критерий оптимальности F(X) = (_/1(X),/2(X),...,/к(X)) со значениями в пространстве Як (пространстве критериев). Обозначим DF - множество достижимости задачи [9].

Рассмотрим две следующие МКО-задачи.

1) МКО-задача 1. Лицо, принимающее решения (ЛПР), стремится минимизировать каждый из частных критериев оптимальности f1(X),f2(X),...,fk(X), что условно записывается в виде

min F(X) = F(X1 ), X g DX, (4)

где X1 - решение задачи.

2) МКО-задача 2. ЛПР стремится максимизировать каждый из частных критериев оптимальности:

max F(X) = F(XA ), X g Dx , (5)

лг A

где X - решение.

Определим для МКО-задач 1, 2 отношения доминирования.

В МКО-задаче 1 вектор F(X1 ) = F1 доминирует вектор F(X2 ) = F2 ( F1 У1 F2), если среди равенств и неравенств f (Xx) < f (X2), i g [1: k] имеется, хотя бы одно строгое неравенство. Аналогично, в МКО-задаче 2 вектор F доминирует вектор F2 ( F1 У AF2), если среди равенств и неравенств f (Xj) > f (X2), i g [1: k] имеется, хотя бы одно строгое неравенство [9].

Подмножества множества DF, среди которых нет векторов F, доминируемых в смысле отношений У1, УA представляют собой фронты Парето МКО-задач 1, 2 и обозначаются D'F, D'A соответственно. Множества DX g Dx , DXA g Dx , соответствующие множествам DIF, D'A, представляют собой ни что иное, как множества Парето МКО-задач 1, 2 [9].

По аналогии с тем, что вектор X. t определяет положение частицы P в пространстве параметров, будет говорить, что вектор Flt ={fut,/2ц,.., fkn) = F(Xx t) определяет положение этой частицы

в пространстве критериев.

Хорошо известно, что при отсутствии дополнительной априорной информации (по сравнению с информацией, присутствующей в постановке задач (4), (5)), во множествах Парето DF, D'A невозможно выделить в качестве

решения этих задач одну из точек. Поэтому далее под решениями задач (4), (5) понимаются множества Парето D!X, D'A этих задач [5].

При использовании алгоритма PSO для решения МКО-задачи основной проблемой является то, какую позицию считать глобально лучшей позицией Xgt для частицы P. Существует несколько алгоритмов решения этой

проблемы, одним из которых является с -алгоритм [5, 6]. Рассмотрим схему этого алгоритма на примере двухкритериальной задачи ( k = 2).

В случае двухкритериальной задачи с -параметром частицы P, i е [1: N] с координатами X. называется величина

f - f

С = с( F ) = , (6)

f 1,i f 2,i

где Fi = (, f2i) = F (X.). Легко видеть, что векторы Fi, , имеющие одно и то

же значение а -параметра, лежат на одной прямой, проходящей через начало координат системы координат 0/ f2. Формулу (6) иллюстрирует рисунок 4, на котором одинаковые значения а-параметра имеют пары векторов F2),

F4), F6).

В случае, когда размерность пространства критериев больше двух (k > 2) а -алгоритм использует к-мерный вектор а -параметров а = (а1,а2,...,ак). Так для частицы Р, i е [1: N] на итерации t е [1: Т] этот вектор равен

/Г-1 \ ((/12',г — ) (/2,г' ,г — /3,г,г ) ••• (/"к,г,г — /и,г ))

а,,г = 7( ЬгЛ ) =-/2-/2-7г-•

/1,г,г ^ /2,г,г + ••• + /к,г,г

Сигма-алгоритм существенно использует архив недоминируемых решений Обозначим этот архив SI для МКО-задачи 1 и SA - для МКО-задачи 2^

Если на итерации г е [1: Т] алгоритма PSO в архиве Sq находятся компоненты векторов ХД, Fi q, соответствующих частице Р^, то для краткости

письма будем далее говорить, что в архиве Sq на этой итерации находится частица Р^; q е {I; А} • Здесь г е [1: N ], где N1' - число частиц в соответствующем архиве в момент времени г. Сигма-параметр частицы Р^ в момент времени г обозначим •

В а -алгоритме для частицы Р3 на итерации г глобально лучшая позиция ХД в архиве Sq, q е {I; А} опредлеляется по следующиеу правилу^

1) Определяем а-параметр частицы Р3, т^ вычисляем величину

< = 7(Р]Л )•

2) Находим в архиве Sq частицу Р^, у которой а-параметр наиболее

близок к величине а ,:

3 ,г

тт

q

q

; г е [1: N ]•

Здесь ||*| - символ евклидовой нормьг

3) В качестве глобально лучшей позиции ХД для частицы Р3 принимаем вектор XIг, т^ вектор координат частицы Р^ •

Для двухкртериальной МКО-задачи 1, изложенную схему а-алгоритма иллюстрирует рисунок 5, где темным кружками показаны векторы Р1,

соответствующие частицам Р.1, стрелками показаны глобально лучшие позиции для соответсвующих частиц; . е [1: N1 ].

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

3. SPSO-метод приближенного построения границы области достижимости

Ограничимся случаем симметричных ограничений на углы рi j, . е [1: п],

у = 1,2 - положим, что

В = {( | ( < < (Г,. е [1: п],у = 1,2}, где р ™х - заданные константы. Легко видеть, что в этих допущениях ОДМ в задаче без препятствий симметрична относительно оси 0у. Поэтому для построения ОДМ в данном случае достаточно построить лишь одно ее сечение (пусть это будет сечение z = 0) и, более того, - лишь половину этого сечения (пусть это будет часть области В, соответствующая х > 0).

Рисунок 5 - К схеме о -алгоритма: МКО-задача 1; k = 2

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

В работе, однако, и в задаче с ограничениями рассматриваются только «плоские» конфигурации манипулятора.

SPSO-метод построения границы ОДМ основан на следующих аналогиях этой задачи с задачей многокритериальной оптимизации:

- пространству параметров {X} соответствует пространство обобщенных координат манипулятора {д};

- множеству допустимых значений вектора варьируемых параметров Dх -множество допустимых значений вектора обобщенных координат ;

- пространству критериев ^} - пространство геометрических координат схвата манипулятора {х, у,0};

- множеству достижимости DF - область достижимости манипулятора D ;

- границе Г множества достижимости DF - граница Г область достижимости манипулятора D.

Сигма-параметр некоторой точки X = (х, у ,0) определим как

аг^ I У

а = а( X) =--У^е[-1,1]. (7)

Очевидно, что все точки, лежащие на прямой у = ах, имеют одно и то же

значение а -параметра, равное а.

В методе SPSO граница Г условно разбивается на два фрагмента (не обязательно односвязных), которые называются ближней Г1 и дальней Г границами соответственно.

Рассмотрим точки X1 = (х1, у1,0), X2 = (х2, у2,0), принадлежащие области

достижимости манипулятора D. При построении ближней границы Г1 аналогом отношения доминирования ^1 в задаче многокритериальной оптимизации является отношение >1, определяемое следующим образом: точка X1 доминирует точку X2 (X1 >1 X2), если среди равенств и неравенств

I х |<| Х21, | уг |<| У21 (8)

имеется хотя бы одно строгое. Аналогично, при построении дальней границы ГА точка Х1 доминирует точку Х2 (Х1 >А Х2 ), если среди равенств и неравенств

I X! |>| X1, | у |>| У2 I (9)

имеется хотя бы одно строгое.

Замечание. Легко видеть, что в принятых в начале данного раздела соглашениях, величины х1, х2 всегда неотрицательны. Поэтому для этих величин знак модуля в формулах (8), (9) можно было бы опустить. Однако ниже эти формулы будут использоваться в ситуации, когда величины х1, х2 могут принимать и отрицательные значения •

Основная процедура SPSO-метода использует разбиение полуплоскости

1800

х > 0 на М равных секторов Сг с углом раскрыва ес = ; . е[1: М ].

Значения с -параметров верхних границ этих секторов обозначим <7г, . е[1:(М _ 1)] (рисунок 6). Нижнюю с-границу сектора С1, совпадающую

с отрицательным направлением оси 0у обозначим с0 =_1, а верхнюю с-

границу сектора СМ, совпадающую с осью 0у обозначим сМ = 1.

Рисунок 6 - К схеме базовой процедуры метода SPSO

Схема основной процедуры метода SPSO при построении аппроксимации границы Г9, д е {I; А} имеет следующий вид.

1) Создаем М начальных популяций частиц таким образом, чтобы в каждом из секторов Сг оказалось N частиц Р1}; i е [1: М ], _/ е [1: N].

2) В соответствии с а-алгоритмом, независимо в каждом из секторов строим архив недоминируемых частиц S9, содержащий дискретную аппроксимацию г-го фрагмента Г9 соответствующей границы ОДМ.

3) В качестве искомой аппроксимации границы Г9 используем объединение частиц из архивов S9, т.е. полагаем

М

S9 = и S9,

г=1

или уточняем решение (см. ниже).

Вариант метода SPSO, использующий рассмотренную процедуру назовем базовым методом SPSO.

Возможные основные варианты поведения границы ОДМ в пределах сектора иллюстрирует рисунок 7а, а производные варианты, представляющие собой все возможные комбинации двух основных вариантов, - рисунок 7б. Здесь а,Р,у,8 - некоторые целые числа из интервала [1: М]. Возможные комбинации более чем двух указанных основных вариантов в методе SPSO не используются.

а) б)

Рисунок 7 - Варианты поведения границы ОДМ в пределах одного сектора

Рассмотрим прежде ситуации, представленные на рисунке 7а. Формально, эти ситуации описываются следующим образом (граница ОДМ полагается всюду дифференцируемой): всюду в секторе Са, Су производные функций,

определяющих границы Га, Г,, отрицательны; всюду в секторах Ср, С3 аналогичные производные не отрицательны.

Из определения отношения доминирования >9 следует, что при построении с помощью базового метода SPSO границ Г®, Г9 частицы в архивах

Sq9, Sy будут примерно равномерно концентрироваться вдоль этих границ; 9 е {I; А}. Из свойств того же отношения следует, что при построении границ Г, П частицы в архивах SIа, SII будут сосредотачиваться вблизи точек "1", а при построении границ Г А, ГА частицы в архивах SA, Sg будут «стекаться» к точкам "2".

В ситуациях, представленных на рисунке 7б, имеют место комбинации рассмотренных вариантов поведения частиц в архивах. Рассмотрим для примера сектор Са. При построении с помощью базового метода SPSO

границы Г9, 9 е {I; А} частицы в архиве Sа будут примерно равномерно

распределяться вдоль части "2-3" этой границы и концентрироваться вблизи точки "1" при построении границы Г и со стороны точки "2" вблизи точки "3" - при построении границы Г а .

Введем в качестве меры плотности покрытия границы Г величину

р: , 1 е[1: М ], д е {I; Л},

где 2М " угол раскрыва сектора Сг в а -пространстве, А&д - максимальное а -

расстояние между соседними частицами в архиве , предварительно отсортированными по возрастанию их а -параметра:

Аад = тах

1 • ^ 3 ,

ад. - ад,

г, 3 г,1

; 3,1 е [1: N ].

С целью обеспечения равномерности покрытия границ вида Г, Г5д, д е {I;Л}, представленных на рисунке 7б, базовый метод SPSO модифицируется следующим образом (рисунок 8).

Рисунок 8 - К схеме модифицированного метода SPSO: 1 - первая частица в архиве £да+х; 2 - последняя частица в архиве £д-х

1) Выполняем шаги 1, 2 базовой процедуры £Р£0-метода.

2) Вычисляем значения а -параметра ад^ всех частиц в архивах Sд;

i е [1: М ], ) е [1: N ].

3) В каждом из секторов С { определяем меру плотности покрытия рд и из числа этих секторов выделяем сектора Сц, в которых рд > еа. Здесь еа -

заданная константа; . е [1: М], I е [1: М], где М - число таких секторов.

5) Для каждого из указанных секторов Сц строим новую систему

координат 0 хц у и в этой системе координат - новый сектор С ч. Здесь 0г. = ,0), где координата ~ определяется по правилу

х =

ч

х(4 +1),1 , уч,N < 0, (10)

Х(* У ил > 0.

В формуле (10) приняты следующие обозначения: х( +1)1 - абсцисса первой частицы в архиве £д+1, который соответствует сектору Сц +1, следующему за данным сектором Сц; аналогично, х( - абсцисса последней частицы в архиве ^; у х, у ы - ординаты первой и последней частиц в архиве Sд¡,

соответствующем данному сектору.

6) В каждом из секторов С по схеме базового метода SPSO строим

аппроксимацию границы Гд, д е {1; А}.

7) В качестве искомой аппроксимации границы Гд используем объединение частиц из все полученных архивов частиц.

В случае, когда граница ОДМ ведет себя в секторах Са, С3 подобно тому, как это изображено на рисунке 7б, в качестве аналогов рассмотренных секторов Са, С8 используются сектора, соответствующие частям "1 _ 3" секторов Са, С8

частям "2 _ 3" секторов Ср, Су соответственно.

Отметим также, что в случае необходимости получения тонкой структуры границы ОДМ, модифицированный метод SPSO в сектора типа Ca, Cs (рисунок 7) может использоваться итерационно несколько раз.

4. Программная реализация метода SPSO

Программная система SPSO++, реализующая метод SPSO, написана на языке программирования. C++, основными преимуществами которого по сравнению с другими языками является кроссплатформенность и эффективность. Для реализации оконного интерфейса (GUI - Graphical user interface), использована встроенная C++ библиотека Microsoft Foundation Classes (MFC). Визуализация ОДМ реализована с помощью утилиты Gnuplot, которая является кроссплатформенной, свободно распространяемой, простой и удобной в использовании.

Основные классы программной системы SPSO++ представлены на рисунке 9.

CParticSeS warmA fgoritfrn

М_ tnaxPcpufat ior>Cour>t

M_ ParticiesGeneration

M_Popuiation

R1

P.2

X_shift Y_sm Z shift

CParticieS warmA fgorit ftrr> CountO bjec tiveFunct ions BestGuide

UpdateBest Pari iciesA rc hive

CreateNewPopuiation

PrintBest

CParttie

m_ BestCoordinate

m_Coordinate

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

m_Speed

m_ О fyect iveFunctions

CheckDominationToO tfterPartide

GetBestCoord

GetCoord

GetSpeed

SetCoord

Set speed

SetBestCoord

Trunk

m_nSegs max_angie1 max_angie1 m_segments

Addsegment

GetNSegs

GetMaxAngiel

GeWlaxAngie2

SetNSegs

SetM ax Angle 1

5еШакАпд!е2

getTip

addQbstacie

is Valid

Segment

m_angie1 m_angie1 m_iength m_radm'! m radiusl

GetAngiel

GetAngfe2

GetLength

GetRadiusI

GetP.adius2

SetAngiel

SetAngie2

SetLength

SetNSegs

SetMaxAngie1

SeMaxAngie2

SetRadiiisI

SetRadius2

Рисунок 9 - Основные классы программной системы

Класс Segment описывает сегмент манипулятора. Методы этого класса позволяют задать такие параметры сегмента, как его длина L., диаметры d._x,

d, углы поворота (pi х, pi2 и т.д.

Основной класс системы Trunk соответствует манипулятору в целом и включает в себя следующие методы:

• метод void addSegment (...), добавляющий в манипулятор новый сегмент;

• метод boolIsValid(...), решающий задачу о допустимости данной конфигурации манипулятора при наличии препятствия;

• метод Point getTip (...), обеспечивающий решение прямой позиционной задачи и возвращающий координаты точки схвата манипулятора.

Класс CParticleSwarmAlgorithm предназначен для решения задачи методом роя частиц. Класс содержит следующие основные методы:

• метод CParticleSwarmAlgorithm (...), реализующий алгоритм роя частиц;

• метод voidCountObjectiveFunctions (...), обеспечивающий вычисление положения точки схвата для данной частицы;

• метод voidBestGuide (...), предназначенный для определения направления оптимального движения каждой из частиц популяции;

• метод void UpdateBestParticlesArchive (...), выполняющий обновления архивов лучших решений;

• метод voidCreateNewPopulation (...), создающий новое поколение частиц.

Объектом класса CParticle является частица метода роя частиц. Основным методом класса является функция

CparticleCheckDominationToOtherParticle (...), реализующая определение недоминируемых частиц.

5. Экспериментальные результаты

Все приведенные ниже результаты получены для семисекционного манипулятора (п = 7), в котором длина каждой последующей секции на 15% меньше длины предыдущей, а длина первой секции составляет 45 условных единиц. Углы р™*, i е [1:7], _/ е [1:2] приняты одинаковыми и равными ртах.

Угол раскрыва секторов ес во всех случаях равен 50.

Рассмотрим прежде задачу без препятствий. Эффективность базового метода БРБО иллюстрирует рисунок 10.

Рисунок 10 показывает, что, как и следовало ожидать, в данном случае на некоторых участках границы области достижимости имеет место высокая неравномерность плотности ее покрытия.

Аналогичные результаты, полученные с помощью модифицированного метода SPSO, приведены на рисунках 11 - 13.

Рисунки показывают, что по сравнению с базовым методом SPSO модифицированный метод SPSO обеспечивает существенно более равномерное покрытие границы области достижимости.

Ч

200-,-,-,--,-,-

150 100 50 0 -50

■ 100-*-"*-*--"--"-

-200 -150 -500 -50 0 50 100 150 200

Рисунок 10 - Дискретная аппроксимация границы области достижимости Г: задача без препятствий; базовый метод БРБО; ртах = 450

■ / / \

< (

* Оо / X

х у

2QQ

150

ЮО

50

-100

i

/

/ / J / \ 4 ■L

\ 1 Л J v s у Oq) i у Xo

-200 -150 -100 -50 0 50 100 150 200

Рисунок 11 - Дискретная аппроксимация границы области достижимости Г: задача без препятствий; модифицированный метод SPSO; ртах = 450

Эффективность модифицированного метода SPSO в задаче с одним сферическим препятствием В1 иллюстрирует рисунок 14. Приято, что радиус препятствия составляет 20 условных единиц, а его центр находится в точке с координатами (100,0,0).

150

100

50

-100

V

^^--' —--—..

\

N.

\

/ / V i N i

°° x<

-200 -ISO -100 -50 0 50 100 150 200

Рисунок 12 - Дискретная аппроксимация границы области достижимости Г: задача без препятствий; модифицированный метод SPSO; pmax = 300

Y0

-150

°о

X0

■Й® 1Э0 -1Ю -50 С ÏO 100 1Я1 500

Рисунок 13 - Дискретная аппроксимация границы области достижимости Г : задача без препятствий; модифицированный метод SPSO; pmax = 600

Заключение

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

В работе предложен метод SPSO для приближенного построения границы области достижимости многосекционного манипулятора. Метод использует алгоритм роя частиц (PSO) для решения задачи глобальной оптимизации и с -алгоритм для отбора недоминируемых решений. Эффективность метода SPSO продемонстрирована на нескольких задачах построения области достижимости, как в случае отсутствия препятствий, так и в случае их наличия.

Рисунок 14 - Дискретная аппроксимация границы области достижимости Г: задача с одним сферическим препятствием В1; модифицированный

метод SPSO; = 300

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

Вариантом рассмотренной задачи построения области достижимости является задача, в которой в каждую из достижимых точек пространства схват манипулятора должен приблизиться с заданной ориентацией [1]. В развитие работы планируется модификация метода SPSO для решения данной задачи.

Как отмечалось выше, поскольку метод SPSO использует только плоские конфигурации манипулятора, в задаче с препятствиями этот метод позволяет корректно определить границу ОДМ только в случае одного центрально симметричного препятствия. Поэтому планируется развитие метода в направлении использования произвольных пространственных конфигураций манипулятора.

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

Работа выполнена в рамках аналитической ведомственной целевой программы «Развитие потенциала высшей школы (2009 - 2010 годы)», проект 2.1.2/1509.

СПИСОК ЛИТЕРАТУРЫ

1. Зенкевич С.Л., Ющенко А.С. Основы управления манипуляционными роботами.- М.: Изд-во МГТУ им. Н.Э. Баумана, 2004.- 480 с.

2. Карпенко А.П., Волкоморов С.В., Каганов Ю.Т. Моделирование и оптимизация некоторых параллельных механизмов // Информационные технологии, Приложение, 2010, №5, с. 1-32.

3. Карпенко А.П., Волкоморов С.В., Мартынюк В.А. Анализ кинематики параллельных механизмов средствами системы автоматизированного проектирования CATIA // Информационные технологии, 2010, №11, с. 4552.

4. Карпенко А.П., Волкоморов С.В. Планирование оптимальной целевой конфигурации робота-манипулятора типа «хобот» // Мехатроника, автоматизация, управление, 2010, №8, с. 30-36.

5. Hu X., Eberhart R. Multiobjective optimization using dynamic neighborhood particle swarm optimization / World Congress on Computational Inelligence. Proceeding, 2002, p. 1677-1681.

6. Srinivas N., Deb K. Multiobjective optimization using nondominated sorting in genetic algorithms // Evolutionary Computation, 1994, vol. 2, p. 221-248.

7. Антух А.Э., Карпенко А.П., Семенихин А.С., Хасанова Р.В. Построение множества Парето методом роя частиц на графических процессорах архитектуры CUDA / Научный сервис в сети Интернет: суперкомпьютерные центры и задачи. Труды международной суперкомпьютерной конференции. - М.: Изд-во МГУ, 2010.- с.274-280.

8. Карпенко А.П., Селиверстов Е.Ю. Глобальная оптимизация методом роя частиц. Обзор // Информационные технологии, 2010, № 2, c. 25-34.

9. Штойер Р. Многокритериальная оптимизация. Теория, вычисления и приложения.- М.: Радио и связь, 1992.- 504 с.

10. Подиновский В.В., Ногин В.Д. Парето-оптимальные решения многокритериальных задач.- М.: "Наука", 1982.- 256 с.

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