sesion10 agentes lógicos - ccc.inaoep.mxjagonzalez/ai/sesion10_agentes_logicos.pdf · descripción...

44
Agentes Lógicos Universidad Politécnica de Puebla Universidad Politécnica de Puebla D J ú A G ál B l Dr. J esús Antonio González Bernal

Upload: trinhhanh

Post on 14-Oct-2018

225 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 2: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 3: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 4: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 5: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 6: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 7: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

ó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

Page 8: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

óDescripción del “Wumpus World”

8

Page 9: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 10: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Explorando el “Wumpus World”

10

Page 11: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Explorando el “Wumpus World”

11

Page 12: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Explorando el “Wumpus World”

12

Page 13: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Explorando el “Wumpus World”

13

Page 14: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Explorando el “Wumpus World”

14

Page 15: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Explorando el “Wumpus World”

15

Page 16: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Explorando el “Wumpus World”

16

Page 17: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Explorando el “Wumpus World”

17

Page 18: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

íOtros Casos Difíciles

18

Page 19: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

íOtros Casos Difíciles

19

Page 20: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

ó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

Page 21: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 22: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 23: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 24: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Modelos del Wumpus

24

Page 25: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Modelos del Wumpus

25

Page 26: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Modelos del Wumpus

26

Page 27: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Modelos del Wumpus

27

Page 28: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Modelos del Wumpus

28

Page 29: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 30: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

ó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

Page 31: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

ó á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

Page 32: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

ó á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

Page 33: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

Tablas de Verdad para Conectivos

33

Page 34: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 35: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 36: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

ó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

Page 37: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

ó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

Page 38: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 39: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

é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

Page 40: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

ó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

Page 41: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

ó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

Page 42: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

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

Page 43: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

ó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

Page 44: Sesion10 Agentes Lógicos - ccc.inaoep.mxjagonzalez/AI/Sesion10_Agentes_Logicos.pdf · Descripción del “Wumpus World” yDescripción PEAS yMedida de desempeño (Performance measure)

óEjemplo de Resolución

44