La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

AOT Lab Dipartimento di Ingegneria dellInformazione Università degli Studi di Parma Intelligenza Artificiale Rappresentazione della Conoscenza e Ragionamento.

Presentazioni simili


Presentazione sul tema: "AOT Lab Dipartimento di Ingegneria dellInformazione Università degli Studi di Parma Intelligenza Artificiale Rappresentazione della Conoscenza e Ragionamento."— Transcript della presentazione:

1 AOT Lab Dipartimento di Ingegneria dellInformazione Università degli Studi di Parma Intelligenza Artificiale Rappresentazione della Conoscenza e Ragionamento Agostino Poggi Stefano Cagnoni

2 Rappresentazione della Conoscenza e Ragionamento 2 Rappresentazione della conoscenza Per risolvere qualsiasi tipo di problema di IA dobbiamo: Definire la conoscenza riguardante il problema. Definire dei metodi per manipolarla. Per definire la conoscenza bisogna: Definire i fatti che vogliamo rappresentare (livello della conoscenza). Rappresentare questi fatti attraverso i cosiddetti metodi per la rappresentazione della conoscenza (livello simbolico).

3 Rappresentazione della Conoscenza e Ragionamento 3 Rappresentazione della Conoscenza Proprietà di un metodo per la rappresentazione della conoscenza: Adeguatezza di rappresentazione, cioè la capacità di rappresentare tutti i tipi di conoscenza necessari per ragionare su un certo dominio. Adeguatezza inferenziale, cioè la capacità di manipolare la conoscenza del sistema per ottenere nuova conoscenza. Efficienza inferenziale, cioè la capacità di fornire delle informazioni per guidare il meccanismo inferenziale nelle direzioni più promettenti. Efficienza di acquisizione, cioè la capacità di acquisire facilmente nuova conoscenza.

4 Rappresentazione della Conoscenza e Ragionamento 4 Rappresentazione della Conoscenza Esistono due classi principali di strumenti per la rappresentazione della conoscenza: Rappresentazione basata sulle azioni (logica e sistemi a regole) Descrizioni primitive di concetti: fatti Manipolazione dei concetti attraverso metodi di ragionamento –Inferenza –Ragionamento in avanti/indietro Rappresentazione basata sugli oggetti (reti semantiche e frame) Descrizioni primitive e complesse di concetti Manipolazione dei concetti attraverso –Navigazione delle relazioni tra i diversi concetti –Esecuzione di procedure associate ai diversi concetti

5 Rappresentazione della Conoscenza e Ragionamento 5 Logica La logica è la scienza che fornisce all'uomo gli strumenti indispensabili per verificare con sicurezza la correttezza dei ragionamenti. La logica fornisce strumenti formali per: Esprimere le inferenze in termini di operazioni su espressioni simboliche. Dedurre conseguenze da certe premesse. Studiare la verità o falsità di certe proposizioni data la verità o falsità di altre proposizioni. Stabilire la consistenza e la validità di una data teoria.

6 Rappresentazione della Conoscenza e Ragionamento 6 Logica dei Predicati Il linguaggio standard della logica è il cosiddetto calcolo dei predicati del primo ordine indicato anche con il nome di logica dei predicati. La logica dei predicati si basa su forme atomiche dette predicati che possono avere un certo numero di argomenti: p, q(11), r(X, 25, a, s(a)). Le espressioni che possono essere argomenti sono dette termini e possono essere: costanti: 11, a; variabili: X, Var; (normalmente indicate con la lettera maiuscola) funzioni: s(a), t(11, X).

7 Rappresentazione della Conoscenza e Ragionamento 7 Logica dei Predicati Le formule atomiche possono essere combinate per formare delle altre formule: Congiunzione:A & B Disgiunzione:A B Implicazione:A B Negazione: A Le formule con variabili possono essere interpretate tramite i quantificatori: Universali: X p(X) Esistenziali: X p(X)

8 Rappresentazione della Conoscenza e Ragionamento 8 Logica dei Predicati Il modo per inferire nuova conoscenza in logica è basato sul ragionamento deduttivo. Il ragionamento deduttivo è un ragionamento che, condotto correttamente, mantiene la veridicità delle premesse. Nel ragionamento deduttivo, se le conoscenze da cui partiamo (le premesse) sono vere, allora anche le nuove conoscenze che otteniamo in base a queste (le conclusioni) sono vere. Il sillogismo è un esempio tipico di ragionamento deduttivo: «Gli uomini sono mortali, Socrate è un uomo, allora Socrate è mortale».

9 Rappresentazione della Conoscenza e Ragionamento 9 Logica dei Predicati In logica la conoscenza iniziale viene indicata con il nome di assiomi. Le nuove conoscenze dedotte dagli assiomi sono dette teoremi. Per dedurre nuovi teoremi si usano le regole di inferenza.Ogni regola di inferenza è composta da due parti: Un insieme di premesse separate da virgole. Le conclusioni. Queste due parti sono divise dal simbolo che si legge: «è possibili derivare».

10 Rappresentazione della Conoscenza e Ragionamento 10 Logica dei Predicati Alcune tra le più note regole di inferenza sono le seguenti: Modus Ponens:A B, A B Istanziazione universale: X p(X) p(a) Modus Tollens: A B, B A Introduzione congiunzione:A, B A & B Eliminazione congiunzione:A & B A A & B B Introduzione disgiunzione:A A B B A B Eliminazione disgiunzione:A B, A B A B, B A

11 Rappresentazione della Conoscenza e Ragionamento 11 Forma a Clausole La difficoltà di ottenere nuovi teoremi sta nel scegliere, di volta in volta, la regola di inferenza da applicare. Le formule della logica dei predicati possono essere trasformate in una forma equivalente a clausole. Una clausola è una formula priva di quantificatori ed è formata da una disgiunzione di termini. Con la rappresentazione a clausole è possibile utilizzare ununica regola di inferenza detta regola di risoluzione.

12 Rappresentazione della Conoscenza e Ragionamento 12 Forma a Clausole Regola di risoluzione: da A B, B C deduci A C Il metodo di risoluzione permette di dimostrare un teorema mediante il metodo della refutazione, cioè si dimostra che la negazione del teorema è falsa: Assumiamo che la negazione del teorema sia vera. Mostriamo che gli assiomi più la negazione del teorema sono fra loro inconsistenti. Dato che gli assiomi sono per definizione veri, allora la responsabile della contraddizione è la negazione del teorema. Quindi il teorema è vero. Si ottiene una contraddizione quando si arriva a dedurre la clausola vuota.

13 Rappresentazione della Conoscenza e Ragionamento 13 Forma a Clausole Abbiamo le seguenti clausole: [A1] lavora(piero) prepara(piero,esame [A2] ha(piero,tempo) ha(piero,soldi) va(piero, partita) [A3] ha(piero,tempo) lavora(piero) compera(piero,calcolatore) ha(piero,soldi) [A5] compera(piero,calcolatore) [A6] prepara(piero esame) Vogliamo dimostrare il teorema: [T] va(piero,partita) Per risolvere il teorema aggiungiamo il teorema negato agli assiomi: [~T] va(piero,partita)

14 Rappresentazione della Conoscenza e Ragionamento 14 Forma a Clausole Risolviamo ~T con A2 : [~T] va(piero,partita) [A2] ha(piero,tempo) ha(piero,soldi) va(piero, partita) Otteniamo il lemma L1 che risolviamo con A3: [L1] ha(piero,tempo) ha(piero,soldi) [A3] ha(piero,tempo) Otteniamo il lemma L2 che risolviamo con A4: [L2] ha(piero,soldi) lavora(piero) compera(piero,calcolatore) ha(piero,soldi)

15 Rappresentazione della Conoscenza e Ragionamento 15 Forma a Clausole Otteniamo il lemma L3 che risolviamo con A5: [L3] lavora(piero) compera(piero,calcolatore) [A5] compera(piero,calcolatore) Otteniamo il lemma L4 che risolviamo con A1: [L4] lavora(piero) [A1] lavora(piero) prepara(piero,esame Otteniamo il lemma L5 che risolviamo con A6: [L5] prepara(piero,esame [A6] prepara(piero esame) A1 (assioma!) è stato negato => contraddizione => ~T è falso

16 Rappresentazione della Conoscenza e Ragionamento 16 Vantaggi della Logica I vantaggi principali della logica sono: Precisione, la logica ha una semantica chiara e definita per la quale esistono metodi standardizzati per determinare il significato di una espressione. Flessibilità, la logica rappresenta la conoscenza in modo dichiarativo, quindi in modo indipendente dal suo uso. Modularità, le asserzioni della logica possono entrare in una base di conoscenza in modo indipendente le une dalle altre.

17 Rappresentazione della Conoscenza e Ragionamento 17 Limiti della Logica I limiti principali della logica sono: Inadeguatezza espressiva, non può rappresentare mondi dinamici, non può rappresentare conoscenze probabilistiche. Monotonicità, laggiunta di un teorema non provoca la cancellazione di nessun teorema precedente. Inefficienza, la dimostrazione automatica basata esclusivamente sulla logica si fonda su processi di ricerca, la ricerca è inerentemente esponenziale ed eventuali euristiche non ne cambiano la natura combinatoria.

18 Rappresentazione della Conoscenza e Ragionamento 18 Sistemi di Produzione I sistemi di produzione sono uno strumento ideale per la costruzione di sistemi basati sulla conoscenza. Infatti, permettono di implementare algoritmi di ricerca guidata dai dati (forward chaining) e algoritmi di ricerca guidata dagli obiettivi (backward chaining). Permettono di realizzare sistemi di ragionamento deduttivo e anche sistemi di ragionamento plausibile e incerto. OPS5 (Brownston, et al., 1985) è sicuramente il sistema di produzioni più conosciuto.

19 Rappresentazione della Conoscenza e Ragionamento 19 Regole di Produzione I sistemi di produzione rappresentano la conoscenza attraverso regole di produzione. Una regola di produzione è composta da una coppia condizione/azione ed ha la forma: IF THEN Le azioni possono essere di due tipi distinti: Azioni sul mondo esterno. Azioni sulla conoscenza del sistema. Le regole di produzione modellano sia conoscenza procedurale che conoscenza dichiarativa.

20 Rappresentazione della Conoscenza e Ragionamento 20 Architettura dei Sistemi di Produzione Un sistema di produzione è composto da tre parti: La base delle regole. La memoria di lavoro. Linterprete delle regole. La base delle regole contiene la conoscenza del sistema espressa in regole di produzione. La memoria di lavoro contiene le informazioni sullo stato di avanzamento del processo computazionale. Linterprete controlla il sistema applicando le regole alle informazioni nella memoria di lavoro.

21 Rappresentazione della Conoscenza e Ragionamento 21 Funzionamento dei Sistemi di Produzione Dopo aver inserito nella memoria di lavoro le informazioni relative al problema che si vuole risolvere, il funzionamento di un sistema di produzione si basa sulla ripetizione di tre passi: Confronto. Risoluzione conflitti. Esecuzione. Nella fase di confronto vengono individuate le regole la cui parte sinistra è soddisfatta dal contenuto della memoria di lavoro.

22 Rappresentazione della Conoscenza e Ragionamento 22 Funzionamento dei Sistemi di Produzione Nel caso in cui più di una regola può essere eseguita, nella fase di risoluzione dei conflitti viene scelta una regola in base a una serie di criteri prestabiliti. Scelta la regola, essa viene eseguita, compiendo azioni sul mondo e aggiornando la memoria di lavoro. La terminazione dellattività del sistema può avvenire in diversi modi. I più comuni sono: Linsieme dei conflitti è vuoto. Una regola ha come azione una istruzione di halt.

23 Rappresentazione della Conoscenza e Ragionamento 23 Criteri per Risolvere i Conflitti Esistono vari criteri per risolvere i conflitti: Criterio di ordinamento (rule ordering o fire first): le regole sono ordinate in ordine di importanza; Criterio di refrattarietà (refractoriness): una regola può essere attivata sugli stessi dati una sola volta. Di questo criterio esistono due versioni: Il criterio ha validità su tutti i cicli precedenti. Il criterio ha validità sul ciclo precedente. Criterio di recenza (recency): gli elementi della memoria di lavoro vengono etichettati in base al ciclo in cui sono stati inseriti, le regole che utilizzano dati più recenti sono favorite rispetto a quelle che usano dati che si trovano in memoria da più tempo.

24 Rappresentazione della Conoscenza e Ragionamento 24 Criteri per Risolvere i Conflitti Criterio di specificità (specificity), si favoriscono le regole più specifiche, cioè quelle con la condizione più dettagliata qualora le condizioni di queste regole siano un sovra-insieme delle altre regole contenute nellinsieme di conflitti. Criterio di ordinamento in base ai dati (data ordering): si assegnano delle priorità diverse alle varie condizioni e si esegue la regola che ha le condizioni a priorità più alta. Criterio di ordinamento in base ai pesi (weight ordering): si assegnano alle regole dei pesi che tengono conto del numero di volte che una regola è stata attivata. Criterio di ordinamento in base alla grandezza, vengono favorite le regole con il maggior numero di condizioni.

25 Rappresentazione della Conoscenza e Ragionamento 25 Gestione dei Cicli In certi casi un sistema di produzioni può cadere in un ciclo di attivazioni ripetute che non ha termine. Esistono due modi per implementare dei meccanismi per eliminare dei cicli di attivazioni ripetuti: Cablare nellinterprete un meccanismo che evita lattivazione di regole che cercano di aggiungere alla memoria di lavoro informazioni già presenti. Definire le regole di produzione in modo che inseriscano delle clausole che ne inibiscano lattivazione successiva.

26 Rappresentazione della Conoscenza e Ragionamento 26 Conoscenza di Controllo Alcuni sistemi di produzione permettono la definizione di meta-regole per sfruttare della conoscenza euristica sul problema da risolvere per velocizzare e facilitare la sua soluzione. Questa conoscenza può riferirsi a: Quali regole applicare in certe situazioni. In quale ordine soddisfare i sotto-obiettivi. Quali sequenze di regole sono utili da applicare.

27 Rappresentazione della Conoscenza e Ragionamento 27 Lalgoritmo RETE Il punto debole dei sistemi di produzione è il grande dispendio di risorse della fase di confronto. Un algoritmo di confronto molto efficiente è lalgoritmo RETE (Forgy, 1982). Esso si basa su: Una struttura dati detta rete di discriminazione che utilizza due tipi di nodi: Nodi test che corrispondono ai nodi intermedi della rete e rappresentano dei test sui dati nella memoria di lavoro. Nodi terminali che rappresentano le singole regole di produzione. Ad ogni ciclo aggiorna linsieme dei conflitti: Se un dato viene aggiunto, cerca le regole che sono attivabili da quel dato. Se un dato viene tolto, cerca le regole che erano attivate da quel dato.

28 Rappresentazione della Conoscenza e Ragionamento 28 Vantaggi e Limiti dei Sistemi di Produzione I principali vantaggi dei sistemi di produzione sono: La semantica di una regola di produzione è facilmente intuibile. I meccanismi di controllo sono programmabili. I principali limiti dei sistemi di produzione sono: Laggiunta di una regola può comportare la modifica di regole preesistenti. I meccanismi di controllo sono globali e difficili da regolare.


Scaricare ppt "AOT Lab Dipartimento di Ingegneria dellInformazione Università degli Studi di Parma Intelligenza Artificiale Rappresentazione della Conoscenza e Ragionamento."

Presentazioni simili


Annunci Google