Нечёткая логика: различия между версиями
[отпатрулированная версия] | [непроверенная версия] |
SandBot (обсуждение | вклад) м →Ссылки: удаление устаревшего параметра |
→Преамбула: поставил недостающую запятую |
||
Строка 1: | Строка 1: | ||
'''Нечёткая логика''' ({{lang-en|fuzzy logic}}) — раздел математики, являющийся обобщением классической [[Математическая логика|логики]] и [[теория множеств|теории множеств]], базирующийся на понятии [[нечёткое множество|нечёткого множества]], впервые введённого [[Заде, Лютфи Аскер|Лютфи Заде]] в [[1965 год в науке|1965 году]] как объекта с [[Функция принадлежности|функцией принадлежности]] элемента к множеству, принимающей любые значения в интервале <math>[0, 1]</math>, а не только <math>0</math> или <math>1</math>. На основе этого понятия вводятся различные логические операции над нечёткими множествами и формулируется понятие лингвистической переменной, в качестве значений которой выступают нечёткие множества. |
'''Нечёткая логика''' ({{lang-en|fuzzy logic}}) — раздел математики, являющийся обобщением классической [[Математическая логика|логики]] и [[теория множеств|теории множеств]], базирующийся на понятии [[нечёткое множество|нечёткого множества]], впервые введённого [[Заде, Лютфи Аскер|Лютфи Заде]] в [[1965 год в науке|1965 году]], как объекта с [[Функция принадлежности|функцией принадлежности]] элемента к множеству, принимающей любые значения в интервале <math>[0, 1]</math>, а не только <math>0</math> или <math>1</math>. На основе этого понятия вводятся различные логические операции над нечёткими множествами и формулируется понятие лингвистической переменной, в качестве значений которой выступают нечёткие множества. |
||
Предметом нечёткой логики считается исследование рассуждений в условиях нечёткости, размытости, сходных с рассуждениями в обычном смысле, и их применение в вычислительных системах<ref>В. В. Круглов, M. И. Дли, Р. Ю. Голунов. Нечеткая логика и искусственные нейронные сети. — М.: Физматлит, 2000. — 224 с. ISBN 5-94052-027-8. «<cite>Предметом нечёткой логики является построение моделей приближенных рассуждений человека и использование их в компьютерных системах</cite>»</ref>. |
Предметом нечёткой логики считается исследование рассуждений в условиях нечёткости, размытости, сходных с рассуждениями в обычном смысле, и их применение в вычислительных системах<ref>В. В. Круглов, M. И. Дли, Р. Ю. Голунов. Нечеткая логика и искусственные нейронные сети. — М.: Физматлит, 2000. — 224 с. ISBN 5-94052-027-8. «<cite>Предметом нечёткой логики является построение моделей приближенных рассуждений человека и использование их в компьютерных системах</cite>»</ref>. |
||
Строка 70: | Строка 70: | ||
=== Нечёткая логика в информатике === |
=== Нечёткая логика в информатике === |
||
Нечёткая логика — набор нестрогих правил, в которых для достижения поставленной цели могут использоваться радикальные идеи, [[Интуиция|интуитивные]] догадки, а также опыт специалистов, накопленный в соответствующей области. Нечёткой логике свойственно отсутствие строгих стандартов. Чаще всего она применяется в [[Экспертные системы|экспертных системах]], [[Нейронная сеть|нейронных сетях]] и системах [[Искусственный интеллект|искусственного интеллекта]]. Вместо традиционных значений '''''Истина''''' и '''''Ложь''''' в нечеткой логике используется более широкий диапазон значений, среди которых '''''Истина''''', '''''Ложь''''', '''''Возможно''''', '''''Иногда''''', '''''Не помню''''' ('''''Как бы Да''''', '''''Почему бы и Нет''''', '''''Ещё не решил''''', '''''Не скажу'''''…). Нечеткая логика просто незаменима в тех случаях, когда на поставленный вопрос нет чёткого ответа (''да'' или ''нет''; «0» или «1») или наперёд неизвестны все возможные ситуации. Например, в нечеткой логике высказывание вида «X есть большое число» интерпретируется как имеющее неточное значение, характеризуемое некоторым нечётким [[множество]]м. «Искусственный интеллект и нейронные сети — это попытка смоделировать на компьютере поведение человека. А так как люди редко видят окружающий мир лишь в чёрно-белом цвете, возникает необходимость в использовании нечёткой логики».<ref>Illustrated Computer Dictionary for Dummies, 4th Edition — |
Нечёткая логика — набор нестрогих правил, в которых для достижения поставленной цели могут использоваться радикальные идеи, [[Интуиция|интуитивные]] догадки, а также опыт специалистов, накопленный в соответствующей области. Нечёткой логике свойственно отсутствие строгих стандартов. Чаще всего она применяется в [[Экспертные системы|экспертных системах]], [[Нейронная сеть|нейронных сетях]] и системах [[Искусственный интеллект|искусственного интеллекта]]. Вместо традиционных значений '''''Истина''''' и '''''Ложь''''' в нечеткой логике используется более широкий диапазон значений, среди которых '''''Истина''''', '''''Ложь''''', '''''Возможно''''', '''''Иногда''''', '''''Не помню''''' ('''''Как бы Да''''', '''''Почему бы и Нет''''', '''''Ещё не решил''''', '''''Не скажу'''''…). Нечеткая логика просто незаменима в тех случаях, когда на поставленный вопрос нет чёткого ответа (''да'' или ''нет''; «0» или «1») или наперёд неизвестны все возможные ситуации. Например, в нечеткой логике высказывание вида «X есть большое число» интерпретируется как имеющее неточное значение, характеризуемое некоторым нечётким [[множество]]м. «Искусственный интеллект и нейронные сети — это попытка смоделировать на компьютере поведение человека. А так как люди редко видят окружающий мир лишь в чёрно-белом цвете, возникает необходимость в использовании нечёткой логики».<ref>Illustrated Computer Dictionary for Dummies, 4th Edition — |
||
by Sandra Hardin Gookin & [[ |
by Sandra Hardin Gookin & [[wikipedia:Dan Gookin|Dan Gookin]] — |
||
IDG Books Worldwide/John Wiley & Sons Inc (Computers) (February 2000) — |
IDG Books Worldwide/John Wiley & Sons Inc (Computers) (February 2000) — |
||
ISBN 978-0764581250</ref> |
ISBN 978-0764581250</ref> |
Версия от 13:58, 29 июня 2017
Нечёткая логика (англ. 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
Нечёткое множество, содержащее число 5, можно задать, например, такой характеристической функцией:
Пример определения лингвистической переменной
В обозначениях, принятых для лингвистической переменной:
- X = «Температура в комнате»
- U = [5, 35]
- T = {«холодно», «тепло», «жарко»}
Характеристические функции:
Правило G порождает новые термы с использованием союзов «и», «или», «не», «очень», «более или менее».
- не A:
- очень A:
- более или менее A:
- A или B:
- A и B:
Нечёткая логика в информатике
Нечёткая логика — набор нестрогих правил, в которых для достижения поставленной цели могут использоваться радикальные идеи, интуитивные догадки, а также опыт специалистов, накопленный в соответствующей области. Нечёткой логике свойственно отсутствие строгих стандартов. Чаще всего она применяется в экспертных системах, нейронных сетях и системах искусственного интеллекта. Вместо традиционных значений Истина и Ложь в нечеткой логике используется более широкий диапазон значений, среди которых Истина, Ложь, Возможно, Иногда, Не помню (Как бы Да, Почему бы и Нет, Ещё не решил, Не скажу…). Нечеткая логика просто незаменима в тех случаях, когда на поставленный вопрос нет чёткого ответа (да или нет; «0» или «1») или наперёд неизвестны все возможные ситуации. Например, в нечеткой логике высказывание вида «X есть большое число» интерпретируется как имеющее неточное значение, характеризуемое некоторым нечётким множеством. «Искусственный интеллект и нейронные сети — это попытка смоделировать на компьютере поведение человека. А так как люди редко видят окружающий мир лишь в чёрно-белом цвете, возникает необходимость в использовании нечёткой логики».[5]
Примечания
- ↑ В. В. Круглов, M. И. Дли, Р. Ю. Голунов. Нечеткая логика и искусственные нейронные сети. — М.: Физматлит, 2000. — 224 с. ISBN 5-94052-027-8. «Предметом нечёткой логики является построение моделей приближенных рассуждений человека и использование их в компьютерных системах»
- ↑ Волгин Л.И., Левин В.И. Непрерывная логика. Теория и применения. Таллинн : Б. и., 1990. - 210 с.
- ↑ Зайцев, Д.А.; Сарбей, В.Г.; Слепцовб А.И. (1998). "Синтез функций непрерывной логики заданных таблично". Кибернетика и системный анализ. 34 (2): 47–56. doi:10.1007/BF02742068.
- ↑ Jang, J.-S. R., "ANFIS: Adaptive-Network-based Fuzzy Inference Systems, " IEEE Transactions on Systems, Man, and Cybernetics, Vol. 23, No. 3, pp. 665—685, May 1993.
- ↑ Illustrated Computer Dictionary for Dummies, 4th Edition — by Sandra Hardin Gookin & Dan Gookin — IDG Books Worldwide/John Wiley & Sons Inc (Computers) (February 2000) — ISBN 978-0764581250
Литература
- Заде Л. Понятие лингвистической переменной и его применение к принятию приближенных решений. — М.: Мир, 1976. — 166 с.
- Тэрано, Т., Асаи, К., Сугэно, М. Прикладные нёчеткие системы. — М.: Мир, 1993. — 368 с.
- Новак В., Перфильева И., Мочкрож И. Математические принципы нечёткой логики = Mathematical Principles of Fuzzy Logic. — Физматлит, 2006. — 352 с. — ISBN 0-7923-8595-0.
- Рутковский Лешек. Искусственные нейронные сети. Теория и практика. — М.: Горячая линия - Телеком, 2010. — 520 с. — ISBN 978-5-9912-0105-6.
- Усков А. А., Кузьмин А. В. Интеллектуальные технологии управления. Искусственные нейронные сети и нечеткая логика. — М.: Горячая Линия — Телеком, 2004. — 143 с.
- Круглов В. В. Дли М. И. Голунов Р. Ю. Нечёткая логика и искусственные нейронные сети. М.: Физматлит, 2001. 221с.
- Дьяконов В. П., Круглов В. В. MATLAB. Математические пакеты расширения. Специальный справочник. СПб.: Питер, 2001. 480с (имеются главы по нечёткой логике и нейронным сетям).
- Дьяконов В. П., Абраменкова И. В., Круглов В. В. MATLAB 5 с пакетами расширений. Под редакцией проф. В. П. Дьяконова. М.: Нолидж, 2001. 880с (имеются главы по нечёткой логике и нейронным сетям).
- Дьяконов В. П., Круглов В. В. MATLAB 6.5 SP1/7/7 SP1/7 SP2+Simulink 5/6. Инструменты искусственного интеллекта и биоинформатики. М.: СОЛОН-Пресс, 2006. 456с.
- Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы: Пер. с польского И. Д. Рудинского. М.: Горячая линия — Телеком, 2004. — 452 с. ISBN 5-93517-103-1
- Штовба С. Д. Проектирование нечетких систем средствами MATLAB. М.: Горячая линия — Телеком.- 2007.- 288 c.
- Uziel Sandler, Lev Tsitolovsky Neural Cell Behavior and Fuzzy Logic. Springer, 2008. — 478 с. ISBN 978-0-387-09542-4
Ссылки
- Статьи и доклады Лотфи Заде . Архивировано 15 декабря 2005 года.
- Нечеткая логика, мягкие вычисления и вычислительный интеллект . Архивировано 13 февраля 2012 года.
- Учебник по математической логике, содержащий и главу о нечеткой логике . Дата обращения: 8 января 2009. Архивировано 13 февраля 2012 года.
- Информационно-методический портал кафедры ИПМ (Информатика и прикладная математика) . — Ранее "Сайт, посвященный нечеткой логике". Разделы доступны только для зарегистрированных пользователей. Дата обращения: 8 января 2009. Архивировано 13 февраля 2012 года.
- Сергей Гриняев. Нечеткая логика в системах управления (html). Компьютерра–Онлайн (8 октября 2001). — Статья в журнале Компьютерра. Дата обращения: 8 января 2009.
- Fuzzy Logic Toolbox (англ.). — Дополнение к MATLAB для моделирования систем с нечеткой логикой. Дата обращения: 8 января 2009. Архивировано 13 февраля 2012 года.
- Fuzzy Logic Toolbox - Проектирование систем управления (html). Экспонента.ру. Дата обращения: 8 января 2009. Архивировано 13 февраля 2012 года.
- [1] Научные статьи по нечёткой логике.
Для улучшения этой статьи желательно: |