340 likes | 610 Views
Intelligenza Artificiale. Ing. Federico Bergenti Dipartimento di Matematica Università degli Studi di Parma E-mail federico.bergenti@unipr.it Telefono +39 0521 90 6929. Intelligenza Artificiale ( AI ). Ambizioso progetto nato già agli albori dell’Informatica
E N D
Intelligenza Artificiale Ing. Federico Bergenti Dipartimento di Matematica Università degli Studi di Parma E-mail federico.bergenti@unipr.it Telefono +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) Intelligenza Artificiale
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à? ... Il Meeting di Dartmouth Intelligenza Artificiale
Ma cosa caratterizza un comportamento intelligente? Alan Turing (1912-1954) propone nel 1950 un test empirico Il test di Turing è ancora utile per capire di cosa si occupa l’AI Test di Turing (1/3) Intelligenza Artificiale
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, ...) Intelligenza Artificiale
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! Test di Turing (3/3) Intelligenza Artificiale
Quattro Punti di Vista Intelligenza Artificiale
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 Intelligenza Artificiale
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 > 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? Eliza (J. Weizenbaum, 1966) Intelligenza Artificiale
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, ... Intelligenza Artificiale
Il Cervello e i Neuroni Intelligenza Artificiale
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 Le Reti Neurali Intelligenza Artificiale
Perceptron (Rosenblatt, 1957) • L’intelligenza risiede nei valori di w1, w2 e Y = soglia(w1*x1 + w2*x2) Intelligenza Artificiale
Neocognitron (K. Fukushima, 1980) Rete neurale addestrata per riconoscere testo manoscritto Usata in Sistemi OCR (Optical Character Recognition) Dispositivi portatili di nuova generazione Riconoscitore di Testo Manoscritto Intelligenza Artificiale
Pensare Razionalmente • Il pensiero Umano non è sempre razionale • Siamo guidati dalle abitudini, dalle speranze, dalle false credenze, ... • Il ragionamento razionale è solo quello della Logica • Ritengo che se è vero A allora lo è anche B • Appena ritengo vero A devo ritenere vero B! • La Logica consente di compiere delle deduzioni Intelligenza Artificiale
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 Intelligenza Artificiale
Regole di inferenza 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 Intelligenza Artificiale
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 MYCIN (E. Shortliffe, anni ‘70) Intelligenza Artificiale
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 Intelligenza Artificiale
È 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à Teoria dei Giochi Intelligenza Artificiale
La Teoria dei Giochi in AI • Spesso, in AI considerano giochi • A due giocatori in cui le mosse sono alternate • Con conoscenza perfetta in cui i giocatori hanno le stesse informazioni • Ad esempio • 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 Intelligenza Artificiale
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 Intelligenza Artificiale
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 Gioco del Tris (1/5) Intelligenza Artificiale
Gioco del Tris (2/5) Intelligenza Artificiale
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 • Mossa di Max: il massimo del punteggio dei nodi figli • Mossa di Min: il minimo del punteggio dei nodi figli Intelligenza Artificiale
Gioco del Tris (4/5) 1 1 0 -1 0 1 0 -1 -1 -1 1 1 1 Intelligenza Artificiale
Gioco del Tris (5/5) ?!? 0 0 0 -1 0 1 0 -1 -1 -1 1 0 1 Intelligenza Artificiale
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 Giocatori “Reali” Intelligenza Artificiale
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 Intelligenza Artificiale
Alcuni Progetti @ UniPR (2/5) • Il sistema di rilevamento intrusioni APaChe • Identifica la targa nell’immagine • Legge la targa Intelligenza Artificiale
Alcuni Progetti @ UniPR (3/5) • Il portiere della Nazionale Italiana RoboCup • Si comporta come un vero e proprio portiere di calcio • Interagisce con ilresto della squadra Intelligenza Artificiale
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 Intelligenza Artificiale
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])). Intelligenza Artificiale
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 • Non sarà mai così complesso • Potrà solo arrivare a simulare alcuni processi cognitivi umani senza riuscire a riprodurli completamente Intelligenza Artificiale