venerdì 23 giugno 2017

Le grandi domande della vita: Alan Turing

Oggi, 23 giugno, ricorrono i 105 anni dalla nascita di uno dei più noti e importanti matematici del XX secolo. Ed è stato allora più che naturale dedicargli la puntata odierna de Le grandi domande della vita!
Girasoli
Della serie di Fibonacci ho scritto anche abbastanza di recente, ma oggi è il caso di ritornarci, visto che uno degli ultimi lavori di Alan Turing era dedicato alla serie numerica e alla sua presenza in natura, in particolare nella struttura delle piante(1): si potrebbero considerare gli sforzi di Turing come uno dei più importanti tentativi per rispondere al perché la sequenza si ripete in natura.
Il problema era noto come la fillotassi di Fibonacci e può essere definito come segue:
Le forme a spirale sulle teste dei girasoli sembrerebbero seguire la sequenza di Fibonacci, suggerendo la proposta di Turing che studiando i girasoli potremmo capire meglio come crescono le piante
Turing scrisse il suo interesse in ua lettra allo zoologo JZ Young:
Riguardo il punto (iii), Turing scrisse in un’altra lettera:
a nostra nuova macchina sta per arrivare lunedì. Spero di fare qualcosa riguardo alla “chimica embiologica”. In particolare penso di poter dare conto della comparsa dei numeri di Fibonacci in connessione con rappresentare l’aspetto dei numeri di Fibonacci in connessione con le pigne.(1)
Nel 2012 Jonathan Swinton, durante il Manchester Science Festival che si tiene ad ottobre, annunciò i risultati del grande esperimento sui girasoli di Turing:
I risultati sono stati pubblicati all’incirca un anno fa su Royal Society Open Science(2) e può essere considerato come uno dei più grandi risultati non solo della matematica applicata o una delle ennesime conferme della correttezza delle idee di Turing, ma anche uno dei più importanti successi della così detta citizen science.
Sfide di logica
Un importante personaggio che incrociò il suo cammino con Turing fu John von Neumann. I due si incontrarono per la prima volta nel 1935 a Cambridge quando von Neumann tenne lì un corso sulle funzioni quasi periodiche. L’incontro successivo avvenne a Princeton, dove Turing passò un periodo piuttosto lungo, da settembre 1936 a luglio 1938, a lavorare sotto l’ala di Alonzo Church.
Alla fine di questo periodo, che fu fruttuoso per il succesivo sviluppo delle macchine di Turing, von Neumann offrì a Turing un posto da assistente, ma il buon Alan declinò l’offerta preferendo ritornare a Cambridge.
Una volta rientrato a Cambridge, iniziò a frequentare le lezioni di Ludwig Wittgenstein sulle fondamenta della matematica. Queste lezioni erano particolarmente dinamiche grazie alle discussioni tra Wittgenstein e Turing, peraltro ricostruite grazie agli appunti tenuti dagli altri studenti del corso. E’ interessante osservare come i due, pur discutendo più o meno piacevolmente, si trovassero in disaccordo: mentre Turing difendeva il formalismo matematico, Wittgenstein proponeva una visione secondo cui la matematica non scopre nessuna verità assoluta, ma piuttosto la inventa.
Turing, nonostante le divergenze di visione, risultò influenzato da questo confronto con uno dei massimi logici e filosofi del XX secolo.
Giocare a scacchi col computer
Il famoso gioco dell’imitazione di Turing(3, 4) è uno dei principali ispiratori nelle ricerche sull’intelligenza artificiale. Ed è inevitabile che l’interesse verso questa branca abbia coinvolto anche gli scacchi, un gioco di strategia dove gli esseri umani si sfidano in una guerra tutto sommato pacifica.
Lo stesso Turing si è interessato alla ricerca di un programma in grado di giocare a scacchi(5): d’altra parte il matematico britannico riteneva che proprio la ricerca di un algoritmo in grado di sfidare a scacchi un essere umano sarebbe stato l’approccio ideale per affrontare la ricerca sull’intelligenza artificiale(3).
Turing, però, non fu il primo ad affrontare il problema, preceduto da Claude Shannon(6), che propose un algoritmo in grado di valutare le posizioni dei pezzi sulla scacchiera.
Questo è, inafatti, il primo passo nella costruzione di un software scacchistico, che successivamente dovrà scegliere quale sia la mossa migliore da opporre al suo avversario.
Purtroppo il gioco degli scacchi non è esattamente il modo migliore per valutare il successo di un algoritmo al test di Turing: per capirlo basta vedere come Deep Blue sconfisse il campione di scacchi Gary Kasparov una ventina di anni fa.
Il software sviluppato dall’IBM, infatti, affrontò il gioco utilizzando il così detto approccio del manuale: un database piuttosto vasto costituito soprattutto dalle aperture e dalle chiusure delle partite, in particolare quelle dei grandi campioni del gioco.
Kasparov, però, affrontava le sfide a scacchi cercando di non applicare mai il manuale, ma nella sua unica sconfitta commise un errore che era, invece, presente proprio nei manuali di scacchi. A quel punto per Deep Blue fu semplice condurre con successo la partita, avendola ben presente nei suoi database.
La si potrebbe considerare una sorta di vittoria di Pirro quella dei programmatori dell’IBM, che non a caso sbaraccarono immediatamente dichiarandosi vincitori di una sfida che al più poteva essere considerata pari e patta.
Si potrà, allora, considerare un software scacchistico capace di superare il test di Turing solo il giorno in cui vincerà una sfida senza la necessità di utilizzare alcun database, o nel momento in cui sarà ingrado di vincere una partita “inventando” una mossa non present nella memoria iniziale.
Macchine calcolatrici
Il primo articolo importante di Turing fu On computable numbers, with an application to the Entscheidungsproblem(7), che voleva affrontare una delle linee di ricerca per la matematica del XX secolo tracciate nel congresso di Parigi del 1900 da David Hilbert: dare alla matematica delle fondamenta solide.
E’ in questo articolo che Turing non solo definisce per la prima volta i numeri computabili(8), ma arriva alle stesse conclusioni di Kurt Godel riguardo l’insolubilità dell’Entscheidungsproblem, il problema della decisione, utilizzando per la dimostrazione quella che è oggi nota come la machina di Turing.
Il matematico britannico definisce nel suo articolo una serie di macchine, ognuna con compiti specifici. In particolare alla fine della serie di macchine una in particolare, la macchina $E$, dovrebbe essere in grado di elaborare e risolvere l’Entscheidungsproblem. Il punto è che una macchina di tipo E non può esistere, quindi l’Entscheidungsproblem non può essere risolto!
Importanti, come scritto poco sopra, sono la macchina di Turing e la macchina universale: la prima è una macchina calcolatrice ideale in grado di processare un nastro di grandezza infinita seguendo un numero ben definito di regole di base; la seconda è una macchina in grado di simulare il comportamento di qualsiasi tipo di macchina di Turing.
A questo punto direi che a tutti i lettori può sembrare legittimo porsi la domanda se sia possibile costruire una macchina di Turing a casa. Ebbene la stupefacente risposta è... si!
Gli ever green
Pur se è direttamente poco attinente con il tema della puntata, mi sembra comunque interessante nella puntata di oggi chiedersi se realmente matematici e fisici scrivono equazioni e robe del genere lì dove gli capita. Personalmente la risposta è che la tentazione a volte è piuttosto forte, ma riesco comunque a trattenermi, anche perché poi vetri e pareti qualcuno deve pur pulirle!
E visto che ci sono vi lascio anche una ghost track sul QI di Turing!
  1. Swinton J. (2004). Watching the Daisies Grow: Turing and Fibonacci Phyllotaxis, Alan Turing: Life and Legacy of a Great Thinker, 477-498. doi:10.1007/978-3-662-05642-4_20 (pdf)
  2. Swinton, J., Ochu, E., & MSI Turing’s Sunflower Consortium. (2016). Novel Fibonacci and non-Fibonacci structure in the sunflower: results of a citizen science experiment. Royal Society open science, 3(5), 160091. doi:10.1098/rsos.160091
  3. Turing, A. M. (1950). Computing machinery and intelligence. Mind, 59(236), 433-460. (html)
  4. [Il gioco] viene giocato da tre persone, un uomo ($A$), una donna ($B$) e l’interrogante ($C$), che può essere dell’uno o dell’altro sesso. L’interrogante viene chiuso in una stanza, separato dagli altri due. Scopo del gioco per l’interrogante è quello di determinare quale delle altre due persone sia l’uomo e quale la donna. Egli le conosce con le etichette $X$ e $Y$, e alla fine del gioco darà la soluzione “$X$ è $A$ e $Y$ è $B$” oppure “$X$ è $B$ e $Y$ è $A$”. L’interrogante può far domande di questo tipo ad $A$ e $B$: “Vuol dirmi $X$, per favore, la lunghezza dei propri capelli?” Ora suopponiamo che $X$ sia in effetti $A$, quindi $A$ deve rispondere. Scopo di $A$ nel gioco è quello di ingannare $C$ e far sì che fornisca un’identificazione errata. La sua risposta potrebbe perciò essere: “I miei capelli sono tagliati à la garçonne, e i più lunghi sono di circa 25 centimetri”. Le risposte, in modo che il tono di voce non possa aiutare l’interrogante, dovrebbero essere scritte, o meglio ancora, battute a macchina. La soluzione migliore sarebbe quella di avere una telescrivente che mettesse in comunicazione le due stanze. Oppure le domande e le risposte potrebbero essere ripetute da un intermediario. Scopo del gioco, per il terzo giocatore ($B$), è quello di aiutare l’interrogante. La migliore strategia per lei è probabilmente quella di dare risposte veritiere. Essa peò anche aggiungere alle sue risposte frasi come “Sono io la donna, non dargli ascolto!”, ma ciò non approderà a nulla dato che anche l’uomo può fare affermazioni analoghe. Poniamo ora la domanda: “Che cosa accadrà se una macchina prenderà il posto di $A$ nel gioco?” L’interrogante darà una risposta errata altrettanto spesso di quando il gioco viene giocato tra un uomo e una donna? Queste domande sostituiscono quella originale: “Le macchine possono pensare?”
  5. Turing, A. M. (1953). Chess. Faster Than Thought (pp. 286-195). London, Pitman.
  6. Shannon, Claude E. “Programming a computer for playing chess.” In Computer chess compendium, pp. 2-13. Springer New York, 1988. doi:10.1007/978-1-4757-1968-0_1 (txt - download)
  7. Turing, A.M. (1937). On Computable Numbers, with an Application to the Entscheidungsproblem, Proceedings of the London Mathematical Society, s2-42 (1) 265. doi:10.1112/plms/s2-42.1.230 (Turing Digital Archive)
  8. (...) possono essere descritti brevemente come i numeri reali le cui espressioni decimali sono calcolabili in modi finiti o più semplicemente un numero è computabile se i suoi decimali possono essere scritti da una macchina

Nessun commento:

Posta un commento