Intelligenza%20Artificiale - PowerPoint PPT Presentation

About This Presentation
Title:

Intelligenza%20Artificiale

Description:

Title: PowerPoint Presentation Last modified by: pazienza Created Date: 1/1/1601 12:00:00 AM Document presentation format: Presentazione su schermo – PowerPoint PPT presentation

Number of Views:170
Avg rating:3.0/5.0
Slides: 57
Provided by: uniroma2It
Category:

less

Transcript and Presenter's Notes

Title: Intelligenza%20Artificiale


1
Intelligenza Artificiale
  • Maria Teresa PAZIENZA
  • a.a. 2008-09

2
Corsi e crediti
  • Corso di IA da 10 crediti per i nuovi studenti
    dellindirizzo Sistemi Intelligenti
  • Corso di IA da 5 crediti per gli studenti
    dellindirizzo Sistemi Intelligenti che hanno già
    maturato 5 crediti
  • Corso di IA per gli studenti dellindirizzo Ing.
    Soft.

3
Programma
  • Il corso sarà articolato su 3 aree

Elab. del Ling.Natur.
Gestione della conoscenza
Tecnologie di IA
4
Sito
  • Sul sito di Didattica Web tutte le informazioni
    su
  • Programma
  • Progetto
  • Ricevimento
  • Esami (date, iscrizioni, risultati)
  • Tesi
  • Varie

5
Progetto
  • Potrà consistere
  • nella realizzazione di un prototipo informatico
    progettato e realizzato secondo modalità
    introdotte nel corso delle lezioni o,
    equivalentemente,
  • nella stesura di una tesina di approfondimento di
    temi inerenti allIA ed affrontati soltanto
    limitatamente nel corso delle lezioni o,
    equivalentemente,
  • nellapprofondimento di temi trattati a lezione
    con la implementazione di un test case.
  • Qualora se ne diano i presupposti è possibile che
    la componente progettuale dellesame sia
    integrata in progetti per altri corsi

6
Materiale didattico
  • Il materiale didattico verrà segnalato e
    distribuito di volta in volta in relazione ai
    temi specifici affrontati nel corso delle lezioni
    (dispense, articoli, slides, monografie e saggi,
    eventuali collegamenti a risorse digitali
    disponibili in rete, ...).
  • Il materiale e le dispense prodotte saranno
    contestualmente segnalati e pubblicati nel sito
    del corso su Didattica Web

7
Esami
  • Sono previste prove desame diversificate per le
    diverse tipologie di corso
  • Per partecipare ad una prova desame è
    obbligatorio prenotarsi almeno 24 ore prima
    dellesame.
  • La partecipazione ad una prova scritta non
    preclude la partecipazione a prove successive
    (nel caso si rifiuti la valutazione conseguita)
    previa nuova registrazione.

8
Intelligenza Artificiale
  • Lobiettivo è risolvere il problema rappresentato
    da
  • Qual è
  • il corretto livello di astrazione della mente
    umana
  • per costruire un modello mentale
  • che debba successivamente guidare le azioni di
    una macchina intelligente?

9
Intelligenza Artificiale
  • NellIA ci si occupa di
  • Costruire macchine intelligenti che operino
    come/meglio degli umani
  • Formalizzare la conoscenza ed i meccanismi di
    ragionamento in ogni settore di interesse
  • Usare modelli computazionali per capire/definire
    il comportamento di umani ed agenti intelligenti
  • Rendere facile ed efficace linterazione
    uomo/macchina

10
Intelligenza Artificiale
  • Materia in forte evoluzione dare una definizione
    che delimiti rigorosamente i campi di interesse
    rischierebbe di escludere a priori sviluppi
    futuri che già si intravedono
  • LIA non è una lista di argomenti e metodologie
    è piuttosto una attività complessa legata alla
    comprensione di comportamenti intelligenti ed
    alla loro implementazione in sistemi
    intelligenti.

11
Intelligenza Artificiale
  • LIA è contemporaneamente scienza e tecnica,
    disciplina di frontiera in cui sincontrano
    diversi domini del sapere logica, informatica,
    psicologia, neuroscienze, filosofia
  • Attiene a tutti i campi dellinformazione e trova
    applicazione in tutti i settori

12
Intelligenza Artificiale
  • LIA si manifesta con un duplice profilo
  • disciplina ingegneristica (costruire macchine
    capaci di svolgere compiti intellettuali
    integrando componenti diverse)
  • disciplina psicologica (costruire macchine capaci
    di esprimere le caratteristiche essenziali
    dellattività cognitiva umana spiegando i
    rapporti tra pensiero e fisicità delluomo)

13
Intelligenza Artificiale
  • La formalizzazione logica dei problemi è
    fondamentale alla loro soluzione
  • Le metodologie risolutive possono richiedere
    tecnologie di varia tipologia
  • Ove la formalizzazione completa non sia
    possibile, si ricorre a soluzioni parziali
  • Lelaborazione del linguaggio naturale è un
    problema tipico dellIA
  • Gestire la conoscenza (del mondo, di dominio,
    dellapplicazione,) è un problema tipico dellIA

14
Elaborazione del linguaggio naturale
15
Il ruolo della conoscenza nei sistemi informatici
  • Le conoscenze servono per
  • interpretare la realtà capire che cosa è
    successo (ad es., ipotizzare le cause di un
    evento che si è verificato)
  • prevedere levoluzione della realtà prevedere
    con approssimazione accettabile quali modifiche
    si potranno verificare nel futuro
  • agire in modo razionale modificando la realtà
    costruire piani dazione per raggiungere
    determinati obiettivi.

16
Learning to Reason
Reasoning
Task
  • interarazione con il mondo (World)
  • per knowledge representation si intende
  • - ciò che si è scelto per facilitare il
    processo di inferenza
  • - ciò che si è imparato a seguito
    dellinterazione con il mondo
  • la prestazione viene misurata rispetto al mondo
    e per uno specifico task di ragionamento

Page 16
17
Conoscenza un problema trasversale
  • La rappresentazione (e gestione) della conoscenza
    è un problema di interesse per lIA e non solo.
  • E strettamente collegato alla costruzione di
    sistemi software una parte rilevante
    dellIngegneria del Software (SE) attiene a
    tematiche di rappresentazione della conoscenza

18
IA e SE
  • la molteplicità sia dei proprietari che degli
    sviluppatori di software,
  • il poter aggiungere nuove caratteristiche a
    servizi già esistenti,
  • la eterogeneità e complessità dei prodotti
  • presuppongono che lo sviluppo del software sia un
    processo basato su una grande quantità di
    conoscenza ed una comunicazione intensa tra le
    entità coinvolte

19
Sistemi intelligenti (1)
  • Agire in ambienti sconosciuti od ostili (robot in
    una situazione ignota, agenti/softbot nel web)
  • Gestire grandi quantità di conoscenza
    descrittiva del mondo e dellapplicazione, con
    lobiettivo di migliorare le prestazioni nella
    risoluzione di un problema, acquisire ulteriore
    conoscenza per collaborare con altre entità
    (umani, agenti), gestire informazioni non
    strutturate come nel web

20
Sistemi intelligenti (2)
  • Dialogare con altre entità per migliorare
    linterazione e lacquisizione di conoscenza
  • Capire i sistemi con cui si interagisce per
    meglio integrare le componenti, facilitare
    linterazione, regolare laccesso alle risorse

21
Sistemi intelligenti (integrazione)
  • I sistemi intelligenti non agiscono in maniera
    isolata, piuttosto costituiscono componenti
    importanti in sistemi più complessi a supporto di
    una maggiore capacità, flessibilità e
    cooperazione del sistema nel suo insieme. Ciò
    richiede lintegrazione di
  • componenti di reasoning in sistemi tradizionali
  • conoscenza in basi di dati
  • description logics in sistemi object oriented

22
Sistemi intelligenti (coordinazione di più agenti
umani/artificiali)
  • Per
  • Comprensione/gestione del dialogo
  • Costruzione di assistenti intelligenti (capaci
    di capire lutente)
  • Supporto al lavoro di gruppo e/o collaborativo
  • Gestione networks

23
Sistemi intelligenti (coordinazione di più agenti
umani/artificiali)
  • Richiede
  • Comprensione del linguaggio naturale scritto e
    parlato
  • Generazione del linguaggio naturale
  • Gestione delle ambiguità grammaticali e
    semantiche
  • Combinazione di tecniche di nlp con altre
    tecnologie per realizzare interfacce multimediali

24
Sistemi intelligenti (acquisizione di conoscenza
da più agenti)
  • Richiede
  • Capacità di collezionare, codificare,
    rappresentare conoscenza
  • Integrazione di metodologie per la
    rappresentazione di conoscenze differenti
  • Gestione dellorganizzazione concettuale della
    conoscenza in ontologie e la loro integrazione
  • Gestione efficace della strutturazione,
    indicizzazione, ricerca di grandi
    quantità/risorse di conoscenza
  • Ragionare su domini di conoscenza diversi
  • Applicare la conoscenza del senso comune

25
SWESE 2006
  • The advantages of Semantic Web Technologies in
    software engineering include reusability and
    extensibility of data models, improvements in
    data quality, and discovery and automated
    execution of workflows
  • The Semantic Web can serve as a platform on which
    domain models can be created, shared and reused

26
SWESE 2007
  • The advent of the World Wide Web has led many
    corporations to web-enable their business
    applications and to the adoption of web service
    standards in middleware platforms.
  • Marking a turning point in the evolution of the
    Web, the Semantic Web is expected to provide more
    benefits to software engineering.
  • To bring together languages and tools, such as
    the Unified Modelling Language (UML), developed
    for Software Engineering, with Semantic Web
    languages such as RDF and OWL.

27
Topics of interest include
  • Tools developed or being developed for software
    engineering using SW languages
  • Integration or application development projects
    combining Software Engineering techniques and
    Semantic Web tools or languages
  • Lessons learned in Automatic Software Engineering
    or KBSE applicable to SW based SE
  • Visions for SW driven software modernization
  • Integration of UML, OO programming languages and
    Semantic Web languages
  • Software specification and Semantic Web languages
  • ..

28
Topics of interest include (2)
  • Ontologies for software engineering
  • Component discovery and ontologies
  • Feature modelling and ontologies
  • Ontology reasoning for software engineering
  • Semantic annotations in software engineering
  • Ontology-Driven Architecture How to introduce
    Semantic Web technology into mainstream
    development processes
  • Ontologies for requirements, software
    engineering, and/or software evolution
  • Semantic-based intelligent assistance tools for
    software developers

29
Web focus
  • I sistemi software sono sempre più alimentati dal
    web
  • Devono quindi gestire/interagire con dati di
    sorgenti eterogenee che possono essere
    sconosciute in fase di sviluppo del software.
  • Per la risoluzione di questo problema gli
    ingegneri del software cercano tecnologie che li
    aiutino nella gestione della eterogeneità anche
    runtime.

30
Semantic Web in Soft. Engineering
  • Le tecnologie del Semantic Web possono migliorare
    lingegneria del software (da MDA a ODA) per
    aumentare la scalabilità e composizionalità delle
    componenti
  • supportando la rappresentazione non ambigua della
    terminologia di dominio
  • permettendo il controllo automatico della
    consistenza e validazione di regole invarianti,
    precondizioni e post-condizioni
  • supportando la mediazione e trasformazione della
    terminologia basata su conoscenza

31
Semantic Web in Soft. Engineering
  • Improvement
  • si ottiene, si supporta una aumentata scalabilità
    e compatibilità dei componenti
  • Problema
  • difficoltà nella costruzione e manutenzione di
    ontologie di metadati

32
Semantic Web in Soft. Engineering
  • Come
  • classificatore per raggruppare tool e tecniche
    correlate per modellare rigorosamente la
    semantica durante le fasi di specificazione e
    disegno del ciclo di vita del software
  • meccanismo per (rigorosamente) descrivere,
    identificare, scoprire e condividere artefatti
    allinterno dei sistemi, sottosistemi e team di
    disegno sia in fase di disegno che runtime

33
Semantic Web in Soft. Engineering (2)
  • Il Semantic Web può essere visto come un set di
    corpora formalizzati di contenuti interrelati,
    riusabili e che possono essere ulteriormente
    classificati come
  • passivi, dati in forma di
  • documenti e dati piatti HTML, XML,..
  • documenti e dati generati dinamicamente via JSP,
    PHP,..
  • metadati RDF, OWL
  • media, pictures video, music,..
  • databases

34
Semantic Web in Soft. Engineering (3)
  • Il Semantic Web può essere visto come un set di
    corpora formalizzati di contenuti interrelati,
    riusabili e che possono essere ulteriormente
    classificati come
  • attivi, funzionalità presentate come
  • Web services, semantic web services
  • componenti funzionali referenziati come frammenti
    con contenuti passivi (Java script, Java applets)
  • Sia gli attivi che i passivi possono essere
    descritti usando tecniche ontologiche

35
Intelligenza Artificiale (IA)
  • I calcolatori generali (general purpose) hanno la
    caratteristica di essere macchine simboliche,
    ovvero sono
  • (1) macchine capaci di manipolare strutture di
    simboli da porre in corrispondenza ad entità
    diverse
  • parole di una lingua naturale,
  • espressioni matematiche,
  • posizioni del gioco degli scacchi,
  • oggetti da riconoscere e classificare,

36
Intelligenza Artificiale (IA)
  • I calcolatori generali (general purpose) sono
  • (2) macchine capaci di utilizzare listruzione di
    salto condizionato che consente di cambiare
    lordine di esecuzione delle istruzioni.
  • La macchina rivela una capacità discriminativa,
    ovvero seleziona/sceglie la sequenza di
    istruzioni da eseguire rivelando un atteggiamento
    intelligente.

37
Intelligenza Artificiale (IA)
  • Inizialmente
  • attenzione allanalisi di problemi relativi ad
    ambiti ben delimitati, per risolvere i quali
    bastano regole esplicite per lelaborazione
    simbolica e poca conoscenza specializzata.
  • Successivamente
  • da elaborazione simbolica a conoscenza tacita, ad
    abilità senso-motorie, alla capacità di
    adattamento allambiente naturale o alle
    interazioni sociali con altri agenti naturali o
    artificiali.

38
Intelligenza Artificiale (IA)
  • Inizialmente
  • convinzione che compito principale dellIA fosse
    lo studio delle strategie di soluzione di
    problemi efficacemente selettive, o euristiche.
  • La programmazione euristica, analogamente agli
    esseri umani, esplora solo una parte dei percorsi
    che, in base alle informazioni possedute,
    potrebbero portare ad una soluzione accettabile
    del problema dato e che soddisfino alcuni
    requisiti irrinunciabili.

39
Intelligenza Artificiale (IA)
  • Tipicamente fondati sulla programmazione
    euristica sono i sistemi basati su conoscenza (e
    tra questi i sistemi esperti) tutti basati su
    una base di conoscenza che raccoglie e
    sistematizza conoscenze e tecniche di
    ragionamento euristico.
  • Su una base di conoscenza opera un motore
    inferenziale che risolve i problemi posti, anche
    simulando tecniche di ragionamento euristico.
  • I sistemi basati su conoscenza vengono
    considerati uno dei prodotti principali della
    Intelligenza Artificiale simbolica.

40
Intelligenza Artificiale (IA)
  • I sistemi basati su conoscenza non permettono di
    affrontare adeguatamente alcuni aspetti
  • Conoscenza tacita il comportamento intelligente
    che si ispira al saper fare, ovvero ad una
    abilità difficile da descrivere con conoscenze
    dichiarative e regole esplicite di manipolazione
    simbolica
  • Azioni in tempo reale capacità di reazione
    adeguate in tempi utili per il problema
  • Robustezza capacità di lavorare anche in
    situazioni diverse da quelle previste dai
    progettisti

41
Intelligenza Artificiale (IA)
  • Il connessionismo ha affrontato con un qualche
    successo alcuni problemi di conoscenza tacita e
    robustezza.
  • Il modello di un sistema di IA, in tal caso,
    assomiglia più ad un robot immerso in un ambiente
    non predeterminato dal progettista ed in grado di
    mostrare comportamenti adattivi in tempo reale,
    che ad un calcolatore in grado di sostenere una
    conversazione o di giocare una partita a scacchi.
  • Il connessionismo rivela incapacità di simulare
    ampie capacità di ragionamento e di affrontare i
    problemi dellIA distribuita e dei sistemi
    multiagente (ogni agente deve comunicare con
    altri agenti, formarsi aspettative sui risultati
    delle interazioni, ragionare su obiettivi e
    capacità di altri agenti, dimensione sociale
    dellIA).

42
Intelligenza Artificiale (IA)
  • La costruzione di programmi simulativi che siano
    in grado di fornire indicazioni (spiegare) su
    certe capacità cognitive è assimilabile al
    processo di costruzione e revisione dei modelli
    scientifici.
  • Quando il programma gira sul calcolatore,
    diventa possibile individuarne le lacune,
    suggerire modifiche per migliorarlo trovando
    nelle sue prestazioni conferme o smentite della
    teoria generale.
  • Es. General Problem Solver che dimostrava di
    essere una simulazione del protocollo verbale di
    un soggetto umano alle prese con la dimostrazione
    di un teorema di logica proposizionale.

43
Intelligenza Artificiale (IA) in pratica
  • Dal punto di vista ingegneristico
  • Le applicazioni dellIA sono valutate per le
    loro capacità e prestazioni, indipendentemente
    dai metodi utilizzati.
  • Idea di base costruire macchine che non
    necessariamente simulino, riproducendolo, il
    comportamento del cervello umano, ma che siano in
    grado di emularlo selettivamente nel risultato
    finale di certe operazioni

44
Architettura di base di un sistema di IAambiente
  • Un sistema IA non è un insieme di istruzioni
    immutabili che rappresentano la soluzione di un
    problema, bensì un ambiente in cui rappresentare,
    utilizzare e modificare una base di conoscenza.
  • La soluzione viene costruita dinamicamente a
    fronte di un certo numero di possibilità.

45
Architettura di base di un sistema di IAambiente
  • Un sistema IA deve esprimere due tipi distinti di
    conoscenza
  • una base di conoscenza (che raccoglie la
    conoscenza di dominio e del problema attraverso
    asserzioni e fatti da un lato e relazioni e
    regole dallaltro)
  • un motore inferenziale che utilizza la base di
    conoscenza per giungere alla soluzione e fornire
    spiegazioni. Scelta dinamica di quale conoscenza
    utilizzare nel processo risolutivo.
  • forward chaining versus backward chaining.

46
Logica
  • La logica è sicuramente uno degli strumenti più
    antichi, assestati e rigorosi utilizzati
    dalluomo per formalizzare e spiegare il proprio
    ragionamento.
  • La logica è semanticamente ben definita,
    altamente dichiarativa, ed ha un apparato
    deduttivo generale.
  • La logica classica è utilizzata in IA per
    rappresentare la conoscenza su un problema (anche
    se con alcune limitazioni). La BdC diventa una
    collezione di asserzioni della logica dei
    predicati del primo ordine le regole di
    inferenza permettono di dedurre nuove asserzioni
    (teoremi) non esplicitamente contenute nella BdC

47
Programmazione logica e Prolog
  • La programmazione logica nasce negli anni 70
  • Kowalsky ad Edimburgo definì i fondamenti teorici
    della progr. logica ed uninterpretazione
    procedurale delle clausole della logica che
    permette di ridurre il processo di dimostrazione
    di un teorema al tradizionale processo di
    computazione dei linguaggi di programmazione.
  • Colmeraurer a Marsiglia nel 72 realizzò un
    interprete per il linguaggio Prolog.

48
Apprendimento automatico
  • Un sistema non potrà dirsi intelligente se
    manca della proprietà di accrescere le proprie
    conoscenze e migliorare le proprie abilità
    (apprendimento).
  • Per raggiungere questo obiettivo bisogna dotare
    le macchine simboliche di capacità di
    ragionamento induttivo oltre che deduttivo.

49
Apprendimento automatico
  • Il ragionamento induttivo procede
  • da asserzioni singolari riguardanti particolari
    fatti o fenomeni (esempi)
  • ad asserzioni universali esprimibili mediante
    ipotesi o teorie che spieghino i fatti dati e
    siano in grado di predirne di nuovi.
  • Linferenza deduttiva preserva la verità (nel
    senso della correttezza logica)
  • Linferenza induttiva non garantisce ciò e può
    tendere ad uneccessiva generalizzazione e a
    produrre errori.

50
Limiti, problemi aperti e
  • Lapprendimento e la rappresentazione del senso
    comune sono ben lontani dallessere una soluzione
    completa.
  • Limitata crescita incrementale della conoscenza e
    costi elevati nel produrla
  • Alto costo di manutenzione dei sistemi
    intelligenti
  • Sistemi inferiori alle aspettative iniziali

51
aspettative
  • Supporto allaccesso di informazioni in grandi
    patrimoni conoscitivi (archivi aziendali,
    informazioni on-line, repositories di dominio,)
    che richiede la capacità di analisi e gestione di
    dati eterogenei e ridondanti.
  • Strumenti per lestrazione di conoscenza ad ampio
    spettro che utilizzino tecniche di apprendimento
    automatico.
  • Capacità di integrare, allinterno di sistemi
    informativi generali, moduli che producano task
    intelligenti
  • Navigazione intelligente sul web

52
IA debole versus IA forte
  • LIA debole si propone di costruire (reale
    costruibilità) macchine che si comportino come
    se fossero intelligenti, ossia macchine capaci
    di risolvere tutti i problemi che lintelligenza
    umana sa risolvere.
  • LIA forte afferma che la macchina che agisce in
    modo intelligente deve avere una intelligenza
    cosciente, una mente cosciente indistinguibile
    dalla mente umana lIA forte vuol dare risposta
    al problema astratto di che cosa sia il pensare
    per una macchina, anche se poi non riesce a
    costruire macchine intelligenti.

53
  • Le simulazioni al calcolatore dei processi
    cerebrali forniscono modelli degli aspetti
    formali di questi processi, ma la simulazione non
    va confusa con la riproduzione.
  • Il modello computazionale dei processi mentali
    non è più reale di quello di qualsiasi altro
    fenomeno naturale. Si può immaginare una
    simulazione al calcolatore dellossidazione degli
    idrocarburi in un motore dautomobile, o dei
    processi di digestione in uno stomaco alle prese
    con una pizza. Nel caso del cervello la
    simulazione non è più reale che nel caso
    dellautomobile e dello stomaco.
  • La simulazione di un processo cognitivo non
    produce gli stessi effetti della neurobiologia di
    quel processo cognitivo.
  • J.Searle, La mente è un programma?, 1990

54
Bibliografia (per cominciare)
  • J. McCarty, M.L. Minsky, N. Rochester, C.E.
    Shannon A proposal for the Dartmouth Summer
    Research Project on Artificial Intelligence,
    1955,
  • http//www-formal.stanford.edu/jmc/history/dartmo
    uth/dartmouth.html
  • R. Cordeschi, G. Tamburrini LIntelligenza
    Artificiale la storia e le idee, 2001,
  • http//www3.humnet.unipi.it/epistemologia/gtamb/i
    a.pdf
  • H. Uskoreit Language Technology, A First
    Overview http//www.dfki.de/hansu/LT.pdf
  • D. Gelernter Artificial Intelligence is Lost in
    the Woods http//www.technologyreview.com/printer
    _friendly_article.aspx?id18867
  • M. Benasayag G. Schmit L'epoca delle passioni
    tristi Feltrinelli Editore, 2004, ISBN
    8807103672, 9788807103674

55
Bibliografia (per cominciare)
  • R. Dipert Artifacts. Art works and Agency, 1993,
    Philadelphia Temple University Press
  • J. Searle Is the brain a digital computer?,
    Proceedings of The American Philosophical
    Association, 64,3 (1990), pagg.21-38.
  • J. Searle The construction of social reality,
    1995, New York Thje Free Press
  • J. Doyle, T. Dean Strategic Directions in
    Artificial Intelligence, ACM Computing Surveys,
    28 (4), Dec. 1996

56
Argomenti trattati in questa lezione
  • Ruolo dellIA nellICT
  • Elaborazione del linguaggio naturale come punto
    di riferimento per lIA
  • Gestione della conoscenza come punto di
    riferimento per lIA
  • Ruolo dellIA nella Ingegneria del Software
Write a Comment
User Comments (0)
About PowerShow.com