Il prof. Dave Cliff, informatico, ci accompagna in un viaggio attraverso filosofia, matematica, scienza e tecnologia per aiutarci a comprendere il funzionamento del ragionamento umano.
Incontreremo grandi pensatori del passato, da Aristotele a Bertrand Russel, a Kurt Godel, fino a Alan Turing.
Scopriremo che George Boole fu il grande matematico che adattò la Logica al concetto di calcolo al fine di gettare le basi per un calcolo logico-matematico da cui deriverà il Computer.
Ma anche i promettenti cervelli del futuro, ovvero i ragazzini che gareggiano alle Olimpiadi internazionali di informatica a Brisbane, in Australia.
Con l'obiettivo di rispondere ad una domanda: gli umani possono tenere il passo,
o siamo destinati ad essere superati dall'intelligenza artificiale? -
------------------------------------------
codice ENIGMA
E’ il 1923 e un ingegnere berlinese, Scherbius, inventa una
macchina in grado di creare codici segreti: con la fine della
prima guerra mondiale, cresce lo spionaggio industriale e la
Germania per garantirsi la ripresa economica necessita di
sistemi antispionaggio.
Il nome della macchina è “Enigma” e la prima fu esposta al
Congresso Internazionale dell’Unione Postale e in seguito
commercializzata. I primi acquirenti furono le principali
potenze militari del tempo: Germania, Giappone, Stati Uniti,
Polonia.
Ma cos’è Enigma?
Si trattava di una macchina capace di creare e decrittare
messaggi cifrati. L’aspetto era quello di una comune macchina da
scrivere con due tastiere: una tastiera inferiore ed una seconda
tastiera fatta di lettere luminose che si illuminavano ad ogni
tasto premuto sulla tastiera. La sequenza delle lettere che si
illuminavano componevano il testo del messaggio cifrato (o
viceversa, il messaggio in chiaro se si batteva il testo
cifrato). La prima versione era composta da tre rotori (o dischi
cablati) che nei vari abbinamenti componevano 150 trillioni di
combinazioni diverse.
L’ultimo modello utilizzato durante la Seconda Guerra Mondiale
dalla Germania, aveva 5 rotori. Il suo funzionamento si basa
sull’incastro dei rotori: ogni disco cablato possiede 26
contatti per lato, uno per ogni lettera dell’alfabeto tedesco; i
cablaggi dei dischi mettono in comunicazione ciascuna lettera su
un lato con una lettera a caso sull’altro lato; ad ogni
pressione del tasto il primo disco ruota di una lettera, il
secondo ruota di una lettera ogni volta che il primo disco
compie un giro e il terzo disco ruota quando il secondo finisce
il giro e così via. Enigma poteva essere regolata con spinotti
per scambiare fino a dieci lettere con altre dieci a scelta e i
contatti per ogni rotore o disco per lato poteva essere sfalsato
a piacere. Il codice Enigma resta uno dei sistemi di
crittografia più efficaci e avvincenti che se non fosse stato
“svelato” avrebbe permesso alla Germania di vincere la guerra.
La possibilità di modificare i rotori a piacimento permetteva di
cambiare anche più volte al giorno la combinazione. Il punto di
forza di Enigma era l’universalità del linguaggio.
Il “segreto” del codice Enigma cominciò ad essere svelato quando
Hans Thilo Schmidt un ex-agente tedesco vendette ai francesi i
manuali operativi di Enigma in uso alle forze armate tedesche.
Ma anche così, non si riusciva a decrittare in tempo i messaggi,
perché i tedeschi avevano già apportato modifiche ed evoluzioni
all’Enigma originale. Nel 1943, scoperto dalla polizia nazista,
Schmidt si suicidò in carcere per timore delle torture.
L’infallibilità del codice Enigma cessò quando una squadra di
crittografi inglesi nel covo segreto di Bletchley Park e guidati
dal genio di Alan Turing, un ventottenne eccentrico, elaborò una
macchina (The Bombe) in tutto simile ad un computer in grado di
imitare i rotori di Enigma e farli girare ad alta velocità
calcolando velocemente tutte le combinazioni possibili. La messa
a punto delle “bombe” permise di intercettare in tempo reale
tutti i messaggi tedeschi, prevedendo e anticipando le mosse del
nemico… cambiando “letteralmente” il volto della storia.
Alan Turing
Alan Mathison Turing è passato alla storia come uno dei pionieri
dello studio della logica dei computer e come uno dei primo ad
interessarsi all’argomento dell’intelligenza artificiale. Nato
il 23 giugno 1912 a Londra ha ispirato i termini ormai d’uso
comune nel campo dell’informatica come quelli di “Macchina di
Turing” e di “Test di Turing”.
Più nello specifico, si può dire che come matematico ha
applicato il concetto di algoritmo ai computer digitali e la sua
ricerca nelle relazioni tra macchine e natura ha creato il campo
dell’intelligenza artificiale.
Interessato soltanto alla matematica e alla scienza iniziò la
sua carriera come matematico al King’s College alla Cambridge
University nel 1931.
A scuola non aveva un gran successo, data la sua tendenza ad
approfondire esclusivamente cose che lo interessassero sul
serio. Solo la grandissima amicizia con Christopher Morcom,
apparentemente molto più promettente di lui e molto più
sistematico gli permise di iniziare la sua carriera
universitaria: l’amico, però, morì purtroppo di tubercolosi due
anni dopo il loro incontro. 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à.
Tanto per fare un esempio, Turing arriverà a scoprire, cinque
anni prima Gödel, che gli assiomi della matematica non potevano
essere completi, un’intuizione che mise in crisi la convinzione
che la matematica, in quanto scienza perfettamente razionale,
fosse aliena da qualsiasi tipo di critica.
Si presentava comunque per Turing un compito veramente arduo:
riuscire a provare se ci fosse o meno un modo per determinare se
un certo teorema fosse esatto oppure no. Se questo fosse stato
possibile, allora tutta la matematica si sarebbe potuta ridurre
al semplice calcolo. Turing, secondo le sue abitudini, affrontò
questo problema in mondo tutt’altro che convenzionale, riducendo
le operazioni matematiche ai loro costituenti fondamentali.
Operazioni tanto facili che potevano essere di fatto svolte da
una macchina.
Trasferitosi alla Princeton University, dunque, il grande
matematico iniziò ad esplorare quella che poi verrà definita
come la “Macchina di Turing” la quale, in altri termini, non
rappresenta altro che un primitivo e primordiale “prototipo” del
moderno computer. L’intuizione geniale di Turing 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.
Durante la seconda guerra mondiale Turing mise le sue capacità
matematiche al servizio del “Department of Communications”
inglese per decifrare i codici usati nelle comunicazioni
tedesche, un compito particolarmente difficile in quanto i
tedeschi avevano sviluppato un tipo di computer denominato
“Enigma” che era capace di generare un codice che mutava
costantemente. Durante questo periodo al “Department of
Communications”, Turing ed i suoi compagni lavorarono con uno
strumento chiamato “Colossus” che decifrava in modo veloce ed
efficiente i codici tedeschi creati con “Enigma”. Si trattava,
essenzialmente, di un insieme di servomotori e metallo, ma era
il primo passo verso il computer digitale.
Dopo questo contributo fondamentale allo sforzo bellico, finita
la guerra continuò a lavorare per il “National Physical
Laboratory” (NPL), continuando la ricerca nel campo dei computer
digitali. Lavorò nello sviluppo all'”Automatic Computing Engine”
(ACE), uno dei primi tentativi nel creare un vero computer
digitale. Fu in questo periodo che iniziò ad esplorare la
relazione tra i computer e la natura. 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”. Turing, infatti, era
dell’idea che si potessero creare macchine che fossero capaci di
simulare i processi del cervello umano, sorretto dalla
convinzione che non ci sia nulla, in teoria, che un cervello
artificiale non possa fare, esattamente come quello umano (in
questo aiutato anche dai progressi che si andavano ottenendo
nella riproduzione di “simulacri” umanoidi, con la telecamera o
il magnetofono, rispettivamente “protesi” di rinforzo per
l’occhio e la voce).
Turing, insomma, era dell’idea che si potesse raggiungere la
chimera di un’intelligenza davvero artificiale seguendo gli
schemi del cervello umano. A questo proposito, scrisse nel 1950
un articolo in cui descriveva quello che attualmente è
conosciuto come il “Test di Turing”. Questo test, una sorta di
esperimento mentale (dato che nel periodo in cui Turing scriveva
non vi erano ancora i mezzi per attuarlo), prevede che una
persona, chiusa in una stanza e senza avere alcuna conoscenza
dell’interlocutore con cui sta parlando, dialoghi sia con un
altro essere umano che con una macchina intelligente. Se il
soggetto in questione non riuscisse a distinguere l’uno
dall’altra, allora si potrebbe dire che la macchina, in qualche
modo, è intelligente.
Turing lasciò il National Physical Laboratory prima del
completamento dell'”Automatic Computing Engine” 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.
Personalità fortemente tormentata (anche a causa di una
omosessualità vissuta con estremo disagio), dalle mille
contraddizioni e capace di stranezze e bizzarrie inverosimili,
Turing morì suicida, appena quarantenne, il 7 giugno 1954.
Ecco come Alan Turing ha potuto decriptare il
codice Enigma
La decriptazione del codice Enigma è una delle vicende più
interessanti della storia dell’informatica, ma non tutti sanno
esattamente come è andata e come Alan Turing riuscì
nell’impresa.
Come decifrare enigma? Tutto nasce dal fatto che il codice
conteneva una imperfezione nascosta: una lettera non era mai
criptata in modo tale da rappresentare se stessa una volta
realizzato il codice. Partendo da questo, Turing riuscì a
trovare la soluzione.
Naturalmente, il problema era che il codice cambiava ogni notte,
quindi Turing realizzò Bombe, una macchina in grado di
decriptare il codice, ogni mattina, in soli 20 minuti. Ora,
però, lasciamo la parola a James perché, sebbene il video sia in
inglese, la sua spiegazione risulta veramente molto chiara ed
esaustiva.