Per generazioni, l’algoritmo è stato un’opera d’arte umana. Un misto di logica, creatività e intuizione distillato in istruzioni precise. Abbiamo costruito cattedrali di codice, ottimizzando ogni mattone con teoremi e notti insonni. Pensavamo di essere gli unici architetti in questo universo. Ci sbagliavamo. Oggi, qualcosa sta bussando alle porte di questo dominio. Non è un nuovo linguaggio di programmazione o un framework più veloce. È un’intelligenza che non impara le nostre regole, ma le inventa da zero, esplorando territori che la nostra mente non può nemmeno mappare. Sistemi come AlphaDev di DeepMind non sono semplici strumenti nelle mani del creatore; stanno diventando i creatori stessi. Questa non è solo un’evoluzione tecnologica. È una rivoluzione nel modo in cui la conoscenza viene creata.
AlphaDev: esplorazione algoritmica senza supervisione
Nel 2023, il team DeepMind pubblica su Nature lo studio “Faster sorting algorithms discovered using deep reinforcement learning”, mostrando come un modello di reinforcement learning profondo — battezzato AlphaDev — sia in grado di generare varianti di algoritmo di ordinamento (in istruzioni assembly) che superano le implementazioni umane presenti in librerie standard. Nature, 2023
L’approccio non è quello di ripensare l’algoritmo con una formula: piuttosto, AlphaDev esplora lo spazio di istruzioni macchina, esegue valutazioni empiriche e evolve versioni migliori.
È una forma di selezione darwiniana applicata al codice.
Schema operativo di AlphaDev
| Fase | Descrizione | Analogia biologica |
|---|---|---|
| Generazione | Creazione di varianti assembly | Mutazione genetica |
| Valutazione | Esecuzione e misurazione delle prestazioni | Selezione naturale |
| Aggiornamento policy | Raffinamento della rete decisionale | Adattamento evolutivo |
| Iterazione | Nuova generazione di varianti mutate | Cicli evolutivi |
Il risultato più sorprendente è una versione di algoritmo di ordinamento su 5 elementi che risulta essere circa il 70 % più veloce rispetto a std::sort() in C++ su alcune configurazioni — una scoperta che nessun essere umano aveva finora identificato. DeepMind ha infine integrato alcune soluzioni all’interno della libreria LLVM nel 2023.
AlphaDev: l’IA che riscrive gli algoritmi di ordinamento ( 2023)
L’articolo pubblicato su Nature descrive una scoperta rilevante: un agente di deep reinforcement learning ha trovato routine di ordinamento e ottimizzazioni a basso livello più efficienti di quelle sviluppate dagli esseri umani.
Cos’è successo
Un team ha addestrato AlphaDev — un agente basato su deep reinforcement learning — a giocare ad AssemblyGame, costruendo algoritmi di ordinamento con istruzioni in assembly per massimizzare correttezza e velocità.
🔍 Risultati principali
- AlphaDev ha scoperto nuovi algoritmi per sequenze di 3, 4 e 5 elementi, più brevi e più veloci dei migliori algoritmi umani.
- Le routine sono state integrate nella libreria standard C++ LLVM, usata da milioni di sviluppatori.
- Migliorie di performance: fino al 70% su sequenze brevi e ~1.7% su sequenze molto lunghe.
- AlphaDev ha ottimizzato anche VarInt (deserializzazione usata nei protocolli Google), rendendola fino a 3× più veloce.
Come funziona AlphaDev
Derivato da AlphaZero, AlphaDev usa una rete neurale per esplorare lo spazio delle istruzioni assembly, bilanciando la correttezza dell’algoritmo e la sua latenza (tempo di esecuzione).
Implicazioni
È la prima sostituzione di componenti critici di una libreria standard C++ con codice scoperto automaticamente da un’IA. Il risultato mostra che l’intelligenza artificiale può superare l’ingegno umano anche in aree altamente ottimizzate e tecniche.
Fonte: Nature — ricerca su AlphaDev (sintesi dell’articolo)
Il paradigma ADRS e l’assalto al dominio umano
Nel 2025, il preprint “Barbarians at the Gate: How AI is Upending Systems Research” (arXiv:2510.06189) formalizza una tendenza che AlphaDev anticipa: il paradigma chiamato AI-Driven Research for Systems (ADRS). Qui l’intelligenza artificiale non è uno strumento: è un esploratore nel territorio della scoperta algoritmica.
Il ciclo ADRS si articola in:
- Generazione — Produzione di migliaia di varianti
- Verifica — Esecuzione diretta e raccolta di metriche
- Selezione — Scelta delle versioni migliori
- Iterazione — Ciclo continuo di mutazione e evoluzione
Invece di partire da un’ipotesi computazionale, ADRS lascia che la performance misurata stabilisca cosa merita attenzione.
È una rivoluzione concettuale.
Confronto: ricerca classica vs ricerca AI-guidata
| Dimensione | Ricerca tradizionale | AlphaDev / ADRS |
|---|---|---|
| Spazio esplorabile | Limitato da intuizioni umane | Intero spazio combinatorio (~10ⁿ possibilità) |
| Velocità iterativa | Singola iterazione ogni ora/giorno | Milioni di test in parallelo |
| Metodo | Deduzione / progettazione | Evoluzione / selezione |
| Comprensibilità | Progettazione interpretabile | Codice emergente, spesso opaco |
La differenza non è solo quantitativa: l’IA esplora regioni dell’iperspazio algoritmico che nessuna mente umana può immaginare. Ciò genera soluzioni che resistono all’interpretazione diretta.
Barbarians at the Gate: come l’AI sta riscrivendo la ricerca sui sistemi
L’articolo “Barbarians at the Gate: How AI is Upending Systems Research” analizza come l’intelligenza artificiale stia trasformando radicalmente la ricerca nel campo dei sistemi informatici, passando da semplice strumento di supporto a vero protagonista del processo scientifico.
🧠 Idee principali
L’approccio AI alla ricerca si basa su due fasi chiave:
- Generazione di molteplici soluzioni a un problema specifico.
- Verifica e selezione della soluzione più efficace tramite un verificatore affidabile che ne conferma la correttezza e l’efficienza.
💡 Perché la ricerca sui sistemi è ideale per l’AI
- I problemi di performance possono essere testati direttamente su sistemi reali o simulatori.
- La verifica è basata su metriche oggettive come tempo di esecuzione o costo computazionale.
⚙️ ADRS – AI-Driven Research for Systems
È il paradigma che descrive la ricerca guidata dall’intelligenza artificiale nei sistemi. Un esempio concreto è penEvolve,
ADRS in pratica: casi applicativi e strumenti open source
Il paradigma AI-Driven Research for Systems non è solo una prospettiva teorica: alcune piattaforme open source permettono già di sperimentare forme primitive di scoperta automatizzata di algoritmi e ottimizzazioni di sistema. Vediamo come si traduce nella pratica.
1. openEvolve: la fucina delle architetture emergenti
Nel paper “Barbarians at the Gate” gli autori introducono openEvolve, una piattaforma di ricerca che implementa i principi ADRS: generazione, validazione e selezione iterativa di soluzioni per problemi di performance nei sistemi distribuiti.
L’architettura è pensata per supportare ambienti cloud e containerizzati.
# Pseudo-configurazione semplificata
experiment:
objective: "reduce_query_latency"
generator: "neural_mutator_v2"
verifier: "benchmark_runner"
selector: "pareto_optimizer"
metrics: ["latency", "throughput", "cost"]
Ogni esperimento esegue centinaia di varianti di configurazioni di sistema, ne valuta le prestazioni in tempo reale e promuove le migliori secondo una funzione di fitness.
Il codice (Python + Rust) è in fase di rilascio su GitHub sotto licenza Apache 2.0.
2. DeepMind AlphaDev: scoperta di algoritmi
L’esperimento AlphaDev di DeepMind rappresenta il prototipo ideale di ADRS applicato alla programmazione. Basandosi su una pipeline di reinforcement learning e reward empirico, AlphaDev esplora milioni di combinazioni di istruzioni assembly, identificando soluzioni più veloci per il sorting. Alcune di queste scoperte sono già state integrate nella LLVM Standard Library.
3. Evoluzione guidata per l’ottimizzazione di query e scheduler
Nei laboratori di UC Berkeley, gli autori del paper ADRS hanno esteso il paradigma alla query optimization e alla transaction scheduling. L’IA genera nuove regole di pianificazione e verifica direttamente il loro impatto sul throughput.
In alcuni test, la latenza è stata ridotta del 26 % rispetto ai migliori algoritmi umani noti.
4. Strumenti e framework per sperimentare ADRS
| Strumento | Descrizione | Applicazione |
|---|---|---|
| AlphaDev (DeepMind) | Motore RL per scoperta di algoritmi ottimizzati | Ricerca di pattern in codice a basso livello |
| Optuna | Framework di ottimizzazione automatica dei parametri | Ricerca di iperparametri in configurazioni ADRS |
| DEAP | Evolutionary algorithms in Python | Prototipazione di generatori e selettori evolutivi |
| Nevergrad | Ottimizzazione grad-free | Benchmark e testing di strategie senza derivata |
5. Verso una piattaforma open ADRS
Le iniziative accademiche stanno convergendo verso un obiettivo comune: creare un ecosistema open-ADRS in cui moduli di generazione, verifica e selezione siano interoperabili. L’obiettivo è democratizzare la scoperta algoritmica, riducendo la dipendenza da infrastrutture proprietarie.
«Non si tratta solo di automatizzare il pensiero umano, ma di creare un sistema che possa pensare in modi che l’umano non può.»
— Audrey Cheng et al., “Barbarians at the Gate”, UC Berkeley 2025
6. Come iniziare ( Esempio in Python)
Per chi desidera sperimentare in autonomia, ecco una pipeline minimale ADRS in Python:
Questo script Python è un esperimento pratico che mostra, in piccolo, l’idea di scoperta algoritmica discussa nell’articolo.
- Il Problema da Risolvere: Trovare una combinazione di cinque numeri la cui somma sia esattamente 42. Un compito semplice per un essere umano, ma qui la sfida è far sì che il computer lo scopra da solo, senza istruzioni matematiche dirette.
- Cosa Fa il Codice: Invece di calcolare una soluzione, il programma simula un processo di evoluzione biologica. Inizia con una “popolazione” di soluzioni casuali e, attraverso cicli di selezione, riproduzione e mutazione, fa evolvere le soluzioni migliori finché non si avvicina all’obiettivo. È un motore di ricerca intelligente che esplora lo spazio delle possibilità, guidato da un unico principio: la “sopravvivenza del più adatto”.
In pratica, stiamo osservando una forma base del ciclo Genera-Verifica-Seleziona che anima sistemi complessi come AlphaDev.
import random
from deap import base, creator, tools
# Definizione del problema: massimizzare la fitness (vicinanza a 42)
creator.create("FitnessMax", base.Fitness, weights=(1.0,))
creator.create("Individual", list, fitness=creator.FitnessMax)
toolbox = base.Toolbox()
toolbox.register("attr_float", random.uniform, -10, 10)
toolbox.register("individual", tools.initRepeat, creator.Individual, toolbox.attr_float, n=5)
toolbox.register("population", tools.initRepeat, list, toolbox.individual)
def fitness(individual):
return -abs(sum(individual) - 42),
toolbox.register("evaluate", fitness)
toolbox.register("mate", tools.cxBlend, alpha=0.5)
toolbox.register("mutate", tools.mutGaussian, mu=0, sigma=1, indpb=0.2)
toolbox.register("select", tools.selTournament, tournsize=3)
toolbox.register("map", map) # <-- Importante
# Inizializza la popolazione
pop = toolbox.population(n=100)
for gen in range(50):
offspring = list(toolbox.map(toolbox.clone, tools.selBest(pop, k=250)))
for ind in offspring:
if random.random() < 0.5:
toolbox.mutate(ind)
del ind.fitness.values
for ind in offspring:
ind.fitness.values = toolbox.evaluate(ind)
pop[:] = offspring
best = tools.selBest(pop, k=1)[0]
print("Miglior individuo:", best)
print("Somma:", sum(best))
Output:
Miglior individuo: [13.477089329402324, 2.7007585559603315, 5.341403224709712, 10.037270768460175, 10.87932583559787]
Somma: 42.43584771413041
Analisi Didattica del Codice
Obiettivo Concettuale
Il codice eseguito è un mini-esperimento di evoluzione artificiale che utilizza un Algoritmo Genetico (GA), una branca dell’apprendimento automatico ispirata alla biologia.
Lo scopo è dimostrare che un sistema può trovare autonomamente una soluzione (una lista di 5 numeri reali) a un problema (la somma deve essere 42), senza ricevere istruzioni specifiche su come calcolare tale somma.
In termini di intelligenza artificiale avanzata (come i sistemi ADRS – Algorithmic Discovery via Reinforcement & Search), questo è un modello semplificato di <strong>scoperta algoritmica</strong>: si definisce un obiettivo (la fitness), si lasciano evolvere candidati e si seleziona il migliore.
Cosa Fa il Codice, Passo per Passo
Il codice utilizza la libreria DEAP (Distributed Evolutionary Algorithms in Python), che fornisce la struttura per simulare la biologia evolutiva con concetti matematici.
1. Preparazione del Contesto (DEAP Setup)
2. La Chiave: La Funzione di Fitness
def fitness(individual):
return -abs(sum(individual) - 42),
Questa è la pressione evolutiva. Essa quantifica quanto un individuo è “adatto” all’ambiente, in base al nostro obiettivo:
- Obiettivo: La somma dei 5 numeri deve essere 42.
- Misura dell’Errore: Si calcola l’errore come [math]|\sum x_i – 42|[/math] (distanza da 42).
- Conversione a Fitness: L’errore viene negato: [math]-|\text{errore}|[/math].
- Se l’errore è 0 (somma è 42), la fitness è 0 (il massimo possibile).
- Se l’errore è 10 (somma è 52 o 32), la fitness è -10 (peggiore).
3. I Meccanismi Evolutivi (Operatori Genetici)
4. Il Ciclo Evolutivo
Il cuore del programma è il loop che simula 50 generazioni:
- Valutazione: Calcola la fitness per ogni individuo nella popolazione.
- Selezione: Sceglie i 50 individui con la fitness più alta (i “sopravvissuti”).
- Riproduzione: Usa il crossover sui sopravvissuti per generare una nuova prole.
- Mutazione: Applica mutazioni casuali alla prole.
- Sostituzione: La prole mutata sostituisce l’intera popolazione per la generazione successiva.
Questo processo iterativo fa sì che, generazione dopo generazione, la qualità media della popolazione aumenti, e la somma dei numeri si avvicini sempre più a 42.
Significato Concettuale e Collegamento a OpenEvolve / ADRS
Questo esercizio sul numero 42 è una metafora funzionante dei sistemi avanzati di scoperta algoritmica.
Il codice dimostra che l’evoluzione può essere usata come un motore di ricerca intelligente:
- Non si istruisce il sistema con regole (“se sei troppo basso, aumenta il primo numero”).
- Si valuta solo l’output (“sei vicino a 42, quindi sei bravo”).
L’algoritmo genetico è in grado di navigare nello spazio delle possibili soluzioni (tutte le combinazioni di 5 numeri) e trovare quelle che massimizzano la fitness, imitando il processo di trial-and-error efficiente che ha portato alla diversità biologica sulla Terra.
L’Esercizio del “42” – Perché è più di un Gioco
A prima vista, trovare cinque numeri la cui somma sia 42 sembra un compito banale. Eppure, questo semplice esercizio cattura l’essenza rivoluzionaria del paradigma ADRS e nasconde alcune peculiarità profonde.
1. La peculiarità della “Ricerca Cieca” (Black-Box Optimization)
L’aspetto più interessante dell’esercizio è che l’algoritmo non sa assolutamente nulla di matematica. Non ha il concetto di “somma”, “numero negativo” o “obiettivo”. L’unica informazione che riceve è un punteggio, un segnale di “caldo” o “freddo” dato dalla funzione di fitness. Questo approccio è incredibilmente potente nel mondo reale:
- Applicazione Pratica: Immagina che l’ “individuo” non sia una lista di numeri, ma la configurazione di un data center (parametri di rete, allocazione di CPU, numero di thread). L’obiettivo non è “somma 42”, ma “latenza minima”. Non esiste una formula per calcolare la configurazione perfetta. Usando un approccio evolutivo, possiamo “far evolvere” la configurazione migliore semplicemente misurando la latenza (la nostra
fitness) di migliaia di varianti, senza dover capire le complesse interazioni tra i parametri.
2. L’Interesse per l’Emergenza e la Non-Linearità
L’algoritmo non procede in modo lineare (“sono a 40, mi mancano 2”). Esplora lo spazio delle soluzioni in modo parallelo e non intuitivo. Una soluzione “cattiva” (lontana da 42) potrebbe contenere un gene (un numero) che, combinato con un altro individuo, produce un discendente eccezionale. Questo riflette come funziona l’innovazione.
- Applicazione Pratica: AlphaDev non ha semplicemente modificato un algoritmo esistente. Ha scoperto combinazioni di istruzioni assembly che un programmatore umano avrebbe scartato perché controintuitive (ad esempio, una mossa che sembra inefficiente sul momento ma che, combinata con altre, sblocca una scorciatoia). L’evoluzione algoritmica è brava a trovare queste soluzioni “non ovvie” che emergono da interazioni complesse.
3. Un Modello in Miniatura del Ciclo ADRS
Questo piccolo script è la rappresentazione perfetta del ciclo Genera-Verifica-Seleziona che guida la ricerca AI-driven:
- Generatore: Gli operatori
mate(crossover) emutatecreano continuamente nuove soluzioni. - Verificatore: La funzione
fitnessè il nostro “oracolo della verità”. È un test empirico, oggettivo e infallibile che misura la qualità di ogni soluzione. - Selettore: L’operatore
selectincarna la “selezione naturale”, assicurando che solo le idee migliori sopravvivano e si riproducano.
L’esercizio dimostra che, avendo a disposizione un generatore di varianti e un verificatore affidabile, è possibile automatizzare un processo di scoperta che porta a soluzioni ottimali, anche senza una comprensione teorica del problema. Questa è la promessa e, allo stesso tempo, la sfida più grande posta da AlphaDev e dal futuro della ricerca.
Il curatore epistemico e le nuove professioni
Se l’IA si assume il compito dell’invenzione, il ruolo umano muta radicalmente. Non siamo più creatori, ma curatori di librerie generative. Le principali nuove responsabilità includono:
- Progettare metriche e criteri di selezione (definire cosa “vale la pena scoprire”)
- Controllare il verificatore come gatekeeper epistemico
- Interpretare in linguaggio umano i pattern emergenti
Nuove professioni per il mondo post-algoritmico
Questa trasformazione sta già seminando i primi segnali nel mercato del lavoro. Non bastano più le figure storiche come “Machine Learning Engineer”. Emergono mestieri ibridi come il Computational Discovery Architect, che progetta ambienti di test evolutivi, o l’Algorithmic Interpreter, la cui missione è tradurre in teorie comprensibili ciò che l’IA ha scoperto per “istinto”.
In questo nuovo ecosistema scientifico, l’interpretazione diventa forma di design, e la comprensione un mestiere.
Prospettive e rischi
Sistemi come AlphaDev suggeriscono un futuro in cui molte scoperte nei sistemi informatici—e forse oltre—non nasceranno più da teorie umane, ma da evoluzione automatica guidata da test empirici.
Le sfide da affrontare includono:
- Spiegabilità inversa — Come dare senso a risultati nati da evoluzione automatica?
- Controllo epistemico — Chi decide quali metriche inserirvi?
- Asimmetria conoscitiva — Il divario di comprensione tra umano e IA
Approfondimenti:
- 🔴 Barbarians at the Gate: l’IA non sta solo ottimizzando i sistemi, li sta inventando al posto nostro
- 🔴 MOR: l’innovazione DeepMind per LLM intelligenti e sostenibili — meno costi, più potenza AI
- 🔴 Blackout cognitivo: cosa succede se si ferma il “cervello” dell’IA globale?
- 🔴 L’IA che si divora: perché il boom di NVIDIA e OpenAI rischia il collasso (analisi 2025–2030)
- 🔴 Chain of Hallucination (CoH): l’evoluzione delle allucinazioni nei modelli generativi
- 🔴 AGI: a che punto siamo davvero nel 2025? Tutti i livelli dell’intelligenza artificiale spiegati semplicemente
- 🔴 V-JEPA: l’IA di Meta che impara dal mondo reale — perché sta già cambiando la robotica
Fonti:
- DeepMind – “Faster sorting algorithms discovered using deep reinforcement learning”, Nature 2023
- “Barbarians at the Gate: How AI is Upending Systems Research”, Audrey Cheng et al., arXiv:2510.06189, 2025
- Blog DeepMind – AlphaDev discovers faster sorting algorithms
Video consigliati su AlphaDev
Selezione di video dimostrativi e presentazioni su AlphaDev, utile per approfondimenti tecnici.
-
🎬 AlphaDev: Discovering Faster Sorting Algorithms (video ufficiale DeepMind)
Valore: spiegazione visuale completa delle ottimizzazioni a livello assembly e dell’impatto sul codice C++ — ideale per dimostrazioni tecniche e casi d’uso pratici.
-
🎓 AlphaDev: Discovering Faster Sorting Algorithms with … (presentazione tecnica)
Valore: presentazione approfondita su spazio delle mosse, funzione di ricompensa e struttura dell’azione — perfetta per studenti e ricercatori.
-
🧠 ALPHADEV A New Deep Reinforcement Learning Agent By … (contestualizzazione)
Valore: mette AlphaDev in prospettiva con altri agenti e framework; utile per discussioni su implicazioni più ampie dell’IA generativa.
-
⚙️ Alpha Dev Architecture Explained #shorts (spiegazione rapida)
Valore: clip sintetica e molto visuale dell’architettura — ottima per introdurre il tema in modo molto rapido durante una slide.
-
🌍 Revolutionizing Computing: AI Discovers Faster Algorithms … (impatto reale)
Valore: mette in luce applicazioni reali e riflessioni sul futuro della programmazione e delle librerie standard.
-
🇮🇹 DeepMind ha realizzato un nuovo algoritmo di sorting che è … (video in italiano)
Valore: introduzione divulgativa in italiano — ottimo per un pubblico generalista o per contesti didattici in aula.





