Type a search term to find related articles by LIMS subject matter experts gathered from the most trusted and dynamic collaboration tools in the laboratory informatics industry.
Наука | |
Нечёткая логика | |
---|---|
Медиафайлы на Викискладе |
Нечёткая логика (англ. fuzzy logic) — раздел математики, являющийся обобщением классической логики и теории множеств, базирующийся на понятии нечёткого множества, впервые введённого Лотфи Заде в 1965 году как объекта с функцией принадлежности элемента ко множеству, принимающей любые значения на отрезке , а не только или . На основе этого понятия вводятся различные логические операции над нечёткими множествами и формулируется понятие лингвистической переменной, в качестве значений которой выступают нечёткие множества.
Предметом нечёткой логики считается исследование рассуждений в условиях нечёткости, размытости, сходных с рассуждениями в обычном смысле, и их применение в вычислительных системах[1].
В настоящее время[уточнить] существует по крайней мере два основных направления научных исследований в области нечёткой логики:
Символическая нечёткая логика основывается на понятии t-нормы. После выбора некоторой t-нормы (а её можно ввести несколькими разными способами) появляется возможность определить основные операции над пропозициональными переменными: конъюнкцию, дизъюнкцию, импликацию, отрицание и другие.
Нетрудно доказать теорему о том, что дистрибутивность, присутствующая в классической логике, выполняется только в случае, когда в качестве t-нормы выбирается t-норма Гёделя[уточнить].
Кроме того, в силу определённых причин, в качестве импликации чаще всего выбирают операцию, называемую residium (она, вообще говоря, также зависит от выбора t-нормы).
Определение основных операций, перечисленных выше, приводит к формальному определению базисной нечёткой логики, которая имеет много общего с классической булевозначной логикой (точнее, с исчислением высказываний).
Существуют три основных базисных нечётких логики: логика Лукасевича, логика Гёделя и вероятностная логика (англ. product logic). Интересно, что объединение любых двух из трёх перечисленных выше логик приводит к классической булевозначной логике.
Функция нечёткой логики Заде всегда принимает значение одного из своих аргументов либо его отрицания. Таким образом, функцию нечёткой логики можно задать таблицей выбора[2], в которой перечислены все варианты упорядочения аргументов и отрицаний, и для каждого варианта указано значение функции. Например, строка таблицы функции двух аргументов может иметь следующий вид:
.
Однако произвольная таблица выбора не всегда задаёт функцию нечёткой логики. В работе[3] был сформулирован критерий, позволяющий установить является ли функция, заданная таблицей выбора, функцией нечёткой логики и предложен простой алгоритм синтеза, основанный на введённых концепциях конституент минимума и максимума. Функция нечёткой логики представляет собой дизъюнкцию конституент минимума, где конституента максимума — это конъюнкция переменных текущей области больших либо равных значению функции в этой области (справа от значения функции в неравенстве, включая значение функции). Например, для указанной строки таблицы конституента минимума имеет вид .
Основное понятие нечёткой логики в широком смысле — нечёткое множество, определяемое при помощи обобщённого понятия характеристической функции. Затем вводятся понятия объединения, пересечения и дополнения множеств (через характеристическую функцию; задать можно различными способами), понятие нечёткого отношения, а также одно из важнейших понятий — понятие лингвистической переменной.
Вообще говоря, даже такой минимальный набор определений позволяет использовать нечёткую логику в некоторых приложениях, для большинства же необходимо задать ещё и правило вывода (и оператор импликации).
Поскольку нечёткие множества описываются функциями принадлежности, а t-нормы и k-нормы обычными математическими операциями, можно представить нечёткие логические рассуждения в виде нейронной сети. Для этого функции принадлежности надо интерпретировать как функции активации нейронов, передачу сигналов как связи, а логические t-нормы и k-нормы, как специальные виды нейронов, выполняющие математические соответствующие операции. Существует большое разнообразие подобных нейро-нечётких сетей (neuro-fuzzy network (англ.)) . Например, ANFIS (Adaptive Neuro fuzzy Inference System) — адаптивная нейро-нечеткая система вывода.[4] (англ.)
Она может быть описана в универсальной форме аппроксиматоров как
,
кроме того, этой формулой могут быть описаны также некоторые виды нейронных сетей, такие как радиально базисные сети (RBF), многослойные персептроны (MLP), а также вейвлеты и сплайны.
Нечёткое множество, содержащее число 5, можно задать, например, такой характеристической функцией:
В обозначениях, принятых для лингвистической переменной:
Характеристические функции:
Правило G порождает новые термы с использованием союзов «и», «или», «не», «очень», «более или менее».
Нечёткая логика — набор нестрогих правил, в которых для достижения поставленной цели могут использоваться радикальные идеи, интуитивные догадки, а также опыт специалистов, накопленный в соответствующей области. Нечёткой логике свойственно отсутствие строгих стандартов. Чаще всего она применяется в экспертных системах, нейронных сетях и системах искусственного интеллекта. Вместо традиционных значений Истина и Ложь в нечёткой логике используется более широкий диапазон значений, среди которых Истина, Ложь, Возможно, Иногда, Не помню (Как бы Да, Почему бы и Нет, Ещё не решил, Не скажу…). Нечёткая логика просто незаменима в тех случаях, когда на поставленный вопрос нет чёткого ответа (да или нет; «0» или «1») или наперёд неизвестны все возможные ситуации. Например, в нечёткой логике высказывание вида «X есть большое число» интерпретируется как имеющее неточное значение, характеризуемое некоторым нечётким множеством. «Искусственный интеллект и нейронные сети — это попытка смоделировать на компьютере поведение человека. А так как люди редко видят окружающий мир лишь в чёрно-белом цвете, возникает необходимость в использовании нечёткой логики».[5]
Нечёткая логика и байесовская вероятность связаны между собой с помощью байесовской логико-вероятностной модели нечёткого вывода. Данная модель предлагает способ трансформировать набор нечётких продукций в набор вероятностных функций, которые используются для определения апостериорного распределения на множестве гипотез, соответствующих значениям выходной лингвистической переменной. Апостериорное распределение затем используется для дефаззификации, то есть получения чёткого значения выходной переменной.
Нечёткие продукции — правила вида «ЕСЛИ ... ТО ...», где посылка и заключение содержат лингвистические переменные, описывающие качественные характеристики объектов или явлений. Например, «ЕСЛИ температура НИЗКАЯ ТО скорость ВЫСОКАЯ». Лингвистические переменные имеют терм-множества, состоящие из нечётких множеств, которые задаются функциями принадлежности. Например, терм-множество переменной температура может состоять из нечётких множеств «НИЗКАЯ, СРЕДНЯЯ и ВЫСОКАЯ», каждое из которых имеет свою функцию принадлежности на числовой шкале температуры.[6]
Байесовская логико-вероятностная модель нечёткого вывода предполагает, что каждое значение выходной лингвистической переменной рассматривается как гипотеза о том, что эта переменная принимает это значение. Например, если выходная переменная — скорость, то её терм-множество может состоять из гипотез «НИЗКАЯ, СРЕДНЯЯ и ВЫСОКАЯ». Для каждой гипотезы можно определить априорную вероятность, отражающую степень уверенности в её истинности до получения новой информации. Например, если знать, что скорость обычно бывает средней, то можно задать априорную вероятность для гипотезы «СРЕДНЯЯ» больше, чем для других гипотез.[7]
Новая информация поступает в виде значений входных лингвистических переменных, которые являются свидетельствами в пользу или против гипотез. Например, если измерить температуру и получить значение 15 градусов, то это свидетельство в пользу гипотезы НИЗКАЯ для переменной температура. Степень принадлежности этого значения нечёткому множеству «НИЗКАЯ» определяется функцией принадлежности этого множества. Например, если функция принадлежности имеет вид треугольника с вершиной в точке 10 градусов и основанием от 0 до 20 градусов, то степень принадлежности значения 15 градусов будет равна 0.25.[7]
Для каждой нечёткой продукции можно определить условную вероятность заключения при данной посылке, используя функции принадлежности нечётких множеств, входящих в посылку и заключение. Например, если продукция имеет вид «ЕСЛИ температура НИЗКАЯ ТО скорость ВЫСОКАЯ», то условная вероятность заключения при данной посылке будет равна степени принадлежности значения температуры нечёткому множеству НИЗКАЯ, умноженной на некоторый коэффициент, отражающий силу связи между температурой и скоростью.[7]
Используя теорему Байеса, можно обновить априорные вероятности гипотез по выходной лингвистической переменной, учитывая новую информацию в виде значений входных лингвистических переменных и условных вероятностей заключений при данных посылках. Таким образом, получается апостериорное распределение вероятностей на множестве гипотез, которое отражает степень уверенности в истинности каждой гипотезы после получения новой информации.[7]
Для дефаззификации, то есть получения чёткого значения выходной переменной, можно использовать различные методы, основанные на апостериорном распределении вероятностей. Например, можно выбрать ту гипотезу, которая имеет максимальную апостериорную вероятность, и присвоить выходной переменной значение, соответствующее центру или вершине нечёткого множества, связанного с этой гипотезой. Это называется методом максимума апостериорной вероятности (MAP). Альтернативно, можно вычислить математическое ожидание выходной переменной по апостериорному распределению вероятностей и присвоить ей это значение. Это называется методом среднего значения апостериорной вероятности (MEP).[8]
на русском языке
на других языках