
8d049541ba4b1425dd350ffcb5662604.ppt
- Количество слайдов: 24
НЕЧЕТКИЕ ЗНАНИЯ Во всех предметных областях существенное место занимают некорректные, нечетко формулируемые задачи. Реальный человеческий способ рассуждения (опирающийся на естественный язык) не может быть описан в рамках традиционных математических формализмов, предполагающих однозначность интерпретации. Другими словами, знания чаще всего нечетки. Возникла необходимость создания теории, позволяющей формально описывать нестрогие, нечеткие понятия и моделировать рассуждения, содержащие такие понятия. Нечеткими называются такие знания, которые допускают суждения об относительной степени истинности или ложности.
ПРИЧИНЫ НЕЧЕТКОСТИ ЗНАНИЙ присутствие неопределенности в фактическом знании, неточность языка представления знаний, знания, основанные на неполной информации, неопределенность, появляющаяся при агрегации (объединении в одну систему) знаний, полученных из разных источников и пр. Теорию нечетких множеств предложил ам. ученый Лофти Заде в 1965 году. Главная идея подхода Заде заключается в использовании для моделирования рассуждений нечеткой логики. Заде ввел одно из главных понятий в нечеткой логике – понятие лингвистической переменной. Использование этого подхода позволяет построить «нечёткие» аналоги основных математических понятий и создать формальный аппарат для моделирования человеческого способа решения задач.
НЕЧЁТКАЯ ЛОГИКА Лингвистическая переменная (ЛП) – это переменная, значение которой определяется набором вербальных (словесных) характеристик некоторого свойства. Например, ЛП «рост» определяется набором {карликовый, низкий, средний…}. В нечёткой логике степень истинности или степень ложности каждого нечеткого высказывания (или ЛП) принимает значения из отрезка от 0 до 1, причем 0 и 1 совпадают с понятиями ложь и истина для чётких высказываний. Степень истинности 0, 7, например, это не вероятность в статистическом смысле, а некоторое произвольное субъективное значение. Составные высказывания (как и в обычной логике высказываний) образуются из простых с помощью логических операций отрицания (не), конъюнкции (и), дизъюнкции (или), импликации /замещения/( ), эквиваленции ( ). Так степень истинности комбинации высказываний s 1 и s 2, имеющих соответственно степени истинности p 1 и p 2, в нечеткой логике может быть определена следующим образом.
Конъюнкция: высказывание s 1 «И» s 2 имеет истинность p = min (p 1, p 2). Дизъюнкция: высказывание s 1 «ИЛИ» s 2 имеет истинность p = max (p 1, p 2). Отрицание: высказывание «НЕ» s 1 имеет истинность p = 1 - p 1. Импликация: s 1 s 2 можно представить логической формулой ( «НЕ» s 1) “ИЛИ” s 2, то истинность импликации нечётких высказываний может быть определена как p = max (1 - p 1, p 2). Эквивалентность: s 1 s 2 можно представить логической формулой (s 1 s 2) “И” (s 2 s 1) или при нечётких высказываниях p = min (max (1 - p 1, p 2), max (p 1, 1 - p 2)). Здесь истинность эквиваленции р = 1 при р1 = р2 = 0 и р1 =р2 = 1, р = 0, 5 при р1 = р2 = 0, 5.
ПРИМЕР – нечеткая логика s 1: Иванов – успешный студент, степень истинности р1 = 0, 7, s 2: Петров – успешный студент, степень истинности р2 = 0, 4. 1. Оба успешные студенты s 1 И s 2 – конъюнкция р = мин (0. 7, 0. 4) = 0. 4 – истинность решения. 2. Есть ли среди них успешный студент? s 1 ИЛИ s 2 - дизъюнкция (кто-то из них успешный). Степень истинности р = мах (0. 7, 0. 4) = 0. 7. 3. Иванов - НЕ успешный студент? s 1 – отрицание. Степень истинности р = 1 – р1 = 1 – 0. 7 = 0. 3. 4. Иванов такой же успешный как Петров? s 1 s 2 - Замещение – импликация степень истинности р = мах (1 – 0. 7; 0. 4) = 0. 4 или если р1 = 0, 5, а р2 = 0. 4, то р = mах (1 – 0. 5, 0. 4) = 0. 5. 5. Иванов и Петров - они равноценны s 1 s 2 - Эквиваленция степень истинности р = мин( мах( 1 – р1, р2), мах (р1, 1 – р2)) = мин( мах (1 -0. 7, 0. 4), мах(0. 7, 1 -0. 4)) = мин(0. 4, 0. 7) = 0. 4.
НЕЧЕТКОЕ МНОЖЕСТВО
НЕЧЕТКИЕ ВЫВОДЫ Нечёткое правило: Если уровень воды (Х) высокий, то клапан (У) открыть. ЭКСПЕРТ: Высокий уровень воды - это примерно 2 метра. НЕЧЁТКОЕ МНОЖЕСТВО: уровень воды /функция принадлежности/ Х: ВЫСОКИЙ = 0, 1/1, 5 м + 0, 3/1, 6 м +0, 7/1, 7 м + 0, 8/1, 8 м + 0, 9/1, 9 м + 1, 0/2, 0 м + + 1, 0/2, 1 м + 1, 0/2, 2 м НЕЧЁТКОЕ МНОЖЕСТВО: угол поворота клапана /функция принадлежности/ У: ОТКРЫТЬ = 0, 1/300 + 0, 2/400 + 0, 3/500 + 0, 5/600 + 0, 8/700 + 1, 0/800 + 1, 0/900 m(x) m(y) 1, 0 0, 5 Х 0 1, 5 2, 0 У 0 30 60 90 град.
Нечеткие выводы Для четких множеств правило вывода modus ponens определяется следующим: если A и A→B — «истина» , то B также «истина» : Правило modus tollens — рассуждение от противного (латинское "modus tollendo tollens" - "путь исключения исключений") определяется следующим: если А → В – «истина» , а В – «ложь» , то А – «ложь: А → В, ¬ В ¬ А Если суждения А, В, … - нечеткие, то правила вывода обобщаются и символьные изображения представляются в виде совокупности продукционных правил. То есть лингвистическая модель правила modus ponens представляется в виде: ЕСЛИ Х есть А, ТО У есть В, где Х и У – лингвистические входные и выходные переменные, а А и В – конкретные лингвистические значения соответствующих входных и выходных переменных.
Продолжение Эти значения могут быть присвоены из следующего, например, набора термов «низкий» , «средний» , «высокий» или «очень малый» , «средний» . . Каждому i-му и j-му значению лингвистической переменной ставится в соответствие некоторое нечеткое подмножество со своей функцией принадлежности. Нечеткой импликацией А → В при А € Х и В € У является нечеткое отношение R € X ^ Y, удовлетворяющее правилам импликации, в том числе «правилу Мамдани» : µR ( х, у)=µ (х)^ µ (у) = min[ (х), (у)]. R рассматривается как нечеткое множество на прямом произведении X ^ Y полного пространства предпосылок X и полного пространства заключений Y.
СТРУКТУРА СИСТЕМЫ НЕЧЕТКОГО ВЫВОДА 1. Фаззификация (fuzzification – приведение к нечеткости). Точные значения входных переменных преобразуются в значения лингвистических переменных посредством применения определенных функций принадлежности. Функции принадлежности, определенные для входных переменных, применяются к их фактическим значениям для определения степени истинности каждой предпосылки каждого правила. 2. Логический вывод. Вычисленное значение истинности для предпосылок каждого правила применяется к заключениям каждого правила. Это приводит к одному нечеткому подмножеству, которое будет назначено переменной вывода для каждого правила. 3. Композиция. Нечеткие подмножества, назначенные для каждой переменной вывода (во всех правилах), объединяются вместе, чтобы сформировать одно нечеткое подмножество для каждой переменной вывода. 4. Дефаззификация (defuzzification – приведение к четкости). Преобразование нечеткой переменной вывода в четкое значение. Так как результатом нечеткого логического вывода может быть несколько термов выходной переменной, то правило дефаззификации должно определить, какой из термов выбрать. При этом выборе используются следующие методы: метод центроида или центра тяжести, метод наибольшего значения, метод центра максимума.
ИЛЛЮСТРАЦИЯ НЕЧЕТКОГО ВЫВОДА
ФУНКЦИИ ПРИНАДЛЕЖНОСТЕЙ
ПАКЕТ FUZZY LOGIC TOOLBOX В MATLAB 1. Назначение и возможности пакета Fuzzy Logic Toolbox Пакет Fuzzy Logic Toolbox (пакет нечеткой логики) — это совокупность прикладных программ, относящихся к теории размытых или нечетких множеств и позволяющих конструировать так называемые нечеткие экспертные и/или управляющие системы. Основные возможности пакета: • построение систем нечеткого вывода (экспертных систем, ре гуляторов, аппроксиматоров зависимостей); • построение адаптивных нечетких систем (гибридных нейронных сетей); • интерактивное динамическое моделирование в Simulink. Пакет позволяет работу: • в режиме графического интерфейса; • в режиме командной строки; • с использованием блоков и примеров пакета Simulink.
АЛГОРИТМ РАБОТЫ С ПАКЕТОМ 1. Командой Fuzzy из режима командной строки MATLAB запускается основная интерфейсная программа пакета Fuzzy Logic – редактор нечеткой системы вывода FIS-редактор. 2. Активируем мышью блок Вход 1 и вводим обозначение входной переменной (х). 3. Дважды щелкнем мышью по этому блоку Вход 1. Открывается окно редактора функций принадлежностей. В меню Edit редактора добавляем вид и количество функций принадлежности. 4. В поле Range устанавливаем диапазоны изменения х в соответствие с правилом. 5. Выполняем действия 2 – 4 для блока Выход (заключение, вывод). 6. Активируем средний блок – Rule Editor и вводим Правила. …
ПОПУЛЯРНЫМИ ЯВЛЯЮТСЯ СЛЕДУЮЩИЕ ПАКЕТЫ: Cubi. Calc 2. 0 RTC - одна из мощных коммерческих экспертных систем на основе нечеткой логики фирмы Hyper. Logic, позволяющая создавать собственные прикладные экспертные системы; Cubi. Quick - дешевая "университетская" версия пакета Cubi. Calc ; Rule. Maker - программа автоматического извлечения нечетких правил из входных данных ; Fuzi. Calc - электронная таблица с нечеткими полями, позволяющая делать быстрые оценки при неточных данных без накопления погрешности; OWL - пакет, содержащий исходные тексты всех известных видов нейронных сетей, нечеткой ассоциативной памяти и т. д. Кроме Hyper Logic среди "патриархов" нечеткой логики можно назвать фирмы Intelligence. Ware, Infra. Logic, Aptronix. Собственные программы на основе нечеткой логики анонсировали такие гиганты как IBM, Oracle и другие. Fuzzy. TECH производится немецкой фирмой INFORM, которая имеет отделения в Германии, США и Японии. Фирма Intel создала средство разработки приложений на базе контроллеров с использованием технологии нечеткости; система, получившая название fuzzy. TECH, завоевала огромную популярность во всем мире.
ПРИМЕР – нечеткая логика s 1: Иванов – успешный студент, степень истинности р1 = 0, 7, s 2: Петров – успешный студент, степень истинности р2 = 0, 4. 1. Оба успешные студенты И – конъюнкция р = мин (0. 7, 0. 4) = 0. 4 – истинность решения. 2. Есть ли среди них успешный студент? s 1 ИЛИ s 2 - дизъюнкция (кто-то из них успешный) степень истинности р = мах (0. 7, 0. 4) = 0. 7. 3. Иванов - НЕ успешный студент? НЕ - s 1 – отрицание степень истинности р = 1 – р1 = 1 – 0. 7 = 0. 3. 4. s 1 s 2 - Замещение – импликация степень истинности р = мах (1 – 0. 7, 0. 4) = 0. 4 или если р1 = 0, 5, а р2 = 0. 4, то р = мах (1 – 0. 5, 0. 4) = 0. 5. 5. s 1 s 2 - Эквиваленция - они равноценны степень истинности р = мин( мах( 1 – р1, р2), мах (р1, 1 – р2)) = = мин( мах (1 -0. 7, 0. 4), мах(0. 7, 1 -0. 4)) = мин(0. 4, 0. 7) = 0. 4.
8d049541ba4b1425dd350ffcb5662604.ppt