INTELLIGENZA
ARTIFICIALE
DEFINIZIONE DI I.A.
• I.A. è la scienza che studia tecniche
computazionali in grado di emulare
l’intelligenza umana
• Non necessariamente i metodi usati
devono ricalcare i metodi
biologicamente osservabili
DEFINIZIONE DI I.A.
• L’intelligenza è la capacità di
raggiungere determinati obiettivi
• Non siamo però in grado di
caratterizzare quali tipi di procedure
computazionali siano da chiamarsi
intelligenti
• Comprendiamo certi meccanismi
dell’intelligenza ma non altri
DEFINIZIONE DI I.A.
• La ricerca nel campo I.A. Ha scoperto
come far raggiungere ai computer
determinati obiettivi ma non altri
• In alcuni compiti legati a memoria e
velocità i computer superano le
prestazioni umane, in altri obiettivi i
computer sono inferiori ai bambini di
pochi mesi.
I.A. DEBOLE E I.A. FORTE
• La ricerca nel campo I.A. si può far
risalire al matematico inglese Alan
Turing che ne parlò per primo nel 1947.
• In un articolo del 1950 Turing propose il
test omonimo per stabilire se una
macchina possa essere o meno
considerata intelligente.
I.A. DEBOLE E I.A. FORTE
• Un uomo deve indovinare dalle risposte
ricevute via telescrivente se nell’altra
stanza c’è un uomo o un computer.
• Il computer deve dare risposte
convincenti.
• Se l’interrogante non è in grado di
operare alcuna distinzione, si può
affermare che la macchina è in grado di
pensare.
I.A. DEBOLE E I.A. FORTE
• L’obiezione più famosa al Test di
Turing è quella di John Searle con
il paradigma della “stanza cinese”.
• In una stanza chiusa un uomo che
non conosce il cinese può tradurre
meccanicamente dal cinese senza
per questo capirlo.
I.A. DEBOLE E I.A. FORTE
• Si pone il problema di capire che cosa
sia la vera “comprensione”.
• I ricercatori si dividono fra sostenitori
dell’I.A. debole e sostenitori dell’I.A.
forte.
• La tesi di Turing-Church afferma che
ogni processo intuitivamente
computabile è computabile con una
macchina di Turing
I.A. DEBOLE E I.A. FORTE
• Questa tesi esprime la posizione
dell’A.I. forte, ossia di fatto che i
computer possono essere equivalenti
al cervello umano.
• I seguaci dell’A.I. debole sostengono
che i computer possono solo avere
alcune caratteristiche simili a quelle del
cervello umano.
I.A. DEBOLE E I.A. FORTE
• L’obiezione più nota all’I.A. forte è che i
computer non possono rispondere a
domande contenenti proposizioni
indecidibili
• Il teorema di Goedel afferma che
qualsiasi logica non contradditoria
dell’aritmetica è incompleta, ossia
contiene proposizioni vere ma
indimostrabili.
TIPI DI A.I.
• L’I.A. si può suddividere in due
filoni principali: I.A. simbolica e I.A.
subsimbolica.
• L’I.A. simbolica è quella tradizionale
e si basa su procedure costruite
con metodi formali
TIPI DI A.I.
• L’ I.A. subsimbolica utilizza metodiche
che raggiungono risultati a partire da
dati imprecisi o spuri e cui non si può
risalire in modo procedurale
• Questa definizione si sovrappone a
quella di SOFTCOMPUTING, che
comprende reti neurali, algoritmi
genetici, logica fuzzy e tecniche che
utilizzano insieme queste metodiche
TIPI DI A.I.
• Le branche dell’A.I. si possono
suddividere in:
– Programmazione automatica
– Reti Bayesiane e probabilistiche
– Natural Language Processing (NLP)
– Knowledge Representation
TIPI DI A.I.
– Planning
– Constraint satisfaction in problemi
NP-completi
– Machine learning
– Pattern recognition
– Speech recognition
……
APPLICAZIONI DELLA I.A.
– Riconoscimento vocale
– Sistemi esperti
– Applicazioni di case-based reasoning
– Traduzione automatica
– Giochi (es. Deep Blue)
– Controllori fuzzy in elettrodomestici
– Robotica industriale
– Knowledge Discovery in Databases o Data
Mining
– …. (poco di più)
LINGUAGGI PER LA I.A.
– LISP ( List Processing ) – Rivelatosi
utile per la protipizzazione e per
l’elaborazione del linguaggio naturale,
richiede macchine dedicate per
grandi moli di conoscenza.
– PROLOG ( Logic Programming) –
Utilizza un motore inferenziale che
scandisce una base di conoscenza
scritta in forma di proposizioni
logiche.
CAMPI DI APPLICAZIONE
– Medicina (sistemi esperti, sistemi di
supporto alla decisione, robotica)
– Finanza (sistemi esperti, sistemi di
supporto alla decisione)
– Processi industriali (controllers,
robotica)
– Ricerca (utilizzo di metodi di analisi
non standard)
– ….
LINGUAGGI PER LA I.A.
–Linguaggio C : si adatta ad ogni
tipo di problema ed è molto
veloce e compatto.
–Java : ultimamente viene
utilizzato per motivi di portabilità.