- •Интеллектуальные информационные системы
- •Введение
- •1. Логика предикатов первого порядка
- •1.1. Основы логики предикатов первого порядка
- •1.2. Основы Пролога
- •Примеры использования дизъюнкции в Прологе
- •1.3. Назначение и основные возможности swi-Prolog
- •Некоторые операции и предикаты swi-Prolog
- •1.4. Лабораторная работа № 1 Представление фактов и правил в Прологе
- •1.5. Лабораторная работа № 2. Рекурсия в Прологе
- •1.6. Лабораторная работа № 3. Обработка списков в Прологе
- •Списки и их составные части
- •2. Онтологии
- •2.1. Онтологии и семантическая паутина
- •2.2. Краткие сведения о спецификациях семантической паутины
- •Стандартные пространства имен
- •Классы rdf/rdfs
- •Свойства rdf/rdfs
- •2.3. Лабораторная работа № 4 Построение онтологической модели в Protégé. Создание классов
- •2.4. Лабораторная работа № 5 Построение онтологической модели в Protégé. Создание экземпляров классов
- •2.5. Лабораторная работа № 6 Выполнение sparql-запросов в Protégé
- •Модификаторы
- •3. Эвристические алгоритмы
- •3.1. Методы поиска решений с использованием графов
- •Сравнительная характеристика методов
- •3.2. Лабораторная работа № 7 Решение оптимизационной задачи с использованием эвристического алгоритма
- •Характеристика дополнительных ограничений скорости и мероприятий по их устранению
- •Варианты заданий на выполнение лабораторной работы
- •4. Нечеткие множества
- •4.1. Основы теории нечетких множеств и нечеткой логики
- •4.2. Лабораторная работа № 8. Решение прикладной задачи с использованием нечетких множеств
- •5. Генетические алгоритмы
- •5.1. Эволюционные вычисления
- •5.2. Лабораторная работа № 9. Решение оптимизационной задачи с использованием генетического алгоритма
- •Исходная популяция
- •Популяция после скрещивания
- •Расчет значений целевой функции
- •Популяция после редукции
- •Варианты заданий
- •6. Искусственные нейронные сети
- •6.1. Распознавание образов
- •6.2. Лабораторная работа № 10. Распознавание образов с использованием искусственной нейронной сети
- •Варианты заданий на выполнение лабораторной работы
- •Заключение
- •Библиографический список
- •Оглавление
- •Интеллектуальные информационные системы
- •6 80021, Г. Хабаровск, ул. Серышева, 47
- •Интеллектуальные информационные системы
4. Нечеткие множества
4.1. Основы теории нечетких множеств и нечеткой логики
Одним из методов изучения множеств без уточнения их границ является теория нечетких множеств, которая была предложена в 1965 г. профессором Калифорнийского университета Лотфи Заде. Первоначально она разрабатывалась как средство моделирования неопределенности естественного языка. Однако впоследствии круг задач, решаемых с использованием аппарата нечетких множеств, значительно расширился и сейчас включает в себя такие области, как анализ данных, распознавание, исследование операций, моделирование сложных систем, поддержка принятия решений и т. д. [4, 5].
Нередко при определении и описании характеристик объектов оперируют не только количественными, но и качественными значениями. В частности, рост человека можно количественно измерить в сантиметрах, а можно описать, используя качественные значения: карликовый, низкий, средний, высокий или гигантский. Интерпретация качественных значений носит субъективный характер, т.е. они могут по-разному трактоваться разными людьми (субъектами). В силу нечеткости (размытости) качественных значений, при необходимости перехода от них к количественным величинам возникают определенные трудности.
В системах, построенных на базе нечетких множеств, используются правила вида «ЕСЛИ А ТО В» (А В), в которых как в А (условие, предпосылку), так и в В (результат, гипотезу) могут входить качественные значения. Например, «ЕСЛИ Рост = "высокий" ТО Вид_спорта = "баскетбол"».
Переменная, значение которой определяется набором качественных значений некоторого свойства, в теории нечетких множеств называются лингвистической. В приведенном примере правила используются две лингвистические переменные: Рост и Вид_спорта.
Каждое значение лингвистической переменной определяется через так называемое нечеткое множество. Нечеткое множество определяется через некоторую базовую шкалу X и функцию принадлежности (характеристическую функцию) (х), где х Х. При этом, если в классическом канторовском множестве элемент либо принадлежит множеству ((х) = 1), либо не принадлежит ((х) = 0), то в теории нечетких множеств (х) может принимать любое значение в интервале [0, 1]. Над нечеткими множествами можно выполнять стандартные операции: дополнение (отрицание), объединение, пересечение, разность и т. д. (рис. 33).
Для нечетких множеств существует также ряд специальных операций: сложение, умножение, концентрирование, расширение и т. д.
При задании лингвистической переменной ее значения, т. е. нечеткие множества, должны удовлетворять определенным требованиям (рис. 34).
Упорядоченность. Нечеткие множества должны быть упорядочены (располагаться по базовой шкале) в соответствии с порядком задания качественных значений для лингвистической переменной.
Ограниченность. Область определения лингвистической переменной должна быть четко обозначена (определены минимальные и максимальные значения лингвистической переменной на базовой шкале). На границах универсального множества, где определена лингвистическая переменная, значения функций принадлежности ее минимального и максимального нечеткого множества должны быть единичными. На рисунке Т1 имеет неправильную функцию принадлежности, а Т6 – правильную.
Согласованность. Должно соблюдаться естественное разграничение понятий (значений лингвистической переменной), когда одна и та же точка универсального множества не может одновременно принадлежать с (х) = 1 двум и более нечетким множествам (требование нарушается парой Т2 – Т3).
Полнота. Каждое значение из области определения лингвистической переменной должно описываться хотя бы одним нечетким множеством (требование нарушается между парой T3 – Т4).
Нормальность. Каждое понятие в лингвистической переменной должно иметь хотя бы один эталонный или типичный объект, т. е. в какой-либо точке функция принадлежности нечеткого множества должна быть единичной (требование нарушается T5).
(х)
1
0 20 40 60 80 100 110 120 140 160 X
Нечеткое множество «низкий рост» н(х)
(х)
1
0 20 40 60 80 100 110 120 140 160 X
Нечеткое множество «высокий рост» в(х)
(х)
1
0 20 40 60 80 100 110 120 140 160 X
Д = Н : Дополнение нечеткого множества «низкий рост»
д(х) = 1 – н(х)
(х)
1
0 20 40 60 80 100 110 120 140 160 X
Н В : Объединение нечетких множеств «низкий рост» и «высокий рост»
нв(х) = mах(н(х), в(х))
(х)
1
0 20 40 60 80 100 110 120 140 160 X
Н В : Пересечение нечетких множеств «низкий рост» и «высокий рост»
нв(х) = min(н(х), в(х))
Рис. 33. Операции над нечеткими множествами
(х)
Т1
Т2
Т3
Т4
Т5
Т6
1
X
Рис. 34. Пример задания нечетких множеств для лингвистической переменной с нарушением требований
Требования 2–4 можно заменить одним универсальным – сумма функций принадлежности (х) по всем нечетким множествам в каждой точке области определения переменной должна равняться 1.
При обработке правил с лингвистическими переменными (нечетких правил) для вычисления истинности гипотезы применяются правила нечеткой логики. Нечеткая логика – разновидность непрерывной логики, в которой предпосылки, гипотезы и сами логические формулы могут принимать истинностные значения с некоторой долей вероятности.
Основные положения нечеткой логики:
истинность предпосылки, гипотезы или формулы лежит в интервале [0, 1];
если две предпосылки (Е1 и Е2) соединены (логическим И), то истинность гипотезы Н рассчитывается по формуле t(Н) = MIN(t(Е1), t(Е2));
если две предпосылки (Е1 и Е2) соединены (логическим ИЛИ), то истинность гипотезы Н рассчитывается по формуле t(Н) = MAX(t(Е1), t(Е2));
если правило (П) имеет свою оценку истинности, тогда итоговая истинность гипотезы Нитог корректируется с учетом истинности правила t(Нитог) = MIN(t(Н), t(П)).
Процедура обработки нечетких правил состоит из 4 этапов.
Этап 1. Вычисление значений функций принадлежности (истинности) для нечетких множеств лингвистических переменных, входящих в левые части правил.
Этап 2. Модификация нечетких множеств для лингвистической переменной, указанной в правой части правил, в соответствии со значениями функции принадлежности, полученными на первом этапе.
Этап 3. Объединение (суперпозиция) модифицированных множеств.
Этап 4. Скаляризация результата суперпозиции – переход к числовым значениям лингвистических переменных, указанных в правой части. Обычно определяется как центр тяжести суперпозиции соответствующих модифицированных множеств.
