Лекция: Метод MaMdani
Алгоритм Мамдани. Отметим вначале, что используемый в различного рода экспертных и управляющих системах механизм нечетких выводов в своей основе имеет базу знаний, формируемую специалистами предметной области в виде совокупности нечетких предикатных правил вида:
П1: если x есть A1, тогда z есть B1,
П2: если x есть A2, тогда z есть B2,
......... .
Пn: если x есть An, тогда z есть Bn,
где x — входная переменная (имя для известных значений данных), z — переменная вывода (имя для значения данных, которое будет вычислено); Аi и Вi — нечеткие множества, определенные соответственно на X и Z с помощью функций принадлежности и (z).
Пример подобного правила:
если x — низко, то z — высоко.
Механизм нечеткого вывода при аппроксимации функции z(x) можно представить в виде:
Предпосылка:
П1: если x есть A1, тогда z есть B1,
П2: если x есть A2, тогда z есть B2,
......... .
Пn: если x есть An, тогда z есть Bn.
Факт: x есть A
---------------------------------------------
Следствие: z есть B
В рассматриваемой ситуации данный вывод в форме алгоритма Мамдани математически может быть описан следующим образом:
1. Введение нечеткости (fuzzification): для заданного (четкого) значения аргумента x = x0 находятся степени истинности для предпосылок каждого правила ai = (x0).
2. Нечеткий вывод по каждому правилу: находятся «усеченные» функции принадлежности для переменной вывода:
= (ai, ).
3. Композиция: с использование операции МАКСИМУМ (max) производится объединение найденных усеченных функций, что приводит к получению итогового нечеткого подмножества для переменной вывода с функцией принадлежности
(z) = = [ ].
4. Наконец, приведение к четкости (defuzzification) — для нахождения z0 = F(x0) — обычно проводится центроидным методом: четкое значение выходной переменной определяется как центр тяжести для кривой, т.е.
,
где W — область определения