Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

10
Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S. Pag. 16/29 Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de predicados Existen una gran cantidad de problemas que nos gustaría resolver en IA. Cada uno de estos problemas representa un reto en cuanto a la información y al manejo de esta información. No sabemos la manera en que se llevan a cabo los procesos mentales básicos. Antes se pensaba que la manera correcta de leer para comprender un texto se relacionaba con tomar las palabras y buscar su significado en el cerebro, hasta que recibimos un mail: “Sgeun un etsduio de una uivenrsdiad ignlsea, no ipmotra el odren en el que las ltears etsan ersciats, la uicna csoa ipormtnate es que la pmrirea y la utlima ltera esetn ecsritas en la psiocion cocrrtea” Este correo rompe los paradigmas que pensábamos obvios para la lectura de un texto y nos abre un sinnúmero de interrogantes, pero nos deja algo bastante claro: No conocemos como funciona nuestro cerebro. Para trabajar con los objetos del mundo en una computadora buscamos una forma de representarlos. Dependiendo de las necesidades que tengamos podemos buscar una representación adecuada. Los objetos que queremos representar son los Hechos y la representación interna se lleva a cabo utilizando un formalismo específico que crea los elementos que seremos capaces de manipular. Si decidimos representar a las frutas podríamos escoger la siguiente representación: Nombre Limón Naranja Sandía Color Verde Naranja Verde Forma Redondo Redondo Ovalada Tamaño Pequeño Mediano Grande Esta representación sería suficiente para describir a los objetos, si estos fueran los únicos elementos que nos interesan. Si sobre esta base de conocimiento se nos hicieran preguntas, los únicos elementos que podríamos contestar son los expresados en ella. Si se pregunta sobre el sabor, textura, olor u otro parámetro relacionado serían preguntas que no podríamos contestar pues se desconocen. Hechos: Verdades en un cierto mundo. Es aquello que queremos representar. Representación Interna: Representación de los hechos con un determinado formalismo. Estas son las entidades que realmente seremos capaces de manipular. Hechos Representación Interna Proceso

description

Inteligencia Artificial y Redes Neuronales

Transcript of Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Page 1: Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S.

Pag. 16/29

Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de predicados Existen una gran cantidad de problemas que nos gustaría resolver en IA. Cada uno de estos problemas representa un reto en cuanto a la información y al manejo de esta información. No sabemos la manera en que se llevan a cabo los procesos mentales básicos. Antes se pensaba que la manera correcta de leer para comprender un texto se relacionaba con tomar las palabras y buscar su significado en el cerebro, hasta que recibimos un mail: “Sgeun un etsduio de una uivenrsdiad ignlsea, no ipmotra el odren en el que las ltears etsan ersciats, la uicna csoa ipormtnate es que la pmrirea y la utlima ltera esetn ecsritas en la psiocion cocrrtea” Este correo rompe los paradigmas que pensábamos obvios para la lectura de un texto y nos abre un sinnúmero de interrogantes, pero nos deja algo bastante claro: No conocemos como funciona nuestro cerebro. Para trabajar con los objetos del mundo en una computadora buscamos una forma de representarlos. Dependiendo de las necesidades que tengamos podemos buscar una representación adecuada. Los objetos que queremos representar son los Hechos y la representación interna se lleva a cabo utilizando un formalismo específico que crea los elementos que seremos capaces de manipular. Si decidimos representar a las frutas podríamos escoger la siguiente representación: Nombre Limón Naranja Sandía Color Verde Naranja Verde Forma Redondo Redondo Ovalada Tamaño Pequeño Mediano Grande Esta representación sería suficiente para describir a los objetos, si estos fueran los únicos elementos que nos interesan. Si sobre esta base de conocimiento se nos hicieran preguntas, los únicos elementos que podríamos contestar son los expresados en ella. Si se pregunta sobre el sabor, textura, olor u otro parámetro relacionado serían preguntas que no podríamos contestar pues se desconocen. Hechos: Verdades en un cierto mundo. Es aquello que queremos representar. Representación Interna: Representación de los hechos con un determinado formalismo. Estas son las entidades que realmente seremos capaces de manipular.

Hechos

Representación Interna

Proceso

Page 2: Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S.

Pag. 17/29

Podemos clasificar las entidades en dos niveles: • El nivel del conocimiento: Donde se describen los hechos - incluyendo el comportamiento y el objetivo

de cada agente. • El nivel Simbólico: donde se describen los objetos del nivel del conocimiento en términos de símbolos

manipulables por programas. Un buen sistema de representación del conocimiento debe tener la capacidad de: • Representar todos los tipos de conocimiento necesarios. • Manipular las estructuras de la representación. • Incorporar información adicional en las estructuras de conocimiento. • Adquirir nueva información con facilidad. Formas de representación del conocimiento Existen 4 formas básicas para representar el conocimiento. 1.- Conocimiento relacional simple Matrícula Nombre Calificación 1548617 Juan 90 1483519 Luis 80 2.- Conocimiento heredable. Programación orientada a objetos.

UANL

FIME

IMTC IEC Listos Dedicados

Juan Luis 1483519 1548617

90 80

Matrícula Matrícula

Calificación Calificación

Page 3: Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S.

Pag. 18/29

3.- Conocimiento deductivo A partir del conocimiento actual se llega a nueva información.

Motita es un perro Todos los perros tienen rabo Motita tiene rabo

4.- Conocimiento procedimental A partir del conocimiento actual se realiza una acción.

El bote de 4 litros no está lleno Tenemos agua disponible

Llenar el bote de 4 litros

Page 4: Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S.

Pag. 19/29

ATRIBUTOS IMPORTANTES Existen dos atributos que encontramos con mucha frecuencia: Instancia y Es-un. Estos atributos son importantes pues en ellos se apoya la herencia de propiedades. Instancia = Pertenencia a una clase. Es-un = Inclusión de una clase en otra. FIME IMTC JUAN RELACION ENTRE ATRIBUTOS - Inversos

Las entidades del mundo se pueden relacionar de muy diversas maneras. Sin embargo, en el momento que decidimos describir esas relaciones como atributos nos restringimos a una perspectiva. Jerarquía de atributos Es-un Estatura Físico Color Piel Peso Complexión Técnicas para razonar sobre valores ♦ Tipos de valor. Numéricos, string, etc. ♦ Restricciones sobre el valor. Rangos de validación. ♦ Reglas para calcular valores cuando se requiera. Bajo demanda. ♦ Reglas que describen acciones cuando se conoce un valor. Reactivos. Atributos univaluados Son atributos que tiene un único valor. Granularidad de la representación ¿Qué tan detalladas se deben representar las cosas?

Instancia

Es-un

Page 5: Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S.

Pag. 20/29

LA LOGICA DE PREDICADOS. Haciendo uso de la lógica de predicados intentamos dar solución a cierto tipo de problemas. Con los predicados lógicos intentamos convertir nuestro lenguaje cotidiano en funciones matemáticas. Así, cuando hablamos en una charla cotidiana, o incluso en un texto científico, nuestras palabras pueden ser interpretadas de muchas maneras. Sin embargo, cuando convertimos nuestras frases en funciones les damos un solo sentido y un solo significado. Operadores Lógicos: Λ AND

v OR ¬ NOT → IMPLICACIÓN

Operadores Cuantitativos: ∀ PARA TODO. UNIVERSAL.

∃ SI EXISTE. EXISTENCIAL. Esta lloviendo LLOVIENDO Esta soleado SOLEADO Si está lloviendo no está soleado. Equivocado LLOVIENDO_NO_SOLEADO Correcto LLOVIENDO → ¬SOLEADO Motita es un perro Equivocado Motita_perro Correcto Perro(Motita) Juan juega con la pelota. Jugar(Juan, Pelota). Todos los perros tienen rabo. ∀x: Perro(x) → tiene_rabo(x) Algunos perros muerden ∃x: Perro(x) → muerde(x)

Page 6: Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S.

Pag. 21/29

EJEMPLO: 1. Marco era un hombre.

Hombre (Marco)

2. Marco era un pompeyano. Pompeyano (Marco)

3. Todos los pompeyanos eran Romanos.

∀x: Pompeyano(x) → Romano(x) 4. César fue un gobernante.

Gobernante (César) 5. Todos los Romanos o eran leales a César o lo odiaban.

∀x: Romano(x) → Leal(x,César) v Odia(x,César) 6. Todos somos leales a alguien.

∀x: ∃y : Leal(x,y) 7. Las personas solo intentan asesinar a los gobernantes a los que no son leales.

∀x: ∀y: Persona(x) Λ Gobernante(y) Λ IntentaAsesinar(x,y) → ¬Leal(x,y) 8. Marco intentó asesinar a César.

IntentaAsesinar(Marco,César) AXIOMAS: 1. Hombre(Marco) 2. Pompeyano(Marco) 3. ∀x: Pompeyano(x) → Romano(x) 4. Gobernante(César) 5. ∀x: Romano(x) →Leal(x,César) v Odia(x,César) 6. ∀x: ∃y: Leal(x,y) 7. ∀x: ∀y: Persona(x) Λ Gobernante(y) Λ IntentaAsesinar(x,y) → ¬Leal(x,y) 8. IntentaAsesinar(Marco,César)

Page 7: Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S.

Pag. 22/29

¿ Era Marco leal a César ? Leal(Marco,César) ¬Leal(Marco,César) Sustituyendo en 7. Persona(Marco) Λ Gobernante(César) ^ IntentaAsesinar (Marco,César) → ¬Leal(Marco,César) Según 4. Gobernante(César) Persona(Marco) Λ IntentaAsesinar(Marco,César) Según 8. IntentaAsesinar(Marco,César) * Persona(Marco) Hombre(Marco) →Persona(Marco) * 9. Todos los hombres son personas. ∀x: Hombre(x) → Persona(x) CONVERSIÓN A FORMA CLASUAL Todos los romanos que conocen a Marco o bien odian a César o piensan que cualquiera que odie esta loco. ∀x: [ Romano(x) Λ Conoce(x, Marco)] → [ Odia(x, César) V (∀y: ∃z: Odia(y,z) → Cree_loco(x,y))] 1. Eliminar las implicaciones (→), utilizando la igualdad. a → b = ¬ a V b ∀x: ¬ [ Romano(x) Λ Conoce(x, Marco)] V [ Odia(x, César) V (∀y: ∃z: Odia(y,z) → Cree_loco(x,y))] ∀x: ¬ [ Romano(x) Λ Conoce(x, Marco)] V [ Odia(x, César) V (∀y: (∃z: Odia(y,z)) V Cree_loco(x,y))]

Page 8: Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S.

Pag. 23/29

2. Reducir el ámbito de las negociaciones (¬ ). ¬ (¬ P ) = P ¬ ∀x: P(x) = ∃x: P(x) ¬ ( a Λ b) = ¬ a V ¬ b ¬ ∃x: P(x) = ∀x: P(x) ¬ (a V b) = ¬ a V ¬ b ¬ (∃x: P(x)) = ¬ ∃x: ¬ P(x) = ∀x: ¬ P(x) ∀x: [¬ Romano(x) V ¬ Conoce(x, Marco)] V [ Odia(x, César) V (∀y: ∀z: ¬ Odia(y,z)) V Cree_loco(x,y))] 3. Normalizar las variables de forma que cada cuantificador este ligado a una única variable. ∀x: P(x) V ∀x: Q(x) ∀x: P(x) V ∀y: Q(y) 4. Mover todos los cuantificadores a la izquierda de la función. ∀x: ∀y: ∀z: [¬ Romano(x) V ¬ Conoce(x, Marco)] V [ Odia(x,César) V (¬ Odia(y,z) V Cree_loco(x,y))] 5. Eliminar los cuantificadores existenciales: en una formula donde se incluye una variable cuantificada

existencialmente se afirma que existe un valor que puede sustituir a las variables y que hace verdadera a la formula.

∃y: Presidente(y) ∀x: ∃y: Padre_de (y,x)

Presidente (F1) ∀x: Padre_de(F2(x),x) 6. Dejar de escribir los cuantificadores universales (∀). En este punto todas las variables que quedan

están cuantificadas universalmente. [¬ Romano(x) V ¬ Conoce(x, Marco)] V [ Odia(x,César) V (¬ Odia(y,z) V Cree_loco(x,y))] 7. Convertir la matriz en una conjunción de disyunciones. Polinomios de operaciones OR (V) unidos a su

vez por AND´S(Λ). Propiedad Asociativa ( a V b) V c = a V ( b V c) = a V b V c ¬ Romano(x) V ¬ Conoce(x, Marco) V Odia(x,César) V ¬ Odia(y,z) V Cree_loco(x,y)

Page 9: Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S.

Pag. 24/29

Propiedad Distributiva ( a Λ b) V c = ( a V c) Λ (b V c) (invierno Λ botas) V ( verano Λ sandalias) [invierno V (verano Λ sandalias)] Λ [botas V (verano Λ sandalias)] [(verano V invierno) Λ (sandalias V invierno)] Λ [(verano V botas) Λ (sandalias V botas)] 8. Crear una cláusula por cada conjunción. verano V invierno sandalias V invierno verano V botas sandalias V botas

* Una cláusula no tiene: Implicaciones (→) Cuantificadores (∀, ∃) AND´S (Λ)

Page 10: Unidad Temática 2.- Representación y validez de razonamientos, haciendo uso de la lógica de

Inteligencia Artificial y Redes Neuronales M.C. Fco. Javier de la Garza S.

Pag. 25/29

Las bases de la resolución invierno V verano ¬ invierno V frío

- si invierno es verdadero

verdadero V verano = verdadero ¬ verdadero V frío = frío falso V frío = frío

- si invierno es falso

falso V verano = verano ¬ falso V frío = verdadero

- cláusula resultante

verano V frío invierno cláusula vacía ¬ invierno

RESOLUCIÓN EN LOGICA PROPOSICIONAL Para producir una demostración por resolución de la proposición P respecto a un conjunto de axiomas F debemos:

1. Convertir todas las preposiciones de F a forma clausal.

2. Negar P y convertir el resultado a forma clausal. Añadir la cláusula resultante al conjunto obtenido en el paso 1.

3. Hasta encontrar una contradicción o no se pueda continuar.

a) Seleccionar dos cláusulas. Llamarlos cláusulas padres. b) Resolverlo por el método visto anteriormente. c) Si el resolvente es la cláusula vacía. Se ha encontrado una contradicción. Si no añadirla al

conjunto de cláusulas disponibles.

X Y X V Y

F F F

F V V

V F V

V V V