Le sfide
dell’Informatica:
L’Intelligenza Artificiale
1
A.I.: Artificial Intelligence
E' solo fiction...?
2
Cos'è l'intelligenza?
In filosofia, per intelletto si intende quella facoltà
mentale che ha ogni essere umano di
comprendere la realtà e di farsi delle idee, la
quale comporta a sua volta la capacità di
scegliere, discernere, confrontare, comparare,
dissociare, associare, sintetizzare. L'insieme di
queste funzioni viene chiamata capacità
intellettuale.
3
Cos'è l'intelligenza?
In psicologia, l'intelligenza è l'insieme di funzioni
conoscitive, adattative e immaginative, generate
dall'attività cerebrale dell'uomo e di alcuni animali.
È anche definibile come la capacità di ragionare,
apprendere, risolvere problemi, comprendere a
fondo la realtà, le idee e il linguaggio. Sebbene
molti considerino il concetto di intelligenza in un
ambito più ampio, molte scuole di psicologia
considerano l'intelligenza come distinta da tratti
della personalità come il carattere, la creatività o
la saggezza.
4
Cos'è l'intelligenza Artificiale?
L’Intelligenza Artificiale, IA, è quella disciplina
appartenente all’Informatica che studia i
fondamenti teorici, le metodologie e le tecniche
che consentono di progettare sistemi hardware e
software capaci di fornire all’elaboratore
elettronico prestazioni che, a un osservatore
comune, sembrerebbero essere di pertinenza
esclusiva dell’intelligenza umana.
5
COSA È L‘INTELLIGENZA
ARTIFICIALE?
Studia il
modo di operare
del Cervello?
Costruisce
sistemi artificiali
intelligenti
Emula il cervello
umano?
Cosa è comportamento
intelligente?
Studia l’intelligenza
Ma cosa è l’Intelligenza?
6
IA: Scienza o Ingegneria?
L’IA è al tempo stesso scienza e ingegneria.
È una scienza perché, nel momento in cui
vengono emulati con determinati sistemi artificiali
alcuni dei comportamenti intelligenti, l’uomo
consegue l’obiettivo di formulare modelli oggettivi
e rigorosi e di ottenere conferme sperimentali; ciò
permette di ottenere un indiscutibile progresso
nello studio, svolto con metodi scientifici,
dell’intelligenza nell’uomo.
7
IA: Scienza o Ingegneria?
L’IA, inoltre, è ingegneria perché, quando si
ottengono dalle macchine prestazioni che
emulano taluni comportamenti, erroneamente
ritenuti inaccessibili all’ambito artificiale, si
fornisce un oggettivo progresso al contributo che
l’ingegneria (e le macchine progettate nel suo
ambito) offre al miglioramento della vita dell’uomo.
8
QUESTIONI FILOSOFICHE LEGATE
ALL’INTELLIGENZA ARTIFICIALE
E’ possibile costruire macchine in modo che agiscano
come se fossero intelligenti? Si però….
Ci sono cose che i computer non possono fare
indipendentemente da come li si programmi
(incompletezza dei sistemi formali);
Fallimento nel lungo periodo (apprendimento);
L’effettiva costruzione di programmi appropriati non
è fattibile (complessità della conoscenza).
E’ possibile costruire macchine che pensino
intelligentemente? (che abbiano menti coscienti
reali?) No perché…
9 di
solleva alcuni dei problemi concettuali più difficili
tutta la filosofia.
MACHINE INTELLIGENCE O
ARTIFICIAL INTELLIGENCE?
La definizione di “Machine Intelligence”
di A.G. OETTINGER nel 1952:
“The program [is] capable of performing
functions which, in living organisms, are
considered to be the result of intelligent
behaviour”
…e quella di “Artificial Intelligence”
di E.A. FEIGENBAUM & J. FELDMAN
in Computers and Thought nel 1963:
“Programs […] exhibit that we call
intelligent behaviour when we observe it 10in
human beings”
DEFINIRE IL “COMPORTAMENTO
INTELLIGENTE”
• Reagire in modo flessibile a situazioni diverse
• trarre vantaggio da circostanze fortuite e talora
imprevedibili
• ricavare un senso da messaggi ambigui e
contraddittori
• riconoscere la rilevanza dei diversi elementi in una
data situazione
• trovare somiglianze e analogie tra situazioni
differenti, nonostante elementi concreti di diversità
• notare distinzioni tra situazioni diverse, nonostante
elementi concreti di similitudine
• sintetizzare nuovi concetti, produrre idee nuove11
Storia dell'Intelligenza Artificiale
Data di nascita ufficiale: 1956, anno in cui, presso
il Dartmouth College di Hanover nel New
Hampshire, la nuova disciplina viene fondata
programmaticamente a partire dalla raccolta dei
contributi sviluppati negli anni precedenti e in
direzione delle potenzialità future.
12
Storia dell'Intelligenza Artificiale
... e prima del 1956?
- Automi semoventi di
Erone di Alessandria (I
sec. d.C.)‫‏‬
-Progetto di meccanizzare
la
ragione,
Gottfried
Wilhelm Leibniz (16461716)‫‏‬
- Macchina analitica di
Charles Babbage (17911871)
13
Storia dell'Intelligenza Artificiale
La IA ha ereditato molte idee, punti di vista e
tecniche da altre discipline, in particolare dalla
filosofia, dalla matematica e dalla psicologia.
Tuttavia, è senza dubbio con la cibernetica e
l’informatica che queste influenze si fanno
manifeste e aprono la strada alla nascita ufficiale
dell’IA.
14
IA e cibernetica
All’inizio degli anni Quaranta si
comincia a indicare con il
termine cibernetica lo studio
sistematico dei processi
riguardanti la comunicazione e
il controllo sia negli animali sia
nelle macchine.
Warren McCulloch e Walter Pitts
propongono nel 1943 il primo
modello di neuroni artificiali,
attingendo alla conoscenza della
fisiologia e delle funzioni di base
dei neuroni, alla logica e alla teoria
della computabilità di Alan Turing.
Per la prima volta si parla di reti
neurali.
15
IA e cibernetica
Nel 1949 Donald Hebb
dimostra come una
semplice
regola
di
aggiornamento
per
modificare le forze di
connessione
fra
i
neuroni possa dare
luogo a processi di
apprendimento.
Il tema dell’Apprendimento, centrale nelle reti
neurali, è quello sul quale si sono concentrate, dalla
metà degli anni Cinquanta, le ricerche in
Intelligenza Artificiale.
16
IA e macchina di Turing
Poiché per avere successo l’IA deve disporre di un
sistema artificiale nel quale riprodurre, emulandoli,
i fenomeni dell’intelligenza.
L’elaboratore elettronico è stato considerato fin
dall’inizio come il miglior candidato ad emulare il
comportamento intelligente.
Alla base dell’elaboratore vi è il concetto di
macchina di Turing.
17
IA e macchina di Turing
Il contributo di Alan Turing
(1912-1954) all’IA deve essere
riconosciuto
non
solo
nell’ambito
dei
fondamenti
dell’informatica, ma anche in
quello del dibattito filosofico
relativo
ai
limiti
e
alle
potenzialità
delle
nuove
“macchine pensanti”.
In un articolo del 1950 [Turing
1950], Turing propone il famoso
test che porta il suo nome per
verificare la presenza o meno di
intelligenza in una macchina.
19
DAL GIOCO DELL’IMITAZIONE AL TEST
DI TURING
Il test di Turing prende spunto da un gioco, chiamato
"gioco dell'imitazione", con tre partecipanti: un
uomo A, una donna B, e una terza persona C.
C è tenuto separato dagli altri due e tramite una
serie di domande deve stabilire qual è l'uomo e
quale la donna.
A deve ingannare C,
B deve aiutarlo.
Affinché C non possa disporre di alcun indizio (come
l'analisi della grafia o della voce), le risposte alle
domande di C devono essere dattiloscritte
20
DAL GIOCO DELL’IMITAZIONE AL
TEST DI TURING
Il test di Turing si basa sul presupposto che una
macchina si sostituisca ad A.
Se la percentuale di volte in cui C indovina chi sia
l'uomo e chi la donna è simile, prima e dopo la
sostituzione di A con la macchina, allora la
macchina stessa dovrebbe essere considerata
intelligente, dal momento che - in questa
situazione - sarebbe indistinguibile da un essere
umano.
21
IL TEST DI TURING :AGIRE COME
UN ESSERE UMANO
Un elaboratore “intelligente” dovrebbe agire come
un essere umano…,dunque, possedere capacità
connesse a:
 elaborazione del linguaggio naturale
 rappresentazione della conoscenza
 ragionamento automatico
 apprendimento automatico
 visione automatica, robotica, o movimento
automatico
22
UN ESEMPIO: ELIZA
D: Are you an artificial intelligent expert?
R: Oh, I am an artificial intelligent expert!
D: Did you ever teached an artificial intellignce course?
R: Oh, I ever teached an artificial intelligence course!
D: can you explain me the backword propagation algorithm?
R: Why do you ask?
23
Dartmouth, estate 1956
Nell’estate del 1956 un gruppo di studiosi si
riunisce al Dartmouth College con lo scopo di
esaminare la congettura che ogni aspetto
dell’intelligenza possa essere, in linea di principio,
descritto in modo tanto preciso da poter far sì che
una macchina lo simuli.
Questa data segna l’inizio ufficiale di una nuova
disciplina che il matematico John McCarthy
propose di chiamare intelligenza artificiale. Gli altri
organizzatori erano Marvin Minsky, Nathaniel
Rochester e Claude Elwood Shannon.
24
Dopo-Dartmouth: grandi
aspettative...
Quelli che seguono il seminario di Dartmouth sono
gli anni delle grandi aspettative.
Possono essere rilevate due tendenze: da una
parte il gruppo guidato da Newell, Shaw e Simon
interessato alla simulazione dei processi cognitivi
umani per mezzo dell’elaboratore (GPS. 1958:
paradigma della simulazione); dall’altra coloro che
miravano al raggiungimento della migliore
prestazione possibile per i programmi (paradigma
della prestazione o dell’emulazione). Furono
sviluppati i primi programmi in grado di risolvere
problemi di analogia nell’ambito di semplici figure
geometriche, o di manipolare tali figure
organizzandole in blocchi sovrapposti.
25
...e prime delusioni...
Ben presto però i ricercatori cominciano a
incontrare i primi insuccessi: metodi adeguati per
casi semplici si rivelano totalmente inadeguati in
contesti più complessi e ampi (mancanza di
scalabilità).
Le grandi aspettative iniziali devono fare i conti con
il fallimento dei progetti di traduzione automatica
fra linguaggi naturali, fallimento che causa il ritiro
delle ingenti sovvenzioni dei governi americano e
inglese.
26
…UNA DOSE DI REALISMO (19661974)
Si capì ben presto che un “comportamento intelligente”
non poteva esistere senza una dose di conoscenza che
aiutasse il sistema artificiale a definire i contesti, valutare
la debolezza di modelli teorici, utilizzare il buon senso. Si
svilupparono i primi Sistemi Basati su conoscenza.
Si svilupparono i Sistemi Esperti cioè programmi che
usano espeienza e sono in grado di fare inferenze per
risolvere problemi difficili, che di solito richiedono per la
soluzione una significativa dose di competenza e buon
senso.
DENDRAL (1969) deduceva strutture molecolari sulla
base di informazioni fornite da uno spettrometro di
massa. DENDRAL doveva il suo successo all’alto
numero di regole “ad-hoc” (euristiche) che gli specialisti
avevano codificato.
27
L’IA DIVENTA UN’INDUSTRIA (19801988)
• In questo periodo, soprattutto per via del
successo ottenuto in alcune specifiche aree
dai Sistemi Esperti, partono le prime
applicazioni industriali dell’ IA.
• Nel 1981, il governo giapponese annuncia il
progetto “Fifth Generation”, il cui obbiettivo era
di costruire architetture orientate ad
applicazioni di Intelligenza Artificiale.
• La Xerox, la Texas Instruments, e la Symbolics
costruiscono workstations orientate allo
sviluppo di applicazioni in Lisp.
28
QUARTA FASE (1988–1995)
La crisi e la ricerca di strade alternative
• Crolla la fiducia del mercato nei sistemi basati su
conoscenze, anche a causa di un incauto
overselling e dell’impossibilità di soddisfare le
attese.
• Si indagano approcci alternativi, denominati spesso
“subsimbolici” o “non simbolici”, in contrasto con
l’approccio simbolico tradizionale
• ad es. le reti neurali, la computazione evolutiva e
così via, noti anche come metodi di soft computing.
• Questi metodi si rivelano più adatti dei metodi
simbolici per certi tipi di problemi
• ad es. l’analisi di segnali, il pattern recognition, la
classificazione automatica e così via, ma in molte
applicazioni non eliminano la necessità di
29
rappresentare conoscenze simboliche.
RECENTEMENTE
Emerge l’esigenza di Lavorare a livello semantico:
Il Semantic Web
• Il grande successo del Web riporta in prima linea, in
forma nuova, la questione della rappresentazione
simbolica delle conoscenze.
• In questo campo i problemi più sentiti sono
• l’interoperabilità delle applicazioni e
• la gestione delle risorse in rete.
• Un concetto fondamentale è quello di rappresentare
e uilizzare conoscenza condivisa (ontologia),
• Una specifica esplicita e formale di una
concettualizzazione condivisa (Studer 98)
30
OGGI
Da un lato, l’Intelligenza Artificiale può beneficiare di
modelli teorici più stabili ed accurati, dall’altro,
l’attenzione è rivolta alla possibilità di costruire sistemi
funzionanti e utili.
Costruzione di Agenti Intelligenti in grado di apprendere
autonomamente, anche conoscenza in forma esplicita, e
darsi degli obiettivi.
Integrazione di approcci simbolici/logico-concettuali e
subsimbolici/numerico-statistici per apprendere.
Applicazioni orientate alla elaborazione di conoscenza
espressa in forma multimodale e multimediale (immagini,
testi, filmati, file audio etc.) nella filosofia IST
(Information Society Technology)
31
Cosa è un AGENTE?
gli agenti interagiscono con l’ambiente
attraverso sensori e attuatori
32
COSA È UN AGENTE?
PER AGENTE SI INTENDE UN SISTEMA
AUTOMATICO/PROGRAMMA CHE PORTA A
TERMINE COMPITI UTILI ED E’ CARATTERIZZATO
DAL FATTO DI ESSERE:
•AUTONOMO: l’azione è guidata da regole e direttive
“interne”
•REATTIVO: percepisce aspetti dell’ambiente e
reagisce in maniera appropriata
•PROATTIVO: può prendere iniziative e
intraprendere azioni in funzione di obiettivi
•SOCIALE: comunica con altri agenti
33
IN INTELLIGENZA ARTIFICIALE SI
PARLA DI
“AGENTI INTELLIGENTI”
Possiedono notevoli livelli di autonomia e
agiscono nel loro ambiente in maniera
soddisfacente, razionale, flessibile, anche in
presenza di informazione parziale o incerta,
esibendo un comportamento intelligente,
consapevole, talvolta mostrando buon senso,
una vera esperienza nel dominio nel quale
operano, capacità di ragionare.
34
Applicazioni dell'IA
L’interesse per i Sistemi basati su conoscenza e i
sistemi esperti è stato accresciuto dall’opportunità
di modellare e acquisire automaticamente la
conoscenza.
A partire da diverse ricerche precedenti negli ultimi
anni lo studio delle descrizioni formali di domini
specifici, la possibilità di utilizzare modelli della
realtà complessi e di integrare forme e media di
rappresentazioni diversi ha raggiunto un buon
grado di maturità e ha consentito di aprire nuovi
settori applicativi.
35
SISTEMI BASATI SU CONOSCENZA
(KNOWLEDGE BASED SYSTEMS)
Possiedono notevoli livelli di autonomia e agiscono nel loro
ambiente in maniera soddisfacente, razionale, flessibile,
anche in presenza di informazione parziale o incerta,
esibendo un comportamento intelligente, consapevole,
talvolta mostrando una vera esperienza nel dominio nel
quale operano.
Si basano su un processo di elaborazione dei dati che
riproduce i ragionamenti complessi tipici della mente
umana.
Il risultato dell’elaborazione consiste in una nuova
conoscenza prodotta dal computer, anziché nel
reperimento di informazioni fornite al computer (come 36
avviene con i sistemi informativi).
Applicazioni dell'IA
Elaborare e costruire Conoscenza.
La dimostrazione automatica di teoremi matematici
volta a scoprire e provare nuovi teoremi
nell’aritmetica, nella geometria, nella logica e nella
meccanica è stato uno dei primi ambiti applicativi.
In seguito i ricercatori si sono interessati
prevalentemente allo sviluppo di tecniche
inferenziali generali che, da un dato insieme di fatti,
consentano di dedurre/indurre fatti nuovi o loro
proprietà e relazioni, fare analogie, scoprire modelli
causali, scoprire nuove teorie.
37
Applicazioni dell'IA
La pianificazione autonoma di
attività e operazioni è l’area che più
interessa la produzione industriale
e la logistica, ma anche la ricerca
spaziale (ad es. il controllo di sonde
spaziali).
I sistemi che operano in quest’area
sono in grado di ricevere un
obiettivo di alto livello, di generare
autonomamente un piano
composto da una sequenza di
operazioni semplici per
raggiungere l’obiettivo assegnato
e, infine, di monitorare l’esecuzione
del piano.
38
Applicazioni dell'IA
I giochi sono una delle aree tradizionali dell’IA da
un punto di vista metodologico. Lo studio dei giochi
ha determinato lo sviluppo e la messa a punto di
numerose tecniche, soprattutto quelle della ricerca
autonoma di soluzioni in presenza di avversari.
Nel 1997, per la prima volta nella storia, un
programma sviluppato dalla IBM (Deep Blue) ha
sconfitto il campione del mondo Garry Kasparov.
39
Applicazioni dell'IA
Il controllo autonomo è un campo, nell’ambito del
controllo di sistemi complessi, nel quale alcuni
sistemi di IA si sono dimostrati molto efficaci, come
nel caso del controllo di automobili, di veicoli
“unmanned” e di sonde spaziali.
40
Applicazioni dell'IA
L’area della robotica intelligente si articola nelle
sottoaree della manipolazione e della navigazione
che si estendono a un contesto multidisciplinare
che va oltre il contributo fornito dall’IA per
comprendere anche la meccanica, la sistemistica e
l’elettronica. L’obiettivo è la realizzazione di
macchine autonome, capaci di sostituire l’uomo in
ambienti pericolosi e non raggiungibili o
nell’esecuzione di attività manuali, ripetitive,
pesanti e nocive.
41
Applicazioni dell'IA
L’area di ricerca della visione artificiale riguarda il
problema dell’elaborazione dell’informazione
raccolta dai sensori visivi, per esempio da
telecamere, al fine di riconoscere e classificare
forme, oggetti e scene bidimensionali e
tridimensionali.
La vettura autonoma Stanley (Stanford
University, 2005) ha percorso 132 miglia nel
deserto del Mohave, California, senza alcun
intervento umano.
42
Applicazioni dell'IA
L’elaborazione del linguaggio naturale è il processo
di trattamento automatico delle informazioni scritte
o parlate nel linguaggio umano. Questo processo è
reso particolarmente difficile e complesso a causa
delle caratteristiche intrinseche di ambiguità del
linguaggio umano.
Presenta ancora molti problemi aperti. Dalla
semplice elaborazione del linguaggio vocale e
riconoscimento del parlato è necessario passare
alla elaborazione del linguaggio naturale non solo
a livello sintattico ma soprattutto semantico.
43
http://www.chayden.net/eliza/Eliza.html
La ricerca in I. A.
La ricerca è centrata su:
Sviluppo di metodi e teorie inerenti:
 Rappresentazione della
Conoscenza
 Ragionamento Automatico e
Ricerca di soluzioni
 Pianificazione
 Apprendimento Automatico……..
44
BASI TEORICHE DELL’I.A.
Tradizionale: visione algoritmica della mente che
considera i meccanismi mentali simili ai programmi; i
sistemi di intelligenza artificiale si basano in
prevalenza su forme di ragionamento deduttivo.
Moderna: teoria dei modelli mentali: i processi
mentali sono basati su meccanismi analogici di
confronto della realtà con rappresentazioni interne; i
programmi di intelligenza artificiale utilizzano
processi di ragionamento induttivi e incrementali,
sono in grado di classificare, fare previsioni,
apprendere conoscenza
45
I quesiti di fondo della I. A.
Per comprendere la realtà è necessario
confrontare i fenomeni esterni con
rappresentazioni interne.
Ma in che modo costruire rappresentazioni
Rappresentazioni simboliche della realtà
interne?
(conoscenza)
Solo i processi mentali razionali possono essere
riprodotti dall’informatica.
Ma quali meccanismi razionali?
Meccanismi di ragionamento utili a produrre
nuova conoscenza
46
PER SVILUPPARE SISTEMI DI I.A.
BISOGNA DISPORRE DI:
• Rappresentazioni simboliche della
realtà (conoscenza)
• Meccanismi di ragionamento
47
PROGRAMMI CONVENZIONALI VS KBS
Programma Convenzionale
Knowledge Based System
Algoritmo
Metodi di
Problem
Solving
Struttura dati
Base di
conoscenze
Dati
Dati
48
L’ALGORITMO
Una sequenza ordinata, predefinita e finita di
istruzioni che, dato uno o una serie di elementi in
ingresso, produce uno od una serie di risultati.
Un procedimento di calcolo, un metodo per
risolvere un problema, descritto mediante un
elenco finito di istruzioni eseguibili
"meccanicamente" e in un ordine prestabilito,
senza libere scelte da parte dell'esecutore.
Un procedimento matematico che risolve un
problema ricorrente, ovvero uno schema uniforme
per risolvere una classe di problemi.
Un insieme di procedure ben definite che
conducono alla soluzione di un problema in un
49
numero finito di operazioni.
I LIMITI DELLA PROGRAMMAZIONE
ALGORITMICA
MA E’ POSSIBILE RISOLVERE PROBLEMI
PER I QUALI L’ALGORITMO NON E’
DEFINIBILE COME PROCESSO DI
SOLUZIONE GENERALE PERCHE’ LA
SOLUZIONE DIPENDE DALLA ISTANZA DEL
PROBLEMA (LABIRINTO, GIOCHI etc.)?
E’ NECESSARIO DISPORRE DI UN PROBLEM
SOLVER, DI UN MODELLO DI CALCOLO
TEORICO E DI UN SISTEMA AUTOMATICO IN
GRADO DI SCEGLIERE TRA DIVERSE
AZIONI/OPERAZIONI LE PIU‘ APPROPRIATE
PER RAGGIUNGERE IL RISULTATO, IN
GRADO DI SVILUPPARE UN
RAGIONAMENTO
50
Cosa intendiamo per ragionamento?
Potremmo definire il ragionamento come la capacità di porre in relazione
conoscenze e fare inferenze. I processi di ragionamento, come gli altri tipi
di rappresentazione di conoscenza nel sistema cognitivo, possono essere sia
espliciti che impliciti.
 Il pensiero esplicito è costituito da quei processi volontari in cui la
rappresentazione simbolica della conoscenza è accessibile alla
consapevolezza;
 Nel pensiero implicito i processi in cui le conoscenze vengono apprese,
rappresentate ed utilizzate per guidare il comportamento non arrivano
pienamente alla consapevolezza.
I primi pensatori che si interessarono di ragionamento ipotizzarono che
esso avvenisse in gran parte secondo le regole della logica formale.
51
RAPPRESENTAZIONE DELLA
CONOSCENZA
Logica
Fornisce la struttura formale e le regole di inferenza.
Ontologia
Definisce il tipo di cose che esistono nel dominio
applicativo
Computazione
Aiuta a distinguere la rappresentazione della
conoscenza dalla pura filosofia. E’ necessario fare
riferimento a un preciso modello di calcolo
52
RAPPRESENTAZIONE DELLA
CONOSCENZA
• Senza la logica, una rappresentazione della
conoscenza è vaga, senza alcun criterio nel
determinare se affermazioni sono ridondanti o
contraddittorie.
• Senza l’ontologia, i termini sono definiti male e
generano confusione
• Senza modelli computabili, la logica e l’ontologia
non potrebbero essere implementati nei programmi
53
LA LOGICA
Modello matematico che consente di ragionare sulla verità e sulla
falsità di espressioni logiche
Definizione (proposizione o enunciato)
Un’affermazione di cui si possa dire, oggettivamente e con
certezza, che è vera o falsa
Esempio
Sono proposizioni:
Roma è la capitale d’Italia
Bari è una città dell’Inghilterra
Non sono proposizioni:
I dipinti di Picasso sono belli
Forse oggi verrò a trovarti
La logica classica, ad esempio il Calcolo Proposizionale, può
essere un ottimo linguaggio per rappresentare la conoscenza.
54
RAPPRESENTARE CONOSCENZA CON REGOLE
Una espressione in linguaggio naturale può
essere tradotta in una regola del tipo:
se
si sono compiuti 18 anni
allora
si è raggiunta la maggiore età
espresso in logica proposizionale:
diciotto-anni  maggiore-età
espresso in logica dei predicati:
ha-compiuto(x,18-anni) maggiorenne(x)
55
COSA È UN’ONTOLOGIA?
• L’Ontologia definisce il tipo di cose che esistono nel
dominio applicativo.
• La logica dispone di notazioni per dire che un
oggetto esiste, tuttavia non fornisce un vocabolario
per descrivere ciò che esiste.
Un’Ontologia:
• “è lo studio dell’esistenza di tutti i tipi di entità –
astratte e concrete - che compongono il mondo”.
• “il suo scopo è quello di fornire un quadro
(framework) di distinzioni che possono essere
utilizzate per discriminare e classificare le cose che
esistono e definire le parole che le descrivono.”56
COSA È UN’ONTOLOGIA?
• un insieme di concetti (detti anche classi),
•
•
le interconnessioni semantiche tra i concetti (dette
relazioni concettuali, o attributi semantici)
un meccanismo logico che permetta di inferire nuovi
fatti a partire da quelli codificati all’interno della
struttura (per esempio inferenza per ereditarietà)
57
UN ESEMPIO
58
59
I MECCANISMI DI RAGIONAMENTO
Inferenze
• L’inferenza è un procedimento che da un insieme
di fatti - dati che accuratamente rappresentano
specifiche proprieta' del dominio - e di leggi regole formali che rappresentano la dinamica del
dominio - fa conseguire nuovi fatti e regole
• Per esibire un comportamento intelligente un
sistema deve possedere un meccanismo
automatico di inferenza
• L’uso di un’ontologia fornisce un meccanismo di
inferenza semplice come l’ereditarietà
60
CONCATENARE REGOLE PER
REALIZZARE UN RAGIONAMENTO
• se 18 anni  maggiore età
• se maggiore età  permesso sposarsi
• se non (maggiore età)  autorizzazione del Tribunale al
matrimonio
• Se autorizzazione del tribunale al matrimonio 
permesso sposarsi
61
EREDITARIETÀ
Person
hasChild
• una particolare
inferenza legata
alla transitività di
IS-A
IS-A
Parent
IS-A
Mother
I diversi tipi di inferenza
Inferenza deduttiva
Fatti
Osservazioni
Misure
Sintomi
Teorie
Ipotesi
Regole
Algoritmi
Inferenza Induttiva
Tipi di inferenza
Crisp (rigorosa)
Falsity
Preserving
Truth
Preserving
Analogia
Soft (debole)
Deduzione
debole
Deduttiva
Abduzione
Induttiva
63
I diversi tipi di inferenza
- Deduttiva ( rigorosa)
Tutti gli uomini sono mortali
Socrate è uomo
-----------------------Socrate è mortale
- Deduttiva approssimata
I fumatori sono soggetti al cancro
X fuma
-----------------------64
è possibile che X si ammali di cancro
• Generalizzazione induttiva
X beve molto alcool ed ha mal di fegato
Y beve molto alcool ed ha mal di fegato
---------------------------------tutti quelli che bevono molto alcool
soffrono di fegato
Abduzione
Gli ubriachi generalmente barcollano
X barcolla
---------------------------------E’ possibile che X sia ubriaco
• Analogia
Fumare sigarette causa cancro ai polmoni
Fumare la pipa è simile a fumare sigarette
---------------------------------E’ possibile che fumare la pipa causi cancro ai polmoni
65
MODELLARE LA REALTÀ
•
•
modello nelle discipline formali significa rappresentazione
concreta di una teoria formale (logica, matematica)
modello nelle discipline empiriche significa
rappresentazione astratta (spesso formalizzata) di
fenomeni concreti (sociologia, economia, biologia etc.).
I modelli nella I.A.
•
•
Sono descrizioni formali di aspetti della realtà (dati
empirici) e di conoscenza sulla realtà (estratti dalle
conoscenze di un esperto o da testi in linguaggio naturale).
Da sempre il sogno dei ricercatori in I.A. è quello di
sviluppare sistemi in grado di acquisire autonomamente
66
conoscenza e di apprendere
APPRENDIMENTO
Apprendimento: estrazione di informazione
profonda (non superficiale) da un tipo di situazione
ripetutasi più volte.
L’esperienza può modificare lo stato di un
organismo in modo tale che il nuovo stato rende il
sistema capace di funzionare meglio in una
situazione successiva.
67
DINAMICA DELL’APPRENDIMENTO
“Apprendere significa migliorare le prestazioni in un
determinato ambiente acquisendo conoscenza derivante
dall’esperienza in tale ambiente”.
Prestazioni
Ambiente
Conoscenza
Apprendimento
68
Apprendere con Reti neurali
Intorno al 1985 quattro differenti gruppi di ricerca “riscoprono”
un algoritmo di apprendimento, già scoperto intorno al 1940,
basato sulla retropropagazione (“feedback”) dell’errore e lo
applicano con successo a molti problemi di apprendimento in
informatica e ingegneria.
Questo approccio (realizzabile sia con sistemi hardware che
software) viene utilizzato nei sistemi di controllo (di veicoli, di
di processi), nei simulatori di giochi e processi decisionali, nel
riconoscimento dei segnali, del parlato, dei volti, in
applicazioni finanziarie, nel filtraggio dei dati (antispam, data
mining) etc.
Una rete neurale è in grado di generare un risultato
valido, o comunque con una alta probabilità di essere
Difetti: i modelli prodotti dalle reti neurali, anche se molto
accettabile,
ma spiegabili
non è possibile
spiegare
efficienti, non sono
in linguaggio
simbolico come
umano: ie
perché
risultato
stato
generato.
risultati tale
vanno
accettatisia
"così
come
sono", (reti neurali come
"black box«)
69
L’AGENTE INTELLIGENTE CHE
APPRENDE
Un sistema intelligente deve apprendere per:
Adattarsi ai cambiamenti dell’ambiente circostante.
Non ripetere gli errori fatti in passato.
Risolvere problemi in modo migliore o più
efficiente.
Avere autonomia nell’affrontare e risolvere problemi.
Risolvere nuovi problemi (e scoprire nuova
conoscenza)
Un sistema senza queste caratteristiche difficilmente
potrebbe essere considerato intelligente.
70
APPRENDERE AUTOMATICAMENTE
(MACHINE LEARNING)
• Si dice che un programma A apprende dalla
esperienza E rispetto ad un certo insieme di
compiti T e con una misura di prestazione P
se la sua prestazione nei compiti in T,
misurata attraverso P, migliora con
l’esperienza E.
• Un ben definito programma che apprende
deve identificare e definire:
la classe dei compiti
la misura di prestazione da migliorare
la sorgente dell’esperienza
71
APPRENDERE PER ACQUISIRE
AUTOMATICAMENTE CONOSCENZA
Estrarre conoscenza dal ripetersi di situazioni
esperienza + stato  comportamento
Partendo da un minimo livello di conoscenza, utilizzare
un metodo di apprendimento generale per acquisire, via
via, nuova conoscenza.
Partendo da un sistema che include già conoscenza
strutturata si cerca di incrementarla o strutturarla
ulteriormente.
72
PERCHE’ L’APPRENDIMENTO SIA UTILE NELLA
ACQUISIZIONE DI CONOSCENZA E’ NECESSARIO
CHE SIA
SIMBOLICO
deve usare un linguaggio di descrizione di tipo logico
per gli input e per gli output e di metodi diversi per
rappresentare l’esperienza e per inferire nuova
conoscenza (in forma di regole/ di teorie di
classificazione etc).
Si basa su conoscenza di fondo e consente descrizioni
concettuali delle classi simili a quelle che esperti
umani
farebbero
osservando
gli stessi
dati. essere
“I risultati
di induzioni
fatte col computer
dovrebbero
descrizioni simboliche
di entità
simili, strutturalmente
e
L’obiettivo
è soddisfare
il postulato
di
semanticamente, a quelle che produrrebbe un umano.
comprensibilità
Le componenti di queste descrizioni dovrebbero essere
comprensibili come singole unità di informazione”
73
ESEMPI DI APPLICAZIONI DI SUCCESSO
DEL MACHINE LEARNING
Imparare a riconoscere le parole (Lee, 1989;
Waibel, 1989).
Apprendimento di un veicolo autonomo a
guidare (Pomerleau, 1989).
Imparare a classificare nuove strutture
astronomiche (Fayyad et al., 1995).
Apprendere a giocare world-class
backgammon (Tesauro 1992, 1995).
……………………………..
74
IL COMPITO
UN MODO PER CLASSIFICARE I SISTEMI
RISPETTO AL COMPITO
Sistemi One step per classificazione e predizione
• Obiettivo: aumentare la accuratezza predittiva del
sistema (prestazionerecognition rate)
Sistemi di inferenza Multistep per problem solving
• Obiettivo: aumentare la efficienza del sistema che
apprende a risolvere problemi
Sistemi per la scoperta di conoscenza (acquisizione
di conoscenza e formazione di concetti)
• Obiettivo: aumentare la prestazione nel
comprendere, controllare e monitorare l’ambiente
75
Nella maggioranza dei casi il compito è di
classificazione/predizione
Il problema di apprendimento (guidato o supervised):
Dato dall’addestratore (trainer) un insieme di dati di
addestramento (training data) come esempi positivi e negativi
di un certo concetto / classe / categoria ( appartenenza o non
appartenenza) si vuole trovare un classificatore per predire se
dati futuri appartengano o meno ad un certo
concetto/classe/categoria.
Il problema di apprendimento (non guidato o unsupervised):
Dato dall’ambiente o da un trainer un insieme di osservazioni
(training data) e un numero K di concetti / classi / categorie
da identificare si vuole trovare un classificatore che definisca
come le osservazioni si raggruppano al meglio nei K concetti
/ classi / categorie e formuli il modello per predire come
osservazioni future appartengano o meno ad un certo 76
concetto/ classe/ categoria.
AD ESEMPIO:
(arancione, rotondo, classe=
(giallo, lungo, classe=
)
(giallo, rotondo, classe=
(giallo, lungo, classe=
colore
)
forma
)
)
apprendimento
supervisionato
colore
(arancione, rotondo)
(giallo, rotondo)
(giallo, rotondo)
(giallo, lungo)
apprendimento
non
supervisionato
.
.. .
forma
77
UN ESEMPIO DI APPLICAZIONE DI ML
78
79
TRADUCIBILE in:
“IF there are two black objects (X3 and X4), which are a farm road and an
interfarm road, running almost parallel in north-east direction and both
perpendicular to a long straight black object (X2), THEN the spatial object X1 can
80
be tagged as a system of farms”
Un altro esempio: ML per l’elaborazione
automatica di documenti cartacei storici
COLLATE
Collaboratory for annotation,
indexing and retrieval of digitized
historical material
81
GOALS
• WWW-based collaboratory for archives, researchers and
end-users working with digitized cultural material
• Heritage of European film making in the 20ies and
30ies
• Digital multimedia collection
• Censorship documents on thousands historic films
(plus posters, magazine papers, scripts, photos and
film fragments etc.)
• Tools for content-based access, comparison and in-depth
indexing/annotation of digitized sources
• Sharing of experts valuable knowledge about cultural,
82
political and social context finalized to interpretation
UNIBA IN COLLATE:
IL SISTEMA INGEST
SOAP
Web Services
WISDOM++
involved
INTHELEX
<?xml version=“1.0” encoding=‘UTF-8’?>
<SOAP-ENV:Envelope>
<SOAP-ENV:Header>
………….
</SOAP-ENV:Header>
<SOAP-ENV:Body>
………….
</SOAP-ENV:Body>
<SOAP-ENV:Envelopre>
Metadata
Manager
Service
Document
Manager
Service
Metadata
Manager
Document
Manager
83
Xml Content Manager
COLLATE REPOSITORY SAMPLE
DOCUMENTS
84
COLLATE REPOSITORY SAMPLE
DOCUMENTS
85
COLLATE REPOSITORY SAMPLE
DOCUMENTS
86
COLLATE REPOSITORY SAMPLE
DOCUMENTS
Newspaper Clippings
and Articles
87
Censorship Decisions
Source for:
• Film title
• Participants in the examination
• Notices on content
• Juridical legitimization for the decision
• Legal motivation
• Conditions for permission (e.g., cuts, change of title)
• Reference to previous decisions
• Costs for the procedure
88
Film Registration Cards
Source for:
• Film title
• Production company
• Date and number of examination
• Length (after censoring)
• Number of acts
• Brief content
• Forbidden parts
• Staff
89
Film Application Forms
Národní Filmový Archiv
Source for:
• Name of applicant (production or distribution company)
• Title of the film
• Year of production
• Length (before censorship)
• Brief content
• Information about earlier examinations
90
RISULTATI SPERIMENTALI: UN ESEMPIO DI
REGOLA APPRESA (FILM REG. CARD)
logic_type_film_title(A):page_first(B), part_of(B,A), part_of(B,D),
type_of_text(A), pos_upper(A), type_of_text(D), pos_upper(D),
part_of(B,C),
height_very_small(C),type_of_text(C),pos_center(C),pos_upper(C)
width_very_large(E), height_smallest(E), type_of_hor_line(E),
pos_center(E),pos_upper(E),
height_very_very_small(F),pos_left(F),pos_upper(F),
on_top(E,D),on_top(E,F),alignment_left_col(F,A).
E
F
film title (A)
C
D
91
UN CAMPO INTERDISCIPLINARE :
L‘AMBIENT INTELLIGENCE
Nanoelectronics,
Mechatronics,
New Materials
Smart Sensors and
Actuators
Communication
Technology
Mobile
Networks
Computer
Science
Language
Technology
Computational
Linguistics
Machine Learning
Artificial Intelligence
92
SEMPRE CONNESSI: LE APPLICAZIONI
AL WEB
Sensor & actuator
networks
Satellites
adhoc
networks
Dynamically changing
combinations of network types
PANs
Wireless Local Area
Networks (hotspot)
Moving
networks
Home
network
Wide area
networks
(cellular)
Fixed access
network
Wireless
extension
of coverage
93
SMARTWEB
Mobile
Broadband Internet
UMTS/HotSpots
Mobile
Multimodal Dialogue:
Speech, Haptics,
Gestures
New: Open Domain
New: Question Answering
Semantic Web
Intranet
with Automated
Semantic Markup
Webpages
With Semantic
Markup
Language Technology,
Information Extraction
Traditional
HTMLWebpages
94
COSTRUIRE IL FUTURO
95
96
DISRUPTIVE TECHNOLOGIES
97
DISRUPTIVE TECHNOLOGIES
98
Le grandi preoccupazioni
Perderemo tutti il lavoro?
Saremo dominati dai robot?
Il genere umano sarà assogettato
e poi distrutto?
99
100