Разработка сложной системы нечеткого вывода (FIS) с большим количеством входов и функций членства (MF) является сложной проблемой из-за большого количества параметров и правил MF. Для разработки такой FIS можно использовать подход, основанный на данных, для изучения правил и настройки параметров FIS. Для настройки нечеткой системы используйте tunefis и сконфигурировать процесс настройки с помощью tunefisOptions объект.
С помощью программного обеспечения Fuzzy Logic Toolbox™ можно настраивать FIS типа 1 и типа 2, а также деревья FIS. Для примеров посмотрите, Предсказывают Хаотический Временной ряд Используя Тип 2 FIS и Мелодию Дерево FIS для Прогноза Расхода бензина.
В процессе обучения алгоритм оптимизации формирует возможные наборы параметров FIS. Нечеткая система обновляется с каждым набором параметров и затем оценивается с использованием входных обучающих данных.
При наличии вводимых/выводимых данных обучения затраты для каждого решения вычисляются на основе разницы между выводом нечеткой системы и ожидаемыми выходными значениями из данных обучения. Пример использования этого подхода см. в разделе Tune Mamdani Fuzzy Inverence System.

При отсутствии вводимых/выводимых учебных данных можно указать пользовательскую модель и функцию затрат для анализа наборов параметров FIS-кандидатов. Функция измерения затрат посылает входной сигнал в нечеткую систему и получает оцененный выходной сигнал. Стоимость основана на разнице между оцененным результатом и результатом, ожидаемым моделью. Дополнительные сведения и пример использования этого подхода см. в разделе Настройка нечеткой системы предотвращения препятствий с использованием пользовательской функции затрат.

Дополнительные сведения о настройке нечетких систем см. в следующих примерах.
В следующей таблице показаны методы настройки, поддерживаемые tunefis функция. Эти методы настройки находят оптимальные параметры FIS
| Метод | Описание | Дополнительные сведения |
|---|---|---|
| Генетический алгоритм | Популяционный метод глобальной оптимизации, который ищет случайным образом по мутации и кроссоверу среди членов популяции | Что такое генетический алгоритм? (Панель инструментов глобальной оптимизации) |
| Оптимизация роя частиц | Метод глобальной оптимизации на основе населения, в котором члены населения выполняют шаги по всему региону поиска | Что такое оптимизация роя частиц? (Панель инструментов глобальной оптимизации) |
| Поиск шаблона | Метод локальной оптимизации прямого поиска, который ищет набор точек вблизи текущей точки, чтобы найти новый оптимум | Что такое прямой поиск? (Панель инструментов глобальной оптимизации) |
| Имитация отжига | Метод локальной оптимизации, моделирующий процесс нагрева и охлаждения, который находит новую оптимальную точку вблизи текущей точки | Что такое симулированный отжиг? (Панель инструментов глобальной оптимизации) |
| Адаптивный нейро-нечеткий вывод | Алгоритм обратного распространения, настраивающий параметры функции членства. Кроме того, можно использовать anfis функция. | Нейро-адаптивное обучение и ANFIS |
Для первых четырех методов настройки требуется программное обеспечение Global Optimization Toolbox.
Методы глобальной оптимизации, такие как генетические алгоритмы и оптимизация роя частиц, работают лучше для больших диапазонов настройки параметров. Эти алгоритмы полезны как для этапов обучения правилам, так и для этапов настройки параметров оптимизации FIS.
С другой стороны, методы локального поиска, такие как поиск шаблона и смоделированный отжиг, работают лучше для небольших диапазонов параметров. Если FIS генерируется на основе данных обучения с использованием genfis или база правил уже добавлена в FIS с использованием обучающих данных, то эти алгоритмы могут дать более быструю сходимость по сравнению с методами глобальной оптимизации.
Переоборудование данных является обычной проблемой при оптимизации параметров FIS. Когда происходит переоборудование, настроенная FIS дает оптимизированные результаты для набора учебных данных, но плохо работает для набора тестовых данных. Чтобы преодолеть проблему переполнения данных, процесс настройки может прекратиться на ранней стадии на основе непредвзятой оценки модели с использованием отдельного набора данных проверки.
При настройке с помощью tunefis функция, вы можете предотвратить переоборудование с помощью k-кратной перекрестной проверки. Дополнительные сведения и пример см. в разделе Оптимизация параметров FIS с перекрестной проверкой k-Fold.
Чтобы повысить производительность настроенных нечетких систем, ознакомьтесь со следующими рекомендациями.
Используйте несколько этапов процесса настройки. Например, сначала изучите правила нечеткой системы, а затем настройте входные/выходные параметры MF, используя изученную базу правил.
Увеличение числа итераций на этапах обучения правилам и настройки параметров. Это увеличивает продолжительность процесса оптимизации, а также может увеличить ошибку проверки из-за избыточной настройки системных параметров с данными обучения. Чтобы избежать переоборудования, обучайте систему с помощью k-кратной перекрестной проверки.
Изменение метода кластеризации, используемого genfis. В зависимости от метода кластеризации создаваемые правила могут отличаться по представлению обучающих данных. Следовательно, использование различных методов кластеризации может влиять на производительность tunefis.
Изменение свойств FIS. Попробуйте изменить такие свойства, как тип FIS, количество входов, количество входов/выходов MF, типы MF и количество правил. Система Sugeno имеет меньшее количество выходных параметров MF (предполагая постоянные MF) и более быструю дефузификацию. Поэтому для нечетких систем с большим количеством входов FIS Sugeno обычно сходится быстрее, чем FIS Mamdani. Небольшое количество MF и правил сокращает количество настраиваемых параметров, обеспечивая более быстрый процесс настройки. Кроме того, большое количество правил может привести к перевыполнению учебных данных.
Изменение настраиваемых параметров для MF и правил. Например, можно настроить опору треугольной MF без изменения ее положения пика. Это сокращает количество настраиваемых параметров и позволяет ускорить процесс настройки для конкретных приложений. Для правил можно исключить нулевые индексы MF, установив AllowEmpty настраиваемое значение false, что уменьшает общее количество правил на этапе обучения.
Чтобы улучшить результаты настройки нечетких деревьев, рассмотрим следующие рекомендации.
Можно отдельно настроить параметры каждого FIS в дереве FIS. Затем можно настроить все нечеткие системы вместе, чтобы обобщить значения параметров.
Измените свойства дерева FIS, такие как количество нечетких систем и соединения между нечеткими системами.
Используйте различные ранги и группировки входов в дерево FIS. Дополнительные сведения о создании деревьев FIS см. в разделе Нечеткие деревья.
genfis | getTunableSettings | tunefis