Clculo de Predicados Fundamentos Inteligencia Artificial Luis Villaseor

  • Slides: 42
Download presentation
Cálculo de Predicados Fundamentos Inteligencia Artificial Luis Villaseñor Pineda

Cálculo de Predicados Fundamentos Inteligencia Artificial Luis Villaseñor Pineda

Algunas características deseables l Verificabilidad l l La representación debe permitirnos determinar el valor

Algunas características deseables l Verificabilidad l l La representación debe permitirnos determinar el valor de verdad de lo representado Evitar la ambigüedad l l No hay manera de encontrar una interpretación alterna Cuidado: la vaguedad no es ambigüedad l l Quiero comer comida china Forma canónica l Nos ayude a evitar expresar el mismo contenido de diferentes maneras

Representando el conocimiento l l El lenguaje es el instrumento ideal pero su uso

Representando el conocimiento l l El lenguaje es el instrumento ideal pero su uso es imposible (? ) por medios automáticos Estudiaremos otra representación y buscaremos los medios para ir del conocimiento “real” a esta nueva representación l l Dado que el conocimiento “real” es fácilmente expresado por el lenguaje ¿porqué no retomar las nociones de su estructura ? Así que esta transformación la veremos como una traducción del contenido del lenguaje (su contenido semántico) a otra representación

Llevando del lenguaje a CP l Básicamente nos apoyaremos en la estructura Predicado-Argumento l

Llevando del lenguaje a CP l Básicamente nos apoyaremos en la estructura Predicado-Argumento l l l Capturan las relaciones de los conceptos subyacentes de los constituyentes de una oración Se dice algo de alguien Ejemplos de esta estructura l l l Oración declarativa Determinadores Preposiciones

Ejercicio l restringe verbo sus un argumentos

Ejercicio l restringe verbo sus un argumentos

Ejercicio l restringe verbo sus un argumentos l l ¿Cuáles son los argumentos? ¿Cuál

Ejercicio l restringe verbo sus un argumentos l l ¿Cuáles son los argumentos? ¿Cuál es la relación existente entre ellos?

Ejercicio l restringe verbo sus un argumentos l l l ¿Cuáles son los argumentos?

Ejercicio l restringe verbo sus un argumentos l l l ¿Cuáles son los argumentos? ¿Cuál es la relación existente entre ellos? Sin embargo, no se trata de una transferencia directa es sólo una sugerencia l depende de nuestro objetivo final

Cálculo de Predicados l Cálculo de predicados de primer orden l l l Flexible

Cálculo de Predicados l Cálculo de predicados de primer orden l l l Flexible Bien entendido Computacionalmente tratable Satisface muchos de los requerimientos que vimos Su principal atractivo: facilidad de representar el mundo l El mundo consiste de objetos, propiedades de los objetos y relaciones entre objetos

Fundamentos l Término: el elemento más básico l Constantes – los objetos de nuestro

Fundamentos l Término: el elemento más básico l Constantes – los objetos de nuestro dominio l l Predicados – las relaciones o propiedades de los objetos l l l quiere(Luis, Cachivache) Funciones – mapean de objetos a objetos l l Cachivache casa-de(Luis) Variables Predicados l l Fórmula Atómica: predicados simples Fórmula: predicados o predicados complejos

Términos l Constantes: objetos específicos del mundo (letras mayúsculas o palabras en mayúsculas) l

Términos l Constantes: objetos específicos del mundo (letras mayúsculas o palabras en mayúsculas) l l l El mismo concepto que en un lenguaje de programación Pedro - Puebla Funciones: conceptos expresados por su descripción l l l Convenientes para cuando tenemos muchos objetos nombrados y todos ellos con un concepto asociado común La casa de Pedro - La. Casa. De(Pedro) CUIDADO: tienen la apariencia de predicados pero son Términos se refieren a objetos únicos

Términos l Variables: mecanismo para referirse a objetos del mundo (usaremos las letras minúsculas)

Términos l Variables: mecanismo para referirse a objetos del mundo (usaremos las letras minúsculas) l Con ellas podemos realizar afirmaciones y realizar inferencias sobre objetos sin tener una referencia a un objeto en particular

Predicados l l Es el mecanismo para establecer relaciones entre objetos Son símbolos que

Predicados l l Es el mecanismo para establecer relaciones entre objetos Son símbolos que se refieren a relaciones que se presentan sobre un número fijo de objetos en un dominio dado. l l Tengo cinco pesos O propiedades de un objeto l La luna es un satélite

Antes de seguir recordemos l l Un predicado siempre tiene un valor de verdad

Antes de seguir recordemos l l Un predicado siempre tiene un valor de verdad ¿Estas expresiones tienen un valor de verdad? l l l La casa de Manuel está hasta el quito infierno El perro de mi amigo La Zanahoria es un restaurante vegetariano La Zanahoria es un buen restaurante vegetariano

Más ejemplos l l Este lugar es un paraíso Todos los perros me muerden

Más ejemplos l l Este lugar es un paraíso Todos los perros me muerden Está lloviendo a cántaros en Puebla Mañana lloverá a cántaros en Puebla

Ejemplos ¿? l l quiere(Luis, mascota-de(Luis)) Y quiere(Luis, auto-de(Pedro)) quiere((Luis, mascota-de(Luis) Y auto-de(Aurelio))

Ejemplos ¿? l l quiere(Luis, mascota-de(Luis)) Y quiere(Luis, auto-de(Pedro)) quiere((Luis, mascota-de(Luis) Y auto-de(Aurelio))

Regresando l Los predicados se pueden asociar a través de conectores lógicos y calificar

Regresando l Los predicados se pueden asociar a través de conectores lógicos y calificar sus términos a través de cuantificadores l Un predicado sin conectores ni cuantificadores es llamado fórmula atómica

Semántica de FOPC l l ¿Cómo determinamos el valor de verdad de una fórmula

Semántica de FOPC l l ¿Cómo determinamos el valor de verdad de una fórmula lógica? Consideremos un enfoque de “base de datos” para determinar el valor de verdad l l Las fórmulas atómicas serán consideradas verdaderas si éstas están presentes en la base de conocimiento o pueden inferirse de otras fórmulas que están presentes en la base de conocimientos Las interpretaciones de las fórmulas conectores se basan en el significado de sus componentes y el significado de los conectores.

Variables y cuantificadores l Variables nos sirven para: l l l Referirse particularmente a

Variables y cuantificadores l Variables nos sirven para: l l l Referirse particularmente a un objeto anónimo Referirse genéricamente a todos los objetos en la colección Cuantificadores l l Existencial – debe haber al menos una substitución que resulte en una interpretación verdadera Universal – debe ser verdadera bajo cualquier substitución posible

Ejemplos l Todo restaurante vegetariano sirve comida vegetariana l l x Restaurante. Vegetariano(x) Sirve(x,

Ejemplos l Todo restaurante vegetariano sirve comida vegetariana l l x Restaurante. Vegetariano(x) Sirve(x, Comida. Vegetariana) La Zanahoria es un restaurante vegetariano l Restaurante. Vegetariano(Zanahoria)

Ejemplos ¿? l En que difieren estos dos ejemplos: l l x Restaurante(x) Sirve(x,

Ejemplos ¿? l En que difieren estos dos ejemplos: l l x Restaurante(x) Sirve(x, Comida. Vegetariana) f. (gato(f) gusta(Luis, f) ) l Cuidado: l gusta( Luis, f. gato(f) )

Inferencia l l Conjunto de reglas que nos permiten llegar a concluir el valor

Inferencia l l Conjunto de reglas que nos permiten llegar a concluir el valor de verdad de un predicado en función de otros Regla modus ponens

Ejemplo l Dado estos axiomas l Concluir:

Ejemplo l Dado estos axiomas l Concluir:

Ejemplo

Ejemplo

Forward chaining l Cada vez que agregamos un predicado a nuestra base de conocimientos,

Forward chaining l Cada vez que agregamos un predicado a nuestra base de conocimientos, usamos modus ponens para disparar todas las reglas asociadas. l l l Al disparar las reglas el nuevo conocimiento generado es añadido a nuestra base de conocimientos Este proceso continua de forma exhaustiva Siempre contamos con todo el conocimiento derivado

Backward chaining l Funciona a la inversa, en este caso tenemos un query que

Backward chaining l Funciona a la inversa, en este caso tenemos un query que deseamos probar l l l Primero revisamos si se encuentra en la base de conocimientos Si no es el caso, buscamos por reglas de implicación presentes en la base de conocimientos que involucren el query como consecuente Probaremos el consecuente si podemos probar el antecedente

Demostración l Lo que acabamos de hacer es una demostración l A partir de

Demostración l Lo que acabamos de hacer es una demostración l A partir de un conjunto de premisas concluimos un nuevo predicado con ayuda de una regla de inferencia

Fórmula bien formadas Objetos (A) Variables (x) Términos Predicados (Vuela) Formulas atómicas (Vuela (x))

Fórmula bien formadas Objetos (A) Variables (x) Términos Predicados (Vuela) Formulas atómicas (Vuela (x)) Formulas atómicas Negación ( ) Literales Conectivos ( , , , ) Formulas bien formadas Cuantificadores ( , ) x(Vuela(x) Pájaro(x))

Demostración l Una secuencia de FBFs {w 1, w 2, …, wn} se denomina

Demostración l Una secuencia de FBFs {w 1, w 2, …, wn} se denomina demostración de wn a partir de un conjunto de premisas (FBFs) sii cada wi de la secuencia pertenece a las premisas, o puede ser inferida utilizando las reglas de inferencia.

Reglas de inferencia

Reglas de inferencia

Reglas de inferencia (de remplazo)

Reglas de inferencia (de remplazo)

Resolución l En particular es de interés para IA una regla de inferencia llamada

Resolución l En particular es de interés para IA una regla de inferencia llamada Resolución Dado que B no puede ser tanto verdadera como falsa, el valor de verdad recae sobre las otras premisas l o podemos verla como la transitividad de la implicación

La regla de Resolución l De forma más general tenemos l Donde dj =

La regla de Resolución l De forma más general tenemos l Donde dj = ai

Usando resolución

Usando resolución

Para utilizar resolución l Es necesario dejar las formulas en una forma normal l

Para utilizar resolución l Es necesario dejar las formulas en una forma normal l O en un forma más estricta, una cláusula de Horn

Ejemplo Si la casa de Juan es grande entonces es mucho trabajo mantenerla, a

Ejemplo Si la casa de Juan es grande entonces es mucho trabajo mantenerla, a menos que tenga servicio de limpieza y no tenga jardín. grande(H) y casa(H, J) muchotrabajo(H) o ( servico(H, A) y no( jardín(H)) ) no( grande(H) y casa (H, J)) o muchostrabajo(H) o (servicio(H, A) y no( jardín(H)) no (grande(H)) o no(casa(H, J)) o muchostrabajo(H) o (servicio(H, A) y no( jardín(H)) [no (grande(H)) o no(casa(H, J)) o muchostrabajo(H) o (servicio(H, A) ] y [no (grande(H)) o no(casa(H, J)) o muchostrabajo(H) o no( jardín(H)) ] [no (grande(H)) o no(casa(H, J)) o muchostrabajo(H) o (servicio(H, A) ] [no (grande(H)) o no(casa(H, J)) o muchostrabajo(H) o no( jardín(H)) ] no ( grande(H) y casa(H, J) ) o muchostrabajo(H) o (servicio(H, A) no( (grande(H) y casa(H, J) y jardín(H) ) o muchostrabajo(H) grande(H) y casa(H, J) (muchostrabajo(H) o servicio(H, A)) grande(H) y casa(H, J) y jardín(H) muchostrabajo(H)

Unificación l l ¿Qué hacer con las variables? Necesitamos un mecanismo de substitución, l

Unificación l l ¿Qué hacer con las variables? Necesitamos un mecanismo de substitución, l l si tenemos variables debemos tener un modo de asociarlas a individuos Para ello tendremos una lista de ataduras l l Una lista de ataduras es un conjunto de entradas s de la forma v=e donde v es una variable y e es un objeto en nuestro dominio. Mascota(X, luis) | s == Mascota(barril, luis) donde s ={X=barril}

Unificación l Dadas dos expresiones p y q, un unificador de p y q

Unificación l Dadas dos expresiones p y q, un unificador de p y q es una lista de ataduras s tal que p|s = q|s l l - Q(z, V) ¿Cuál es su unificador? Si s 1 y s 2 son dos listas de ataduras, s 1 es más general que s 2 si para cada expresión p, p|s 2 es una instancia de p|s 1 l l P(X, c) f(X) c(H, X) s 2={X=2} s 1={X=Y} s 1={X=f(G)} s 2={X=f(2)} s 1={H=3, X=f(G)} s 2={X=f(2)} La unificación es el proceso de búsqueda del unificador más general para p y q.

Para calcular el mgu “most general unifier” para dos expresiones p y q: l

Para calcular el mgu “most general unifier” para dos expresiones p y q: l Si p o q son ya sea un objeto constante o una variable, entonces: l l Si p=q, p y q unifican y podemos regresar {}. Si alguna de las dos, p o q es una variable, regresamos el resultado de atar esa variable a la otra expresión. Si p es diferente de q, p y q no unifican, regresamos fracaso. Si ni p ni q son objetos constantes o variables, entonces deben estar compuestos de expresiones de algún tipo –conjunciones, disyunciones, expresiones relacionales o funcionales. En ese caso, el tipo de la expresión debe ser el mismo y deben ser de la misma aridad, en caso contrario regresar fracaso. Para cada argumento p 1. . . pn y q 1. . . qn, l l Sea s={} Invoque el algoritmo recursivamente para encontrar el mgu de pi|s y qi|s. Añada las nuevas ataduras a s añadiendo el nuevo mgu calculado a s, repita para cada argumento i. Si fallamos al unificar pi|s y qi|s fracaso.

Ejemplos l Dé el mgu para p y q l l p == X

Ejemplos l Dé el mgu para p y q l l p == X q == juan p ==X q == casa_de(Juan) p == gusta(X, chocolate) q == gusta(pepe, Y) p == f(x, y) q == f(y, a)

Resolución c/unificación l Donde ai y dj unifican con el mgu

Resolución c/unificación l Donde ai y dj unifican con el mgu

Resolución con Unificación Proposición 1 work(X) F 2 big(H 5) ٨ house(H 5, P

Resolución con Unificación Proposición 1 work(X) F 2 big(H 5) ٨ house(H 5, P 5) work(H 5) 3 big(H 5) ٨ house(H 5, P 5) F 4 T house(house_of(P 3), P 3) 5 big(house_of(P 3)) F 6 house(H 4, P 4) ٨ rich(P 4) big(H 4) 7 Ataduras Query negado Resolve 1, 2 X = H 5 Resolve 3, 4 H 5 = house_of(P 3), P 5 = P 3 house(house_of(P 3), P 4) ٨ rich(P 4) F Resolve 5, 6 H 4= house_of(P 3) 8 rich(P 3) F Resolve 7, 4 P 4 = P 3 9 lawyer(P 2) rich(P 2) 10 lawyer(P 3) F Resolve 8, 9 P 2=P 3 11 T lawyer(Juan) 12 T F Resolve 10, 11 P 3=Juan

Para la forma normal con variables

Para la forma normal con variables