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