Решение задачи нечеткого вывода

Автор работы: Пользователь скрыл имя, 27 Ноября 2013 в 08:52, курсовая работа

Описание работы

Цель работы: закрепление теоретических знаний о процедуре нечеткого вывода и умения применять эти знания на практике (на примере конкретной задачи).
Задание: Построить нечеткую базу знаний (использовать не менее 3 лингвистических переменных) для задачи подбора объема блюд (учитывать калорийность, отношение к блюдам и объём блюд), проверить ее на полноту и произвести нечеткий вывод для конкретных значений (выбрать случайным образом).

Содержание работы

1. Введение
2. Основные определения. Понятие нечеткого множества
3. Понятие лингвистической переменной
4. Операции над нечеткими множествами
5. Нечеткий логический вывод
6. Построение системы нечеткого вывода
7. Заключение
8. Список использованных источников

Файлы: 1 файл

еще один))).docx

— 32.89 Кб (Скачать файл)

    Будем говорить, что лингвистическая переменная [pic] структурирована, если ее терм-множество [pic] и функцию [pic], которая ставит в соответствие каждому элементу терм-множества его смысл, можно задать алгоритмически.

    Нечеткая переменная  описывается набором (N,X,A), где  N – это название переменной, X – универсальное множество (область  рассуждений), A – нечеткое множество  на X. Значениями лингвистической  переменной могут быть нечеткие  переменные, т.е. лингвистическая  переменная находится на более  высоком уровне, чем нечеткая  переменная.

    4. ОПЕРАЦИИ НАД  НЕЧЕТКИМИ МНОЖЕСТВАМИ

    Существует свыше  десятка типовых форм кривых  для задания функций принадлежности. Наибольшее распространение получили: треугольная, трапецеидальная и  гауссова функции принадлежности.

    Треугольная функция  принадлежности определяется тройкой  чисел (a,b,c), и ее значение в точке x вычисляется согласно выражению:

[pic]

 

    При (b-a)=(c-b) имеем случай симметричной треугольной функции принадлежности, которая может быть однозначно задана двумя параметрами из тройки (a,b,c).

    Аналогично для  задания трапецеидальной функции  принадлежности необходима четверка  чисел (a,b,c,d):

[pic]

 

    При (b-a)=(d-c) трапецеидальная функция принадлежности принимает симметричный вид.

[pic]

Рис. 1.3. Типовые кусочно-линейные функции принадлежности

 

    Функция принадлежности  гауссова типа описывается формулой

[pic]

 

и оперирует двумя параметрами. Параметр c обозначает центр нечеткого множества, а параметр отвечает за крутизну функции.

[pic]

Рис. 1.4. Гауссова функция  принадлежности.

 

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

    Для определения  пересечения и объединения нечетких  множеств наибольшей популярностью  пользуются следующие группы  операций:

    • Максиминные:

[pic]

    • Алгебраические:

[pic]

    Дополнение нечеткого  множества во всех трех случаях  определяется одинаково: [pic].

    Пример: Пусть  [pic] — нечеткое множество "от 5 до 8" (рис.1.5а) и [pic] — нечеткое множество "около 4" (рис.1.5б), заданные своими функциями принадлежности:

[pic]

Рис. 1.5. Нечеткие множества A и B

    Тогда, используя  максиминные операции, мы получим множества, изображенные на рис.1.6. ([pic])

[pic]

Рис. 1.6. Операции объединения, пересечения и отрицания

    Заметим, что  при максиминном и алгебраическом определении операций не будут выполняться законы противоречия и исключения третьего [pic], а в случае ограниченных операций не будут выполняться свойства идемпотентности [pic] и дистрибутивности:

    [pic]

    Можно показать, что при любом построении операций  объединения и пересечения в  теории нечетких множеств приходится отбрасывать либо законы противоречия и исключения третьего, либо законы идемпотентности и дистрибутивности.

    Носителем нечеткого  множества [pic] называется четкое множество [pic] таких точек в [pic], для которых величина [pic] положительна, т.е. [pic].

    Высотой нечеткого множества [pic] называется величина [pic].

    Нечеткое множество  [pic] называется нормальным, если [pic]. В противном случае оно называется субнормальным.

    Нечеткое множество  называется пустым, если [pic]. Очевидно, что в данном универсуме [pic] существует единственное пустое нечеткое множество. Непустое субнормальное нечеткое множество можно привести к нормальному (нормализовать) по формуле

[pic]

 

      НЕЧЕТКИЙ  ЛОГИЧЕСКИЙ ВЫВОД

 

    Основой для  проведения операции нечеткого  логического вывода является  база правил, содержащая нечеткие  высказывания в форме "Если-то" и функции принадлежности для соответствующих лингвистических термов. При этом должны соблюдаться следующие условия:

   1. Существует хотя  бы одно правило для каждого  лингвистического терма выходной  переменной.

   2. Для любого терма  входной переменной имеется хотя  бы одно правило, в котором  этот терм используется в качестве  предпосылки (левая часть правила).

    В противном  случае имеет место неполная  база нечетких правил.

    Пусть в базе  правил имеется m правил вида:

    R1: ЕСЛИ x1 это A11 … И … xn это A1n, ТО y это B1

    Ri: ЕСЛИ x1 это Ai1 … И … xn это Ain, ТО y это Bi

    Rm: ЕСЛИ x1 это Ai1 … И … xn это Amn, ТО y это Bm,

    где xk, k=1..n – входные переменные; y – выходная переменная; Aik – заданные нечеткие множества с функциями принадлежности.

    Результатом нечеткого  вывода является четкое значение  переменной y* на основе заданных четких значений xk , k=1..n.

 

    Основные этапы  нечеткого вывода

 

    Разработка и  применение систем нечеткого  вывода включают в себя ряд  этапов, реализация которых выполняется  с помощью рассмотренных ранее  основных положений нечеткой  логики.

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

    Таким образом,  основными этапами нечеткого  вывода являются.

    • Формирование  базы правил систем нечеткого  вывода.

    • Фаззификация входных переменных.

    • Агрегирование   подусловий в базе правил.

    • Активизация  подзаключений в базе правил.

    • Аккумулирование  заключений базы правил

    • Деффазификация.

    Рассмотрим подробнее  каждый из этапов.

    Формирование  базы правил систем нечеткого  вывода

    База правил  систем нечеткого вывода предназначена  для формального представления  эмпирических знаний или знаний  экспертов в той или иной  проблемной области. В системах  нечеткого вывода используются  правила нечетких продукций, в  которых условия и заключения  сформулированы в терминах нечетких  лингвистических высказываний рассмотренных  выше видов. Совокупность таких  правил будем далее называть  базами правил нечетких продукций.

    База правил  нечетких продукции представляет  собой конечное множество правил  нечетких продукций, согласованных  относительно используемых в  них лингвистических переменных. Наиболее часто база правил  представляется в форме структурированного  текста:

    ПРАВИЛО_1: ЕСЛИ "Условие_1" ТО "Заключение_1" (F1)

    ПРАВИЛО_2: ЕСЛИ "Условие_2" ТО "Заключение_2" (F2)

    Согласованность   правил относительно используемых  лингвистических переменных

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

    В системах  нечеткого вывода лингвистические  переменные, которые используются  в нечетких высказываниях подусловий правил нечетких продукций, часто называют входными лингвистическими переменными,  а переменные, которые используются в нечетких высказываниях подзаключений правил нечетких продукций, часто называют  выходными лингвистическими переменными.

    Наиболее распространенным  случаем является использование  в качестве функций принадлежности  термов треугольных или трапециевидных  функций принадлежности

    На формирование  базы правил систем нечеткого  вывода часто оказывают влияние  некоторые дополнительные факторы,  которые определяются спецификой  решаемой задачи или используемого  алгоритма нечеткого вывода.

    Фаззификация

    В контексте  нечеткой логики под фаззификацией понимается не только отдельный этап выполнения нечеткого вывода, но и собственно процесс или процедура нахождения значений функций принадлежности нечетких множеств (термов) на основе обычных (не нечетких) исходных данных. Фаззификацию еще называют введением нечеткости.

    Целью этапа  фаззификации является установление соответствия между конкретным (обычно — численным) значением отдельной входной переменной системы нечеткого вывода и значением функции принадлежности соответствующего ей терма входной лингвистической переменной. После завершения этого этапа для всех входных переменных должны быть определены конкретные значения функций принадлежности по каждому из лингвистических термов, которые используются в подусловиях базы правил системы нечеткого вывода.

      Агрегирование  - Процедура определения степени  истинности условий по каждому  из правил системы. До начала  этого этапа известны значения  истинности всех подусловий, т.е. множество значений [pic]. Далее рассматривается каждое из условий. Если условие составное, а лингвистические переменные в подусловиях не равны попарно друг другу, то находится степень истинности сложного высказывания на основе известных значений истинности подусловий. Тем самым находятся истинности всех условий правил системы нечеткого вывода.

    Этап агрегирования  считается законченным, когда  будут найдены все значения [pic] для каждого из правил [pic], входящих в рассматриваемую базу правил Р системы нечеткого вывода. Это множество значений обозначим через [pic].

       Активизация  - это процедура нахождения степени  истинности каждого из подзаключений правил. Она во многом аналогична композиции нечетких отношений, но не тождественна. Процедура имеет следующий вид. До начала этого этапа известны значения истинности всех условий и значения весовых коэффициентов Fi для каждого правила. Далее рассматривается каждое из заключений правил. Если заключение правила есть нечеткое высказывание  простого вида, то степень его истинности равна алгебраическому произведению соответствующего значения [pic]на весовой коэффициент. Если заключение  состоит из нескольких подзаключений, причем лингвистические переменные в подзаключениях попарно не равны друг другу, то степень истинности каждого из подзаключений равна алгебраическому произведению [pic]на весовой коэффициент Fi. Таким образом, находятся все степеней истинности подзаключений для каждого из правил  из базы правил. После нахождения множества определяются функции принадлежности каждого из подзаключений для рассматриваемых выходных лингвистических переменных. Для этого применяют один из методов модификации нечетких композиции.

      Этап активизации считается законченным, когда для каждой из выходных лингвистических переменных, входящих в отдельные подзаключения правил нечетких продукций, будут определены функции принадлежности нечетких множеств их значений, то есть совокупность нечетких множеств: [pic], где q – общее количество подзаключений в базе правил системы нечеткого вывода.

      Аккумуляция  - процедура нахождения функций  принадлежности для каждого из  выходных лингвистических переменных. Цель аккумуляции заключается  в том, чтобы объединить (аккумулировать) все степени истинности заключений (подзаключений) для получения функции принадлежности каждой из выходных переменных. Формально процедура аккумуляции выполняется следующим образом. До начала этого этапа предполагаются известными значения истинности всех подзаключений для каждого из правил [pic], входящих в рассматриваемую базу правил Р системы нечеткого вывода, в форме совокупности нечетких множеств: [pic], где q - общее количество подзаключений в базе правил. Далее последовательно рассматривается каждая из выходных лингвистических переменных [pic] и относящиеся к ней нечеткие множества: [pic]. Результат аккумуляции для выходной лингвистической переменной [pic] определяется как объединение нечетких множеств [pic].

    Этап аккумуляции  считается законченным, когда  для каждой из выходных лингвистических  переменных будут определены  итоговые функции принадлежности  нечетких множеств их значений, то есть совокупность нечетких  множеств: [pic], где s - общее количество выходных лингвистических переменных в базе правил системы нечеткого вывода.

    Дефаззификация

    Для выполнения  численных расчетов на этапе  дефаззификации могут быть использованы следующие формулы, получившие название методов дефаззификации.

    Теория нечетких  множеств представляет собой обобщение и переосмысление важнейших направлений классической математики. У ее истоков лежат идеи и достижения многозначной логики, которая указала на возможности перехода от двух к произвольному числу значений истинности и поставила проблему оперирования понятиями с изменяющимся содержанием; теории вероятностей, которая, породив большое количество различных способов статистической обработки экспериментальных данных, открыла пути определения и интерпретации функции принадлежности; дискретной математики, которая предложила инструмент для построения моделей многомерных и многоуровневых систем, удобный при решении практических задач.

   5. ПОСТРОЕНИЕ СИСТЕМЫ  НЕЧЕТКОГО ВЫВОДА

      Задачей  курсовой работы является построение  системы нечеткого вывода (использовать  не менее 3 лингвистических переменных) для задачи управления транспортным  средством (расчет расхода топлива  с учетом загруженности автомобиля  и стажа водителя), проверка ее  на полноту и произведение  нечеткого вывода для конкретных  значений, выбранных случайным образом.

Информация о работе Решение задачи нечеткого вывода