Синтез экспертных систем

1-описание переменных (вход/выход)
2-атрибуты и правила
3-пользовательский интерфейс
С.Д.Штовба

“Введение в теорию нечетких множеств и нечеткую логику”

1.7. Нечеткая логика

 

1.7.5. Нечеткий логический вывод

 

1.7.5.1. Композиционное правило нечеткого вывода Заде

 

Обычный, булевый логический вывод базируется на следующих тавтологиях:

 

 

 

  • модус поненс: ;
  • модус толленс: ;
  • силлогизм: ;
  • контрапозиция: .

 

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

 

Посылка A есть истинно
Импликация Если A, то B
Логический вывод B есть истинно

 

Модус поненс выводит заключение “B есть истинно”, если известно, что “A есть истинно” и существует правило “Если A, то B” (A и B – четкие логические утверждения). Однако, если прецедент отсутствует, то модус поненс не сможет вывести никакого, даже приближенного заключения. Даже в случае, когда известно, что близкое к A утверждение A’ является истинным, модус поненс не может быть применен. Одним из возможных способов принятия решений при неопределенной информации является применение нечеткого логического вывода.

 

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

 

Основу нечеткого логического вывода составляет композиционное правило Заде.

 

Определение 48. Композиционное правило вывода Заде формулируется следующим образом: если известно нечеткое отношение  между входной (x) и выходной (y) переменными, то при нечетком значении входной переменной , нечеткое значения выходной переменной определяется так:

 

,

 

где  – максминая композиция.

 

Пример 12. Дано нечеткое правило “Если , то ” с нечеткими множествами: и . Определить значение выходной переменной , если .

 

В начале рассчитаем нечеткое отношение, соответствующее правилу “Если , то “, применяя в качестве t-нормы операцию нахождения минимума:

 

.

 

Теперь, по формуле  рассчитаем нечеткое значение выходной переменной:

 

.

1.7.5.2. Нечеткий логический вывод Мамдани

 

Нечеткий логический вывод по алгоритму Мамдани выполняется по нечеткой базе знаний:

 

 ,

 

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

 

 – функция принадлежности входа  нечеткому терму , т.е. .

 

 – функция принадлежности выхода  нечеткому терму , т.е. .

 

Степени принадлежности входного вектора  нечетким термам  из базы знаний рассчитывается следующим образом:

 

,

 

где  – операция из s-нормы (t-нормы), т.е. из множества реализаций логической операций ИЛИ (И). Наиболее часто используются следующие реализации: для операции ИЛИ – нахождение максимума и для операции И – нахождение минимума.

 

В результате получаем такое нечеткое множество , соответствующее входному вектору :

 

.

 

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

 

Для перехода от нечеткого множества, заданного на универсальном множестве нечетких термов  к нечеткому множеству на интервале  необходимо: 1) “срезать” функции принадлежности  на уровне ; 2) объединить (агрегировать) полученные нечеткие множества. Математически это записывается следующим образом:

 

,

 

где  – агрегирование нечетких множеств, которое наиболее часто реализуется операцией нахождения максимума.

 

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

 

,

 

где  – здесь символ интеграла.

 

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

 

Выполнение нечеткого логического вывода при значениях входной переменной  и  показано на рис. 18 и 19. Операция агрегирования осуществлялась нахождением максимума. Дефаззификация проводилась по методу центра тяжести. На рис. 20 показана зависимость “вход-выход”, соответствующая нечеткой базе знаний из примера 11. Участки графика, соответствующие первому, второму и третьему правилу базы знаний обозначены на рисунке #1, #2 и #3.

 

 

Рисункок 18 – Нечеткий логический вывод Мамдани при четком значении входной переменной

 

 

 

 

Рисункок 19 – Нечеткий логический вывод Мамдани при нечетком значении входной переменной

 

 

 

 

Рисункок 20 -Зависимость “вход-выход” для нечеткой базы знаний из примера 11

1.7.5.3. Нечеткий логический вывод Сугено

 

Нечеткий логический вывод по алгоритму Сугено (иногда говорят алгоритм Такаги-Сугено) выполняется по нечеткой базе знаний:

 

 ,

 

где   – некоторые числа.

 

База знаний Сугено аналогична базе знаний Мамдани за исключением заключений правил , которые задаются не нечеткими термами, а линейной функцией от входов : . Правила в базе знаний Сугено являются своего рода переключателями с одного линейного закона “входы – выход” на другой, тоже линейный. Границы подобластей размытые, следовательно, одновременно могут выполняться несколько линейных законов, но с различными степенями. Степени принадлежности входного вектора  к значениям  рассчитывается следующим образом:

 

,

 

где  – операция из s-нормы (t-нормы), т.е. из множества реализаций логической операций ИЛИ (И). В нечетком логическом выводе Сугено наиболее часто используются следующие реализации треугольных норм: вероятностное ИЛИ как s-норма и произведение как t-норма.

 

В результате получаем такое нечеткое множество , соответствующее входному вектору :

 

.

 

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

 

Пример 14. Известна нечеткая база знаний:

 

Если x=низкий, то ;

 

Если x=высокий, то .

 

Функции принадлежности термов заданы следующими выражениям:

 

 и .

 

Необходимо выполнить нечеткий логический вывод при значении входной переменной .

 

Выполнение нечеткого логического вывода показано на рис. 21. Дефаззификация проводилась по методу центра тяжести (взвешенного среднего). На рис. 22 показана зависимость “вход-выход” для приведенной выше нечеткой базы знаний. Участки графика, соответствующие первому и второму правилу базы знаний обозначены на рисунке #1 и #2.

 

 

Рисункок 21 – Выполнение нечеткого логического вывода Сугено для примера 14

 

 

 

 

Рисункок 22 – Зависимость “вход-выход” для нечеткой базы знаний из примера 14

 

источник: http://matlab.exponenta.ru/fuzzylogic/book1/1_7_5_1.php