Conoscenza e ragionamento Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Basi di conoscenza Motore inferenziale Algoritmi indipendenti dal dominio Base di conoscenza Contenuto specifico del dominio •Base di conoscenza (Knowledge Base o KB). Un insieme di rappresentazioni relative ad aspetti del mondo espresso in formule di un Linguaggio di rappresentazione della conoscenza. •Approccio dichiarativo •si può asserire (TELL) qualcosa nella KB •si può interrogare (ASK) la KB. Le risposte devono essere conseguenza della dell KB •Livello dell’implementazione •strutture dati •algoritmi per manipolarle Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Un agente basato sulla conoscenza L’agente deve essere in grado di: •Rappresentare stati, azioni, etc. •Incorporare nuove percezioni •Aggiornare la rappresentazione interna del mondo •Dedurre proprietà nascoste del momdo •Dedurre azioni appropriate Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Il mondo dei Wumpus Pit indica una buca, Stench un fetore, Brezze delle brezze, Gold l’oro Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Il mondo dei Wumpus •Percezioni: brezza, fetore, luccichio •Azioni: gira sinistra, gira destra, avanza, prendi, posa, spara •Obiettivo: prendere l’oro e portarlo nella posizione di partenza evitando le posizioni in cui c’è una buca o un Wumpus •Ambiente: •I quadrati adiacenti al wumpus sono fetidi •I quadrati adiacenti ad una buca sono ventilati •Luccichio solo nello quadrato dove c’è l’oro •Sparare uccide il wumpus se rivolti verso di lui •Sparare utilizza l’unica freccia •Prendere e’ possibili se si è nello stesso quadrato dell’oro •Posa lascia l’oro nel medesimo quadrato Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Agire e ragionare nel mondo dei Wumpus (a) situazione iniziale percezione = [] (b) dopo una mossa percezione = [Brezza] Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Agire e ragionare nel mondo dei Wumpus (a) dopo la terza mossa, percezione = [Fetore] (b) dopo la quinta mossa percezione = [Fetore,Brezza,Luccichio] Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica •La logica è un linguaggio formale per rappresentare delle informazioni e per trarre delle conclusioni •La sintassi definisce le proposizioni ammissibili del linguaggio •La semantica definisce il “significato” delle proposizioni cioè la verità di una proposizione in un mondo Es. il linguaggio dell’aritmetica: x + 2 >= y è una proposizione x2 + y > non è una proposizione x + 2 >= y e’vera se e solo se x+2 non è minore di y x + 2 >= y è vera in un mondo dove x = 7, y = 1 x + 2 >= y è falsa in un mondo dove x = 0, y = 6 Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Tipi di logica •Esistono differenti tipi di logiche Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Implicazione KB | La base di conoscenza KB implica Se e solo se è vero in tutti I mondi dobe KB è vero Es. La KB contenente “I Giants hanno vinto” e “I Reds hanno vinto” implica “Sia I Giants che I Reds hanno vinto” Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Inferenza KB | i La proposizione può essere derivata dalla KB con la procedura i La procedura i è corretta se KB | i è anche vero che KB | ogni volta che La procedura i è completa se ogni volta che è anche vero che KB | KB | i Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale - Sintassi I simboli P1 , P2 e le costanti true, false sono proposizioni. Se S è una proposizione anche S è una proposizione. Se S1 e S 2 sono proposizioni anche S1 S2 è una proposizione. Se S1 e S 2 sono proposizioni anche S1 S2 è una proposizione. Se S1 e S 2 sono proposizioni anche S1 S2 è una proposizione. Se S1 e S 2 sono proposizioni anche S1 S2 è una proposizione. Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale - Semantica Tavole di verità Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale - Semantica Mostrare mediante le tavole di verità che la formula (( P H ) H ) P è valida (vera in ogni interpretazione). Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale - Regole di inferenza | si può scrivere come , Modus Ponens : , Risoluzion e unitaria : , Risoluzion e : , oppure : Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale per il mondo dei wumpus Formule di percezione : S1,1 B1,1 S2,1 B2,1 S1,2 B1,2 Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale per il mondo dei wumpus Regole : se un quadrato non ha fetore né nel quadrato né nei quadrati adiacenti c`é un wumpus R1 : S1,1 W1,1 W1, 2 W2,1 R2 : S2,1 W1,1 W2,1 W2, 2 W3,1 R3 : S1,2 W1,1 W1, 2 W2, 2 W1,3 se c`é del fetore ci deve essere un wumpus nel quadrato o in uno di quelli confinanti R4 : S1,2 W1,3 W1, 2 W2, 2 W1,1 usando le regole di inferenza si puó derivare : W1,3 cioé nel quadrato 1,3 cé un wumpus Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Logica proposizionale per il mondo dei wumpus Traduzione della conoscenza in azione: se il wumpus è nel quadrato di fronte avanzare è una cattiva idea. A1,1 Est A W2,1 Avanza L' agente é in [1,1] rivolto ad Est e c' é un wumpus in [2,1] L’agente proposizionale Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999 Limiti della logica proposizionale per il mondo dei wumpus Le regole che abbiamo scritto devono essere ripetute per ogni quadrato e per ogni orientamento dell’agente. Se consideriamo una griglia 4*4 e 4 diverse orientazioni dell’agente abbiamo 4*4*4=64 copie della stessa regola. Un secondo problema riguarda il tempo. Se per t = 0 l’agente è in [1,1] e vale A1,1 al tempo t = 1 A1,1 andrà dimenticato mentre sara vero A2 ,1 se l’agente si sposta in quel quadrato. Dobbiamo cioè tenere conto del tempo. Dovremo ricorrere a una logica più ricca: la logica dei predicati del primo ordine. Ingegneria della conoscenza e sistemi esperti Dario Bianchi , 1999