24
Prof. Francesco Trovò Corso di Intelligenza Artificiale, a.a. 2017-2018 Introduzione all’Intelligenza Artificiale 26/02/2018

Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Prof. Francesco Trovò

Corso di Intelligenza Artificiale, a.a. 2017-2018

Introduzione all’Intelligenza Artificiale

26/02/2018

Page 2: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Come Viene Percepita l’Intelligenza Artificiale

Page 3: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

L’Intelligenza Artificiale di Hollywood

Page 4: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Definizioni di Intelligenza Artificiale

Domande:

Cos’è l’intelligenza? Cos’è il pensiero? (Filosofia, biologia)

Come possiamo geneare costruire entità intelligenti?

Definire intelligenza:

• Agire umanamente

• Pensare umanamente

• Pensare razionalmente

• Agire razionalmente

Page 5: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

1. Agire umanamente: Il test di Turing

Alan Turing (1912 - 1954)

Formalizzazione algoritmo, macchina di turing

Primo crittoanalista (macchina Enigma)

Padre dell’informatica e dell’IA

Test di Turing:

• Alice (donna), Bob (uomo), Charlie (giocatore) sono in stanze

separate

• Charlie deve capire da domande dattiloscritte chi dei due è Bob

• Uno dei due gioca con Charlie, altro contro

• Se sostituendo un’IA Charlie ha le stesse prestazioni di riuscita allora

l’IA ha passato il test

(Vedi anche esperimento stanza cinese)

Page 6: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Requisiti di una IA Capace di Passare il Test

Test di Turing

• Interpretazione del linguaggio naturale

• Rappresentazione della conoscenza

• Ragionamento automatico

• Apprendimento

Test di Turing totale

• Visione artificiale

• Manipolazione robotica

Page 7: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

2. Pensare Umanamente

Definire pensiero umano:

introspezione o psicologia (top-down)

imaging cerebrale (bottom-up)

Trattato da Scienze cognitive

• Analisi del pensiero umano ed animale

• Modelli sul funzionamento della mente umana

I due campi sono interconnessi e si alimentano a vicenda, ma sono

distinti

Page 8: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

3. Pensare Razionalmente

Modellizzare i processi cognitivi in maniera formale: Logica (Aristotele)

Partendo da programmi basati sulla logica vogliamo creare dei sistemi

intelligenti

Problemi:

• Molto difficile formalizzare i problemi in termini logici (in particolare

quando sono in presenza di incertezza)

• Risolvere tramite la logica problemi di dimensione elevata non è

feasible

Page 9: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

4. Agire Razionalmente

Non significa pensare razionalmente: possiamo raggiungere l’obbiettivo

anche se non pensiamo in maniera corretta.

Contest: far camminare un agente bipede

(https://www.youtube.com/watch?v=gn4nRCC9TwQ)

Vantaggio: possiamo definire in maniera formale la razionalità

Posso richiedere che l’agente abbia razionalità perfetta oppure

razionaltà limitata

Page 10: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Un po’ di storia

• Filosofia

• Aristotele: sillogismi

• Pascal: calcolatori

• Cartesio: discussione mente/materia

• Carnap, Hempel: teoria della conferma

• Matematica

• Boole: logica booleana

• Al-khuwarzemi: algoritmi

• Godel: teorema di incompletezza

• Cock, Karp: NP-completezza

• Bernoulli, Bayes: probabilità

Page 11: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Un altro po’ di storia

• Economia

• Neumann: teoria delle decisioni

• Bellman: Markov process

• Neuroscienze

• Ingegneria informatica

• Controllo e cibernetica

• Linguistica

Page 12: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

L’evoluzione della IA

W. McCulloch e W. Pitts (1943)

Prima definizione di un neurone artificiale

D. Hebb (1949)

Regola di aggiornamento dei pesi di una rete

M. Minsky e D. Edmonds (1950)

Primo calcolatore basato su rete neurale – 40 neuroni

A. Turing (1950)

«Computing Machinery and Intelligence»

Page 13: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

La nascita dell’IA

J. McCarthy (1956)

Workshop sullo studio dell’intelligenza

Coniato il termine Intelligenza Artificiale

A. Newell e H. Simon (1956)

Primo programma in grado di ragionare Logic Theorist (LT)

N. Rochester (1959)

Geometry Problem Solver

A. Samuel (1956)

Programma per il gioco della dama

Page 14: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

I primi passi

J. McCarthy (1958)

Sviluppo linguaggio LISP

J.A. Robinson (1965)

Programma per dimostrazione di teoremi con logica del primo ordine

Minsky (1968)

Studio di programmi per i micromondi

B. Widrow (1962)

Reti adaline

F. Rosemblatt (1962)

Sviluppo del perceptrone

Page 15: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Le prime difficoltà

I primi programmi non avevano idea del contesto in cui stavano

lavorando e che non ci fossero problemi di complessità

• Traduzione del linguaggio naturale

es: lo spirito è forte ma la carne è debole → la vodka è buona ma la

bistecca è marcia

• Modifica di programmi per ottenerne di più efficienti

• Esplorazione combinatoria di alcune metodologie

• Limitazione dei perceptroni

Stop ai finanziamenti alle ricerche di IA

Page 16: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Metodi basati sulla conoscenza di settore

DENDRAL (1969)

Ricostruire la struttura molecolare partendo dai dati di uno spettrometro di massa

Generare ogni possibile combinazione e poi confrontarla con un risultato è unfeasible

Integrazione dell’esperienza dei chimici nel programma (sistemi esperti)

Possibilità di applicare industrialmente i risultati dell’IA

Finanziamenti ingenti (1980-1988)

Page 17: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Metodi connessionisti

Rumelhart e McLelland (1986)

Rivitalizzazione dei metodi basati su reti neurali

Applicazione a problemi di apprendimento

Due differenti linee di ricerca:

• Definizione di topologie di reti per risolvere efficientemente i problemi

e per definirne le proprietà matematiche

• Modellizzazione delle proprietà dei neuroni reali

G. Hinton e Y. LeCun (2006)

Nuova interpretazione delle reti neurali

Deep Learning

Page 18: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Metodi basati sui dati

Negli anni il volume dei dati generati è cresciuto a ritmi impressionanti

Idea: utilizzare i dati per prendere decisioni

Tecniche di apprendimento da sostituire al processo di categorizzazione

della conoscenza.

Yarowsi (1995)

Disambiguazione di una parola

Hays ed Efros (2007)

Completamento di una foto corrotta

Page 19: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Esempi di problemi risolti da metodi di IA

Veicoli autonomi – DARPA urban challenge, TESLA

(https://www.youtube.com/watch?v=lULl63ERek0)

Page 20: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Esempi di problemi risolti da metodi di IA

Chatbot – call center automatizzati, SpacoBot

Page 21: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Esempi di problemi risolti da metodi di IA

Scheduling

• REMOTE AGENT pianificazione delle operazioni di controllo e

manutenzione di un veicolo spaziale

• MAPGEN pianificazione delle attività per i Mars Rover

Page 22: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Esempi di problemi risolti da metodi di IA

Giochi – scacchi DEEPBLUE, go ALPHA GO, poker LIBRATUS

(https://www.youtube.com/watch?v=8tq1C8spV_g)

Page 23: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Esempi di problemi risolti da metodi di IA

Robotica – esplorazione Roomba, BOSTON DYNAMICS

(https://www.youtube.com/watch?v=RYzn_gmFs5w)

Page 24: Introduzione all’Intelligenza Artificiale - Politecnico di Milanohome.deib.polimi.it/.../iabg_2017/01_introduction.pdf · 2018-05-13 · 1. Agire umanamente: Il test di Turing Alan

Esempi di problemi risolti da metodi di IA

NLP – WolframAlpha, Google Translate