Dipartimento di Ingegneria dell’Informazione
Università degli Studi di Parma
Testi Consigliati
w Stuart Russell e Peter Norvig. Artificial Intelligence: A Modern
Approach, seconda edizione.
Prentice Hall, 2003.
Intelligenza Artificiale
Introduzione
In versione italiana:
w Stuart Russell e Peter Norvig. Intelligenza artificiale: un
approccio moderno, Traduzione italiana della prima edizione.
UTET Libreria, 1998, a cura di Luigia Carlucci Aiello.
Agostino Poggi
Stefano Cagnoni
Introduzione
Cosa è l'Intelligenza Artificiale
w È lo studio di come rendere i calcolatori capaci di pensare nel
senso letterale del termine (Haugeland, 1985).
2
Cosa è l'Intelligenza Artificiale
w È lo studio delle facoltà mentali attraverso l'uso di modelli
computazionali (Charniak and McDermott, 1985).
Cioè come realizzare sistemi che pensano come gli uomini.
Cioè come realizzare sistemi che pensano razionalmente.
w È lo studio di come far fare ai calcolatori cose che, ora come
ora, gli uomini fanno meglio (Rich and Knight, 1991).
w È lo studio di come spiegare e emulare il comportamento
intelligente attraverso processi computazionali (Schalkoff,
1990).
Cioè come realizzare sistemi che agiscono come gli uomini.
Cioè realizzare sistemi che agiscono razionalmente.
Introduzione
3
Introduzione
Primo dilemma…..
L’Intelligenza Artificiale è la scienza:
w che permette ad una macchina di imitare l’uomo modellandone
anche i processi biologici e mentali ed i comportamenti ?
w che crea processi computazionali che ottengono risultati
comparabili o migliori di quelli ottenuti dall’uomo in attività
considerate tipiche dell’intelligenza umana ?
Introduzione
4
Secondo dilemma (versione 1)…..
Nel primo caso (sillogismo aristotelico)
w L’IA imita l’uomo ed i suoi processi biologici, mentali e
comportamentali
w L’uomo agisce in modo intelligente
=> L’IA imita processi intelligenti.
Ma è davvero intelligenza ?
(discutere… )
5
Page 1
Intelligente = umano ?
(cioè che fa esattamente la stessa cosa che farebbe un uomo)
Introduzione
6
Secondo dilemma (v.1, corollario)
Secondo dilemma (versione 2)
Nel secondo caso
Intelligente = umano ?
(cioè che fa esattamente la stessa cosa che farebbe un uomo)
Imitare un uomo stupido è Intelligenza Artificiale ?
w L’IA definisce processi computazionali che ottengono risultati
comparabili o migliori di quelli ottenuti dall’uomo in attività
intelligenti
Ma è davvero intelligenza ?
A seconda del contesto, non è detto che una stessa decisione/azione sia sempre
intelligente o sempre stupida…
Intelligente = razionale ?
(cioè che fa la cosa giusta per un certo contesto in ogni istante)
Es. di contesti : a) cantina di Steve Jobs o b) deserto del Sahara dopo una lunga marcia
Introduzione
(discutere… )
7
Introduzione
Intelligenza Artificiale
8
Le Basi dell'Intelligenza Artificiale
w È un ramo dell'ingegneria?
w L'Intelligenza Artificiale è una campo di ricerca giovane (1943).
w È un ramo dell'informatica?
w l'Intelligenza Artificiale si basa sulle idee e risultati ottenuti in altri campi:
s
s
s
s
s
s
s
s
w È un ramo delle scienze cognitive?
w È un ramo della filosofia?
w È una scienza?
Introduzione
9
Filosofia
Psicologia
Linguistica
Matematica
Informatica
Ingegneria dei calcolatori
Elaborazione dei segnali e riconoscimento delle immagini
Teoria dei sistemi e del controllo
Introduzione
Basi Filosofiche (428 BC - )
w Platone nel 428 BC descrive un dialogo in cui Socrate cerca un
algoritmo per distinguere la pietà dalla non-pietà.
w Aristotele cerca di formulare le leggi che governano la parte
razionale della mente.
w Rene Descartes (1596-1650) propone la tesi del dualismo.
s Esiste una parte della mente (anima) che non segue le regole fisiche.
s Gli animali non possedendo questo dualismo possono essere
considerati come delle macchine.
Basi Filosofiche (428 BC - )
w Francis Bacon (1561-1626) con il suo lavoro “Novum
Organum” da vita al movimento degli empiricisti.
s Tutta la conoscenza (cioè tutto quello che si trova nella mente)
proviene dai sensi.
w David Hume (1711-1776) nel suo lavoro “A Treatise of Human
Nature ” propone il principio dell'induzione.
s Il principio dell'induzione indica la possibilità di definire delle regole
generali dall'osservazione ripetuta di casi particolari.
w Wilhelm Leibniz (1646-1716) propone la tesi del materialismo.
w Bertrand Russell (1872-1970) introduce il positivismo logico.
s Ogni cosa, quindi anche la mente, segue le leggi fisiche.
s Quindi è possibile costruire una macchina che riesce ad eseguire le
operazioni mentali.
Introduzione
10
11
Page 2
s Tutta la conoscenza può essere caratterizzata da teorie logiche.
s L’acquisizione della conoscenza si basa su observation sentences che
corrispondono a sensori di ingresso.
Introduzione
12
Basi Matematiche (1800 - )
Basi Matematiche (1800 - )
w Alfred Tarski (1902-1983) introduce una teoria che permette di
mettere in relazione gli oggetti del mondo reale con gli oggetti
di una rappresentazione logica.
w Kurt Gödel (1906-1978) prova il cosiddetto teorema
dell'indecidibilità.
w George Boole (1815-1864) introduce un linguaggio formale
per fare inferenza logica.
w Gottlob Frege (1848-1925) definisce una logica che, al di là di
alcune modifiche di notazione, è la logica del primo ordine
usata in gran parte dei sistemi odierni per la rappresentazione
della conoscenza.
s Il teorema dell’indecidibilità afferma che esistono delle funzioni su
interi che non possono essere rappresentate da algoritmi, cioè che non
possono essere calcolate.
w Alan Turing (1912-1954) introduce la cosiddetta macchina di
Turing e la tesi di Church-Turing.
s La tesi di Church-Turing afferma che una macchina di Turing è
capace di rappresentare qualsiasi funzione computabile.
Introduzione
13
Introduzione
Basi dell'Ingegneria dei Calcolatori
(1940 - )
Basi Psicologiche (1879 - )
w Nel 1940 in Inghilterra venne costruito dal gruppo di Alan Turing il
primo computer moderno, Heath Robinson.
w Herman von Helmholz (1821-1894) e Wilhelm Wundt (18321920) applicano il metodo scientifico allo studio della visione
umana.
w John Watson (1878-1958) e Edward Lee Thorndike (18741949) formano il movimento dei comportamentalisti.
s Heath Robinson era basato su relé elettromagnetici e aveva lo scopo di decifrare i
messaggi tedeschi.
s Quando i tedeschi usarono dei meccanismi di codifica più complicati i relé
elettromagnetici del calcolatore non permisero una adeguata velocità di calcolo e fu
sostituito da Colossus, basato sulla tecnologia dei tubi a vuoto.
s Le teorie comportamentaliste si basano solo sulla misura degli stimoli
dati ad un animale e delle azioni da esso eseguite in risposta.
s I costrutti mentali come conoscenza, credenze, goal e passi di
ragionamento sono rifiutati come non scientifici e frutto della
psicologia popolare.
Introduzione
w Nel 1941 in Germania venne costruito da Konraad Zuse il primo
computer programmabile, Z-3.
w Tra il 1940 e il 1942 negli Stati Uniti venne realizzato il primo calcolatore
elettronico, ABC.
w Nel 1945 viene realizzato per Z-3 il primo linguaggio di programmazione
ad alto livello.
15
Introduzione
Basi Linguistiche (1957 - )
16
Storia dell'Intelligenza Artificiale
w Warren McCulloch e Walter Pitts nel 1943 propongono un modello di
neurone artificiale.
w Nel 1956 durante il workshop di Dartmouth John McCarthy conia per
questi tipi di ricerca il nome di Intelligenza Artificiale.
w Nel 1957 Noam Chomsky descrive la teoria dei modelli
sintattici.
s I modelli sintattici permettono di spiegare come un bambino possa
comprendere e generare delle frasi che non ha mai sentito.
s I modelli sintattici di Chomsky sono abbastanza formali da poter
essere programmati.
s John McCarthy aveva convinto Marvin Minsky e Claude Shannon a organizzare a
Dartmouth un workshop per riunire i ricercatori americani interessati alle teoria degli
automi, alle reti neurali e allo studio dell'intelligenza.
w In seguito comunque è stato dimostrato che i problemi
affrontati dalla linguistica sono ben più complessi di quelli che
sembrano nel 1957.
w Allen Newell and Herbert Simon nel 1956 realizzano un programma di
ragionamento, Logic Theorist.
s Un linguaggio è spesso ambiguo e spesso ha delle parti sottintese.
Introduzione
14
17
Page 3
s Logic Theorist era capace di risolvere un gran numero di teoremi matematici
presenti nel libro Principia Matematica di Russell e Whitehead.
s In alcuni casi le soluzioni da esso presentate erano più corte di quelle presentate in
letteratura.
Introduzione
18
Storia dell'Intelligenza Artificiale
Storia dell'Intelligenza Artificiale
w Allen Newell and Herbert Simon nel 1956 realizzano un
programma per la risoluzione di problemi, General Problem
Solver.
w Nel 1969 Marvin Minsky e Seymour Papert nel loro libro, “Perceptrons”,
mettono in luce i limiti delle reti neurali.
s La caratteristica principale del General Problem Solver è quella di
voler imitare i metodi di risoluzione di problemi usati dall'uomo.
w Nello stesso anno, Arthur Bryson e Yu Chi Ho propongono l'algoritmo di
apprendimento backpropagation.
w John McCarthy nel 1958 definisce il LISP.
w Nel 1963 Marvin Minsky incarica un gruppo di studenti di
risolvere alcuni semplici problemi che sembravano richiedere
intelligenza.
w Nel 1969 il gruppo di Bruce Buchanan e Edward Feigenbaum realizza il
primo sistema esperto, DENDRAL.
s Ad esempio, un percettrone con due ingressi non può essere addestrato a riconoscere
quando i suoi ingressi sono diversi.
s Questo algoritmo viene usato nelle reti neurali multi-strato e sarà riscoperto negli
anni ottanta.
s lo scopo di DENDRAL è quello di aiutare l'analisi di strutture molecolari.
w Nel 1976 lo stesso gruppo realizza MYCIN, un sistema esperto per la
diagnosi di infezioni del sangue.
s Questo gruppo di studenti definì i cosiddetti Mondi giocattolo
(Microworlds) tra cui il famoso Mondo dei Blocchi.
Introduzione
s MYCIN introduce il calcolo dell'incertezza per decidere l'attivazione delle regole.
19
Introduzione
Storia dell'Intelligenza Artificiale
w Nel 1975 Marvin Minsky propone il frame come struttura per la
rappresentazione della conoscenza.
w Nel 1981 le autorità giapponesi annunciano l'avvio del progetto per la
quinta generazione dei computer.
s L'obiettivo è realizzare computer che eseguano Codice PROLOG allo stesso modo in
cui i computer tradizionali eseguono il codice macchina.
w Nello stesso periodo sono sviluppati dei calcolatori (LISP Machine) con
processori orientati all'esecuzione di programmi LISP.
w Nel 1986 David Rumelhalt e James McClelland pubblicano i due libri
“Parallel Distributed Processing”.
Storia dell'Intelligenza Artificiale
w I cosiddetti modelli “Hidden Markov” permettono ai metodi di
riconoscimento del parlato e della scrittura di essere usati in sistemi
commerciali.
w David Chapman ottiene una elegante sintesi dei programmi di
pianificazione esistenti.
s L’applicabilità dei pianificatori passa dai mondi giocattolo allo scheduling del lavoro
nelle fabbriche e delle missioni spaziali.
w Le cosiddette “Belief network” diventano la base per il ragionamento
incerto e i sistemi esperti.
s Il formalismo delle belief network permette un efficiente ragionamento sulla
combinazione dei fattori di certezza.
s Nei due libri sono presentati risultati in vari campi applicativi della backpropagation,
reinventata da almeno quattro gruppi di ricerca.
s Questi due libri riaccendono l'interesse sulle reti neurali.
Introduzione
20
w Allen Newell, John Laird e Paul Rosenbloom sviluppano SOAR.
s SOAR è una completa architettura ad agenti che utilizza le varie metodologie dell'IA
per lo sviluppo di sistemi intelligenti.
21
Introduzione
Campi di Applicazione
w
w
w
w
w
w
w
w
w
Sistemi Intelligenti
w Quando è che una macchina si può dire intelligente?
Analisi finanziaria
Automazione d’ufficio
Automazione industriale
Basi di dati
Diagnosi medica
Giochi
Robotica
Sistemi di progettazione
Traduzione automatica
Introduzione
22
w Turing Test
s
s
s
s
Elaborazione del linguaggio naturale
Rappresentazione della conoscenza
Ragionamento automatico
Apprendimento
w Total Turing Test
s
s
23
Page 4
Visione
Robotica
Introduzione
24
Sistemi Intelligenti
w Le tecniche di IA manipolano conoscenza.
w La conoscenza ha alcune caratteristiche poco desiderabili:
w Quali sono le componenti fondamentali di una macchina
intelligente?
Ingresso
Stato Interno
Comprensione
del linguaggio naturale
Tecniche di Intelligenza Artificiale
s È voluminosa
s È difficile da caratterizzare con precisione
s È in continuo cambiamento
Uscita
Generazione
del linguaggio naturale
w Le tecniche di IA sono metodi che sfruttano la conoscenza
rappresentandola in modo che:
Rappresentazione
della conoscenza
Ragionamento
automatico
s consenta di gestire/generare le generalizzazioni
s il formalismo di rappresentazione possa essere compreso da coloro che
la devono fornire
s possa essere facilmente modificabile
s possa essere utilizzata anche quando non è del tutto completa e precisa
Apprendimento
Visione
Introduzione
Generazione
dei movimenti
25
Page 5
Introduzione
26