Mondo della computazione Mondo della Vita Parlare del mondo Linguaggi di programmazione Modelli computazionali Linguaggio naturale Macchina Mondo percezioni Modelli mentali conoscenza Rappresentazione del mondo Ragionamento
Mondo della computazione Mondo della Vita Programmazione classica ALGORITMO DATI Struttura dati Parlare del mondo Linguaggi di programmazione Modelli computazionali Linguaggio naturale Macchina Mondo Turing Strumenti per scrivere algoritmi percezioni Modelli mentali conoscenza Rappresentazione del mondo Ragionamento
Mondo della computazione Mondo della Vita Programmazione classica I dati strutturati sono saldati agli algoritmi procedurale ALGORITMO DATI Struttura dati Parlare del mondo Macchina Linguaggi di programmazione Modelli computazionali Linguaggio naturale Mondo Turing percezioni Modelli mentali conoscenza Rappresentazione del mondo Ragionamento
Mondo della computazione Mondo della Vita Parlare del mondo Modelli computazionali Linguaggio naturale Macchina Linguaggi di programmazione Mondo percezioni Modelli mentali conoscenza Linguaggi formali Rappresentazione del mondo Rappresentazione della conoscenza Modelli concettuali Ragionamento Metodi inferenziali
Mondo della computazione Mondo della Vita Parlare del mondo Modelli computazionali Linguaggio naturale Macchina Linguaggi di programmazione Mondo Turing percezioni Modelli mentali conoscenza Linguaggi formali PROBLEM SOLVING METHOD DATI CONOSCENZA Rappresentazione del mondo Rappresentazione della conoscenza Programmazione AI Modelli concettuali Ragionamento Metodi inferenziali
Mondo della computazione Mondo della Vita Parlare del mondo Linguaggi di programmazione Modelli computazionali Linguaggio naturale Macchina Mondo Turing Strumenti per scrivere algoritmi percezioni Modelli mentali conoscenza Linguaggi formali PROBLEM SOLVING METHOD DATI CONOSCENZA Rappresentazione del mondo Rappresentazione della conoscenza Programmazione AI Modelli concettuali Ragionamento dichiarativo La conoscenza è separata dagli algoritmi Metodi inferenziali
Mondo della computazione Mondo della Vita Programmazione classica I dati strutturati sono saldati agli algoritmi procedurale ALGORITMO DATI Struttura dati Parlare del mondo Linguaggi di programmazione Modelli computazionali Linguaggio naturale Macchina Mondo Turing Strumenti per scrivere algoritmi percezioni Modelli mentali conoscenza Linguaggi formali PROBLEM SOLVING METHOD DATI CONOSCENZA Rappresentazione del mondo Rappresentazione della conoscenza Programmazione AI Modelli concettuali Ragionamento dichiarativo La conoscenza è separata dagli algoritmi Metodi inferenziali
L’implementazione delle rappresentazioni Linguaggio naturale e rappresentazioni visive Linguaggi formali e di programmazione La conoscenza e i suoi modelli
IL MODELLO CLASSICO Teleologia, la forma della perfezione
In un’accezione larga, i modelli sono spesso usati nella vita quotidiana. Ad esempio, quando diciamo che una persona o un animale è di un certo tipo esprimiamo un modello del comportamento che è nella nostra mente e che consente di prevedere il comportamento di una persona in una certa situazione.
Un altro esempio di modello è un modello verbale, nel quale il comportamento di un sistema in differenti condizioni è descritto a parole; ad esempio un modello verbale descrittivo del comportamento elettorale di un sistema democratico è: se il governo esprime una politica dannosa per i cittadini allora aumentano i voti per i partiti di opposizione.
Vi sono anche i modelli fisici Vi sono anche i modelli fisici. Esempi sono i modelli in scala ridotta di un’opera artistica o architettonica, oppure i prototipi che sono realizzati per effettuare dei test di resistenza meccanica o aerodinamica.
IL MODELLO MATEMATICO Un modello di un sistema esprime la conoscenza di un fenomeno e come tale consente di rispondere a domande sul sistema senza la necessità di compiere un esperimento. Esso costituisce quindi un potente mezzo di previsione e descrizione del comportamento di un sistema. Tipicamente il modello matematico di un sistema consiste in un’equazione differenziale che stabilisce una relazione tra le variabili d’ingresso e le variabili d’uscita di un sistema. La descrizione di un sistema in termini di ingressi ed uscite è detta descrizione ingresso uscita. Il legame matematico consente di determinare le uscite a partire dagli ingressi e quindi di studiare la dinamica o il comportamento di un sistema in un certo ambiente.
Esempio: Modello matematico di un sistema idraulico Il serbatoio in figura è caratterizzato dalla portata d’ingresso qi e dall’altezza del battente idrico h che rappresenta la variabile d’uscita. Assumendo un serbatoio di sezione costante A, il volume di liquido risulta: V=Ah. h qi(t) Per la legge di conservazione della massa (legge di continuità) si ha che
Procedurale e Dichiarativo La conoscenza è separata dagli algoritmi I dati strutturati sono saldati agli algoritmi Procedure Rappresentazione della conoscenza Aspetto modellistico Aspetto inferenziale: il Calcolo logico Prendi due numeri A e B Dividi A per B E memorizza il resto C C è zero? Sostituisci A con B e B con C Ferma il calcolo e Stampa la risposta R. La conoscenza sul Mondo R. il Mondo Ragionamento Come è il mondo Cosa so del mondo Come fare quello che si deve fare (sulla base di ciò che so essere vero nel mondo) Reti semantiche Grafi concettuali Problem solving Conoscenza Logica
Rappresentazione della conoscenza Le reti semantiche costituiscono una classe di sistemi di rappresentazione tipici dell’IA, basati sull’idea generale di utilizzare come strumento di rappresentazione un grafo, in cui ad ogni nodo è associata un’entità concettuale di qualche tipo ( ad esempio concetto, il significato di un enunciato, o il significato di un elemento lessicale) Le relazioni di tipo logico o associativo fra entità concettuali diverse sono rappresentate mediante gli archi che connettono i nodi I tipi di nodi e di archi che è possibile utilizzare, la loro interpretazione, le regole sintattiche che permettono di comporli in una rete, ed i meccanismi di inferenza che sono definiti sulle reti variano notevolemente nei molteplici sistemi di rappresentazione che sono stati via via elaborati
Evoluzione degli alberi Le Reti semantiche Nascono dentro lo studio per il trattamento formale del linguaggio naturale Possono essere viste come evoluzione ‘orizzontale’ di alberi L’idea di fondo è che il significato di un concetto derivi dalle relazioni che lo collegano ad altri concetti
Rappresentare enti e relazioni Il "significato" di un concetto e' l'insieme di tutti i nodi che possono essere raggiunti a partire dal nodo che la rappresenta La rete semantica asserisce il fatto intuitivo che la definizione di un oggetto non può fare a meno della definizione degli oggetti con cui e' in relazione e, in ultima analisi, del contesto in cui l'oggetto e' situato
Tavoli, tovaglie e posate Apparecchiare proceduralmente Scrivere un insieme di istruzioni definite sugli oggetti del dominio, e da eseguire per realizzare l’obiettivo di apparecchiare Prendi il piatto piano e spostalo in quella certa posizione del tavolo Prendi il bicchiere e mettilo in certe coordinate del tavolo Fai… … END Apparecchiare dichiarativamente Prima questione: Questione ontologica Come è fatto il mondo in cui si apparecchiano tavoli? Rappresentare il mondo Una tavola imbandita si compone di vari oggetti... QUALI???
Tavoli, tovaglie e posate Apparecchiare dichiarativamente Tavoli, tovaglie e posate Il mondo formalizzato in una rete semantica
Tavoli, tovaglie e posate Apparecchiare dichiarativamente Tavoli, tovaglie e posate Il mondo formalizzato in una rete semantica
Tavoli, tovaglie e posate Apparecchiare dichiarativamente Tavoli, tovaglie e posate Il mondo formalizzato in una rete semantica
Il problema: Apparecchiare Quali sono le conoscenze indispensabili per poter apparecchiare?
Le conoscenze per risolvere il problema Il modello in linguaggio naturale La tovaglia è appoggiata (z) sul tavolo Le posate sono appoggiate (z) sulla tovaglia Il piatto piano è appoggiato (z) sul piatto fondo La forchetta normale è alla sinistra (x) del piatto La forchetta da pesce è alla sinistra (x) del piatto Il coltello normale è alla destra (x) del piatto Il coltello da pesce è alla destra (x) del coltello normale Il cucchiaio normale è alla destra (x) del coltello da pesce Il tovagliolo è alla destra (x) del cucchiaio normale Il piattino per il pane è sopra (y) la forchetta normale La forchetta da dolce è alla destra (x) del piattino per il pane ed è sopra (y) il piatto Il cucchiaio da dolce è sopra (y) la forchetta da dolce Il bicchiere da acqua è alla destra (x) della forchetta da dolce ed è sopra (y) il coltello normale Il bicchiere da vino rosso è alla destra (x) del bicchiere da acqua Il bicchiere da vino bianco è alla destra (x) del bicchiere da vino rosso
Le relazioni tra gli enti rappresentati nella rete semantica
Le relazioni tra gli enti rappresentati nella rete semantica
Le relazioni tra gli enti rappresentati nella rete semantica
Grafi concettuali: uno strumento per parlare del mondo rappresentato in una rete semantica
Grafi concettuali A B C [A](B) [C]. Informalmente, un grafo concettuale è una struttura di concetti e di relazioni tra concetti, dove ogni arco collega alcune relazioni concettuali r a qualche concetto c. In un grafo concettuale, le scatole sono chiamate concetti, e i circoli sono chiamati relazioni concettuali A C B [A](B) [C].
Definizione Un grafo concettuale g è un grafo bipartito caratterizzato da due tipi di nodi chiamati rispettivamente, concetti e relazioni concettuali. Ogni arco a di g deve collegare una relazione concettuale r in g ad un concetto c in g. L’arco a è detto appartenente alla relazione r e attaccato al concetto c. Ma l’arco a non appartiene a c. Il grafo concettuale g può avere concetti non collegati ad alcuna relazione concettuale; ma ogni arco che appartiene a ciascuna relazione concettuale in g deve essere collegato ad uno e solo un concetto in g. g r a c
Campo del Tipo e campo del Referente Ogni concetto è caratterizzato da un tipo t e da un referente r Il tipo è normalmente scritto sul lato sinistro di un concetto, mentre il referente sul lato destro, ed i due campi sono separati da ‘due punti’. Consideriamo il seguente grafo concettuale, che rappresenta l’enunciato John sta andando a Boston [Persona: John] (Agente) [andare] (dest) [Città: Boston]
Quali enti quali relazioni [Persona: John] (Agente) [andare] (dest) [Città: Boston] Questo grafo contiene tre concetti: [Person: John], [andare] e [Città: Boston] Due relazioni concettuali: (Agente) collega [andare] all’agente John, e (dest) collega [andare] alla destinazione Boston. Ogni arco del grafo concettuale collega un concetto ed una relazione concettuale; non sono possibili archi che colleghino concetti a concetti o relazioni a relazioni.
Quali enti quali relazioni “Un gatto è seduto sullo zerbino” “Il gatto è seduto sullo zerbino”
Quali enti quali relazioni “Una scimmia sta mangiando una noce con un cucchiaio ricavato dal guscio della noce”
Quali enti quali relazioni “Una scimmia sta mangiando una noce con un cucchiaio ricavato dal guscio della noce”
Grafi e ontologia
Grafi concettuali: formalizzare il modello La tovaglia è appoggiata (z) sul tavolo Le posate sono appoggiate (z) sulla tovaglia Il piatto piano è appoggiato (z) sul piatto fondo La forchetta normale è alla sinistra (x) del piatto
La forchetta da pesce è alla sinistra (x) del piatto Il coltello normale è alla destra (x) del piatto Il coltello da pesce è alla destra (x) del coltello normale Il cucchiaio normale è alla destra (x) del coltello da pesce
Il cucchiaio da dolce è sopra (y) la forchetta da dolce Il tovagliolo è alla destra (x) del cucchiaio normale Il piattino per il pane è sopra (y) la forchetta normale La forchetta da dolce è alla destra (x) del piattino per il pane ed è sopra (y) il piatto Il cucchiaio da dolce è sopra (y) la forchetta da dolce
Il bicchiere da vino rosso è alla destra (x) del bicchiere da acqua Il bicchiere da acqua è alla destra (x) della forchetta da dolce ed è sopra (y) il coltello normale Il bicchiere da vino rosso è alla destra (x) del bicchiere da acqua Il bicchiere da vino bianco è alla destra (x) del bicchiere da vino rosso
Esempio di tema d’esame Usando appropriate relazioni concettuali e facendo attenzione a tipizzare solo quando necessario, tradurre in un grafo concettuale la seguente frase: “Matteo, ragazzo vivace, correndo in corridoio, inciampa nello skate regalatogli dal fratello Giovanni e da lui stesso lì abbandonato. La madre di Matteo e Giovanni si chiama Maria.”