MATLAB.Exponenta
–Û·Ë͇ Matlab&Toolboxes

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

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

В оглавление книги \ К следующему разделу \ К предыдущему разделу

1.7. Нечеткая логика

Нечеткая логика это обобщение традиционной аристотелевой логики на случай, когда истинность рассматривается как лингвистическая переменная, принимающая значения типа: "очень истинно", "более-менее истинно", "не очень ложно" и т.п. Указанные лингвистические значения представляются нечеткими множествами.

1.7.1. Лингвистические переменные

Напомним, что лингвистической называется переменная, принимающая значения из множества слов или словосочетаний некоторого естественного или искусственного языка. Множество допустимых значений лингвистической переменной называется терм-множеством. Задание значения переменной словами, без использования чисел, для человека более естественно. Ежедневно мы принимаем решения на основе лингвистической информации типа: "очень высокая температура"; "длительная поездка"; "быстрый ответ"; "красивый букет"; "гармоничный вкус" и т.п. Психологи установили, что в человеческом мозге почти вся числовая информация вербально перекодируется и хранится в виде лингвистических термов. Понятие лингвистической переменной играет важную роль в нечетком логическом выводе и в принятии решений на основе приближенных рассуждений. Формально, лингвистическая переменная определяется следующим образом.

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

Пример 9. Рассмотрим лингвистическую переменную с именем  "температура в комнате". Тогда оставшуюся четверку можно определить так:

  • универсальное множество  - ; ;
  • терм-множество  - ; {"холодно", "комфортно", "жарко"} с такими функциями принадлежностями ():
  • синтаксические правила , порождающее новые термы с использованием квантификаторов "не", "очень" и "более-менее";
  • семантические правила , в виде таблицы 4.

Таблица 4 - Правила расчета функций принадлежности

Квантификатор

Функция принадлежности ()

не t

очень t

более-менее t

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

Рисунок 13 - Лингвистическая переменная "температура в комнате"

1.7.2. Нечеткая истинность

Особое место в нечеткой логике занимает лингвистическая переменная "истинность". В классической логике истинность может принимать только два значения: истинно и ложно. В нечеткой логике истинность "размытая". Нечеткая истинность определяется аксиоматически, причем разные авторы делают это по-разному. Интервал [0, 1] используется как универсальное множество для задания лингвистической переменной "истинность". Обычная, четкая истинность может быть представлена нечеткими множествами-синглтонами. В этом случае четкому понятию истинно будет соответствовать функция принадлежности , а четкому понятию ложно  - ; , .

Для задания нечеткой истинности Заде предложил такие функции принадлежности термов "истинно" и "ложно":

;

, ,

где   - ; параметр, определяющий носители нечетких множеств "истинно" и "ложно". Для нечеткого множества "истинно" носителем будет интервал , а для нечеткого множества ложно"  - ; .

Функции принадлежности нечетких термов "истинно" и "ложно" изображены на рис. 14. Они построены при значении параметра . Как видно, графики функций принадлежности термов "истинно" и "ложно" представляют собой зеркальные отображения.

Рисунок 14 - Лингвистическая переменная "истинность" по Заде

Для задания нечеткой истинности Балдвин предложил такие функции принадлежности нечетких "истинно" и "ложно":

где .

Квантификаторы "более-менее" и "очень" часто применяют к нечеткими множествами "истинно" и "ложно", получая таким образом термы "очень ложно", "более-менее ложно", "более-менее истинно", "очень истинно", "очень, очень истинно", "очень, очень ложно" и т.п. Функции принадлежности новых термов получают, выполняя операции концентрации и растяжения нечетких множеств "истинно" и "ложно". Операция концентрации соответствует возведению функции принадлежности в квадрат, а операция растяжения - возведению в степень ½. Следовательно, функции принадлежности термов "очень, очень ложно", "очень ложно", "более-менее ложно", "более-менее истинно", "истинно", "очень истинно" и "очень, очень истинно" задаются так:

;

;

;

;

.

Графики функций принадлежности этих термов показаны на рис. 15.

Рисунок 15 - Лингвистическая переменная "истинность" по Балдвину

1.7.3. Нечеткие логические операции

Вначале кратко напомнить основные положения обычной (булевой) логики. Рассмотрим два утверждения A и B, каждое из которых может быть истинным или ложным, т.е. принимать значения "1" или "0". Для этих двух утверждений всего существует различных логических операций, из которых содержательно интерпретируются лишь пять: И (), ИЛИ (), исключающее ИЛИ (), импликация () и эквивалентность (). Таблицы истинности для этих операций приведены в табл. 5.

Таблица 5 - Таблицы истинности булевой логики

A

B

0

0

0

0

0

1

1

0

1

0

1

1

1

0

1

0

0

1

1

0

0

1

1

1

1

0

1

1

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

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

;

;

;

.

В многозначной логике логические операции могут быть заданы таблицами истинности. В нечеткой логике количество возможных значений истинности может быть бесконечным, следовательно в общем виде табличное представление логических операций невозможно. Однако, в табличной форме можно представить нечеткие логические операции для ограниченного количества истинностных значений, например, для терм-множества {"истинно", "очень истинно", "не истинно", "более-менее ложно", "ложно"}. Для трехзначной логики с нечеткими значениями истинности T  - ; "истинно", F  - ; "ложно" и T+F - "неизвестно" Л Заде предложил такие лингвистические таблицы истинности:

T

T

F

T

T

T

F

F

F

T

T

T+F

F

T+F

T

F

T

T

F

T

F

F

T

F

F

F

T+F

T

F

T+F

T+F

T

T+F

T+F

T

T+F

F

T+F

F

T+F

T+F

T+F

T+F

T+F

T+F

Применяя правила выполнения нечетких логических операций из определения 45 можно расширить таблицы истинности для большего количества термов. Как это сделать рассмотрим на следующем примере.

Пример 10. Заданы следующие нечеткие истинностные значения:

;

;

.

Применяя правило из определения 45, найдем нечеткую истинность выражения "почти истинно ИЛИ истинно":

.

Сравним полученное нечеткое множество с нечетким множеством "более-менее истинно". Они почти равны, значит:

.

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

ложно

ложно

ложно

ложно

истинно

ложно

ложно

истинно

истинно

истинно

истинно

истинно

неопределенно

ложно

ложно

неопределенно

неопределенно

истинно

неопределенно

истинно

неопределенно

неопределенно

неопределенно

неопределенно

истинно

очень истинно

истинно

очень истинно

истинно

более-менее истинно

более-менее истинно

истинно

1.7.3. Нечеткая база знаний

Определение 46. Нечеткой базой знаний называется совокупность нечетких правил "Если - то", определяющих взаимосвязь между входами и выходами исследуемого объекта. Обобщенный формат нечетких правил такой:

Если посылка правила, то заключение правила.

Посылка правила или антецедент представляет собой утверждение типа "x есть низкий", где "низкий"  - ;это терм (лингвистическое значение), заданный нечетким множеством на универсальном множестве лингвистической переменной x. Квантификаторы "очень", "более-менее", "не", "почти" и т.п. могут использоваться для модификации термов антецедента.

Заключение или следствие правила представляет собой утверждение типа "y есть d", в котором значение выходной переменной (d) может задаваться:

  1. нечетким термом: "y есть высокий";

  2. классом решений: "y есть бронхит"

  3. четкой константой: "y=5";

  4. четкой функцией от входных переменных: "y=5+4*x".

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

, .

Пример 11. Следующая нечеткая база знаний описывает зависимость между возрастом водителя (x) и возможностью дорожно-транспортного происшествия (y):

Если x = Молодой, то y = Высокая;

Если x = Средний, то y = Низкая;

Если x = Очень старый, то y = Высокая.

Пусть функции принадлежностей термов имеют вид, показанный на рис. 16. Тогда нечеткие отношения, соответствующие правилам базы знаний, будут такими, как на рис. 17.

Рисунок 16 - Функции принадлежности термов

Рисунок 17 - Нечеткие отношения, соответствующие правилам базы знаний из примера 11

Для задания многомерных зависимостей "входы-выходы" используют нечеткие логические операции И и ИЛИ. Удобно правила формулировать так, чтобы внутри каждого правил переменные объединялись логической операцией И, а правила в базе знаний связывались операцией ИЛИ. В этом случае нечеткую базу знаний, связывающую входы с выходом , можно представить в следующем виде:

ЕСЛИ

ИЛИ

ИЛИ,

ТО, ,

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

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

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

Приведенную выше базу знаний удобно представлять таблицей, которую иногда называют матрицей знаний (табл. 6).

Таблица 6 - Нечеткая база знаний

Для учета различной степени уверенности эксперта в адекватности правил используют весовые коэффициенты. Нечеткую базу знаний из таблицы 6 с весовыми коэффициентами правил можно записать следующим образом:

,

где   - ; нечеткая логическая операция ИЛИ;

  - ;нечеткая логическая операция И;

  - ; весовой коэффициент правила с номером .

В оглавление книги \ К следующему разделу \ К предыдущему разделу


Поиск по сайту:

Система Orphus

Яндекс.Метрика