УДК 007.5:681.5.15
Д.В. Пантюхин
ФГУП «Ордена Трудового Красного Знамени научно-исследовательский институт автоматической аппаратуры имени академика В. С. Семенихина», Научный центр нейрокомпьютеров, г. Москва
НЕЙРОСЕТЕВОЙ МЕТОД ИДЕНТИФИКАЦИИ ОДНОМЕРНОГО
ОБЪЕКТА
Введение
Данная работа посвящена нейросетевому методу идентификации объектов. На примере одномерного динамического объекта рассматриваются автономный и оперативный методы идентификации. Показано, что нейросетевой подход является эффективным при решении задач идентификации.
Модель объекта
Для отработки методов построения системы идентификации сложных динамических объектов и понимания принципов ее работы предлагается осуществить идентификацию одномерного динамического модельного объекта. В качестве такового мы используем объект, показанный на рис.1 (используется пакет прикладных программ Matlab). Параметры объекта можно задавать произвольно. Второй вход модели (Parameters) предназначен для имитации динамики параметров объекта идентификации.
Рис.1. Модель объекта
Под идентификацией объекта понимается построение такой его математической модели, которая по известным (измеренным или априорным) данным дает верное значение выхода объекта. В данной работе в качестве такой модели предлагается использовать нейронную сеть [2] . На рис.2. показана общая схема иденти-.
В качестве идентификатора в данной работе используется многослойная нейронная сеть с последовательными связями. Эта сеть наиболее проста по своей структуре и для отражения динамики объекта можно в качестве ее входов использовать задержанные значения входа и выхода объекта.
Рис.2. Общая схема идентификации.
Многослойная нейронная сеть с прямым распространением сигнала
Входной вектор нейронной сети
На вход нейронной сети в дискретный момент времени I будем по давать вектор [и(1),и(И),...,и(1-Ти), у(1),...,уО-Ту)], размерностью 1+Ти+Ту, составленный из текущего значения входа, Ти предыдущих значений входа и Ту предыдущих значений выхода объекта.
Выходной вектор нейронной сети
По заданному входу, нейронная сеть вычисляет (в момент времени 1) значение выхода У©, показывающее мнение нейронной сети о текущем значении выхода объекта у(0.
Желаемый выходной вектор нейронной сети
Текущее значение выхода объекта управления у(1) является желаемым выходом нейронной сети.
Вектор ошибки нейронной сети
В каждый момент времени нейронная сеть - идентификатор делает ошибку е(1)=У(1)-у(1), которая есть разность между выходным и желаемым выходным зна-.
Функция активации нейронов
Для первого слоя нейронов выбрана функция активации типа «смещенная сигмоида» (tansig) (см. рис.За), а для второго - линейная функция (ригеИп) (рис.Зб).
а
Рис. 3. Функции активации а - нелинейная tansig; б - линейная риггИп
Структура нейронной сети.
В пакете MATLAB сформирована двухслойная нейронная сеть прямого распространения, см. Рис.4.
Размерность входа X равна 1+Ти+Ту, количество нейронов первого (скрытого) слоя Н (по умолчанию Н = 100), в выходном слое 1 нейрон.
Метод обучения нейронной сети
В качестве метода обучения нейронной сети выбран метод сопряженных градиентов trainscg [1].
Методика идентификации
1. Идентификация в автономном режиме [3]. В этом режиме обучение проводится на заранее сформированных множествах входов и выходов. Автономное обучение в основном требуется для облегчения последующей разработки идентификатора в оперативном режиме. На этом этапе определяются примерные параметры идентификатора (количество тактов задержки, число нейронов и т.д.). Значения весовых коэффициентов полученной нейронной сети могут служить начальными условиями для более точной настройки идентификатора в оперативном ре.
1.1. , , -
чения выхода объекта.
1.2. Формируем обучающее множество, состоящее из пар векторов (вход, выход). Вход - вектор, состоящий из значений входа объекта и задержанных значений входа и выхода. Выход - значение выхода объекта.
1.3. , -
ва, аналогично п.1.2.
1.4. Обучаем нейронную сеть на обучающем множестве до некоторого значения функционала оптимизации.
1.5. Сохраняем значения весовых коэффициентов и смещений нейронов сети.
2. Идентификация в оперативном режиме. В этом режиме обучение нейронной сети происходит одновременно с работой в контуре идентификации, по мере
, .
2.1. В момент времени I снимаем текущие значения входа и выхода объекта.
2.2. Формируем обучающее множество, состоящее из нескольких (Т1еп) пар ( , ). - ,
входа объекта и задержанных значений входа и выхода, Выход - текущее значение .
2.3. Подаем на нейронную сеть текущее значение входа. Вычисляем выход нейронной сети.
2.4. Если ошибка идентификации (функция разности вычисленного значения выхода нейронной сети и текущего значения выхода объекта) превосходит заданную, то обучаем нейронную сеть на обучающем множестве до некоторого значения функционала оптимизации.
2.5. Переходим к следующему моменту времени t = t + 1.
1. Автономное обучение
Эксперименты
Изначально были сформированы последовательности (вход объекта, выход объекта) для обучения и теста размерностью 1000 и 500 точек соответственно (шаг дискретизации 0.1 с, т.е. длительность 100 и 50 с). Входы формировались ступенчатой функцией различной длительности и амплитуды (даительность от 1 до 5 точек, амплитуда от 0 до 1). Переменные параметры модели, служащие для имитации динамических параметров объекта, задавались с помощью другого входа (Parameters) также ступенчатой функцией длительностью от 1 до 50 точек и амплитудой от 0 до 1.
Ниже приведем результаты, полученные в экспериментах с двухслойной сетью с прямым распространением сигнала. (По оси абсцисс отложены такты дискретизации, по оси ординат - значения соответствующих сигналов в эти моменты ).
А) При отсутствии задержанных сигналов сеть плохо обучается:
Рис.5. Выход объекта и нейронной сети; параметры сети Tu = Ty = 0, H = 50
Б) Но уже при использовании задержанных сигналов (Ти=Ту=1), качество обучения существенно повышается:
О 100 200 300 400 Б00 6D0 700 BOO 9D0 1000
Рис. 6. Выход объекта и нейронной сети; параметры сети Tu = Ty = 1, H = 50
Мы остановились на значениях Ти = Ту = 5, на графике кривые выхода объекта и нейронной сети неразличимы.
Также эксперименты показали, что изначально выбранных H=50 нейронов первого слоя вполне достаточно для обучения.
Указанные значения и весовые коэффициенты обученной нейронной сети использовались как начальные при построении идентификатора в оперативном ре.
2. Оперативное обучение
Описание модели
Для реализации идентификатора в режиме реального времени в блоке Simu-link пакета программ MATLAB была создана следующая модель:
Идентификатор содержит 3 входа: вход объекта, выход объекта и за-прет\р^решение обучения. Внутренние параметры идентификатора: количество задержанных входов с объекта Tu, количество задержанных выходов с объекта Ту, число нейронов скрытого слоя H, длительность обучающей выборки Tlen, число эпох обучения Epochs, время дискретизации (в сек.) Step.
На вход объекта подается синусоида с линейно нарастающей частотой. На второй вход модели объекта для задания переменных параметров подается белый шум.
Рис. 7. Реализация нейросетевого идентификатора объекта, обучающегося в режиме реального времени
Эксперименты
Проводятся эксперименты по изменению размерности входа нейронной сети, т.е. количества задержанных сигналов от входа и выхода объекта. Изменяется количество нейронов в сети и длина обучающей выборки. Некоторые эксперименты показаны на рис.8-9.
Tu Ту н Tien Kpochs Step
5 0 50 2000 30 0 05
Рис.8. Выход объекта и нейронной сети
,
объекта явно недостаточно (поскольку объект динамический).
При увеличении числа тактов задержек по входам и выходам объекта, сеть обучается хорошо эмулировать объект. На графике кривые выхода объекта и нейронной сети практически неразличимы.
Tu Tv H Tien Epochs Step
5 5 50 200 30 0.05
/ ~
/ Вход объекта 2 - ¡М-------- Выхоп сети /
.2_______________________I__________________I___________________I___________________I___________________I___________________I___________________I___________________I___________________
О 500 1000 1500 2000 2500 3000 3500 4000 4500
Рис.9. Выход объекта и нейронной сети
Предупреждение: в ходе экспериментов обнаружилось, что при наличии меньших значении ^ и Ty ошибка идентификации была не велика, но явно про, . Поскольку при малом времени дискретизации соседние значения выхода мало от, . проводить обучение нейронной сети до значений ошибки, меньшей, чем она могла бы оказаться просто при повторении предыдущих выходов.
Выводы
По полученным результатам видно, что разработанная модель нейросетевого идентификатора динамического объекта в режиме реального времени показала хорошее качество обучения и эмуляции работы объекта. Дальнейшее направление работ заключается в переходе к многомерной модели объекта, исследовании влия-
ния времени дискретизации и разработке методов выбора начальных условий для настройки нейронной сети. Преимущество нейронных сетей по отношению к другим методам идентификации заключается в возможности унификации процедуры синтеза идентификатора объекта. При этом задача физического описания объекта для выбора подходящей модели, в основном перекладывается на этап формирования плана экспериментов, по сбору необходимой информации об объекте. За рамками данной работы остался широкий класс нейронных сетей, перспективных для целей управления и идентификации - рекуррентные нейронные сети [4]. Тем не ,
, -
нием тактов задержки по входу и выходу объекта.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Медведев B.C., Потемкин ВТ. Нейронные сети. MATLAB 6. // Под общ. ред. ВТ. Потемкина. - М.: ДИАЛОГ-МИФИ, 2002. - 496 с.
2. Галушкин AM. Теория нейронных сетей // -М.: ИПРЖР, 2000. Серия «Нейрокомпьютеры и их применение», книга 1.
3. Омату С., Халид М., Юсоф Р. Нейроуправление и его приложения. // - М.: ИПРЖР, 2000. Серия «Нейрокомпьютеры и их применение», книга 2.
4. Уоссермен Ф. Нейрокомпьютерная техника. Пер.с англ. // М.: Мир, 1992
5. Галушкин AM. Основы нейроуправления. // Приложение к журналу «Информационные
», 10, 2002.
6. Галушкин AM. Основы нейроуправления. // Нейрокомпьютер, № 9-10 2002. - C.87-106.
7. Нейроматематика / Под ред. д.т.н. проф. Галушкина А.И. // - М.: ИПРЖР, 2002. Серия « », 6.
8. . ., . ., . . , - . // -
практической отраслевой конференции «Системы автоматизированного управления производствами, предприятиями и организациями горно-металлургического комплекса». Старый Оскол, 18-19 декабря 2003. - Старый Оскол: Старооскольский технологиче-, 2003. - . 22
9. Hrycej T. Neurocontrol: Towards An Industrial Control Methodology. // John Willey & Sons, 1997.
УДК 681.515:007.52:621.3/8
В.М. Буянкин1, Д.В. Пантюхин2
1МГТУ им. Н.Э. Баумана, кафедра «Электротехники и промышленной электроники» 2ФГУП НИИ автоматической аппаратуры им. академика . . , .
СИНТЕЗ ПОСЛЕДОВАТЕЛЬНОГО ИНТЕГРАЛЬНОГО ПРОПОРЦИОНАЛЬНОГО НЕЙРОРЕГУЛЯТОРА ДЛЯ УПРАВЛЕНИЯ
ЭЛЕКТРОПРИВОДОМ
Введение
К современным системам управления электроприводами предъявляются повышенные требования к точности работы, к самонастройке, адаптации, самообучению. Электропривода с двигателями переменного тока имеют переменные параметры, нелинейные статические и динамические характеристики, поэтому обычные регуляторы не могут обеспечить высокой точности работы. Проблема может