Алгоритмы нечеткого нейронного и нейро-нечеткого управления в систем
..pdf– определяем координаты точек абсцисс в интервале разбиения
[xk , xk 1] , где |
x0 a ; |
xn b ; |
k 0,1, 2,....,n 1. Для определения точек |
|
|
|
k |
разбиения xi |
подсчитываются значение площади Si Cf xi j C |
j 1
и сравниваются со значением S n 1 . Увеличиваем значение k до выполнения условия (Si S n 1 ) зад , где зад – заданная точность. Граница i -интервала определяется по формуле xi 1 xi k C . Указанная
процедура выполняется на всем отрезке [a, b] и определяет координаты x0 , x1, x2 ,.., xi ,..., xn . В пределах каждого интервала [xi, xi 1] функция f x
аппроксимируется постоянными значениями yi |
; |
|
||||||||
– определяем абсциссу и ординату ЦТ объединенного усеченного |
||||||||||
множества по следующим формулам: |
|
|
|
|
|
|
|
|
|
|
|
1 n 1 |
|
|
x |
i+1 |
x |
|
|
|
|
xцт = |
xi |
+ |
|
|
i |
, |
(1.9) |
|||
|
2 |
|
||||||||
yцт |
n i 0 |
|
|
|
, |
|
|
(1.10) |
||
0,5 |
|
|
Si |
|
|
|
||||
|
n 1 |
|
|
|
|
|
|
|
|
|
|
n i 0 |
|
|
|
|
|
|
|
|
|
|
|
x |
|
x |
|
|
|
|
||
|
|
|
i 1 |
|
i |
|
|
|
|
|
где n – число разбиений; Si – площади текущих разбиений; |
xi , xi 1 – ко- |
ординаты абсцисс текущих разбиений.
Приведенный алгоритм вычисления координат ЦТ был проверен на фигуре объединенного усеченного множества (рис. 1.28).
Произведено сравнение результатов с точными значениями. Исследование было проведено с помощью разработанного пакета «Центр тяжести».
Результаты расчета Фигура (а) (рис. 1.28, а)
|
C = 0,02 |
n = 4, xцт 3,405; |
= 2,28 %; |
yцт 0,330; |
= 1,98 %; |
n = 8, xцт 3,419; |
= 1,88 %; |
yцт 0,330; |
= 1,98 %; |
n = 10, xцт 3,371; |
= 3,25 %; |
71
yцт 0,328; |
= 2,57 %; |
|
C = 0,01 |
n = 4, xцт 3,438; |
= 1,34 %; |
yцт 0,305; |
= 9,40 %; |
n = 8, xцт 3,467; |
= 5,0 %; |
yцт 0,328; |
= 2,71 %; |
n = 10, xцт 3,435; |
= 1,43 %; |
yцт 0,308; |
= 8,51 %; |
а
б
Рис. 1.28. Примеры фигур
72
Фигура (б) (рис. 1.28, б)
|
C = 0,02 |
n = 4; xцт 1,688; |
= 2,51 %; |
yцт 0,988; |
= 4,11 %; |
n = 8; xцт 1,691; |
= 2,29 %; |
yцт 1,044; |
= 1,36 %; |
n = 10; xцт 1,670; |
= 3,52 %; |
yцт 1,065; |
= 3,42 %; |
|
C = 0,01 |
n = 4; xцт 1,713; |
= 1,06 %; |
yцт 0,925; |
= 10,18 %; |
n = 8; xцт 1,705; |
= 1,49 %; |
yцт 1,013; |
= 1,68 %; |
n = 10; xцт 1,690; |
= 2,39 %; |
yцт 1,050; |
= 1,96 %. |
Анализ расчетных формул и экспериментальных данных показал:
–чем меньше приращение абсциссы C , тем выше точность определения координат ЦТ фигуры объединенного усеченного множества;
–быстродействие алгоритма для вычисления координат ЦТ фигуры объединенного усеченного множества по формулам (1.9) и (1.10) на два порядка выше, чем при расчетах по формулам (1.7) и (1.8);
–формула расчета координат ЦТ объединенного линейного усеченного множества предполагает линейные функции принадлежности дефаззификатора с фиксацией координат характерных точек элементарных фигур;
–формулы расчета координат ЦТ (1.9) и (1.10) объединенного усеченного множества предполагают как линейные, так и нелинейные функции принадлежности дефаззификатора, являются универсальными
имогут широко применяться при проектированиинечеткого регулятора.
73
1.11.Алгоритмы нечеткого управления
всистеме раального времени
Модуль нечеткого управления состоит из следующих компонентов: блока фаззификации, базы правил, блока выработки решения и блока дефаззификации.
Блок фаззификации
Система управления с нечеткой логикой оперирует нечеткими множествами. В задачах управления чаще всего применяется операция фаззификации типа синглетон. Блок фаззификации содержит от одного до
нескольких терм-множеств. |
Поэтому конкретному значению |
||
|
|
x1 , x2 ,...xn T X входного |
сигнала блока нечеткого управления |
X |
после операции фаззификации будет сопоставлено нечеткое множество A X X1 X2 .... Xn . Переменным сигналом блока фаззификации
является унимодальная функция принадлежности (синглетон), которая синхронно с входным сигналом перемещается в нормированном интервале изменения входной величины, пересекая терм-множества. Фаззификация на синглетоной базе (операция перевода четкой информации в нечеткую информацию) в случае нечеткого управления формирует нечеткое множество A X X1 X2 .... Xn для дальнейшей обработки
операцией «нечеткая импликация» в блоке выработки решения. Число терм отдельного терм-множества задается от 3 до 11 в зависимости от скорости изменения сигнала. Увеличение числа терм возможно включением квантификаторов: «НЕ», «ОЧЕНЬ», «БОЛЕЕ-МЕНЕЕ». Характер терм задается синтаксическимиправилами, а смысл – семантическими правилами.
База правил
База правил, иногда называемая лингвистической моделью, представляет собой множество нечетких правилR k , k 1,..., N , вида (для случая нескольких выходов):
RK : IF x1 это A1K AND,...., AND xn это AnK ,
THEN y1 это B1K AND y2 это B2K AND,..., AND ym это BmK ,
74
где AK X |
i |
R, i 1,..., n ; |
x |
, x |
2 |
… x |
n |
– входные переменные лин- |
||||||
i |
|
|
|
1 |
|
|
|
|
|
|
|
|||
гвистической модели; |
BK Y |
j |
R, |
j 1,..., N.; y |
,.. y |
m |
– выходные пе- |
|||||||
|
|
|
j |
|
|
|
|
|
|
1 |
|
|
ременные лингвистической модели.
Примем, что выходные переменные y1 ,…, ym взаимно независимы,
а также входные и выходные переменные могут принимать как лингвистические переменные: «малый», «средний» и «большой», так и числовые значения.
При проектировании модулей нечеткого управления следует оценивать достаточность количества нечетких правил, их непротиворечивость и наличие корреляции между отдельными правилами.
Блок нечеткого вывода
Допустим, что на вход блока выработки решения подано нечеткое множество A X X1 X 2 .... X n . На выходе этого блока также
появится соответствующее одно нечеткое множество B . Случай, когда выходов несколько из рассмотрения, опущен.
Пример 1.24. Рассмотрим вариант математического описания нечеткого регулятора, где нечеткая импликация выполнена с помощью расширения Заде, а фаззификация – на синглетонной базе.
Рассмотрим модуль нечеткого управления с базой правил:
R1 : IF x1 |
это A11 AND x2 |
это A21 THEN y это B1 , |
R 2 : IF x1 |
это A12 AND x2 |
это A22 THEN y это B 2 . |
На его вход подан сигнал X x1 , x2 T . После выполнения фаззификации на синглетонной базе на входе блока выработки решения получаем нечеткие подмножества A1 и A2 с функциями принадлежности
A1 x1 x1 x1 ,
A2 x2 x2 x2 .
Обозначим выходной сигнал модуля нечеткого управления символом y .
Тогда функция принадлежности нечеткого множества имеет вид
75
|
|
|
|
|
|
|
K y supx,x |
min A1 A2 |
x1, x2 , RK x1, x2 , y . |
B |
||||
2 |
|
|
В качестве T -нормы применим правило (расширение) Заде. Кроме того, допустим, что
A1 A2 x1 , x 2 min A1 x1 , A2 x2 min x1 x1 , x2 x2 .
В этом случае
|
|
K y sup min x1 x1 , x2 |
x2 |
, RK x1 ,x2 |
, y |
RK x1,x2 , y . |
B |
||||||
|
|
x,x2 |
|
|
|
|
В качестве выбранного варианта нечеткой импликации
RK x1, x2 , y A1K A2K BK x1, x2 , y
использована операция минимум
A1K A2K BK x1 , x 2 , y min A1 A2 x1 , x 22 , BK y ,
где
A1K A2K x1 , x 2 min A1 x1 , A2K x2 .
В результате
BK y min min A1K x1 , A2K x2 , BK ymin A1K x1 , A2K x2 , BK y .
Окончательное выражение математического описания нечеткого регулятора имеет вид
μ |
B |
y max |
|
min μ |
K x |
,μ |
K x |
2 |
,μ |
B |
K y . |
|
|
K 1,2 |
|
A1 |
1 |
|
A2 |
|
|
Пример 1.25. Рассмотрим вариант математического описания нечеткого регулятора, где нечеткая импликация выполнена по Мамдани, а фаззификация выполнена на несинглетонной базе.
Пусть модуль нечеткого управления имеет базу правил
R1 : IF x1 |
это A11 AND x2 это A21 THEN y это B1 , |
R2 : IF x1 |
это A12 AND x2 это A22 THEN y это B2 . |
76
На его вход поданы числовые входные сигналыx1 и x2 . После фаззификации на входе блока выработки решения появляются нечеткие
подмножества A1 и |
A2 с функциями принадлежности |
A1 x1 и |
|
|
1 |
A1 x2 . В данном примере фаззификация выполняется на несингле- |
||
2 |
|
|
тонной базе. |
|
|
Обозначим выходной сигнал модуля нечеткого управления симво- |
||
лом y . |
|
|
Тогда функция принадлежности нечеткого подмножества имеет |
||
вид |
|
|
BK y supx,x |
|
|
min A1 A2 |
x1, x2 , RK x1 ,x2 , y . |
|
2 |
|
|
Вкачестве T -нормы примем правило Мамдани
A1 A2 x1,x2 min A1 x1 , A2 x2 .
Вэтом случае
|
|
K y sup |
|
min min |
|
|
1 |
x |
, |
1 |
x |
|
|
|
, |
|
K x ,x |
, y |
|
|
K x ,x , y . |
|
|
|
|
||||||||||||||||||
|
B |
x,x |
|
|
A1 |
1 |
|
A2 |
|
2 |
|
|
|
R |
1 2 |
|
|
R |
1 2 |
||
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
В качестве нечеткой импликации
RK x1 , x 2 , y A1K A2K BK x1 , x 2 , y
используем операцию минимум
A1K A2K BK x1,x2 ,y min A1 A2 x1 , x 22 , BK y .
Кроме того,
A1K A2K x1 , x 2 min A1 x1 , A2K x2 .
В результате
|
|
K y min |
|
min |
|
K x |
|
, |
K x |
|
, |
|
K y |
|||||
|
|
|
||||||||||||||||
|
B |
|
|
|
|
|
A1 |
1 |
|
|
A2 |
2 |
|
|
B |
. |
||
min |
K x1 , |
K x2 |
, |
B |
K y . |
|
|
|
|
|
||||||||
|
|
|
A1 |
|
|
A2 |
|
|
|
|
|
|
|
|
|
|
77
Окончательное выражение математического описания нечеткого регулятора с использованием алгоритма Мамдани имеет вид
|
B |
y max |
|
min |
K x |
, |
K x |
2 |
, |
B |
K y . |
|
|
K 1,2 |
|
A1 |
1 |
|
A2 |
|
|
Иллюстрация графической интерпретации нечеткого вывода по Мамдани, где фаззификация выполнена на несинглетонной базе [5], приведена на рис. 1.8.
Рассмотрим алгоритм реализации нечеткого управления в системах реального времени.
Синтез нечеткого регулятора заключается в выборе функций принадлежности терм-множеств лингвистических переменных, алгоритмов нечеткого вывода, оптимизации основных параметров регулятора (диапазонов изменения лингвистических переменных, формы и параметров функций принадлежности) путем минимизации выбранного критерия качества в замкнутой системе автоматического регулирования. Искусство проектировщика состоит в том, чтобы выбрать для каждой конкретной фаззи-системы автоматического управления не только функции принадлежности (сколько и каких) в нечетком регуляторе, но и тип регулятора, т.е. решить вопрос, какие составляющие ошибки, кроме самой ошибки, подавать на вход регулятора, а также требования по быстродействию в системах реального времени.
Рассмотрим поэтапно алгоритм проектирования нечеткого регулятора, который включает этапы фаззификации, нечеткого вывода и дефаззификации для управления регулируемым объектом.
1. Формирование проекций входных векторов после фаззификации нечеткого регулятора.
Для формирования нечеткого множества на синглетонной базе используется унимодальная функция принадлежности (синглетон), который жестко связан с входной переменной. Для случая двух лингвистических переменных зададимся терм-множеством лингвистических переменных (рис. 1.30): отклонение частоты вращения свободной турбины и ее производной.
В процессе фаззификации терм-множества отклонения частоты вращения свободной турбины на выходе формируется нечеткое множество из степеней принадлежности вида
78
Рис. 1.29. Терм-множество фаззификатора нечеткого регулятора, например частоты: а – терм-множество по отклонению частоты вращения турбины;
б– терм-множество по производной частоты вращения турбины
Впроцессе фаззификации терм-множества отклонения частоты вращения свободной турбины на выходе формируется нечеткое множество из степеней принадлежности вида
A11 x1 x11 x1 ,
A12 x1 x12 x1 ,
A13 x1 x13 x1 ,
A14 x1 x14 x1 ,
A15 x1 x15 x1 .
Данное нечеткое множество можно трактовать как проекции входного вектораx1 (например, отклонения частоты вращения свободной
турбины).
В процессе фаззификации терм-множества производной входного вектора (например, производная отклонения частоты вращения свободной турбины) на выходе формируется нечеткое множество степеней принадлежности вида
79
A12 x2 x12 x2 ,
A22 x2 x22 x2 ,
A23 x2 x23 x2 ,
A24 x2 x24 x2 ,
A25 x2 x25 x2 .
Данное нечеткое множество можно трактовать как производные проекций входного вектора x2 .
2. Нечеткая импликация.
После определения нечетких множеств по входным переменным необходимо формировать матрицу решений, используя продуктивные правила, составленные экспертом [6]. Ввиду сложности определения продуктивных правил предлагается следующая методика формирования матрицы решений:
– необходимо задать отдельно терм-множества входных лингвистических переменных:
A1 |
|
A2 |
A3 |
|
A4 |
|
A5 |
1 |
|
1 |
1 |
|
1 |
|
1 |
и |
|
|
|
|
|
|
|
|
|
|
|
|
|||
A1 |
|
A2 |
A3 |
|
A4 |
|
A5 |
2 |
|
2 |
2 |
|
2 |
|
2 |
– необходимо |
задать |
терм-множество |
выхода, |
например |
( B1, B2 ,B3 , B4 ,B5 ) ;
–расположить терм B3 лингвистической переменной выхода по диагонали матрицы;
–расположить термы B1 , B2 , B4 , B5 лингвистической переменной выхода матрицы решений 5 5, как показано на рис. 1.30.
80