В текущей лекции рассмотрим первую часть этапов построения нечеткой системы (т.е. системы на базе теории нечётких множеств).
Для начала сформулируем некоторое определение.
Нечётким лингвистическим высказыванием (НЛВ) называются нечёткие высказывания следующих видов.
1. Высказывание «β есть α», где β – наименование лингвистической переменной (ЛП), а α – её значение, которому соответствует отдельный лингвистический терм из базового терм-множества Т лингвистической переменной β.
2. Высказывание «β есть Δα», где Δ – модификатор, соответствующий таким словам, как: «ОЧЕНЬ», «БОЛЕЕ ИЛИ МЕНЕЕ», «MHOГO БОЛЬШЕ» и дp., которые могут быть получены с использованием процедур G и М указанной лингвистической переменной.
Заметим, что на тему модификатором имеется теоретический материал:
А также интересное видео с хорошими примерами:
3. Составные высказывания, образованные из высказываний видов 1 и 2 и нечётких логических операций в форме связок: «И», «ИЛИ», «ЕСЛИ-ТО», «НЕ».
Заметим, что образованию сложных высказываний с использованием нечётких логических связок посвящена лекция, содержащая теоретические сведения:
А также имеется соответствующее видео:
Примеры нечётких лингвистических переменных:
1. Нечёткое лингвистическое высказывание «скорость автомобиля высокая» – нечёткая лингвистическая переменная первого вида, в рамках которого лингвистической переменной «скорость автомобиля» присваивается значение «высокая». При этом предполагается, что на универсальном множестве I переменной «скорость автомобиля» определен соответствующий лингвистический терм «высокая», который задается в форме функции принадлежности некоторого нечёткого множества.
2. Нечёткое лингвистическое высказывание второго вида «скорость автомобиля очень высокая» означает, что лингвистической переменной «скорость автомобиля» присваивается значение «высокая» с модификатором «ОЧЕНЬ», который изменяет значение cоответствующего лингвистического терма «высокая» на основе использования некоторой расчетной формулы, например, для операции концентрирования нечёткого множества для терма «высокая».
3. Нечёткое лингвистическое высказывание второго вида «скорость автомобиля более или менее высокая» означает, что лингвистической переменной «скорость автомобиля» присваивается значение «высокая» с модификатором «БОЛЕЕ ИЛИ МЕНЕЕ», который изменяет значение соответствующего лингвистического терма «высокая» на основе использования некоторой расчетной формулы, например, для операции растяжения нечёткого множества для терма «высокая».
ПЕРЕЧИСЛИМ шаги построения системы на базе теории нечётких множеств:
Шаг 1. Определение числа входных и выходных лингвистических переменных (ЛП), включая универсальные чёткие множества, характеризующие каждую ЛП.
Шаг 2. Определение числа термов для каждой ЛП, а также метода формирования функции принадлежности (ФП) для каждого терма каждой ЛП и, возможно, извлечение экспертных знаний для построения ФП.
Шаг 3. Выбор методов нечеткого логического вывода, включая метод фаззификации, непосредственной обработки нечеткой информации и метод дефаззификации.
Шаг 4. Построение ФП для каждого терма каждой ЛП (фаззификация).
Шаг 5. Формирование базы правил нечетких продукций (чаще всего включающей каждый терм каждой ЛП хотя бы один раз).
Шаг 6. Агрегирование подусловий в правилах нечетких продукций.
Шаг 7. Активизация подзаключений в правилах нечетких продукций.
Шаг 8. Аккумулирование заключений правил нечетких продукций.
Шаг 9. Дефаззификация, определяющая конечное действительное число, характеризующее решение задачи.
Последние этапы (с 6 по 9 шаги) рассмотрены в материале:
Здесь же мы рассмотрим первые шаги (с 1 по 5-ый).
Типовая структура системы на базе теории нечётких множеств (далее НЧС – нечеткая система) состоит из следующих трёх главных компонент:
- блок фаззификации (от слова fuzzy – нечеткий) (шаг 4) - осуществляет установление конкретных значений ФП, соответствующих каждому терму каждой ЛП.
- блок нечеткого логического вывода, содержащий базу правил нечетких продукций (шаги 5-8) - содержит базу правил нечётких продукций и механизм вывода, включающий в себя следующие подэтапы: агрегирование, активизация и аккумуляция.
- блок дефаззификации (шаг 9) - применяется для определения четкого решения или управляющего воздействия в ответ на результаты, полученные в блоке нечеткого логического вывода.
Шаг 1 и 2. Определение числа входных и выходных лингвистических переменных (ЛП) и их термов.
Замечание. К названиям самих ЛП или их термов, которые определяются в процессе извлечения знаний экспертов, особых требований не предъявляется, однако удобнее, если названия термов одной ЛП не совпадают с названиями термов другой.
Эта рекомендация особенно себя оправдывает в процессе задания правил нечетких продукций.
К термам ЛП выдвигается требование упорядоченности: от низкой к высокой, от малой к большой и т.д.
В ниже приведенных требованиях введены следующие обозначения:
Замечание. Для непрерывного универсального множества I дополнительно существует рекомендация непрерывности функции принадлежности термов.
Шаг 3. Выбор методов нечеткого логического вывода.
Замечание. Правильный выбор методов нечеткого логического вывода, а также функции принадлежности играют основную роль в процессе достижения успешного результата при разработке НЧС, однако эти задачи не являются детерминированными и не имеют универсального решения.
Обычно для этого выбора используется эвристический метод проб и ошибок, при этом выбор входных и выходных функций принадлежности основан на субъективных критериях.
Шаг 4. Построение функций принадлежности для каждого терма каждой лингвистической переменной (фаззификация).
Блок фаззификации осуществляет установление конкретных значений функции принадлежности, соответствующих каждому терму каждой лингвистической переменной.
Фаззификация также называется введением нечеткости.
Замечание. Фаззификацией в широком смысле называют процесс построения функций принадлежности для каждого терма каждой лингвистической переменной, в узком смысле – нахождение конкретного значения этой функции принадлежности для конкретного случая (текущей) ситуации.
После завершения этого этапа для всех входных переменных должны быть определены конкретные значения функции принадлежности по каждому из лингвистических термов, которые используются в подусловиях базы правил системы нечеткого вывода.
Пример. Для иллюстрации рассмотрим пример процесса фаззификации трех нечетких высказываний:
- «скорость автомобиля малая»,
- «скорость автомобиля средняя»,
- «скорость автомобиля высокая»
для входной лингвистической переменной b1 = «Скорость движения автомобиля».
Им соответствуют нечеткие высказывания первого вида: «b1 есть α1», «b1 есть α2», «b1 есть α3».
Предположим, что текущая скорость автомобиля равна 55 км/ч, т. е. a1 = 55 км/ч.
Шаг 5. Формирование базы правил нечетких продукций.
Часто база ПНП представляется в форме структурированного текста:
- ПРАВИЛО 1: ЕСЛИ «Условие 1», ТО «Заключение1» (F1),
- ПРАВИЛО 2: ЕСЛИ «Условие 2», ТО «Заключение2» (F2),
…
- ПРАВИЛО n: ЕСЛИ «Условие n», ТО «Заключение n» (Fn).
или в эквивалентной форме:
- RULE 1: ЕСЛИ «Condition 1», ТО «Conclusion 1» (F1),
- RULE 2: ЕСЛИ «Condition 2», ТО «Conclusion 2» (F2),
…
- RULE n: ЕСЛИ «Condition n», ТО «Conclusion n» (Fn).
где Fi(i Î{l, 2,..., n}) – весовые коэффициенты или коэффициенты определённости соответствующих правил.
Эти коэффициенты могут принимать значения из интервала [0, 1].
В случае, если коэффициенты не указаны, следует, что их значения равны 1.
Замечание. Не допускается наличие двух и более правил с одинаковыми посылками, но различными заключениями.
Для того чтобы исключить избыточность базы правил нечетких продукций требуется оптимизировать набор правил, т.е. исключить правила с одинаковыми посылками и разными заключениями. Сделать это возможно как на основе эмпирических гипотез (информации экспертов), так и путем адаптации к имеющимся экспериментальным данным (обучающей выборке), что приводит к существенному уменьшению числа правил и к ликвидации противоречивости правил, оставляемых в базе.
Напомним, что последующие этапы (с 6 по 9 шаги) рассмотрены в теоретическом материале: