Preview

Вестник Концерна ВКО «Алмаз – Антей»

Расширенный поиск

Разработка методики синтеза нейро-нечеткого регулятора с настройкой генетическим алгоритмом

Полный текст:

Аннотация

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

Для цитирования:


Первушина Н.А., Доновский Д.Е., Хакимова А.Н. Разработка методики синтеза нейро-нечеткого регулятора с настройкой генетическим алгоритмом. Вестник Концерна ВКО «Алмаз – Антей». 2018;(4):82-90.

For citation:


Pervushina N.A., Donovskiy D.E., Khakimova A.N. Development of synthetic methodology of neuro-fuzzy controller adjusted by genetic algorithm. Journal of «Almaz – Antey» Air and Space Defence Corporation. 2018;(4):82-90. (In Russ.)

Введение

Необходимость решения актуальных задач автоматического управления динамически­ми объектами, в частности беспилотными летательными аппаратами, при действии различного рода случайных возмущений в на­стоящее время все чаще требует применения интеллектуальных методов математического моделирования, таких как нечеткая логика, ге­нетические алгоритмы (ГА), нейронные сети. Объединение нейронных сетей, ГА и нечет­ких алгоритмов позволяет решать задачи раз­личной сложности и неопределенности (по исходным данным), но самое важное - они становятся универсальным инструментом для обработки неточной, неполной или нечеткой информации [1].

Применение интеллектуальных методов при построении систем управления позволя­ет существенно снизить влияние неопреде­ленности на качество систем управления, а также компенсировать недостаток априор­ной информации на этапе проектирования систем [2].

В настоящей статье представлена ме­тодика разработки нейро-нечеткого регуля­тора (ННР) с настройкой его параметров ГА. ННР и работоспособность ГА для его настрой­ки протестированы в рамках решения класси­ческой модельной задачи стабилизации дина­мического объекта - вертикальный маятник на подвижной тележке.

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

Рассматривается замкнутая система управле­ния динамическим объектом (рис. 1) - система стабилизации (СС) [3].

 

Рис. 1. Замкнутая система управления с регулятором в прямой цепи:

ОУ - динамический объект управления; u(t) - задан­ное управление; e(t) - ошибка управления (рассогла­сование), e(t) = u(t) - x(t); up (t) - сигнал управления с выхода регулятора; x(t) - выходное значение СС

 

Для синтеза математической модели ННР с настройкой ГА в СС со структурой, представленной на рис. 1, предлагается сле­дующий алгоритм.

Алгоритм синтеза математической модели ННР с настройкой ГА

Этап 1. Построение математической модели ОУ и решение задачи синтеза регулятора клас­сическим методом. Предварительно необхо­димо выбрать структуру регулятора (П-, ПИ-, ПИД-регуляторы [3] и др.), а далее рассчитать или подобрать его коэффициенты.

Этап 2. Проведение тестирования по­строенной СС (этап 1) в диапазоне возможных режимов работы и подтверждение устойчиво­сти. Получение обучающей выборки для выполнения процедуры синтеза нечеткого регу­лятора (НР).

Этап 3. Принятие решения о структуре НР (в простейшем случае это будет структура один вход - один выход). Осуществление выбора лингвистического описания для входной (входных) и выходной переменной НР (фаззификация [4]). На рис. 2 приведена структу­ра НР один вход - один выход. В структуре по­казаны три необходимых для работы НР функ­циональных блока.

 

Рис. 2. Структура нечеткого регулятора и терм-множество для описания входных и выходных переменных НР: μ(x) - функция принадлежности каждого из термов (гранул); T1, T2, ..., T5, [xmin, Xmax] - область определе­ния терм-множества, X1, X2, ..., X5 - границы термов (определяются по данным обучающей выборки)

 

В блоке «фаззификация» содержится не­четкое описание входного e(t) и выходного па­раметра up (t) в виде терм-множества лингвисти­ческих переменных. Каждый из параметров обо­значим обобщенно х, а пример терм-множества показан на рис. 2. Степень гранулированности ин­формации (количество термов) определяется экс­пертом исходя из особенностей решения задачи.

Этап 4. На основании данных обучающей выборки (табл. 1) составляются схемы логиче­ских выводов в нечеткой базе правил в соот­ветствии с лингвистическим описанием этапа

  1. Общий вид логических выводов следующий:

если e (t) = Ti, то up (t) = Tj,                                  (1)

где Ti - терм входной переменной;

i = 1,2,..., n - число термов входной пере­менной;

Tj - терм выходной переменной, j = 1,2,..., m (число термов выходной пере­менной).

 

Таблица 1

Обучающая выборка

Регистрируемые сигналы контура СС

Значения сигналов, зафиксиро­ванные в момент времени t

Ошибка СС, e(t)

ei(t)

e2(t)

...

ei(t)

...

Сигнал управления, up (t)

up1(t)

up2(t)

...

upi(t)

...

Примечание. t — начальный момент времени и (или) время, соответствующее наступлению установивше­гося режима работы СС.

Этап 5. Выбор вида дефаззификации результата нечеткого вывода. Наиболее часто используется метод центра тяжести [4].

Этап 6. Проведение тестирования СС с НР. Дается заключение об устойчивости.

Если СС с НР окажется неустойчивой, то кор­ректируются границы термов X1, х2, ..., xn(m) до получения устойчивой СС.

Этап 7. Разработка ГА для настройки па­раметров НР в рамках стандартного процесса получения оптимального решения [1]:

  1. формирование начальной популяции;
  2. появление текущей популяции;
  3. работа генетических операторов;
  4. появление новых хромосом (переход на этап 2);
  5. проверка условия остановки;
  6. остановка эволюции;
  7. оптимальное решение.

Формирование начальной популяции вы­полняется на этапе 3 - границы термов вход­ных и выходных переменных. Условие оста­новки работы ГА в рамках функционирования СС предлагается выбрать в виде интегрального критерия качества [3]:

Этап 8. Проведение тестирования ГА на­стройки параметров НР (границ термов). Для этого выбирается тестовое управление u(t) на входе СС и выполняется настройка парамет­ров НР относительно установленных на эта­пе 6 значений границ в заданных диапазонах их вариаций. Результат тестирования должен показать корректность работы ГА, т. е. после­довательное приближение к оптимальному решению - набору параметров НР.

Этап 9. Настройка параметров НР с по­мощью ГА для заданного вида входного воз­действия u(t) .

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

 

Рис. 3. Структура ННР:

x0 - начальное состояние нейрона; X1, ... , X5 - выходные переменные базы правил; a1, ... , a5 - веса правил; Ne - формальный нейрон; f (g) - функция активации нейрона; g - аргумент функции активации

Аргумент функции активации g опреде­ляется по формуле

Этап 11. Тестирование ННР при единич­ных весах правил . Если резуль­таты тестирования совпадают с результатом этапа 9, то подбираются aj в интервале от 0 до 1 таким образом, чтобы по критерию (2) результат работы СС для заданного вида вход­ного воздействия u(t) оказался лучше, чем на этапе 9, либо делается вывод о невозможности дальнейшего улучшения качества работы СС.

Решение задачи синтеза математической модели ННР с настройкой ГА

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

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

Авторы статьи также использовали опи­санную задачу для тестирования функциони­рования ННР с настройкой ГА при решении задачи стабилизации положения неустойчи­вого динамического объекта (вертикального маятника).

Вертикальный маятник представляется в виде легкого жесткого стержня длиной 21 с точечной массой m на конце, его основа­ние закреплено по центру тележки массой M. Коэффициент вязкого трения при движении те­лежки - b; - сила, прикладываемая к тележке (управление); x - координата тележки; θ - угол отклонения маятника от вертикали [5, 6].

Уравнения движения вертикального ма­ятника на тележке имеют вид

Поскольку цель СС - удерживать ма­ятник вертикально, то данные нелинейные уравнения можно линеаризовать в окрестно­сти точки  и построить ма­тематическую модель ОУ по углу отклонения маятника θ в форме передаточной функции:

ОУ с передаточной функцией (6) не­устойчив по критерию Гурвица, так как среди коэффициентов характеристического уравне­ния (знаменатель в формуле (6)) есть отрицательные значения [3]. Для обеспечения устой­чивости ОУ построим систему стабилизации с единичной обратной связью и ПИД-регулятором в прямой цепи управления (см. рис. 1). В данном случае: u(t) = θзад (заданное значение угла отклонения маятника при стабилизации), e(t) = Δθ (отклонение от θзад ), up (t) = F (сила, прикладываемая к тележке), x(t) = θ (фактиче­ский угол отклонения маятника).

Устойчивость и быстродействие математи­ческой модели ОУ (6) обеспечивается ПИД-регулятором с коэффициентами Kd, Ki и K:

С помощью построенной СС получим обучающую выборку для синтеза математиче­ской модели НР. В качестве тестовых входных воздействий выбраны: ступенчатое воздей­ствие 1( t) заданной амплитуды θзад и гармо­ническое воздействие θзадsin(ωt) с ω = 1, 1/с.

Этапы 1 и 2 алгоритма синтеза ННР с настройкой ГА выполнены.

Этап 3 работы алгоритма синтеза свя­зан с выбором структуры НР. Ограничимся простой структурой один вход - один выход. НР в контуре СС вертикального маятника на тележке должен по значениям параметра вход­ного сигнала Δθ формировать на выходе сиг­нал управления F , который далее поступает на ОУ и изменяет значение угла θ в сторону заданного значения θзад.

Структура разрабатываемого НР соот­ветствует схеме, показанной на рис. 1. В бло­ке «фаззификация» содержится нечеткое опи­сание входного параметра Δθ и выходного параметра F в виде терм-множества лингвис­тических переменных (см. рис. 2), каждая из которых соответствует одному из уровней сиг­нала: Н - нулевой, ПМ - положительный ма­ленький, ОМ - отрицательный маленький, ПБ - положительный большой, ОБ - отрица­тельный большой. Параметры нечетких пере­менных, соответствующие каждому из описаний, определяются по обучающей выборке (табл. 2).

 

Таблица 2

Обучающая выборка

θзад, град

θзад ⋅1(t)

θзадsin(ωt) ω = 1, 1/с.

Ft0, Н

Fуст, Н

|Fmax| , Н

89,9

707

-23,1

24,5

80

628

-20,5

21,8

70

550

-18

19,1

60

470

-15,4

16,3

50

393

-12,8

13,6

40

314

-10,3

10,9

30

235

-7,7

8,2

20

157

-5,1

5,5

10

78,5

-2,6

2,7

5

39,3

-1,3

1,4

0,5

3,9

-0,1

0,14

Примечание. При отрицательных значениях θзад результат симметричный.

Обозначим диапазоны возможных значе­ний для границ лингвистических термов вход­ных и выходных параметров в соответствии с результатами моделирования, представленны­ми в табл. 2. Так, например, для малого значе­ния входного воздействия Δθ (терм ПМ) от 0 до 30° выходной параметр F варьируется от -7,5 до 235 Н. В соответствии с этой логикой графически термы представлены на рис. 4, а диапазоны для границ термов описаны сле­дующими выражениями:

 

Рис. 4. Терм-множества входных (а) и выходных (б) параметров НР

 

Для проведения анализа работы НР в СС вертикального маятника на тележке без на­стройки установим базовые (начальные) значе­ния границ лингвистических термов входных и выходных параметров в виде средних значений в рамках принятых диапазонов:

В блоке правил каждое логическое пра­вило должно формировать вывод в виде не­четкого описания переменной F, соответствую­щей каждой возможной входной переменной Δθ.

База правил в системе нечеткого логи­ческого вывода с учетом описания входной переменной Δθ и выходного параметра F (см. рис. 4) представлена в табл. 3.

 

Таблица 3

База правил НР

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

Номер правила

1

2

3

4

5

Δθ

ОБ

ОМ

Н

ПМ

ПБ

F

ПБ

ПМ

Н

ОМ

ОБ

Для построения нечеткого вывода в НР выбран механизм Мамдани в связи с тем, что он наиболее широко используется при постро­ении регуляторов в технических системах. Дефаззификация выполняется по методу центра тяжести [5]. Этапы 3-5 алгоритма синтеза ННР с настройкой ГА выполнены.

Для проведения тестирования работы СС с НР (этап 6) был разработан программный модуль НР, преобразованный к виду функци­онального блока СС, входами которого являются массивы параметров термов:

Тестирование работы СС с НР показало, что система с НР без настройки устойчива.

Для настройки параметров НР был раз­работан ГА. Порядок работы генетического алгоритма следующий.

  1. Формирование начальной популяции. Начальная популяция формируется из началь­ных данных (11) с учетом симметричности описания лингвистических термов (см. рис. 4).

Для входных и выходных переменных НР начальные популяции хромосом имеют вид

В соответствии с хромосомами (12) вы­числяется значение функции пригодности (ФП) по формуле (2).

  1. Определение диапазонов значений для генов. Предполагается, что значение каждого гена в хромосомах (12) является числом в за­данных интервалах:

Случайный выбор значений из интерва­лов (13), (14) формирует новую хромосому.

  1. Создание популяции. Случайным обра­зом в рамках диапазонов значений (13), (14) ге­нерируются по 3 хромосомы типа (12). Пример формирования хромосом приведен в табл. 4.

 

Таблица 4

Исходные данные для формирования текущей популяции

Номер хромосомы

Обозначение хромосомы

(a1, a2, a3)

(b1, b2, b3)

1

a1 = (a11, a21, a31)

b1 = (b11, b21, b31)

2

a2 = (a12, a22, a32)

b2 = (b12, b22, b32)

3

a3 = (a13, a23, a33)

b3 = (b13,b23, b33)

Поскольку хромосома a отвечает за фор­мирование входных переменных НР, а хромо­сома b - за формирование выходных, то из представленных в табл. 4 хромосом формиру­ется 9 сочетаний (каждая с каждой).

  1. Оценка степени пригодности текущей популяции. Признак пригодности хромосомы определяется следующим образом:

В противном случае kij = 0.

Коэффициент выживаемости определя­ется так:

В противном случае Δn = 0.

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

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

  1. Построение новой популяции хромо­сом. Пусть на предыдущем шаге выбраны пары сочетаний хромосом, представленные в табл. 5.

 

Таблица 5

Пример формирования новой популяции

Сочетание хромосом

Номер сочетания

Сочетание

Для отца

7

a3b1

5

a2b2

7

a3b1

Для матери

5

a2b2

1

a1b1

7

a3b1

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

Аналогично данным табл. 6 формиру­ются потомки хромосомы b - это  Далее на основе полученных данных строятся сочетания (amП, bsП), где  и снова вычисляется пригодность найденных решений.

 

Таблица 6

Пример операции кроссинговера

Шаги алгоритма выполняются до тех пор, пока не будет найдено минимальное значение инте­грального критерия (2), т. е. для всех сочетаний хромосом, и признак пригодности к не станет равен 0 для всех потомков.

Работоспособность разработанного ГА проверена на СС вертикального маятника на тележке. Пример процесса оптимизации пара­метров НР с помощью ГА представлен в табл. 7.

 

Таблица 7

Данные из выходного файла программного модуля, реализующего ГА для настройки НР

i

ИКО

Границы термов входных параметров НР

Границы термов выходных параметров НР

А1

А2

А3

А4

А5

А6

А7

В1

В2

В3

В4

B5

B6

B7

0

1,2614

-75,0

-45,0

-15,0

0

15,0

45,0

75,0

-285,0

-170,0

-60,0

0

60,0

170,0

285,0

1

0,0322

-79,7

-58,8

-23,8

0

23,8

58,8

79,7

-204,7

-165,9

-21,7

0

21,7

165,9

204,7

2

0,0071

-71,4

-43,2

-1,0

0

1,0

43,2

71,4

-457,7

-213,3

-115,1

0

115,1

213,3

457,7

3

0,0071

-71,4

-43,2

-1,0

0

1,0

43,2

71,4

-457,7

-213,3

-115,1

0

115,1

213,3

457,7

Примечания: i — шаг работы ГА; ИКО — интегральный критерий качества (2).

На шаге i = 0 (до начала работы ГА) гра­ницы термов соответствуют начальным значе­ниям (10), (11). При i = 1 (первый шаг работы ГА) границы термов изменились в пределах диапазонов (13), (14) в сторону улучшения качества работы СС с НР. Значение крите­рия (2) уменьшилось с 1,26 до 0,032. ГА закон­чил работу на третьем шаге, когда качество рабо­ты СС повысилось до ИКО = 0,0071, улучшить результат не удалось. При i = 3 произошло ду­блирование результата и остановка работы ГА.

Этап 10 алгоритма синтеза ННР с на­стройкой ГА выполняется в соответствии со схемой, показанной на рис. 3. В алгоритм не­четкого вывода встраивается формальный ней­рон, с помощью которого донастраивается НР (этап 11) в части весов каждого из правил вы­вода в базе (см. табл. 2).

Разработка ННР с настройкой ГА для СС вертикального маятника на тележке завершена.

Тестирование работы ННР с настройкой ГА в СС вертикального маятника на подвиж­ной тележке выполнялось при наличии случай­ного воздействия на ОУ как по типу «белый шум», так и случайного импульсного характера (рис. 5, а). На рис. 5, б приведена СС с ННР в прямой цепи и случайным возмущением на ОУ.

Рис. 5. Пример случайного возмущения на ОУ в СС вер­тикального маятника на тележке (а) и структура СС (б)

На рис. 6 приведены графики изменения во времени выходного параметра СС θ при наличии случайного возмущения импульсного характера (см. рис. 5, а) на ОУ (маятник) при t = 0,2, 1,5 и 2,5 с. Графики на рис. 6 позволяют сделать вывод о том, что ННР при правильной настройке обеспечивает высокое качество ра­боты СС даже при наличии случайных возму­щений на ОУ.

Заключение

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

Разработанная методика синтеза ННР с настройкой ГА может быть рекомендована для применения при создании систем стабилиза­ции беспилотных управляемых летательных аппаратов.

Об авторах

Н. А. Первушина
Федеральное государственное унитарное предприятие «Российский федеральный ядерный центр - Всероссийский научно-исследовательский институт технической физики имени академика Е.И. Забабахина»
Россия


Д. Е. Доновский
Федеральное государственное унитарное предприятие «Российский федеральный ядерный центр - Всероссийский научно-исследовательский институт технической физики имени академика Е.И. Забабахина»
Россия


А. Н. Хакимова
Федеральное государственное унитарное предприятие «Российский федеральный ядерный центр - Всероссийский научно-исследовательский институт технической физики имени академика Е.И. Забабахина»
Россия


Для цитирования:


Первушина Н.А., Доновский Д.Е., Хакимова А.Н. Разработка методики синтеза нейро-нечеткого регулятора с настройкой генетическим алгоритмом. Вестник Концерна ВКО «Алмаз – Антей». 2018;(4):82-90.

For citation:


Pervushina N.A., Donovskiy D.E., Khakimova A.N. Development of synthetic methodology of neuro-fuzzy controller adjusted by genetic algorithm. Journal of «Almaz – Antey» Air and Space Defence Corporation. 2018;(4):82-90. (In Russ.)

Просмотров: 47


Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2542-0542 (Print)