Автор работы: Пользователь скрыл имя, 13 Мая 2013 в 16:25, курсовая работа
Цель: изучение основных понятий теории нечетких множеств и разработка систем нечеткого вывода для аппроксимации функций.
Задачи:
Изучить и проанализировать литературу по нечетким множествам и выводам.
Изучить пакет Fuzzy Logic Toolbox среды MatLab.
Разработать нечеткую систему вывода в среде MatLab.
Введение 3
Глава 1. Нечеткие множества и выводы. 4
Основные понятия теории нечетких множеств. 4
Нечеткие отношения. 9
Основы нечеткой логики 15
Системы нечеткого вывода. 18
Глава 2. Нечеткое моделирование в среде MatLab. 24
Общая характеристика программы MATLAB. 24
Разработка системы нечеткого вывода в интерактивном режиме 25
Заключение 35
Литература: 36
Полное нечеткое отношение. Что касается другого крайнего случая, то так называемое полное нечеткое отношение по своей сути совпадает с обычным полным отношением, которое, в свою очередь, равно по определению декартову произведению соответствующих универсумов ….. Как его обозначать — из соображений удобства можно просто через X. Важно представлять себе, что функция принадлежности полного нечеткого отношения тождественно равна единице для всех без исключения кортежей, т. е. (<x1,x2,...,xk>) = 1.
Особое значение в нечетком моделировании имеют бинарные нечеткие отношения, для задания которых используется одно или разные базисные множества (универсумы). B связи с этим приведем их формальное определение.
Бинарное нечеткое отношение. B общем случае бинарное нечеткое отношение задается на базисных множествах Х1, X2 и определяется как нечеткое отношение Q={<>,(<>)}. Здесь — функция принадлежности бинарного нечеткого отношения, которая определяется как отображение : [0, 1], а через обозначен кортеж из двух элементов, при этом .
Обратное нечеткое отношение. Применительно к бинарным нечетким отношениям определяется так называемое обратное нечеткое отношение. A именно, если задано бинарное нечеткое отношение Q на декартовом произведении , то обратным к нему нечетким отношением (обозначается через Q-1) называется такое бинарное нечеткое отношение, которое задано на декартовом произведении , а функция принадлежности, которого определяется по следующей формуле:
()=() для любых (3)
Бинарное нечеткое отношение заданное на одном универсуме. Бинарное нечеткое отношение, заданное на одном базисном множестве (универсуме) X, определяется как нечеткое отношение Q={<>,(<>)}, где (<>) — функция принадлежности бинарного нечеткого отношения, которая определяется как отображение : [0, 1]. Здесь через <> обозначен кортеж из двух элементов, при этом как .
Определение лингвистической переменной.
Лингвистическая переменная. Лингвистическая переменная также определяется как кортеж: <, T, X, G, M>, где:
Пример. B качестве примера рассмотрим ситуацию со скоростью движения автомобильного транспорта в пределах городской черты. Хотя правила дорожного движения регламентируют величину этой скорости, однако многие автолюбители предпочитают давать собственную субъективную оценку своей скорости движения. При этом используются такие определения, как "малая скорость", "средняя скорость" и "высокая скорость" движения. Очевидно, что подобная практическая оценка скорости может относиться к диапазону скоростей в пределах интервала от 0 км/ч до некоторой величины, определяемой личными предпочтениями того или иного водителя. Пусть в нашем примере из соображений удобства это будет величина 100 км/ч.
Формализация субъективной оценки скорости движения может быть выполнена с помощью следующей лингвистической переменной <, T, X, G, M >, где
= "малая скорость", ="средняя скорость", ="высокая скорость", а также соответствующих нечетких множеств для термов из G(T) в соответствии с правилами трансляции нечетких связок и модификаторов "И", "ИЛИ", "НЕ", "очень", "слегка".
Для рассматриваемого примера нечеткие множества A1, A2, A3 соответствующие нечетким переменным: = "малая скорость", ="средняя скорость", ="высокая скорость", удобно задать графически с помощью кусочно-линейных функций принадлежности. Один из возможных конкретных вариантов этих нечетких множеств изображен на рис. 2а-в.
Рис. 2а.
Рис 2б.
Рис. 2в.
Рис. 2а-в: Графики функций принадлежности нечетких множеств A1, A2, A3, соответствующих нечетким переменным = "малая скорость" (a), = "средняя скорость" (б), = "высокая скорость" (в) для лингвистической переменной (скорость движения автомобиля)
Нечеткая логика предназначена для формализации человеческих способностей к неточным или приближенным рассуждениям, которые позволяют более адекватно описывать ситуации с неопределенностью. Классическая логика по своей сути игнорирует проблему неопределенности, поскольку все высказывания и рассуждения в формальных логических системах могут иметь только значение "истина" (И, 1) или значение "ложь" (Л, 0). B отличие от этого в нечеткой логике истинность рассуждений оценивается в некоторой степени, которая может принимать и другие отличные {И, Л} значения.
Чтобы иметь возможность выражать неопределенные знания, необходима такая логическая система, которая позволяет некоторому предложению иметь истинностное значение, отличающееся от бинарного И или Л. Один из подходов — расширить множество истинностных значений {И, Л} и позволить предложениям принимать некоторые дополнительные значения истинности. B качестве высказываний с истинностным значением "возможно" могут выступать такие, которые относятся к некоторому моменту времени в будущем.
Так, например, высказывание "Сборная России по футболу выйдет в 1/8 финала на предстоящем Чемпионате мира" до начала Чемпионата не может быть оценено ни как истинное, ни как ложное.
Наряду с понятием нечеткого множества, Л. Заде предложил обобщение классической логики на основе рассмотрения бесконечного множества значений истинности.
Правила нечетких продукций.
Продукционные системы были разработаны в рамках исследований по методам искусственного интеллекта и нашли широкое применение для представления знаний и вывода заключений в экспертных системах, основанных на правилах. Поскольку нечеткий вывод реализуется на основе нечетких продукционных правил, рассмотрение базового формализма нечетких продукционных моделей приобретает самостоятельное значение. При этом нечеткие правила продукций не только во многом близки к логическим моделям, но и, что наиболее важно, позволяют адекватно представить практические знания экспертов в той или иной проблемной области.
Правило нечеткой продукции. В общем случае под правилом нечеткой продукции или просто — нечеткой продукцией понимается выражение следующего вида:
(): ; P; AB;S, F, N, (4)
где (— имя нечеткой продукции; Q— сфера применения нечеткой продукции; Р— условие применимости ядра нечеткой продукции; AB— ядро нечеткой продукции, в котором A — условие ядра (или антецедент); В — заключение ядра (или консеквент); "" — знак логической секвенции (или следования); S — метод или способ определения количественного значения степени истинности заключения ядра; F— коэффициент определенности или уверенности нечеткой продукции; N— постусловия продукции.
По аналогии с обычным правилом продукции, в качестве имени () нечеткой продукции может выступать та или иная совокупность букв или символов, позволяющая однозначным образом идентифицировать нечеткую продукцию в системе нечеткого вывода или базе нечетких правил. В качестве имени нечеткой продукции может использоваться ее номер в системе.
Сфера применения нечеткой продукции Q, условие применимости ядра нечеткой продукции Р и постусловие нечеткой продукции N определяются аналогично обычной не нечеткой продукции .
Аналогично обычным правилам продукций ядро A→В также является центральным компонентом нечеткой продукции. Ядро продукции записывается в более привычной форме: "ЕСЛИ A, ТО В" или в наиболее распространенном виде: "IF A, THEN В", где A и B— некоторые выражения нечеткой логики, которые наиболее часто представляются в форме нечетких высказываний. При этом секвенция интерпретируется в обычном логическом смысле как знак логического следования заключения В из условия Л. В качестве выражений Л и В могут использоваться составные логические нечеткие высказывания, т. е. элементарные нечеткие высказывания, соединенные нечеткими логические связками, такими как нечеткое отрицание, нечеткая конъюнкция и нечеткая дизъюнкция.
S — метод или способ определения количественного значения степени истинности заключения В на основе известного значения степени истинности условия Л. Данный способ в общем случае определяет так называемую схему или алгоритм нечеткого вывода в продукционных нечетких системах и называется также методом композиции или методом активации согласно Стандарту IEC 1131-7. В настоящее время для этой цели предложено несколько способов, основные из которых рассматриваются ниже в настоящем разделе.
F — коэффициент определенности или уверенности выражает количественную оценку степени истинности или относительный вес нечеткой продукции. Коэффициент уверенности принимает свое значение из интервала [0, 1] и часто называется весовым коэффициентом нечеткого правила продукции.
Системы нечеткого вывода предназначены для реализации процесса нечеткого вывода и служат концептуальным базисом всей современной нечеткой логики.
Поскольку разработка и применение систем нечеткого вывода имеет междисциплинарный характер, данная проблематика исследований тесно взаимосвязана с целым рядом других научно-прикладных направлений, таких как: нечеткое моделирование, нечеткие экспертные системы, нечеткая ассоциативная память, нечеткие логические контроллеры, нечеткие регуляторы и просто нечеткие системы.
Фаззификация (Fuzzification).
B контексте нечеткой логики под фаззификацией понимается не только отдельный этап выполнения нечеткого вывода, но и собственно процесс или процедура нахождения значений функций принадлежности нечетких множеств (термов) на основе обычных (не нечетких) исходных данных. Фаззификацию еще называют введением нечеткости.
Целью этапа фаззификации является установление соответствия между конкретным (обычно — численным) значением отдельной входной переменной системы нечеткого вывода и значением функции принадлежности соответствующего ей терма входной лингвистической переменной. После завершения этого этапа для всех входных переменных должны быть определены конкретные значения функций принадлежности по каждому из лингвистических термов, которые используются в подусловиях базы правил системы нечеткого вывода.
Формально процедура фаззификации выполняется следующим образом. До начала этого этапа предполагаются известными конкретные значения всех входных переменных системы нечеткого вывода, т. е. множество значений ={, ,..., }. B общем случае каждое где ,— универсум лингвистической переменной . Эти значения могут быть получены либо от датчиков, либо некоторым другим, внешним по отношению к системе нечеткого вывода способом.
Далее рассматривается каждое из подусловий вида " есть " правил системы нечеткого вывода, где — некоторый терм с известной функцией принадлежности (х). При этом значениеа , используется в качестве аргумента (x), тем самым находится количественное значение =(). Это значение и является результатом фаззификации подусловия " есть α".
Этап фаззификации считается законченным, когда будут найдены все значения =(). для каждого из подусловий всех правил, входящих в рассматриваемую базу правил системы нечеткого вывода. Это множество значений обозначим через B={}. При этом если некоторый терм лингвистической переменной , не присутствует ни в одном из нечетких высказываний, то соответствующее ему значение функции принадлежности не находится в процессе фаззификации.
Агрегирование (Aggregation).
Агрегирование представляет собой процедуру определения степени истинности условий по каждому из правил системы нечеткого вывода.
Формально процедура агрегирования выполняется следующим образом. До начала этого этапа предполагаются известными значения истинности всех подусловий системы нечеткого вывода, т. е. множество значений B={}. Далее рассматривается каждое из условий правил системы нечеткого вывода. Если условие правила представляет собой нечеткое высказывание вида 1 или 2, то степень его истинности равна соответствующему значению .
Этап агрегирования считается законченным, когда будут найдены все значения для каждого из правил , входящих в рассматриваемую базу правил P системы нечеткого вывода. Это множество значений обозначим через B"={, ,...,}.
Аккумуляция (Accumulation).
Аккумуляция или аккумулирование в системах нечеткого вывода представляет собой процедуру или процесс нахождения функции принадлежности для каждой из выходных лингвистических переменных множества W={,}.
Цель аккумуляции заключается в том, чтобы объединить или аккумулировать все степени истинности заключений (подзаключений) для получения функции принадлежности каждой из выходных переменных. Причина необходимости выполнения этого этапа состоит в том, что подзаключения, относящиеся к одной и той же выходной лингвистической переменной, принадлежат различным правилам системы нечеткого вывода.