Ci sono ancora molti problemi matematici rimasti irrisolti, alcuni addirittura da decenni. Ed era inevitabile che prima o dopo l’intelligenza artificiale venisse in aiuto dei matematici, come ha fatto di recente Google DeepMind con FunSearch.
In un articolo apparso oggi su Nature, i ricercatori di Google DeepMind rivelano di aver usato un potente modello linguistico per trovare una soluzione a un noto problema di matematica pura che era rimasto irrisolto.
Google DeepMind aiuta a trovare soluzioni ai problemi matematici irrisolti
I modelli linguistici di grandi dimensioni sono famosi per creare contenuti, non per scoprire fatti. Il nuovo strumento di Google DeepMind, chiamato FunSearch, potrebbe cambiare le carte in tavola.
Quello di oggi è un risultato inedito, che dimostra come un modello linguistico di grandi dimensioni possa generare nuove conoscenze verificabili e preziose che non erano presenti nei dati di addestramento.
FunSearch si aggiunge a una serie di risultati nella matematica fondamentale e nell’informatica che DeepMind ha ottenuto usando l’intelligenza artificiale.
Prima AlphaTensor ha scoperto un modo per velocizzare un calcolo essenziale per molti tipi di codice, superando un record stabilito 50 anni fa. Poi AlphaDev ha migliorato la velocità degli algoritmi chiave usati trilioni di volte al giorno.
Ma questi strumenti non usavano modelli linguistici di grandi dimensioni. Basati sull’intelligenza artificiale AlphaZero di DeepMind, entrambi risolvevano problemi di matematica trattandoli come se fossero giochi di scacchi. E non solo: hanno anche come limite il fatto che al momento sono specializzati in un solo ambito.
Come ha funzionato FunSearch per questo problema
Rispetto a quanto accennato prima, FunSearch segue un approccio diverso. Utilizza un grande modello di linguaggio chiamato Codey, una variante di PaLM 2 di Google che è addestrata sul codice informatico, insieme ad altri sistemi che scartano le risposte errate o insensate e ne generano di nuove valide.
I ricercatori hanno formulato il problema che volevano risolvere in Python, un linguaggio di programmazione molto usato. Ma hanno lasciato vuote le righe del programma che indicavano come risolverlo. È qui che interviene FunSearch, che fa in modo che Codey riempia i buchi, suggerendo il codice che risolverà il problema.
Un altro algoritmo poi verifica e valuta ciò che Codey produce. I suggerimenti migliori, anche se non ancora esatti, vengono conservati e inviati di nuovo a Codey, che prova a completare il programma di nuovo.
Dopo un paio di milioni di tentativi e alcune decine di iterazioni del processo globale, che ha richiesto alcuni giorni, FunSearch è riuscita a trovare il codice che ha fornito una soluzione corretta e inedita al problema del cap set, che consiste nel trovare la dimensione massima di un certo tipo di insieme. Ma con un bel problema, ovvero come cercare di capire quanti punti puoi mettere senza che tre di essi formino mai una linea dritta.
A riprova del suo successo, i ricercatori hanno utilizzato FunSearch per affrontare un altro difficile problema matematico: il problema dell’imballaggio dei contenitori, che implica provare a imballare gli oggetti nel minor numero possibile di contenitori. Anche in questo caso, FunSearch ha trovato un modo per risolverlo più veloce di quelli ideati dall’uomo.
Se vuoi saperne di più su questa ricerca, ti consiglio di approfondire al meglio leggendo l’articolo originale pubblicato su Nature:
- Bernardino Romera-Paredes, Mohammadamin Barekatain, Alexander Novikov, Matej Balog, M. Pawan Kumar, Emilien Dupont, Francisco J. R. Ruiz, Jordan S. Ellenberg, Pengming Wang, Omar Fawzi, Pushmeet Kohli & Alhussein Fawzi, “Mathematical discoveries from program search with large language models“, Nature.