La risposta alla vita, l’universo e tutto quanto
Un team guidato da Andrew Sutherland del MIT e Andrew Booker dell’Università di Bristol ha risolto l’ultimo pezzo di un famoso puzzle matematico vecchio di 65 anni con una risposta al numero più elusivo di tutti: 42.
Il numero 42 è particolarmente significativo per i fan del romanziere di fantascienza Douglas Adams “La Guida galattica per gli autostoppisti”, perché quel numero è la risposta data da un supercomputer alla “Domanda finale sulla vita, l’universo e tutto quanto”.
Booker voleva anche sapere la risposta a 42. Cioè, ci sono tre cubi la cui somma è 42?
Questo rompicapo della somma di tre cubi, impostato per la prima volta nel 1954 all’Università di Cambridge e conosciuto come l’equazione diofantina x3+y3+z3=k, ha sfidato i matematici a trovare soluzioni per numeri da 1 a 100. Con i numeri più piccoli, questo tipo di equazione è più facile da risolvere: per esempio, 29 potrebbe essere scritto come 33 + 13 + 13, mentre 32 è irrisolvibile. Tutti sono stati alla fine risolti, o dimostrati irrisolvibili, usando varie tecniche e supercomputer, tranne due numeri: 33 e 42.
Booker ha ideato un algoritmo ingegnoso e ha trascorso settimane sul supercomputer della sua università quando recentemente ha trovato una soluzione per 33. Ma quando si è rivolto a risolvere per 42, Booker ha scoperto che il calcolo necessario era un ordine di grandezza superiore e potrebbe essere oltre la capacità del suo supercomputer. Booker dice di aver ricevuto molte offerte di aiuto per trovare la risposta, ma invece si è rivolto al suo amico Andrew “Drew” Sutherland, un ricercatore principale del Dipartimento di Matematica. “È un esperto mondiale in questo genere di cose”, dice Booker.
Sutherland, la cui specialità include computazioni massicciamente parallele, ha battuto il record nel 2017 per il più grande cluster Compute Engine, con 580.000 core su Preemptible Virtual Machines, il più grande cluster di calcolo ad alte prestazioni conosciuto per funzionare nel cloud pubblico.
Come altri teorici del numero computazionale che lavorano nella geometria aritmetica, era a conoscenza del problema della “somma di tre cubi”. E i due avevano già lavorato insieme, aiutando a costruire il L-functions and Modular Forms Database (LMFDB), un atlante online di oggetti matematici legati a quello che è noto come il Programma Langlands. “Ero entusiasta quando Andy mi ha chiesto di unirmi a lui in questo progetto”, dice Sutherland.
Booker e Sutherland hanno discusso la strategia algoritmica da utilizzare nella ricerca di una soluzione a 42. Come Booker ha trovato con la sua soluzione a 33, sapevano di non dover ricorrere a provare tutte le possibilità per x, y e z.
“C’è un singolo parametro intero, d, che determina un insieme relativamente piccolo di possibilità per x, y e z tali che il valore assoluto di z è sotto un limite di ricerca scelto B”, dice Sutherland. “Nel tentativo di decifrare 33, il limite di ricerca B era 1016, ma questo B si è rivelato troppo piccolo per decifrare 42; abbiamo invece usato B = 1017 (1017 è 100 milioni di miliardi).
Altrimenti, la differenza principale tra la ricerca di 33 e la ricerca di 42 sarebbe la dimensione della ricerca e la piattaforma informatica usata. Grazie a una generosa offerta di Charity Engine, con sede nel Regno Unito, Booker e Sutherland sono stati in grado di attingere alla potenza di calcolo di oltre 400.000 PC domestici di volontari, in tutto il mondo, a ciascuno dei quali è stato assegnato un intervallo di valori per d. Il calcolo su ogni PC viene eseguito in background in modo che il proprietario possa ancora usare il suo PC per altri compiti.
Sutherland è anche un fan di Douglas Adams, quindi il progetto era irresistibile.
Il metodo di usare Charity Engine è simile a parte della trama che circonda il numero 42 nel romanzo “Hitchhiker”: Dopo che la risposta 42 di Deep Thought si dimostra insoddisfacente per gli scienziati, che non conoscono la domanda a cui dovrebbe rispondere, il supercomputer decide di calcolare la Domanda Ultima costruendo un supercomputer alimentato dalla Terra … in altre parole, impiegando una piattaforma mondiale di calcolo massicciamente parallelo.
“Questa è un’altra ragione per cui mi è piaciuto molto eseguire questo calcolo su Charity Engine – abbiamo effettivamente usato un computer su scala planetaria per risolvere un’annosa questione aperta la cui risposta è 42.”
Hanno eseguito una serie di calcoli ad una capacità inferiore per testare sia il loro codice che la rete Charity Engine. Hanno poi usato una serie di ottimizzazioni e adattamenti per rendere il codice più adatto a un calcolo massicciamente distribuito, rispetto a un calcolo eseguito su un singolo supercomputer, dice Sutherland.
Perché il supercomputer di Bristol non potrebbe risolvere questo problema?
“Beh, qualsiasi computer *può* risolvere il problema, purché si sia disposti ad aspettare abbastanza a lungo, ma con circa mezzo milione di PC che lavorano sul problema in parallelo (ognuno con più core), siamo stati in grado di completare il calcolo molto più velocemente di quanto avremmo potuto fare usando la macchina di Bristol (o una qualsiasi delle macchine qui al MIT)”, dice Sutherland.
Utilizzare la rete Charity Engine è anche più efficiente dal punto di vista energetico. “Per la maggior parte, stiamo usando risorse computazionali che altrimenti andrebbero sprecate”, dice Sutherland. “Quando sei seduto al tuo computer a leggere una e-mail o a lavorare su un foglio di calcolo, stai usando solo una piccola frazione della risorsa CPU disponibile, e l’applicazione Charity Engine, che è basata sulla Berkeley Open Infrastructure for Network Computing (BOINC), sfrutta questo. Di conseguenza, l’impronta di carbonio di questo calcolo – relativa all’elettricità che i nostri calcoli hanno fatto usare ai PC della rete oltre a quella che avrebbero usato in ogni caso – è inferiore a quella che sarebbe stata se avessimo usato un supercomputer.”
Sutherland e Booker hanno eseguito i calcoli per diversi mesi, ma l’esecuzione finale di successo è stata completata in poche settimane. Quando è arrivata l’e-mail da Charity Engine, ha fornito la prima soluzione di x3+y3+z3=42:
42 = (-80538738812075974)^3 + 80435758145817515^3 + 12602123297335631^3
“Quando ho sentito la notizia, è stato sicuramente un momento da pugno di ferro”, dice Sutherland. “Con questi calcoli su larga scala si versa un sacco di tempo ed energia per ottimizzare l’implementazione, modificare i parametri, e poi testare e ritestare il codice per settimane e mesi, senza mai sapere davvero se tutto lo sforzo sta per essere ripagato, quindi è estremamente soddisfacente quando lo fa.”
Booker e Sutherland dicono che ci sono altri 10 numeri, da 101-1000, ancora da risolvere, con il prossimo numero 114.
Ma entrambi sono più interessati a un puzzle più semplice ma computazionalmente più impegnativo: se ci sono più risposte per la somma di tre cubi per 3.
“Ci sono quattro soluzioni molto facili che erano note al matematico Louis J. Mordell, che notoriamente scrisse nel 1953: “Non so nulla delle soluzioni intere di x3 + y3 + z3 = 3 oltre all’esistenza delle quattro triple (1, 1, 1), (4, 4, -5), (4, -5, 4), (-5, 4, 4); e deve essere davvero molto difficile scoprire qualcosa su qualsiasi altra soluzione”. Questa citazione ha motivato molto dell’interesse nel problema della somma di tre cubi, e il caso k=3 in particolare. Mentre si congettura che ci dovrebbero essere infinite soluzioni, nonostante più di 65 anni di ricerca conosciamo solo le soluzioni facili che erano già note a Mordell. Sarebbe molto emozionante trovare un’altra soluzione per k=3.”
.