Questo progetto nasce da un problema che conosco bene sul campo: in manutenzione industriale si interviene quasi sempre dopo il guasto. Qui ho usato un modello statistico per anticiparlo — senza scrivere regole a mano, ma lasciando che i dati storici parlassero da soli.
In un'azienda manifatturiera un fermo macchina non pianificato ha un costo medio 3–5 volte superiore a un intervento preventivo: si sommano il costo del tecnico in urgenza, il fermo produzione, i pezzi di ricambio non a magazzino e spesso il danno al cliente.
Il problema è che le aziende hanno già i dati per anticipare molti guasti — nello storico degli interventi — ma raramente li usano in modo sistematico. Si sa quando i macchinari si sono rotti, quanto durano le riparazioni, quali modelli sono più problematici. Questi dati, analizzati correttamente, permettono di costruire un sistema di allerta preventiva.
Dati 261 macchinari attivi, quali hanno la probabilità più alta di guastarsi nelle prossime settimane, e chi dovrei mandare?
La prima alternativa sarebbe stata costruire regole a mano: "se il macchinario ha più di 8 anni e più di 4 interventi nell'ultimo anno, segnalalo come a rischio." Funziona, ma ha un limite: le soglie le decidi tu, a intuizione, e non tengono conto delle interazioni tra variabili.
Un Random Forest fa la stessa cosa in modo più robusto: costruisce centinaia di alberi decisionali su sottoinsiemi casuali dei dati, poi combina le loro risposte. Il risultato è un modello che impara le soglie dai dati stessi, gestisce bene variabili di tipo diverso (numeri, categorie) e non richiede dati perfettamente puliti.
Per dati tabellari industriali come uno storico interventi è la scelta standard — non la più sofisticata, ma quella che dà risultati solidi e interpretabili senza richiedere migliaia di esempi.
Le sei variabili che il modello considera per ogni macchinario:
| Variabile | Peso sul risultato | Perché conta |
|---|---|---|
| Età macchinario | 27% | I componenti si degradano nel tempo. Coerente con la logica tecnica: i guasti aumentano dopo la "curva a vasca da bagno". |
| Ore di utilizzo | 27% | Due macchinari della stessa età possono avere usure molto diverse se uno lavora su tre turni e l'altro su uno solo. |
| Mesi senza intervento | 17% | Un macchinario non controllato da lungo tempo è statisticamente più a rischio — anche se non ha storia di guasti recenti. |
| Interventi ultimi 12 mesi | 14% | La frequenza crescente di interventi ravvicinati è un segnale classico di degrado accelerato. |
| Tipo macchinario | 10% | Compressori, gruppi frigo e quadri elettrici hanno profili di guasto diversi per natura costruttiva. |
| Priorità assegnata | 6% | Variabile di contesto: riflette l'impatto operativo del macchinario sull'attività produttiva. |
Il modello raggiunge il 75% di accuratezza sul test set nel classificare correttamente i macchinari a rischio. Intercetta correttamente l'87% dei macchinari sani, ma solo il 42% di quelli realmente a rischio — un limite tipico quando i guasti sono eventi rari nei dati. Non è uno strumento di decisione automatica, ma di prioritizzazione. Il responsabile mantiene piena autonomia sulla pianificazione degli interventi.
L'output del modello è una probabilità percentuale di guasto imminente per ogni macchinario, con una motivazione in linguaggio naturale basata sulle variabili che hanno pesato di più in quel caso specifico.
Rischio alto — pianificare un controllo entro la settimana
Rischio medio — inserire nel piano di manutenzione del mese
Rischio basso — monitoraggio nel ciclo ordinario
Per ogni macchinario a rischio il sistema suggerisce anche il tecnico in base alla specializzazione (compressori, refrigerazione, quadri elettrici, meccanica). Il coordinatore valuta disponibilità, zona geografica e carico di lavoro prima dell'assegnazione definitiva.
L'AI accelera — l'umano decide. Il modello ordina il parco macchine per priorità e motiva ogni segnalazione. La decisione su cosa fare, quando e con chi resta al responsabile della manutenzione.