LE SFIDE DELL’INFORMATICA L’Intelligenza Artificiale 1 L’Intelligenza Artificiale Il sogno dell’uomo di costruire (creare?) qualcosa di simile a lui E' solo fiction...? 2 In un mondo che cambia velocemente grazie alle nuove tecnologie fare previsioni è un compito complesso. Le cose cambiano talmente rapidamente nel mondo della ricerca, delle applicazioni e le conseguenze possono essere imprevedibili 3 L’Intelligenza Artificiale: la sfida per il 2015 Hollywood and Stephen Hawking both warned about the dangers of Artificial Intelligence in 2014, but that hasn't stopped researchers from going forward with plans for the new year. Artificial Intelligence continues to be one of the busiest areas of study in emerging technology. 4 Ma le applicazioni dell’IA sono già nel nostro quotidiano The Internet of Things ( IoT) 5 Ma le applicazioni dell’IA sono già nel nostro quotidiano Self-driving cars con sistemi di “cruise control”adattativo che mantiene le distanze rispetto all’auto davanti, è in grado di parcheggiare autonomamente, si muove nel traffico stop-and-go etc. 6 Cosa è l‘Intelligenza Artificiale? Studia il modo di operare del Cervello? Costruisce sistemi artificiali intelligenti Emula il cervello umano? Cosa è comportamento intelligente? Studia l’intelligenza Ma cosa è l’Intelligenza? 7 Cos'è l'intelligenza? In psicologia, l'intelligenza è l'insieme di funzioni conoscitive, adattative e immaginative, generate dall'attività cerebrale dell'uomo e di alcuni animali. È anche definibile come la capacità di ragionare, apprendere, risolvere problemi, comprendere a fondo la realtà, le idee e il linguaggio. Sebbene molti considerino il concetto di intelligenza in un ambito più ampio, molte scuole di psicologia considerano l'intelligenza come distinta da tratti della personalità come il carattere, la creatività o la saggezza. 8 Cos'è l'intelligenza? In filosofia, per intelletto si intende quella facoltà mentale che ha ogni essere umano di comprendere la realtà e di farsi delle idee, la quale comporta a sua volta la capacità di scegliere, discernere, confrontare, comparare, dissociare, associare, sintetizzare. L'insieme di queste funzioni viene chiamata capacità intellettuale. 9 Storia dell'Intelligenza Artificiale La IA ha ereditato molte idee, punti di vista e tecniche da altre discipline, in particolare dalla filosofia, dalla matematica e dalla psicologia. Tuttavia, è senza dubbio con la cibernetica e l’informatica che queste influenze si fanno manifeste e aprono la strada alla nascita ufficiale dell’IA. 10 Cos'è l'intelligenza artificiale? L’Intelligenza Artificiale, IA, è quella disciplina appartenente all’Informatica che studia i fondamenti teorici, le metodologie e le tecniche che consentono di progettare sistemi hardware e software capaci di fornire all’elaboratore elettronico prestazioni che, a un osservatore comune, sembrerebbero essere di pertinenza esclusiva dell’intelligenza umana. 11 IA: Scienza o Ingegneria? L’IA è al tempo stesso scienza e ingegneria. È una scienza perché, nel momento in cui vengono emulati con determinati sistemi artificiali alcuni dei comportamenti intelligenti, l’uomo consegue l’obiettivo di formulare modelli oggettivi e rigorosi e di ottenere conferme sperimentali; ciò permette di ottenere un indiscutibile progresso nello studio, svolto con metodi scientifici, dell’intelligenza nell’uomo. 12 IA: Scienza o Ingegneria? L’IA, inoltre, è ingegneria perché, quando si ottengono dalle macchine prestazioni che emulano taluni comportamenti, erroneamente ritenuti inaccessibili all’ambito artificiale, si fornisce un oggettivo progresso al contributo che l’ingegneria (e le macchine progettate nel suo ambito) offre al miglioramento della vita dell’uomo. 13 La Preistoria dell'Intelligenza Artificiale -Automi semoventi di Erone di Alessandria (I sec. d.C.) -Progetto di meccanizzare la ragione, Gottfried Wilhelm Leibniz (16461716) -La Pascalina di Blaise Pascal (1623-1662) - Macchina analitica di Charles Babbage (17911871) 14 Il matematico francese Blasie Pascal (1623-1662) costruì circa 50 esemplari di calcolatrici dette ‚Pascaline‛, basate su serie di ruote dentate interconnesse. Lo strumento consente di sommare e sottrarre numeri composti da un massimo di dodici cifre, 15 operando automaticamente i riporti. Una macchina più performante per eseguire calcoli fu quella inventata da C. Babbage (1791-1881), in grado di realizzare tabulati di funzioni polinomiali. La sua importanza fu duplice: da un lato, costituiva un ulteriore avvicinamento alle logiche /architetture dell’informatica moderna, dall’altro , fu inventata con il preciso scopo di ottenere migliori risultati di quelli umani, ipotizzando, quindi, che per un compito preciso, una macchina potesse 16 esser migliore dell’uomo. IL XXI SECOLO: tutto diventa possibile Fondamentale l’apporto dato da due scienziati quasi unanimemente considerati i padri della moderna informatica: Alan Turing (1912-1954) e John von Neumann (1903-1957). Il primo è conosciuto per gli studi sulla computabilità e per il modello teorico (Macchina di Turing, MDT) secondo il quale, se un problema è codificabile con un algoritmo, allora esiste una macchina in grado di risolverlo. Al secondo si deve il modello dell’architettura dei moderni calcolatori. Fu il primo a pensare a programmi che potessero autonomamente duplicarsi, esattamente come succede agli organismi viventi più semplici (cellule, 17 batteri). La macchina di Turing 18 La architettura di Von Neumann 19 IA e cibernetica All’inizio degli anni Quaranta si comincia a indicare con il termine cibernetica lo studio sistematico dei processi riguardanti la comunicazione e il controllo sia negli animali sia nelle macchine. Warren McCulloch e Walter Pitts propongono nel 1943 il primo modello di neuroni artificiali, attingendo alla conoscenza della fisiologia e delle funzioni di base dei neuroni, alla logica e alla teoria della computabilità di Alan Turing. Per la prima volta si parla di reti neurali. 20 IA e cibernetica Nel 1949 Donald Hebb dimostra come una semplice regola di aggiornamento per modificare le forze di connessione fra i neuroni possa dare luogo a processi di apprendimento. Il tema dell’Apprendimento, centrale nelle reti neurali, è quello sul quale si sono concentrate, dalla metà degli anni Cinquanta, le ricerche in Intelligenza Artificiale. 21 La data di nascita dell'Intelligenza Artificiale Data di nascita ufficiale: 1956, anno in cui, presso il Dartmouth College di Hanover nel New Hampshire, la nuova disciplina viene fondata programmaticamente a partire dalla raccolta dei contributi sviluppati negli anni precedenti e in direzione delle potenzialità future. 22 Turing: il precursore Il contributo di Alan Turing (1912-1954) all’IA deve essere riconosciuto non solo nell’ambito dei fondamenti dell’informatica, ma anche in quello del dibattito filosofico relativo ai limiti e alle potenzialità delle nuove “macchine pensanti”. In un articolo del 1950, Turing propone il famoso test che porta il suo nome per verificare la presenza o meno di intelligenza in una macchina. 23 Dal gioco dell’imitazione al test di Turing Il test di Turing prende spunto da un gioco, chiamato "gioco dell'imitazione", con tre partecipanti: un uomo A, una donna B, e una terza persona C. C è tenuto separato dagli altri due e tramite una serie di domande deve stabilire qual è l'uomo e quale la donna. A deve ingannare C, B deve aiutarlo. Affinché C non possa disporre di alcun indizio (come l'analisi della grafia o della voce), le risposte alle domande di C devono essere dattiloscritte 24 Dal gioco dell’imitazione al test di Turing Il test di Turing si basa sul presupposto che una macchina si sostituisca ad A. Se la percentuale di volte in cui C indovina chi sia l'uomo e chi la donna è simile, prima e dopo la sostituzione di A con la macchina, allora la macchina stessa dovrebbe essere considerata intelligente, dal momento che - in questa situazione - sarebbe indistinguibile da un essere umano. 25 Dal gioco dell’imitazione al test di Turing 26 Il test di Turing :Agire come un essere umano Un elaboratore “intelligente” dovrebbe agire come un essere umano…,dunque, possedere capacità connesse a: elaborazione del linguaggio naturale rappresentazione della conoscenza ragionamento automatico apprendimento automatico visione automatica, robotica, o movimento automatico 27 Un esempio: Eliza • Esempio: D: Are you an artificial intelligent expert? R: Oh, I am an artificial intelligent expert! D: Did you ever teached an artificial intellignce course? R: Oh, I ever teached an artificial intelligence course! D: can you explain me the backword propagation algorithm? R: Why do you ask? 28 Dartmouth, estate 1956 Nell’estate del 1956 un gruppo di studiosi si riunisce al Dartmouth College con lo scopo di esaminare la congettura che ogni aspetto dell’intelligenza possa essere, in linea di principio, descritto in modo tanto preciso da poter far sì che una macchina lo simuli. Questa data segna l’inizio ufficiale di una nuova disciplina che il matematico John McCarthy propose di chiamare intelligenza artificiale. Gli altri organizzatori erano Marvin Minsky, Nathaniel Rochester e Claude Elwood Shannon. 29 Dopo-Dartmouth: grandi aspettative... Quelli che seguono il seminario di Dartmouth sono gli anni delle grandi aspettative. Possono essere rilevate due tendenze: da una parte il gruppo guidato da Newell, Shaw e Simon interessato alla simulazione dei processi cognitivi umani per mezzo dell’elaboratore (GPS. 1958: paradigma della simulazione); dall’altra coloro che miravano al raggiungimento della migliore prestazione possibile per i programmi (paradigma della prestazione o dell’emulazione). Furono sviluppati i primi programmi in grado di risolvere problemi di analogia nell’ambito di semplici figure geometriche, o di manipolare tali figure 30 organizzandole in blocchi sovrapposti. ...e prime delusioni... Ben presto però i ricercatori cominciano a incontrare i primi insuccessi: metodi adeguati per casi semplici si rivelano totalmente inadeguati in contesti più complessi e ampi (mancanza di scalabilità). Le grandi aspettative iniziali devono fare i conti con il fallimento dei progetti di traduzione automatica fra linguaggi naturali, fallimento che causa il ritiro delle ingenti sovvenzioni dei governi americano e inglese. 31 …una dose di realismo (1966-1974) Si capì ben presto che un “comportamento intelligente” non poteva esistere senza una dose di conoscenza che aiutasse il sistema artificiale a definire i contesti, valutare la debolezza di modelli teorici, utilizzare il buon senso. DENDRAL (1969) deduceva strutture molecolari sulla base di informazioni fornite da uno spettrometro di massa. DENDRAL doveva il suo successo all’alto numero di regole “ad-hoc” (euristiche) che gli specialisti avevano codificato. Si svilupparono Agenti Basati su Conoscenza cioè programmi che usano conoscenza e inferenze per risolvere problemi difficili, che di solito richiedono per la soluzione una significativa dose di competenza e buon senso. 32 GLI AGENTI: SISTEMI AUTOMATICI CHE PORTANO A TERMINE COMPITI UTILI. : gli agenti interagiscono con l’ambiente attraverso sensori e attuatori 33 AGENTI SONO CARATTERIZZATI DAL FATTO DI ESSERE: AUTONOMI: l’azione è guidata da direttive “interne” REATTIVI: percepiscono aspetti dell’ambiente e reagiscono in maniera appropriata PROATTIVI: possono prendere iniziative intraprendere azioni in funzione di obiettivi SOCIALI: comunicano con altri agenti 35 Cosa è un Agente Intelligente? E’ un agente capace di ragionare in base al buon senso, di agire in modo flessibile e appropriato, utilizzando la conoscenza posseduta, cioè un sistema automatico che ha la capacità di comportarsi in “modo intelligente” “L’ABILITA’ A COMPORTARSI IN MODO INTELLIGENTE E’ DESCRIVIBILE IN TERMINI DI CONOSCENZA POSSEDUTA DA UN SOGGETTO” 36 I Sistemi Basati su Conoscenza (KBS) Possiedono notevoli livelli di autonomia e agiscono nel loro ambiente in maniera soddisfacente, razionale, flessibile, anche in presenza di informazione parziale o incerta, esibendo un comportamento intelligente vale a dire consapevole, talvolta mostrando una vera esperienza nel dominio nel quale operano (sistemi esperti) 37 Definire il “comportamento intelligente” • Reagire in modo flessibile a situazioni diverse • trarre vantaggio da circostanze fortuite e talora imprevedibili • ricavare un senso da messaggi ambigui e contraddittori • riconoscere la rilevanza dei diversi elementi in una data situazione • trovare somiglianze e analogie tra situazioni differenti, nonostante elementi concreti di diversità • notare distinzioni tra situazioni diverse, nonostante elementi concreti di similitudine • sintetizzare nuovi concetti, produrre idee nuove 38 L’Agente basato su conoscenza Parte con una conoscenza generale del mondo e delle proprie azioni Usa il ragionamento logico per : Mantenere una descrizione del mondo consistente all’arrivo di nuove percezioni Dedurre una sequenza di azioni che porteranno all’ottenimento dei propri obiettivi Possiamo definirlo Agente Intelligente 39 Sistemi Esperti (SE) Sono sistemi artificiali in grado di elaborare un particolare tipo di conoscenza: l’Esperienza (un insieme di capacità altamente specializzate affinate in una situazione particolare per uno scopo specifico) Sono programmi che rappresentano e ragionano con la conoscenza di qualche ambito specialistico allo scopo di risolvere problemi specifici cioè con finalità specificatamente pratiche Progettazione Diagnosi Pianificazione Previsione … 40 I primi Sistemi Esperti: • MYCIN diagnosticava malattie infettive del sangue. MYCIN utilizza anche tecniche di ragionamento in ambito incerto, associando alle sue decisioni dei fattori di certezza. • SHRDLU sviluppò uno dei primi programmi per la comprensione del linguaggio naturale. • LUNAR consentiva a geologi di porre domande circa i campioni di rocce riportati dalla missione Apollo. 41 L’IA diventa un’industria (1980-1988) • In questo periodo, soprattutto per via del successo ottenuto in alcune specifiche aree dai Sistemi Esperti, partono le prime applicazioni industriali dell’ IA. • Nel 1981, il governo giapponese annuncia il progetto “Fifth Generation”, il cui obbiettivo era di costruire architetture orientate ad applicazioni di Intelligenza Artificiale. • La Xerox, la Texas Instruments, e la Symbolics costruiscono workstations orientate allo sviluppo di applicazioni in Lisp. 42 Reti neurali Intorno al 1985 quattro differenti gruppi di ricerca “riscoprono” un algoritmo di apprendimento, già scoperto anni prima, basato sulla retropropagazione (“feedback”) dell’errore e lo applicano con successo a molti problemi di apprendimento in informatica e ingegneria. Il ritorno di questo approccio viene promosso anche dalla nascita di una nuova disciplina: le scienze cognitive che, nel 1979, si consacrano ufficialmente come disciplina autonoma. 43 Basi teoriche dell’I.A. Tradizionale: visione algoritmica della mente che considera i meccanismi mentali simili ai programmi; i sistemi di intelligenza artificiale si basano in prevalenza sul paradigma deduttivo. Moderna: teoria dei modelli mentali: i processi mentali sono basati su meccanismi analogici di confronto della realtà con rappresentazioni interne; i programmi di intelligenza artificiale utilizzano processi induttivi e incrementali 44 I quesiti di fondo della I. A. Per comprendere la realtà è necessario confrontare i fenomeni esterni con rappresentazioni interne. Ma in che modo costruire rappresentazioni interne? Solo i processi mentali razionali possono essere riprodotti dall’informatica (non le emozioni). Ma quali meccanismi razionali? 45 La ricerca in I. A. La ricerca è centrata su: Sviluppo di metodi e teorie inerenti: Rappresentazione della Conoscenza Ragionamento Automatico e Ricerca di soluzioni Pianificazione Apprendimento Automatico Sviluppo di sistemi funzionanti nelle aree applicative: Sistemi Esperti Robotica Elaborazione del Linguaggio naturale Elaborazione di Immagini 46 Rappresentazione della conoscenza • Logica – Fornisce la struttura formale e le regole di inferenza. • Ontologia – Definisce il tipo di cose che esistono nel dominio applicativo • Computazione – Aiuta a distinguere la rappresentazione della conoscenza dalla pura filosofia 47 Le applicazioni di I.A. richiedono: • Rappresentazioni simboliche della realtà • (conoscenza) Meccanismi di ragionamento 48 Applicazioni dell'IA La pianificazione autonoma di attività e operazioni è l’area che più interessa la produzione industriale e la logistica, ma anche la ricerca spaziale (ad es. il controllo di sonde spaziali). I sistemi che operano in quest’area sono in grado di ricevere un obiettivo di alto livello, di generare autonomamente un piano composto da una sequenza di operazioni semplici per raggiungere l’obiettivo assegnato e, infine, di monitorare l’esecuzione del piano. 49 Applicazioni dell'IA Lo studio dei giochi , una delle aree tradizionali dell’IA, ha determinato lo sviluppo e la messa a punto di numerose tecniche, soprattutto quelle della ricerca autonoma di soluzioni in presenza di avversari. Nel 1997, per la prima volta nella storia, un programma sviluppato dalla IBM (Deep Blue) ha sconfitto il campione del mondo Garry Kasparov. 50 Applicazioni dell'IA Il controllo autonomo è un campo, nell’ambito del controllo di sistemi complessi, nel quale alcuni sistemi di IA si sono dimostrati molto efficaci, come nel caso del controllo di automobili, di veicoli “unmanned” e di sonde spaziali. 51 Applicazioni dell'IA Elaborare Conoscenza. La dimostrazione automatica di teoremi matematici volta a scoprire e provare nuovi teoremi nell’aritmetica, nella geometria, nella logica e nella meccanica è stato uno dei primi ambiti applicativi. In seguito i ricercatori si sono interessati prevalentemente allo sviluppo di tecniche inferenziali generali che, da un dato insieme di fatti, consentano di dedurre/indurre fatti nuovi o loro proprietà e relazioni, fare analogie, scoprire modelli causali, scoprire nuove teorie. 52 Applicazioni dell'IA L’area della robotica intelligente si articola nelle sottoaree della manipolazione e della navigazione che si estendono a un contesto multidisciplinare che va oltre il contributo fornito dall’IA per comprendere anche la meccanica, la sistemistica e l’elettronica. 53 L’obiettivo è la realizzazione di macchine autonome, capaci di sostituire l’uomo in ambienti pericolosi e non raggiungibili o nell’esecuzione di attività manuali ripetitive, pesanti e nocive o in ambito sanitario e nell’assistenza a soggetti disabili 54 Applicazioni dell'IA L’area di ricerca della visione artificiale riguarda il problema dell’elaborazione dell’informazione raccolta dai sensori visivi, per esempio da telecamere, al fine di riconoscere e classificare forme, oggetti e scene bidimensionali e tridimensionali. La vettura autonoma Stanley (Stanford University, 2005) ha percorso 132 miglia nel deserto del Mohave, California, senza alcun intervento umano. 55 Applicazioni dell'IA L’interesse per i sistemi intelligenti è stato accresciuto dall’opportunità di modellare la conoscenza. A partire da diverse ricerche precedenti, comprese quelle sulla rappresentazione della conoscenza, negli ultimi anni lo studio delle ontologie, ovvero delle descrizioni formali di domini specifici, ha raggiunto un buon grado di maturità e promette di aprire nuovi settori applicativi, specie nel campo della comprensione del linguaggio naturale. 56 Applicazioni dell'IA L’elaborazione del linguaggio naturale è il processo di trattamento automatico delle informazioni scritte o parlate nel linguaggio umano. Questo processo è reso particolarmente difficile e complesso a causa delle caratteristiche intrinseche di ambiguità del linguaggio umano. Presenta ancora molti problemi aperti. Dalla semplice elaborazione del linguaggio vocale e riconoscimento del parlato è necessario passare alla elaborazione del linguaggio naturale non solo a livello sintattico ma soprattutto semantico. http://www.chayden.net/eliza/Eliza.html 58 Ma per un comportamento intelligente è necessario apprendere «L’intelligenza artificiale che vediamo applicata oggi, alla diagnosi, alla terapia medica, alle previsioni del tempo, alle automobili senza pilota, consiste sostanzialmente in istruzioni date al computer che le applica alle diverse situazioni per il cui riconoscimento è stato programmato, e le esegue. La “vera AI” è quella in cui il computer apprende dall’esperienza le relazioni ottimali tra problemi e soluzioni ed è in grado di cambiare autonomamente software e anche hardware per migliorarsi». 59 L’Agente Intelligente in grado di apprendere PRESTAZIONE CONOSCENZA AMBIENTE APPRENDIMENTO 60 LE COMPONENTI L’elemento di apprendimento – apprende e migliora il comportamento L’ambiente fornisce informazione all’elemento di apprendimento che la usa per fare miglioramenti nella base di conoscenza esplicita. L’elemento di prestazione usa la conoscenza per svolgere al meglio il compito che gli è assegnato. La base di conoscenza è scorporata dal modulo di apprendimento. Viene usata e aggornata continuamente in base all’esperienza acquisita "Non pretendiamo che le cose cambino, se continuiamo a fare le stesse cose. La crisi può essere una grande benedizione per le persone e le nazioni, perché la crisi porta progressi. La creatività nasce dall'angoscia come il giorno nasce dalla notte oscura. E' nella crisi che sorge l'inventiva, le scoperte e le grandi strategie. Chi supera la crisi supera sé stesso senza essere superato. Chi attribuisce alla crisi i suoi fallimenti e disagi, inibisce il proprio talento e dà più valore ai problemi che alle soluzioni. La vera crisi è l'incompetenza. Il più grande inconveniente delle persone e delle nazioni è la pigrizia nel cercare soluzioni e vie di uscita ai propri problemi. Senza crisi non ci sono sfide, senza sfide la vita è una routine, una lenta agonia. Senza crisi non c'è merito. E' nella crisi che emerge il meglio di ognuno, perché senza crisi tutti i venti sono solo lievi brezze. Parlare di crisi significa incrementarla, e tacere nella crisi è esaltare il conformismo. Invece, lavoriamo duro. L'unico pericolo della crisi è la tragedia che può conseguire al non voler lottare per superarla." 62 Albert Einstein GRAZIE 63