Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción...
Transcript of Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción...
Agentes Lógicos
Universidad Politécnica de PueblaUniversidad Politécnica de Puebla
D J ú A G ál B lDr. Jesús Antonio González Bernal
Elementos de un Agente Basado en Conocimiento
Estado actual del mundoEstado actual del mundo
¿Cómo inferir propiedades del mundo no-vistas a partir de preceptos (reglas de acción)?preceptos (reglas de acción)?
¿Cómo evoluciona el mundo conforme transcurre el tiempo?
Q é i l ?¿Qué se quiere lograr?
¿Qué hacen sus propias acciones bajo diferentes i i ?circunstancias?
2
Base de ConocimientoEl componente principal de un agente basado en El componente principal de un agente basado en conocimiento
Su base de conocimiento (ó KB)Su base de conocimiento (ó KB)Conjunto de representaciones de hechos acerca del mundo
Cada representación individual se conoce como sentencia (sentence)
Las sentencias se expresan en un lenguaje conocido como:Lenguaje de representación de conocimiento
Se necesita una manera de:Añadir una nueva sentencia a la KB (método declarativo): Tell
Preguntar qué se conoce AskPreguntar qué se conoce: Ask
La respuesta proviene de lo que ha dicho a la KB previamente
3
InferenciaSegundo componente principal de un agente basado en Segundo componente principal de un agente basado en conocimiento
Determinar qué sigue a partir de lo que se ha dicho a la KB Determinar qué sigue a partir de lo que se ha dicho a la KB (tell) es el trabajo del mecanismo de inferencia
Detalles del mecanismo de inferencia se esconden dentro deTell y Ask
4
Agentes basados en ConocimientoA nivel de conocimiento (ó epistemológico)A nivel de conocimiento (ó epistemológico)
Describir al agente a partir de lo que sabeSin importar cómo fueron implementadosSin importar cómo fueron implementados
A nivel lógicoNivel en que el conocimiento se codifica en sentenciasNivel en que el conocimiento se codifica en sentencias
Links(GGBridge, SF, Marin)
A nivel de implementaciónA nivel de implementaciónEstructuras de datos en su KB y algoritmos que los manipulan
5
Un Agente Simple Basado en Conocimiento
El agente debe ser capaz de:
Representar estados, acciones, etc.Incorporar nuevas percepcionesActualizar representaciones internas del mundoActualizar representaciones internas del mundoDeducir propiedades escondidas del mundoDeducir acciones apropiadas
6
óDescripción del “Wumpus World”Descripción PEASp
Medida de desempeño (Performance measure)Oro +1000, muerte -1000, -1 por paso, -10 por usar la flecha
Ambiente (Environment)Ambiente (Environment)Cuadros adyacentes al “wumpus” son apestososA los cuadros adyacentes al pozo les llega briza “breezy”Brillo sí y sólo sí hay oro en el mismo cuadroBrillo sí y sólo sí hay oro en el mismo cuadroDisparar mata al “wumpus” si estás de frente a élDisparar utiliza la única flechaAgarrar recoge el oro si se está en el mismo cuadroAgarrar recoge el oro si se está en el mismo cuadroDejar tira el oro en el mismo cuadro
ActuadoresIzquierda Derecha Frente Agarrar Dejar DispararIzquierda, Derecha, Frente, Agarrar, Dejar, Disparar
SensoresBriza, Oro, Oler
7
óDescripción del “Wumpus World”
8
Caracterización del “Wumpus World”Observable??Observable??
No, solo percepción local
Determinista??Sí, las consecuencias de las acciones se especifican con exactitud
Episódico??l l l dNo, secuencial al nivel de acciones
Estático??Sí ni el Wumpus ni los pozos se muevenSí, ni el Wumpus ni los pozos se mueven
Discreto??Sí
Agente-Sencillo??Sí, el Wumpus es esencialmente una característica natural
9
Explorando el “Wumpus World”
10
Explorando el “Wumpus World”
11
Explorando el “Wumpus World”
12
Explorando el “Wumpus World”
13
Explorando el “Wumpus World”
14
Explorando el “Wumpus World”
15
Explorando el “Wumpus World”
16
Explorando el “Wumpus World”
17
íOtros Casos Difíciles
18
íOtros Casos Difíciles
19
óLógica en GeneralLógicas son lenguajes formales para representar información Lógicas son lenguajes formales para representar información de manera que se puedan obtener conclusionesSintaxis define las sentencias en el lenguajeg jSemántica define el “significado” de las sentencias
i.e., define la verdad de una sentencia en un mundo
Ejemplo, el lenguaje de la aritméticax + 2 ≥ y es una sentencia; x2 + y > no es una sentenciax + 2 ≥ y es verdad iff el número x + 2 no es menor que el número y
+ 2 ≥ d d d d d = 7 = 1x + 2 ≥ y es verdad en un mundo donde x = 7, y = 1x + 2 ≥ y es falso en un mundo donde x = 0, y = 6
20
EntailmentEntailment significa que una cosa sigue de otra:Entailment significa que una cosa sigue de otra:
KB ╞ αLa base de conocimiento KB “entails” ó genera la gsentencia α iff α es verdad en todos los mundos en donde KB es verdadero
Ej l l KB ti “h h 15 t di tEjemplo, la KB que contiene “hoy hay 15 estudiantes en clase”╞ “hoy hay más de 10 estudiantes en clase”Ejemplo x + y = 4 ╞ 4 = x + yEjemplo, x + y = 4 ╞ 4 = x + yEntailment es una relación entre sentencias (i.e.sintaxis) que se basa en semánticasintaxis) que se basa en semánticaNota: El cerebro procesa sintaxis (ó algo así)
21
ModelosLos lógicos típicamente piensan en términos de modelos, los cuales son mundos g p p , formalmente estructurados con respecto a cuál verdad puede ser evaluada
Decimos que m es un modelo de una sentencia α si α es verdad en mM(α ) es el conjunto de todos los modelos de αEntonces KB ╞ α iff M(KB) ⊆ M(α)Ej l KB H h 15 t di t lEjemplo: KB = Hoy hay 15 estudiantes en claseα = más de 10 estudiantes en clase
22
Entailment en el Mundo del WumpusSituación después de detectar nada en [1 1] moviéndose a la Situación después de detectar nada en [1,1], moviéndose a la derecha, briza en [2,1]
Considere posibles modelos para ?s asumiendo sólo pozosConsidere posibles modelos para ?s, asumiendo sólo pozos
3 opciones buleanas 8 posibles modelos
23
Modelos del Wumpus
24
Modelos del Wumpus
25
Modelos del Wumpus
26
Modelos del Wumpus
27
Modelos del Wumpus
28
InferenceKB ├ α = sentencia α se puede derivar a partir de KBKB ├i α sentencia α se puede derivar a partir de KBmediante el procedimiento iLas consecuencias de KB son un pajar; α es una aguja Las consecuencias de KB son un pajar; α es una aguja.
Entailment = aguja en pajar; inferencia = encontrarla
C ( d ) i iCorrecto (soundness): i es correcto si
Cuando KB ├i α, también es verdadero que KB ╞ αCompleto (completeness): i es completo si
Cuando KB ╞ α , también es verdadero que KB ├i α
29
óLógica Proposicional: SintaxisLa lógica proposicional es la lógica más simpleLa lógica proposicional es la lógica más simple
Ilustra ideas básicas
Los símbolos de proposición P y Q son sentenciasLos símbolos de proposición P y Q son sentencias
Si P es una sentencia, ┌P es una sentencia (negación)
S óSi P y Q son sentencias, P Q es una sentencia (conjunción)
Si P y Q son sentencias, P Q es una sentencia (disjunción)
Si P y Q son sentencias, P ⇒ Q es una sentencia (disjunción)
Si P y Q son sentencias, P ⇔ Q es una sentencia (disjunción)
30
ó áLógica Proposicional: SemánticaCada modelo especifica verdadero/falso para cada símbolo Cada modelo especifica verdadero/falso para cada símbolo proposicional
Ejemplo:Ejemplo:P1,2 P2,2 P3,1
falso falso falsofalso falso falso
Con estos símbolos, 8 modelos posibles, se pueden enumerar automáticamenteenumerar automáticamente
Reglas para evaluar verdad con respecto a un modelo m:
31
ó áLógica Proposicional: SemánticaReglas para evaluar verdad con respecto a un modelo m:Reglas para evaluar verdad con respecto a un modelo m:
Proceso recursivo simple evalúa una sentencia arbitraria, e.g.p g
32
Tablas de Verdad para Conectivos
33
Sentencias del Wumpus WorldSea P verdadero si hay un pozo en [i j]Sea Pi,j verdadero si hay un pozo en [i,j].
Sea Bi,j verdadero si hay una briza en [i,j].R PR1 :┌ P1,1
“Un cuadro tiene briza sí y solo si hay un pozo adyacente”
Añadimos percepciones a partir de los dos primeros d dcuadros visitados
34
Tablas de Verdad para Inferencia
Enumeramos renglones (diferente asignación a símbolos),g ( g )Si KB es verdadero en renglón, checar que α también lo es
35
óInferencia por EnumeraciónEnumeración por profundidad-primero de todos los modelos es correcta y completap p p y p
O(2n) para n símbolos; problema es co-NP-completo
36
óEquivalencia LógicaDos sentencias son lógicamente equivalentes iff son Dos sentencias son lógicamente equivalentes iff son verdaderas en ambos modelosα ≡ β sí y solo si α╞ β y β╞ αα β sí y solo si α╞ β y β╞ α
37
Validez y Satisfabilidad (satisfiable)Una sentencia es válida si es verdadera en todo modelo,U ,
Validez está conectada a inferencia vía el Teorema de Deducción
Una sentencia es satisfacible (satisfiable) si es verdadera en algún modelo
Una sentencia es no-satisfacible (unsatisfiable) si es verdadera en ningún modelo
Satisfabilidad está conectada a inferencia vía lo siguiente:
i.e. prueba α por reductio ad absurdum
38
éMétodos de PruebaMétodos de prueba se dividen en dos clases (a grandes rasgos)Métodos de prueba se dividen en dos clases (a grandes rasgos)
Aplicación de reglas de inferenciaGeneración legítima (correcta) de nuevas sentencias a partir de viejasg
Prueba = una secuencia de aplicaciones de reglas de inferenciaPueden usar reglas de inferencia como operadores en un algoritmo estándar d bú dde búsqueda
Típicamente requiere traducción de sentencias a una forma normal
Chequeo de ModelosChequeo de ModelosEnumeración de tablas de verdad (siempre en tiempo exponencial n)Búsqueda heurística en un espacio modelo (correcto pero q p ( pincompleto)
E.g., conflictos como en algoritmos tipo hill-climbing
39
óResoluciónRegla de inferencia de Resolución: completa para lógica Regla de inferencia de Resolución: completa para lógica proposicional
d d li j li l l i Edonde li y mj son literales complementarias. E.g.,
La resolución es correcta y completa para lógica proposicional
40
óAlgoritmo de ResoluciónPrueba por contradicción, i.e., muestra KB ┐α unsatisfiablePrueba por contradicción, i.e., muestra KB ┐α unsatisfiableRequiere que las sentencias estén en Conjunctive Normal Form
41
Conjunctive Normal FormConjunctive Normal Form (CNF --- universal)Conjunctive Normal Form (CNF --- universal)
Conjunción de disyunciones de literales
Clausulas
Convertir nuestra base de conocimiento a CNF nos permitirá Convertir nuestra base de conocimiento a CNF nos permitirá usar resolución para determinar si KB╞ α .
42
óConversión a CNFEjemplo: j p :
1. Eliminar ⇔ , reemplazando α ⇔ β con (α ⇒ β) (β ⇒ α) (p.e., eliminación bicondicional).
2. Eliminar ⇒, reemplazar α ⇒ β con ┐α β (i.e., eliminación de implicación)implicación).
3. Mover ┐hacia dentro usando la regla de Morgan y doble negación:┐ g g y g
4. Aplicar ley distributiva ( sobre ) y desarrollar
43
óEjemplo de Resolución
44