Inferencia en Lógica de Predicados

Slides:



Advertisements
Presentaciones similares
MOVIMIENTO JOVENES DE LA CALLE CIUDAD DE GUATEMALA chi siamo quienes-somos qui sommes-nous who we are attività actividades activités activities scuola.
Advertisements

1 Datos sobre webloggers Datos extraidos de la encuesta a webloggers disponibles en la web de los autores.
el 1, el 4 y el 9 tres cuadrados perfectos autosuficientes
La aritmetización de la sintaxis
Inferencia en Lógica Proposicional
INTELIGENCIA ARTIFICIAL
Inferencia en Lógica de Predicados
SISTEMAS INTELIGENTES
Inferencia en Lógica Proposicional
INTELIGENCIA ARTIFICIAL
INTELIGENCIA ARTIFICIAL
INTELIGENCIA ARTIFICIAL
INTELIGENCIA ARTIFICIAL
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS ( Resumen PYMES ) Noviembre de 2004.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS (MICROEMPRESAS, resultados provisionales) 29 de julio de 2004.
TEMA 2 MÚLTIPLOS Y DIVISORES
Programación entera En muchos problemas reales las variables sólo pueden tomar valores enteros Ejemplos: decisiones sobre inversiones, compras, arranques,
Respuestas Buscando a Nemo.
ABECEDARIO FIGURAS GEOMÉTRICAS NÚMERO
SISTEMA DE NUMEROS NÚMEROS ENTEROS DIVISIBILIDAD NÚMEROS PRIMOS
Diseño de AFN’s.
ECUACIONES LINEALES.
1 Jeopardía TemasTramaPersonajesRecursos Autor Q $100 Q $200 Q $300 Q $400 Q $500 Q $100 Q $200 Q $300 Q $400 Q $500 Jeopardía Final.
MOVIMIENTO JOVENES DE LA CALLE CIUDAD DE GUATEMALA chi siamo quienes-somos qui sommes-nous who we are attività actividades activités activities alimentazione.
Los elementos invertibles de Z6 son 1 y 5
1. Apoyo exterior sobre ala inferior de viga de acero
Distribuciones de probabilidad bidimensionales o conjuntas
¿Cuál debe ser el valor de b, para que el número que resulta al reemplazar b en la expresión 5 (b + 2) + 3 sea múltiplo de 5?
Repaso del capítulo Primer Paso
Sistemas de Ecuaciones
CARLOS ANDRES MONTENEGRO
UNIDAD 2: FUNCIONES.
FUNCIONES DE UNA VARIABLE REAL
EL OSO APRENDIZ Y SUS AMIGOS
Operaciones con expresiones algebraicas
INTELIGENCIA ARTIFICIAL
Ecuaciones Cuadráticas
Ecuaciones y Resolución de Ecuaciones Lineales
Estadística Computacional I
La minimización de los costes
LOGICA.
Fundamentos de Lógica Difusa (Fuzzy)
Comité Nacional de Información Bogotá, Julio 21 de 2011 Consejo Nacional de Operación de Gas Natural 1 ESTADISTICAS NACIONALES DE OFERTA Y DEMANDA DE GAS.
Comité Nacional de Información Bogotá, Julio 27 de 2011 Consejo Nacional de Operación de Gas Natural 1 ESTADISTICAS NACIONALES DE OFERTA Y DEMANDA DE GAS.
Lógica Proposición Ejemplos
Expresiones Algebraicas
¿Qué es un conjunto? Un conjunto es una colección de objetos considerada como un todo. Los objetos de un conjunto son llamados elementos o miembros del.
EXAMEN 6.
CULENDARIO 2007 Para los Patanes.
La transformada de Laplace
Lógica Temporal. Tablas semánticas.
Introducción al lenguaje R Sesión 2: Objetos en R
“Modelo utópico para hacer feliz a una mujer” Miguel-A.
Inteligencia Artificial
MODELACIÓN MATEMÁTICA
Sistemas de Ecuaciones lineales
¡Usted me ha engañado! H. 1. he tenido 2. conseguí 3. creí 4. estaban 5. tuve 6. salí 7. acababa 8. había ido 9. se descompuso 10. había tenido 11.
ESCUELA PROFESIONAL DE INGENIERIA INDUSTRIAL CURSO: GESTION DE LA CALIDAD ING.ELIZABETH FERG 1.
DEPARTAMENTO DE FORMACIÓN GENERAL.
LA RECTA Y SUS ECUACIONES
Ecuaciones En esta unidad se van a estudiar o recordar los siguientes puntos: Diferencias entre ecuaciones e identidades Resolución de ecuaciones de primer.
INSTITUCION EDUCATIVA LAS FLORES
Simulacion de sistemas dinamicos
Inferencia en Lógica de Primer Orden
Hasta ahora: Lógica Proposicional. q. p:-q. r:-p ?-r. Si tienes un jaguar, conduces rápido. Tienes un jaguar. Es cierto que conduces rápido? p:-q.
Resolución, la regla de inferencia y el cálculo Raúl Monroy.
Campus Estado de México—Raúl Monroy Resolución, la regla de inferencia y el cálculo Raúl Monroy.
Lógica de proposiciones, deducción natural
Inferencia Lógica Capítulos , 8.1 y
Transcripción de la presentación:

Inferencia en Lógica de Predicados INTELIGENCIA ARTIFICIAL Inferencia en Lógica de Predicados Mg. Samuel Oporto Díaz Lima, 16 de Julio 2005

Tabla de Contenido Sustitución. Unificación Reglas de Inferencia con Cuantificadores Formas Canónicas para Resolución Bibliografía

Objetivos Exponer los mecanismos de inferencia en lógica de Predicados. Presentar los conceptos de Sustitución y Unificación. Ampliar la técnica de Resolución a la Lógica de Predicados Exponer las reglas de inferencia con cuantificadores. Exponer las formas canónicas de la resolución. Exponer los conceptos del probador de teoremas (refutación)

SUSTITUCION

Término Base (Ground term) El término base es: Una constante Taki Piedra Pedro El resultado de una función donde todas sus entradas son términos base. loriana(Lunes) policia(Asiri)

Sustitución Se utilizará la notación SUST(, ) para representar el resultado de aplicar la sustitución (o lista de enlace)  a la oración , por ejemplo:  = ConcurreA(x, y)  GustaDe(x, y)  = {x/Juan, y/CursoIA} subst( {x/Juan, y/CursoIA}, ConcurreA(x, y)  GustaDe(x, y) ) ConcurreA(Juan, CursoIA)  GustaDe(Juan, CursoIA) Juan concurre a curso de IA y Juan gusta de curso de IA.

Sustitución Dadas las variables x1, x2, ..., xn y los términos t1, t2, .., tn (sin variables), la sustitución θ es un conjunto de pares ordenados: θ = {x1/t1, x2/t2,..,xn/tn} (x/t se lee sustituir x por t) La operación consiste en, dado un literal α que contiene x1, x2, .., xn, y una sustitución θ, reemplazar en todos los lugares de α donde aparezca xi por ti. Ejemplo: subst({X/george, Y/tony}, likes(X,Y)) = likes(george, tony) Los términos de θ no pueden contener símbolos de constantes ni de función que ya estén en α

Sustitución Sustitución vacía {}, cuando no modifica la expresión. Composición de la sustitución. Es una sustitución tal que αθ1 θ2=(αθ1) θ2. La composición de sustituciones es asociativa (θ1 θ2)θ3 = θ1(θ2 θ3) Pero no conmutativa θ1θ2≠θ2θ1 No se puede calcular la composición resultante uniendo simplemente los conjuntos θ1 y θ2, hemos de aplicar primero θ2 a los términos de θ1 y después añadir los pares de θ2 cuyas variables no están entre los de θ1.

Ejercicios Sean: α = F1(x,y), F2(y,w), F3(x,y,z,r) θ1 = (x/a, y/b, z/w), θ2 = (w/c), θ3 = (r/b) Calcular: αθ1θ2θ3 αθ1 = F1(a, b), F2(b,w), F3(a, b, w, r) αθ1θ2 = F1(a, b), F2(b,c), F3(a, b, c, r) αθ1θ2θ3 = F1(a, b), F2(b,c), F3(a, b, c, c)

Ejercicios Calcular: θ4 = (θ1θ2)θ3 y luego αθ4 θ1 = (x/a, y/b, z/w), θ2 = (w/c), θ3 = (r/b) θ12= (x/a, y/b, z/c) θ4 = (x/a, y/b, z/c, r/b) αθ4 = F1(a,b), F2(b,w), F3(a,b,c,b) Calcular: θ4 = θ1(θ2θ3) y luego αθ4 θ23= (w/c, r/b)

Ejercicios  = monopolio(M) penalizado(M)  = {M/LosGarcia} subst( {M/LosGarcia}, monopolio(M)  penalizado(M) ) monopolio(LosGarcia)  penalizados(LosGarcia)  = realiza(M,W)  feo(W)  odiado(M)  = {M/Hormel, W/Spam} subst( {M/Hormel,W/Spam} realiza(M,W)feo(W)odiado(M)) realiza(Hormel, Spam) feo(Spam)  odiado(Hormel)

UNIFICACION

Unificación Lo que hace la rutina de unificación UNIFICAR es convertir dos oraciones α y β en una sustitución mediante la cual α y β resultan idénticas. De no existir tal unificación, UNIFICAR produce una falla. Formalmente: UNIFICAR(α, β) = , donde SUST(, α) = SUST(, β)  se conoce como el unificador de las dos oraciones.

Unificación Supongamos que tenemos la regla conoce(juan,X)  odia(juan,X) “Juan odia a todos los que conoce” Y la queremos utilizar como regla de inferencia de Modus Ponens y poder saber a quién odia Juan. Es decir, tenemos que saber a qué oraciones de la base de conocimiento se unifican a conoce(juan,X). Supongamos que nuestra base de conocimiento contiene: conoce(juan,jane) conoce(Y,leónidas) conoce(Y,madre(Y)) conoce(X, isabel)

Unificación Al unificar el antecedente de la regla con cada una de las oraciones de la BC obtenemos: conoce(juan,X)  odia(juan,X) UNIFICAR(conoce(juan,X),conoce(juan,jane)) = {X/jane} UNIFICAR(conoce(juan,X),conoce(Y,leónidas)) = {X/leónidas, Y/Juan} UNIFICAR(conoce(juan,X),conoce(Y,madre(Y))) = {Y/juan, X/madre(juan)} UNIFICAR(conoce(juan,X),conoce(X,isabel))= falla conoce(juan,jane) conoce(Y,leónidas) conoce(Y,madre(Y)) conoce(X, isabel)

UNIFICAR(conoce(juan,x1),conoce(x2,isabel))={x1/isabel, x2/juan} Unificación La última unificación falla, porque X no puede tomar el valor de juan e isabel al mismo tiempo. De manera intuitiva, sabemos que Juan odia a todos los que conoce, y que todos conocen a Isabel, por lo que podríamos inferir que Juan odia a Isabel. Para resolver este problema, se pueden normalizar por separado las dos oraciones que se van a unificar, lo que significa renombrar las variables de una de ellas (o de ambas) para evitar que haya repetición de nombres: UNIFICAR(conoce(juan,x1),conoce(x2,isabel))={x1/isabel, x2/juan}

Ejercicio: Unificar y Resolver. femenino(ana) femenino(X) Λ padre (Y, X)  hija(X, Y) padre (juan, ana)

Ejercicio: Unificar y Resolver. femenino(ana) femenino(X) Λ padre (Y, X)  hija(X, Y) padre (juan, ana) femenino(ana) femenino(X) Λ padre (Y, X)  hija(X, Y) θ1 = (X/ana) padre (juan, ana) padre(Y,ana)  hija(ana,Y) θ2 = (Y/juan) hija(ana, juan)

Tarea Para cada uno de los siguientes pares de oraciones, indique el unificador más general, o diga que no existe y explique por qué. El unificador más general es el que permite que pocas variables o funciones no sean cambiadas a constantes como sea posible. P(x, y, y) y P(A, f(B), f(z))  P(x, F(x), A) y P(y, y, z)  P(x, y, z) y Q(A, B, B)  Q(x, F(y, A), z) y Q(A, F(A, A), x)  Q(x, G(y, y), w, F(z, z)) y Q(H(u, v), v, A, F(x, y))

Reglas de Inferencia con cuantificadores  

Reglas de Inferencia con cuantificadores Reglas de inferencia utilizadas en lógica proposicional: También son válidas en la lógica de primer orden, pero se requieren reglas de inferencias adicionales para manejar las oraciones de lógica de primer orden con cuantificadores: Eliminación Universal Eliminación Existencial Introducción Existencial. Modus ponens Y-eliminación Y-introducción O-introducción Doble negación eliminación Resolución unitaria Resolución

Eliminación Universal Para toda oración , variable v y término de base g : Por ejemplo, en x le_gusta(x, helado), podemos utilizar la sustitución {x/ben} e inferir que: le_gusta(ben, helado). v  SUST({v/g},) Término de Base: Es aquél término en el que no hay variables; es decir, un símbolo constante o un símbolo de función aplicados a algunos términos de base.

Eliminación Existencial Para toda oración , variable v y símbolo constante k que no aparezca en ninguna parte de la base de conocimientos: Por ejemplo, en x matar(x, víctima), podemos inferir que matar(asesino, víctima) en tanto que asesino no aparezca en ninguna parte de la base de conocimientos. v  SUST({v/k},) Es importante que la constante k usada para la sustituir la variable sea una variable nueva

Introducción Existencial Para toda oración , variable v que no esté en  y término de base g que no esté presente en : Por ejemplo, en le_gusta(jerry,helado) podemos inferir que X le_gusta(X, helado).  v SUST({g/v},)

Ejemplo Axiomas: Es ilegal que un turista venda huacos en Rusia x,y Turista(x) Λ huacos(y) Λ Vender(x,y)=>Infractor(x) Diego es un turista en Rusia Turista(Diego) Cada uno de los turistas en Rusia venden algunos huacos x,y Turista(x) Λ Huacos(y) Λ Vende(x,y) ¿Es Diego un infractor? Infractor(Diego)

Ejemplo Eliminación Universal: SUST({x/Diego}, ) x,y Turista(x) Λ Huacos(y) Λ Vender(x,y)=>Infractor(x) Turista(Diego) Λ Huacos(y) Λ Vender(Diego,y)=>Infractor(Diego) Eliminación Universal: SUST({x/Diego}, ) x,y Turista(x) Λ Huacos(y) Λ Vende(x,y) Turista(Diego) Λ Huacos(y) Λ Vende(Diego,y)

Ejemplo Eliminación Universal: SUST({x/Diego}, ) x,y Turista(x) Λ Huacos(y) Λ Vender(x,y)=>Infractor(x) Turista(Diego) Λ Huacos(y) Λ Vender(Diego,y)=>Infractor(Diego) Eliminación Universal: SUST({x/Diego}, ) x,y Turista(x) Λ Huacos(y) Λ Vende(x,y) Turista(Diego) Λ Huacos(y) Λ Vende(Diego,y) Turista(Diego) Λ Huacos(y) Λ Vende(Diego,y) Turista(Diego) Λ Huacos(y) Λ Vender(Diego,y)=>Infractor(Diego) Infractor(Diego)

Formas Canónicas para Resolución

Formas Canónicas: Regla de Resolución Forma normal conjuntiva (CNF). Disyunción de literales. Forma normal implicativa (INF). Conjunciones en la izquierda que implica las disyunciones en el derecho. La CNF es más común, pero la INF es más "natural" para el análisis humano. Original KB CNF INF " x P(x) Þ Q(x)  ØP(w)Ú Q(w)  P(w) Þ Q(w)  " x ØP(x) Þ R(x) P(x) Ú R(x) True Þ P(x) Ú R(x) " x Q(x) Þ S(x) ØQ(y)Ú S(y) Q(y) Þ S(y) " x R(x) Þ S(x) ØR(z)Ú S(z) R(z) Þ S(z) A, A Þ B        Û        True Þ A, A Þ B       B                                 True Þ B

Ejercicio: Unificar y resolver por Resolución. P(w) Q(w) Q(y)  S(y) True  P(x) V R(x) R(z)  s(z)

Ejercicio: Unificar y resolver por Resolución. P(w) Q(w) Q(y)  S(y) True  P(x) V R(x) R(z)  s(z)

Probador de Teoremas [BD Λ ¬P(x)  Falso]  [BD  P(x)] Conocido como: Refutación. Demostración por contradicción Reducción al absurdo Consiste en que para demostrar P(x), suponemos que P(x) es falsa (se añade –P(x) a la BD) y se demuestra la contradicción [BD Λ ¬P(x)  Falso]  [BD  P(x)]

Probador de Teoremas Probar R: (5). T T Prueba por refutación: (1). P P (2). (P  Q)  R P  Q  R (3). (S  T)  Q S  Q (4). T  Q Probar R: (5). T T

Probador de Teoremas Probar R: (5). T T P  Q  R R P  Q P Prueba por refutación: (1). P P (2). (P  Q)  R P  Q  R (3). (S  T)  Q S  Q (4). T  Q Probar R: (5). T T P  Q  R R P  Q P T  Q Q  T T nil

Ejercicio: Unificar y resolver por Resolución. -PhD(x) V HQ(x) -HQ(x) V Rich(x) PhD(x) V ES(x) -ES(x) V Rich(x) Probar Rich(Me)

Ejercicio: Unificar y resolver por Resolución. -PhD(x) V HQ(x) -HQ(x) V Rich(x) PhD(x) V ES(x) -ES(x) V Rich(x) Probar Rich(Me)

Ejemplo x [y animal (y)  ama(x,y)]  [y ama(y,x)] x [y animal (y) Λ mata(x,y)]  [z ¬ama(z,x)] x animal (x)  ama(Bush,y) mata(Bush,Fido) V mata(Wolfowitz,Fido) perro(Fido) x perro(x)  animal (x) Probar: mata(Wolfowitz, gato) 7. ¬mata(Wolfowitz, Fido)

Ejemplo Convirtiendo a lógica de predicados: [animal (y)  ama(x,y)]  ama(G, x) [animal (H) Λ mata(x, H)]  ¬ama(z,x) animal (x)  ama(Bush,y) mata(Bush,Fido) V mata(Wolfowitz,Fido) perro(Fido) perro(x)  animal (x) 7. ¬mata(Wolfowitz, Fido)

Ejemplo Convirtiendo a CNF: animal (y) V ama(G, x) - ama(x, y) V ama(G, x) -animal (H) V -mata(x, H) V ¬ama(z, x) -animal (x) V ama(Bush, y) mata(Bush, Fido) V mata(Wolfowitz, Fido) perro(Fido) - perro(x) V animal (x) 8. ¬mata(Wolfowitz, Fido)

Ejemplo perro(Fido) - perro(x) V animal (x) - ama(x, y) V ama(G, x) -animal (x) V ama(Bush, y) animal (y) V ama(G, x) ¬mata(Wolfowitz, Fido) mata(Bush, Fido) V mata(Wolfowitz, Fido) -animal (H) V -mata(x, H) V ¬ama(z, x)

Tarea ¿Marcus era fiel a César? (1) man(Marcus) (2) Pompeian(Marcus) (3) x Pompeian(x)  Roman(x) (4) ruler(Caesar) (5) x Roman(x)  loyalto(x, Caesar)  hate(x, Caesar) (6) x y loyalto(x, y) (7) x y person(x)  ruler(y)  tryassassinate(x, y)  loyalto(x, y) (8) tryassassinate(Marcus, Caesar) ¿Marcus era fiel a César?

Bibliografía AIMA. Capítulo 8, primera edición. AIMA. Chapter 9, second edition.