1.объединение
2.пересечение
3.дополнение
4.концентрация
5.размывание (или размытие)
Фаззификация - сопоставление множества значений х ее функции принадлежности М(х), т.е. перевод значений х в нечеткий формат (пример с термином молодой).
Дефаззификация - процесс, обратный фаззификации.
Все системы с нечеткой логикой функционируют по одному принципу: показания измерительных приборов фаззифицируются (переводятся в нечеткий формат), обрабатываются (см. ниже), дефаззифицируются и в виде привычных сигналов подаются на исполнительные устройства.
Степень принадлежности - это не вероятность , т.к. неизвестна функция распределения , нет повторяемости экспериментов. Так, если взять из рассмотренного ранее примера прогноза погоды два взаимоисключающих события: будет дождь и не будет и присвоить им некоторые ранги, то сумма этих рангов необязательно будет равна 1, но если равенство все-таки есть, то нечеткое множество считается нормированным. Значения функции принадлежности M(x) могут быть взяты только из априорных знаний , интуиции (опыта) , опроса экспертов.
В нечеткой логике вводится понятие лингвистической переменной, значениями которой являются не числа , а слова естественного языка , называемые термами. Например, в случае управления мобильным роботом можно ввести две лингвистические переменные: ДИСТАНЦИЯ (расстояние до помехи) и НАПРАВЛЕНИЕ (угол между продольной осью робота и направлением на помеху).
Рассмотрим лингвистическую переменную ДИСТАНЦИЯ. Значениями ее можно определить термыДАЛЕКО, СРЕДНЯЯ, БЛИЗКО и ОЧЕНЬ БЛИЗКО.Для физической реализации лингвистической переменной необходимо определить точные физические значения термов этой переменной. Пусть переменная ДИСТАНЦИЯ может принимать любое значение из диапазона от нуля до бесконечности. Согласно положениям теории нечетких множеств, в таком случае каждому значению расстояния из указанного диапазона может быть поставлено в соответствие некоторое число от нуля до единицы, которое определяет степень принадлежности данного физического расстояния (допустим 40 см) к тому или иному терму лингвистической переменной ДИСТАНЦИЯ Степень принадлежности определяется так называемой функцией принадлежности М(d), где d-расстояние до помехи. В нашем случае расстоянию 40 см. можно задать степень принадлежности к терму ОЧЕНЬ БЛИЗКО равную 0,7 , а к терму БЛИЗКО– 0,3 (см. рис.2.2.). Конкретное определение степени принадлежности может проходить только при работе с экспертами.
Рис.2.2. Лингвистическая переменная и функция принадлежности.
Переменной НАПРАВЛЕНИЕ, которая может принимать значения в диапазоне от 0 до 360 градусов, зададим термы ЛЕВОЕ, ПРЯМО И ПРАВОЕ.
Теперь необходимо задать выходные переменные. В рассматриваемом примере достаточно одной, которая будет называться РУЛЕВОЙ УГОЛ. Она может содержать термы: РЕЗКО ВЛЕВО, ВЛЕВО, ПРЯМО, ВПРАВО, РЕЗКО ВПРАВО. Связь между входом и выходом запоминается в таблице нечетких правил (рис.2.3.).
Рис.2.3. Таблица нечетких правил.
Каждая запись в данной таблице соответствует своему нечеткому правилу, например:
Если ДИСТАНЦИЯБЛИЗКО и НАПРАВЛЕНИЕПРАВОЕ, тогда РУЛЕВОЙ УГОЛРЕЗКО ВЛЕВО
Таким образом, мобильный робот с нечеткой логикой будет работать по следующему принципу: данные с сенсоров о расстоянии до помехи и направлении на нее будут фаззифицированы, обработаны согласно табличным правилам, дефаззифицированы и полученные данные в виде управляющих сигналов поступят на привода робота.
Применение традиционной нечеткой логики в современных системах крайне ограниченно следующими факторами:
· как правило, сложная система управления имеет большее количество входов, чем самое заурядное нечеткое приложение;
· добавление входных переменных увеличивает сложность вычислений экспоненциально;
· как следствие предыдущего пункта, увеличивается база правил, что приводит к трудному ее восприятию (напомню, база правил набирается вручную);
· операции в рельном масштабе требуют специального железа.
Исходя из этих причин, Steven Goodridge предлагает использовать систему, обрабатывающую большие данные с помощью нескольких нечетких микроконтроллеров, объединенных вместе. Этот подход позволяет качественно управлять трудно описываемыми нечеткими процессами. Каждый элемент, получившейся нечеткой сети обозначается как нечеткий узел. Теперь, если связать выход одного узла со входом другого, все вычисления заметно упрощаются. Этот подход назван нечетким предвычислением (рис.2.4.).
Рис.2.4. Нечеткие предвычисления.
Кроме того, выходы нечетких узлов можно объединять с помощью мультиплексора - таким образом достигается более гладкий переход между множеством получающихся после обработки базы правил рекомендаций(рис.2.5.).
Рис. 2.5. Нечеткий мультиплексор
3. Общая структура устройств нечеткого логики
3.1. Микроконтроллер нечеткой логики
Общая структура микроконтроллера, использующего нечеткую логику, показана на рис.1. Она содержит в своем составе следующие составные части:
· блок фаззификации;
· базу знаний;
· блок решений;
· блок дефаззификации.
Блок фаззификации преобразует четкие (сrisp) величины, измеренные на выходе объекта управления, в нечеткие величины, описываемые лингвистическими переменными в базе знаний.
Блок решений использует нечеткие условные (if – then) правила, заложенные в базе знаний, для преобразования нечетких входных данных в требуемые управляющие воздействия, которые носят также нечеткий характер.
Рис.3.1. Общая структура нечеткого микроконтроллера.
В качестве реальных микроконтроллеров, поддерживающих нечеткую логику выступают 68HC11, 68HC12 фирмы Motorola, MCS-96 фирмы Intel, а также некоторые другие.
3.2. Процессор нечеткой логики
Не так давно (в начале 90-х) компания Adaptive Logic из США (к сожалению на данный момент их сайт отсутствует в интернете) выпустила кристалл, сделанный по аналогово-цифровой технологии. Он позволит сократить сроки конструирования многих встроенных систем управления реального времени, заменив собой традиционные схемы нечетких микроконтроллеров. Аппаратный процессор нечеткой логики второго поколения принимает аналоговые сигналы, переводит их в нечеткий формат, затем, применяя соответствующие правила, преобразует результаты в формат обычной логики и далее – в аналоговый сигнал. Все это осуществляется без внешних запоминающих устройств, преобразователей и какого бы ни было программного обеспечения нечеткой логики.
Этот микропроцессор относительно прост по сравнению с громоздкими программными обеспечениями. Но так как его основу составляет комбинированный цифровой/ аналоговый кристалл, он функционирует на очень высоких скоростях ( частота отсчетов входного сигнала – 10 кГц, а скорость расчета – 500 тыс. правил/с), что во многих случаях приводит к лучшим результатам в системах управления по сравнению с более сложными, но медлительными программами.
Таким образом, этот процессор можно и нужно применять в устройствах, работающих в реальном масштабе времени, где необходима высокая производительность системы (применительно к роботам - это объезд помех типа "сарай" и "яма" и т.п.).