Научная статья на тему 'Построение нейросетевого эмулятора объекта управления'

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

CC BY
142
21
Читать
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
НЕЙРОННЫЕ СЕТИ / ПЕРСЕПТРОНЫ / МНОГОСЛОЙНЫЙ ПЕРСЕПТРОН / ГЕНЕТИЧЕСКИЕ АЛГОРИТМЫ (МАТЕМАТ.) / ЭМУЛЯТОРЫ

Аннотация научной статьи по электротехнике, электронной технике, информационным технологиям, автор научной работы — Царегородцева Екатерина Дмитриевна

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

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

The paper describes the constructing of control object emulator, based on using of the neural network multilayer perceptron and the genetic algorithm. Computation results are given for various control objects.

Текст научной работы на тему «Построение нейросетевого эмулятора объекта управления»

МАТЕМАТИКА

УДК 51 9.677

Е.Д. Царегородцева

ПОСТРОЕНИЕ НЕИРОСЕТЕВОГО ЭМУЛЯТОРА ОБЪЕКТА УПРАВЛЕНИЯ

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

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

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

Устройство управления

и(0

Объект управления

Рис. 1. Простейшая система управления: и(1) — управляющее воздействие, у(1 + 1) — выход объекта управления; вырабатываются в моменты времени / и (/+ 1) соответственно

Модель объекта управления + может задаваться в аналитическом виде:

уЦ +1) = у Ш+ иЦ),

(1)

где ~р , д — временные задержки управляющего

+

ветственно.

Однако в большинстве случаев для объекта управления отсутствует аналитическое описание вида (1), и функционирование объекта задается выборкой

£ = = (2) где N — число элементов выборки.

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

Построение нейроэмулятора

В работах [1,2,4] для построения математической модели вида (1) предлагается применять многослойный персептрон с одним выходом, который называется нейросетевым эмулятором (нейроэмулятором).

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

Рис. 2. Многослойный персептрон:

Ог — вход и одновременно состояние /-го входного нейрона; 0; — состояние _/-го нейрона скрытого слоя; у — выход и одновременно состояние выходного нейрона; ш^-, й; — веса; в/, в — пороговые значения

Нейроны входного слоя передают входные значения на скрытый слой. Входной сигнал X] у-го нейрона скрытого слоя определяется как

(3)

/

Каждый у-й скрытый нейрон преобразуют входной сигнал Ху с помощью сигмоидальной функции активации:

/(*,) =-1-.

1 + ехр(-ху)

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

0} = /(Ху). (4)

Входной сигнал у выходного нейрона определяется как

У = Oj

(5)

Нейрон выходного слоя преобразуют входной сигнал у на основе линейной функции активации /(х) = х, и выходное значение сети равно

у=т=у- (6)

Веса ю,у , йу и пороговые значения 0., 9 являются неизвестными и определяются в результате обучения персептрона.

Для решения задачи построения нейроэму-лятора предлагается использовать персептрон с р + д + 1 входами, соответствующими компонентам вектора

хЕЦ) = {уЦ),уЦуЦ^ +

«(/-!),(7)

Рис. 3. Схема обучения нейроэмулятора:

е(/ + 1) — ошибка предсказания; р. ц— временные задержки; г ' — оператор; см. также обозначения на рис. 1, 2

и одним выходом, соответствующим выходу объекта y{t +1).

На рис. 3 представлена схема обучения нейроэмулятора, при котором минимизируется ошибка предсказания

ê{t + 1 ) = y(t + l)~ y{t + 1),

где y{t + 1) — выходной сигнал нейроэмулятора, соответствующий вектору (7).

Применение оператора z~r обозначает получение состояния некоторого входного сигнала a{t) в момент времени t- г:

z~r (a(t)) = a(t- г).

Эффективное оперативное обучение

В работе [4] для обучения нейроэмулятора предлагается использовать эффективное оперативное обучение. В момент времени / из выборки (2) выбирается п элементов, которые образуют новую выборку:

S = {(x£(î-£), y(t + \-k)), к = 0,п-1}, (8)

где ж^, / = 0, N-1.

Обучение нейроэмулятора осуществляется на основе алгоритма обратного распространения ошибки по выборке (8) [6]. Для каждого элемента выборки (8) веса ю;у, <bJ■ и пороговые значения

0у, 9 нейроэмулятора определяются из условия минимизации функции энергии:

Е{к) = ик Щ + 1-*)2 = = ик(у« + \-к)-у{г + \-к))\

где Хк, к = Ъ,п-\ (1>У0>У, >...>У„_1 >°) - не-возрастающая положительная последовательность, предназначенная для уменьшения влияния элементов выборки, соответствующих более ранним моментам времени.

Веса ю;у, «у и пороговые значения 9у, 9 рассчитываются по формулам

ю/* +1) = ю/*) - и ¡5 О} + аАоЬ^к) +

+ рДёу(А; -1); ($у{к +1) = ю;у(к)-+ аДюу(к) +

+ рДю&.(А:-1); в(к +1) = 0(А;) - и5 + аА 0(А;) + р А0(А; -1); д}(к +1) = д;(к)-ц5; + аД0/*) + рДд/* -1), (9) где и — скорость обучения; а — коэффициент

Р

5 = -у е(/ + 1-А:);

5у = 8юу0/1 -0у); Аюу(А;) = юу(А;)-юу(А; -1);

Дюу(А; -\) = 5>}(к -\)-5>}(к -2);

9&у(к) = щ](к)-&у(к-\);

9(у(к -1) = ау(к-1)-ау(к- 2);

А0(А: ) = 0(А:)- 0(А: -1);

9 0(А; -1) = 0(А; -1)- 0(* -2);

Дду(*) = ду(*)-д/*-1);

Дду(А: -1) = д^к -1) - ду (* - 2).

Согласно методу эффективного оперативного обучения процесс обучения нейроэмулятора останавливается при достижении заданного числа шагов (эпох) обучения Мили при выполнении условия Е,, <г, где Е,. вычисляется по формуле

^ = №+1»2' <10) 1=0

где е — заданная точность.

Алгоритм 1. Для обучения нейроэмулятора предлагается следующий алгоритм, общая идея которого предложена в работе [4].

1. Задаются исходные данные: число нейронов в скрытом слое А; значения времени задержки р\ времени задержки д\ выборка »У (см. формулу (2)); минимальное и максимальное значения Ет;„, Етах весов и пороговых значений; значения скорости обучения ^; коэффициентов — Р; точности е; числа шагов обучения М\ числа элементов п выборки ¡5 (формула (8)); коэффициентов У0 , у. Полагается т = 0.

2. Вычисляются коэффициенты Хк: Хк =Х0у\ к = 1,п-1. Начальные значения весов ю,у, ( и пороговых значений ду, 0 нейроэмулятора выбираются случайным образом из отрезка ГЕ • 1.

3. Полагается 1 = 0.

4. Формируется выборка 5 (8).

5. Нейроэмулятор обучается по выборке 5 следующим образом:

5.1. Счетчик к полагается равным 0. 0

-

5.3. По формулам (3)—(6) вычисляется выходное значение нейроэмулятора у^ + \-к).

5.4. Из выборки 5 выбирается значение выхода объекта _у(? + 1-А:), вычисляется ошибка

е(? + \-к) = у^ + \-к)-Я^+ 1-А:), и с помощью формул (9) рассчитываются новые значения весов ю;у, (у и пороговых значений ду, 05.5. Полагается к = к + 1. 5.6. Если к>п -1, то осуществляется переход к п. 6, иначе к п. 5.2.

=+

7. Если ? > N - п, то осуществляется переход к п. 8, иначе к п. 4.

8. По формуле (10) вычисляется суммарная

функция энергии Е8.

9. Если Е8 < е, то осуществляется переход к п. 12, иначе к п. 10.

=+

>

к п. 12, иначе к п. 3.

12. Остановка алгоритма и вывод результатов. Для проверки обобщающей способности нейроэмулятора используется тестирующая выборка

5' = (11)

где выражение для вектора х^О аналогично выражению (7), но все компоненты вектора обозначены со штрихом.

Для нейроэмулятора вычисляется суммарная ошибка обобщения по формуле

у'«+1))2, (12)

1=0

где +1) — выходной сигнал нейроэмулятора, соответствующий вектору х'Е(0 ■

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

Применение генетического алгоритма для подбора структуры нейроэмулятора

Поскольку оптимальные значения времени задержки р управления м(/), времени задержки q выхода объекта +1) и числа скрытых нейронов А нейроэмулятора неизвестны, то для их определения предлагается использовать генетический алгоритм, который использует следующие понятия: хромосома — вектор из нулей и единиц, ген — атомарный элемент хромосомы, генотип — набор хромосом, популяция — совокупность генотипов. Каждому генотипу ставится в соответствие значение некоторой функции, определяющее приспособленность данного генотипа [5].

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

В качестве функции приспособленности Еп выступает функция вида

р = Г-£;-(/> + ? + А),еши Е[ <е;

" [-^-2-( + 17 + А),если Е[ >е,

где Е[ вычисляется по формуле (12), е — точность.

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

1. Задание исходных данных. Задаются выборки 5, >5" (см. формулы (2), (11)); размер популяции ТУ; максимальное число поколений Л"тах ;

е

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

' ШаА л I11(ХЛ ' IIIОЛ

ветствующих параметров. Полагается к = 0, /с=1, Еп =0.

2. Инициализация. Случайным образом генерируется ТУ генотипов, образующих начальную популяцию Р(0).

3. Оценивание приспособленности.

3.1. Для каждого генотипа Б] текущей популяции Р(к) декодируются значения параметров р, А, которые задают структуру нейроэмулятора.

3.2. Нейроэмулятор обучается на выборке »У по алгоритму 1.

3.3. Нейроэмулятор тестируется на выборке S'. Значение функции приспособленности Еп для каждого генотипа S • рассчитывается по формуле (13).

4. Выбор наиболее приспособленного генотипа. Выбирается наиболее приспособленный генотип S*:F„(S*) = max F„(S,). ЕслиEJS*) = F„,

SjsP(k) J

то полагается ic = /с +1, ина че ic=\, Fn =Fn{S ).

5. Проверка условий остановки. Если выполняется одно из условий: к < ^тах, ic =пс, то осуществляется переход к п. 6, иначе к п. 10.

6. Отбор. В родительскую популяцию М{к) включается N генотипов, каждый из которых выбирается на основе турнирного метода селекции, суть которого приводится ниже.

6.1. Из текущей популяции Р(к) случайным образом выбирается т генотипов, которые образуют подгруппу G: Sd е G , d = \,m.

6.2. В родительскую популяцию М{к) включается наиболее приспособленный генотип 5/ из подгруппы G:

En(Sl) = maxE(Sd).

S^G

7. Скрещивание. К отобранным генотипам родительской популяции М(к) применяется

оператор скрещивания следующим образом. =

7.2. Из родительской популяции М(к) случайным образом выбираются генотипы-родители 5,, S2 ■

7.3. Генерируется случайное число z, равномерно распределенное в отрезке [0,1]. Еслиг < рс, то осуществляется переход кп. 7.4, иначе к п. 7.5.

7.4. В популяцию Р(к + 1) включаются родительские генотипы S2 и осуществляется переход к п. 7.6.

7.5. К отобранным генотипам и S2 применяется оператор одноточечного скрещивания, состоящий в следующем. Случайным образом выбирается значение точки скрещивания / из отрезка [1, L], где L — длина генотипа. Формируются потомки CA, и СА2 в результате скрещивания:

потомок СА[, генотип которого на позициях от 1 до /состоит из генов первого родителя S}, на

позициях от / +1 до Е — из генов второго родителя 52;

потомок СА2, генотип которого на позициях

от 1 до / состоит из генов второго родителя , на +

теля ^.

7.6. Полагается /, = /, + 2. Если il<N , то осуществляется переход к п. 7.2, иначе к п. 8.

+

применяется оператор мутации: для каждого гена генотипа генерируется случайное число г, равномерно распределенное в интервале [0,1]. Если

г< рт, то значение гена меняется на противоположное, иначе мутация не производится.

9. Переход к следующему поколению. Пола-

=+

10. Остановка алгоритма. Декодирование параметров наилучшего генотипа р, А.

Экспериментальная часть

Для объектов, математические модели которых описываются зависимостями

>*/ + 1) = и(/); (14)

Я' + 1) = 0,988;К') + 0,232и(/); (15) у{г +1) = 0,9Ж> - 0,001у{г -1)2 + и(/) +

+ вш м(г-1),

(16)

были сгенерированы выборки объемом N= 100 и использовались временные задержки: для объекта с моделью по формуле (14) — = 1, # = 1; для такового по формуле (15) —р = 2, # = 2; по (16) — р — 3, (?= 3.

Для построения нейроэмуляторов объектов (14)—(16) применялось эффективное оперативное обучение при следующих значениях параметров:

А = 20; £т;п = -0,05; Етж =0,05; и =0,01; а =

0,8; Р =-0,15; е =0,1;М= 10000;п = 5; = 1; у = 0,9. Результаты обучения приведены в табл. 1.

Подбор структур нейроэмуляторов объектов (14)—(16) осуществлялся с помощью генетического алгоритма при следующих значениях параметров: М = 10; Ктах = 100; е = 0,1; рс = 0,9; рт = 0,1; т = 4; пс = 5; рптх = 10; 9тах = 10;

А„1ах = 50. В табл. 2, 3 приведены подобранные значения временных задержекр, д и числа скрытых нейронов А нейроэмуляторов, а также результаты работы генетического алгоритма (ГА).

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

Таблица 1

Результаты обучения нейроэмуляторов

Нейроэмулятор объекта (номер формулы) Суммарная функция энергии Ец Число шагов обучения Время расчетов, с

(14) 0,099494 171 1,280

(15) 0,099060 167 1,420

(16) 0,099918 798 7,488

Таблица 2

Подобранные структуры нейроэмуляторов

Нейроэмулятор объекта (помер формулы) Время задержки Число скрытых нейронов А

Р Я

(14) 0 0 5

(15) 1 0 22

(16) 1 3 17

Таблица 3

Результаты работы генетического алгоритма

Нейроэмулятор объекта (номер формулы) Суммарная ошибка обобщения E's Число итераций ГА Время расчетов ГА, с

(14) 0,097880 9 112

(15) 0,098643 6 135

(16) 0,099858 13 253

ляторами аналитических зависимостей (14)— (16). Кроме того, предложенный алгоритм эффективного оперативного обучения позволяет достаточно быстро построить нейроэмулятор объекта управления.

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

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

1. Akhyar, S. Self-tuning P1D control by neural-networks [Текст] / S. Akhyar, S. Omatu // Proceeding of 1993 International Joint Conference on Neural Networks (1JCNN'93).— 1993,- C. 2749-2752.

2. Pirabakaran, K. P1D autotuning using neural networks and model reference adaptive control [Текст] / К. Pirabakaran, V.M. Becerra // 15th Triennial 1FAC World Congress.- 2002,- C. 736-740.

3. Денисенко, B.B. Компьютерное управление технологическим процессом, экспериментом, оборудованием [Текст] / В.В. Денисенко,— М.: Горячая линия-Телеком, 2009,— С. 309— 310.

4. Омату С. Нейроуправление и его приложения |Текст] / С. Омату, М. Халид, Р. Юсоф; пер. Н.В. Батина,- М.: ИПРЖР, 2000,- С. 121- 132.

5. Рутковская, Д. Нейронные сети, генетические алгоритмы и нечеткие системы [Текст] / Д. Рутковская, М. Пилиньский, Л. Рутковский; пер. И.Д. Рудинского,— М.: Горячая линия — Телеком, 2007,- С. 130- 163.

6. Тархов, Д.А. Нейронные сети. Модели и алгоритмы |Текст] / Д.А. Тархов,— М.: Радиотехника, 2005,- С. 92- 93.

УДК 517.929

М.Б. Авдеева, С.В. Зубов, М.В. Стрекопытова, К.А.Пешехонов

ПОСЛЕДНИЙ МНОЖИТЕЛЬ И ИНТЕГРАЛЬНЫЙ ИНВАРИАНТ

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

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

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