Нечеткая логика - Fuzzy logic

В логике , нечеткая логика является формой многозначной логики , в которой значение истинности переменных может быть любым действительным число между 0 и 1. Он используется для обработки концепции частичной истины, где значение истины может находиться в диапазоне между полностью истинным и совершенно ложно. Напротив, в булевой логике истинные значения переменных могут быть только целочисленными значениями 0 или 1.

Термин нечеткая логика был введен в 1965 году азербайджанским ученым Лотфи Заде, предложившим теорию нечетких множеств . Однако нечеткая логика изучалась с 1920-х годов как бесконечнозначная логика, в частности Лукасевич и Тарский .

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

Нечеткая логика применялась во многих областях, от теории управления до искусственного интеллекта .

Обзор

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

Обе степени истины и вероятность в диапазоне от 0 до 1 , и , следовательно , может показаться похожим на первом, но нечеткая логика использует степени истины в качестве математической модели на нечеткость , а вероятность является математической моделью незнанию .

Применение ценностей истины

Базовое приложение может характеризовать различные поддиапазоны непрерывной переменной . Например, измерение температуры для антиблокировочной системы тормозов может иметь несколько отдельных функций принадлежности, определяющих определенные температурные диапазоны, необходимые для правильного управления тормозами. Каждая функция отображает одно и то же значение температуры на истинное значение в диапазоне от 0 до 1. Эти значения истинности затем можно использовать для определения того, как следует контролировать тормоза. Теория нечетких множеств предоставляет средства для представления неопределенности.

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

В приложениях с нечеткой логикой нечисловые значения часто используются для облегчения выражения правил и фактов.

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

Нечеткие системы

Мамдани

Самая известная нечеткая система, при применении системы, основанной на правилах Мамдани, выполняется следующий процесс:

  1. Преобразуйте все входные значения в нечеткие функции принадлежности.
  2. Выполните все применимые правила в базе правил, чтобы вычислить нечеткие выходные функции.
  3. Устраните фаззи в функциях нечеткого вывода, чтобы получить "четкие" выходные значения.

Фаззификация

Фаззификация - это процесс присвоения числовых входных данных системы нечетким множествам с некоторой степенью принадлежности. Эта степень членства может быть где угодно в интервале [0,1]. Если он равен 0, то значение не принадлежит данному нечеткому набору, а если оно равно 1, то значение полностью принадлежит нечеткому набору. Любое значение от 0 до 1 представляет степень неопределенности того, что значение принадлежит набору. Эти нечеткие множества обычно описываются словами, и поэтому, назначая входные данные системы нечетким множествам, мы можем рассуждать с лингвистической естественностью.

Например, на изображении ниже значения выражений холодный , теплый и горячий представлены функциями, отображающими шкалу температуры. Точка на этой шкале имеет три «истинностных значения» - по одному для каждой из трех функций. Вертикальная линия на изображении представляет конкретную температуру, которую измеряют три стрелки (значения истинности). Поскольку красная стрелка указывает на ноль, эту температуру можно интерпретировать как «не горячую»; т.е. эта температура имеет нулевую принадлежность к нечеткому множеству «горячих». Оранжевая стрелка (указывающая на 0,2) может описать его как «слегка теплый», а синяя стрелка (указывающая на 0,8) «довольно холодная». Следовательно, эта температура имеет принадлежность 0,2 к нечеткому набору «теплый» и 0,8 к нечеткому набору «холодный». Степень принадлежности, присвоенная каждому нечеткому множеству, является результатом нечеткости.

Температура нечеткой логики

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

который обладает следующим свойством симметрии

Из этого следует, что

Операторы нечеткой логики

Нечеткая логика работает со значениями принадлежности таким образом, чтобы имитировать логику логики . Для этого должны быть доступны замены для основных операторов AND, OR, NOT. Для этого есть несколько способов. Распространенная замена называется операторами Заде :

Логический Нечеткое
И (х, у) МИН (х, у)
ИЛИ (x, y) МАКС (х, у)
НЕ (х) 1 - х

Для TRUE / 1 и FALSE / 0 нечеткие выражения дают тот же результат, что и логические выражения.

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

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

Другой набор операторов И / ИЛИ основан на умножении, где

x AND y = x*y
NOT x = 1 - x

Hence, 
x OR y = NOT( AND( NOT(x), NOT(y) ) )
x OR y = NOT( AND(1-x, 1-y) )
x OR y = NOT( (1-x)*(1-y) )
x OR y = 1-(1-x)*(1-y)

Учитывая любые два из И / ИЛИ / НЕ, можно получить третье. Обобщение оператора AND известно как t-норма .

IF-THEN правила

Правила IF-THEN сопоставляют входные или вычисленные значения истинности с желаемыми выходными значениями истинности. Пример:

IF temperature IS very cold THEN fan_speed is stopped
IF temperature IS cold THEN fan_speed is slow
IF temperature IS warm THEN fan_speed is moderate
IF temperature IS hot THEN fan_speed is high

При определенной температуре нечеткая переменная hot имеет определенное значение истинности, которое копируется в переменную high .

Если выходная переменная встречается в нескольких частях THEN, тогда значения из соответствующих частей IF объединяются с помощью оператора OR.

Дефаззификация

Цель состоит в том, чтобы получить непрерывную переменную из нечетких значений истинности.

Это было бы легко, если бы выходные значения истинности были точно такими же, как полученные в результате фаззификации данного числа. Однако, поскольку все выходные значения истинности вычисляются независимо, в большинстве случаев они не представляют такой набор чисел. Затем нужно выбрать число, которое лучше всего соответствует «намерению», закодированному в значении истинности. Например, для нескольких значений истинности fan_speed необходимо найти фактическую скорость, которая наилучшим образом соответствует вычисленным значениям истинности переменных «медленный», «умеренный» и т. Д.

Для этого нет единого алгоритма.

Общий алгоритм

  1. Для каждого значения истинности сократите функцию принадлежности на этом значении.
  2. Объедините полученные кривые с помощью оператора ИЛИ
  3. Найдите центр тяжести области под кривой
  4. Положение этого центра по оси x является окончательным результатом.

Такаги-Сугено-Канг (TSK)

Система TSK похожа на систему Мамдани, но процесс дефаззификации включен в выполнение нечетких правил. Они также адаптированы, так что вместо этого следствие правила представляется в виде полиномиальной функции (обычно постоянной или линейной). Пример правила с постоянным выходом:

IF temperature IS very cold = 2

В этом случае результат будет равен константе консеквента (например, 2). В большинстве сценариев у нас будет вся база правил с 2 или более правилами. В этом случае выходом всей базы правил будет среднее значение консеквента каждого правила i (Y i ), взвешенное в соответствии со значением членства его предшественника (h i ):


Вместо этого пример правила с линейным выходом:

IF temperature IS very cold AND humidity IS high = 2 * temperature +  1 * humidity

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

Основное преимущество использования TSK перед Mamdani заключается в том, что он эффективен с точки зрения вычислений и хорошо работает с другими алгоритмами, такими как ПИД-регулирование, и с алгоритмами оптимизации. Это также может гарантировать непрерывность выходной поверхности. Однако Мамдани более интуитивно понятен, и людям с ним легче работать. Следовательно, TSK обычно используется в других сложных методах, таких как системы адаптивного нейро-нечеткого вывода .

Формирование консенсуса входных данных и нечетких правил

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

Приложения

Чарльз Элкан пишет: «Оказывается, полезные приложения нечеткой логики заключаются не в высокоуровневом искусственном интеллекте, а скорее в низкоуровневом управлении машинами, особенно в потребительских товарах». Он используется в системах управления, чтобы позволить экспертам вносить расплывчатые правила, такие как «если вы находитесь близко к станции назначения и быстро двигаетесь, увеличивайте тормозное давление поезда»; затем эти расплывчатые правила могут быть численно уточнены в системе.

Многие из первых успешных приложений нечеткой логики были реализованы в Японии. Первое заметное приложение было в поезде метро в Сендае , в котором нечеткая логика смогла повысить экономичность, комфорт и точность поездки. Он также использовался для распознавания рукописных символов в карманных компьютерах Sony, помощи в полете для вертолетов, управления системами метро с целью повышения комфорта вождения, точности остановки и экономии энергии, улучшенного расхода топлива для автомобилей, нажатия одной кнопки управление стиральными машинами, автоматическое управление двигателем для пылесосов с распознаванием состояния поверхности и степени загрязнения, а также системы прогнозирования для раннего распознавания землетрясений через Бюро метеорологии Института сейсмологии, Япония.

Искусственный интеллект

При анализе ИИ и нечеткая логика представляют собой одно и то же - в том смысле, что основная логика нейронных сетей нечеткая. Нейронная сеть будет принимать различные ценные входные данные, присваивать им разные веса по отношению друг к другу и принимать решение, которое обычно также имеет значение. Нигде в этом процессе нет ничего похожего на последовательности решений «или-или», которые характеризуют нечеткую математику, почти все компьютерное программирование и цифровую электронику. 1980-е годы стали свидетелями дебатов о том, как в конечном итоге будет выглядеть ИИ: некоторые исследователи пытались смоделировать «здравый смысл» с помощью огромных двухвалентных деревьев решений, в то время как другие использовали нейронные сети, которые вскоре нашли свое применение во множестве электронных устройств. Очевидно, что логика, лежащая в основе последнего подхода, радикально отличается от первого, даже если нейронные сети построены на основе двухвалентной электроники. Нечеткая логика дает ИИ более точный способ моделирования сложных ситуаций.

Принятие медицинских решений

Нечеткая логика - важное понятие, когда дело доходит до принятия медицинских решений. Поскольку медицинские и медицинские данные могут быть субъективными или нечеткими, приложения в этой области имеют большой потенциал для получения больших преимуществ за счет использования подходов, основанных на нечеткой логике. Одна из распространенных областей применения нечеткой логики - это компьютерная диагностика (CAD) в медицине. CAD - это компьютеризированный набор взаимосвязанных инструментов, которые можно использовать для помощи врачам в принятии диагностических решений. Например, когда врач обнаруживает патологическое поражение, но все еще находится на очень ранней стадии развития, он / она может использовать метод ИБС, чтобы охарактеризовать поражение и диагностировать его природу. Нечеткая логика может быть очень подходящей для описания ключевых характеристик этого поражения. Нечеткую логику можно использовать во многих различных аспектах в рамках САПР. Такие аспекты включают в себя анализ медицинских изображений, анализ биомедицинских сигналов, сегментацию изображений или сигналов и выделение / выбор признаков изображений или сигналов, как описано, например, в и.

Самый большой вопрос в этой области приложения - сколько полезной информации можно получить при использовании нечеткой логики. Основная проблема заключается в том, как получить необходимые нечеткие данные. Это становится еще более сложной задачей, когда нужно получить такие данные от людей (обычно от пациентов). Как сказано в нем, «границы того, что может быть достигнуто и чего не может быть достигнуто в медицинской диагностике, по иронии судьбы, само по себе нечеткое» [Seven Challenges, 2019]. Как получить нечеткие данные и как проверить точность данных - все еще постоянные усилия, тесно связанные с применением нечеткой логики. Проблема оценки качества нечетких данных - сложная. Вот почему нечеткая логика - очень многообещающая возможность в области приложений САПР, но все же требует дополнительных исследований для реализации своего полного потенциала. Хотя концепции использования нечеткой логики в САПР интересны, все еще существует ряд проблем, с которыми нечеткие подходы сталкиваются в рамках САПР.

Логический анализ

В математической логике существует несколько формальных систем «нечеткой логики», большинство из которых относятся к семейству нечетких логик с t-нормой .

Пропозициональная нечеткая логика

Наиболее важные пропозициональные нечеткие логики:

  • Моноидальная основанная на t-норме пропозициональная нечеткая логика MTL - это аксиоматизация логики, в которой конъюнкция определяется непрерывной слева t-нормой, а импликация определяется как остаток t-нормы. Его модели соответствуют MTL-алгебрам, которые являются предлинейными коммутативными ограниченными целочисленными решетками с аппроксимацией .
  • Базовая пропозициональная нечеткая логика BL является расширением логики MTL, где конъюнкция определяется непрерывной t-нормой, а импликация также определяется как остаток t-нормы. Его модели соответствуют BL-алгебрам.
  • Нечеткая логика Лукасевича - это расширение базовой нечеткой логики BL, где стандартная конъюнкция является t-нормой Лукасевича. В нем есть аксиомы базовой нечеткой логики плюс аксиома двойного отрицания, а его модели соответствуют MV-алгебрам .
  • Нечеткая логика Гёделя - это расширение базовой нечеткой логики BL, где конъюнкция - это гёделевская t-норма (то есть минимум). В нем есть аксиомы BL плюс аксиома идемпотентности конъюнкции, а его модели называются G-алгебрами.
  • Нечеткая логика продукта - это расширение базовой нечеткой логики BL, где конъюнкция - это t-норма продукта. В нем есть аксиомы BL плюс еще одна аксиома сокращаемости конъюнкции, а его модели называются алгебрами произведений.
  • Нечеткая логика с оцененным синтаксисом (иногда также называемая логикой Павла), обозначаемая как EVŁ, является дальнейшим обобщением математической нечеткой логики. Хотя вышеуказанные виды нечеткой логики имеют традиционный синтаксис и многозначную семантику, синтаксис EVŁ также оценивается. Это означает, что каждая формула имеет оценку. Аксиоматизация EVŁ проистекает из нечеткой логики Лукашевича. Обобщение классической теоремы Гёделя о полноте доказуемо в EVŁ.

Нечеткая логика предикатов

Они расширяют вышеупомянутую нечеткую логику, добавляя универсальные и экзистенциальные кванторы аналогично тому, как логика предикатов создается из логики высказываний . Семантика универсального квантора в нечеткой логике t-нормы - это нижняя грань степеней истинности экземпляров квантифицированной подформулы, в то время как семантика экзистенциального квантора - верхняя грань того же самого.

Проблемы разрешимости нечеткой логики

Понятия «разрешимое подмножество» и « рекурсивно перечислимое подмножество» являются базовыми для классической математики и классической логики . Таким образом, вопрос о подходящем расширении их для теории нечетких множеств является ключевым. Первое предложение в этом направлении было сделано Е. С. Сантосом с помощью понятий нечеткой машины Тьюринга , нормального нечеткого алгоритма Маркова и нечеткой программы (см. Santos 1970). Последовательно Л. Бачино и Дж. Герла утверждали, что предложенные определения весьма сомнительны. Например, в одном из них показано, что нечеткие машины Тьюринга не подходят для теории нечеткого языка, поскольку существуют естественные нечеткие языки, интуитивно вычислимые, которые не могут быть распознаны нечеткой машиной Тьюринга. Затем они предложили следующие определения. Обозначим через Ü множество рациональных чисел в [0,1]. Тогда нечеткое подмножество s  : S [0,1] множества S рекурсивно перечислимо, если существует рекурсивное отображение h  : S × N Ü такое, что для любого x в S функция h ( x , n ) возрастает с увеличением относительно n и s ( x ) = lim h ( x , n ). Будем говорить , что s является разрешимым , если оба s и его дополнения - s рекурсивно перечислим. Возможно распространение такой теории на общий случай L-подмножеств (см. Герла 2006). Предлагаемые определения хорошо связаны с нечеткой логикой. Действительно, справедлива следующая теорема (при условии, что аппарат вывода рассматриваемой нечеткой логики удовлетворяет некоторому очевидному свойству эффективности).

Любая «аксиоматизируемая» нечеткая теория рекурсивно перечислима. В частности, нечеткое множество логически истинных формул рекурсивно перечислимо, несмотря на то, что четкое множество правильных формул, вообще говоря, не рекурсивно перечислимо. Более того, любая аксиоматизируемая и полная теория разрешима.

Это открытый вопрос, чтобы поддержать «тезис Черча» для нечеткой математики , предложенное понятие рекурсивной перечислимости для нечетких подмножеств является адекватным. Чтобы решить эту проблему, необходимо расширение понятий нечеткой грамматики и нечеткой машины Тьюринга . Другой открытый вопрос - начать с этого понятия, чтобы найти расширение теорем Гёделя на нечеткую логику.

Нечеткие базы данных

После определения нечетких отношений можно разрабатывать нечеткие реляционные базы данных . Первая нечеткая реляционная база данных FRDB появилась в диссертации Марии Земанковой (1983). Позже возникли некоторые другие модели, такие как модель Баклза-Петри, модель Прад-Тестемале, модель Умано-Фуками или модель GEFRED Дж. М. Медина, М. А. Вила и др.

Были определены языки нечетких запросов, такие как SQLf П. Боском и др. и FSQL J. Galindo et al. Эти языки определяют некоторые структуры для включения нечетких аспектов в операторы SQL, таких как нечеткие условия, нечеткие компараторы, нечеткие константы, нечеткие ограничения, нечеткие пороги, лингвистические метки и т. Д.

Сравнение с вероятностью

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

Барт Коско утверждает в своей работе «Нечеткость против вероятности», что теория вероятностей является подтеорией нечеткой логики, поскольку вопросы степени уверенности во взаимоисключающем членстве во множестве в теории вероятностей могут быть представлены как определенные случаи не исключающего взаимоисключающего градуированного членства в нечеткой теории. . В этом контексте он также выводит теорему Байеса из концепции нечеткого подмножества. Лотфи А. Заде утверждает, что нечеткая логика по своему характеру отличается от вероятности и не заменяет ее. Он преобразовал вероятность в нечеткую вероятность, а также обобщил ее на теорию возможностей .

В более общем плане нечеткая логика является одним из многих различных расширений классической логики, предназначенных для решения вопросов неопределенности, выходящих за рамки классической логики, неприменимости теории вероятностей во многих областях и парадоксов теории Демпстера – Шафера .

Отношение к экорифмам

Теоретик вычислений Лесли Валиант использует термин экорифмы, чтобы описать, сколько менее точных систем и методов, таких как нечеткая логика (и «менее надежная» логика), можно применить к алгоритмам обучения . Valiant по сути переопределяет машинное обучение как эволюционное. В общем, экорифмы - это алгоритмы, которые учатся в своей более сложной среде (следовательно, экологической ) для обобщения, аппроксимации и упрощения логики решения. Как и нечеткая логика, это методы, используемые для преодоления непрерывных переменных или систем, слишком сложных для полного перечисления или понимания дискретно или точно. Экорифмы и нечеткая логика также имеют общее свойство иметь дело с возможностями больше, чем с вероятностями, хотя обратная связь и прямая связь , в основном стохастические веса, являются особенностью обоих, когда имеют дело, например, с динамическими системами .

Компенсаторная нечеткая логика

Компенсаторная нечеткая логика (CFL) - это ветвь нечеткой логики с модифицированными правилами конъюнкции и дизъюнкции. Когда значение истинности одного компонента соединения или дизъюнкции увеличивается или уменьшается, другой компонент уменьшается или увеличивается для компенсации. Это увеличение или уменьшение значения истинности может быть компенсировано увеличением или уменьшением другого компонента. Смещение может быть заблокировано при достижении определенных пороговых значений. Сторонники утверждают, что CFL позволяет улучшить семантическое поведение вычислений и имитировать естественный язык.

Компенсаторная нечеткая логика состоит из четырех непрерывных операторов: конъюнкция (c); дизъюнкция (г); нечеткий строгий порядок (или); и отрицание (п). Конъюнкция - это среднее геометрическое и двойственные ему конъюнктивные и дизъюнктивные операторы.

СТАНДАРТ IEEE 1855–2016 - Стандарт IEEE для языка нечеткой разметки

IEEE 1855 , то стандарт IEEE 1855-2016, о языке спецификации под названием Fuzzy Markup Language (FML) , разработанный Ассоциацией IEEE Standards . FML позволяет моделировать систему с нечеткой логикой в ​​удобочитаемом и аппаратно-независимом виде. FML основан на расширяемом языке разметки ( XML ). Разработчики нечетких систем с FML имеют унифицированную и высокоуровневую методологию для описания взаимодействующих нечетких систем. IEEE STANDARD 1855–2016 использует язык определения схемы W3C XML для определения синтаксиса и семантики программ FML.

До внедрения FML специалисты по нечеткой логике могли обмениваться информацией о своих нечетких алгоритмах, добавляя к своим программным функциям возможность читать, правильно анализировать и сохранять результат своей работы в форме, совместимой с языком нечеткого управления (FCL). описан и определен частью 7 стандарта IEC 61131 .

Смотрите также

использованная литература

Библиография

внешние ссылки