Fuzzy Logic Controller

Оцените нечеткую систему вывода

  • Библиотека:
  • Fuzzy Logic Toolbox

Описание

Блок Fuzzy Logic Controller реализует нечеткую систему вывода (FIS) в Simulink®. Вы задаете FIS, чтобы оценить использование параметра FIS name.

Для получения дополнительной информации о нечетком выводе смотрите Нечеткий Процесс Вывода.

Чтобы отобразить нечеткий процесс вывода в Средстве просмотра Правила в процессе моделирования, используйте блок Fuzzy Logic Controller with Ruleviewer.

Порты

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

развернуть все

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

Вывод

развернуть все

Для FIS одно выхода выход является скалярным сигналом. Для мультивыхода FIS выход является векторным сигналом. Чтобы разделить систему выходные параметры в скалярные сигналы, используйте блок Demux.

Входные значения Fuzzified, полученные путем оценки входных функций принадлежности каждого правила в текущих входных значениях.

Для типа 1 FIS, fi NR-by-NU матричный сигнал, где NR является количеством правил FIS. Элемент (i, j) fi значение входной функции принадлежности для j th вход в i th правило.

Для типа 2 FIS, fi NR (2*NU) матричный сигнал. Первые столбцы NU содержат fuzzified значения верхней функции принадлежности для каждого правила, и последние столбцы NU содержат fuzzified значения от более низких функций принадлежности.

Для получения дополнительной информации о fuzzifying входных значениях см. Входные параметры Fuzzify.

Зависимости

Чтобы включить этот порт, выберите параметр Fuzzified inputs (fi).

Управляйте сильными местами увольнения, полученными путем оценки антецедента каждого правила; то есть, применяя нечеткий оператор к значениям входных параметров fuzzified.

Для типа 1 FIS, rfs сигнал вектор-столбца длины NR, где NR является количеством правил и элементом, i является силой увольнения i th правило.

Для типа 2 FIS, rfs NR-by-2 матричный сигнал. Первый столбец содержит правило, запускающее сильные места, сгенерированные с помощью верхних функций принадлежности, и второй столбец содержит правило, запускающее сильные места, сгенерированные с помощью более низких функций принадлежности.

Для получения дополнительной информации о применении нечетких операторов смотрите, Применяют Нечеткий Оператор.

Зависимости

Чтобы включить этот порт, выберите параметр Rule firing strengths (rfs).

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

Для типа 1 Mamdani FIS, ro NS (NR NY) матричный сигнал, где NR является количеством правил, NY является количеством выходных параметров, и NS является количеством точек выборки, используемых в оценке областей значений выходной переменной. Каждый столбец ro содержит выходное нечеткое множество для одного правила. Первые столбцы NR содержат правило выходные параметры для первой выходной переменной, следующие столбцы NR соответствуют второй выходной переменной и так далее.

Для типа 2 Mamdani FIS, ro NS (2*NR*NY) матричный сигнал. Первый NR *NY столбцы содержит правило выходные параметры, сгенерированные с помощью верхних функций принадлежности, и последний NR *NY столбцы содержит правило выходные параметры, сгенерированные с помощью более низких функций принадлежности.

Для типа 1 система Sugeno каждое правило выход является скалярным значением. В этом случае, ro NR-by-NY матричный сигнал. Элемент (j, k) ro значение k th выходная переменная для j th правило.

Для типа 2 система Sugeno, ro NR (3*NY) массив. Первые столбцы NY содержат уровни на выходе правила. Следующие столбцы NY содержат соответствующее правило, запускающее сильные места, сгенерированные с помощью верхних функций принадлежности. Последние столбцы NY содержат правило, запускающее сильные места, сгенерированные с помощью более низких функций принадлежности. Например, в системе с тремя выходами, столбцы 4 и 7 содержат сильные места увольнения для уровней на выходе в столбце 1.

Для получения дополнительной информации о нечетком значении смотрите, Применяют Метод Значения.

Зависимости

  • Чтобы включить этот порт, выберите параметр Rule outputs (ro).

  • Чтобы задать NS, используйте параметр Number of samples for output discretization.

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

Для типа 1 Mamdani нечеткая система вывода итоговым результатом для каждой выходной переменной является нечеткое множество. В этом случае, ao как NS-by-NY матричный сигнал, где NY является количеством выходных параметров, и NS является количеством точек выборки, используемых в оценке областей значений выходной переменной. Каждый столбец ao содержит совокупное нечеткое множество для одной выходной переменной.

Для типа 2 Mamdani FIS итоговым результатом для каждой выходной переменной является нечеткое множество. В этом случае, ao как NS (2*NY) матричный сигнал. Первые столбцы NY содержат агрегированные выходные параметры, сгенерированные с помощью верхних функций принадлежности, и последние столбцы NY содержат агрегированные выходные параметры, сгенерированные с помощью более низких функций принадлежности.

Для типа 1 система Sugeno итоговым результатом для каждой выходной переменной является скалярное значение. В этом случае, ao вектор-строка из длины NY, где элемент k является суммой правила выходные параметры для k th выходная переменная.

Для типа 2 система Sugeno, ao NR (3*NY) массив. aggregatedOut содержит те же данные как ro со столбцами, отсортированными на основе уровней на выходе. Например, в системе с тремя выходами, когда уровни на выходе в столбце 1 сортируются, соответствующие сильные места увольнения в столбцах 4 и 7 настроены соответственно.

Для получения дополнительной информации о нечеткой агрегации смотрите Агрегат Все Выходные параметры.

Зависимости

  • Чтобы включить этот порт, выберите параметр Aggregated outputs (ao).

  • Чтобы задать NS, используйте параметр Number of samples for output discretization.

Параметры

развернуть все

Общий

Нечеткая система вывода, чтобы оценить, заданный как одно из следующего:

  • mamfis или sugfis объект — Задает имя объекта FIS типа 1 в рабочей области MATLAB®.

  • mamfistype2 или sugfistype2 объект — Задает имя объекта FIS типа 2 в рабочем пространстве MATLAB.

  • Имя файла — Задает имя .fis файл в текущей рабочей папке или на пути MATLAB. Включая расширение файла в имени файла является дополнительным.

    Сохранить тип 1 нечеткая система вывода в .fis файл:

    • В Fuzzy Logic Designer или Neuro-Fuzzy Designer, выберите File> Export> To File.

    • В командной строке используйте writeFIS.

    Сохранить тип 2 нечеткая система вывода в .fis файл, используйте wrtieFIS.

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

Чтобы уменьшать использование памяти при оценке Mamdani FIS, задайте более низкое количество выборок. Выполнение так жертвует точностью defuzzified выходного значения. Определение небольшого числа выборок может сделать область вывода для нуля defuzzification. В этом случае defuzzified выходное значение является средней точкой области значений выходной переменной.

Примечание

Блок игнорирует этот параметр при оценке Sugeno FIS.

Тип данных сигнала, заданный как одно из следующего:

  • double — Сигналы с двойной точностью

  • single — Сигналы с одинарной точностью

  • fixdt(1,16,0) — Фиксированная точка сигнализирует с масштабированием двоичной точки

  • fixdt(1,16,2^0,0) — Фиксированная точка сигнализирует с масштабированием смещения и наклоном

  • Выражение — Выражение, которое оценивает к одному из этих типов данных

Для типов данных с фиксированной точкой можно сконфигурировать размер слова со знаком и масштабные коэффициенты с помощью Data Type Assistant. Для получения дополнительной информации смотрите Определение Типа данных с фиксированной точкой (Simulink).

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

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

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

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

Режим Simulation, заданный как одно из следующего:

  • Interpreted execution — Симулируйте нечеткие системы с помощью предварительно скомпилированных файлов MEX в single и double типы данных. Используя эту опцию уменьшает начальное время компиляции модели.

  • Code generation — Симулируйте нечеткую систему без предварительно скомпилированных файлов MEX. Используйте эту опцию при симуляции нечетких систем для приложений генерации кода.

Для типов данных с фиксированной точкой блок Fuzzy Logic Controller всегда симулирует использование Code generation режим.

Диагностика

Диагностическое поведение сообщения, когда вход вне диапазона, указанного как одно из следующего:

  • warning — Сообщите о диагностическом сообщении как о предупреждении.

  • error — Сообщите о диагностическом сообщении как об ошибке.

  • none — Не сообщайте о диагностическом сообщении.

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

Зависимости

  • Диагностические сообщения предоставлены только, когда параметром Simulate using является Interpreted execution.

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

  • warning — Сообщите о диагностическом сообщении как о предупреждении.

  • error — Сообщите о диагностическом сообщении как об ошибке.

  • none — Не сообщайте о диагностическом сообщении.

Когда No rule fired является warning или none и никакой огонь правил для данного выхода, defuzzified выходное значение установлено в свое среднее значение области значений.

Зависимости

  • Диагностические сообщения предоставлены только, когда параметром Simulate using является Interpreted execution.

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

  • warning — Сообщите о диагностическом сообщении как о предупреждении.

  • error — Сообщите о диагностическом сообщении как об ошибке.

  • none — Не сообщайте о диагностическом сообщении.

Когда Empty output fuzzy set является warning или none и выходное нечеткое множество пусто, defuzzified значение для соответствующего выхода установлено к его среднему значению области значений.

Зависимости

  • Это диагностическое сообщение применяется к системам Mamdani только.

  • Диагностические сообщения предоставлены только, когда параметром Simulate using является Interpreted execution.

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

развернуть все

Предупреждает запуск в R2019b

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Генерация кода PLC
Сгенерируйте код Структурированного текста с помощью Simulink® PLC Coder™.

Преобразование фиксированной точки
Спроектируйте и симулируйте системы фиксированной точки с помощью Fixed-Point Designer™.

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