Digital humanities
Prima lezione — 6 CFU - 30 ore
Dal 5 marzo al 9 aprile: giovedì 10-12
Dal 16 aprile al 14 maggio + 28 maggio: 10-13
21 maggio non ci sarà lezione
Obiettivi
Introdurre dei concetti fondamentali dell’informatica esplorando le connessione con le discipline umanistiche e l’impatto dell’informatica sulla società.
Temi trattati
- Informazione
- Algoritmo
- Calcolatore
- Risoluzione di problemi
- Intelligenza artificiale e apprendimento automatico
- Impatto etico e sociale dell’intelligenza artificiale
- Programmazione (con attività pratica)
Esame scritto
- 10 domande a risposta multipla (2 punti ciascuna)
- 2 domande aperte a risposta aperta: 1 su parte teorica e 1 su parte pratica (5 punti ciascuna)
Appelli
- 3/6/26 – 12/6/26
- 15/6/26 — 3/7/26
- 6/7/26 — 24/7/26
Le slides e la partecipazione attiva a lezione sono sufficienti per preparare l’esame.
Assunzione comune
Quando pensiamo all’informatica cosa pensiamo?
Informatica = computer —> quindi chi studia l’informatica è un programmatore
Questa è l’associazione comunemente diffusa.
Dijkstra — esiste un algoritmo che porta il suo nome — lui è famoso anche per una frase: “l’informatica sta ai computer tanto quanto l’astronomia sta ai telescopi”
➔ Infatti non diremmo mai che l’astronomia studia i telescopi. È più nell’informatica che c’è questa tendenza ad associare la disciplina al dispositivo che viene utilizzato per sviluppare la disciplina.
Se l’informatica non è riducibile a un dispositivo che cosa è?
Etimologia
Il termine “informatica” è stato introdotto da Philippe Dreyfus, un informatico e matematico francese. Si tratta di un neologismo introdotto negli anni ’60 —> informatique = information + automatique
La parola informatica nasce dalla congiunzione di questi due concetti: informazione e automazione.
Se si volesse spiegare quindi in poche parole cosa è l’informatica si può dire che l’informatica è lo studio dell’elaborazione automatica dell’informazione.
(I primi calcolatori erano delle persone, e non ci si riferiva a dei dispositivi)
Definizione di informatica (redatta dalla Association for Computing Machinery - ACM) —> associazione mondiale di informatici
“È lo studio sistematico dei processi algoritmici — che includono la teoria, l’analisi, la progettazione, l’efficienza, l’implementazione, l’applicazione — che descrive e trasforma l’informazione.”
Quindi lo studio degli algoritmi che descrivono e trasformano l’informazione.
L’informatica si occupa di informazione, che è il suo oggetto di studio, ed è interessata allo studio di questi processi algoritmici, che descrivono e trasformano l’informazione in una forma automatica. Questo studio sistematico include la teoria, l’analisi, l’efficacia, l’implementazione ecc…
Si parla di studio dell’informazione e i dispositivi passano in secondo piano.
Che cosa si intende con la parola informazione?
Claude Shannon, che si è occupato di aspetti molto teorici dell’informatica, è il padre della teoria dell’informazione.
Se noi oggi codifichiamo l’informazione con i bit lo dobbiamo a Claude Shannon che ha inventato la teoria dell’informazione.
Lui parte da questo presupposto: “non dobbiamo aspettarci un singolo concetto di informazione che soddisfi, che renda conto di tutti i significati”
Infatti, esistono tanti modi per parlare di informazione:
- L’andamento dei mercati
- Giornalismo
- DNA — l’informazione è anche quella veicolata dal DNA — le istruzioni che permettono alle molecole di sviluppare la crescita di un organismo, di trasmettere i dati necessari per consentire lo sviluppo e la sopravvivenza degli organismi, si parla di informazioni genetiche
Visione tripartita dell’informazione
- Problemi tecnici: studiare l’informazione da un punto di vista tecnico, in cui l’interesse è sulla sintassi, sulla quantificazione, ovvero noi approcciamo l’informazione non tanto per quello che significa ma per osservarne le regole che governano l’informazione (la sua trasmissione ad esempio) o che permettono di quantificarla (quindi c’è un approccio quantitativo, che guarda più alla forma, non al contenuto)
- Problemi semantici: problemi di contenuto, che riguardano il significato e la verità dei messaggi. Lo studio vuole verificare il valore di verità di una determinata espressione. Quindi il primo approccio guarda ai segni, il secondo a quello a cui i segni si riferiscono
- Problemi di influenza: guarda all’impatto, all’influenza, ai problemi degli effetti che l’informazione può avere sui comportamenti umani.
Nell’ambito informatico noi ci concentriamo sui problemi di natura tecnica con un approccio sintattico; quindi, quando noi parliamo di informazione in ambito informatico ci riferiamo a:
- Analisi dei simboli e delle loro relazioni (sintassi) senza preoccuparsi del significato —> osservare i simboli e misurare quanta informazione i simboli possono veicolare.
L’approccio guarda quindi la sintassi, le regole, i simboli e agli aspetti quantitativi, ovvero la domanda di fondo è quanta informazione un evento/un messaggio può portare? Per misurare quanta informazione un messaggio porta si utilizzano i byte.
Cosa è un byte? Un’unità di misura elementare che può assumere due valori: 0 o 1.
- Teoria dell’informazione di Claude Shannon
- Quantità di informazione
Quantità di informazione
La teoria dell’informazione si occupa di studiare la quantità di informazione un evento può portare, quindi quanta informazione porta un evento. Questa quantità dipende dal numero di alternative possibile e dalla loro probabilità.
Esempi di alternative e probabilità
Se io faccio la domanda: “Piove?” La risposta può essere sì o no
“Piove?” —> SÌ/NO, solo 2 alternative
Ma se io faccio 2 domande:
“Piove?”; “Tua moglie è a casa?” —> “Sì/No”; “Sì/No”
Qui le risposte sono 2, e ci saranno 4 alternative possibili
Sì/sì — sì/no — no/sì — no/no
Se si tratta di domande chiuse a cui posso rispondere con sì o no, più faccio domande più io ricevo risposte e il numero di alternative possibili cresce.
Con N domande (binarie), abbiamo 2N alternative
Es. 2 domande — le alternative possibili sono 22 = 4
Tutte le combinazioni possibili dipendono dal numero di eventi, di messaggi, di domande che io faccio. Più alternative ho, più informazione ho.
Ma dobbiamo considerare anche la probabilità.
Se chiedo “Piove?” e sono a Londra, la probabilità che sia Sì è più alta. Se io la faccio a novembre questa probabilità si alza ancora di più, quindi non è solo da considerare l’alternativa singola SÌ o NO, ma anche il contesto — la probabilità che piova a Londra è abbastanza alta.
Se sono ai Caraibi la probabilità è molto più bassa, scende drasticamente. Quindi il contesto va a cambiare anche la probabilità di una risposta del messaggio.
Se un evento è poco probabile, porterà più informazione.
Se noi ci aspettiamo la risposta acquisiremo poca informazione. Se io sono alle Maldive e rispondo che piove, vuol dire che porto tanta informazione, perché rispetto ad un contesto in cui mi aspetterei un'altra risposta (dove mi immagino sole, caldo, spiagge) c’è tutto il contrario di quello che mi aspetto.
Quindi le due intuizioni attorno al quale si costruisce la misurazione dell’informazione nell’informatica: il numero di alternative (che si costruisce sempre sulla base binaria e determinato dal numero di domande) e dalla probabilità che ciascuna alternativa ha.
S (sorgente) —> codificatore —> canale —> decodificatore —> D (destinatario)
La sorgente invia messaggi, trasmette dei messaggi, e per farlo ha bisogno di una codifica, perché li trasmette in un canale, e il canale può avere una sua codifica, ovvero delle regole che codificano quello che vogliamo dire, non utilizziamo il linguaggio naturale, ma un altro linguaggio.
Il codificatore invia un messaggio attraverso il canale e poi questo messaggio viene decodificato e restituito ad un destinatario.
Il canale potrebbe avere delle interferenze, i cosiddetti rumori. Il canale potrebbe compromettere l’integrità del messaggio.
La teoria dell’informazione cerca di calcolare la quantità di byte necessari per codificare il messaggio. Quanti byte mi servono?
La quantità di byte necessari per codificare l’informazione consiste nell’entropia.
Entropia: quantità di informazione che viene portata da un messaggio
Quanta informazione il messaggio mi porta è determinato dal numero di byte che mi serve per codificarlo. È come se la quantità del messaggio fosse determinata dalla sua misura, il numero di byte, rappresenta la quantità di informazione.
E quando parliamo di entropia, ovvero di quantità d’informazione, ne parliamo nel senso di prima, ovvero della quantità di “sorpresa” —> più un'informazione è sorprendente tanti più byte richiederà perché porta più informazione.
Invece un'informazione che non è così sorprendente, richiederà meno byte, quindi meno informazione.
L’obiettivo è mandare dei messaggi e cercare di non mettere più byte del necessario, ovvero vorrei cercare di utilizzare il numero di byte necessari per mandare un messaggio integralmente che arrivi a destinazione, senza sprecare byte.
Proprio perché il canale è inaffidabile devo fare in modo che se qualche byte si perde, di recuperarlo, o comunque cercare di fare in modo che il destinatario comunque recuperi l’informazione. È quindi un bilanciamento fra efficienza e affidabilità.
A volte essere un po’ più ridondanti, cioè aggiungere dei byte in più, ripetere delle informazioni perché se so che è un canale molto rumoroso, c’è alta probabilità che qualche byte si perda.
H = entropia
Px = probabilità dell’evento
Log2 = base due perché stiamo lavorando con valori binari
(1/px) — uno fratto la probabilità di X
In media per mandare ciascun di questi messaggi avrò bisogno meno di un byte, insomma un byte mi è sufficiente.
Quindi l’entropia calcola quanti byte mi servono se devo mandare quei messaggi.
Possiamo codificare, utilizzo un meccanismo di traduzione, per cui ogni messaggio può utilizzare 1 byte. Che potrà assumere valore 0 o 1 –> che significa? Che se mando 1 sarà C.
Come viene elaborata l’informazione, cosa significa elaborare automatica? In che cosa consiste questa descrizione e trasformazione?
Elaborazione dell’informazione
Consiste nel calcolarla —> al cuore della disciplina informatica sta il concetto astratto di calcolo: (siamo spesso inclini a pensare che sia un qualcosa di matematico, ma in realtà è qualcosa di più astratto) una serie di azioni che consentono di manipolare un insieme di simboli.
Ho dei segni, e faccio delle operazioni su questi simboli.
Quiz: che cosa studia principalmente la teoria dell’informazione?
Risposta: Il modo in cui l'informazione viene trasmessa da una sorgente a un destinatario e quanti bit servono per codificare un messaggio.
Radici dell’informatica: da dove nasce la disciplina?
Due rami che hanno influenzato la nascita dell’informatica:
- Radice logica (filosofia, logica e matematica…) —> filone più astratto
- Radice ingegneristica (fisica, meccanica…) —> filone più ingegneristico
Questa distinzione non è formalizzata, però la ritroviamo un po’ nel libro di Martin Davis. Gli studiosi degli anni 40 si erano ritrovati per studiare il primo calcolatore elettronico, l’ENIAC, e dovevano studiare le versioni successive —> però si creano delle dispute fra due gruppi: il gruppo dei logici e quello degli ingegneri.
Qualche intuizione che ha dato vita all’informatica da un punto di vista più logico-matematico… attraverso il libro di Martin Davis che fa una carrellata di biografie.
Il filone logico: Gottfried Leibniz
Siamo nel 1600, Leibniz nasce in Germania. Lui si occupa di filosofia, di giurisprudenza, e soprattutto di matematica —> a lui dobbiamo lo studio del calcolo infinitesimale (delle derivate, degli integrali), ma dobbiamo a lui anche la notazione che usiamo, i simboli che usiamo per indicare gli integrali.
- Germania, Lipsia, 1649
- Famoso sia nella storia della filosofia sia della matematica
- Inventò il calcolo infinitesimale
Il sogno di Leibniz
“Idea meravigliosa”
Elabora un’idea di un linguaggio che possa esprimere le idee, i pensieri e le relazioni logiche fra i pensieri, e inizia a pensare se sia possibile creare un linguaggio nuovo, mai esistito in grado di esprimere i pensieri e di validare gli enunciati. Cioè è possibile costruire un linguaggio in grado di esprimere enunciati/ragionamenti validi, di cui possiamo valutare se un enunciato è vero o no.
Il suo sogno: “creare un linguaggio per mezzo di calcoli simbolici, rappresentare i pensieri umani attraverso dei simboli e poi rappresentare ed esprimere le relazioni tra il pensiero attraverso un linguaggio, che esprima quindi le relazioni logiche tra i pensieri”
“Creare un linguaggio che è, per mezzo di calcoli simbolici, potesse stabilire quali enunciati erano veri e quali relazioni logiche intercorrevano fra essi”
Leibniz prende spunto dalla geometria e dall’aritmetica — il suo ideale per costruire questo linguaggio nuovo sono proprio la geometria e l’aritmetica.
“È evidente che, se potessimo trovare caratteri o segni adatti a esprimere tutti i nostri pensieri con la stessa chiarezza e precisione con cui l’aritmetica esprime i numeri o la geometria esprime le linee, potremmo fare in ogni ambito - nella misura in cui esso sia soggetto al ragionamento - tutto ciò che possiamo fare nell’aritmetica e nella geometria.”
Per realizzare questo progetto erano necessari 2 elementi:
- Caratteristica: un sistema di simboli simile a quello dell’algebra per rappresentare delle idee ben definite — quindi un sistema non ambiguo, dove non c’è spazio per l’interpretazione. Questo sistema simbolico lo chiama “caratteristica”
- Ma inoltre vi è bisogno di fare un calcolo: lui parla di “calcolo raziocinato”: e parla di calcolo che aiuti ad esprimere, a manipolare questi simboli. Quindi un insieme di regole per manipolare i simboli. Però ricorda che l’interpretazione non è possibile.
- Non si tratta di un linguaggio naturale, ma un linguaggio formale.
Leibniz non porta a termine il suo progetto, ma viene ripreso da George Boole.
George Boole
Conosciuto spesso per l’informatica perché lui si avvicina all’informatica proprio attraverso le idee di Leibniz, si appassiona e studia Leibniz.
- Nato a Lincoln (Inghilterra) nel 1815
- Costretto a trovare lavoro per supportare la famiglia
- Apprende e studia la matematica come autodidatta —> non ha potuto fare l’università
- I suoi scritti giovanili testimoniano una fede leibniziana
- Nel 1849, nonostante non avesse una laurea, gli fu offerta la prima cattedra di matematica al Queen’s College di Cork (Irlanda)
Lui comincia a ragionare secondo la logica del tempo, ovvero quella aristotelica (le deduzioni, gli enunciati, i quantificatori, tutte le relazioni fra enunciati per dedurre da premesse delle conclusioni). Attraverso le idee di Leibniz inizia a chiedersi: ma se noi abbiamo degli enunciati in cui i termini vengono descritti da dei predicati, come “buono”, “bianco”, noi potremmo rappresentare i predicati e le cose che hanno quella qualità attraverso dei segni, dei simboli.
Per esempio:
“Se come termine di una descrizione usiamo un aggettivo, per esempio ‘‘buono’’, con una lettera, y, rappresenteremo tutte quelle cose alle quali può applicarsi la descrizione ‘‘buono’’, vale a dire ‘‘tutte le cose buone’’, o la classe ‘‘cose buone’’.
Inoltre, inizia a ragionare sul fatto che questi simboli possono essere combinati.
“Conveniamo inoltre di rappresentare la combinazione xy la classe di cose a cui sono applicabili, simultaneamente, i nomi o le descrizioni rappresentati da x e da y. Così se x da solo sta per ‘‘cose bianche’’ e y sta per ‘‘animali’’, xy starà per ‘‘animali bianchi’’.
Inizia quindi a pensare ai predicati come degli insiemi: si utilizzano dei simboli per andare a rappresentare delle cose che hanno quella determinata qualità.
Lui non si ferma qui, a fare questi ragionamenti, perché una volta che ho questa rappresentazione insiemistica dei predicati e degli oggetti, si chiede che tipo di operazioni possono essere fatte:
Inizia a pensare a un’algebra della logica: si possono avere delle operazioni semplici come ci sono nell’aritmetica; la somma, la moltiplicazione ecc…, e le possiamo applicare agli insiemi.
- Se io provo a pensare alla moltiplicazione
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.