Перейти до вмісту
coden

Нечітка логіка: t-норми, імплікації та правила ЯКЩО–ТО

Ступені істинності, t-норми й t-конорми (мінімум, добуток, Лукасевич), які класичні закони виживають, резидуальні імплікації та обчислення правил на вентиляторі, яким керують температура й вологість.

14 хвилин Matěj Žalmánek 2026-10-15

Серія Основи ШІ Частина 34 з 52
  1. Мапа штучного інтелекту: що є що і як усе це пов’язано
  2. Коротка історія штучного інтелекту: від Тюрінга до мовних моделей
  3. Дані, модель, тренування, інференс: основні поняття на одному прикладі
  4. Як читати математичний запис: символи, індекси, суми та квантори
  5. Множини й відношення: конструктор, з якого складаються означення в ШІ
  6. Функції й відображення: чому кожна модель у ШІ — це функція
  7. Логіка й доведення: правила, за якими міркують у ШІ
  8. Графи й дерева: структура, на якій тримаються пошук і нейронні мережі
  9. Лінійна алгебра для машинного навчання: вектори, матриці й чому ШІ передусім множить
  10. Похідні, градієнт і правило ланцюжка: як модель дізнається, у якому напрямку вчитися
  11. Градієнтний спуск: як навчається модель
  12. Що таке ймовірність: від кидка кубика до аксіом Колмогорова
  13. Умовна ймовірність і теорема Баєса: як змінити оцінку, коли дізнаєтеся щось нове
  14. Випадкова величина і функція розподілу: одна функція, яка каже про розподіл усе
  15. Функція щільності та функція маси ймовірності: чому неперервна величина має в точці ймовірність нуль
  16. Математичне сподівання, дисперсія і коваріація: де лежить розподіл, наскільки він широкий і що з чим пов’язано
  17. Огляд розподілів ймовірностей: Бернуллі, біноміальний, Пуассона, рівномірний, нормальний і експоненційний
  18. Закон великих чисел і центральна гранична теорема: чому середні поводяться так передбачувано
  19. Статистика й оцінювання параметрів: максимальна правдоподібність, MAP і довірчі інтервали
  20. Теорія інформації: ентропія, перехресна ентропія і KL-дивергенція — звідки беруться функції втрат
  21. Пошук у просторі станів: BFS, DFS, UCS і A* з анімаціями
  22. Ігри та суперник: мінімакс, альфа-бета відсікання і Monte Carlo tree search
  23. Задоволення обмежень: бектрекінг, поширення обмежень і AC-3 на судоку та мапі чеських країв
  24. Логіка й системи, засновані на знаннях: пряме і зворотне виведення, резолюція та експертні системи
  25. Планування: STRIPS, світ кубиків, евристики з релаксації та планування в AI-агентах
  26. Локальний пошук та імітація відпалу: комівояжер через обласні центри Чехії
  27. Генетичні алгоритми: популяція, схрещування, мутація і добір на рюкзаку для походу
  28. Еволюційні стратегії і генетичне програмування: від правила однієї п’ятої до закону Кеплера
  29. Оптимізація мурашиною колонією: як феромоновий слід знаходить короткий шлях
  30. Оптимізація роєм частинок: інерція, власний досвід і досвід рою
  31. Нейроеволюція: еволюція ваг і форми нейронних мереж та алгоритм NEAT
  32. Нечіткі множини й функції належності: як записати «трохи тепло»
  33. Нечітка логіка та ймовірність: чому «трохи тепло» не означає «імовірно тепло»
  34. Нечітка логіка: t-норми, імплікації та правила ЯКЩО–ТО
  35. Нечітке керування: Мамдані та Суґено від вентилятора до маятника на візку
  36. Нечітка кластеризація: алгоритм fuzzy c-means і точки між кластерами
  37. Нейро-нечіткі системи (ANFIS): нечіткі правила, які навчаються з даних
  38. Марковські ланцюги: матриця переходів, стаціонарний розподіл і PageRank
  39. Приховані марковські моделі: алгоритм Вітербі й нечесне казино
  40. Байєсівські мережі: чому трава мокра і що з цього випливає для дощувача
  41. Фільтр Калмана: як за неточними вимірюваннями оцінити, де авто і як швидко воно їде
  42. Види машинного навчання: з учителем, без учителя, з частковим залученням учителя та інші
  43. Промпти, контекст і RAG: як дати моделі правильну інформацію
  44. Варіаційні автокодувальники (VAE): нові зображення з неперервного латентного простору
  45. Генеративні змагальні мережі (GAN): фальшувальник проти детектива
  46. Дифузійні моделі: як із чистого шуму постає зображення
  47. Марковські процеси ухвалення рішень: стани, дії, винагороди й рівняння Беллмана
  48. Q-навчання і DQN: як навчитися цінності дій — від таблиці до нейронної мережі
  49. Policy gradient і PPO: навчання безпосередньо політики
  50. Як працює ШІ-агент: мовна модель у циклі з інструментами
  51. Програмування з AI-агентами: завдання, тести й перевірка
  52. Оцінювання і безпека систем ШІ: як вимірювати і як стежити

Повна програма серії Готово: 52 з 83 тем

Що ви винесете
  • Що таке t-норми й t-конорми і чому «і» в нечіткій логіці — ціла родина операцій.
  • Які закони класичної логіки виконуються для мінімуму, добутку й t-норми Лукасевича.
  • Як обчислюють правила ЯКЩО–ТО: сила правила, обрізання висновку й поєднання максимумом.

Що варто знати заздалегідь: Нечіткі множини й функції належності: як записати «трохи тепло», Логіка й доведення: правила, за якими міркують у ШІ

Нечіткі множини надали словам на кшталт «тепло» точного значення. Тепер ми хочемо з ними міркувати: поєднувати їх сполучниками «і», «або», «не» й писати правила «якщо тепло й волого, увімкни вентилятор на повну». У класичній логіці зрозуміло, що означає «і» — істинне, коли істинні обидві частини. Але що, коли одна частина істинна на 0,7, а друга на 0,6? Виявляється, розумних відповідей — ціла родина, і кожна з них зберігає інші шматочки класичної логіки.

Продовжує частини Нечіткі множини й функції належності, Нечітка логіка та ймовірність і Логіка й доведення.

1. Від належності до істинності

Висловлення «тепло» має при 25 °C ступінь істинності 0,5 — те саме число, що й належність 25 °C до множини «тепло». Нечітка логіка — це логіка, у якій висловлення набувають істиннісних значень з усього інтервалу [0, 1], а не лише 0 і 1. Сполучники — це функції, які з істинності частин обчислюють істинність цілого. Класична логіка — окремий випадок, у якому використовуються лише крайні значення.

Означення — істиннісне значення складеного висловлення

Оберемо t-норму T (сполучник «і»), t-конорму S («або»), заперечення ¬ («не») та імплікацію I («якщо–то») — усі вони означені нижче. Якщо висловлення φ, ψ мають істиннісні значення ‖φ‖, ‖ψ‖ ∈ [0, 1], то

  • ‖φ і ψ‖ = T(‖φ‖, ‖ψ‖),
  • ‖φ або ψ‖ = S(‖φ‖, ‖ψ‖),
  • ‖не φ‖ = ¬‖φ‖,
  • ‖якщо φ, то ψ‖ = I(‖φ‖, ‖ψ‖).

Значення атомарного висловлення «x є A» — це належність μA(x).

Простими словами

Складене висловлення обчислюють знизу вгору: спершу належності, потім сполучники один за одним, так само як у класичній логіці заповнюють таблицю істинності — лише замість 0 і 1 підставляємо числа між ними.

Приклад — «тепло й не волого» при 27 °C і 60 %

«Тепло» — це трикутник (22, 28, 34), тож ‖тепло‖ = (27 − 22) / (28 − 22) = 5/6 ≈ 0,83. «Волого» зростає від 40 до 70 %: ‖волого‖ = (60 − 40) / (70 − 40) = 2/3 ≈ 0,67, тож ‖не волого‖ = 1 − 2/3 = 1/3 ≈ 0,33.

  • з мінімумом: min(5/6; 1/3) = 0,33,
  • з добутком: 5/6 · 1/3 = 5/18 = 0,28,
  • з t-нормою Лукасевича: max(0; 5/6 + 1/3 − 1) = 1/6 = 0,17.

Три розумні відповіді на одне й те саме питання — про те, яку обрати, решта цієї частини.

2. T-норми: що означає «і»

Означення — t-норма

T-норма — це функція T : [0, 1]2 → [0, 1], яка

  • комутативна: T(a, b) = T(b, a),
  • асоціативна: T(a, T(b, c)) = T(T(a, b), c),
  • монотонна: з b ≤ c випливає T(a, b) ≤ T(a, c),
  • і має 1 як нейтральний елемент: T(a, 1) = a.
Простими словами

Чотири розумні вимоги до «і»: порядок не важливий, дужки не важливі, кращі вхідні дані не дадуть гіршого результату, а «A і істина» — те саме, що A. Звідси випливає й те, що «A і хиба» — хиба, тож на крайніх значеннях кожна t-норма поводиться точно як класичне «і».

Чотири найважливіші:

  • Мінімум (Геделя, Заде) T(a, b) = min(a, b) — ланцюг міцний настільки, наскільки міцна його найслабша ланка.
  • Добуток T(a, b) = a · b — як імовірність двох незалежних подій.
  • Лукасевича T(a, b) = max(0, a + b − 1) — нижня межа Фреше з попередньої частини.
  • Драстична — b, коли a = 1; a, коли b = 1; інакше 0.

Найменш очевидна — t-норма Лукасевича, тож розберімо її:

TŁ(a, b) = max(0, a + b − 1)

TŁ(a, b)
істинність «A і B» — скільки істини мусять мати обидві частини спільно
a + b
істинності обох частин разом — уявіть їх як два відрізки довжини a і b, які мають уміститися у відрізок довжини 1
− 1
довжина всього відрізка — те, що з a + b перевищує одиницю, не вміститься поруч і мусить перекриватися; перекриття — це те, що виконується одночасно
max(0, …)
коли відрізки вміщаються поруч (a + b ≤ 1), їм узагалі не треба перекриватися — істинність «і» тоді 0, а не від’ємне число
Для 0,7 і 0,6: 0,7 + 0,6 − 1 = 0,3. У найгіршому разі відрізки перекриваються лише настільки — те саме міркування дає нижню межу Фреше для ймовірності перетину з попередньої частини.
мінімум T(0,7; 0,6) = 0,60 істинність a (0–1) істинність b (0–1) добуток T(0,7; 0,6) = 0,42 істинність a (0–1) істинність b (0–1) Лукасевич T(0,7; 0,6) = 0,30 істинність a (0–1) істинність b (0–1) драстична T(0,7; 0,6) = 0,00 істинність a (0–1) істинність b (0–1)
Чотири t-норми на квадраті [0, 1]², що світліше, то більше

Для a = 0,7 і b = 0,6 вони дають 0,60; 0,42; 0,30 і 0. Мінімум — найщедріша з усіх, драстична — найсуворіша, і це справджується загалом:

Теорема — межі t-норм

Для кожної t-норми T і всіх a, b ∈ [0, 1] справджується TD(a, b) ≤ T(a, b) ≤ min(a, b), де TD — драстична t-норма.

Доведення. Верхня межа: з монотонності й нейтральної одиниці T(a, b) ≤ T(a, 1) = a, а завдяки комутативності так само T(a, b) ≤ b. Нижня межа: якщо a = 1, то T(1, b) = b = TD(1, b); якщо b = 1, аналогічно. Інакше TD(a, b) = 0, а T(a, b) ≥ 0 справджується завжди. ∎

Простими словами

«A і B» ніколи не може бути істиннішим за слабшу з обох частин (це випливає з монотонності й нейтральної одиниці: T(a, b) ≤ T(a, 1) = a). Тому всі t-норми лежать між двома крайнощами.

3. T-конорми та заперечення: «або» і «не»

Означення — t-конорма, заперечення, двоїстість

T-конорма S має ті самі властивості, що й t-норма, лише нейтральний елемент — 0: S(a, 0) = a. Стандартне заперечення — це ¬a = 1 − a.

До кожної t-норми належить двоїста t-конорма S(a, b) = 1 − T(1 − a, 1 − b). Для такої пари справджуються закони де Моргана: ¬T(a, b) = S(¬a, ¬b).

Простими словами

«A або B» — те саме, що «неправда, що ні A, ні B». Отже, кожне «і» приносить своє «або». До мінімуму належить максимум, до добутку — імовірнісна сума a + b − ab, до t-норми Лукасевича — обмежена сума min(1, a + b). Для 0,7 і 0,6 вони дають 0,70; 0,88 і 1.

S(a, b) = 1 − T(1 − a, 1 − b)

S(a, b)
істинність «A або B» — хочемо вивести її з «і», а не вигадувати окремо
1 − a, 1 − b
істинності «не A» і «не B» — «або» не справджується саме тоді, коли не виконується жодна частина
T
обрана t-норма — обчислює, наскільки виконується «не A і не B», тобто наскільки «або» не справджується
1 −
зовнішнє заперечення — з «наскільки не справджується» робить «наскільки справджується»; завдяки йому закони де Моргана виконуються для кожної пари T, S автоматично
Приклад — три t-конорми через двоїстість
  • Мінімум: 1 − min(1 − a, 1 − b) = max(a, b); менше з доповнень належить більшому числу. Для 0,7 і 0,6: 1 − min(0,3; 0,4) = 1 − 0,3 = 0,70.
  • Добуток: 1 − (1 − a)(1 − b) = 1 − (1 − a − b + ab) = a + b − ab. Для 0,7 і 0,6: 1 − 0,3 · 0,4 = 1 − 0,12 = 0,88.
  • Лукасевич: 1 − max(0, (1 − a) + (1 − b) − 1) = 1 − max(0, 1 − a − b) = min(1, a + b). Для 0,7 і 0,6: 1 − max(0; 0,3 + 0,4 − 1) = 1 − 0 = 1,00.

Імовірнісна сума має відомий зміст: для незалежних подій P(A ∪ B) = P(A) + P(B) − P(A)P(B) — віднімається перекриття, яке інакше було б пораховане двічі.

4. Які закони виживають

Класична логіка має безліч законів. У нечіткій логіці не може виконуватися все одночасно — і кожна t-норма вибирає по-своєму. Перевірено на сітці значень 0; 0,05; …; 1:

ЗаконМінімумДобутокЛукасевич
ідемпотентність: A і A = Aтакніні
суперечності: A і не A = 0нінітак
виключеного третього: A або не A = 1нінітак
закони де Морганатактактак
дистрибутивність «і» відносно «або»такніні

Мінімум зберігає «алгебру» — ідемпотентність і дистрибутивність, — але втрачає закон суперечності: «тепло й не тепло» може сягати 0,5. Лукасевич зберігає закон суперечності й закон виключеного третього, але «тепло й тепло» при 0,7 дає лише 0,4. Це відомий результат: мінімум — єдина ідемпотентна t-норма, і з нею закон суперечності виконуватися не може. Отже, вибір сполучника — це вибір того, які властивості для нас важливі.

Теорема — мінімум є єдиною ідемпотентною t-нормою

Якщо T — t-норма і T(a, a) = a для всіх a ∈ [0, 1], то T(a, b) = min(a, b).

Доведення. Нехай a ≤ b. З ідемпотентності й монотонності a = T(a, a) ≤ T(a, b), а з теореми про межі T(a, b) ≤ min(a, b) = a. Отже, T(a, b) = a; для a > b так само завдяки комутативності. ∎

Наслідок. Ідемпотентність і закон суперечності (зі стандартним запереченням) не можуть виконуватися одночасно: ідемпотентний лише мінімум, а він у точці 0,5 дає min(0,5; 1 − 0,5) = 0,5 ≠ 0.

Приклад — контрприклади й одне доведення з таблиці
  • Лукасевич задовольняє закон суперечності для кожного a, а не лише на сітці: TŁ(a, 1 − a) = max(0, a + 1 − a − 1) = max(0, 0) = 0. Аналогічно min(1, a + 1 − a) = 1 — це закон виключеного третього.
  • Лукасевич не ідемпотентна: TŁ(0,7; 0,7) = 0,7 + 0,7 − 1 = 0,4 ≠ 0,7.
  • Добуток не дистрибутивний: для a = b = c = 0,5 маємо «a і (b або c)» = 0,5 · (0,5 + 0,5 − 0,25) = 0,3750, але «(a і b) або (a і c)» = 0,25 + 0,25 − 0,25 · 0,25 = 0,4375.
  • Добуток не задовольняє закон суперечності: 0,5 · (1 − 0,5) = 0,25 ≠ 0.

Одного контрприкладу досить, щоб закон не виконувався. Натомість «так» у таблиці перевірене лише на сітці — проте для закону суперечності Лукасевича вище є й загальне доведення.

5. Імплікація

Означення — резидуальна імплікація

До неперервної t-норми T належить резидуум

I(a, b) = sup { c ∈ [0, 1] : T(a, c) ≤ b }.

T(a, c) ≤ b виконується тоді й лише тоді, коли c ≤ I(a, b). Для мінімуму виходить імплікація Геделя (1, коли a ≤ b, інакше b), для добутку — імплікація Гогена (1, коли a ≤ b, інакше b/a), а для t-норми Лукасевича — min(1, 1 − a + b).

Простими словами

«Якщо A, то B» — найсильніше твердження, яке разом з A не дасть більше, ніж становить B. Імплікація цілком істинна щоразу, коли засновок не істинніший за висновок, — так само як у класичній логіці, де з хиби випливає будь-що. Для засновку 0,8 і висновку 0,3 три імплікації дають 0,3; 0,375 і 0,5.

I(a, b) = sup { c ∈ [0, 1] : T(a, c) ≤ b }

I(a, b)
істинність «якщо A, то B» для засновку з істинністю a і висновку з істинністю b
c ∈ [0, 1]
кандидат на істинність імплікації — пробуємо всі можливі значення
T(a, c)
«A і (якщо A, то B)» — що ми виведемо із засновку та імплікації разом; саме це робить modus ponens
≤ b
умова коректності — виведений висновок не може бути істиннішим, ніж B є насправді; імплікація не повинна «обіцяти більше»
sup
найбільший з коректних кандидатів — імплікація має бути якомога сильнішою, інакше вона завжди дорівнювала б 0 і нічого б не казала
Імплікація — найсильніше твердження, з яким modus ponens ніколи не виведе з A більше, ніж виконується B.
Приклад — три імплікації для засновку 0,8 і висновку 0,3

Шукаємо найбільше c, для якого T(0,8; c) ≤ 0,3:

  • мінімум: min(0,8; c) ≤ 0,3 виконується тоді й лише тоді, коли c ≤ 0,3 (бо 0,8 > 0,3), тож I = 0,300,
  • добуток: 0,8 · c ≤ 0,3, тобто c ≤ 0,3 / 0,8, тож I = 0,375,
  • Лукасевич: max(0; 0,8 + c − 1) ≤ 0,3, тобто c − 0,2 ≤ 0,3 і c ≤ 0,5, тож I = 0,500.

Перевірка modus ponens: підставимо c = I назад у T(0,8; c) — min(0,8; 0,3) = 0,3; 0,8 · 0,375 = 0,3; max(0; 0,8 + 0,5 − 1) = 0,3. В усіх трьох випадках виходить точно висновок 0,3: імплікацію налаштовано так, щоб у нього влучити.

Резидууми не лише елегантні: завдяки співвідношенню T(a, c) ≤ b ⇔ c ≤ I(a, b) для них виконується нечітка версія modus ponens — з A з істинністю a і з «A ⇒ B» з істинністю c випливає B з істинністю щонайменше T(a, c). На цьому стоять формальні нечіткі логіки, які в дев’яностих роках побудував чеський логік Петр Гаєк.

6. Правила ЯКЩО–ТО

На практиці ви найчастіше зустрінете нечітку логіку в правилах, які керують машиною. Нам потрібен вентилятор, що керується температурою й вологістю. Оберти (0–100 %) мають терми повільно, середньо і швидко, вологість — терми сухо й волого, температура — терми з частини про нечіткі множини. База правил:

  • R1: ЯКЩО температура холодно АБО приємно, ТО оберти повільно.
  • R2: ЯКЩО температура тепло І вологість сухо, ТО оберти середньо.
  • R3: ЯКЩО температура тепло І вологість волого, ТО оберти швидко.
  • R4: ЯКЩО температура спекотно, ТО оберти швидко.
Означення — обчислення правила (Мамдані)

Для чіткого входу спершу обчислюють силу правила α: належності входів до термів умови, поєднані t-нормою («і») або t-конормою («або»). Висновок — нечітку множину B на виході — потім обрізають: μ′(y) = min(α, μB(y)), або зменшують: μ′(y) = α · μB(y). Висновки всіх правил поєднують максимумом.

Простими словами

Правило діє настільки, наскільки виконується його умова, і настільки ж просуває свій висновок. Правило, умова якого виконується на 0,67, може просунути «швидко» щонайбільше до висоти 0,67. Усі правила говорять одночасно, а результат — це обрис того, що куди тисне.

Вхід: 27 °C і вологість 60 %. Температура «приємно» на 0,2 і «тепло» на 0,83, вологість «волого» на 0,67, а «сухо» — зовсім ні. Правило R3 має силу min(0,83; 0,67) = 0,67:

температура = 27 °C вологість = 60 % оберти вентилятора (%) мінімум 0,83 0,67 0,67 добуток 0,83 0,67 0,56 температура T (°C) відносна вологість (%) оберти вентилятора (%) належність μ (0–1)
Правило R3 з мінімумом (обрізання) і з добутком (масштабування)

З мінімумом висновок «швидко» обрізається на висоті 0,67, і від нього лишається плоска трапеція. З добутком правило має силу 0,83 · 0,67 = 0,56, і «швидко» зменшується цілком — зберігає форму, лише нижче. Обидва підходи використовують на практиці; перший — початковий вибір Мамдані.

Уся база правил одразу:

температура = 27 °C вологість = 60 % оберти вентилятора (%) R1 0,20 0,20 R2 0,83 0,00 0 R3 0,83 0,67 0,67 R4 0,00 0 температура T (°C) відносна вологість (%) оберти вентилятора (%) належність μ (0–1) результат
Усі правила вентилятора для 27 °C і 60 % вологості

Спрацювали два правила: R1 із силою 0,2 (температура трохи «приємно») і R3 із силою 0,67. R2 і R4 мовчать. Результат — нечітка множина на обертах: низька сходинка біля «повільно» і висока біля «швидко». Але двигунові потрібне одне число. Як його дістати з цієї множини — тема наступної частини про нечітке керування.

μ(y) = maxr min(αr, μBr(y))

μ(y)
підсумкова нечітка множина на обертах — наскільки база правил рекомендує оберти y (на рисунку зелена площа)
αr
сила правила r — наскільки виконується його умова для сьогоднішнього входу; правило не може стверджувати більше, ніж виконується його засновок
μBr(y)
висновок правила — форма терма на кшталт «швидко»: які оберти до нього належать і наскільки (на рисунку пунктирний обрис)
min
обрізання — висновок зрізається на висоті αr, бо правило з умовою, що виконується на 0,67, не може рекомендувати нічого більше, ніж на 0,67 (на рисунку бурштинова площа)
maxr
поєднання правил — правила є альтернативами («R1 або R2 або …»), тож оберти рекомендовано настільки, наскільки їх рекомендує найпоступливіше правило
З добутком замість мінімуму висновок не обрізається, а зменшується: αr · μBr(y).
Приклад — покрокове обчислення бази правил для 27 °C і 60 %

Крок 1 — фазифікація. Температура 27 °C: «холодно» 0 (закінчується на 14 °C), «приємно» спадає від 23 до 28 °C, тобто (28 − 27) / (28 − 23) = 0,2; «тепло» (27 − 22) / 6 = 0,83; «спекотно» 0 (починається лише від 30 °C). Вологість 60 %: «сухо» 0 (закінчується на 50 %), «волого» (60 − 40) / 30 = 0,67.

Крок 2 — сили правил. «Або» всередині умови обчислює двоїста t-конорма, «і» між умовами — t-норма:

ПравилоНалежності в умовіα з мінімумомα з добутком
R10,00 або 0,200,200,20
R20,83 і 0,000,000,00
R30,83 і 0,670,670,56
R40,000,000,00

Наприклад, R3 з добутком: 5/6 · 2/3 = 10/18 ≈ 0,56; R1 з максимумом: max(0; 0,2) = 0,2.

Крок 3 — обрізання й поєднання. Значення вихідної множини в кількох точках, μ(y) = max(min(0,2; μповільно(y)), min(0,67; μшвидко(y))) — R2 і R4 мають силу 0 і нічого не додають:

оберти y (%)10405060708090
μповільно(y)1,000,200,000,000,000,000,00
μшвидко(y)0,000,000,000,200,601,001,00
μ(y), мінімум0,200,200,000,200,600,670,67
μ(y), добуток0,200,040,000,110,330,560,56

Наприклад, у y = 70: «швидко» там виконується на (70 − 55) / (80 − 55) = 0,6, це менше за силу 0,67, тож обрізання нічого не змінює і μ(70) = 0,6. У y = 90 «швидко» виконується повністю (1), і обрізання знижує його до 0,67. Оберти між 45 і 55 % не рекомендує жодне правило.

def sila(podminky, vstup, t_norma=min):
    hodnoty = []
    for promenna, terminy in podminky:          # терми, поєднані «або»
        hodnoty.append(max(mu[promenna][t](vstup[promenna]) for t in terminy))
    vysledek = 1.0
    for h in hodnoty:                           # умови, поєднані «і»
        vysledek = t_norma(vysledek, h)
    return vysledek

def vystup(pravidla, vstup, y):
    return max(min(sila(r.kdyz, vstup), mu_otacky[r.pak](y)) for r in pravidla)

7. Нечітка логіка й сучасний ШІ

  • Логіка, яку можна диференціювати. T-норми неперервні, тож їх можна диференціювати. Нейросимвольні підходи, як-от Logic Tensor Networks, складають із них функцію втрат: мережа вчиться не лише з прикладів, а й із правил на кшталт «кожен пес — ссавець», істинність яких обчислюють нечіткими сполучниками.
  • М’які обмеження. Probabilistic Soft Logic використовує сполучники Лукасевича для запису правил з вагами — наприклад, для рекомендацій або зіставлення записів про ту саму особу.
  • Зрозумілі рішення. Нечіткі правила короткі й зрозумілі. Там, де люди мусять перевіряти ухвалення рішень, їх досі використовують як пояснювану альтернативу чорній скриньці.

8. Підсумок

  • У нечіткій логіці висловлення мають істинність з [0, 1]; сполучники — це функції на цих значеннях.
  • «І» — це t-норма: мінімум, добуток, Лукасевича та інші; усі вони лежать між драстичною t-нормою і мінімумом.
  • «Або» — двоїста t-конорма, «не» — стандартно 1 − a; закони де Моргана виконуються завжди, інші закони — залежно від вибору t-норми.
  • Резидуальна імплікація зберігає modus ponens; на ній стоять формальні нечіткі логіки.
  • Правила ЯКЩО–ТО обчислюють через силу умови, обрізання або зменшення висновку та поєднання максимумом — для вентилятора при 27 °C і 60 % спрацьовує R1 із силою 0,2 і R3 із силою 0,67.

Хочете спробувати самі? Попросіть ШІ-агента написати таблицю законів із цієї частини для інших t-норм — скажімо, для родини Гамахера чи Франка — і з’ясуйте, яка з них найбільше схожа на класичну логіку.

Маєте іншу думку? Напишіть на support@coden-app.com.

Агент на вашому комп’ютері, керований з телефона