Типовая структура процесса нечеткого вывода показана на рис. 17.
Рис, 17
Прежде всего, должна быть сформирована база правил, представляющая собой конечное множество правил нечетких продукций. Формирование базы правил включает определение входных и выходных лингвистических переменных, а также собственно правил. Входными лингвистическими переменными называются лингвистические переменные, используемые в подусловиях правил. Выходные переменные - переменные, используемые в подзаключениях правил. Определение лингвистических переменных означает определение базовых терм-множеств переменных и функций принадлежности терм-множеств. Правила формируется, как было рассмотрено в разделе 2.4. Каждому правилу может быть приписан вес, принимающий значение из интервала . Если вес отсутствует, можно считать, что вес равен нулю.
На вход системы нечеткого вывода поступает вектор х* =[*,*,*2, »?**, ] четких значений лингвистических переменных д. Блок фаззификации (am. fuzzification - приведении к нечеткости) вычисляет степени принадлежности этих значений нечетким множествам значений лингвистических переменных. Для этого должны быть известны функции каждого терма лингвистической переменной.
Фаззификация производится следующим образом. Пусть для каждой входной лингвистической переменной д известно ее числовое значение х*. Рассматривается каждое высказывание подусловий, в котором фигурирует переменная д, например, " р. есть от ", где ос ( -терм с известной функцией принадлежности [лАх). Значение х* используется в качестве аргумента //(л), в результате чего находится = д (х*). При этом могут использоваться модификаторы. Таким образом вычисляются значения истинности всех подусловий системы нечеткого вывода. Высказывания в подусловиях заменяются числами. На выходе блока фаззификации формируется вектор m = , который является входом блока вывода.
Блок нечеткого логического вывода получает на входе вектор степени истинности всех подусловий т и вычисляет результирующую функцию принадлежности выходного значения (система вывода может иметь несколько выходов, тогда речь идет о выходном векторе). Вычисление результирующей функции принадлежности включает следующие процедуры (в скобках указаны названия процедур в соответствии с международным стандартом языков программирования контроллеров IEC 1131 - Programmable Controllers. Part 7 - Fuzzy Control Programming ):
- - вычисление степени истинности условий (Aggregation - агрегирование);
- - определение активизированных функций принадлежности заключений (Activftion - активизация);
- - определение результирующих функций принадлежности выходных лингвистических переменных (Accumulation - аккумуляция).
В процедуре вычисления степени истинности условий по каждому из правил системы нечеткого вывода (агрегирование) рассматривается каждое условие правил системы нечеткого вывода и вычисляется степень истинности условий. Исходными данными являются степени истинности подусловий (вектор т ), вычисленные в блоке фаззификации. Если условие содержит одно нечеткое высказывание вида, то степень истинности условия равна степени истинности высказывания условия. Если условие состоит из двух подусловий, связанных конъюнкцией, или дизъюнкцией, степень выполнения условия вычисляется с помощью треугольных норм (раздел 1.5). Например, для условия правила ЕСЛИ "(3, есть а," И "Р 2 естьа 2 " получаем ц(ц,дс г ")= 7 ’(ц 11 (х;)ц„(л-;)),
х и х 2 - значения входных переменных л;, и х 2 ,
Т - один из операторов t-нормы, /и а (х) и М а, (*) - функции принадлежности термов «, и а 2 .
Аналогично для условия правила:
где S - один из операторов s-нормы. Если условие содержит множество подусловий, соединенных дизъюнкциями и конъюнкциями, то сначала вычисляются степени истинности подусловий, соединенных конъюнкциями, затем - дизъюнкциями. Как обычно, скобки нарушают порядок действий. Рекомендуется использовать согласованные правила расчета истинности. Например, если для вычисления нечеткой конъюнкции используется операция min-пересечения, то для вычисления нечеткой дизъюнкции следует применить операцию max-объединения.
Процедура определения активизированных функций принадлежности заключений (активизация) основана на операции нечеткой импликации (раздел 2.1). Входными данными для процедуры являются степени истинности условий правил и функции принадлежности выходных величин, выходными - функции принадлежности всех подзаключений. Рассмотрим пример . Пусть правило имеет вид ЕСЛИ (х= Л)ТО (у = В) , функции принадлежности ц А (х) и Мв(у) -треугольные (рис. 18), входное значение х* = 6,5, степень истинности условия /i, f (х*) = 0,5 (см. рис. 18).
Рис . 18 -
Используем импликацию Мамдаии:
Практически активизированная функция принадлежности заключения при использовании импликации Мамдани находится простым усечением функции принадлежности заключения Мв(у) Д° уровня степень истинности условия [л А (х*) (рис. 18). Можно использовать другие операторы нечеткой импликации.
Например, результат активизации заключения с использованием правила «произведение» показан на рис. 19.
Рис . 19
На практике, особенно при наличии в правилах нескольких позаключений, удобно использовать процедуру активизации, основанную на алгоритме вывода Мамдани (алгоритм будет рассмотрен в разделе 2.6). В этом алгоритме для каждого правила задастся весовой коэффициент /^е. Может быть F/= 1, такое значение принимают, если весовой коэффициент не задан явно. Для отдельных подзаключений одного правила могут быть заданы разные весовые коэффициенты. Степень истинности всех подзаключений /-го правила рассчитывается по формуле
Активизированная функция принадлежности j- го подзаключения /-го правила вычисляется по одной из формул, основанных на методе нечеткой композиции:
min-активизация /J* (д>) = min {с п (j")};
prod-активизация //* (у) = c t // (у).
Рассмотренный алгоритм особенно удобен, когда правила содержат по несколько подзаключений вида.
Так как подзаключения, относящиеся к одной и той же выходной лингвистической переменной, в общем виде принадлежат разным правилам, то необходимо построить единую результирующую функцию принадлежности для каждой выходной переменной. Эта процедура называется аккумуляцией. Аккумуляция производится объединением с помощью одной из s-норм активизированных функций принадлежности каждой выходной лингвистической переменной. В результате для каждой выходной переменной получается одна функция принадлежности, возможно, весьма сложной формы.
Дефаззификация (приведение к четности) - нахождение для каждой выходной лингвистической переменной четкого значения в некотором смысле наилучшим образом, представляющим нечеткую переменную. Необходимость в дефаззификации объясняется тем, что на выходе системы нечеткого вывода нужны, как правило, четкие значения, которые поступают, например, на исполнительный механизм. Так как возможны разные критерии представления чечеткой переменной одним числом, то существуют различные методы дефаззификации . В результате определения результирующих функций принадлежности выходных лингвистических переменных получаются результирующие функции принадлежности №res{y)- Для унимодальной функции принадлежности простейшим методом дефаззификации является выбор четкого числа, соответствующего максимальной степени принадлежности. Обобщением этого метода на многомодальные функции являются методы левого и правового модального значения.
В методе левого модального значения (LM - Lost Most Maxi mum), называемом еще метод первого максимума (FM - FirstofMaxima) , или наименьший из максимумов (SOM - Smallest Of Maximums) в качестве четкого значения берется у = min {х т }, где х т - модальное значение результирующей функции принадлежности. Другими словами, в качестве четкой выходной переменной берется наименьшая (самая левая) мода.
В методе правого модального значения (RM - RightMostMaximum), называемом еще метод последнего максимума (LM - LastofMaxima), или метод наибольшего максимума (LOM - Largest Of Maximums) в качестве четкого значения берется у = тах{х /и |, то есть наибольшая (самая правая) из мод. Примеры дефаззификации с использование левого и правого модальных значений представлены на рис. 20а и 206.
В методе среднего максимума (ММ - MidleofMaxima), или методе центра максимумов (MOM - MeanOfMaximums) находится среднее арифметическое элементов универсального множества, имеющих максимальные степени принадлежностей
где G - множество всех элементов из интервала, имеющих максимальную степень принадлежности нечеткому множеству. Пример дефаззификации с использование метода среднего максимума представлен на рис. 20в.
Дефаззификация по методу центра тяжести (CG - Center of Gravity, Centroid) производится по формуле определения центра тяжести плоской фигуры, ограниченной осями координат и графиком функции принадлежности нечеткого множества
где Min и Мах - левая и правая точки интервала носителя выходной переменной.
Пример дефаззификации с использование метода центра тяжести представлен на рис. 20в.
Рис. 20 - Примеры дефаззификации а) результат дефаззификации по методу левого модального значения у =у 1 ;
- б) результат дефаззификации по методу правого модального значения у = у 2 ;
- в) результат дефаззфификации по методу среднего максимума;
- г) результат дефаззификации по методу центра тяжести. Дефаззификацияпо методу центра площади (СА - Center of
Area, Bisector of Area, Bisector) состоит в нахождении такого чис-
>’ Мах
ла у, что J //(x)dx= J //(x)dx . Геометрический смысл метода
состоит в нахождении такой точки на оси абсцисс, что перпендикуляр, восстановленный в этой точке, делит площадь под кривой функции принадлежности на две равные части.
Разработайте и моделируйте системы нечеткой логики
Fuzzy Logic Toolbox™ обеспечивает функции MATLAB ® , приложения и блок Simulink ® для анализа, разработки и симуляции систем на основе нечеткой логики. Руководства по продукту вы через шаги разработки нечетких систем вывода. Функции обеспечиваются для многих общепринятых методик, включая нечеткую кластеризацию и адаптивное нейронечеткое изучение.
Тулбокс позволяет вам поведения сложной системы модели, использующие простые логические правила, и затем реализуйте эти правила в нечеткой системе вывода. Можно использовать его в качестве автономного нечеткого механизма логического вывода. Также можно использовать нечеткие блоки вывода в Simulink и моделировать нечеткие системы во всесторонней модели целой динамической системы.
Начало работы
Изучите основы Fuzzy Logic Toolbox
Нечеткое системное моделирование вывода
Создайте нечеткие системы вывода и нечеткие деревья
Нечеткая системная настройка вывода
Настройте функции принадлежности и правила нечетких систем
Кластеризация данных
Найдите кластеры в данных о вводе/выводе с помощью нечетких c-средних-значений или отнимающей кластеризации
Нечеткая логика (НЛ) подразумевает проведение операции нечеткого логического вывода, основой которого является база правил, а также функция принадлежности лингвистических терм. Результатом является четкое значение переменной.
Нечетким логическим выводом называется аппроксимация зависимости с помощью нечеткой базы знаний и операций над нечеткими множествами.
Для того что бы выполнить нечеткий логический вывод необходимы следующие условия:
Должно существовать как минимум одно правило для каждого лингвистического терма выходной переменной;
Для любого терма входной переменной должно быть хотя бы одно правило, в которой этот терм используется в качестве предпосылки;
Между правилами не должно быть противоречий и корреляции.
На рисунке 1.7. изображена последовательность действий при использовании процесса нечеткого логического вывода.
Рисунок 1.7 – Последовательность действий при использовании
процесса нечеткого логического вывода
Нечеткий логический вывод занимает центральное место в нечеткой логике и системах нечеткого управления. Этот процесс представляет собой процедуру или алгоритм получения нечетких заключений на основе нечетких условий или предпосылок.
Системы нечеткого логического вывода являются частным случаем продукционных нечетких систем, в которых условия и заключения, отдельных правил формулируются в форме нечетких высказываний относительно значений тех или иных лингвистических переменных.
Разработка и применение систем нечеткого логического вывода включают в себя несколько этапов, реализация которых выполняется с помощью рассмотренных ранее основных положений нечетких множеств.
Входные переменные, поступающие на вход системы нечеткого логического вывода, являются информацией, которая замеряется каким-либо образом. Эти переменные есть реальные переменные процесса управления. Управляющие переменные системы управления формируются на выходе системы нечеткого логического вывода.
Таким образом, системы нечеткого логического вывода предназначены для преобразования значений входных переменных процесса управления в выходные переменные на основе использования нечетких правил продукций. Простейший вариант правила нечеткой продукции, который наиболее часто используется в системах нечеткого логического вывода, записывается в форме:
ПРАВИЛО<#>: ЕСЛИ “β 1 есть α 1 ”,ТО “β 2 есть α 2 ”
Здесь нечеткое высказывание “β 1 есть α 1 ” представляет собой условие данного правила нечеткой продукции, а нечеткое высказывание “β 2 есть α 2 ” – нечеткое заключение данного правила, которые сформулированы в терминах нечетких лингвистических высказываний. При этом считается, что β 1 ≠ β 2 .
Основные этапы нечеткого логического вывода и особенности каждого из них более подробно рассмотрены ниже:
1) Формирование базы правил. База правил систем нечеткого логического вывода предназначена для формального представления эмпирических знаний или знаний экспертов в той или иной проблемной области и представляет собой совокупность правил нечетких продукций вида: ПРАВИЛО_1: ЕСЛИ “Условие _1”,ТО “Заключение_1”(F 1)
ПРАВИЛО_2: ЕСЛИ “Условие _2”,ТО “Заключение_2”(F 2)
ПРАВИЛО_n: ЕСЛИ “Условие _n”,ТО “Заключение_n”(F n)
Здесь F i (i принадлежит {1, 2, …, n} ) есть коэффициенты определенности или весовые коэффициенты соответствующих правил, которые могут принимать значения из интервала . Если не указано иначе, то F i =1 .
Таким образом, база правил считается заданной, если для нее определено множество правил нечетких продукций, множество входных лингвистических переменных и множество выходных лингвистических переменных.
2) Фаззификация (введение нечеткости) является процессом и процедурой нахождения значений функций принадлежности нечетких множеств (термов) на основе обычных (четких) исходных данных. После завершения этого этапа для всех входных переменных должны быть определены конкретные значения функций принадлежности по каждому из лингвистических термов, которые используются в подусловиях базы правил системы нечеткого логического вывода.
3) Агрегирование представляет собой процедуру определения степени истинности условий по каждому из правил системы нечеткого логического вывода. Если условие правила имеет простую форму, то степень его истинности равна соответствующему значению принадлежности входной переменной к терму, используемому в данном условии. В том случае, когда условие состоит из нескольких подусловий вида:
ПРАВИЛО<#>: ЕСЛИ “β 1 есть α 1 ” И “β 2 есть α 2 ”,ТО “β 3 есть ν”, или
ПРАВИЛО<#>: ЕСЛИ “β 1 есть α 1 ” ИЛИ “β 2 есть α 2 ”,ТО “β 3 есть ν”,
то определяется степень истинности сложного высказывания на основе известных значений истинности подусловий. При этом используются соответствующие формулы для выполнения нечеткой конъюнкции и нечеткой дизъюнкции:
§ Нечеткая логическая конъюнкция (И)
§ Нечеткая логическая дизъюнкция (ИЛИ)
4) Активизация есть процесс нахождения степени истинности каждого из подзаключений правил нечетких продукций. До начала этого этапа предполагаются известными степень истинности и весовой коэффициент (F i ) для каждого правила. Далее рассматривается каждое из заключений правил системы нечеткого логического вывода. Если заключение правила представляет собой одно нечеткое высказывание, то степень его истинности равна алгебраическому произведению соответствующей степени истинности условия на весовой коэффициент.
Когда заключение состоит из нескольких подзаключений вида:
ПРАВИЛО<#>: ЕСЛИ “β 1 есть α 1 ” ТО “β 2 есть α 2 ” И “β 3 есть ν”, или
ПРАВИЛО<#>: ЕСЛИ “β 1 есть α 1 ” ТО “β 2 есть α 2 ” ИЛИ “β 3 есть ν”,
то степень истинности каждого из подзаключений равна алгебраическому произведению соответствующего значения степени истинности условия на весовой коэффициент.
После нахождения множества С i ={c 1 , c 2 , … , c n } степеней истинности каждого из подзаключений определяются функции принадлежности каждого из них для рассматриваемых выходных лингвистических переменных. Для этого используется один из следующих методов:
· Min-активизация: μ’(y)=min{C i , μ(y)};
· Prod- активизация: μ’(y)=C i *μ(y);
· Average- активизация:μ’(y)=0.5*(C i +μ(y)),
где μ’(y) – функция принадлежности терма, который является значением некоторой выходной переменной y j , заданной на универсуме Y .
5) Аккумуляция является процессом нахождения функции принадлежности для каждой из выходных лингвистических переменных. Цель аккумуляции – объединить все степени истинности заключений (подзаключений) для получения функции принадлежности каждой из выходных переменных. Причина необходимости этого этапа заключается в том, что подзаключения, относящиеся к одной и той же выходной лингвистической переменной, принадлежат различным правилам системы нечеткого логического вывода. Объединение нечетких множеств C i производят с помощью формулы:
,
где – модальное значение (мода) нечеткого множества, соответствующего выходной переменной после аккумуляции, рассчитываемое по формуле:
6) Дефаззификация (приведение к четкости) представляет собой процедуру нахождения обычного (четкого) значения для каждой из выходных лингвистических переменных. Цель заключается в том, чтобы, используя результаты аккумуляции всех выходных лингвистических переменных, получить обычное количественное значение каждой из выходных переменных, которое может быть использовано специальными устройствами, внешними по отношению к системе нечеткого логического вывода. Для выполнения численных расчетов на завершающем данном этапе могут быть использованы следующие методы дефаззификации (рисунок 1.8):
Centroid - центр тяжести; Bisector - медиана; SOM (Smallest Of Maximums) - наименьший из максимумов;
LOM (Largest Of Maximums) - наибольший из максимумов; MOM (Mean Of Maximums) - центр максимумов.
Рисунок 1.8 – Основные методы дефаззификации
1. Метод центра тяжести (Centre of Gravity) считается одним из самых простых по вычислительной сложности, но достаточно точным методом. Расчет производится по формуле:
где - это результат дефаззификации (точное значение выходной переменной); – границы интервала носителя нечеткого множества выходной переменной; - функция принадлежности нечеткого множества, соответствующего выходной переменной после этапа аккумуляции.
Для дискретного варианта:
где – число элементов в области для вычисления «центра тяжести».
2. Метод центра площади (Centre of Area):
где - это результат дефаззификации (точное значение выходной переменной); Min и Max - левая и правая точка носителя нечеткого множества выходной переменной; - функция принадлежности нечеткого множества, соответствующего выходной переменной после этапа аккумуляции.
Понятие нечеткого вывода занимает важнейшее место в нечеткой логике Алгоритм Mamdani, Алгоритм Tsukamoto, Алгоритм Sugeno, Алгоритм Larsen, Упрощенный алгоритм нечеткого вывода, Методы приведения к четкости.
Используемый в различного рода экспертных и управляющих системах механизм нечетких выводов в своей основе имеет базу знаний, формируемую специалистами предметной области в виде совокупности нечетких предикатных правил вида:
П1: если х есть A 1 , тогда у есть B 1 ,
П2: если х есть А 2 , тогда у есть В 2 ,
·················································
П n : если х есть А n , тогда у есть В n , где х — входная переменная (имя для известных значений дан-ных), у — переменная вывода (имя для значения данных, которое будет вычислено); А и В — функции принадлежности, определен-ные соответственно на x и у .
Пример подобного правила
Если х — низко, то у — высоко.
Приведем более детальное пояснение. Знание эксперта А → В отражает нечеткое причинное отношение предпосылки и заключе-ния, поэтому его можно назвать нечетким отношением и обозна-чить через R :
R = А → В,
где «→» называют нечеткой импликацией.
Отношение R можно рассматривать как нечеткое подмножество прямого произведения Х×У полного множества предпосылок X и заключений Y . Таким образом, процесс получения (нечеткого) результата вывода В" с использованием данного наблюдения А" и знания А → В можно представить в виде формулы
В" = А" ᵒ R = А" ᵒ (А → В),
где «о» — введенная выше операция свертки.
Как операцию композиции, так и операцию импликации в ал-гебре нечетких множеств можно реализовывать по-разному (при этом, естественно, будет разниться и итоговый получаемый ре-зультат), но в любом случае общий логический вывод осуществля-ется за следующие четыре этапа.
1. Нечеткость (введение нечеткости, фазификация, fuzzifica-tion). Функции принадлежности, определенные на входных пере-менных применяются к их фактическим значениям для определе-ния степени истинности каждой предпосылки каждого правила.
2. Логический вывод. Вычисленное значение истинности для предпосылок каждого правила применяется к заключениям каж-дого правила. Это приводит к одному нечеткому подмножеству, которое будет назначено каждой переменной вывода для каждого правила. В качестве правил логического вывода обычно исполь-зуются только операции min(МИНИМУМ) или prod(УМНОЖЕ-НИЕ). В логическом выводе МИНИМУМА функция принадлежно-сти вывода «отсекается» по высоте, соответствующей вычислен-ной степени истинности предпосылки правила (нечеткая логика «И»). В логическом выводе УМНОЖЕНИЯ функция принадлеж-ности вывода масштабируется при помощи вычисленной степени истинности предпосылки правила.
3. Композиция. Все нечеткие подмножества, назначенные к каждой переменной вывода (во всех правилах), объединяются вме-сте, чтобы формировать одно нечеткое подмножество для каждой переменной вывода. При подобном объединении обычно использу-ются операции max(МАКСИМУМ) или sum(СУММА). При ком-позиции МАКСИМУМА комбинированный вывод нечеткого под-множества конструируется как поточечный максимум по всем не-четким подмножествам (нечеткая логика «ИЛИ»). При композиции СУММЫ комбинированный вывод нечеткого подмножества кон-струируется как поточечная сумма по всем нечетким подмноже-ствам, назначенным переменной вывода правилами логического вывода.
4. В заключение (дополнительно) — приведение к четкости (дефазификация, defuzzification), которое используется, когда по-лезно преобразовать нечеткий набор выводов в четкое число. Име-ется большое количество методов приведения к четкости, некото-рые из которых рассмотрены ниже.
Пример .Пусть некоторая система описывается следующими нечет-кими правилами:
П1: если х есть А, тогда ω есть D,
П2: если у есть В, тогда ω есть Е,
П3: если z есть С, тогда ω есть F, где х, у и z — имена входных переменных, ω — имя переменной вывода, а А, В, С, D, Е, F— заданные функции принадлежности (треугольной формы).
Процедура получения логического вывода иллюстрируется рис. 1.9.
Предполагается, что входные переменные приняли некоторые кон-кретные (четкие) значения — х о, y о и z о.
В соответствии с приведенными этапами, на этапе 1 для данных зна-чений и исходя из функций принадлежности А, В, С, находятся степени истинности α (х о ), α (у о )и α (z o )для предпосылок каждого из трех при-веденных правил (см. рис. 1.9).
На этапе 2 происходит «отсекание» функций принадлежности за-ключений правил (т.е. D, Е, F) на уровнях α (х о ), α (у о ) и α (z o ).
На этапе 3 рассматриваются усеченные на втором этапе функции при-надлежности и производится их объединение с использованием операции max, в результате чего получается комбинированное нечеткое подмноже-ство, описываемое функцией принадлежности μ ∑ (ω) и соответствующее логическому выводу для выходной переменной ω .
Наконец, на 4-м этапе — при необходимости — находится четкое значение выходной переменной, например, с применением центроидного метода: четкое значение выходной переменной определяется как центр тяжести для кривой μ ∑ (ω), т.е.
Рассмотрим следующие наиболее часто используемые модифи-кации алгоритма нечеткого вывода, полагая, для простоты, что базу знаний организуют два нечетких правила вида:
П1: если х есть A 1 и у есть B 1 , тогда z есть C 1 ,
П2: если х есть А 2 и у есть В 2 , тогда z есть С 2 , где x и у — имена входных переменных, z — имя переменной вы-вода, A 1 , А 2 , B 1 , В 2 , C 1 , С 2 — некоторые заданные функции при-надлежности, при этом четкое значение z 0 необходимо определить на основе приведенной информации и четких значений x 0 и у 0 .
Рис. 1.9. Иллюстрация к процедуре логического вывода
Алгоритм Mamdani
Данный алгоритм соответствует рассмотренному примеру и рис. 1.9. В рассматриваемой ситуации он математически может быть описан следующим образом.
1. Нечеткость: находятся степени истинности для предпосылок каждого правила: А 1 (x 0), А 2 (x 0), B 1 (y 0), В 2 (y 0).
2. Нечеткий вывод: находятся уровни «отсечения» для пред-посылок каждого из правил (с использованием операции МИНИМУМ)
α 1 = A 1 (x 0) ˄ B 1 (y 0)
α 2 = A 2 (x 0) ˄ B 2 (y 0)
где через «˄» обозначена операция логического минимума (min), затем находятся «усеченные» функции принадлежности
3. Композиция: с использование операции МАКСИМУМ (max, далее обозначаемой как «˅») производится объединение найден-ных усеченных функций, что приводит к получению итогового не-четкого подмножества для переменной выхода с функцией принад-лежности
4. Наконец, приведение к четкости (для нахождения z 0 ) прово-дится, например, центроидным методом.
Алгоритм Tsukamoto
Исходные посылки — как у пре-дыдущего алгоритма, но в данном случае предполагается, что функ-ции C 1 (z ), С 2 (z ) являются монотонными.
1. Первый этап — такой же, как в алгоритме Mamdani.
2. На втором этапе сначала находятся (как в алгоритме Mam-dani) уровни «отсечения» α 1 и α 2 , а затем — посредством решения уравнений
α 1 = C 1 (z 1), α 2 = C 2 (z 2)
— четкие значения (z 1 и z 2 )для каждого из исходных правил.
3. Определяется четкое значение переменной вывода (как взве-шенное среднее z 1 и z 2 ):
в общем случае (дискретный вариант центроидного метода)
Пример. Пусть имеем A 1 (x 0) = 0,7, A 2 (x 0) = 0,6, B 1 (y 0) = 0,3, В 2 (y 0) = 0,8, соответствующие уровни отсечения
a 1 = min (A 1 (x 0), B 1 (y 0)) = min(0,7; 0,3) = 0,3,
a 2 = min (А 2 (x 0), В 2 (y 0)) = min (0,6; 0,8) = 0,6
и значения z 1 = 8 и z 2 = 4, найденные в результате решения уравнений
C 1 (z 1) = 0,3 , C 2 (z 2) = 0,6.
Рис. 1.10. Иллюстрации к алгоритму Tsukamoto
При этом четкое значение переменной вывода (см. рис. 1.10)
z 0 = (8·0,3 + 4·0,6) / (0,3 + 0,6) = 6.
Алгоритм Sugeno
Sugeno и Takagi использовали набор правил в следующей форме (как и раньше, приводим пример двух правил):
П 1: если х есть A 1 и у есть B 1 , тогда z 1 = а 1 х + b 1 у,
П 2: если х есть A 2 и у есть В 2 , тогда z 2 = a 2 x + b 2 y .
Представление алгоритма
2. На втором этапе находятся α 1 = A 1 (x 0) ˄ B 1 (y 0), α 2 = А 2 (x 0) ˄ В 2 (у 0) и индивидуальные выходы правил:
З. На третьем этапе определяется четкое значение переменной вывода:
Иллюстрирует алгоритм рис. 1.11.
Рис. 1.11. Иллюстрация к алгоритму Sugeno
Алгоритм Larsen
В алгоритме Larsen нечеткая импли-кация моделируется с использованием оператора умножения.
Описание алгоритма
1. Первый этап — как в алгоритме Mamdani.
2. На втором этапе, как в алгоритме Mamdani вначале нахо-дятся значения
α 1 = A 1 (x 0) ˄ B 1 (y 0),
α 2 = А 2 (x 0) ˄ В 2 (y 0),
а затем — частные нечеткие подмножества
α 1 C 1 (z ), a 2 C 2 (z ).
3. Находится итоговое нечеткое подмножество с функцией при-надлежности
μ s (z )= С (z )= (a 1 C 1 (z )) ˅ (a 2 C 2 (z ))
(в общем случае n правил).
4. При необходимости производится приведение к четкости (как в ранее рассмотренных алгоритмах).
Алгоритм Larsen иллюстрируется рис. 1.12.
Рис. 1.12. Иллюстрация алгоритма Larsen
Упрощенный алгоритм нечеткого вывода
Исходные пра-вила в данном случае задаются в виде:
П 1: если х есть A 1 и у есть B 1 , тогда z 1 = c 1 ,
П 2: если х есть А 2 и у есть В 2 , тогда z 2 = с 2 , где c 1 и с 2 — некоторые обычные (четкие) числа.
Описание алгоритма
1. Первый этап — как в алгоритме Mamdani.
2. На втором этапе находятся числа α 1 = A 1 (x 0) ˄ B 1 (y 0), α 2 = A 2 (x 0) ˄ B 2 (y 0).
3. На третьем этапе находится четкое значение выходной пе-ременной по формуле
или — в общем случае наличия n правил — по формуле
Иллюстрация алгоритма приведена на рис. 1.13.
Рис. 1.13. Иллюстрация упрощенного алгоритма нечеткого вывода
Методы приведения к четкости
1. Выше уже был рассмотрен один из данных методов — троидный. Приведем соответствующие формулы еще раз.
Для непрерывного варианта:
для дискретного варианта:
2. Первый максимум (First-of-Maxima). Четкая величина пере-менной вывода находится как наименьшее значение, при котором достигается максимум итогового нечеткого множества, т.е. (см. рис. 1.14а)
Рис. 1.14. Иллюстрация к методам приведения к четкости: α — первый максимум; б — средний максимум
3. Средний максимум (Middle-of-Maxima). Четкое значение находится по формуле
где G — подмножество элементов, максимизирующих С (см. рис. 1.14 б).
Дискретный вариант (если С — дискретно):
4. Критерий максимума (Max-Criterion). Четкое значение вы-бирается произвольно среди множества элементов, доставляющих максимум С, т. е.
5. Высотная дефазификация (Heightdefuzzification). Элементы области определения Ω для которых значения функции принад-лежности меньше, чем некоторый уровень α в расчет не принима-ются, и четкое значение рассчитывается по формуле
где Сα — нечеткое множество α -уровня (см. выше).
Нисходящие нечеткие выводы
Рассмотренные до сих пор нечеткие выводы представляют собой восходящие выводы от предпосылок к заключению. В последние годы в диагностических нечетких системах начинают применяться нисходящие выводы. Рассмотрим механизм подобного вывода на примере.
Возьмем упрощенную модель диагностики неисправности ав-томобиля с именами переменных:
х 1 — неисправность аккумулятора;
x 2 — отработка машинного масла;
y 1 — затруднения при запуске;
y 2 — ухудшение цвета выхлопных газов;
y 3 — недостаток мощности.
Между x i и y j существуют нечеткие причинные отношения r ij = x i → y j , которые можно представить в виде некоторой ма-трицы R с элементами r ij ϵ . Конкретные входы (предпо-сылки) и выходы (заключения) можно рассматривать как нечет-кие множества А и В на пространствах X и Y . Отношения этих множеств можно обозначить как
В = А ᵒ R ,
где, как и раньше, знак «о» обозначает правило композиции не-четких выводов.
В данном случае направление выводов является обратным к направлению выводов для правил, т.е. в случае диагностики име-ется (задана) матрица R (знания эксперта), наблюдаются выходы В (или симптомы) и определяются входы А (или факторы).
Пусть знания эксперта-автомеханика имеют вид
а в результате осмотра автомобиля его состояние можно оценить как
В = 0,9/y 1 + 0,1/у 2 + 0,2/у 3 .
Требуется определить причину такого состояния:
А = a 1 /x 1 + a 2 /x 2 .
Отношение введенных нечетких множеств можно представить в виде
либо, транспонируя, в виде нечетких векторов-столбцов:
При использовании (max-mix)-композиции последнее соотно-шение преобразуется к виду
0,9 = (0,9 ˄ α 1) ˅ (0,6 ˄ α 2),
0,1 = (0,1 ˄ α 1) ˅ (0,5 ˄ α 2),
0,2 = (0,2 ˄ α 1) ˅ (0,5 ˄ α 2).
При решении данной системы заметим прежде всего, что в первом уравнении второй член правой части не влияет на правую часть, поэтому
0,9 = 0,9 ˄ α 1 , α 1 ≥ 0,9.
Из второго уравнения получим:
0,1 ≥ 0,5 ˄ α 2 , α 2 ≤ 0,1.
Полученное решение удовлетворяет третьему уравнению, та-ким образом имеем:
0,9 ≤ α 1 ≤ 1,0, 0 ≤ α 2 ≤ 0,1,
т.е. лучше заменить аккумулятор (α 1 — параметр неисправности аккумулятора, α 2 — параметр отработки машинного масла).
На практике в задачах, подобных рассмотренной, количество переменных может быть существенным, могут одновременно ис-пользоваться различные композиции нечетких выводов, сама схема выводов может быть многокаскадной. Общих методов решения по-добных задач в настоящее время, по-видимому, не существует.
Нечеткие множества. Лингвистическая переменная. Нечеткая логика. Нечеткий вывод. Композиционное правило вывода.
(Конспект)
В основе понятия нечеткого множества (НИ) лежит представление о том, что обладающие общим свойством элементы некоторого множества могут иметь различные степени вырожденности этого свойства и, следовательно, различную степень принадлежности этому свойству.
Пусть U некоторое множество. Нечетким множеством Ã в U называется совокупность пар вида {(µ Ã (u), u)}, где u U, µ Ã .
Значение µ Ã называется степенью принадлежности объекта к нечеткому множеству U.
µ Ã : U
µ Ã – называется функцией принадлежности.
Пример нечетких множеств – возраст людей (рис. 19.1).
По аналогии с традиционной теорией множеств в Теории НМ определяются следующие операции:
Объединение:
, где
Перечисление:
,
Дополнение:
Алгебраическое произведение:
, где
n-арным нечетким отношением определенным на множествах называется нечеткое подмножество декартовых произведений
Так как нечеткое отношение является множеством для него справедливы все операции определенные для нечетких множеств. В практических приложениях теории нечетких множеств важную роль играет операция композиции нечетких отношений.
Композиция нечетких отношений
Пусть заданы 2 двухместных нечетких отношения:
Композиция нечетких отношений определяется следующим выражением:
Степени принадлежности конкретных выражений
Лингвистическая переменная - - это пятерка Х – имя переменной (возраст), U – базовое множество (0…150), Т(х) – терм множества. Множества лингвистических значений(молодой, средних лет, пожилой, старый). Каждое лингвистическое значение является меткой нечеткого множества определенного на U. G – синтаксическое правило, порождающее лингвистическое значение переменной Х (очень молодой, очень старый). М – семантическое правило ставящее в соответствие каждому лингвистическому значению нечеткое подмножество базового множества, то есть функция принадлежности.
Нечетким высказыванием называется утверждение относительно которого в данный момент времени можно судить о степени его истинности или ложности. Истинность принимает значение в интервале . Нечеткое высказывание не допускающее разделения на более простые называется элементарным.
Нечеткое высказывание построенное на элементарных с использованием логических связок называется составным нечетким высказыванием. Логическим связкам соответствуют операции над истинностью нечетких высказываний. - степени истинности конкретных высказываний.
2)
Таким образом алгебра нечетких множеств изоморфна алгебре нечетких высказываний.
4) операция импликации
Для операции импликации в нечеткой логике предложено несколько определений. Основные:
1)
2)
3)
5) Эквивалентность
n-местным нечетким предикатом, определенным на множествах U 1 , U 2 ,…,U n называется выражение содержащее предметные переменные данных множеств и превращающиеся в нечеткие высказывания при замене предметных переменных элементами множеств U 1 , U 2 ,…,U n .
Пусть U 1 , U 2 ,…,U n базовые множества лингвистических переменных, а в качестве символов предметных переменных выступают иена лингвистических переменных. Тогда примерами нечетких предикатов являются:
«давление в цилиндре низкое» - одноместный предикат
«температура в котле значительно выше температуры в теплообменнике» - двуместных предикат.
Если U k =1,5 следовательно «давление в котле низкое» = 0,7
При построении и реализации нечетких алгоритмов важную роль играет композиционное правило вывода.
Пусть - нечеткое отображение
Нечеткое подмножество универсума U, тогда порождает в V нечеткое подмножество
композиционное правило вывода является основой при построении логического вывода в нечеткой логике.
Пусть задано нечеткое высказывание , где и – нечеткие множества. Пусть также того задано некоторое высказывание (близкое к А, но не тождественное ему).
В классической логике широко используется правило вывода Modus Ponens
Это правило обобщается на случай нечеткой логики следующим образом:
Пусть множество и определены на базовом множестве Х, а и на базовом множестве Y. Естественно считать, что высказывание если задает некоторое нечеткое отображение из множества Х в Y
Тогда в соответствии с композиционным правилом вывода имеем:
Отношение строится на основе определения операции импликации в нечеткой логики.
1)
Если температура в котле низкая (), то подогрев повышенный ()
Реальные нечеткие логические алгоритмы содержат не одно, а множество продукционных правил
Если S 1 , то R 1 , иначе
Если S n , то R n , иначе
Поэтому нечеткие отношения должны быть построены для каждого отдельного правила, а затем агрегированы путем наложения друг на друга
В качестве агрегирующей операции выбирается или min или max в зависимости от типа импликации. композиционного вывода (правило свертки). В рассматриваемой логической системе предпосылки определяются лингвистическими переменными А1,А2,А3, а заключение – лингвистической переменной ...
Методология нечеткого управления автономной фотоветроэнергетической системой
Реферат >> ИнформатикаОдну нечеткую или лингвистическую переменную , нечеткую функцию или нечеткое отношение. Тогда нечеткий ... нечеткой импликацией. Фактически нечеткий вывод на рис. 2 является применением максминной композиции в качестве композиционного правила нечеткого вывода ...
... основе агентно-ориентированного подхода и диалоговых логик
Диссертация >> Информатика, программирование... вывода на диалоговом произведении многозначных и нечетких логик ... лингвистические ... логики малой размерности, однако, с увеличением мощности множества истинностных значений конструирование и использование правил вывода ... значений переменных , образованных...
Система "Aлор-Трейд"
Дипломная работа >> Финансовые наукиЗначок - это правило композиционного вывода (правило свертки) /3/. В рассматриваемой логической системе предпосылки определяются лингвистическими переменными , а заключение - лингвистической переменной В. В каждом...
Шпаргалки по управленческим решениям
Шпаргалка >> МенеджментОт множества субъективных факторов – логика ... являются значениями лингвистической переменной X. Допустим, что множество решений характеризуется... определяется на основе композиционного правила вывода : G = Аº D, где G - нечеткое подмножество интервала I. ...