3.11.2. Контроллер Мамдани.

Мы рассматриваем систему с n входами с доменами и одной управляющей переменной y с доменом Y. Чтобы создать подходящие правила для базы данных (БД) нечеткого контроллера, множества и Y должны быть нечетко разделены, то есть на множестве .

Обычно множества определяются интервалом действительных чисел, а сами нечеткие множества определяются треугольными функциями

где - наибольшее значение х; .

На границах интервала [a,b]:

Такой вид функции выбран потому, что вычисления с НК значительно упрощаются при использовании кусочно-линейной функции. На рис.1 показано деление 7 множеств, которые ассоциированы с лингвистическими термами: большое отрицательное ( NL = Negative Large); среднее отрицательное (NM = Negative Mean); отрицательное малое (NS = Negative Small); приблизительно нуль (Z = Zero); положительное малое (PS = Positive Small); положительное среднее (PM = Positive Mean); большое положительное (PL = Positive Large).

Рис.1

База правил состоит из правил, которые имеют следующую форму:

,

где - лингвистические термы, определяемые нечеткими множествами , соответствующими нечеткому разбиению множеств и Y соответственно

.

Пример. Задача балансирования перевернутого маятника. Мы используем каждое из множеств и Y. Нечеткое деление, как показано на рис.1. Множества являются доменами угла , угловой скорости и силы F, вынуждающей маятник стремиться к вертикальному состоянию.

В качестве базы правил используются 19 правил, представленных в таблице 2, где, например, вторая строка читается так: если есть приблизительно нуль (Z) и есть малое отрицательное (NS), то F есть положительное среднее (PM). Так задается процесс фаззификации.

NL

NM

NS

Z

PS

PM

PL

NL

   

PS

PL

     

NM

     

PM

     

NS

NM

 

NS

PS

     

Z

NL

NM

NS

Z

PS

PM

PL

PS

     

NS

PS

 

PM

PM

     

NM

     

PL

     

NL

NS

   

Сначала процесс логического решения вычисляет каждое правило независимо. На этом этапе мы вычисляем значения , где , то есть с какой степенью переменная соответствует лингвистическому терму, ассоциированному с нечетким множеством . Т.е. должны соответствовать термам ; значения () должны сочетаться. Это достигается определением

.

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

Математически это можно записать следующим образом:

.

После того, как все правила будут посчитаны, все НМ надо объединить в одно НМ, используя процедуру взятия максимума (т.е. операцию объединения). В результате процесса логического решения получаем следующее нечеткое множество:

.

На последнем этапе это НМ должно быть преобразовано в четкие значения с помощью процесса “дефаззификации”. Это можно сделать одним из следующих методов:

  1. Метод максимума критерия (max criterion method)

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

  2. Метод среднего значения максимума (mean of maximum method = MOM)

    Требуется, чтобы множество Y удовлетворяло следующему критерию

    (1)

    а) Если множество - конечное, то управляющее действие вычисляется по формуле

    (2)

    б) Если множество выходов не конечно (непрерывно), то

    (3)

  3. Метод центра тяжести области (the center of area method = COA)

Пример. Рассмотрим нечеткий контроллер, который управляет автомобилем.

Управление заключается в том, чтобы избежать столкновений с препятствиями. Если препятствие возникло впереди, то нечеткое множество, изображенное на рисунке 3, определяется процедурой логического решения, управляющее действие которой может быть интерпретировано как повернуть “влево или вправо”. Методы СОА и МОМ допускают значение нуль в качестве управляющего действия, то есть машина движется вперед, пока не произойдет столкновение с препятствием (это существенный недостаток!).

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

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

Рис.4