Лекция 10 (Гиренко - Лекции)
Описание файла
Файл "Лекция 10" внутри архива находится в папке "Лекции Гиренко". Документ из архива "Гиренко - Лекции", который расположен в категории "". Всё это находится в предмете "информационные технологии" из 2 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "информационные технологии" в общих файлах.
Онлайн просмотр документа "Лекция 10"
Текст из документа "Лекция 10"
Лекция 10. Нечёткая логика
1. Введение
Математическая теория нечетких множеств (fuzzy sets) и нечеткая логика (fuzzy logic) являются обобщениями классической теории множеств и классической формальной логики. Данные понятия были впервые предложены американским ученым Лотфи Заде (Lotfi Zadeh) в 1965 г. Основной причиной появления новой теории стало наличие нечетких и приближенных рассуждений при описании человеком процессов, систем, объектов.
Нечеткие экспертные системы для поддержки принятия решений находят широкое применение в медицине и экономике. Она применяется в автомобильной, аэрокосмической и транспортной промышленности, в области изделий бытовой техники, в сфере финансов, анализа и принятия управленческих решений и многих других.
Триумфальное шествие нечеткой логики по миру началось после доказательства в конце 80-х Бартоломеем Коско знаменитой теоремы FAT (Fuzzy Approximation Theorem). В бизнесе и финансах нечеткая логика получила признание после того как в 1988 году экспертная система на основе нечетких правил для прогнозирования финансовых индикаторов единственная предсказала биржевой крах. И количество успешных фаззи-применений в настоящее время исчисляется тысячами.
2. Математический аппарат
Характеристикой нечеткого множества выступает функция принадлежности (Membership Function - MF). MFc(x) указывает степень (или уровень) принадлежности элемента x к нечеткому множеству C. MF представляет собой обобщение понятия характеристической функции обычного множества. Вспомним: характеристическая функция множества А (в современной терминологии — индикатор А) - функция f (x), определённая на некотором множестве Е, содержащем множество А, и принимающая значение f (x) = 1, если x принадлежит множеству А, и значение f (x) = 0, если x не принадлежит ему. Итак, нечетким множеством С называется множество упорядоченных пар вида C={MFc(x)/x}, где MFc(x) M=[0,1]. При этом значение MFc(x)=0 означает отсутствие принадлежности к множеству, 1 – полную принадлежность. Множество M называют множеством принадлежностей. Если M = {0,1}, тогда нечеткое подмножество A может рассматриваться как обычное или четкое множество.
Проиллюстрируем это на простом примере. Формализуем неточное определение "горячий чай". В качестве X (область рассуждений) будет выступать шкала температуры в градусах Цельсия. Очевидно, что она будет изменяется от 0 до 100 градусов. M=[0;1]. Нечеткое множество для понятия "горячий чай" может выглядеть следующим образом:
C={0/0; 0/10; 0/20; 0,15/30; 0,30/40; 0,60/50; 0,80/60; 0,90/70; 1/80; 1/90; 1/100}.
Так, чай с температурой 60 С принадлежит к множеству "Горячий" со степенью принадлежности 0,80. Для одного человека чай при температуре 60 С может оказаться горячим, для другого – не слишком горячим. Именно в этом и проявляется нечеткость задания соответствующего множества.
Для нечетких множеств, как и для обычных, определены основные логические операции.
- очень С (операция концентрирования): CON(MFc(x)) =
- более ли менее С (операция размывания): DIL(MFc(x)) =
Можно применить визуальное представление простых операции над нечеткими множествами. Рассмотрим прямоугольную систему координат, на оси ординат которой откладываются значение MFc(x) = , на оси абсцисс в произвольном порядке расположены элементы X. Если X по своей природе упорядочено, то этот порядок желательно сохранить в расположении элементов на оси абсцисс.
Пусть A нечеткий интервал между 5 до 8 и B нечеткое число около 4, как показано на рис.1.
Рис. 1
Проиллюстрируем нечеткое множество между 5 и 8 И (AND) около 4 (рис. 2, жирная линия).
Рис. 2
Нечеткое множество между 5 и 8 ИЛИ (OR) около 4 показано на рис. 3 (жирная линия).
Рис. 3
Рис.4 иллюстрирует операцию отрицания. Жирная линия - это отрицание нечеткого множества A.
Рис. 4
Для описания нечетких множеств вводятся понятия нечеткой и лингвистической переменных.
Нечеткая переменная описывается набором (a,X,A), где N – это название переменной, X – универсальное множество (область рассуждений), A – нечеткое множество на X, описывающее ограничение (то есть MFA(x)) на значение нечеткой переменной a.
Например, пусть X = {0,1,2,..,10}, M =[0,1]. Тогда нечеткую переменную "несколько" можно определить таким образом: "несколько" = {0,5/3; 0,8/4; 1/5; 1/6; 0,8/7; 0,5/8}.
Лингвистической переменной называется набор <b, T, X, G, M>, где
- b - имя лингвистической переменной;
- Т - множество его значений (терм-множество), представляющие имена нечетких переменных, областью определения, которых является множество X. Множество T называется базовым терм-множеством лингвистической переменной;
- X - универсальное множество (область рассуждений);
- G - синтаксическое правило, позволяющее оперировать элементами терм-множества T, в частности, генерировать новые термы (значения) с применением слов естественного или формального языка. Множество T G(T), где G(T) - множество сгенерированных термов, называется расширенным терм-множеством лингвистической переменной;
- М - семантическая процедура, позволяющая преобразовать новое значение лингвистической переменной, образованной процедурой G, в нечеткую переменную, то есть сформировать соответствующее нечеткое множество.
Значениями лингвистической переменной могут быть нечеткие переменные, т.е. лингвистическая переменная находится на более высоком уровне, чем нечеткая переменная.
Рассмотрим такое нечеткое понятие как "Цена акции". Это и есть название лингвистической переменной. Сформируем для нее базовое терм-множество, которое будет состоять из трех нечетких переменных: "Низкая", "Умеренная", "Высокая" и зададим область рассуждений в виде X=[100;200] (единиц). Последнее, что осталось сделать – построить функции принадлежности для каждого лингвистического терма из базового терм-множества T.
Существует свыше десятка типовых форм кривых для задания функций принадлежности. Наибольшее распространение получили: треугольная, трапецеидальная и гауссова функции принадлежности.
Треугольная функция принадлежности определяется тройкой чисел (a,b,c), и ее значение в точке x вычисляется согласно выражению:
При (b-a)=(c-b) имеем случай симметричной треугольной функции принадлежности, которая может быть однозначно задана двумя параметрами из тройки (a,b,c).
Аналогично для задания трапецеидальной функции принадлежности необходима четверка чисел (a,b,c,d):
При (b-a)=(d-c) трапецеидальная функция принадлежности принимает симметричный вид.
Рис. 5. Типовые кусочно-линейные функции принадлежности.
Функция принадлежности гауссова типа описывается формулой
и оперирует двумя параметрами. Параметр c обозначает центр нечеткого множества, а параметр σ отвечает за крутизну функции.
Рис. 6. Гауссова функция принадлежности.
Совокупность функций принадлежности для каждого терма из базового терм-множества T обычно изображаются вместе на одном графике. На рис. 7 приведен пример описанной выше лингвистической переменной "Цена акции", на рис. 8 – формализация неточного понятия "Возраст человека". Так, для человека 48 лет степень принадлежности к множеству "Молодой" равна 0, "Средний" – 0,47, "Выше среднего" – 0,20.
Рис. 7. Описание лингвистической переменной "Цена акции".
Рис. 8. Описание лингвистической переменной "Возраст".
Количество термов в лингвистической переменной редко превышает 7.
3. Нечеткий логический вывод
Основой для проведения операции нечеткого логического вывода является база правил, содержащая нечеткие высказывания в форме "Если-то" и функции принадлежности для соответствующих лингвистических термов. При этом должны соблюдаться следующие условия:
-
Существует хотя бы одно правило для каждого лингвистического терма выходной переменной.
-
Для любого терма входной переменной имеется хотя бы одно правило, в котором этот терм используется в качестве предпосылки (левая часть правила).
В противном случае имеет место неполная база нечетких правил.
Пусть в базе правил имеется 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.
В общем случае механизм логического вывода включает четыре этапа (см. рис. 9):
- введение нечеткости (фазификация);
- нечеткий вывод,
- композиция;
- приведение к четкости (дефазификация).
Рис. 9. Система нечеткого логического вывода.
Алгоритмы нечеткого вывода различаются главным образом видом используемых правил, логических операций и разновидностью метода дефазификации. Разработаны модели нечеткого вывода Мамдани, Сугено, Ларсена, Цукамото.