Informatica per le discipline umanistiche e linguistiche

Slides:



Advertisements
Presentazioni simili
…da von Neumann al computer quantistico
Advertisements

…da von Neumann al computer quantistico architettura dellelaboratore.
Informatica per le discipline umanistiche e linguistiche
INFORMATICA UMANISTICA MODULI B, C E D
Informatica umanistica moduli B, C e D dit. unitn
Informatica umanistica: Moduli B, C e D
Prof. Rebecca Montanari Anno accademico 2011/2012
INFORMATICA UMANISTICA MODULI B, C E D Massimo Poesio (B, D) Marco Baroni (Lab D) Roberto Zamparelli (C)
Intelligenza artificiale
IL COMPUTER.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità E1 Dallanalisi del problema alla definizione dellalgoritmo.
Classe III A A.s – 2010 Programma di Informatica
Classe III A A.s – 2011 Programma di Informatica 5 ore settimanali (3 laboratorio) Docenti –Prof. Alberto Ferrari –Prof. Alberto Paganuzzi.
Presentazione Computer Forensic 27/03/2017
INTRODUZIONE ALL’ INFORMATICA
Algoritmi e Programmazione
Docente: Eugenia Occhiuto web:
Introduzione allo studio dell’informatica
Fondamenti di Informatica
1 Informatica Presentazione del corso ENIAC Electronical Numerical Integrator and Calculator Il primo calcolatore elettronico, lENIAC Electronical Numerical.
MACCHINE DI TURING Le macchine di Turing sono dispositivi astratti per la manipolazione di simboli, ideati nel 1936 dal matematico e logico britannico.
Introduzione allinformatica. Cosè linformatica ? Scienza della rappresentazione e dellelaborazione dellinformazione ovvero Studio degli algoritmi che.
Fondamenti di Informatica
Informatica per le discipline umanistiche e linguistiche
Modelli simulativi per le Scienze Cognitive
INFORMATICA UMANISTICA B
INFORMATICA UMANISTICA B
INFORMATICA UMANISTICA B
ANNUNCI Modulo B: RICEVIMENTO DOMANI: 17-19
INFORMATICA UMANISTICA B
Il Linguaggio Macchina
L’AUTOMA ESECUTORE Un automa capace di ricevere dall’esterno una descrizione dello algoritmo richiesto cioè capace di interpretare un linguaggio (linguaggio.
Elementi di Informatica
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Elementi di Informatica Simone Scalabrin a.a. 2008/2009.
Informatica: il trattamento automatico dell’informazione
“Orme Profonde” Matera aprile 2012
STRUTTURA GENERALE DI UN ELABORATORE
L' ARCHITETTURA DI VON NEUMANN
Il computer: struttura fisica e struttura logica
L’inventore del calcolatore odierno
Informatica Introduzione.
LA MACCHINA DI TURING Nel 1936 il matematico inglese A. M. Turing propose una definizione del concetto di algoritmo tramite un modello matematico di macchina.
ECDL Patente europea del computer
Alla fine degli anni quaranta nasceva il mito del cervello elettronico, e tutte le attività connesse allutilizzo del computer venivano indicate tramite.
Programma di Informatica Classi Seconde
Programma di Informatica Classi Prime
Informatica Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali
Introduzione: informatica 18/2/2013 Informatica applicata alla comunicazione multimediale Cristina Bosco.
Tesina di fine corso Argomento: Corso: Professore: Autori:
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Corsi di Laurea in Biotecnologie
Laboratorio Informatico
Informatica Lezione 1 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali (corso TIE) CORSO LAUREA MAGISTRALE IN SCIENZE E TECNOLOGIE DELLE PRODUZIONI ANIMALI.
INFORmazione autoMATICA
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Algoritmi.
Elementi di Informatica SciGeo a.a. 2002/2003. Docente Giorgio Delzanno Ufficio 104 – I piano Dipartimento di Informatica e Sc. Inf. Tel
Informatica e Informatica di Base
Io ho voluto dimostrarlo attraverso una delle mie passioni:
Problemi, algoritmi e programmazione
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Informazione e Informatica - presentazione dei concetti di base -
Programmazione dei Calcolatori Elettronici
…da von Neumann al computer quantistico L’archittettura dell’elaboratore.
Il Computer Un elaboratore o computer è una macchina automatizzata in grado di eseguire complessi calcoli matematici ed eventualmente altri tipi di elaborazione.
Tipi di Computer MainframeSupercomputerMinicomputerMicrocomputerHome Computer Personal Computer WorkstationMicrocontrollori Sistemi Barebone.
Dal problema al programma – ciclo di sviluppo del software La scrittura del programma è solo una delle fasi del processo di sviluppo di un'applicazione.
Transcript della presentazione:

Informatica per le discipline umanistiche e linguistiche Roberto Zamparelli (parte prima) Marco Baroni (parte seconda) 1

Precursori nel precedente ordinamento (509): IU B/C/D Informatica Umanistica A (= ECDL, impartito a livello di ateneo; vedi http://www.unitn.it/ecdl/ ora un prerequisito) Informatica Umanistica B (Poesio, 3 crediti) Informatica Umanistica C (Zamparelli, 3 crediti) Informatica Umanistica D (M.Baroni, 3 crediti) Due o tre di questi moduli obbligatori per ogni corso di studi a Lettere & Filosofia 2

Situazione attuale Un singolo corso di “Informatica per le discipline umanistiche e linguistiche” (IDUL), diviso in due parti consecutive allo stesso orario: Orario: Lun., Giov. 12-14, Ven 10-12 Contenuti: elementi di IU-B e -C, più vari argomenti nuovi. Le due parti (ciascuna di 30 ore, 6 crediti) possono essere seguite indipendentemente. Parte I: richiesta nella triennale di Beni Culturali, Filosofia Parte II: più specialistica (uso di PERL), in inglese

Requisiti per studenti 509 Gli studenti del precedente ordinamento (“509”) che devono superare moduli di IU (B e/o C). possono presentarsi all’esame di IDUL: Come non frequentanti, con il programma di IU-C 2008/09 (3 crediti) e con le stesse modalità di esame (vedi sito) Come frequentanti del nuovo programma, parte I (6 crediti) Come non frequentanti del nuovo programma, parte I (6 crediti)

Web & esercitazioni Sito web con materiali del corso ed informazioni sull’esame: http://people.lett.unitn.it/zamparelli/ (click su IDUL / IU per l' A/A in corso) Esercitazioni in laboratorio informatico: Per gli studenti di filosofia: Paolo Massa (HTML/XML/WIKI) Per gli studenti di beni culturali: F.Cavulli: (Data Base e GIS) Esame: orale con discussione di un progetto informatico (vedi sito per i dettagli)

Contenuti Parte I: Nozioni di base: struttura fisica e teorica dei computer Informazione e sua codifica vari livelli Linguaggi di marcatura: HTML ed XML Basi di dati e loro usi in campo umanistico Nozioni di linguistica computazionale Concetti e problematiche del “WEB 2.0”

Contenuti Parte II Introduzione generale alla programmazione: l'ambiente di lavoro, input, output Espressioni regolari e ricerca di stringhe in un testo Segmentazione del testo Raccolta di statistiche sui profili di occorrenza e co- occorrenza delle parole Misurare la somiglianza semantica tra parole con metodi geometrici

Bibliografia Parte I: Parte II (inizio: 5 novembre) Lazzari, et al. “Informatica Umanistica”, McGraw Hill. 2010 Materiali sul sito (Note del docente,siti web) Parte II (inizio: 5 novembre) Qualsiasi manuale introduttivo sul linguaggio Perl Note del docente (Marco Baroni)

Bibliografia (IU-C) Per chi segue per dare IU-C: Castano, Ferrara e Montanelli "Informazione, conoscenza e web per le scienze umanistiche",Pearson Addison Wesley, 2009 Ciotti Testi elettronici e banche dati testuali: problemi teorici e tecnologie, disponibile online. Materiali sul sito (Note del docente,siti web)

Credits Slide adattate e modificate da materiali su web di: Massimo Poesio Roberta Cuel Ciotti e Roncaglia … A tutti, grazie!

email Marco Baroni: marco.baroni@unitn.it Roberto Zamparelli: roberto.zamparelli@unitn.it 11

La madre di tutte le domande su questo corso: Perché mai uno studente di Lettere & Filosofia dovrebbe seguire un corso di informatica? 12

Tre risposte Per motivi PRATICI generali Per motivi SPECIFICI alle materie umanistiche Per motivi SOCIALI e CULTURALI 13

Informatica come strumento pratico Saper usare strumenti informatici per Email Web Composizione di un documento Uso di spreadsheet (“fogli di calcolo”) o di un database fa ormai parte delle qualificazioni di base richieste per qualunque professione Un sito web e’ ormai un modo standard per distribuire informazioni e farsi pubblicita’ Anche un sito molto semplice puo’ essere utilissimo! 14

Informatica come strumento culturale (anche per le discipline umanistiche) Storici, materie letterarie: Archivi di testi con possibilità sofisticate di ricerca Analisi di testo (per esempio, riconoscimento di autori) Archeologia: strumenti CAD/GIS per visualizzare ed analizzare reperti Beni culturali: Database di immagini Analisi di oggetti d’arte Lingue, mediazione linguistica: Dizionari online, creazione di dizionari Traduzione automatica e aiutata dal computer 15

Informatica come strumento sociale Importanza degli strumenti informatici per la comunicazione e l'informazione diffusa “Social network” (Facebook, Twitter, Google+,...) Wikipedia, Youtube, etc. “Cloud computing” (I nostri dati e programmi in mano altrui) Questi strumenti non sono “neutrali”, ed è cruciale capire in che direzione ci spingono e quale effetto hanno su di noi e sulla società. Chi li controlla? 16

Concetti scientifici entrati nell’uso comune Dalla fisica: Entropia Relatività Principio di indeterminazione Dall’informatica: Informazione, codice (e crittografia) Digitale vs. analogico Bootstrapping Computabilità e suoi limiti 17

Nozioni di base: Modelli teorici della computazione: algoritmi Modelli matematici della computazione: la macchina di Turing 18

I: MODELLI TEORICI DELLA COMPUTAZIONE Un PROGRAMMA e’ un ALGORITMO posto in forma comprensibile al computer Il nome ALGORITMO non e’ stato inventato dagli informatici ma dai matematici Deriva dal nome del matematico persiano Muhammad ibn Mūsa 'l-Khwārizmī che attorno all’825 scrisse un trattato chiamato Kitāb al-djabr wa 'l- muqābala (Libro sulla ricomposizione e sulla riduzione) AL-KHWARIZMI  ALGORISMO  ALGORITMO ALGEBRA  AL-DJABR 19

ALGORITMO Definizione informale di ALGORITMO: una sequenza FINITA di passi DISCRETI e NON AMBIGUI che porta alla soluzione di un problema 20

UN PROBLEMA E IL SUO ALGORITMO: IL MASSIMO COMUN DIVISORE 21

MCD: UN ALGORITMO ELEMENTARE A scuola si impara un algoritmo molto semplice per calcolare MCD: la SCOMPOSIZIONE IN FATTORI PRIMI 42 = 2 x 3 x 7 56 = 2 x 2 x 2 x 7 Algoritmo MCD(M, N): Scomponi M ed N in fattori primi Estrai i componenti comuni e moltiplicali Questo metodo si può solo applicare per numeri piccoli (la scomposizione in fattori primi richiede molto tempo) 22

MCD: ALGORITMO DI EUCLIDE I moderni calcolatori non usano l’algoritmo elementare per calcolare il MCD, ma un algoritmo molto piu’ efficiente la cui prima menzione e’ negli Elementi di Euclide, e che divenne noto agli occidentali tramite Al- Khwarizm Vedi p.es. http://www.webfract.it/MATJAVA/MCD1.htm 23

Esempio linguistico: il copista frettoloso Nelmezzodelcammindinostravita Miritrovaiperunaselvaoscura chéladirittaviaerasmarrita. Ahquantoadirqualeraècosadura estaselvaselvaggiaeaspraeforte Come poter riinserire automaticamente gli spazi omessi dal copista frettoloso?:

Esempio linguistico: il copista frettoloso Nelmezzodelcammindinostravita Miritrovaiperunaselvaoscura chéladirittaviaerasmarrita. Ahquantoadirqualeraècosadura estaselvaselvaggiaeaspraeforte Ingredienti: lessico del linguaggio dantesco, un sistema per leggere singoli caratteri

Idea generale (prima versione ) Si legge un carattere alla volta, accumulando i caratteri in una stringa (= una sequenza di caratteri). Appena la stringa è una parola del lessico, si inserisce uno spazio. Questo algoritmo richiede dei test (punti di scelta), rappresentabili come rombi in un diagramma di flusso

Diagrammi di flusso TEST AZIONE A SI NO Legenda Rombi = test Rettangoli = azioni Frecce = passaggio AZIONE B

Iinizia da una casella di partenza (qui in verde) e si seguono le frecce.Quando si incontra un rombo, si verifica se la condizione è soddisfatta o meno, e si prosegue attraverso la freccia "Si" o quella "No", a seconda dei casi.  L'algoritmo termina se arriva in ogni caso ad una posizione terminale (qui "Successo!" o "Fallimento"); non termina se entra in un circolo chiuso.

Limiti dell’algoritmo? Nelmezzodelcammindinostravita  Miritrovaiinunaselvaoscura …

Inserimento spazi, take 2 :   Inserimento spazi, take 2 “Prendi sempre la parola più lunga possibile”

Spazi in Dante, take 3 "Scegli la parola più lunga possibile, ma se con questa scelta non riesci a completare il verso, ritorna sui tuoi passi e scegline un'altra.” (“backtracking” – dettagli del meccanismo non rappresentati)

Algoritmo 3: risultati Nelmezzodelcammindinostravita Nel--mezzo--del--cammin--*dino--stravita ("Fallimento! ritorna a *) Nel--mezzo--del--cammin--di--nostravita Nel--mezzo--del--cammin--di--nostra—vita …

MODELLI MATEMATICI DELLA COMPUTAZIONE 33

Le funzioni di un computer elaborare l’informazione usando il processore (Central Processing Unit - CPU) memorizzare l’informazione usando la memoria principale (RAM) usando la memoria secondaria (MEMORIA PERMANENTE) fare l’input/output dell’informazione elaborata usando i dispositivi di input/output 34

COMPUTAZIONE E MEMORIA IN UN COMPUTER INPUT OUTPUT MEMORIA CPU Istruzioni Dati L’ idea che sia dati che programmi possono essere rappresentati in memoria – che i programmi sono anche loro una forma di dati - e’ una delle intuizioni fondamentali dell’informatica 35

LA MACCHINA DI TURING 36

LA MACCHINA DI TURING... È una descrizione estremamente astratta delle attivita’ del computer, che pero’ cattura il suo funzionamento fondamentale Basata su un’analisi di cosa fa un calcolatore (umano o meccanico) Alan Turing, 1912-1954 37

COMPUTAZIONE E MEMORIA NELLA MACCHINA DI TURING In una macchina di Turing abbiamo: Una ‘CPU’: Un programma: un insieme di regole che determinano il comportamento della testina a partire dal suo stato e dal simbolo letto (= sistema operativo) una testina che si trova in ogni momento in uno fra un insieme limitato di stati interni e che si muove sulla memoria, leggendone e a volte modificandone il contenuto. Una ‘MEMORIA’: un nastro di lunghezza indefinita, suddiviso in cellette che contengono simboli predefiniti (ad es. ‘0’e ‘1’); 38

FUNZIONAMENTO DI UNA MACCHINA DI TURING 39

UNA DIMOSTRAZIONE DEL FUNZIONAMENTO DELLA MACCHINA DI TURING Simulazioni di Macchina di Turing su web: http://ironphoenix.org/tril/tm/ 40

MACCHINA DI TURING UNIVERSALE Nelle macchine di Turing piu’ semplici, si trova una distinzione molto chiara tra PROGRAMMA (= gli stati) e DATI (= contenuto del nastro) Turing pero’ dimostro’ che era possibile mettere anche il programma sul nastro, ed ottenere una macchina di Turing ‘universale’ – che LEGGEVA sul nastro la prossima istruzione da eseguire prima di leggere i DATI su cui occorreva eseguirla I computer moderni sono macchine di Turing universali. 41

ALCUNI RISULTATI DIMOSTRATI USANDO IL MODELLO DI TURING Non tutte le funzioni sono CALCOLABILI Ovvero: non e’ possibile scrivere un algoritmo per risolvere qualunque problema in modo ESATTO ed in tempo FINITO Il PROBLEMA DELL’ARRESTO (HALTING PROBLEM): non e’ possibile dimostrare che una macchina di Turing universale si fermera’ o meno su un programma specifico Questi risultati valgono per qualunque calcolatore, ammesso che valga la TESI DI CHURCH-TURING (per cui si veda p.es. http://unipa.cblue.org/ia/TesiCTIta.pdf ) 42

DALLA MACCHINA DI TURING AI COMPUTER MODERNI La macchina di Turing aiuta a capire come sia possibile manipolare informazione in base a un programma, leggendo e scrivendo due soli simboli: ‘0’e ‘1’ Da questo punto di vista, pur essendo un dispositivo ideale, la macchina di Turing è strettamente imparentata col computer 43

PROGRAMMI E DATI La macchina di Turing ci aiuta a capire la differenza tra programmi e dati. Programmi: I programmi: sequenze di istruzioni per l’elaborazione delle informazione Definiscono quale debba essere il comportamento del processore Dati: Distinzione tra dato e informazione: Dato: sequenza di bit, può essere interpretato in più modi diversi Informazione: dato + significato del dato 44

STORIA DEI COMPUTER ELETTRONICI Ispirati alla macchina di Turing 1936 Konrad Zuse costruì in casa lo Z1 usando i relè; 1941 c/o politecnico di Berlino Z3; 1942 macchina per il computo elettronico (Satanasso-Berry- Computer). La memoria erano condensatori fissati ad un grande tamburo cilindrico di 1500 bit; 1943 COLOSSUS, costruito e rimasto segreto fino al 1970. Memorizzazione di dati in aritmetica binaria basati sulla ionizzazione termica di un gas 45

SVILUPPO DEI CALCOLATORI ELETTRONICI 1943-46 ENIAC (Electronic Numerical Integrator and Computer) sviluppato da Eckert & Mauchly Logica DECIMALE 30 armadi x 3m, 30t per una superficie di 180mq, 300 moltiplicazioni al secondo fino al 1973 ritenuto il primo calcolatore elettronico ‘programmabile’ (riconnettendo i circuiti!!) 1945-49 EDVAC (Electronic Discrete Variable Automatic Computer ) Primo computer basato sull’ “Architettura di von Neumann” (dovuta a Eckert, Mauchly & von Neumann): programmi immagazzinati in memoria Logica BINARIA 46

ARCHITETTURA ‘DI VON NEUMANN’ Eckert e Mauchly, dopo aver sviluppato ENIAC, proposero un modello in cui i programmi erano immagazzinati direttamente in memoria. (Mentre in ENIAC il programma doveva essere codificato direttamente in hardware). Il modello teorico che ne risulto’ – l’Architettura “di Von Neumann” influenzò direttamente la realizzazione di EDVAC (Electronic Discrete Variable Automatic Computer) 47

DA ZUSE A EDVAC 48

DOPO EDVAC 1948: primo computer commerciale (UNIVAC) 1954: primo computer a transistors (Bell Labs) ~1960: valvole sostituite da transistors 1971: primo microprocessore (Intel 4004) 1975: primo microcomputer (Altair) 1975: fondazione di Microsoft 1976: Apple I e Apple II 1979: primo Spreadsheet (VisiCalc) 49

PROSSIME LEZIONI Architettura di Von Neumann Rappresentazione dei dati 50

LETTURE Storia dell’Informatica Wikipedia: http://it.wikipedia.org/wiki/Storia_dell%27informatica Wikipedia: http://it.wikipedia.org/wiki/Storia_del_computer Paul Ceruzzi, Storia dell’Informatica, Apogeo Macchina di Turing on-line http://www.warthman.com/ex-turing.htm (solo addizione) http://ironphoenix.org/tril/tm/ 51