lorenzo anastasio...alan turing – lorenzo anastasio 7 a lavorare presso il national physical...

36
Alan Turing 3^ Informatici B Anno scolastico 2017/2018 Lorenzo Anastasio Relatrice: Chiara Ajelli

Upload: others

Post on 15-Feb-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing 3^ Informatici B

Anno scolastico 2017/2018

Lorenzo Anastasio

Relatrice: Chiara Ajelli

Page 2: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

2

Indice

● Capitolo 1: La vita di Alan Turing ……………………………………………………….… 4

● Capitolo 2: La crittoanalisi …..……………………………………………….………..…… 8

● Capitolo 2.1: La Bomba …………………………………………………………………… 11

● Capitolo 2.2: La macchina Enigma …………………………………………………...….... 13

● Capitolo 3: La macchina di Turing ………………………………………………..…...….. 16

● Capitolo 3.1: Alonzo Church e il lamba calcolo …….…………………………………...... 19

● Capitolo 3.2: La tesi di Church-Turing …….……………………………………………… 21

● Capitolo 4: Il test di Turing …………….………………………...……………………....... 22

● Capitolo 5: L’intelligenza artificiale ……….………………………………...……………. 25

● Capitolo 6: I primi calcolatori …………………………………...….…………………...… 29

● Capitolo 7: Onoreficenze …………………………..……………………………………… 33

● Sitografia …………………………………………...………………………..…………….. 36

Page 3: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

3

Introduzione

L'argomento della mia tesina è Alan Mathison Turing, un matematico e crittografo inglese.

Le ragioni per le quali tratto questo personaggio sono due: la prima è che Turing è

considerato uno dei padri dell’informatica e la seconda è che la sua vita, le sue invenzioni e

l'epoca in cui ha vissuto lo ricollegano a molte delle mie materie di studio.

Nel primo capitolo approfondirò gli aspetti della vita di Turing e farò un accenno alle sue

invenzioni e alle sue scoperte.

Nel secondo capitolo, tratterò la crittoanalisi e introdurrò due sottocapitoli: il primo, la

Bomba, una macchina calcolatrice usata nel controspionaggio, il secondo, la macchina

Enigma, che rappresenta la controparte della Bomba.

Nel terzo capitolo, parlerò della macchina di Turing, un modello teorico di un calcolatore. A

questo capitolo sono collegati due sottocapitoli: nel primo descrivo brevemente la vita di

Alonzo Church e una sua scoperta, il Lambda calcolo, nel secondo, la tesi di Church-Turing.

Il quarto capitolo spiega cos'è e a cosa serve il test di Turing, il capitolo successivo, il

quinto, tratta dell'intelligenza artificiale e della continua ricerca nell’invenzione di una

macchina che sappia pensare.

Il sesto capitolo descrive i primi calcolatori ed infine nel settimo ci sono le onorificenze, che

ha ricevuto in vita e dopo la sua morte.

Page 4: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

4

Capitolo I

Alan Turing

Page 5: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

5

La vita

lan Mathison Turing, nacque il 23 giugno 1912 a Londra, figlio di Julius

Mathison Turing e Ethel Stoney. Scaduta la licenza biennale del padre, alto

funzionario dell'Indian Civil Service, Alan e il fratello maggiore John,

rimangono in Inghilterra, per evitare il caldo umido indiano e per usufruire di una migliore

educazione, mentre i genitori vanno in India. I due bambini vivono con la famiglia del

colonnello Ward, vicino a Hastings. A scuola non aveva un gran successo, data la sua

tendenza ad approfondire esclusivamente cose che lo interessassero sul serio, come la

chimica e la matematica. Solo la grandissima amicizia con Christopher Morcom, che infine,

si rivelò una storia d’amore, gli permise di iniziare la sua carriera universitaria: l'amico,

però, morì di tubercolosi due anni dopo il loro incontro, nel 1930. Ma il segno che lasciò

sull'animo dell'amico fu profondo e significativo, inducendo Turing a trovare dentro di sé

la determinazione necessaria per continuare gli studi e la ricerca. Dobbiamo quindi a

Morcom moltissimo, se consideriamo che grazie al suo sostegno morale e al suo

incitamento, indusse una grande mente come Turing a sviluppare le sue immense

potenzialità.

Interessato soltanto alla matematica e alla scienza, iniziò i suoi studi al King's College di

Cambridge, nel 1931, dove la sua carriera scolastica cambia in positivo e si laureò nel 1934

con il massimo dei voti.

Al contrario dello stereotipo del genio trasandato, Alan curava la propria forma fisica ed era

molto appassionato per la bicicletta e la corsa.

In quegli anni, Turing era venuto a conoscenza dell'Entscheidungsproblem, il cosiddetto

A

Page 6: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

6

"problema della decidibilità", posto da David Hilbert,

matematico tedesco, vissuto in quell’epoca; incuriosito dal

dilemma, Alan ci riflette sopra. Poco dopo, si trasferì alla

Princeton University, in America, dove il grande matematico,

nel 1936 pubblicò l’articolo "On computable Number, with an

application to the Entscheidungs problem" in cui descrive quella che verrà poi definita la

Macchina di Turing, la quale, in altri termini, non rappresenta altro che un primitivo

"prototipo" del moderno computer.

Alan conobbe John von Neumann all'università di Princeton e dopo il dottorato,

quest’ultimo gli propose un posto come

suo assistente. Il matematico rifiutò

l'offerta e fece ritorno in Inghilterra.

Nel 1938, Turing viene invitato a

lavorare a Bletchey Park, il principale

centro di crittoanalisi del Regno Unito, con l’obiettivo di decrittare i messaggi militari

nazisti .

Alan sviluppando ricerche già svolte da Marian Rejewski con la macchina Bomba,

progettata in Polonia nel 1932. Basandosi su tali informazioni, Turing realizzò una nuova

versione molto più efficace, della macchina di Rejewski, la Bomba inglese, sviluppata nel

1932, un sistema in grado di decodificare i codici nazisti creati mediante la macchina

Enigma, considerata fino ad allora indecifrabile.

Il suo lavoro si rivela decisivo per il controspionaggio britannico, è evidente come l’attività

di Turing abbia contribuito ad abbreviare la durata del conflitto mondiale.

Dopo questo contributo fondamentale allo sforzo bellico, finita la guerra, Alan nel 1945, va

Page 7: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

7

a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing

Engine (ACE). Se la Macchina di Turing era un'astrazione teorica, questo è il

primo computer elettronico sviluppato nel Regno Unito nel 1946.

Successivamente, scrisse un articolo dal titolo "Intelligent Machinery", pubblicato poi nel

1969. Fu questa una delle prime volte in cui sia stato presentato il concetto di "intelligenza

artificiale". Alan, infatti, era dell'idea che si potessero creare macchine che fossero capaci di

simulare i processi del cervello umano.

Nel 1947, il professor Turing, torna a Cambridge e sposta i suoi interessi verso la neurologia

e la fisiologia. Poco dopo, nel 1948, Alan lasciò il National Physical Laboratory e si trasferì

alla University of Manchester dove lavorò alla realizzazione del Manchester Automatic

Digital Machine (MADAM), con il sogno non tanto segreto di poter vedere, a lungo

termine, la chimera dell'intelligenza artificiale finalmente realizzata. Nel 1950, scrisse

l’articolo "Computing machinery and intelligence", in cui descriveva quello che attualmente

è conosciuto come il test di Turing.

Nel 1952, Turing viene arrestato, con l'accusa di omosessualità, allora punita dalla legge.

Per evitare la prigione, il matematico accetta la castrazione chimica, sottoponendosi a una

lunga somministrazione di estrogeni che lo debilitano nel fisico e nella psiche. Il 7 giugno

1954, Alan Turing, si suicidò, all’età di 41 anni, a Wilmslow in Inghilterra, dopo aver

mangiato una mela, intrisa con cianuro di potassio.

L'attività di Alan Turing nel gruppo di Bletchley Park fu coperta dal segreto militare, tale

"silenzio" impedì che Turing e altri suoi colleghi ricevessero i riconoscimenti che gli

sarebbero stati ampiamente e pubblicamente riconosciuti. Dati e informazioni su queste

attività cominciarono a essere pubblicate, dopo lo scioglimento del segreto militare

dei servizi segreti inglesi, solo nel 1974, quando Turing era già morto da tempo.

Page 8: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

8

Capitolo II

La crittologia

Page 9: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

9

La crittologia

Il termine crittologia deriva dal greco “kryptòs” nascosto e “logos” discorso, è la disciplina

che si occupa delle scritture nascoste, nel suo duplice significato: da un lato c’è la

crittografia, che comprende l'ideazione di metodi sempre più sicuri per occultare il reale

significato di determinati messaggi, dall'altro c’è la crittoanalisi, che riguarda la

decifrazione di testi occultati senza conoscerne a priori il metodo usato.

La crittologia è nata come un ramo della matematica e dell’informatica.

Un sistema crittografico è un sistema in grado di cifrare e decifrare un messaggio attraverso

l’uso di un algoritmo (metodo di calcolo) e di una chiave (una stringa segreta alfanumerica).

Il messaggio che dovrà essere cifrato viene chiamato testo in chiaro mentre il risultato

dell’algoritmo crittografico testo cifrato.

Ci sono moltissime cose che sono entrate a far parte della nostra vita quotidiana per la

protezione delle informazioni digitali. Dalle smart card, ai cellulari, alle trasmissioni via

internet, alle tv satellitari, etc.

Con crittoanalisi ci si riferisce ha metodi per violare un cifrario, ma anche ad ogni tentativo

di eludere la sicurezza di algoritmi crittografici e protocolli crittografici.

Anche se il fine è sempre lo stesso, i metodi e le tecniche di crittoanalisi sono drasticamente

cambiate durante la storia della crittografia, adattandosi al continuo aumentare

dell'efficienza della crittografia.

Una delle prime tracce storiche di uso di queste

tecniche risale a Gaio Giulio Cesare, che si narra

utilizzasse un cifrario, detto Cifrario di Cesare,

Page 10: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

10

il quale consistente nel sostituire ad ogni lettera la terza lettera che la segue nell'alfabeto.

Ben presto vennero scoperti dei metodi di soluzione, uno dei primi fu l'analisi delle

frequenze, un sistema che studia le frequenze di utlizzo delle lettere o gruppi di lettere in un

testo cifrato, ciò, segnò la nascita della crittoanalisi.

Nel tempo ci furono continui miglioramenti nel campo della crittologia e nel 1880, il

crittografo olandese Kerckhoffs, enunciò il principio di Kerckhoffs, fondamentale nella

crittologia moderna, esso afferma che: “La sicurezza di un crittosistema non deve dipendere

dalla segretezza dell’algoritmo usato, ma solo dalla segretezza della chiave”.

Basti pensare che ormai quasi tutti gli algoritmi crittografici moderni, utilizzati nelle più

disparate tecnologie, vengono rilasciati con i codici sorgenti.

In seguito ci fu il periodo d’oro della crittografia, che è senza alcun dubbio quello della

seconda guerra mondiale, tra i matematici di quegli anni c’era Alan Turing, che, con il suo

spiccato intervento, rese quegli anni di guerra, molto animati nell’ambito della crittologia.

In quel periodo, l'analisi delle frequenze si basava molto sulla conoscenza linguistica, dato

che si appoggiava sulla statistica, ma non appena i cifrari diventarono più complessi, la

matematica divenne più importante della crittoanalisi.

Nel corso della storia, le due parti contrapposte hanno affinato sempre più le loro armi,

dando spesse volte l'impressione che una delle due fosse destinata a prevalere sull'altra.

Oggigiorno, la guerra si è spostata nella teoria dei numeri, la branca più astratta della

matematica, dimostrando che perfino la scienza più astratta può avere decisivi effetti sulla

vita di tutti i giorni. Gli ultimi sistemi prodotti della crittografia sembrano a tutti gli effetti

inattaccabili, ma la storia insegna che è forse troppo presto per giudicare, benché gli odierni

risultati siano basati su metodi sempre più precisi e controllati e non sull'intuito personale

del crittologo.

Page 11: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

11

Capitolo II.I: La bomba

Marian Adam Rejewski nacque il 16 agosto 1905 e morì il 13

febbraio 1980 in Polonia, fu un matematico e crittografo polacco.

Tutto ebbe inizio quando studiava ancora all’università, in quel

periodo, Rejewski seguì un corso segreto di crittografia tenuto

dall'Ufficio Cifra polacco.

Il controspionaggio polacco aveva già ottenuto dei piccoli successi nella decifrazione dei

messaggi criptati con la macchina Enigma e nel 1932, incaricò Rejewski di studiare il

problema. Poche settimane dopo, il crittografo aveva già dedotto lo schema di

funzionamento interno della macchina tedesca. Ed assieme a due colleghi matematici,

Rejewski sviluppò una tecnica per la decifrazione dei

messaggi, con la quale realizzò la Bomba; il progetto

della macchina fu ultimato nel 1938.

Basandosi sulla macchina Enigma, venne costruita la

bomba crittologica, un rudimentale calcolatore basato sul metodo “forza bruta”.

In pratica questo metodo, è un algoritmo di risoluzione di un problema, dato che consiste nel

verificare tutte le soluzioni teoricamente possibili, fino a quando si trova quella

effettivamente corretta. La Bomba era una macchina composta da molti moduli, ciascun

modulo consisteva in uno scaffale di ferro. Ogni modulo metteva in movimento centinaia di

rotori, cioè, meccanismi rotanti per la generazione di energia, che eseguivano gradualmente

la decodifica dei messaggi.

Con questo mastodontico apparato dal dicembre 1932 venne decriptato un buon numero di

Page 12: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

12

messaggi cifrati tedeschi; nel 1937 fu stimata al 75% la percentuale di messaggi decifrati

dall'Ufficio Cifra polacco. Tra il 1938 e il 1939 i tedeschi cambiarono le regole di cifratura,

aumentando il numero dei rotori della macchina Enigma, così che il metodo dei polacchi

perse gran parte della sua efficacia. In quel periodo la decrittazione di messaggi Enigma da

parte dell'Ufficio Cifra polacco divenne sporadica. In effetti, nel 1940 furono decrittati con

l'aiuto della "Bomba" una minima parte dei messaggi nazisti.

Con una mossa previdente, qualche mese prima dell’invasione della Polonia da parte della

Germania, i crittoanalisti polacchi avevano contattato i propri colleghi francesi e inglesi,

offrendo loro le proprie ricerche. Increduli, questi ultimi appresero dei progressi nella

decifrazione dei codici nazisti: fu così che la frontiera della ricerca bellica sui codici si

spostò dalla Polonia alla Gran Bretagna.

In questo modo la Bomba conobbe una nuova fase di sviluppo, grazie al gruppo di

matematici di Bletchley Park e al contributo fondamentale di Alan Turing, realizzarono una

nuova versione della Bomba, però molto più efficace, della macchina di Rejewski. La

Bomba inglese, che venne sviluppata nel 1939, con un nuovo sistema in grado di

decodificare i codici nazisti, con la quale si riusciva a rendere leggibili i messaggi

indecifrabili in sessanta minuti.

Page 13: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

13

Capitolo II.II: La macchina Enigma

Arthur Scherbius nacque il 20 ottobre 1878 in Germania, fu

un ingegnere e tuttora viene ricordato per aver brevettato

una macchina elettromeccanica per cifrare i messaggi, che in

seguito venne chiamata Enigma. La macchina cifrante Enigma,

venne sviluppata nel 1918, era inizialmente destinata

al mercato commerciale. Sebbene i crittogrammi prodotti fossero

effettivamente indecifrabili per l'epoca, molti commercianti e uomini d'affari pensarono che

la possibilità di avere messaggi sicuri, non giustificasse l'alto costo della macchina.

Dato il fallimento della macchina, Scherbius adattó il congegno all’utilizzo dell’esercito e

della marina militare tedesca, durante il periodo nazista e della seconda guerra mondiale.

Scherbius non ebbe modo di seguire le interessanti vicende legate agli sforzi di Marian

Rejewski e di Alan Turing per scoprire i segreti della sua macchina, poiché morì in un

incidente il 13 maggio 1929, in Germania. La facilità d'uso e la presunta indecifrabilità

furono le maggiori ragioni del suo ampio utilizzo.

Nonostante fosse stata modificata e potenziata nell'arco del suo periodo di utilizzo, un

nutrito gruppo di esperti riuscì a violarla dopo essersi impegnato a lungo con questo intento.

I primi a decifrarla nel 1932 furono un gruppo di matematici polacchi, tra cui Marian

Rejewski. Il loro lavoro ha permesso di ottenere ulteriori informazioni sulla sempre più

aggiornata macchina dei tedeschi, Enigma, prima in Polonia e, dopo lo scoppio della guerra,

anche in Francia e Gran Bretagna. La decrittazione dei messaggi cifrati con Enigma fornì

per quasi tutta la seconda guerra mondiale importantissime informazioni alle forze alleate.

Page 14: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

14

La macchina Enigma aveva l'aspetto di una macchina per scrivere con due tastiere: la prima,

inferiore, e la seconda nella quale i tasti erano sostituiti da lettere luminose che si

accendevano ogni qualvolta venisse premuto un tasto sulla tastiera effettiva; la sequenza

delle lettere che si illuminavano dava il messaggio cifrato o quello in chiaro, se si batteva il

testo cifrato. Il suo funzionamento si basava su tre dischi cablati, detti rotori, avevano 26

contatti per lato, uno per ogni lettera dell'alfabeto tedesco. Il primo disco ruotava di una

lettera a ogni pressione di tasto, il secondo ruotava di una lettera ogni volta che il primo

compiva un giro e il terzo ruotava di una lettera quando il secondo finiva un giro. La

tensione applicata al contatto della lettera premuta

dall'operatore sulla tastiera veniva applicata sul

contatto corrispondente del primo rotore e usciva

dallo stesso rotore attraverso un altro contatto,

diretta ora verso una delle lampadine di Enigma

attraverso il deviatore del tasto

corrispondente. Grazie al riflettore la macchina

poteva così funzionare anche come decodificatore,

senza intervento specifico alcuno, cioè era

necessario, prima di cominciare la decodifica, portare solo rotori e spinotti nella

configurazione giornaliera prevista dai cifrari. Questa caratteristica comportava come

conseguenza la "reciprocità" di codifica: se, in un determinato assetto dei rotori e degli

spinotti, la lettera B veniva, ad esempio, cifrata con una F, nel medesimo assetto, premendo

il tasto F si codificava quest'ultima con B. Inoltre una lettera non poteva mai venire

codificata in sé stessa. Le disposizioni operative per le unità dotate della macchina Enigma

prescrivevano che ogni giorno, per motivi di sicurezza, venisse modificato l'assetto della

Page 15: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

15

macchina disponendo collegamenti differenti per gli spinotti del pannello, posizionamenti

reciproci diversi per i tre rotori, assetto iniziale diverso (lettera da cui partire per la prima

codifica) di ciascuno di essi. Le informazioni relative erano contenute in un cifrario-

calendario distribuito a ogni unità dotata di macchina Enigma.

Page 16: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

16

Capitolo III

La macchina di Turing

Page 17: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

17

La macchina di Turing

La cosiddetta macchina di Turing, ideata nel 1936, anche se come sistema astratto,

contribuì a sviluppare i presupposti matematici degli attuali computer. Il progetto di Turing

è solo un modello teorico, poiché prevede un tempo e uno spazio, cioè il nastro, infiniti.

Secondo lui, sarebbe stato possibile, inventare una macchina, che potesse essere utilizzata,

per qualsiasi sequenza computabile.

Una macchina di Turing è composta da un insieme di regole che definiscono il

comportamento della macchina su un nastro di input-output (lettura e scrittura). Il nastro di

lunghezza infinita, è bidirezionale, quindi può scorrere verso destra o verso sinistra, di una

casella alla volta, è diviso in quadratini dette celle. Ogni cella contiene un simbolo,

appartenente a un alfabeto predefinito oppure è vuota. Una MdT cioè Macchina di Turing,

ha una testina, che si sposta lungo il nastro, leggendo, scrivendo oppure cancellando simboli

nelle celle del nastro.

Page 18: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

18

La macchina analizza il nastro, una cella alla volta, iniziando dalla cella che contiene il

simbolo più a sinistra nel nastro.

Il congegno, trovandosi di fronte a determinati simboli scritti, in conformità di precise

istruzioni, esegue il relativo calcolo e si porta in una nuova posizione finale, esibendo il

risultato del calcolo.

Tutto ciò, è stato possibile, grazie all'intuizione geniale di Alan, che fu quella di "spezzare"

l'istruzione da fornire alla macchina, in una serie di altre semplici istruzioni, nella

convinzione che si potesse sviluppare un algoritmo per ogni problema: un processo non

dissimile da quello affrontato dai programmatori odierni.

La macchina di Turing permette di rappresentare perfettamente la complessità di ogni

calcolo o programma.

La novità di questa teoria, è che si dimostrava che una macchina poteva essere codificata

come un numero e viceversa, introducendo il concetto di ciò che oggi

chiameremmo software.

Page 19: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

19

Capitolo III.I: Alonzo Church e il lamba calcolo

Alonzo Church nacque a Washington il 14 giugno 1903 e

morì a Hudson, Ohio, l’11 agosto 1995. Nel corso della sua

vita fu professore di matematica e filosofia in diverse

scuole, fece molte scoperte, nel campo della matematica

logica, nella teoria della ricorsione, nell'informatica teorica.

Oggi viene ricordato per il lambda calcolo, presentato per

la prima volta nel 1932 come frammento di un ampio

sistema per la fondazione della matematica, il calcolo nelle sue

diverse formulazioni fornisce un’analisi del concetto di funzione,

intesa non come teoria degli insiemi, ma come regola, per

trasformare espressioni in altre espressioni, mediante un processo di

riscrittura. In questa veste esso ha oggi un grande interesse tanto

nella logica matematica che nell’informatica. Nell’informatica

fornisce un influenza ampia e profonda per molti aspetti, per la base

della formulazione e lo studio di linguaggi di programmazione.

Possiamo affermare che il lambda calcolo sia stato il primo linguaggio di programmazione.

Esso è un calcolo molto semplice, potente ed elegante, che è diventato modello formale e

ispiratore della famiglia dei linguaggi per computer, conosciuti in generale come linguaggi

di programmazione funzionale.

La programmazione funzionale, è uno stile fondamentale di programmazione, in cui il flusso

di esecuzione del programma, assume la forma di una serie di valutazioni di funzioni

Page 20: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

20

matematiche. Il punto di forza principale di questo paradigma è la mancanza di effetti

collaterali delle funzioni, il che comporta una più facile verifica della correttezza e della

mancanza di bug del programma e la possibilità di una maggiore ottimizzazione dello stesso.

Il primo linguaggio funzionale, è il LISP (List Processor), è stato concepito dal suo ideatore

John McCarthy nel 1958, ispirandosi alla lambda notazione di Church.

Il LISP è un linguaggio standard, poi ci sono i vari dialetti, creati per aggiungergli funzioni o

per adattarlo ad un uso particolare. Il LISP ed i suoi dialetti sono ampiamente utilizzati in

programmi per l’intelligenza artificiale, lo sviluppo del Web, la finanza, l’insegnamento

dell’informatica e molte altre applicazioni.

Page 21: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

21

Capitolo III.II: La tesi di Church-Turing

Alonzo Church, nel 1936 enunciò la proposizione, oggi chiamata tesi di Church, la quale

afferma che ogni funzione effettivamente calcolabile è ricorsiva generale. Essa ha

formulazioni equivalenti, nel concetto di Turing, infatti, per puro caso, Alan pubblicò un

articolo, qualche mese dopo quello di Church, dove discutevano entrambi dello stesso

problema. Non è possibile fornire una definizione precisa del concetto di algoritmo; pertanto

si parla di tesi, che, data la coincidenza dello stesso periodo e degli stessi argomenti trattati,

prese il nome di tesi di Church-Turing. Per comprendere i testi di Turing e le affermazioni

logiche in essi contenute, è essenziale tenere a mente che quando usava le parole

"computer", "calcolabile" e "computazione", li impiegava non nel loro senso moderno come

pertinente alle macchine, ma per quanto riguarda i calcolatori umani. Fino all'avvento delle

macchine informatiche automatiche, questa era l'occupazione di molte migliaia di persone

negli affari, nei governi e negli istituti di ricerca. Questi lavoratori umani, erano in realtà

chiamati computer . Queste teorie sono fondate sulla risoluzione standard di un problema,

quindi attraverso un algoritmo, ossia tramite una procedura che esegue meccanicamente un

numero finito di passi arrivando alla soluzione. Se una funzione ha un algoritmo che la

calcola in un tempo finito, è detta calcolabile.

Questa teoria, spiega che, qualsiasi funzione calcolabile mediante un algoritmo (nozione

intuitiva), è calcolabile da una macchina di Turing (nozione precisa), invece, se non esiste

una MdT per calcolare la funzione, allora non esiste alcun algoritmo.

È stato dimostrato, che esistono funzioni non Turing calcolabili, in base alla tesi di Church-

Turing, si conclude, che esistono funzioni non algoritmicamente calcolabili.

Page 22: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

22

Capitolo IV

Il test di Turing

Page 23: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

23

Il test di Turing

Nel 1950, Alan pubblica l'articolo "Computing machinery and intelligence", in cui si chiede

se le macchine possano pensare. Una domanda a cui è difficile dare una risposta, se non si

è prima definito il significato dei termini “macchina” e “pensare”. È questo il motivo che

portò Turing ad ideare un esperimento concettuale, per stabilire se una macchina sia, o

meno, in grado di pensare. Alan risponde con un test, che getta le basi per lo sviluppo

dell'intelligenza artificiale.

Questa è una sorta di esperimento mentale, dato che nel periodo in cui Turing scriveva, non

vi erano ancora i mezzi per attuarlo.

Parte da un gioco, chiamato “gioco

dell'imitazione”, che si svolge tra persone tra

loro estranee: un uomo (A), una donna (B),

un soggetto che interroga (C). C viene

separato da A e B e comunica con loro

attraverso una telescrivente. Per C lo scopo è capire chi sia l'uomo e chi la donna, ponendo

loro delle domande. Lo scopo di A è ingannare C per farlo sbagliare, mentre quello di B è

di aiutare C nell'identificazione. Turing si chiede che cosa succede se, nel gioco, una

macchina prende il posto di A: se C non è in grado di capire quale tra i suoi interlocutori è

un essere umano e qual è una macchina, allora possiamo concludere che la macchina è

intelligente, perché ha ingannato l'uomo tramite un'imitazione.

Finora nessun programma ha superato il test di Turing. Il primo ad aver ottenuto un certo

successo, è Eliza, un software scritto nel 1966 da Joseph Weizenbaum. Eliza, ha simulato

Page 24: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

24

una conversazione tra un paziente e una psicoterapista, cioè egli, per farlo, cerca

nell’affermazione del paziente, qualche parola chiave, a quel punto, se la trova, elabora una

frase secondo qualche regola associata a quella parola; altrimenti produce un’osservazione

non inerente. L’effetto che questo programma aveva su molti era sconcertante: i “pazienti”

infatti si calavano completamente nell’illusione aprendo il proprio animo e i propri pensieri

al computer.

Questo insieme di istruzioni, diede inizio, allo sviluppo di una lunga serie di programmi

simili, da parte di altri ricercatori, fino ad arrivare ai chatterbot.

Page 25: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

25

Capitolo V

Intelligenza artificiale

Page 26: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

26

L’intelligenza artificiale

Definire cosa sia esattamente l’intelligenza artificiale è un compito arduo, si può dire, che è

l’insieme di studi e tecniche, che tendono alla realizzazione di macchine, specialmente

calcolatori elettronici, in grado di risolvere problemi e di riprodurre attività proprie

dell’intelligenza umana. Non esiste, però, ancora una definizione universalmente

accettata, perché l’IA (Intelligenza Artificiale) è un settore estremamente recente e in

fortissima evoluzione.

Se durante la seconda guerra mondiale, si assiste a un crescente interesse per l’IA, è tutto

grazie a Turing, dato che passò alla storia come uno dei pionieri dello studio della logica dei

computer e come uno dei primi ad interessarsi all'argomento dell'intelligenza artificiale.

L’IA, nell’anno 1956 ottiene lo status di vera e propria disciplina scientifica. Quell’anno,

si teneva infatti, la conferenza del Dartmouth College, negli Stati Uniti, organizzata dal

ricercatore John McCarthy. La conferenza, era pensata come un’occasione per riunire e

mettere a confronto, su questo tema, molti fra i primi ricercatori nell’ambito. E proprio nel

manifesto della conferenza, fra l’altro, che McCarthy propone per la prima volta il nome di

“intelligenza artificiale”. Partendo dal 1952, fino ad arrivare al 1969, ci fu una serie di

grandi successi nel campo dell’intelligenza artificiale; i programmi risultavano infatti

sorprendenti, dimostrando che i calcolatori non erano semplici manipolatori di espressioni

matematiche ma potevano fare di più.

Nel frattempo McCarthy lavora assiduamente, per scrivere un nuovo linguaggio di

programmazione, detto LISP, che facilitasse la realizzazione di programmi di IA.

Incidentalmente, anche se è riduttivo definire incidentale un contributo così importante

Page 27: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

27

all’informatica, inventa il “time sharing”. In informatica, sistema di utilizzazione di un

elaboratore per cui a quest'ultimo possono accedere più utenti contemporaneamente. La

macchina divide ciclicamente il suo tempo tra tutti gli utenti, ovvero tra tutte le unità

periferiche che fanno capo al sistema, in modo tale che ciascun utente ha l'impressione di

usare in esclusiva il sistema di elaborazione.

Nel 1966, avviene una battuta d’arresto, nelle ricerche dell’intelligenza artificiale,

concludendo nel 1973. In quel periodo ci furono i primi fallimenti e le prime delusioni, a

causa del mancato successo delle ricerche. In questi anni, si sollevano anche alcune voci

critiche nei confronti dell’IA. Qualcuno attaccò i ricercatori asserendo che l’IA non sia

realizzabile dal punto di vista filosofico, e sottolineando l’incapacità di realizzare i tanti

successi promessi.

I primi programmi di IA erano scritti per giungere alla soluzione di un problema

“ragionando” tramite una serie di proposizioni logiche. Nel 1969, emerge invece un secondo

approccio: i sistemi basati sulla conoscenza. In quegli anni nacquero i primi sistemi esperti,

dei programmi in grado di risolvere autonomamente problemi, appartenenti a uno specifico

campo di competenze, senza che il programmatore abbia esplicitamente e preventivamente

considerato tutte le possibili varianti del problema stesso. La caratteristica dei sistemi esperti

è quella di avere capacità di autoapprendimento per cui, opportunamente parametrizzati a

seconda dei risultati in uscita, sono in grado di eseguire autonomamente procedure

algoritmiche differenti.

A partire dal 1981 i sistemi esperti si rivelarono degli ottimi strumenti per applicazioni

industriali, vivendo così un intenso periodo di sviluppo.

In questi anni cambia l’approccio all’IA: da una ricerca basata sull’intuizione e su esempi

creati ad arte, l’attenzione si sposta sulla costruzione dei modelli, su risultati matematici ben

Page 28: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

28

dimostrati e su estensiva sperimentazione.

Nei primi anni del 2000 la disponibilità di vastissimi database ha portato un grande

contributo a molti ambiti dell’IA. Infatti non è più necessario, per realizzare sistemi basati

sulla conoscenza, inserire manualmente i dati necessari al funzionamento del programma,

ma appoggiandosi a robusti algoritmi di apprendimento è sufficiente solo un’ampia base di

dati.

Per concludere, la storia dell’IA è segnata da alti e bassi, soprattutto per via del grande

ottimismo e delle molte promesse fatte dai primi ricercatori. Molte battute d’arresto, vicoli

ciechi e taglio dei fondi hanno portato a cambi di rotta spesso anche drastici.

L’idea di riprodurre effettivamente un’intelligenza umana su un computer è stata

progressivamente abbandonata, lasciando spazio ad approcci più realistici, e togliendo l’IA

da sotto i riflettori dei media per un lungo periodo.

Alcuni esempi di ambiti applicativi per l’IA, di cui si sente anche parlare molto ultimamente

sono i veicoli a guida autonoma, il riconoscimento vocale, la traduzione automatica,

pianificazione e logistica, giochi, filtri per la posta, assistenti vocali e motori di ricerca.

Page 29: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

29

Capitolo VI

I primi calcolatori

Page 30: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

30

I primi calcolatori

Nel 1945, i due ingegneri John Mauchly e J. Prosper

Eckert, svilupparono un computer, chiamato ENIAC

(Electronic Numerical Integrator and Computer).

Il programma dell’ENIAC era cablato nell’hardware e

quindi non poteva essere modificato senza alterare la

macchina.

Gli scienziati avevano pensato di sfruttare, al posto dei relè,

le possibilità della valvola termoionica, che era nata nel 1906 per amplificare le onde radio,

e di trasformarla in un velocissimo interruttore di circuiti.

L'ENIAC divenne così il primo strumento di calcolo a non avere parti meccaniche in

movimento, ma solo circuiti elettronici. Di fatti utilizzava 18000 valvole termoioniche,

70000 resistenze, pesava 30 tonnellate e occupava lo spazio di 180 mq; quindi era molto

grande e soggetto a molti guasti.

I due limiti principali erano che necessitava di un lungo tempo per essere programmato e,

soprattutto, che consumava 150 kilowatt di potenza: quando venne messo in funzione la

prima volta, tutte le luci del quartiere ovest di Filadelfia si spensero.

Il giorno della presentazione al mondo, fu chiesto all'ENIAC, di moltiplicare il numero

97.367 per se stesso 5.000 volte. La macchina compì l'operazione in meno di un secondo.

Con l'ENIAC, che funzionò dal 1946 al 1955, nasce l'era informatica vera e propria.

Fu ritenuto, il primo computer completamente funzionante, ovvero in grado di svolgere

diverse mansioni e non di assolvere a un solo e unico scopo.

Page 31: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

31

Eniac aveva colpito von Neumann per la grande capacità di calcolo, ma aveva il difetto di

essere rigido. Ogni diversa attività richiedeva un lungo lavoro di modifica a computer spento

azionando interruttori e spostando cavi.

Per questo von Neumann propose a Eckert e Mauchly di realizzare una macchina con

un'architettura nuova. Quella che sarà poi chiamata architettura di von Neumann.

Nacque così Edvac (Electronic Discrete Variable Automatic Computer) che può, a pieno

titolo essere considerato il primo computer nel senso moderno del termine.

L'architettura di von Neumann prevedeva:

● una memoria che contenesse sia i dati sia le istruzioni (il programma)

● una unità di calcolo che prende i dati ed esegue le operazioni

● una unità di controllo che interpreta le istruzioni di programma e fa effettuare

all'unità di calcolo le azioni corrispondenti

● una unità di output, necessaria affinché i dati elaborati possano essere restituiti in una

forma comprensibile dagli esseri umani.

Con l'EDVAC furono apportati due cambiamenti concettuali rivoluzionari. Il primo

riguardava l'adozione della matematica binaria al posto di quella decimale, in modo da

rendere il sistema più efficiente. Inoltre, al posto di ricablare tutta la macchina per cambiare

il programma, l'EDVAC introdusse l'idea

di immagazzinamento dei programmi nella memoria,

proprio come se fossero dei dati, come accade con

gli elaboratori attuali. La memoria non era più

composta da valvole tubolari, ma le

informazioni venivano immagazzinate come impulso

elettrico nel mercurio. Il mercurio era 100 volte più efficiente in termini di elettronica,

Page 32: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

32

necessaria per immagazzinare i dati, poteva memorizzare più dati ed era più flessibile e

affidabile. L'EDVAC rappresentava un

grande passo in avanti, e diede prova della sua utilità fino al 1960. Era un computer che

memorizzava programmi binari, poteva essere riprogrammato più velocemente dell'ENIAC.

Era più piccolo, pesava meno di nove tonnellate e consumava "solo" 56 kilowatt.

Successivamente, nel 1946, Turing progetta l’ACE (Automatic Computing Engine), il

primo computer elettronico sviluppato nel

Regno Unito.

Il 19 febbraio 1946 Turing presentò infatti

un documento al comitato esecutivo del

NPL, dove delineava il progetto di un

computer con programma caricabile.

A differenza della maggior parte dei primi computer come l’EDVAC di John von Neumann

il progetto di Turing era un progetto indipendente slegato da ogni organizzazione militare.

Il sistema ACE aveva parole di 48 bit, utilizzava come memoria delle linee di ritardo e

conteneva circa 7000 valvole termoioniche, poche rispetto da quelle utilizzate dall’ENIAC.

Il documento di Turing sull’ACE includeva diagrammi dettagliati sui circuiti logici e

stimava il costo in 11200 sterline. Il progetto dell’ACE, venne realizzato verso al fine del

1950 e operò fino alla fine del 1957 quando divenne troppo obsoleto venne dismesso.

Page 33: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

33

Capitolo VII

Onorificenze

Page 34: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

34

Onorificenze

Nel corso della sua vita, Turing ha contribuito molto allo sviluppo della tecnologia, e ciò la

portato ad ottenere premi e riconoscimenti.

Nel 1951 fu eletto Membro della Royal Society di Londra, un'associazione

scientifica britannica, fondata nel XVII secolo allo scopo di promuovere l'eccellenza

scientifica per il benessere della società.

Fu anche nominato Ufficiale dell'Ordine dell'Impero Britannico, una tra le onorificenze più

importanti del Regno Unito. Questo’ordine venne fondato per onorare le centinaia di

persone che avevano svolto un servizio di tipo non militare durante la guerra.

Successivamente, venne creata l’associazione A.M. Turing Award, dove le persone che

eccellono per i contributi di natura tecnica, in particolare per progressi che siano duraturi e

di elevata importanza, ricevevano un premio. Il premio viene spesso anche chiamato

"premio Nobel dell'informatica" ed è dedicato al matematico inglese Alan Mathison Turing,

in riconoscimento del suo contributo unico e originale alla nascita delle attività di calcolo

mediante dispositivi automatici.

Nel dicembre 2012, importanti esponenti del mondo scientifico internazionale, mandarono

una lettera aperta al Primo Ministro britannico, per sollecitare la grazia postuma di Turing.

Precedentemente, a 55 anni dal suicidio di Alan Turing, spiegabile con le torture a lui

riservate, il 10 settembre 2009 vi fu una dichiarazione di scuse ufficiali da parte del governo

del Regno Unito, riconoscendo, che Turing fu oggetto di un trattamento omofobico.

Infine, nel 2014 venne pubblicato il film “The Imitation Game”, inspirato alla storia vera di

Alan Turing.

Page 35: Lorenzo Anastasio...Alan Turing – Lorenzo Anastasio 7 a lavorare presso il National Physical Laboratory (NPL) e progetta l'Automatic Computing Engine (ACE). Se la Macchina di Turing

Alan Turing – Lorenzo Anastasio

35

Conclusione

Alan Turing viene commemorato, per il suo ruolo fondamentale nella ricerca e nello

sviluppo delle tecnologie. Grazie al suo modo di pensare, si è differenziato dagli altri

matematici e crittografi di quell’epoca. Ciò gli permise di arrivare, prima di chiunque altro a

idealizzare e realizzare concetti base dell’attuale matematica e informatica. Come se questo

non bastasse, Turing fu anche il primo a pensare all’intelligenza artificiale non come una

semplice macchina programmabile, ma come il raggiungimento dello schema del cervello

umano. Sorretto dalla convinzione che non ci sia nulla, in teoria, che un cervello artificiale

non possa fare, esattamente come quello umano.

Penso che questo personaggio, nonostante le intemperie della sua vita, abbia dato un

contributo molto importante alla vita delle persone grazie al suo pensiero e alle sue

innovazioni.