Логика
Нечёткая логика
Когда человек становится «высоким»? При росте 180 см? А 179.9 см - уже не высокий? Классическая логика требует провести чёткую границу там, где её нет в природе. Нечёткая логика позволяет сказать: «высокий на 70%» - и это математически точно.
- **Стиральные машины**: нечёткие контроллеры определяют количество воды и время стирки по «степени загрязнённости» — не бинарно, а градуально
- **Метро Сендай (Япония)**: первое в мире метро с нечётким управлением — плавное торможение, экономия энергии, комфорт пассажиров
- **Автофокус камер**: определение «резкости» — нечёткое понятие, и алгоритмы используют fuzzy logic для плавной настройки
Нечёткая логика
**Нечёткая логика** (Fuzzy Logic) - расширение классической логики, где истинностные значения могут быть **любым числом от 0 до 1**, а не только 0 или 1. Это позволяет моделировать понятия с размытыми границами.
Создатель - Лотфи Заде (1965). Изначально встретила сопротивление, но революционизировала управление сложными системами: от стиральных машин до метро.
Классическая vs нечёткая логика:
Нечёткая логика не заменяет классическую - она расширяет её для случаев, когда чёткие границы неестественны. «Человек ростом 179.9 см не высокий, а 180.0 см - высокий» звучит абсурдно. Нечёткая логика устраняет этот разрыв.
В чём главное отличие нечёткой логики от классической?
Степени истинности
В нечёткой логике каждое высказывание имеет **степень истинности** μ ∈ [0, 1]. Классические связки переопределяются для работы со степенями:
Интуиция за определениями:
Существуют альтернативные t-нормы (для AND) и t-конормы (для OR). Min/max - стандартные, но продукт μ(A) × μ(B) тоже популярен.
Если μ("холодно") = 0.8, чему равно μ("не холодно")?
Неопределённость и размытость
**Неопределённость (vagueness)** - фундаментальное свойство естественного языка. Многие понятия не имеют чётких границ: «молодой», «высокий», «тёплый», «быстрый». Нечёткая логика моделирует именно эту размытость.
Нечёткость ≠ вероятность! Вероятность 0.5 означает «не знаю, какое из двух». Степень истинности 0.5 означает «частично истинно и частично ложно одновременно».
Классический пример - парадокс кучи (sorites):
Чем нечёткость отличается от вероятности?
Нечёткие множества
**Нечёткое множество** - обобщение классического множества, где принадлежность элемента может быть частичной. Вместо «x ∈ A или x ∉ A» мы говорим «x принадлежит A со степенью μ_A(x)».
Операции над нечёткими множествами:
Нечёткие множества - основа **нечётких контроллеров**: правила вида «ЕСЛИ температура ВЫСОКАЯ И давление НОРМАЛЬНОЕ, ТО открыть клапан СИЛЬНО» работают с нечёткими множествами и дают плавное управление.
Применение в реальных системах:
Нечёткая логика - это про неточность или ошибки
Нечёткая логика - точный математический аппарат для моделирования понятий с размытыми границами
«Нечёткий» (fuzzy) относится к природе понятий (размытость границ), а не к качеству рассуждений. Вычисления в нечёткой логике строгие и детерминированные.
Если μ_высокий(Анна) = 0.6 и μ_спортивная(Анна) = 0.8, какова степень принадлежности к множеству «высокие спортсменки»?
Ключевые идеи
- **Степень истинности μ ∈ [0, 1]** — обобщение булевых значений для понятий с размытыми границами
- **NOT**: μ(¬A) = 1 - μ(A); **AND**: min; **OR**: max — стандартные операции нечёткой логики
- **Нечёткие множества**: принадлежность элемента — число от 0 до 1, а не бинарный факт
- **Нечёткость ≠ вероятность**: нечёткость — про природу понятия, вероятность — про незнание факта
Связанные темы
Нечёткая логика связана с другими расширениями классической логики:
- Таблицы истинности — Нечёткая логика обобщает булевы таблицы на непрерывные значения
- Парадокс кучи (sorites) — Классический мотивирующий пример для нечёткой логики
Вопросы для размышления
- Можно ли измерить «красоту» или «справедливость» с помощью нечётких множеств? Какие проблемы возникают?
- Почему min/max — естественный выбор для AND/OR? Можете ли вы придумать ситуацию, где продукт был бы лучше?
- Если A «почти истинно» (μ = 0.99), а ¬A «почти ложно» (μ = 0.01), должно ли A ∧ ¬A быть близко к 0? В нечёткой логике min(0.99, 0.01) = 0.01 — это соответствует интуиции?