13.2. Алгоритмы нечеткого логического вывода
Нечеткий логический вывод включает пять этапов: фаззификация, агрегирование, активизация, аккумуляция и дефаззификация.
13.2.1. Фаззификация
Под фаззификацией понимают процесс нахождения ui j (j =1,n ; i=1,mj), значений функций принадлежности ij(xj) нечетких множеств Mij, определяющих нечеткое значение ij аргумента функции f с именем i, по известным значениям аргументов xj:
uij= ij(xj).
Значение uij интерпретируется как степень истинности нечеткого высказывания Aij: Aii : i ЕСТЬ ij , j=1,n, i=1,mjij Tj, I
Рассмотрим пример фаззификации. Пусть скорость автомобиля a1 равна 55 км/час. Результат фаззификации b1 (b1 = 0.68) при заданной функции принадлежности показан на рис. 5.2.
Рис. 13.2.
Пусть определены нечеткие множества, определяющие лингвистические значения низкого и высокого содержания гемоглобина в крови (табл. 13.3., рис. 13.3.) и лингвистические значения низкого и нормального веса новорожденного (табл. 13.3., рис. 13.4.).
Таблица 13.3.
|
Лингвистическое имя аргумента функции |
Лингвистическое имя значения функции |
Нечеткое множество |
Функция принадлежности |
1 |
Содержание гемоглобина в крови |
Низкое |
|
11(x1) = -0.01 x1 + 1.5
|
2 |
Содержание гемоглобина в крови |
Высокое |
|
21(x1) = 0.01 x1 - 0.5
|
3 |
Вес новорожденного |
Низкое |
|
12(x2) = -0.00025 x2 + 1.125
|
4 |
Вес новорожденного |
Высокий |
|
22(x2) = 0.00025 x2 - 0.125 |
0.5
50 100 150 y
Рис. 5.3. Функции принадлежности нечетких множеств «Низкое содержание гемоглобина в крови» и «Высокое содержание гемоглобина в крови»
0.5
Рис. 13.4. Функции принадлежности нечетких множеств «Низкий вес новорожденного» и «Нормальный вес новорожденного»
Пусть обследования показали, что уровень гемоглобина в крови матери равен x1=80 единицам, а вес ребенка: x2 = 2100 грамм.
Тогда результат фаззификации определяется значениями выражений:
11(x1) = -0.01 x1 + 1.5 = -0.01 × 80 + 1.5 = 0.7 (низкий);
21(x1) = 0.01 × 80 - 0.5 = 0.3 (высокий);
12(x2) = -0.00025 x2 + 1.125 = -0.00025 × 2100 + 1.125 = 0.6 (низкий);
22(x2) = 0.00025 × 2100 - 0.125 = 0.4 (нормальный).
13.2.2. Агрегирование
Рассмотрим множество посылок:
С = {cl /cl:BT, l=1,L; B = {j}; j=1,n; }.
где B множество лингвистических имен аргументов, а T множество всех лингвистических значений, которые могут принимать аргументы функции.
Для каждой посылки cl существует нечеткое высказывание Sl, являющееся конъюнкцией нечетких высказываний:
.
Определим для каждой посылки l (l =1,L) функцию l на множестве натуральных чисел: l: N N, которая 7равна i = l(j) тогда и только тогда, когда
cl(j) = aij (j=1,n; i=1,mj).
Агрегирование
- процедура определения степени истинности
посылки cl,
l=1,L
правил системы нечеткого вывода.
Для определения степени истинности посылки в форме нечеткой конъюнкции (связка «И») может быть использована алгебраическое произведение степеней истинности нечетких высказываний, входящих в посылку cl ,l=1,L:
2. Второй способ нахождения степени истинности посылки основан на определении минимальной степени истинности высказывания, среди высказываний входящих в посылку:
Воспользуемся данными, полученными при фаззификации в предыдущем примере, выполним агрегирование и найдем степень истинности каждой из четырех посылок (см. таблицу 5.5.), используя оба способа.
Таблица 13.5.
№ |
Лингвистическое имя аргумента функции |
Лингвистическое значение аргумента функции (в скобках показан результат фаззификации) |
Посылки |
|||
1 |
2 |
3 |
4 |
|||
1 |
Уровень гемоглобина у матери |
Низкий (u11 = 0.7) |
Y |
|
Y |
|
2 |
Высокий (u12 = 0.3) |
|
Y |
|
Y |
|
3 |
Вес новорожденного |
Низкий (u21 = 0.6) |
Y |
Y |
|
|
4 |
Нормальный ( u22 = 0.4) |
|
|
Y |
Y |
|
|
Способы агрегации |
|
|
|||
|
Первый способ (определение произведения) |
|
0.42 |
0.18 |
0.28 |
0.12 |
|
Второй способ (определение минимума) |
|
0.6 |
0.3 |
0.4 |
0.3 |
