1 / 52

Storia dell’Informatica e del Calcolo Automatico Alan Turing

Storia dell’Informatica e del Calcolo Automatico Alan Turing. Prof. Francesca Perla SICSI – a.a. 2004/2005 Gruppo: Daniele Novi matr.0052 Massimiliano Iennaco matr.0045. Obiettivi delle lezioni. Le lezioni hanno l’obiettivo di presentare

connie
Download Presentation

Storia dell’Informatica e del Calcolo Automatico Alan Turing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Storia dell’Informatica e del Calcolo AutomaticoAlan Turing Prof. Francesca Perla SICSI – a.a. 2004/2005 Gruppo: Daniele Novi matr.0052 Massimiliano Iennaco matr.0045

  2. Obiettivi delle lezioni • Le lezioni hanno l’obiettivo di presentare • La vastità di campi in cui Touring ha apportato contributi • La quantità di contributi per ogni campo

  3. Durata del corso • 2 ore ripetizione nozioni base • 16 ore

  4. I passi della vita di Turing • Alan Mathison Turing nacque a Londra il 23 giugno 1912 e morì suicida a Manchester il 7 giugno 1954 • Pioniere della teoria dei calcolatori, matematico, filosofo, biologo, e precursore nel campo dell' Intelligenza Artificiale • Formazione Scolastica: Sherborne School(1926-31); King's College-Cambridge(1931-35); Ph.D. alla Princeton University(1938) • Esperienze Professionali: Collaboratore al King's College (1935-45); crittografo al Ministero degli Esteri Britannico (1939-45); Laboratorio Fisico Nazionale (1945-48); Università di Manchester (1948-54). Pubblicazioni significative: 1936 - Sui numeri computabili con un'applicazione al problema della decisione. 1947 - Proposta di calcolatore elettronico (il cosidetto rapporto ACE). 1950 - Macchine calcolatrici e intelligenza. 1952 - Le basi chimiche della morfogenesi. Premi e Riconoscimenti: Smith's Prize-Cambridge University(1936); Ordine dell'Impero Britannico(1946); Socio Royal Society(1951).

  5. Date importanti • 1912 (23 June): Nascita, Paddington, London • 1926-31: Sherborne School • 1930: Morte dell’amico Christopher Morcom • 1931-34: Laurea al King's College, Cambridge University • 1932-35: Meccanica quantica , probabilità, logica • 1935: Eletto fellow of King's College, Cambridge • 1936: The Turing machine, computabilità, macchina universale • 1936-38: Princeton University. Ph.D. Logica, algebra, teoria dei numeri • 1938-39: Ritorno a Cambridge. Aprocio alla economica macchina tedesca Enigma • 1939-40: La Bomba, macchina per decriptazione Enigma • 1939-42: Decriptazione dell U-boat Enigma, salvando così la battaglia sull’Atlantico • 1943-45: Capo Anglo-American crypto consulente.lavori elettronici • 1945: National Physical Laboratory, London • 1946: Computer e Software si affacciano sul mondo. • 1947-48: programmazione di reti neurali e intelligenza artificiale. • 1948: Manchester University • 1949: Primo serio uso del computer • 1950: The Turing Test per l’intelligenza delle macchine • 1951: Eletto FRS. Teoria non lineare della crescita biologica • 1952: arrestato come omosessuale, • 1953-54: Incompleto lavoro su fisica e biologia • 1954 (7 June): Morte (suicidio) con cianuro, Wilmslow, Cheshire.

  6. Folklore • Turing fu un uomo piuttosto colorito. • Il suo aspetto era trasandato, con la barba sempre lunga e le unghie sporche. • Fu infantile (ad esempio, si fece regalare un orsacchiotto di pezza per Natale, a ventidue anni). • Seppellì lingotti d'argento durante la guerra in modo così sicuro da non riuscire aritrovarli dopo la fine. • Non sopportava gli sciocchi, ed abbandonava le conversazioni vuote e le compagnie idiote repentinamente, e senza una parola di commiato.

  7. Folklore • Imparò a fare la maglia da una ragazza che aveva deciso di sposare, nonostante la propria omosessualità. • Andava in bicicletta con la maschera antigas durante il periodo dell'impollinazione, per evitare la febbre da fieno, o avvolto in tela cerata gialla durante la stagione delle piogge. • Legava la tazza da tè al termosifone con un lucchetto, per evitare che gli fosse rubata. • Portava la giacca del pigiama al posto della camicia. • Giocava a tennis nudo sotto un impermeabile, e non disdegnò di discutere con un bambino se Dio avesse preso il raffreddore nel caso in cui si fosse seduto sulla nuda terra.

  8. Chimica Biologia • Nel 1952 AlanTuring pubblicò un lavoro intitolato “Le basi chimiche della morfogenesi” in Philosophical Transactions of Royal Society. • Utilizza un modello per spiegare come semplici reazioni chimiche non all’equilibrio ( i prodotti e i reagenti devono essere stecheometicamente uguali),descritte da equazioni differenziali e diffusioni attraverso lo spazio , potessero spontaneamente causare la formazione di pattern nel tempo e nello spazio,ora conosciuti come Pattern di Turing. • Turing sostenne che questo generale meccanismo potesse essere il cuore della morfogenesi biologica.

  9. Gli organismi viventi prendono vita attraverso processi auto-organizzati di morfogenesi evolutiva,una forma di formazione spazio temporale di pattern. • Attraverso la loro vita ,gli organismi viventi devono sempre adattarsi a nuovi cambiamenti ambientali. • Ci devono essere delle regole o leggi fisiche che permettono alle molecole organiche di auto-assemblarsi per dare origine a strutture molto complesse che caratterizzano un organismo vivente

  10. Per la formazione di un pattern spazio temporale ci deve essere un accoppiamento tra “attivatore a corto raggio e inibitore a lungo raggio” • Questi sono approcci teorici difficilmente applicabili in biologia dove ci vuole un’abilità nell’identificare le varie e complesse molecole quali siano gli attivatori

  11. Tutto ciò è stato superato grazie: • Decodifica del genoma uma • identificazione di proteine che regolano la formazione di pattern • Tecnologia array (mantiene i livelli di epressione genetica) • Ingegneria genetica

  12. Matematica - Informatica • Il nome di Turing è oggi famoso soprattutto per la sua analisi del processo di computazione in termini di macchina astratta (MACCHINA DI TURING) • Le introdusse per dimostrare che l’attività matematica non è completamente meccanizzabile (È impossibile in linea di principio sostituire i matematici con macchine) e scoprendo: • Una macchina che è in grado di svolgere i compiti di qualsiasi macchina calcolatrice presente o futura (macchina universale) • Anche tale macchina ha i suoi limiti. • Il suo contributo è ancora oggi poco capito (al di fuori degli ambienti informatici), ed una delle sue conseguenze è il fatto che non è possibile progettare o costruire computer più potenti di quelli già attualmente in uso • le uniche innovazioni possibili, benché sbandierate come progressi essenziali non sono altro che sviluppi tecnologici relativi a dimensioni o efficienza.

  13. Macchina di Turing • L'indagine compiuta da Turing, prende le mosse dall'analisi dell'attività umana del calcolare, con particolare riguardo al processo di calcolo, • Idea intuitiva: è un dispositivo di calcolo in grado di operare, mediante una successione (finita) di passi, secondo determinate regole (programma), su di un numero finito di simboli, facendo astrazione da limiti di spazio (memoria), di tempo (lunghezza della computazione) e da possibili errori di calcolo.

  14. Cosa calcoliamo? • Le operazioni sui numeri sono da sempre oggetto del calcolo • Fin dall’antichità sono state utilizzate tabelle per indicare relazioni non esprimibili con le operazioni • Col passare dei secoli si è arrivati all’unico concetto di calcolo di funzione • Sia le operazioni che le tabelle sono esempi di modi per esprimere funzioni

  15. Le macchine di Turing • All’inizio del XX secolo i matematici riconsiderarono i fondamenti della matematica • Un importante problema: le funzioni effettivamente calcolabili • Furono proposti diversi modelli per definire funzioni calcolabili • Le Macchine di Turing, proposte dal matematico Alan Turing, è uno di questi

  16. MdT per calcolare funzioni • La Macchina di Turing è una macchina ideale che consente di calcolare funzioni • Data una Macchina di Turing che calcola una funzione f è possibile specificare un input ed ottenere, al termine della computazione, l’output • La tesi di Church postula che tutte le funzioni effettivamente calcolabili siano esprimibili con una Macchina di Turing

  17. Come è fatta una MdT? • Una MdT è definita da: • un nastro • una testina • uno stato interno • un programma • uno stato iniziale

  18. Il nastro • Il nastro è • infinito • suddiviso in celle • In una cella può essere contenuto un simbolo preso da un alfabeto opportuno • Un alfabeto è semplicemente un insieme di simboli • Una cella deve contenere un simbolo che può appartenere all’alfabeto oppure essere un simbolo speciale

  19. Lo stato interno e la testina • La macchina è dotata di una testina di lettura/scrittura • La testina è in grado di leggere e scrivere il contenuto della cella del nastro su cui si trova • La macchina ha uno stato interno • Uno stato è un elemento appartenente all’insieme degli stati

  20. Il programma di una MdT • Il comportamento della macchina è determinato da un insieme di regole • Una regola ha la forma seguente: (A, a, B, b, dir) • Una regola viene applicata se lo stato corrente della macchina è A e il simbolo letto dalla testina è a • L’applicazione della regola cambia lo stato in B, scrive sul nastro b ed eventualmente sposta la testina di una cella a sinistra o a destra (dir)

  21. Il funzionamento di una MdT • La macchina opera come segue: • Determina la regola da applicare in base allo stato interno e al simbolo corrente (quello letto dalla testina) • Se esiste una tale regola cambia lo stato, scrive il simbolo sulla cella corrente si sposta come indicato dalla regola • Se non esiste la regola l’esecuzione termina • In questo modello non può esistere più di una regola per uno stato ed un simbolo corrente

  22. Esempio: cambiamo A in B • Vogliamo programmare una Macchina di Turing che, dato sul nastro di input una stringa di A e B, rimpiazza ogni occorrenza di A in B e viceversa • Assumendo che la testina sia posizionata sul primo simbolo della stringa dobbiamo • cambiare una A in B (o viceversa) • spostare la testina sul prossimo carattere

  23. Cambiamo A in B (continua) • Le regole corrispondenti sono: (0, A, 0, B, >) (0, B, 0, A, >) • In questo caso è sufficiente lo stato 0 • Al termine della stringa l’esecuzione sarà arrestata

  24. Un’altra rappresentazione • La notazione a regole non è l’unica possibile per esprimere un programma • Una notazione più compatta utilizza un grafo: un insieme di nodi collegati da archi opportunamente collegati • Ad ogni stato della macchina si associa un nodo del grafo • Se una regola provoca la transizione in un altro stato esiste un arco tra i due nodi annotato col simbolo letto, quello scritto e la direzione

  25. A/B, > 1 0 Rappresentare una regola • In pratica alla regola (0, A, 1, B, >) corrisponde il seguente grafo:

  26. Lo stato della macchina • Qual’è il ruolo dello stato? • Lo stato della macchina ricorda a che punto è del calcolo • Il grafo rende meglio delle regole la relazione che intercorre tra stati differenti • In genere si ha bisogno di tanti stati quante sono le cose da ricordare durante il calcolo

  27. Crittografia & Crittoanalisi • Turing fu interessato alla crittografia ed alla crittoanalisi (codifica e decifrazione dei messaggi) • Crittoanalisi • Indagine sulla natura dell’universo fisico • Messaggi = fenomeni osservabili • Chiavi di codifica = costanti fisiche

  28. 4 settembre 1939 – estate 1944 • 1936 : dubbi rivolti alla madre sulla moralità di vendere al governo metodi efficienti di crittografia • 1938 : si arruola nei servizi segreti inglesi • La Gran Bretagna dichiara guerra alla Germania il 3 Settembre 1939 • Durante la seconda guerra mondiale utilizza le sue idee e la sua conoscenza al servizio del Dipartimento delle Comunicazioni Britannico

  29. COLOSSUS • Utilizza le sue abilità matematiche per decifrare i codici che i tedeschi usavano per comunicare Enigma

  30. Durante la seconda guerra mondiale tutte le comunicazioni militari tedesche venivano criptate con una macchina chiamata Enigma, ideata dall'ingegnere tedesco Arthur Scherbius. • Questa macchina è una rappresentante niente affatto indegna di una classe di cifrari a rotore, utilizzati fino all'introduzione di cifrari elettronici e microelettronici. • La macchina a rotori è costituita da una catena di dischi mobili (rotori)

  31. La versione semplificata del congegno di Scherbius consiste in 3 componenti collegati da fili elettrici: una tastiera per immettere le lettere del testo in chiaro; un'unità scambiatrice che cifra la lettera trasformandola nel corrispondente elemento del crittogramma (testo cifrato); un visore con varie lampadine, che accendendosi indicano la lettera da inserire nel testo cifrato.  Versione semplificata di Enigma con un alfabeto di 6 lettere

  32. In una macchina Enigma utilizzata in quel tempo il numero di conbinazioni di chiavi per forzare il cifrario era di: 16.900 x 6 x 100.391.791.500 La tecnica adottata viene definita: Sostituzione polialfabetica di periodo molto elevato (da far pensare alla perfezione)

  33. Gli Inglesi, nella località segreta di Bletchley Park, avevano già un modello funzionante della macchina Enigma (fornito dai polacchi) • I loro sforzi erano concentrati sul trovare, giornalmente, la corretta configurazione iniziale. • Il tipo di attacco (attacco alla frase probabile) portato su ENIGMA da Knox e Turing era basato sulla conoscenza di un testo in chiaro (crib), e di una porzione di testo cifrato contenente il cifrato del crib. • Veniva sfruttata la propietà di ENIGMA di non cifrare mai un carattere con se stesso.

  34. Il confronto tra i due testi e l’utilizzo della proprietà esclude la maggior parte delle configurazioni della macchina stessa.

  35. Nel castello di Bletchley Park, in tempi ridottissimi e lavorando al massimo segreto, i principi della macchina di Turing vennero trasformati in un primo strumento reale, fatto di migliaia di relè elettromeccanici. • Quando i tedeschi capirono che troppo spesso le loro intenzioni erano anticipate dagli uomini dello Stato Maggiore britannico, decisero di rendere ancora più complicato il sistema di codifica della loro macchina crittografica. • A questo punto Turing e i suoi collaboratori furono indotti a rischiare il grande passo: sostituire ai componenti elettromeccanici la nuova valvola termoionica inventata da Fleming. • L’incognita stava soprattutto nell’affidabilità di queste valvole, usate fino a quel momento come amplificatori

  36. Nel dicembre del 1943 il prototipo era pronto: si chiamava Colossus e conteneva 1500 valvole termoioniche. • Era in assoluto il primo elaboratore elettronico della storia.

  37. Pur non avendo memoria e programma interno, era dotato di una potenza di elaborazione equivalente al più piccolo microchip degli anni ’90. • Colossus sarà in grado di trattare 5 mila caratteri al secondo (25 mila nella seconda versione dotata di 2500 valvole) prelevati da un nastro di carta perforato. • Di Colossus saranno realizzati undici esemplari che verranno, in seguito, tutti distrutti sotto ordine del primo ministro inglese Wiston Churchill.

  38. Enigma : generava codici variabili per criptare le trasmissioni radio • Colossus: dispositivo veloce ed efficiente in grado di decifrare i codici generati da Enigma • Uno dei primi passi verso il Calcolatore Digitale • Il lavoro effettuato con i suoi colleghi fu apprezzato solo dopo molti anni • quando cadde il segreto militare sulle tecnice crittoanalitiche impiegate durante la guerra • Alcuni dettagli utilizzati per forzare Enigma sono tenuti ancora segreti

  39. Intelligenza Artificiale • I problemi connessi all’attività mentale furono centrali negli interessi di Turing • La macchina di Turing è soltanto un primo passo nell'analisi delle possibilità cerebrali • pretende di formalizzarne soltanto le attività meccaniche (o di razionalità 'bassa'). • esclude del tutto l'intuizione che analizzo successivamente

  40. Il test di Turing (Alan Turing, 1950) fornisce una definizione operativa soddisfacente di intelligenza • Turing definì il comportamento intelligente come l’abilità di raggiungere prestazioni a livello umano in tutti i compiti, tale da ingannare un interrogatore • Il test proposto da Alan Turing consisteva nell’interrogare un computer da parte di un essere umano (utente) attraverso una tastiera remota. • Il calcolatore avrebbe superato il test se l’interrogatore non fosse stato in grado di riconoscere se a rispondere era un computer o un essere umano • Il test di Turing misura la capacità di una macchina di essere simile all’uomo

  41. Per superare un simile test, un calcolatore deve possedere • le seguenti capacità: • elaborazione del linguaggio naturale: essere in grado di comunicare nei linguaggi umani ( es. italiano o inglese) • rappresentazione della conoscenza: immagazzinare le informazioni fornite • ragionamento automatico: utilizzare le informazioni acquisite per rispondere alle domande o trarre conclusioni • apprendimento automatico: adattarsi a nuove situazioni e scoprire modelli

  42. Agire come un essere umano emerge principalmente quando i programmi dell’AI devono interagire con l’utente • Esempio: sistema un sistema esperto che spiega la diagnosi o sistema di elaborazione del linguaggio naturale

  43. Esempio relativo al test di Turing: programma DOCTOR (Weizenbaum): • Programma interattivo progettato per riprodurre un colloquio tra un psicoanalista (computer) e un paziente. Il computer non faceva altro che rispondere alle dichiarazioni del paziente attraverso istruzioni predefinite • Lo scopo nello sviluppare un tale programma era quello di studiare la comunicazione del linguaggio naturale • Il compito “difficile” per un ricercatore di AI consiste nel programmare il calcolatore in maniera tale da sembrare intelligente

  44. Nel 1949, il famoso neurochirurgo Sir Geoffrey Jefferson (1886-1961), nel suo scritto No Mind for Mechanical Man (Nessuna mente per l'uomo meccanico), esponeva una serrata critica ad un precedente articolo di Turing • «Fino a quando una macchina non potrà scrivere un sonetto o comporre un concerto suggeriti da emozioni realmente provati, e non per una scelta casuale di simboli, non potremo ammettere che una macchina eguagli il cervello umano; cioé che non solo scriva queste cose, ma che sappia di averle scritte. E' certo che nessun meccanismo potrebbe provare piacere (e neppure manifestarlo artificialmente, un facile espediente) verso i propri successi e angosce quando gli saltano le valvole, né animarsi davanti alle lusinghe, o rattristarsi per i propri errori, o essere affascinato dal sesso, o incollerirsi o deprimersi quando non può ottenere ciò che desidera».

  45. In altre parole… • La macchina non può avere delle emozioni

  46. Queste argomentazioni, apparentemente logiche, erano in realtà facilmente confutabili, e la traccia per farlo era stata indirettamente suggerita nel MacBeth di William Shakespeare... (SCENA QUARTA) DUNCAN (re di Scozia): Non c'è arte per leggere nella faccia la costituzione della mente...

  47. Ecco, a dispetto di quanto sosteneva Jafferson, • le "emozioni" possono essere manifestate artificialmente, e non c'è alcun modo per distinguerle da quelle reali... • tralasciando il fatto che vi sono persone che • non si compiacciono davanti alle lusinghe, • né si rattistano per i propri errori, • né soggiacciono ai piaceri del sesso ed ai desideri materiali.

  48. Finora nessun programma ha superato il test di Turing. • Il primo ad aver ottenuto un certo successo, è Eliza, un programma scritto nel 1966 da Joseph Weizenbaum. • Eliza è una psicoterapeuta che simula una conversazione tra lei (il medico), e voi (il paziente).

  49. Test Eliza paziente: gli uomini sono tutti uguali computer: in che senso paziente: ci fregano sempre in qualche modo computer: puoi fare un esempio specifico aziente: un mio amico mi ha fatto venire qui computer: un tuo amico ti ha fatto venire qui paziente: dice che sono quasi sempre depressa computer: mi dispiace sentire che sei depressa paziente: è vero sono infelice computer: credi che venire qui ti aiuterà a non essere infelice paziente: ho bisogno di aiuto, questo è sicuro computer: cosa intendi come aiuto paziente: forse potrei riuscire ad andare d'accordo con mia madre computer: parlami di tua madre

  50. Test Eliza • Una conversazione di questo tipo porta a domandarsi • se è il computer che pensa veramente • o piuttosto sono le persone che possono sostenere una conversazione senza bisogno di pensare!

More Related