Научная статья на тему 'Синтез алгоритма коррекции траектории движения выходного звена робото-гексапода на основе теории искусственных нейронных сетей'

Синтез алгоритма коррекции траектории движения выходного звена робото-гексапода на основе теории искусственных нейронных сетей Текст научной статьи по специальности «Электротехника, электронная техника, информационные технологии»

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

Аннотация научной статьи по электротехнике, электронной технике, информационным технологиям, автор научной работы — Рыбак Л.А, Мамаев Ю.А., Вирабян Л.Г.

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

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

Похожие темы научных работ по электротехнике, электронной технике, информационным технологиям , автор научной работы — Рыбак Л.А, Мамаев Ю.А., Вирабян Л.Г.

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

Текст научной работы на тему «Синтез алгоритма коррекции траектории движения выходного звена робото-гексапода на основе теории искусственных нейронных сетей»

Э01: 10.12737/22905

1Рыбак Л.А, д-р техн. наук, проф., 2Мамаев Ю.А., гл. инженер, 1Вирабян Л.Г., магистрант 1Белгородский государственный технологический университет им. В.Г. Шухова

2ооо «Карботек»

СИНТЕЗ АЛГОРИТМА КОРРЕКЦИИ ТРАЕКТОРИИ ДВИЖЕНИЯ ВЫХОДНОГО ЗВЕНА РОБОТО-ГЕКСАПОДА НА ОСНОВЕ ТЕОРИИ ИСКУССТВЕННЫХ

НЕЙРОННЫХ СЕТЕЙ*

rl_bgtu@intbel.ru

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

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

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

Рассмотрим схему робота-гексапода [1], представленного в виде эквивалентной схемы соединения двух дисков. Диски I, II (рис. 1) соединяются между собой шестью абсолютно жесткими стержнями 1 - 6, с шаровыми шарнирами на концах, изменяющими свою длину. Меньшее число стержней создаст относительную подвижность, в простейшем случае неособенного расположения пяти стержней одну степень подвижности и четырех - две степени подвижности и т.д. В случае семи и более стержней задача становится статически неопределимой: один раз, дважды и т.д.

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

Рис. 1. Схема робота-гексапода

Взаимодействие твердого тела и основания по направлениям осей стержней определяется плюккеровыми координатами этих осей [2-4].

Пусть , Pi и yt - углы, которые единичный

вектор оси стержня образует с осями некоторой прямоугольной системы координат XYZ, расположенной на твердом теле, рис. 2, т.е.

cosa¿ = sinf cos Xi, cos Д = sinf sin X, cosf = cosf.

Рис. 2. Расчетная схема элемента робота

Моменты единичного вектора относительно этих осей равны

lt = 7 cos yt cos Pi, щ = cos at - ^ cos yt, П = ^ cos P - 7 cos^ .

где ^, 7, ^ - координаты точки крепления

стержня к твердому телу (центры сферических шарниров).

Матрица плюккеровых координат имеет

вид

Л:

cosc^ . . cosa6

cos Д . • cos/?6

cos^ . • cos г6

h ■ ■ h

п\ ■ m6

пх n6

Зададим твердому телу I относительно основания II малое перемещение с матрицей-столбцом перемещений

XT = [х, y, z, ф, уу z]1

где X, у, 2 - поступательные перемещения

вдоль осей X, У, 2; X - углы поворотов

относительно этих осей.

Аналогично можно определить матрицу-столбец скоростей

Xх = [х, у, ¿, ф, ц/, %]Т

Если к твердому телу приложены силы и моменты, характеризуемые матрицей-столбцом

ft =[f f f m m m 1t

|_ x' y' z> x> y> z J

где f, f , f - силы, приложенные по осям X, Y, Z; m , m , m - моменты относительно

' ' x " v~ z

этих осей, то

F = AR,

где ЯТ = [] - силы реакции стержней на действие сил F .

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

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

Общая структура управления роботом- гек-саподом приведена на рис. 3.

Последовательность работы системы следующая:

- на блок управления (БУ) поступает некоторая задача, которая может выглядеть в виде запроса требуемой траектории рабочего звена. БУ разбивает задачу на отдельные шаги и подает на выход сигнал, характеризующий необходимое положение рабочего звена в данный момент времени;

- следующий блок решения обратной задачи кинематики получает на вход положение рабо-

чего органа и на основании аналитических зависимостей формирует на выходе длины штанг;

- далее сигнал поступает на исполнительный механизм, который приводит к удлинению штанги на требуемую величину;

- новая длина штанг считывается датчиками, и эти данные поступают на блок решения прямой задачи.

Рис. 3. Общая структура системы виброизоляции

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

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

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

Одним из способов решения такой задачи является применение численных методов [5], чаще всего - модификаций метода Ньютона.

Широко распространено мнение, что методы Ньютона сходятся, как только начальная оценка будет достаточна «близка» к решению и что они сходятся всегда к ближайшему к этой начальной оценке решению. К сожалению, оба предположения не верны: методы Ньютона могут не сходиться. Кроме того, инвертирование якобиана также может вызвать проблемы со сходимостью, когда его матрица близка к особой. Обе эти проблемы представляют собой важную проблему с точки зрения надежности, особенно если решение прямой задачи кинематики используется в контуре управления, так как неправильный результат (либо его отсутствие) приведет к ошибке в управлении.

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

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

Другим методом решения прямой задачи кинематики является использование дополнительных датчиков [6]. Возможно два типа добавления датчиков: (1) угловые датчики могут быть добавлены в пассивные шарниры манипулятора, по возможности, близко к основанию,

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

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

Третьим методом решения прямой задачи кинематики является применение методов искусственного интеллекта, в частности, нейронных сетей.

В работе [7] использовался многослойный персептрон с обратным распространением ошибки. Предложено использовать персептрон для решения прямой задачи кинематики не имея точного аналитического ее решения. В работе [8] с помощью нейронных сетей практически решена прямая задача кинематики для конкретной конфигурации робота. Однако в этой работе нет (1) математического обоснования работоспособности предложенного метода; (2) метода выбора функций активации нейронов и (3) анализа применимости предложенного подхода к обобщенному параллельному манипулятору.

В статье предлагается метод решения прямой задачи кинематики, основанный на применении нейронной сети и алгоритма коррекции ошибок в соответствии со схемой, приведенной на рис.4.

Модифициро-

Спрогнозиро-

Новый вход

Рис. 4. Схема метода решения прямой задачи кинематики

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

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

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

делирования прямых и косвенных связей между входами и выходами.

Входной слой

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

а) параметры, описывающие пространство шарниров, представим вектором и, а парамет-

X

2

2

Ф

ры, описывающие пространство задачи - вектором V.

б) Пространство задачи и пространство шарниров связаны двумя функциями. Обратная задача кинематики описывается функцией и = I (V), прямая задача кинематики - функцией V = ¥ (и ).

в) функции I и ¥ задают однозначное соответствие между пространством параметров и пространством задачи и наоборот, т.е. если и, = I (V,), то V = ¥ (и ).

Алгоритм коррекции ошибок решения прямой задачи кинематики приведен на рис. 3.6 и состоит из следующих шагов:

Шаг 1. Обучить нейронную сеть, отображающую вектора пространства шарниров на вектора пространства задачи на основе имеющихся данных. Обозначим ее математически как

V = ¥ (и).

Шаг 2. Подать на обученную нейронную сеть начальный входной вектор и и получить

начальный выходной вектор V .

Начальный вход (Ц)

Шаг 3. Из начального выходного вектора V с помощью уравнений обратной задачи кинематики и = I (V ) получить новый входной вектор и .

Шаг 4. Рассчитать ошибку А и = и — и'. Шаг 5. С помощью полученной ошибки изменить начальный входной вектор

ипе№ = и — / (Аи ), где / ( ) - постоянная либо линейная функция, зависящая от Аи.

Идея состоит в выборе функции таким образом, чтобы обеспечить быструю сходимость к приемлемому решению, однако не слишком быструю, чтобы не вызвать колебательности.

Шаг 6. Подать новый входной вектор

Аи^*™ на обученную нейронную сеть и получить новый выходной вектор V .

Шаг 7. Повторить шаги 2-6 П раз. Критерием останова может быть либо фиксированное число п, либо совпадение полученного выходного вектора с экспериментальным.

иП

Модель нейронной сети

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

V

Обратная задача кинематики

и= и — / (Аи,)

i к

Аи, = и, — и,

Нет

Г

Выход (V)

Рис.6. Блок-схема алгоритма коррекции ошибок

Предложенный подход частично совпадает с подходом, изложенным в работе [9], в которой ищется приближенное решение прямой задачи кинематики для параллельного манипулятора со звеньями-пантографами, а не гораздо более распространенными призматическими звеньями. В этой работе прямая задача кинематики решается для вектора углов звеньев

(ах, , а2, Р2, а3, Р3) и соответствующего вектора параметров задачи (х, у, i, ф, Э, ,

где а , Р , ф , Э , ^ - угловые величины, а X ,

у, I - линейные. Однако, такая конфигурация,

в отличие от конфигурации с призматическими звеньям, мало распространена. Кроме того, в

качестве функции f ( ) в этой работе используется коэффициент передачи, равный 1,0, математическое обоснование метода отсутствует. Для математического обоснования принципа действия предложенного алгоритма предположим, что имеется обученная методом обратного распространения ошибки нейронная сеть с по крайней мере одним скрытым слоем и сигмои-дальной функцией активации нейронов скрытого и выходного слоев.

Введем следующие обозначения:

1]. (/' = 1,...,//) - вектор входных сигналов, подаваемых на входной слой;

Ук {к = 1,.. - вектор выходных сигналов, получаемых с выходного слоя;

2. = 1,.. ~ вектор, представляющий нейроны скрытого слоя;

Ь - смещение, соответствующее /-ому нейрону скрытого слоя;

- вес связи между нейронами входного

и скрытого слоев;

г П - сумма входных величин нейронов

скрытого слоя;

г - активация отдельных нейронов скрытого слоя;

СТ - параметр сигмоидной функции активации.

Предположим, что обученная нейронная сеть преувеличивает значения выходных параметров V . Тогда, после решения обратной задачи кинематики получаем новое значение выхода и[, превышающее начальное значение и 1 . Это обозначает, что при увеличении V увеличивается и', и наоборот, что вытекает из однозначного соответствия прямой и обратной задач кинематики. Новый входной вектор и"ек после

выполнения шага 5 будет иметь значение, несколько меньшее значения исходного вектора

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

Рассмотрим случай преувеличенного выхода, т.е. и■ > и"™. Для входного вектора, соответствующего , шаг прямого распространения выполняется следующим образом:

Z _ П = b0j + е ,

i= 1

T rnew

а для вектора U i получим

n

• new j I Л т rnew

z _ mj = ь0j + е U, wj.

i= 1

Если и. > и"е№, то г т, > г т"™,

1 1 — 3 — 3

при условии неизменности всех остальных параметров. Активация каждого элемента скрытого слоя г для и происходит как

Z =

f (z _ n )-

2

-- 1,

1+ e_t

T rnew

а для U ■ - как

z™= f(z_in™)=

2

1.

1+ е02-"^'

Следует отметить, что при постоянстве всех остальных параметров имеем

1+ Qaz-"b

-- 1 >

Это обозначает, что 2

-- 1 и, соответ-

1+ QaZ-"b

ственно, г. > г" . Тот факт, что для и > ипе получаем г. > гпе, обозначает,

11 3 3

что новый выходной вектор, полученный на ост тnew

нове и , будет иметь меньшее значение, чем выход, соответствующий и , т.е. Vinew < Vt и,

J,rnew

следовательно, V ближе к точному решению. Это рассуждение может быть распространено на другие скрытые слои (если они есть) и на входной слой. Для случая преуменьшеного выхода обученной нейронной сети рассуждения

аналогичны. Здесь и. < , следовательно,

г - < г. и, таким образом, конечная оценка выше полученной на предыдущем шаге:

V < vm^w.

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

n

решения прямой задачи кинематики эффективен.

2. Выбор алгоритма обучения нейронной сети.

Качество работы НС очень сильно зависит от метода обучения. Наиболее универсальным методом обучения НС является алгоритм обратного распространения ошибки с использованием методики наискорейшего спуска. Данный алгоритм один из самых быстрых, достаточно простой в реализации и менее ресурсоемким. Однако этот алгоритм обладает большим недостатком - возможность попадания в области локального минимума, что является недопустимым, т.к. нейронная сеть не обучается до нужного уровня. В связи с этим возникает необходимость прибегнуть к методам глобальной оптимизации. Наиболее подходящим вариантом является алгоритм имитации отжига. Алгоритм имитации отжига с последующей корректировкой весовых значений алгоритмом обратного распространения ошибки позволяет найти оптимальное решение, однако время работы такой методики

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

3. Комбинированный метод обучения НС.

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

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

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

На рис. 7 представлено семейство кривых, каждая из которых получена при изменении числа нейронов скрытого слоя для разного числа точек тренировочной выборки (60, 700, 1100, 8000). Из графиков видно, что при достаточном количестве примеров ошибка незначительно уменьшается, с увеличением числа нейронов в скрытом слое. Возрастание ошибки на графиках соответствующих числу точек выборки 60 и 700 объясняется недостаточным их количеством. Таким образом, можно сделать вывод о том, что

количество точек тренировочного набора должно превышать количество связей в НС в не менее чем в 5 раз.

Соотношения числа нейронов в скрытом слое и величины ошибки представлены на рис.8. Данные зависимости указывают, что при увеличении количества нейронов в сети, величина ошибки изменяется мало, а время обучения сети, напротив значительно возрастает (рис. 9). Поэтому, выбирая структуру НС, следует ограничиться небольшим числом нейронов скрытого слоя.

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

0.22

0.2

| 0.18 ф

§ 0.16

с

о

0.14

О

£ 01.12 Ю

3

О

0.1 0.08 0.06 0.04

\

1 1

^ \ м

\ V чч

--. ^ - г——__

-- _ ~~ ------

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

о

1000 2000 3000 4000 5000 6000 7000 8000

Количество тренировочных точек

10 нейронов

10 нейронов (2 слоя)--

---60 нейроноЕ

- 60 нейронов (2 слоя)

Рис. 7. Зависимость ошибки обучения от объема выборки

Рис. 8. Зависимость ошибки обучения от числа нейронов в скрытом слое

о

к г

X

ш т

ю о

к

£

ш

о_ со

90 80 70 60 50 40 30 20 10

-

--

/ / _. - - -

/

/ _. -— — - - —

^ , __ ^___■—■ ■ ■--

- —-

1000 2000 3000 4000 5000 6000 7000

Количество тренировочных точек

8000

10 нейронов 10 нейронов [2 слоя)

60 нейронов 60 нейронов (2 слоя)

Рис. 9. Зависимость времени обучения от объема выборки

90

80

о 70 к

Ф т

ю о к

60

50

40

Ф

о_

СО 30

20

10

У У

У У

У

У У

У ^ _ -■ ■" "

У У

У У

_- —— -— . — — — - — — — - •-- - _

20 40 60 80

Количество нейронов

100

120

64 эл в Еыборке 729 элементов

......40Э6 элементов

--- 8000 элементов

Рис. 10. Зависимость времени обучения от числа нейронов в скрытом слое

Заключение. Таким образом, применение корректирующих НС является наиболее оптимальным вариантом, т.к. по сравнению с многослойной дает выигрыш и по величине ошибки, и по времени обучения. При этом следует заметить, что скорость прямого прохода по сети с

корректирующей структурой будет также выше. Это объясняется тем, что каждая из сетей 9основная и корректирующая) являются однослойными и по структуре являются более простыми, чем одна многослойная сеть.

* Работа выполнена при финансовой поддержке РФФИ, грант № 14-01-00761-а.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Рыбак Л.А., Мамаев Ю.А., Малышев Д.И., Вирабян Л.Г. Программный модуль для реализации заданной траектории движения выходного звена робота-гексапода для 3D печати изделий // Вестник БГТУ им. В.Г. Шухова. 2016. №8.С. 155-164.

2. Диментберг Ф.М. Метод винтов в прикладной механике. М.: Машиностроение, 1971. 264 с.

3. Глазунов В.А., Колискор А.Ш., Крайнев А.Ф. Пространственные механизмы параллельной структуры. М.:Наука, 1991. 195 с.

4. Глазунов В.А., Ласточкин А.Б., Терехова А.Н., Ву Нгок Бик Об особенностях устройств

относительного манипулирования // РАН. Проблемы машиностроения и надежности машин. 2007. №2. С. 77-85.

5. Parikh P.J., Lam S.S.Y. A hybrid strategy to solve the forward kinematics problem in parallel manipulators // IEEE Trans Robot, 2005. Vol. 21, Iss. 1. P. 18-25.

6. Zanganeh K.E., Angeles J. Real-time direct kinematics of general six-degree-of-freedom parallel manipulators with minimum-sensor data // J Robot Syst, 1995. Vol. 12, Iss. 12. P. 833-844.

7. Geng Z, Haynes L.S. Neural network solution for the forward kinematics problem of a Stewart platform // Robot Comput Integr Manuf, 1992. Vol. 9, Iss.6. P.485-495

8. Yee C.S., Lim K.B. Forward kinematics solution of Stewart platform using neural networks // Neurocomputing, 1997. Vol. 16, Iss.4. P.333-349.

Rybak L.A., Mamaev Y.A., Virabyan L.G.

CORRECTION ALGORITHMS SYNTHESIS FOR THE MOTION PATH OF THE HEXAPOD ROBOT OUTPUT LINK BASED ON THE THEORY OF ARTIFICIAL NEURAL NETWORKS

The article considers the problem of the correction algorithm synthesis of hexapod robot output link trajectory, based on the solution of the direct problem of kinematics. The structure of a robot control system, including units for direct and inverse kinematics problem. Shown an algorithm for the management of the direct problem solution of kinematics and the application of neural networks. As a method of training it is recommended a combined method of back propagation and annealing. Shown the comparative performance characteristics of neural networks with different structures. It was found that the use of corrective neural networks is the best option.

Key words: mechanisms of parallel structure, trajectory correction algorithm, robot-hexapod, direct task of kinematics, inverse kinematics task, neural network.

Рыбак Лариса Александровна, доктор технических наук, профессор, кафедры технологии машиностроения. Белгородский государственный технологический университет им. В.Г. Шухова. Адрес: Россия, 308012, Белгород, ул. Костюкова, д. 46. E-mail: rl_bgtu@intbel.ru

Мамаев Юрий Александрович, главный инженер, ООО «Карботек» Адрес: Россия, 308023, Белгород, ул. Студенческая, к. 28, пом. 307. E-mail: rl_bgtu@intbel.ru

Вирабян Лусине Гарниковна, магистрант кафедры технологии машиностроения. Белгородский государственный технологический университет им. В.Г. Шухова. Адрес: Россия, 308012, Белгород, ул. Костюкова, д. 46. E-mail: rl_bgtu@intbel.ru

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