[Биография]      [Диссертация]     [Ссылки]     [Содержание библиотеки]     [Почта]

Нечёткая логика

Источник:
inf.susu.ac.ru/~pollak/expert/fuzzy/doc2.htm
Нечеткая логика - надмножество Булевой логики, которая была расширена с целью обработки концепции частичной правды - значения истинности между " полностью истинным " и " полностью ложным ". Она была введена доктором Lotfi Zadeh UC/BERKELEY в 1960-ых как способ моделирования неопределенностей естественного языка. 
Основная идея Заде состояла в том, что человеческий способ рассуждений , опирающийся на естественный язык, не может быть описан в рамках традиционных математических формализмов. Эти формализмам присуща строгая однозначность интерпретации, а все, что связано с использованием естественного языка, имеет многозначную интерпретацию. С самого начала основная прагматическа цель Заде  - создание аппарата, способного моделировать человеческие рассуждения и объяснять человеческие приемы принятия решений в ходе решения различных задач, привлекоа в эту область многочисленную армию прикладников. Идеи Заде и его последователй находят применение при создании систем, понимающих тексты на естественном языке, при создании планирующих систем, опирающихся на неполную информацию, при обработке зрительных сигналов, при управлении техническими, социальными и экономическими системами, в системах искусственного интеллекта и робототехнических системах.
В классической теории множеств, подмножество U множества S может быть определено как 
отображение  элементов S в элементы множества {0, 1},
            U: S - > {0, 1}
Это отображение может быть представлено как совокупность упорядоченных пар, с точно одной упорядоченной парой, сопоставленной с каждым элементом S. Первый элемент
упорядоченной пары - элемент множества S,  второй элемент - элемент из множества {0, 1}. Значение нуль  используется, чтобы представить непринадлежность к множеству, а значение один используется для представления принадлежности. Истинность или ложность утверждения 
           X находится в U
определяется,  исходя из упорядоченных пар, чей первый элемент - x. Утверждение  истинно, если второй элемент упорядоченной пары - 1, и  ложно, если это - 0. Точно так же нечеткое подмножество F множества S может быть определено как совокупность упорядоченных пар, первым элементом которых является S, а второй элемент находится в интервале [0,1] с точно одной упорядоченной парой, представленной для каждого элемента S. Он определяет отображение  элемента из множества   S в значения на интервале [0,1]. Это означает, что переход от полной принадлежноти объекта классу к полной го непринадлежности происходит не скачком, а плавно, постепенно, причем принадлежность элемента множеству выражается числом из интервала [0, 1]. Значение нуль используется для представления полной непринадлежности, значение один используется для представления полной принадлежности, и значения между ними используется для  представления промежуточных значений СТЕПЕНИ ПРИНАДЛЕЖНОСТИ. Множество S называется универсальным множеством нечеткого подмножества F. Отображение часто описывается с помощью  ФУНКЦИИ ПРИНАДЛЕЖНОСТИ F. Степень, с которой утверждение 
              X находится в F
является истинным,  определяется  упорядоченной  парой, первый элемент которой x.  Второй элемент упорядоченной пары  - СТЕПЕНЬ истинности  утверждения. Практически термины " функция принадлежности " и нечеткое подмножество взаимозаменяемы
Рассмотрим пример
.Поговорим о  людях и "высоте". В этом случае множество S (область исследования) - множество людей. Давайте определим нечеткое подмножество ВЫСОКИЙ , которое ответит на вопрос "  какой  человек X является высоким? " Заде описывает ВЫСОКИЙ как ЛИНГВИСТИЧЕСКУЮ ПЕРЕМЕННУЮ, которая представляет  познавательную категорию "высоты". Каждому человеку из области исследования, нужно назначить степень принадлежности к нечеткому подмножеству ВЫСОКИЙ . Самый простой способ сделать это, используя функцию  принадлежности, основанную на росте человека.
 Высокий (x) = {0, если рост (x) < 5 футов.,
                         ( рост (x) -5ft.)/2ft., если 5 футов. < = рост (x) < = 7 футов.,
                           1, если рост (x) > 7 футов.}
На графике это выглядит так :
1.0 +                   +-------------------

    |                  /

    |                /
0.5 +            /

    |              /

    |             /
0.0 +-------------+-----+-------------------

                  |     |

                 5.0   7.0
              рост, футы ->
Согласно данному  определению, мы имеем следующие значения
 
Персона  Рост Функция принадлежности
Билли  3 ' 2" 0.00 [я думаю]
Лесли  5 ' 5" 0.21
Дрейк 5 ' 9"  0.38
Эрик  5 ' 10" 0.42
Карин 7 ' 2" 1.00 [зависит от того, кто спрашивает]
Выражение подобное выражению " А принадлежит X " может интерпретироваться с некоторой степенью истинности. Например, " Дрейк -  ВЫСОКИЙ " = 0.38

Замечание: функция принадлежности, используемые в большинстве прикладных программ почти никогда не имеют такую простую форму как ВЫСОКИЙ(x). Как минимум она может определяться треугольной нормой или быть намного  сложнее. При  обсуждении мы охарактеризовали функцию принадлежности так, как будто она всегда основана на единственном критерии, но на самом деле это не так.. Можно было бы , например, определить  функцию принадлежности для ВЫСОКИЙ в зависимости и от роста человека и от его возраста (он высок для своего возраста). Это совершенно естественно , и иногда используется практически.Такая функция  называется   двумерной функцией принадлежности, или " нечетким соотношением ".
 Также можно иметь и большее количество критериев, или иметь функцию принадлежности,  зависящую от элементов из совершенно  различных областей исследования.

Логические операции:
Теперь, когда мы знаем то, что значит утверждение подобное " X - НИЗКИЙ"  в нечеткой логике,
как  интерпретировать утверждение  подобное такому
            X - НИЗОК, и Y  -ВЫСОК, или (не Z - СРЕДНИЙ)
Стандартные определения в нечеткой логике:
   Истинно (не x) = 1.0 - истинно (x)
   Истинно (x и y) = минимум (истинно  (x), истинно  (y))
   Истинно (x или y) = максимум (истинно (x), истинно (y)) 
Некоторые исследователи в области нечеткой логики  используют другую интерпретацию
 операций И и ИЛИ , но определение  операции НЕ не изменилось.
 Замечание. Если  использовать  только значения нуль  и один в этих определениях, то
 получатся те же самые таблицы истинности, которые  определены в Булевой логике. Это правило известно как ПРАВИЛО РАСПРОСТРАНЕНИЯ, которое гласит , что классические результаты Булевой логики могут быть восстановлены из нечетких логических операций, когда все нечеткие значения функций принадлежности ограниченны множеством {0, 1}. Этим эффективно устанавливается, что нечеткие подмножества и нечеткая  логика являются обобщением классической теории множеств и классической  логики. Фактически это рассуждение говорит о том, что все четкие подмножества являются очень специальным типом нечетких подмножеств ;
и нет никакого конфликта между нечеткими и точными методами.

Некоторые примеры - примем то же самое определение ВЫСОКИЙ, данное ранее , и кроме того предположим, что мы имеем нечеткое подмножество СТАРЫЙ, определенное следующей функцией принадлежности:
Старый (x) = {0, если возраст (x) < 18 лет
                     (Возраст (x) -18 лет)/42 , если 18 лет < = возраст (x) < = 60 лет
                     1, если возраст (x) > 60 лет.}
И  пусть
   a = X - ВЫСОК, и X - СТАР
   b = X  - ВЫСОК, или X - СТАР
   c = не (X  - ВЫСОК)
Тогда мы можем вычислить следующие значения.
 
Рост Возраст Х - высокий Х - старый a b c
3' 2" 65 0.00 1.00 0.00 1.00 1.00
5' 5" 30 0.21 0.29. 0.21 0.29 0.79
5' 9" 27 0.38 0.21 0.21 0.38 0.62
6' 1" 31 0.54 0.31 0.31 0.54 0.46
7' 2" 45 1.00 0.64 0.64 1.00 1.00
Таблица соответствия метрической системе:
Feet+Inches = Метры
  ------------------------------
   3 ' 2"           0.9652
   5 ' 5"           1.6510
   5 ' 9"           1.7526
    6 ' 1"          1.8542
    7 ' 2"          2.1844