showrule

Отобразите системные правила нечеткого вывода

Описание

пример

showrule(fis) отображает правила в системе нечеткого вывода fis.

пример

showrule(fis,Name,Value) отображает правила с помощью опций, заданных одним или несколькими Name,Value аргументы в виде пар.

Примеры

свернуть все

Загрузите систему нечеткого вывода.

fis = readfis('tipper');

Отображение правил с помощью лингвистических выражений.

showrule(fis)
ans = 3x78 char array
    '1. If (service is poor) or (food is rancid) then (tip is cheap) (1)           '
    '2. If (service is good) then (tip is average) (1)                             '
    '3. If (service is excellent) or (food is delicious) then (tip is generous) (1)'

Отображение правил с помощью символьных выражений.

showrule(fis,'Format','symbolic')
ans = 3x65 char array
    '1. (service==poor) | (food==rancid) => (tip=cheap) (1)           '
    '2. (service==good) => (tip=average) (1)                          '
    '3. (service==excellent) | (food==delicious) => (tip=generous) (1)'

Отображение правил с помощью индексов функций принадлежности.

showrule(fis,'Format','indexed')
ans = 3x15 char array
    '1 1, 1 (1) : 2 '
    '2 0, 2 (1) : 1 '
    '3 2, 3 (1) : 2 '

Загрузите систему нечеткого вывода.

fis = readfis('tipper');

Отображение первого и третьего правил.

showrule(fis,'RuleIndex',[1 3])
ans = 2x78 char array
    '1. If (service is poor) or (food is rancid) then (tip is cheap) (1)           '
    '3. If (service is excellent) or (food is delicious) then (tip is generous) (1)'

Загрузите систему нечеткого вывода.

fis = readfis('tipper');

Отображение правил на немецком языке с помощью 'deutsch' язык.

showrule(fis,'Language','deutsch')
ans = 3x85 char array
    '1. Wenn (service ist poor) oder (food ist rancid) dann (tip ist cheap) (1)           '
    '2. Wenn (service ist good) dann (tip ist average) (1)                                '
    '3. Wenn (service ist excellent) oder (food ist delicious) dann (tip ist generous) (1)'

Входные параметры

свернуть все

Система нечеткого вывода, заданная как одно из следующего:

  • mamfis объект - система нечеткого вывода Mamdani

  • sugfis объект - система нечеткого вывода Sugeno

  • mamfistype2 объект - Type-2 системы нечеткого вывода Мамдани

  • sugfistype2 объект - Type-2 системы нечеткого вывода Sugeno

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'Format','symbolic' устанавливает формат отображения правил, чтобы использовать символические выражения нейтрального языка.

Правила для отображения, заданные как разделенная разделенными запятой парами, состоящая из 'RuleIndex' и одно из следующих:

  • Положительное целое число - индекс одного правила для отображения

  • Вектор положительных целых чисел - Индексы нескольких правил для отображения

Вектор по умолчанию включает индексы для всех правил в fis.

Формат правила, заданный как разделенная разделенными запятой парами, состоящая из 'Format' и одно из следующих:

  • 'verbose' - Использовать лингвистические выражения.

    'If (service is poor) or (food is rancid) then (tip is cheap) (1)'

    Вес правила отображается в круглых скобках в конце правила.

    Язык правил можно задать с помощью Language опция.

  • 'symbolic' - Используйте символические выражения нейтрального языка.

    '(service==poor) | (food==rancid) => (tip=cheap) (1)'

    В символьных правилах используются следующие символы.

    Компонент правилаСимвол
    И&
    ИЛИ|
    IS (в предшествующем)==
    IS (в последующем)=
    НЕ ЯВЛЯЕТСЯ~=
    Значение (тогда)=>

    Вес правила отображается в круглых скобках в конце правила.

  • 'indexed' - Используйте индексы входной и выходной функции принадлежности (MF) и целочисленное представление нечетких операторов.

    Индексированные правила отображаются в следующем формате:

    '<input MFs>, <output MFs>, (<weight>) : <logical operator - 1 (AND), 2 (OR)>'

    Для примера:

    '1 1, 1 (1) : 2'

    Чтобы указать операции НЕ для входных и выходных функций принадлежности, программное обеспечение использует отрицательные индексы. Например, чтобы указать «не вторую функцию принадлежности», программное обеспечение использует -2.

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

Язык правил для 'verbose' формат, заданный как разделенная разделенными запятой парами, состоящая из 'Language' и одно из следующих:

  • 'english' - Отображать правила на английском языке.

    'If (service is poor) or (food is rancid) then (tip is cheap) (1)'
  • 'francais' - Отображать правила на французском языке.

    'Si (service est poor) ou (food est rancid) alors (tip est cheap) (1)'
  • 'deutsch' - Отображать правила на немецком языке.

    'Wenn (service ist poor) oder (food ist rancid) dann (tip ist cheap) (1)'

Программа отображает правила FIS с помощью следующих ключевых слов.

Компонент правилаАнглийский языкФранцузский языкНемецкий язык
Начало предшествующего шагаifsiwenn
Иandetund
ИЛИorouoder
Начало последующего (подразумеваемое)thenalorsdann
Являетсяisestist
НЕ ЯВЛЯЕТСЯis notn''est_pasist nicht

Вопросы совместимости

расширить все

Предупреждает, начиная с R2019b

См. также

|

Представлено до R2006a