Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
nl_rtm.doc
Скачиваний:
28
Добавлен:
25.11.2018
Размер:
502.27 Кб
Скачать

Федеральное агентство по образованию

Государственное образовательное учреждение

высшего профессионального образования

Уфимский государственный авиационный технический университет

АЛГОРИТМЫ ПРИНЯТИЯ РЕШЕНИЙ НА ОСНОВЕ

НЕЧЕТКОЙ ЛОГИКИ

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к лабораторной работе

по курсам «Системы искусственного интеллекта»,

«Интеллектуальные системы»

Уфа 2007

Федеральное агентство по образованию

Государственное образовательное учреждение

высшего профессионального образования

Уфимский государственный авиационный технический университет

Кафедра вычислительной техники и защиты информации

АЛГОРИТМЫ ПРИНЯТИЯ РЕШЕНИЙ НА ОСНОВЕ

НЕЧЕТКОЙ ЛОГИКИ

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к лабораторной работе

по курсам «Системы искусственного интеллекта»,

«Интеллектуальные системы»

Уфа 2007

Составители: В.И. Васильев, Т.Р. Кашаев, Л.А. Свечников, А.А. Шилоносов.

УДК 681.3.068

ББК 32.973.26-018.2

Алгоритмы принятия решений на основе нечеткой логики: методические указания к лабораторной работе по курсам «Системы искусственного интеллекта», «Интеллектуальные системы»/Уфимск. гос. авиац. техн. ун-т; Сост.: В.И. Васильев, Т.Р. Кашаев, Л.А. Свечников, А.А. Шилоносов; – Уфа, 2007.– 24 с.

Рассмотрены вопросы построения и моделирования интеллектуальных систем на основе нечеткой логики.

Главное внимание уделено вопросам теоретического описания подобных систем и их моделирования в среде Matlab.

Предназначены для студентов, изучающих дисциплины «Системы искусственного интеллекта», «Интеллектуальные системы».

Табл. 1. Ил. 14. Библиогр.: 3 назв.

Рецензенты: С.С. Валеев, Г.Г. Куликов

© Уфимский государственный

авиационный технический университет, 2007

Содержание

ЛАБОРАТОРНАЯ РАБОТА №1

Алгоритмы принятия решений на основе нечеткой логики

1. Цель работы

Целью выполнения работы является:

  • закрепление знаний в области нечеткой логики и механизмов принятия решений на её основе;

  • ознакомление с пакетом математического моделирования Fuzzy Toolbox в среде Matlab;

  • реализация нечеткого алгоритма принятия решений с помощью Matlab.

2. Краткие теоретические сведения

2.1. Введение

Нечеткая логика – это математическая наука, служащая расширением классической логики и основанная на концепции частичной истинности. Понятия нечетких множеств (fuzzy sets) и нечеткой логики (fuzzy logic) впервые были предложены американским ученым Лотфи Заде (Lotfi Zadeh) в 1965 г. в статье “Нечеткие множества”, опубликованной в журнале “Информатика и управление”.

Основные преимущества систем на основе нечеткой логики:

  • возможность оперирования нечеткими входными данными: например, значениями, которые невозможно задать однозначно («сильно уязвимый», «довольно дорогой» и т.п.);

  • возможность нечеткой формализации критериев оценки и сравнения: оперирование критериями "большинство", "возможно", преимущественно";

  • возможность проведения качественных оценок как входных данных, так и выходных результатов;

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

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

2.2. Основы теории нечетких множеств

В обычной теории множеств существуют несколько способов задания множества. Одним из них является использование характеристической функции, определяемой следующим образом: пусть U – некоторое универсальное множество, например, множество всех действительных чисел. Характеристическая функция множества – это функция μA: x → {0, 1}, значения которой (1 или 0) указывают на то, является элементом множества A или нет:

(1)

Нечеткие множества являются обобщением обычных множеств, для случая, когда характеристическая функция может принимать любые значения из отрезка [0, 1]. В теории нечетких множеств данная характеристическая функция называется функцией принадлежности, а ее значение μA (x) – степенью принадлежности элемента x нечеткому множеству A.

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

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

(2)

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

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

(3)

При ba = d c трапецеидальная функция принадлежности принимает симметричный вид и требует для своего описания 3-х параметров.

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

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

(4)

и задается двумя параметрами. Параметр c обозначает «центр» нечеткого множества, а параметр δ отвечает за «крутизну» функции (в соответствии «правилом 3-х сигм», площадь под кривой μ (x) на отрезке [c – 3δ, c + 3δ] равна ).

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

Для нечетких множеств используются операции, введенные Заде:

  • пересечение множеств – операция над множествами А и В, результатом которой является множество С = АВ, содержащее только те элементы, которые принадлежат и множеству A и множеству B:

(5)

  • объединение множеств – операция над множествами А и В, результатом которой является множество С = АВ, содержащее те элементы, которые принадлежат множеству A или множеству или обоим множествам:

(6)

  • отрицание множества – операция над множеством А, результатом которой является множество С =  А, содержащее все элементы, принадлежащие универсальному множеству, но не принадлежащие множеству A:

(7)

  • концентрация множества А – обозначается как CON(A), от англ. concentration; соответствует усилительной частице «очень» (например, «очень высокий», «очень дорогой»):

(8)

  • растяжение множества А – обозначается символом DIL(A), от англ. dilation; соответствует уменьшительной частице «довольно» (например, «довольно молодой», «довольно быстрый»):

(9)

Ключевыми понятиями теории нечетких множеств являются понятия нечеткой и лингвистической переменных.

Нечеткая переменная определяется тройкой < α, U, µ >, где α – наименование переменной; U – универсальное множество (область определения α); µ = µ(x) – функция принадлежности определённая на U, и характеризующая нашу степень уверенности в том, что x является значением нечёткой переменной.

Лингвистической переменной называется набор < β, T, U, G, M >, где β – наименование лингвистической переменной; Т – множество ее значений (терм-множество), представляющих собой наименования нечетких переменных; G – синтаксическая процедура, позволяющая оперировать элементами терм-множества T, в частности, генерировать новые термы (значения); М – семантическая процедура, позволяющая превратить каждое новое значение лингвистической переменной, образуемое процедурой G, в нечеткую переменную.

Нечетким логическим выводом (fuzzy logic inference) называется аппроксимация зависимости Y = f(x1, x2, , xn) выходной лингвистической переменной от входных лингвистических переменных и получение заключения в виде нечеткого множества, с использованием базы знаний, содержащей правила вида «Если …, то…».

Механизм логического вывода состоит, в общем случае, из следующих этапов:

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

2) нечеткий вывод – состоит из двух этапов:

  • определение уровней «отсечения» для левой части каждого из правил, т.е. значения функций принадлежности для левых частей каждого правила («предпосылок»). В большинстве случаев, это либо максимум, либо минимум из степеней уверенности термов, вычисленных на этапе фаззификации (логические «ИЛИ», «И»);

  • определение «усеченных» функций принадлежности. Для этого значения функций принадлежности предпосылок объединяются с соответствующими функциями принадлежности из правых частей правил по правилу «логического И»;

3) нечеткая композиция – определение результирующей функции принадлежности всей совокупности правил, т.е. объединение полученных усеченных функций (обычно по правилу «логического ИЛИ»);

4) дефаззификация – приведение к «четкости», используя результирующую функцию принадлежности. Основным методом деффазификации является центроидный (centroid) – нахождение центра тяжести плоской фигуры, ограниченной осями координат и графиком функции принадлежности нечеткого множества;

В качестве примера рассмотрим процедуру принятия решения о необходимости выделения затрат на модернизацию системы защиты информации (СЗИ).

1. Сформулируем набор нечетких логических переменных:

  • уровень угроз x = {Низкий (S), Средний (M), Высокий (L)};

  • уязвимость ресурсов y = {Невысокая (S), Высокая (L)};

  • затраты на модернизацию z = {Низкие (S), Высокие (L)}.

2. Построим графики функций принадлежности для этих переменных (рис. 3):

в

Рис. 3. Функции принадлежности для уровня угроз, уязвимости и

затрат на модернизацию СЗИ: а – уровень угроз; б – уязвимость ресурсов; в – затраты на модернизацию.

3. Сформулируем правила, регламентирующие работу системы принятия решений:

ЕСЛИ Уровень угроз = «НИЗКИЙ» И Уязвимость ресурсов = «НЕВЫСОКАЯ» ТО Затраты на модернизацию = «НИЗКИЕ»

Полный список всех правил, с указанием соответствующих значений нечетких переменных x, y и z приведен в табл. 1:

Таблица 1

База правил

x y

S

M

L

S

S

L

L

L

S

S

L

4

μ2(y)

. Построим графическое представление механизма логического вывода для конкретных значений входных переменных x = x* и y = y* (рис. 4)

0

0

1

б

0

1

1

0

5. Определим результирующую функцию принадлежности совокупности правил 1 - 4, используя при дефаззификации центроидный метод (рис. 5).

α3 = max { α1, α3, α4}

Рис. 5. Определение функции принадлежности

для выходной переменной и дефаззификация

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]