Научная статья на тему 'СПОСОБ ОБУЧЕНИЯ НЕЙРОННОЙ СЕТИ УПРАВЛЕНИЯ РОБОТОМ'

СПОСОБ ОБУЧЕНИЯ НЕЙРОННОЙ СЕТИ УПРАВЛЕНИЯ РОБОТОМ Текст научной статьи по специальности «Компьютерные и информационные науки»

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Зуев В. М., Бутов О. А., Иванова С. Б., Никитина А. А., Уланов С. И.

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Зуев В. М., Бутов О. А., Иванова С. Б., Никитина А. А., Уланов С. И.

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

METHOD FOR LEARNING NEURAL NETWORK FOR ROBOT CONTROL

The proposed method makes it possible to reduce the labor intensity of training a neural network when developing a robot control system into which elements of artificial intelligence are embedded. Using a model of a mechanism in MATLAB as a basis for training with periodic control of behavior on a real mechanism allows you to speed up the process of developing an intelligent control system. Despite the fact that control on a real mechanism is not often carried out, this does not affect the quality of development and reduces material costs.

Текст научной работы на тему «СПОСОБ ОБУЧЕНИЯ НЕЙРОННОЙ СЕТИ УПРАВЛЕНИЯ РОБОТОМ»

УДК 621.375.132

В. М. Зуев, О. А. Бутов, С. Б. Иванова, А. А. Никитина, С. И. Уланов Государственное учреждение «Институт проблем искусственного интеллекта», г. Донецк 83048, г. Донецк, ул. Артема, 118-б, [email protected], [email protected], [email protected]

СПОСОБ ОБУЧЕНИЯ НЕЙРОННОЙ СЕТИ УПРАВЛЕНИЯ РОБОТОМ

В. М. Зуев, О. А. Бутов, С. Б. 1ванова, А. А. Нктна, С. I. Уланов

Державна установа «1нститут проблем штучного штелекту», м. Донецьк

83048, м. Донецьк, вул. Артема, 118-б, [email protected], [email protected], [email protected]

СПОС1Б НАВЧАННЯ НЕЙРОННО1 МЕРЕЖ1 УПРАВЛ1ННЯ РОБОТОМ

V. M. Zuev, O. A. Butov, S. B. Ivanova, A. A. Nikitina, S. I. Ulanov

Public institution «Institute of Problems of Artificial intelligence», Donetsk

83048, Donetsk, Artema str., 118-b, [email protected], [email protected], [email protected]

METHOD FOR LEARNING NEURAL NETWORK FOR ROBOT CONTROL

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

Ключевые слова: управление, робот, нейронная сеть, обучение.

The proposed method makes it possible to reduce the labor intensity of training a neural network when developing a robot control system into which elements of artificial intelligence are embedded. Using a model of a mechanism in MATLAB as a basis for training with periodic control of behavior on a real mechanism allows you to speed up the process of developing an intelligent control system. Despite the fact that control on a real mechanism is not often carried out, this does not affect the quality of development and reduces material costs. Key words control, robot, neural network, training.

Запропонований споаб дозволяе скоротити трудомюткють навчання нейронноТ мережi при розробц системи управлшня роботом, в яку вбудовуються елементи штучного штелекту. Використання в якост основи для навчання моделi мехашзму в MATLAB з перюдичним контролем поведшки на реальному механiзмi дозволяе прискорити процес розробки системи штелектуального управлшня. Незважаючи на те, що контроль на реальному механiзмi проводитися не часто, це не позначаеться на якосп розробки та зменшуе матерiальнi витрати. Ключовi слова: управлЫня, робот, нейронна мережа, навчання.

При разработке системы управления роботом, в которую встраиваются элементы искусственного интеллекта, часто используют нейронные сети в качестве основного элемента управления. При этом стадия обучения нейронной сети наиболее трудоемка. Кроме того, процесс обучения нейронной сети на реальном механизме может быть экономически затратным и не безопасным для персонала [1], [2].

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

В нашем случае мы создавали модель в пакете SimMechanic от Simulink, который входит в пакет МАТЬАВ [3]. Для отладки работы механизма проведен анализ движения подъема-опускания для дальнейшей возможности корректировки и усовершенствования классического решения в построении аналогичных разработок без упрощения конструкции.

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

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

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

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

Данный анализ представляет собой алгоритм построения графиков движения, моделей для определения оптимальных параметров для каждого типа электродвигателя в зависимости от массы и полезного сопротивления механизма.

Исходными данными для анализа движения механизма, созданными в МАТЬАВ, служат: структурная схема механизма, программа построения графиков движения, анимационная модель. Определение полезного сопротивления механизма установки (уделяется внимание параметру «трение») осуществляется в программе. Данная программа решает вопросы моделирования элементов автоматизированного электропривода постоянного и переменного тока.

З

Ниже представлена структурная схема механизма установки рис. 1, а на рис. 2,

рис. 3 - его подсистемы.

Рисунок 1 - Модель механизма в БппМссЬашс

Рисунок 2 - Модель подсистемы механизма в 8тМесЬашс

Рисунок 3 - Модель подсистемы 2 механизма в SimMechanic

В [4] приведены дифференциальные уравнения движения этого механизма. Как видно из [4] и из приведенных выше рис. 1 - 3, механизм достаточно сложен. Собственно это и привело к идее осуществить управление этим механизмом посредством нейронной сети, а не с помощью традиционной системы автоматического регулирования, решающей уравнения из [3].

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

Трение М*т/(йед/5}

Рисунок 4 - Программа построения графиков движения

З

Это позволяет автоматически создать набор тестовых данных для обучения системы управления.

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

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

Исходными данными являются время подъема и номинальный момент на холостом ходу (при нулевой массе подъема) для каждого из двигателей.

Передаточное число известно из механики и равно 1 = 456, подъем осуществляется за пол-оборота выходного вала.

Для электродвигателя типа 0410 время подъема Х = А сек. и крутящий момент Цр = 6Н*М

Рисунок 5 - Анимационная модель

Подбирая в программе параметр трение, получили идеальные графики подъема-

опускания (рис. 6, 7):

Рисунок 6 - Идеальные графики подъема-опускания механизма

Рисунок 7 - График при значении параметра трение = 0,00033 (для типа LSt 0410) Для электродвигателя типа 923.3708 время подъема I = 10,5 сек. и крутящий момент Л^р = 9,6 Н* м

Рисунок 8 - Искомое значение параметра трение = 0,00132 (для двигателя 923.3708)

Рисунок 9 - Для электродвигателя типа АТЭК 2110-000/5702.3708 время подъема 1 = 8,5 сек. и крутящий момент ^кр ~ ^ ^ : -1|Г

З

Рисунок 10 - Искомое значение параметра трение = 0,0012 (для двигателя АТЭК 2110-000/5702.3708)

Далее определяем время подъема и опускания механизма в зависимости от его массы для каждого типа электродвигателя, с учетом полезного сопротивления механизма.

Изменяя в программе значение массы подъема, подбираем время подъема для каждого из них. Для двигателя типа 0410 с = 6 Н* .к и параметром трение = 0,00033 получили такие данные:

Рисунок 11 - Графики для двигателя типа Ь81 0410 с М^ = 6 Н* м и параметром трение = 0,00033

Ниже на рис. 12 приведен график движения с массой рабочего тела больше 150 кг (153.6 кг и временем подъема 43.5 сек.):

30

время, с

Рисунок 12 - График движения механизма для двигателя с массой рабочего тела

больше 150 кг

Из графика видно, что максимальная подъемная масса для двигателя типа LSt 0410 равняется 150 кг.

Рисунок 13 - Графики движения механизма для двигателя 923.3708 с ЛС = 9,6 Н* «

и параметром трение = 0,00132

З

Рисунок 14 - Максимальная подъемная масса составила 240 кг

Рисунок 15 - График движения механизма при двигателе типа АТЭК 2110-000/5702.3708

сМ^ = 10,6 Я* м, и с трением = 0,0012

Подготовка данных для создания нейронной сети

Определение оптимальных параметров движения (рис. 16) с двигателем типа 0410 (примененный в данной установке) основывается на нижеследующих исходных данных.

Исходя из требования, что время включения мотора не должно превышать 10 сек. с помощью программы находим подъемную массу т = 128,4 кг. Ниже приведен график движения со следующими параметрами: Трение - 0,00033 Момент - 6 Нхм Масса - 128,4 кг Время подъема - 9,75 сек. Время опускания - 3,25 сек.

О 2 4 6 8 10 12 14 16

время, с

Рисунок 16 - График движения механизма с оптимальными параметрами

Из полученного графика движения и путем моделирования получили следующие данные, которые сведены в табл. 1:

Здесь: ср - угол с интервалом в 2°; I - время; п1Г - угловая скорость привода

механизма; пс - угловая скорость мотора; V - мгновенная скорость привода механизма

на длине 4 м от оси поворота; лг - тангенциальное угловое ускорение в этих точках.

Таблица 1 - Графики: Момент Н м, Угол, время, обороты мотора х

№ Ф, 1, сек п м, об/мин п с, об/мин V, м/с ат, м/с2

Подъем привода механизма

1 0 0 0 0 0 0

2 2 0,199485 1,67096941 761,962052 0,6995798 3,5069291

3 4 0,401024 1,66241089 758,059368 0,6959966 3,4534089

4 6 0,597467 1,67373261 763,222069 0,7007366 3,5671244

5 8 0,805516 1,65525369 754,795684 0,6930001 3,3309465

6 10 1,066435 1,56283943 712,65478 0,6543093 2,5077104

10 18 2,350265 1,2764518 582,062023 0,5344082 1,4463989

75 51,5 2,259182 3,79931025 1732,48547 1,5906458 29,677335

76 53,5 2,311926 3,85681318 1758,70681 1,6147204 30,614296

77 55,5 2,363634 3,91346545 1784,54025 1,6384388 31,68637

78 57,5 2,414168 3,96962156 1810,14743 1,6619495 32,88775

79 59,5 2,463588 4,02529427 1835,53419 1,6852579 34,100726

90 81,5 2,968792 4,57537387 2086,37048 1,9155581 42,423716

95 91,5 3,201323 4,76365553 2172,22692 1,9943854 41,727908

96 93,5 3,25 4,79487179 2186,46154 2,0074546 41,24031

З

Табл. 1 имеет более 10 тысяч строк. Этого количества данных достаточно для обучения нейронной сети механизма [5].

Вывод

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

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

1. Зуев В. М. Использование нейросети для управления механизмами [Текст] / В. М. Зуев // Искусственный интеллект: теоретические аспекты, практическое применение : материалы Донецкого международного научного круглого стола. - Донецк : ГУ «ИПИИ», 2020. - С. 69-73.

2. Подготовки данных для обучения нейронной сети управляющей движением механизма [Текст] / О. А. Бутов, В. М. Зуев, А. А. Никитина, С. И. Уланов // Искусственный интеллект: теоретические аспекты, практическое применение : материалы Донецкого международного научного круглого стола. - Донецк : ГУ «ИПИИ», 2021 (в печати).

3. Медведев В. С. Нейронные сети MATLAB 6 [Текст] / В. С. Медведев, В. Г. Потемкин. - Диалог-МИФИ 2002. - 496 с.

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

4. Отчет по НИР «Разработка интеллектуальной системы управления и передачи данных для автоматизированного программно-аппаратного комплекса мишенных установок» [Текст]. -Донецк : ГУ «ИПИИ», 2018.

5. Курейчик В. М. Предисловие к журналу «Проблемы искусственного интеллекта» от вице-президента Российской Ассоциации Искусственного Интеллекта [Текст] // Проблемы искусственного интеллекта. - 2016. - № 1 (2). - С. 3.

References

1. Zuyev V. M. Ispol'zovaniye neyroseti dlya upravleniya mekhanizmami [Using a neural network to control mechanisms]. Iskusstvennyy intellekt: teoreticheskiye aspekty, prakticheskoye primeneniye : materialy Donetskogo mezhdunarodnogo nauchnogo kruglogo stola [Artificial intelligence: theoretical aspects, practical application: materials of the Donetsk international scientific round table], Donetsk, GU IPII, 2020, pp. 69-73.

2. Butov O. A., Zuyev V. M., Nikitina A. A., Ulanov S. I. Podgotovki dannykh dlya obucheniya neyronnoy seti upravlyayushchey dvizheniyem mekhanizma [Preparation of data for training the neural network controlling the movement of the mechanism]. Iskusstvennyy intellekt: teoreticheskiye aspekty, prakticheskoye primeneniye : materialy Donetskogo mezhdunarodnogo nauchnogo kruglogo stola [Artificial intelligence: theoretical aspects, practical application: materials of the Donetsk international scientific round table], Donetsk, GU IPII, 2021 (v pechati).

3. Medvedev V. S. Potemkin V. G. Neyronnyye seti MATLAB 6. [Neural networks MATLAB 6], Dialog-MIFI 2002, 496 s.

4. Otchet po NIR «Razrabotka intellektual'noy sistemy upravleniya i peredachi dannykh dlya avtomatizi-rovannogo programmno-apparatnogo kompleksa mishennykh ustanovok» [Research report "Development of an intelligent control and data transmission system for the automated hardware and software complex of target installations"], Donetsk, GU IPII, 2018.

5. Kureychik V. M. Predisloviye k zhurnalu «Problemy iskusstvennogo intellekta» ot vitse-prezidenta Rossiyskoy Assotsiatsii Iskusstvennogo Intellekta [Foreword to the journal "Problems of Artificial Intelligence" from the Vice-President of the Russian Association for Artificial Intelligence]. Problemy iskusstvennogo intellekta [Problems of artificial intelligence], 2016, № 1 (2), S. 3.

RESUME

V. M. Zuev, O. A. Butov, S. B. Ivanova, A. A. Nikitina, S. I. Ulanov Method for Learning Neural Network for Robot Control

When developing a robot control system into which elements of artificial intelligence are embedded, neural networks are often used as the main control element. In this case, the stage of training the neural network is the most time consuming. In addition, the process of training a neural network on a real mechanism can be economically costly and unsafe for personnel.

This paper proposes a method for training a neural network for controlling a robot, which consists of several stages: a) obtaining a training data set not from a real mechanism, but from its sufficiently detailed model, b) synthesizing and training a neural network, embedding it in a microprocessor control system, c) starting control of the robot in such test modes in which it is quite easy to determine the actual parameters of the mechanisms. On the basis of these experimentally obtained parameters of the mechanism, we correct the parameters of the model and repeat stages a) b) c) until a satisfactory behavior of the robot is obtained.

The proposed method makes it possible to reduce the labor intensity of training a neural network when developing a robot control system into which elements of artificial intelligence are embedded. Using a model of a mechanism in MATLAB as a basis for training with periodic control of behavior on a real mechanism allows you to speed up the process of developing an intelligent control system. Despite the fact that control on a real mechanism is not often carried out, this does not affect the quality of development and reduces material costs.

РЕЗЮМЕ

В. М. Зуев, О. А. Бутов, С. Б. Иванова, А. А. Никитина, С. И. Уланов Способ обучения нейронной сети управления роботом

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

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

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

Статья поступила в редакцию 19.04.2021.

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