Intelligenza artificiale
Download
Report
Transcript Intelligenza artificiale
Intelligenza Artificiale
Ing. Federico Bergenti
Dipartimento di Matematica
Università degli Studi di Parma
E-mail
Telefono
[email protected]
+39 0521 90 6929
Intelligenza Artificiale (AI)
Ambizioso progetto nato già
agli albori dell’Informatica
Lo scopo era di realizzare
Macchine intelligenti
Macchine capaci di interagire
con il mondo reale (robot)
Recentemente si cerca di realizzare
Macchine in grado di risolvere problemi complessi
Macchine dotate di comportamento razionale
Macchine capaci di interagire con mondi complessi e
dinamici (Internet, il Web)
© 2010 F. Bergenti
Intelligenza Artificiale
2
Il Meeting di Dartmouth
John McCarthy (1927-) conia
il termine Intelligenza
Artificiale nel 1955
Nella proposta per un meeting al
Dartmouth College del 1956
Nel meeting a Dartmouth si
pongono tutti i problemi che la
AI non ha ancora risolto
Cosa significa intelligenza?
Cosa significa razionalità?
...
© 2010 F. Bergenti
Intelligenza Artificiale
3
Test di Turing (1/3)
Ma cosa caratterizza
un comportamento
intelligente?
Alan Turing (19121954) propone nel
1950 un test empirico
Il test di Turing è
ancora utile per capire
di cosa si occupa l’AI
© 2010 F. Bergenti
Intelligenza Artificiale
4
Test di Turing (2/3)
L’articolo del 1950 Computing Machinery
and Intelligence inizia con la frase
I propose to consider the question,
“Can machines think?”
L’articolo descrive un test che, applicato ad
una qualsiasi macchina, è in grado di
stabilire se la macchina è intelligente
È una definizione operativa di intelligenza
Esistono altre definizioni (Filosofia, Psicologia,
Neuropsichiatria, ...)
© 2010 F. Bergenti
Intelligenza Artificiale
5
Test di Turing (3/3)
Due persone B e C sono giocatori
di scacchi (inesperti)
A è una macchina realizzata con
l’unico scopo di giocare a scacchi
E.g., Deep Blue della IBM
C è in una stanza isolata e gioca
a scacchi, ma non sa se sta
giocando contro B o contro A
Se C non riesce a decidere se sta
giocando contro B o contro A,
allora A può essere considerato
intelligente almeno quanto B!
© 2010 F. Bergenti
Intelligenza Artificiale
6
Quattro Punti di Vista
Pensare come una persona
Pensare razionalmente
Agire come una persona
Agire razionalmente
© 2010 F. Bergenti
Intelligenza Artificiale
7
Agire come una Persona
Il test di Turing definisce il termine
comportamento intelligente
Nel test originale, Turing non utilizza gli scacchi,
che richiedono razionalità
È un approccio antropocentrico
L’obiettivo è imitare il comportamento dell’Uomo
Da qui nascono gli imitation game
© 2010 F. Bergenti
Intelligenza Artificiale
8
Eliza (J. Weizenbaum, 1966)
Ci sono stati vari tentativi di
realizzare macchine che
superassero il test di Turing
Eliza si comporta come uno
psicoterapeuta della scuola
di Rogersiana
Eliza si limita a
Identificare le parti della
struttura delle frasi
Riformulare in modo
interrogativo la frase
appena ricevuta
© 2010 F. Bergenti
> Hello, I am Eliza.
* Hi
> How are you today...What would
you like to discuss?
* I have problems at school
> Can you elaborate on that?
* I don't pass exams
> Do you wish to be able to pass
exams?
* Yes, sure
> I see.
* Math exams are too difficult
for me
> Come, come, elucidate your
thoughts.
* I don't see a meaning in math
> Do you wish to be able to see a
meaning in math?
Intelligenza Artificiale
9
Pensare come una Persona
Per imitare il comportamento dell’Uomo si
può simulare l’organo che genera il pensiero
Il cervello è l’organo in cui si forma il
pensiero...almeno per la scienza!
L’obiettivo è creare un cervello elettronico
che simuli il comportamento del cervello
A livello cellulare
Ricostruendo gli equivalenti di neuroni, assoni,
soma, ...
© 2010 F. Bergenti
Intelligenza Artificiale
10
Il Cervello e i Neuroni
© 2010 F. Bergenti
Intelligenza Artificiale
11
Le Reti Neurali
Ogni unità di calcolo simula
un neurone
Le unità sono collegate in
una rete
Che riceve input da
sensori
Che produce output su
attuatori
La rete viene addestrata e
apprende il modo giusto di
comportarsi
È troppo complessa da
programmare
Apprendimento per
rinforzo
© 2010 F. Bergenti
Intelligenza Artificiale
12
Perceptron (Rosenblatt, 1957)
L’intelligenza risiede nei valori di w1, w2
e
Y = soglia(w1*x1 + w2*x2)
© 2010 F. Bergenti
Intelligenza Artificiale
13
Riconoscitore di Testo Manoscritto
Neocognitron (K.
Fukushima, 1980)
Rete neurale
addestrata per
riconoscere testo
manoscritto
Usata in
Sistemi OCR (Optical
Character Recognition)
Dispositivi portatili di
nuova generazione
© 2010 F. Bergenti
Intelligenza Artificiale
14
Pensare Razionalmente
Il pensiero Umano non è sempre razionale
Il ragionamento razionale è solo quello della
Logica
Siamo guidati dalle abitudini, dalle speranze,
dalle false credenze, ...
Ritengo che se è vero A allora lo è anche B
Appena ritengo vero A devo ritenere vero B!
La Logica consente di compiere delle
deduzioni
© 2010 F. Bergenti
Intelligenza Artificiale
15
Sistemi Esperti (1/2)
Macchine in cui sono state elencate delle
regole di inferenza
Si fornisce alla macchina una base di
conoscenza
Un insieme di fatti veri o ritenuti tali
Il sistema esperto deduce nuovi fatti
applicando le regole di inferenza ai fatti noti
e ai fatti già dedotti
La base di conoscenza cresce mentre la
macchina lavora
© 2010 F. Bergenti
Intelligenza Artificiale
16
Sistemi Esperti (2/2)
Regole di inferenza:
IF (mal_di_testa AND temperatura ≥ 37)
THEN influenza
IF influenza
THEN prescrivi_aspirina
Base di conoscenza:
mal_di_testa
temperatura = 38
influenza
prescrivi_aspirina
© 2010 F. Bergenti
Regole di inferenza
Intelligenza Artificiale
17
MYCIN (E. Shortliffe, anni ‘70)
MYCIN è un sistema esperto
per la diagnosi
Contiene più di 600 regole
Pone solo domande sì/no
Fornisce una lista di diagnosi e
di trattamenti
È stato valutato utile nel 69%
dei casi
Superando i medici che hanno
fornito le regole di inferenza
© 2010 F. Bergenti
Intelligenza Artificiale
18
Comportarsi Razionalmente
È l’approccio più moderno e promettente
I sistemi che si comportano razionalmente vengono
detti agenti intelligenti e oggi sono molto studiati
Per applicazioni tradizionali
Per applicazioni nuove: ricerca nel Web, coordinamento di
operazioni in ambienti decentralizzati, ...
L’unica cosa importante è che la macchina si
comporti razionalmente
Non importa come
© 2010 F. Bergenti
Intelligenza Artificiale
19
Teoria dei Giochi
È la base di molti agenti
intelligenti
Inventata da John Nash (1928-)
Viene usata, in modo diverso, in
Economia ed AI
Descrive il comportamento
razionale senza cercare di
capire come questo venga
generato
Il comportamento razionale è
quello che massimizza l’utilità
© 2010 F. Bergenti
Intelligenza Artificiale
20
La Teoria dei Giochi in AI
Spesso, in AI considerano giochi
Ad esempio
A due giocatori in cui le mosse sono alternate
Con conoscenza perfetta in cui i giocatori hanno le stesse
informazioni
Dama, scacchi…si
Poker, bridge…no
In più, i giochi della AI hanno
Regole semplici e formalizzabili
Un ambiente completamente accessibile
Vincoli di tempo stringenti
© 2010 F. Bergenti
Intelligenza Artificiale
21
L’Algoritmo Min-Max
Realizza un agente che sceglie sempre la
mossa migliore
Per ogni mossa possibile, simula tutti i possibili
risultati della scelta
Sceglie una tra le mosse che possono portare
alla maggiore utilità
Vincere, o almeno, pareggiare, se ancora possibile
È ottimo, ma spesso non si applica perché
può richiedere troppo tempo per esaminare
tutte le mosse
© 2010 F. Bergenti
Intelligenza Artificiale
22
Gioco del Tris (1/5)
Applichiamo Min-Max
al gioco del Tris
Due giocatori chiamati
Min e Max
L’agente è Max e deve
scegliere la prossima
mossa
La scacchiera non è
necessariamente
vuota
© 2010 F. Bergenti
Intelligenza Artificiale
23
Gioco del Tris (2/5)
© 2010 F. Bergenti
Intelligenza Artificiale
24
Gioco del Tris (3/5)
Algoritmo Min-Max
Genera l’intero albero di gioco, fino ai nodi
terminali
Valuta il punteggio di ciascun nodo terminale
(-1, 0, +1)
Partendo dai nodi terminali assegna ai nodi
intermedi
© 2010 F. Bergenti
Mossa di Max: il massimo del punteggio dei nodi figli
Mossa di Min: il minimo del punteggio dei nodi figli
Intelligenza Artificiale
25
Gioco del Tris (4/5)
1
0
0
© 2010 F. Bergenti
1
1
-1
0
-1
-1
Intelligenza Artificiale
-1
1
1
1
26
Gioco del Tris (5/5)
0
?!?
0
0
© 2010 F. Bergenti
1
0
-1
0
-1
-1
Intelligenza Artificiale
-1
1
0
1
27
Giocatori “Reali”
Chinook è stato
campione di dama nel
torneo Man-Machine
Checkers Champion
Viene sviluppato
all’Università di Alberta
Si può giocare contro
Chinook qui
www.cs.ualberta.ca/~chinook
© 2010 F. Bergenti
Intelligenza Artificiale
28
Alcuni Progetti @ UniPR (1/5)
Il veicolo autonomo BRAiVE
Guida senza che il pilota tocchi il voltante
Individua pedononi ed ostacoli
Si mantiene allineato
con il traffico
© 2010 F. Bergenti
Intelligenza Artificiale
29
Alcuni Progetti @ UniPR (2/5)
Il sistema di rilevamento intrusioni
APaChe
Identifica la targa nell’immagine
Legge la targa
© 2010 F. Bergenti
Intelligenza Artificiale
30
Alcuni Progetti @ UniPR (3/5)
Il portiere della Nazionale Italiana
RoboCup
Si comporta come un vero e proprio
portiere di calcio
Interagisce con il
resto della squadra
© 2010 F. Bergenti
Intelligenza Artificiale
31
Alcuni Progetti @ UniPR (4/5)
Il sistema di sviluppo per agenti JADE
Fornisce un’infrastruttura standard per lo
sviluppo di agenti che comunicano
Utilizzato in vari progetti industriali di
telecomunicazioni
© 2010 F. Bergenti
Intelligenza Artificiale
32
Alcuni Progetti @ UniPR (5/5)
{log} – Linguaggio di programmazione
basato su un dimostratore di teoremi
per la teoria degli insiemi
max(S,X) :- X in S & forall(Z in S, X >= Z).
pairs(S) :forall(X in S, exists([X1,X2], X = [X1,X2])).
© 2010 F. Bergenti
Intelligenza Artificiale
33
In Conclusione
Intelligenza Artificiale forte
Un computer correttamente programmato può essere
dotato di intelligenza non distinguibile da quella umana
Come per il filosofo empirista inglese Thomas Hobbes:
ragionare non è nient’altro che calcolare
Il pensiero umano è il prodotto di un complesso insieme di
calcoli eseguiti dal cervello
Intelligenza Artificiale debole
Un computer non sarà mai in grado di uguagliare la mente
umana
© 2010 F. Bergenti
Non sarà mai così complesso
Potrà solo arrivare a simulare alcuni processi cognitivi umani
senza riuscire a riprodurli completamente
Intelligenza Artificiale
34