Vai al contenuto
coden

Insiemi fuzzy e funzioni di appartenenza: come scrivere «un po’ caldo»

Il confine netto e il paradosso del mucchio, l’insieme fuzzy e il grado di appartenenza, le forme delle funzioni di appartenenza, la variabile linguistica, supporto, nucleo e α-tagli, le operazioni di Zadeh e i modificatori «molto» e «un po’» — sulla temperatura, dal freddo al torrido.

12 minuti Matěj Žalmánek 2026-10-15

Serie Basi di IA Parte 32 di 52
  1. Mappa dell’intelligenza artificiale: che cos’è ciascuna cosa e come si incastra tutto
  2. Breve storia dell’intelligenza artificiale: da Turing ai modelli linguistici
  3. Dati, modello, addestramento, inferenza: i concetti di base su un unico esempio
  4. Come leggere la notazione matematica: simboli, indici, sommatorie e quantificatori
  5. Insiemi e relazioni: i mattoncini con cui si costruiscono le definizioni nell’IA
  6. Funzioni e applicazioni: perché ogni modello di IA è una funzione
  7. Logica e dimostrazioni: le regole con cui si ragiona nell’IA
  8. Grafi e alberi: la struttura su cui poggiano la ricerca e le reti neurali
  9. Algebra lineare per l’apprendimento automatico: vettori, matrici e perché l’IA soprattutto moltiplica
  10. Derivate, gradiente e regola della catena: come un modello capisce in quale direzione imparare
  11. Discesa del gradiente: come impara un modello
  12. Che cos’è la probabilità: dal lancio di un dado agli assiomi di Kolmogorov
  13. Probabilità condizionata e teorema di Bayes: come cambiare una stima quando scopri qualcosa di nuovo
  14. Variabile aleatoria e funzione di ripartizione: una sola funzione che dice tutto sulla distribuzione
  15. Funzione di densità e funzione di massa: perché una variabile continua ha probabilità zero in un punto
  16. Valore atteso, varianza e covarianza: dove si trova una distribuzione, quanto è larga e che cosa è legato a che cosa
  17. Panoramica delle distribuzioni di probabilità: Bernoulli, binomiale, Poisson, uniforme, normale ed esponenziale
  18. Legge dei grandi numeri e teorema del limite centrale: perché le medie si comportano in modo così prevedibile
  19. Statistica e stima dei parametri: massima verosimiglianza, MAP e intervalli di confidenza
  20. Teoria dell’informazione: entropia, entropia incrociata e divergenza KL — da dove vengono le funzioni di perdita
  21. Ricerca nello spazio degli stati: BFS, DFS, UCS e A* con animazioni
  22. Giochi e avversari: minimax, potatura alfa-beta e Monte Carlo tree search
  23. Soddisfacimento di vincoli: backtracking, propagazione dei vincoli e AC-3 su un sudoku e una mappa delle regioni ceche
  24. Logica e sistemi basati sulla conoscenza: concatenazione in avanti e all’indietro, risoluzione e sistemi esperti
  25. Pianificazione: STRIPS, il mondo dei blocchi, euristiche dal rilassamento e pianificazione negli agenti IA
  26. Ricerca locale e ricottura simulata: un commesso viaggiatore tra i capoluoghi di regione cechi
  27. Algoritmi genetici: popolazione, incrocio, mutazione e selezione su uno zaino per l’escursione
  28. Strategie evolutive e programmazione genetica: dalla regola di un quinto alla legge di Keplero
  29. Ottimizzazione con colonie di formiche: come una traccia di feromone trova un percorso breve
  30. Ottimizzazione a sciame di particelle: inerzia, esperienza propria ed esperienza dello sciame
  31. Neuroevoluzione: evoluzione dei pesi e della forma delle reti neurali e l’algoritmo NEAT
  32. Insiemi fuzzy e funzioni di appartenenza: come scrivere «un po’ caldo»
  33. Logica fuzzy e probabilità: perché «un po’ caldo» non significa «probabilmente caldo»
  34. Logica fuzzy: t-norme, implicazioni e regole SE–ALLORA
  35. Controllo fuzzy: Mamdani e Sugeno, dal ventilatore al pendolo inverso su un carrello
  36. Clustering fuzzy: l’algoritmo fuzzy c-means e i punti tra i cluster
  37. Sistemi neuro-fuzzy (ANFIS): regole fuzzy che imparano dai dati
  38. Catene di Markov: matrice di transizione, distribuzione stazionaria e PageRank
  39. Modelli di Markov nascosti: l’algoritmo di Viterbi e il casinò disonesto
  40. Reti bayesiane: perché l’erba è bagnata e che cosa significa per l’irrigatore
  41. Filtro di Kalman: come stimare da misure imprecise dove si trova un’auto e a che velocità va
  42. Tipi di apprendimento automatico: supervisionato, non supervisionato, semi-supervisionato e altri
  43. Prompt, contesto e RAG: come dare a un modello le informazioni giuste
  44. Autoencoder variazionali (VAE): immagini nuove da uno spazio latente continuo
  45. Reti generative avversarie (GAN): il falsario contro il detective
  46. Modelli di diffusione: come il rumore puro diventa un’immagine
  47. Processi decisionali di Markov: stati, azioni, ricompense ed equazioni di Bellman
  48. Q-learning e DQN: imparare il valore delle azioni, dalla tabella alla rete neurale
  49. Policy gradient e PPO: imparare direttamente la politica
  50. Come funziona un agente IA: un modello linguistico in un ciclo con strumenti
  51. Programmare con agenti IA: incarico, test e controllo
  52. Valutazione e sicurezza dei sistemi di IA: come misurare e come sorvegliare

Programma completo della serie 52 di 83 argomenti pubblicati

Cosa porterai a casa
  • Che cos’è un insieme fuzzy e perché il grado di appartenenza non è una probabilità.
  • Come parole come «caldo» o «gradevole» si scrivono con funzioni di appartenenza e come si sovrappongono.
  • Come funzionano intersezione, unione e complemento fuzzy e perché non vale il principio del terzo escluso.

Utile sapere prima: Insiemi e relazioni: i mattoncini con cui si costruiscono le definizioni nell’IA, Funzioni e applicazioni: perché ogni modello di IA è una funzione

Quanti granelli di sabbia fanno un mucchio? Un milione di sicuro. Uno di sicuro no. E se da un mucchio togli un granello, è ancora un mucchio — quindi, seguendo questa logica, anche un solo granello sarebbe un mucchio. Questo paradosso lo conoscevano già gli antichi Greci e mostra che molte parole con cui parliamo del mondo non hanno un confine netto: alto, caldo, veloce, quasi pieno. La matematica classica le gestisce male, perché un elemento o appartiene a un insieme o non gli appartiene. Nel 1965 Lotfi Zadeh dell’Università della California a Berkeley propose una soluzione semplice: permettere che un elemento appartenga a un insieme un po’.

Con questa parte comincia il modulo sulla logica fuzzy. Fa seguito alle parti Insiemi e relazioni e Funzioni e applicazioni.

1. Il confine netto e il suo problema

Definizione — funzione caratteristica

Un insieme classico (netto, in inglese crisp) A ⊆ X è determinato univocamente dalla sua funzione caratteristica χA : X → {0, 1}, dove χA(x) = 1 per x ∈ A e 0 altrimenti.

In parole semplici

Un insieme netto è un elenco con un sì e un no chiari. Diciamo che «caldo» vuol dire da 25 °C in su. Allora 25 °C è caldo e 24,9 °C no — anche se nessuno noterebbe la differenza. Un confine in un punto preciso è arbitrario e una piccola variazione dell’ingresso provoca un salto nel risultato.

00,51 0510152025303540 temperatura T (°C) grado di appartenenza μ (0–1)
«Caldo» come insieme netto e come insieme fuzzy netto: da 25 °Cfuzzy

2. Insieme fuzzy

Definizione — insieme fuzzy (Zadeh, 1965)

Un insieme fuzzy A sull’universo X è dato da una funzione di appartenenza μA : X → [0, 1]. Il numero μA(x) è il grado di appartenenza dell’elemento x ad A; formalmente A = {(x, μA(x)) : x ∈ X}.

Un insieme netto è il caso particolare in cui μA assume solo i valori 0 e 1.

In parole semplici

Invece di «appartiene, non appartiene» ogni elemento riceve un numero da zero a uno: quanto appartiene all’insieme. 28 °C è «caldo» del tutto (1), 25 °C a metà (0,5), 20 °C per niente (0). In mezzo l’appartenenza cambia gradualmente — nessun salto tra 24,9 e 25.

È importante che cosa il grado di appartenenza non è: non è una probabilità. Se 25 °C è «caldo» con grado 0,5, non significa che ci sia il cinquanta per cento di probabilità che faccia caldo. La temperatura è nota con precisione; vaga è la parola. Della differenza tra la vaghezza di una parola e l’incertezza del caso si occupa la prossima parte.

3. Forme delle funzioni di appartenenza

Definizione — funzioni di appartenenza comuni
  • Triangolare con parametri a < b < c: cresce linearmente da 0 in a a 1 in b e scende a 0 in c.
  • Trapezoidale con parametri a ≤ b ≤ c ≤ d: cresce da a a b, tra b e c vale 1, scende fino a d.
  • Gaussiana: μ(x) = e−(x − m)2 / 2s2 — una collina liscia con centro m e larghezza s.
  • Sigmoidale: μ(x) = 1 / (1 + e−a(x − c)) — un passaggio graduale da 0 a 1 attorno al punto c.
In parole semplici

La forma si sceglie in base a ciò che è naturale e a ciò che si calcola facilmente. In pratica vincono di gran lunga più spesso triangoli e trapezi: bastano pochi numeri, tutti li capiscono e i calcoli sono veloci. La forma esatta di solito conta meno di quanto sembri — l’importante è dove la funzione comincia, dove raggiunge il massimo e dove finisce.

μ(x) = max( 0, min( (x − a) / (b − a), (c − x) / (c − b) ) )

(x − a) / (b − a)
lato sinistro — una retta che in a vale 0 e in b vale 1; dividere per la lunghezza b − a fa sì che il vertice valga esattamente 1 indipendentemente dalla larghezza
(c − x) / (c − b)
lato destro — speculare: in b vale 1, in c vale 0
min
sceglie il lato che in quel punto sta più in basso — a sinistra di b il lato destro sta sopra 1, a destra di b quello sinistro; così il minimo «taglia» la punta esattamente in b
max(0, …)
fuori dall’intervallo (a; c) i lati risulterebbero negativi; il grado di appartenenza però non può scendere sotto 0
Il triangolo in una sola espressione — esattamente quella che calcola la funzione trojuhelnik qui sotto. Per «caldo» (22, 28, 34) e 25 °C: min(3/6, 9/6) = 0,5.
def trojuhelnik(a, b, c):
    return lambda x: max(0.0, min((x - a) / (b - a), (c - x) / (c - b)))

def lichobeznik(a, b, c, d):
    def mu(x):
        if x < a or x > d:
            return 0.0
        if x < b:
            return (x - a) / (b - a)
        return 1.0 if x <= c else (d - x) / (d - c)
    return mu

teplo = trojuhelnik(22, 28, 34)
print(teplo(25), teplo(28), teplo(31))   # 0.5 1.0 0.5

4. Variabile linguistica

Definizione — variabile linguistica (Zadeh, 1975)

Una variabile linguistica è una variabile i cui valori sono parole. È data da un nome (per esempio «temperatura»), da un universo X (0–40 °C) e da un insieme di termini (freddo, gradevole, caldo, torrido), ciascuno dei quali è un insieme fuzzy su X.

In parole semplici

Le parole con cui descriviamo la temperatura si sovrappongono — e va bene così. 25 °C è un po’ «gradevole» e un po’ «caldo», esattamente come direbbe una persona.

La nostra temperatura ha quattro termini: freddo è un trapezio (0, 0, 6, 14), gradevole un trapezio (10, 17, 23, 28), caldo un triangolo (22, 28, 34) e torrido un trapezio (30, 36, 40, 40). La linea verticale salta tra le temperature di esempio:

00,51 0510152025303540 12 °C 0,250,29 25 °C 0,600,50 31 °C 0,500,17 temperatura T (°C) grado di appartenenza μ (0–1)
La variabile linguistica temperatura e le appartenenze di tre temperature freddogradevolecaldotorrido
  • 12 °C è «freddo» con grado 0,25 e «gradevole» con grado 0,29 — una fresca giornata di primavera in cui non si riesce a decidere.
  • 25 °C è «gradevole» con grado 0,6 e «caldo» con grado 0,5.
  • 31 °C è «caldo» con grado 0,5 e già anche «torrido» con grado 0,17.
Esempio — appartenenze passo dopo passo

Su ogni lato basta il rapporto tra «quanto del lato è già stato percorso» e «quanto è lungo il lato»:

12 °C, freddo (0, 0, 6, 14) sul lato discendente: (14 − 12) / (14 − 6) = 2/8 = 0,25

12 °C, gradevole (10, 17, 23, 28) sul lato ascendente: (12 − 10) / (17 − 10) = 2/7 ≈ 0,29

25 °C, gradevole sul lato discendente: (28 − 25) / (28 − 23) = 3/5 = 0,6

25 °C, caldo (22, 28, 34) sul lato ascendente: (25 − 22) / (28 − 22) = 3/6 = 0,5

31 °C, caldo sul lato discendente: (34 − 31) / (34 − 28) = 3/6 = 0,5

31 °C, torrido (30, 36, 40, 40) sul lato ascendente: (31 − 30) / (36 − 30) = 1/6 ≈ 0,17

Gli altri termini hanno in queste temperature appartenenza 0 — la temperatura sta fuori dal loro supporto.

Nota che le appartenenze di una stessa temperatura non danno necessariamente somma 1 (per 25 °C danno 1,1). Gli insiemi fuzzy non sono parti di un unico intero, ma risposte indipendenti alle domande «fa freddo?», «è gradevole?»…

5. Supporto, nucleo e α-tagli

Definizione — supporto, nucleo, altezza, α-taglio
  • Il supporto (support) è {x : μA(x) > 0} — gli elementi che appartengono ad A almeno un po’.
  • Il nucleo (core) è {x : μA(x) = 1} — gli elementi che appartengono del tutto.
  • L’altezza è supx μA(x); un insieme di altezza 1 è normale.
  • L’α-taglio per α ∈ (0, 1] è l’insieme netto Aα = {x : μA(x) ≥ α}. Un insieme fuzzy è convesso se tutti i suoi α-tagli sono intervalli.
In parole semplici

L’α-taglio è «quanto vogliamo essere severi». Il taglio al livello 0,5 contiene le temperature che sono gradevoli almeno a metà. Dagli α-tagli si può ricomporre l’insieme fuzzy — sono le curve di livello della collina. E grazie a loro la matematica degli insiemi netti si può usare anche sugli insiemi fuzzy: basta applicarla separatamente a ogni livello α.

00,51 0510152025303540 α-taglio 0,5: [13,5; 25,5]supporto (10; 28)nucleo [17; 23] temperatura T (°C) grado di appartenenza μ (0–1)
Il termine «gradevole»: supporto, nucleo e α-taglio per α = 0,5 gradevole

Per «gradevole» il supporto è l’intervallo aperto (10; 28), il nucleo [17; 23] e l’α-taglio al livello 0,5 l’intervallo [13,5; 25,5]. L’insieme è normale (altezza 1) e convesso — come tutti i nostri termini. (L’estremo superiore sup nella definizione dell’altezza è il più piccolo maggiorante dei valori; per le nostre funzioni continue su un intervallo chiuso è semplicemente il massimo.)

Aα = [ a + α (b − a) ;  d − α (d − c) ]

α
il livello del taglio (nella figura la linea ambra) — quanta appartenenza richiediamo; più è alto, più dobbiamo allontanarci dai bordi, e il taglio si restringe
a
bordo sinistro del supporto — da qui sale il lato sinistro; per α → 0 il taglio comincia proprio qui
(b − a)
larghezza del lato sinistro — su di essa l’appartenenza sale da 0 a 1, quindi raggiunge il livello α dopo aver percorso la frazione α di questa larghezza
d
bordo destro del supporto — da qui si misura all’indietro verso sinistra
(d − c)
larghezza del lato destro — specularmente: da d percorriamo verso sinistra la frazione α di questa larghezza
α-taglio del trapezio (a, b, c, d) per α ∈ (0, 1]: basta risolvere (x − a)/(b − a) = α e (d − x)/(d − c) = α. Per α = 1 risulta il nucleo [b; c].
Esempio — α-tagli del termine «gradevole» (10, 17, 23, 28)

α = 0,5: [10 + 0,5 · 7; 28 − 0,5 · 5] = [13,5; 25,5]

α = 0,8: [10 + 0,8 · 7; 28 − 0,8 · 5] = [15,6; 24]

α = 1: [10 + 7; 28 − 5] = [17; 23] = nucleo

I tagli sono annidati: più alto è α, più piccolo è l’intervallo, e ogni taglio più alto sta dentro quello più basso. All’indietro l’insieme fuzzy si ricompone come μA(x) = sup {α : x ∈ Aα} — l’appartenenza di un punto è il taglio più alto in cui ancora ricade.

Quando la funzione di appartenenza non è data da una formula, ma per esempio da punti misurati, l’α-taglio si calcola su una griglia fine. È esattamente ciò che fa il programma che disegna le figure di questa parte:

def alfa_rez(mu, alfa, od=0.0, do=40.0, kroku=4000):
    body = [od + i * (do - od) / kroku for i in range(kroku + 1)]
    uvnitr = [x for x in body if mu(x) >= alfa]
    return (uvnitr[0], uvnitr[-1]) if uvnitr else None   # per un insieme convesso è un intervallo

prijemne = lichobeznik(10, 17, 23, 28)
print(alfa_rez(prijemne, 0.5))    # (13.5, 25.5)

6. Complemento, intersezione e unione

Definizione — operazioni di Zadeh

μ¬A(x) = 1 − μA(x),   μA ∩ B(x) = min(μA(x), μB(x)),   μA ∪ B(x) = max(μA(x), μB(x)).

Per gli insiemi netti queste formule danno esattamente il complemento, l’intersezione e l’unione classici.

In parole semplici

«Gradevole e allo stesso tempo caldo» è vero quanto è vera la più debole delle due parti; «gradevole o caldo» quanto la più forte. Una catena è forte quanto il suo anello più debole, e quando basta una delle due cose, decide la migliore.

00,51 0510152025303540 non gradevole = 1 − μ gradevole e caldo = min gradevole o caldo = max temperatura T (°C) grado di appartenenza μ (0–1)
Operazioni con i termini «gradevole» e «caldo» gradevolecaldo

A 25 °C «gradevole e caldo» vale 0,5 e «gradevole o caldo» 0,6. L’intersezione raggiunge al massimo 0,545 intorno a 25,3 °C, dove le due curve si incrociano — nessuna temperatura è del tutto entrambe le cose.

μP ∩ T(x) = min( μP(x), μT(x) )

μP(x)
quanto la temperatura x è «gradevole» (nella figura la curva verde)
μT(x)
quanto è «caldo» (la curva ambra) — le due appartenenze si calcolano indipendentemente, ciascuna con la propria funzione
min
«e allo stesso tempo» può essere vero al massimo quanto la parte più debole — se lo fosse di più, affermeremmo sulla temperatura più di quanto regga una delle due parole; e per i valori 0 e 1 il min dà esattamente la «e» classica
L’unione è la stessa cosa con max (la più forte delle due), il complemento 1 − μ rovescia la scala: ciò che appartiene del tutto non appartiene per niente, e ciò che appartiene a metà resta a metà.
Esempio — dove l’intersezione è massima

Tra 23 e 28 °C gradevole scende e caldo sale, quindi il minimo è massimo dove le curve si intersecano:

(28 − x) / 5 = (x − 22) / 6

6 (28 − x) = 5 (x − 22)  ⇒  168 − 6x = 5x − 110  ⇒  x = 278/11 ≈ 25,27 °C

μ = (28 − 278/11) / 5 = 6/11 ≈ 0,545

A sinistra del punto di intersezione il più basso è caldo, a destra gradevole — lì il minimo scende sempre.

Qui gli insiemi fuzzy differiscono da quelli classici in qualcosa di fondamentale. Per loro valgono quasi tutte le regole note — commutatività, associatività, leggi di De Morgan —, ma non il principio del terzo escluso. L’intersezione A ∩ ¬A non è necessariamente vuota: «gradevole e allo stesso tempo non gradevole» a 13,5 °C vale 0,5. Per le parole vaghe è giusto così — di una temperatura che è gradevole a metà si può dire allo stesso tempo, a metà, che gradevole non è. Altre possibilità di intersezione e unione (le cosiddette t-norme) arriveranno nella parte sulla logica fuzzy.

Teorema — le leggi di De Morgan valgono, il terzo escluso no

Per insiemi fuzzy qualsiasi A, B su X e per ogni x ∈ X con le operazioni di Zadeh vale

  1. ¬(A ∩ B) = ¬A ∪ ¬B e ¬(A ∪ B) = ¬A ∩ ¬B,
  2. μA ∩ ¬A(x) ≤ ½ e μA ∪ ¬A(x) ≥ ½, con l’uguaglianza se e solo se μA(x) = ½.

Dimostrazione. (1) Poniamo p = μA(x), q = μB(x) e senza perdita di generalità p ≤ q. Allora 1 − min(p, q) = 1 − p, e poiché 1 − p ≥ 1 − q, è anche max(1 − p, 1 − q) = 1 − p. La seconda legge si ottiene allo stesso modo scambiando min e max.

(2) I numeri p e 1 − p hanno somma 1, quindi il minore è al massimo ½ e il maggiore almeno ½. ∎

Il principio classico del terzo escluso richiede A ∪ ¬A = X, cioè il valore 1 ovunque. Per un insieme fuzzy vale solo dove μA è 0 o 1; va peggio nei punti con appartenenza ½ — per «gradevole» a 13,5 e 25,5 °C, dove A ∩ ¬A e A ∪ ¬A valgono entrambi 0,5.

Verifica su un numero: a 25 °C è ¬(P ∩ T) = 1 − min(0,6; 0,5) = 0,5 e ¬P ∪ ¬T = max(0,4; 0,5) = 0,5.

7. Molto caldo, un po’ caldo

Definizione — modificatori linguistici (Zadeh, 1972)

Concentrazione («molto»): μmolto A(x) = μA(x)2. Dilatazione («un po’», «più o meno»): μun po’ A(x) = √μA(x).

In parole semplici

Elevare al quadrato un numero tra 0 e 1 lo rimpicciolisce — e tanto più quanto è piccolo: 0,5 diventa 0,25, ma 1 resta 1. «Molto caldo» è perciò più stretto e più severo di «caldo». La radice invece allarga l’insieme: 25 °C è «caldo» con grado 0,5, «un po’ caldo» con grado 0,71 e «molto caldo» solo con grado 0,25.

00,51 0510152025303540 temperatura T (°C) grado di appartenenza μ (0–1)
Caldo, molto caldo e un po’ caldo un po’ caldo (√μ)caldomolto caldo (μ²)
Definizione — inclusione di insiemi fuzzy

Un insieme fuzzy A è un sottoinsieme di B (A ⊆ B) se μA(x) ≤ μB(x) per ogni x ∈ X. Per gli insiemi netti è l’inclusione usuale: dove χA = 1, deve essere anche χB = 1.

μ(x)2 ≤ μ(x) ≤ √μ(x)   per μ(x) ∈ [0, 1]

μ2
«molto» (la curva rossa) — moltiplicare per un numero al massimo 1 non fa mai crescere, quindi il quadrato sta sotto la curva originale; toglie di più ai valori intermedi, lo zero e l’uno li lascia
μ
«caldo» da solo (la curva ambra) — il termine di partenza, che i modificatori si limitano a rimodellare; né il supporto né il nucleo cambiano
√μ
«un po’» (la curva viola) — la radice è l’inversa del quadrato, quindi solleva ciò che il quadrato schiaccia: √0,25 = 0,5
Per questo molto A ⊆ A ⊆ un po’ A: «molto caldo» è sempre caldo, e ciò che è caldo è almeno un po’ caldo. Ripetendo si ottiene una scala: «molto molto» è μ4.
Esempio — quanto «molto» restringe e «un po’» allarga

L’α-taglio al livello 0,5 per «caldo» (22, 28, 34) è [25; 31]. Per i termini modificati basta riportare il livello alla μ originale:

molto caldo: μ² ≥ 0,5  ⇔  μ ≥ √0,5 ≈ 0,707  →  [22 + 0,707 · 6; 34 − 0,707 · 6] ≈ [26,24; 29,76]

un po’ caldo: √μ ≥ 0,5  ⇔  μ ≥ 0,25  →  [22 + 0,25 · 6; 34 − 0,25 · 6] = [23,5; 32,5]

L’intervallo «almeno a metà» è largo 6 °C per caldo, circa 3,5 °C per molto caldo e 9 °C per un po’ caldo.

8. Gli insiemi fuzzy nella pratica

  • Controllo fuzzy. La metropolitana della città giapponese di Sendai viaggia dal 1987 con un controllore fuzzy che accelera e frena in modo più dolce di una persona. Intorno al 1990 in Giappone seguì un’ondata di lavatrici, videocamere e condizionatori fuzzy. Come funziona un controllore del genere lo spiegherà la parte sul controllo fuzzy.
  • Elaborazione delle immagini e clustering. Un pixel al confine tra due regioni può appartenere un po’ a entrambe; il clustering fuzzy assegna i punti a più cluster contemporaneamente.
  • Apprendimento automatico. Le uscite morbide dei classificatori o la tecnica del label smoothing (invece del certo «è un gatto», l’obiettivo «gatto con grado 0,9») non sono insiemi fuzzy nel senso di Zadeh, ma condividono con essi l’idea che l’appartenenza a una classe non sia per forza solo 0 o 1.
  • Linguaggio. I modelli linguistici lavorano ogni giorno con parole come «abbastanza», «quasi» o «piuttosto no». Gli insiemi fuzzy sono uno dei pochi strumenti che danno a parole del genere un significato preciso e verificabile.

9. Riepilogo

  • Un insieme fuzzy assegna a ogni elemento un grado di appartenenza dall’intervallo [0, 1]; un insieme netto è il caso particolare con i valori 0 e 1.
  • Le funzioni di appartenenza hanno di solito la forma di un triangolo, di un trapezio, di una collina gaussiana o di una sigmoide.
  • Una variabile linguistica ha come valori delle parole — termini che possono sovrapporsi; 25 °C è «gradevole» con grado 0,6 e «caldo» con grado 0,5.
  • Supporto, nucleo e α-tagli descrivono la forma di un insieme fuzzy tramite insiemi netti.
  • Il complemento è 1 − μ, l’intersezione il minimo e l’unione il massimo; il principio del terzo escluso non vale. Il modificatore «molto» è μ², «un po’» √μ.

Vuoi provarlo con mano? Chiedi a un agente IA di disegnare le funzioni di appartenenza per le parole con cui descrivi la tua giornata — «presto», «tardi», «a lungo» — e chiedi a qualche persona dove metterebbe i confini.

La vedi diversamente? Scrivi a support@coden-app.com.

Un Agente sul tuo computer, guidato dal telefono