Turing Legacy Bologna Feb 2020
Total Page:16
File Type:pdf, Size:1020Kb
04/03/20 Alan Turing: l’intelligenza come attività sociale Teresa Numerico [email protected] 20 febbraio 2020 – Università di Bologna 1 1 Introduzione 2 2 1 04/03/20 Alan Turing } Nasce nel 1912 a Londra } Nel 1936 ottiene il famoso risultato di logica noto come tesi di Church-Turing mentre si trova al King’s College di Cambridge } Nel biennio autunno 1936-autunno 1938 studia a Princeton in US con Alonzo Church. Lì incontra tra gli altri von Neumann che si interessa al suo lavoro e gli chiede di restare in America come suo assistente, ma Turing si rifiuta } Durante gli anni della II Guerra Mondiale si occupa della decodifica di Enigma, la macchina elettromeccanica dei Tedeschi per trasmettere messaggi in codice } Dal 1945 lavora al NPL al progetto per costruire un calcolatore a programma memorizzato, l’ACE } Tra il 1947 e il ’48 trascorre un anno sabbatico a Cambridge } Dal ’48 al ’54 si trasferisce a Manchester e si occupa del Mark I un calcolatore progettato da F.Williams } Muore suicida nel 1954 a Manchester 3 Perché la Macchina di Turing è importante? } Perché negli anni ’40 la macchina costituirà un modello teorico per la costruzione dei calcolatori di nuova generazione a programma memorizzato e general-purpose } Perché fornisce un modello generale e intuitivo della nozione di calcolabilità, che non è ancora stato confutato } Perché manda definitivamente in crisi il modello di conoscenza basato esclusivamente sulla logica matematica, pur essendone la sua espressione finale 4 2 04/03/20 Una nozione di logica: la decidibilità } Un sistema formale è decidibile se esiste un metodo che in un numero finito di passi permette di riconoscere, per ogni formula espressa linguaggio nel sistema, se appartiene all’insieme dei teoremi del sistema o no. Un metodo, quindi, che stabilisca in linea di principio se esiste una dimostrazione per quella formula o no. 5 Un nuovo modo di porre il problema della decisione } Dopo i risultati di Gödel, restava da risolvere il problema della decisione, che nella formulazione di Turing era posto in questi termini: } è possibile avere un metodo meccanico che in un numero finito di passi permetta di riconoscere se una formula espressa nel linguaggio di un sistema formale appartiene o non appartiene all’insieme dei teoremi del sistema? 6 3 04/03/20 MT universale Turing (1939) definì così il risultato teorico: “Si affermò che "una funzione è effettivamente calcolabile se i suoi valori possono essere trovati attraverso un processo puramente meccanico". Possiamo prendere alla lettera questa asserzione, intendendo per processo puramente meccanico, un processo che può essere portato a termine da una macchina. E' possibile dare una descrizione matematica delle strutture di queste macchine.” 7 Che vuol dire metodo meccanico? } Secondo Turing un metodo meccanico è una procedura eseguita da un dispositivo meccanico, cioè da una macchina } Per dimostrare che questo metodo meccanico non esisteva, Turing doveva inventare la macchina più generale possibile e mostrare che nemmeno questa è adatta allo scopo 8 4 04/03/20 Ma che cos’è una macchina? } E’ difficile dare una definizione precisa di macchina. Per Turing è: } Lo strumento più generale che si può usare per effettuare calcoli Ma } I calcoli sono solo manipolazione di simboli Allora } La macchina è lo strumento più generale e più elementare in grado di manipolare simboli 9 A cosa serviva la macchina? } La Macchina di Turing serviva a proporre un modello formale dell’attività di un essere umano che esegue un calcolo di tipo algoritmico: } un dispositivo astratto in grado di emulare la funzione del calcolare, purché essa sia definita attraverso una successione di operazioni elementari. } L’attività di calcolo è una generica attività di manipolazione di simboli e non semplicemente di effettuare operazioni aritmetiche 10 5 04/03/20 La Macchina di Turing } Durante la primavera del 1936, Turing inventò la macchina più generale mai concepita, e probabilmente mai concepibile. } Il dispositivo era dotato solo di: } un nastro bidimensionale diviso in quadrati di lunghezza finita ma illimitata } un dispositivo per la lettura, scrittura, eliminazione di simboli e spostamento sul nastro } una tavola di istruzioni comprensibile alla macchina che indicava tutte le attività da svolgere senza ambiguità e tutti gli stati in cui macchina poteva trovarsi 11 Lo schema di una MT | | Dispositivo di lettura/scrittura/cancellazione spostamento sul nastro secondo la tavola delle istruzioni 12 6 04/03/20 Perché T. ha bisogno della macchina per dimostrare l’indecidibilità? 1. Turing “dimostrò” che, se un compito era eseguibile da una macchina, allora era “simulabile” esisteva un particolare tipo di Macchina di Turing, che lo poteva simulare 2. Turing dimostrò che esistono calcoli che non possono essere effettuati, manipolazioni di simboli che non vanno a buon fine, procedure che non hanno mai termine anche per una MT 3. Il problema della decisione è uno dei calcoli che non è possibile effettuare con una MT 13 Calcolabilità umana e meccanica } L’identificazione di computabilità effettiva e T-calcolabilità è una tesi non un teorema, e doveva essere argomentata dal momento che non poteva essere dimostrata } I limiti ai quali la macchina era sottoposta servivano per metterla in condizione di emulare l’attività umana di calcolo } La macchina poteva così sostituire un “calcolatore” umano in qualunque sua operazione 14 7 04/03/20 La MT universale come macchina simulatrice } La MT emula il comportamento delle altre macchine attraverso una tavola di istruzioni, inserita nella macchina come se fossero i suoi dati } La MT è una macchina general-purpose, capace di svolgere qualsiasi compito } La MT è perciò una macchina virtuale } La MT è l’insieme di struttura e tavola di istruzioni: Hardware + Software 18 La calcolabilità e l’agente onnisciente isolato } L’emulazione dell’attività di calcolo umana realizzata attraverso una macchina presuppone un modello, un certo approccio alla conoscenza: } Le operazioni della computazione si svolgono senza bisogno dell’apporto dell’ambiente o di altri soggetti esterni al calcolo } Non ci sono sorprese nell’esecuzione delle operazioni: data una tavola di istruzioni e una serie di stati della macchina il risultato è costante e immutabile } Tutta la conoscenza necessaria al risultato è presente nell’agente che esegue le operazioni in modo non ambiguo ed è priva di incoerenze 19 8 04/03/20 L’accelerazione della II Guerra Mondiale } La necessità di calcoli molto complessi era particolarmente sentita in vari campi: } La ricerca atomica: calcoli per misurare le caratteristiche esatte dell’esplosione e della posizione del materiale intorno alla fissione } La ricerca balistica: equazioni differenziali non lineari per la misurazione delle tavole di lancio delle armi a lunga gittata. } La crittografia 20 Von Neumann e l’influenza di Turing } Von Neumann aveva incontrato sicuramente Turing a Princeton, restando colpito dal suo valore } Era al corrente del modello logico di calcolo proposto con la macchina universale } Applica l’idea alla costruzione di un calcolatore reale: } Nella memoria (simile al nastro bidimensionale) risiedevano dati e programmi } C’era un unico controllo logico che, sulla base della tavola di istruzioni (programma), gestiva in modo centralizzato tutte le operazioni in successione } Esistevano organi di input e di output (che nella MTU erano porzioni del nastro) 21 9 04/03/20 Sintesi } L’intelligenza e l’importanza dell’esternalizzazione della memoria } La doppia natura del linguaggio nella prima era dell’intelligenza artificiale e il ruolo dell’errore nell’apprendimento } Il test di Turing o l’intelligenza come fatto sociale } Cognitive vs data-driven machine learning (la modernità di Turing) 22 22 Il ruolo della memoria secondo Alan Turing 23 10 04/03/20 I calcolatori umani e la loro controparte meccanica /macchina di Turing/1 } The behaviour of the computer at any moment is determined by the symbols which he is observing, and his “state of mind” at that moment. […] } Let us imagine the operations performed by the computer to be split up into “simple operations” which are so elementary that it is not easy to imagine them further divided. } Every such operation consists of some change of the physical system consisting of the computer and his tape. […] } We may construct a machine to do the work of this computer. To each “state of mind” of the computer corresponds an “m-configuration” o the machine Turing 1936/2004, pp. 75-77 24 I calcolatori umani e la loro controparte meccanica /macchina di Turing 2 } We avoid introducing the "state of mind" by considering a more physical and definite counterpart of it. } It is always possible for the computer to break off from his work, to go away and forget all about it, and later come back and go on with it. } If he does this he must leave a note of instructions (written in some standard form) explaining how the work is to be continued. This note is the counterpart of the "state of mind". } We will suppose that the computer works in such a desultory manner that he never does more than one step at a sitting. The note of instructions must enable him to carry out one step and write the next note. } Thus the state of progress of the computation at any stage is completely determined by the note of instructions and the symbols on the tape. Turing 1936/2004, 79 25 25 11 04/03/20 La teoria di Turing sulla memoria per l’intelligenza } The machine would incorporate a memory. This does not need very much explanation. It would simply be a list of all the statements that had been made to it or by it, and all the moves it had made ant the cards it had played in its games. This would be listed in chronological order.