Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Нечеткая логика.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
3.05 Mб
Скачать

Раздел "Проектирование систем управления\Fuzzy Logic Toolbox"

С.Д.Штовба "Введение в теорию нечетких множеств и нечеткую логику"

Введение 1.1 Основные термины и определения 1.2 Свойства нечетких множеств 1.3 Операции над нечеткими множеств 1.4 Нечеткая арифметика 1.5 Нечеткие отношения и их свойства 1.6 Операции над нечеткими отношениями 1.7 Нечеткая логика 1.7.1 Лингвистические переменные 1.7.2 Нечеткая истинность 1.7.3 Нечеткие логические операции 1.7.5 Нечеткий логический вывод 1.7.5.1 Композиционное правило нечеткого вывода Заде 1.7.5.2 Нечеткий логический вывод Мамдани 1.7.5.3 Нечеткий логический вывод Сугено 1.7.5.4 Синглтонная модель нечеткого логического вывода 1.7.5.5 Нечеткий логический вывод для задач классификации 1.7.5.6 Иерархические системы нечеткого логического вывода 1.7.5.7 ANFIS 2. Структура Fuzzy Logic Toolbox 3. Построение нечетких систем в диалоговом режиме с помощью модуля Fuzzy 3.1. Проектирование систем типа Мамдани 3.2. Проектирование систем типа Сугэно 4 Прикладные нечеткие системы 4.1 Нечеткая система прогнозирования результатов футбольных матчей 4.2 Нечеткая экспертная система оценки технического состояния оборудования возбуждения турбогенераторов АЭС 4.3 FALEFC пакет быстрой настройки весов правил нечеткого классификатора 5. Структура данных системы нечеткого логического вывода 6. Модели функций принадлежности 7. Руководство пользователя 7.1 FIS-редактор 7.2 Редактор функций принадлежности 7.3 Редактор базы знаний 7.4 Визуализация нечеткого логического вывода 7.5 Визуализация поверхности “входы-выход” 7.6 ANFIS-редактор 7.7 Findcluster 8. Настройка нечетких моделей типа Мамдани 9. Синтез нечетких моделей с помощью субтрактивной кластеризации и ANFIS-алгоритма 10. Классификация на основе нечеткого логического вывода в MATLAB 11. Настройка моделей классификации на основе нечеткого логического вывода в MATLAB 12. Нечеткая кластеризация 12.1 Кластеризация при заданном числе кластеров 12.1.1 Четкая кластеризация алгоритмом c-средних 12.1.2 Базовый алгоритм нечетких c-средних 12.1.3 Обобщения алгоритма нечетких c-средних 12.2 Кластеризация без задания количества кластеров 12.2.1 Основные идеи метода горной кластеризации 12.2.2 Синтез нечеткой базы знаний на основе горной кластеризации 13. Построения функций принадлежности на основе экспертной информации 13.1 Метод статистической обработки экспертной информации 13.2 Построение функций принадлежности на основе парных сравнений 14 Принятие решений в нечетких условиях по схеме Беллмана Заде 14.1 Нечеткие цели, ограничения и решения 14.2 Нечеткий многокритериальный анализ вариантов 14.3 Нечеткий многокритериальный анализ инновационных проектов 15. Идентификация зависимостей с помощью нечеткой базы знаний Сугено Литература

Теория нечетких множеств (fuzzy sets theory) ведет свое начало с 1965г., когда профессор Лотфи Заде (Lotfi Zadeh) из университета Беркли опубликовал основополагающую работу “Fuzzy Sets” в журнале “Information and Control” [1]. Прилагательное "fuzzy", которое можно перевести на русский как нечеткий, размытый, ворсистый, пушистый, введено в название новой теории с целью дистанцирования от традиционной четкой математики и аристотелевой логики, оперирующих с четкими понятиями: “принадлежит - не принадлежит”, “истина - ложь”. Концепция нечеткого множества зародилась у Заде “как неудовлетворенность математическими методами классической теории систем, которая вынуждала добиваться искусственной точности, неуместной во многих системах реального мира, особенно в так называемых гуманистических системах, включающих людей” [2].

Началом практического применения теории нечетких множеств можно считать 1975г., когда Мамдани и Ассилиан (Mamdani and Assilian) построили первый нечеткий контролер для управления простым паровым двигателем. В 1982 Холмблад и Остергад (Holmblad and Osregaad) разработали первый промышленный нечеткий контроллер, который был внедрен в управление процессом обжига цемента на заводе в Дании. Успех первого промышленного контролера, основанного на нечетких лингвистических правилах “Если - то” привел к всплеску интереса к теории нечетких множеств среди математиков и инженеров. Несколько позже Бартоломеем Коско (Bart Kosko) была доказана теорема о нечеткой аппроксимации (Fuzzy Approximation Theorem), согласно которой любая математическая система может быть аппроксимирована системой, основанной на нечеткой логике. Другими словами, с помощью естественно-языковых высказываний-правил “Если - то”, с последующей их формализацией средствами теории нечетких множеств, можно сколько угодно точно отразить произвольную взаимосвязь “входы-выход” без использования сложного аппарата дифференциального и интегрального исчислений, традиционно применяемого в управлении и идентификации.

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

Ниже излагаются основные термины и понятия теории нечетких множеств, необходимые для использования Fuzzy Logic Toolbox. Материал раздела базируется на результатах работ [1-6]. В разделе приведена также терминология на английском языке с целью облегчения работы пользователям с англоязычным пакетом прикладных программ Fuzzy Logic Toolbox.

1.1 Основные термины и определения

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

Определение 1. Нечетким множеством (fuzzy set) на универсальном множестве U называется совокупность пар ( ), где  - степень принадлежности элемента к нечеткому множеству . Степень принадлежности - это число из диапазона [0, 1]. Чем выше степень принадлежности, тем в большей мерой элемент универсального множества соответствует свойствам нечеткого множества.

Определение 2. Функцией принадлежности (membership function) называется функция, которая позволяет вычислить степень принадлежности произвольного элемента универсального множества к нечеткому множеству.

Если универсальное множество состоит из конечного количества элементов , тогда нечеткое множество записывается в виде . В случае непрерывного множества U используют такое обозначение

Примечание: знаки и в этих формулах означают совокупность пар и u.

Пример 1. Представить в виде нечеткого множества понятие “мужчина среднего роста”.

Решение:  = 0/155+0.1/160 + 0.3/165 + 0.8/170 +1/175 +1/180 + 0.5/185 +0/180.

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

Определение 4. Терм–множеством (term set) называется множество всех возможных значений лингвистической переменной.

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

Пример 2. Рассмотрим переменную “скорость автомобиля”, которая оценивается по шкале “низкая", "средняя", "высокая” и “очень высокая".

В этом примере лингвистической переменной является “скорость автомобиля”, термами - лингвистические оценки “низкая", "средняя", "высокая” и “очень высокая”, которые и составляют терм–множество.

Определение 6. Дефаззификацией (defuzzification) называется процедура преобразования нечеткого множества в четкое число.

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

Centroid - центр тяжести;

Bisector - медиана;

LOM (Largest Of Maximums) - наибольший из максимумов;

SOM (Smallest Of Maximums) - наименьший из максимумов;

Mom (Mean Of Maximums) - центр максимумов.

Определение 7. Дефаззификация нечеткого множества по методу центра тяжести осуществляется по формуле .

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

Определение 8. Дефаззификация нечеткого множества по методу медианы состоит в нахождении такого числа a, что .

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

Определение 9. Дефаззификация нечеткого множества по методу центра максимумов осуществляется по формуле:

,

где G – множество всех элементов из интервала , имеющих максимальную степень принадлежности нечеткому множеству .

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

,

где - мощность множества G.

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

Пример 3. Провести дефаззификацию нечеткого множества “мужчина среднего роста” из примера 1 по методу центра тяжести.

Решение: Применяя формулу из определения 7, получаем:

Определение 10. Нечеткой базой знаний (fuzzy knowledge base) о влиянии факторов на значение параметра y называется совокупность логических высказываний типа:

ЕСЛИ

ИЛИ

ИЛИ ,

ТО , для всех ,

где - нечеткий терм, которым оценивается переменная в строчке с номером jp ( );

- количество строчек-конъюнкций, в которых выход y оценивается нечетким термом , ;

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

С помощью операций (ИЛИ) и (И) нечеткую базу знаний из определения 10 перепишем в более компактном виде:

          (1)

Определение 11. Нечетким логическим выводом (fuzzy logic inference) называется апроксимация зависимости с помощью нечеткой базы знаний и операций над нечеткими множествами.

Пусть - функция принадлежности входа нечеткому терму , , , , т. е. ; - функция принадлежности выхода y нечеткому терму , , т. е. . Тогда степень принадлежности конкретного входного вектора нечетким термам из базы знаний (1) определяется следующей системой нечетких логических уравнений:

,       (2)

где  - операция максимума (минимума).

Нечеткое множество , соответствующее входному вектору , определяется следующим образом:

,              (3)

где - операция объединения нечетких множеств.

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