Top Banner
ISBC: Tema 4 Representaciones del Conocimiento José Carlos Cortizo Pérez http://www.esp.uem.es/jccortizo [email protected] Departamento de Sistemas Informáticos Escuela Superior Politécnica Universidad Europea de Madrid 1
42

ISBC: Tema 4 Representaciones del Conocimiento

Feb 07, 2023

Download

Documents

Jóse Sanchez
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ISBC: Tema 4 Representaciones del Conocimiento

ISBC: Tema 4Representaciones del Conocimiento

José Carlos Cortizo Pérez http://www.esp.uem.es/jccortizo [email protected]

Departamento de Sistemas Informáticos Escuela Superior Politécnica Universidad Europea de Madrid

1

Page 2: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

2

Page 3: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

La representación del conocimiento es un problema a medio camino entre la ciencia cognitiva y la inteligencia artificial

En ciencia cognitiva, tiene que ver con cómo la gente almacena y procesa la información

En inteligencia artificial, el objetivo principal es almacenar conocimiento que los programas puedan procesar y así simular cierta inteligencia humana

José Carlos Cortizo Pérez

Definición

3

Page 4: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

1.- Una representación del conocimiento es un sucedáneo

Objetos físicos, eventos y relaciones, que no pueden ser almacenadas directamente en una computadora, se representan por símbolos

Los símbolos y las relaciones entre ellos forman un modelo del sistema externo

Manipulando los símbolos internos, la computadora puede similar razonamiento

José Carlos Cortizo Pérez

Principios de la Representación del Conocimiento

4

Page 5: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

2.- Una representación del conocimiento es un conjunto de compromisos ontológicos

Ontología es el estudio de la existencia

En una base de datos o del conocimiento, la ontología determina la categoría de cosas que existen o pueden existir en el dominio

Esas categorías representan los compromisos ontológicos del diseñador o ingeniero del conocimiento

José Carlos Cortizo Pérez

Principios de la Representación del Conocimiento

5

Page 6: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

3.- Una representación del conocimiento es una teoría fragmentaria de razonamiento inteligente.

Para soportar el razonamiento acerca de las cosas en un dominio, la representación del conocimiento debe describir su comportamiento e interacciones

La descripción constituye una teoría del dominio de aplicación

José Carlos Cortizo Pérez

Principios de la Representación del Conocimiento

6

Page 7: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

4.- Una representación del conocimiento es un medio para una computación eficiente.

Además de representar el conocimiento, el sistema de IA debe codificarlo de forma que pueda ser procesado de forma eficiente contando con un equipo determinado

Algunos problemas pueden ser representados de forma muy simple, pero resolverlos de esta forma puede ser muy costoso en tiempo y esfuerzos

José Carlos Cortizo Pérez

Principios de la Representación del Conocimiento

7

Page 8: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

5.- Una representación del conocimiento es un medio de expresión humana.

Un buen lenguaje de representación del conocimiento debe facilitar la comunicación entre los ingenieros del conocimiento y los expertos del dominio

Los IC escribirán definiciones y reglas, pero los expertos deben ser capaces de leerlas y verificarlas, para ver si representan una teoría del dominio que sea cierta

José Carlos Cortizo Pérez

Principios de la Representación del Conocimiento

8

Page 9: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Estos 5 principios pueden ser usados como marco de desarrollo para la discusión de problemas relacionados con la representación del conocimiento

Los ilustraremos con ejemplos del mundo de los semáforos

José Carlos Cortizo Pérez

Principios de la Representación del Conocimiento

9

Page 10: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Un modelo computacional es un sucedáneo real o hipotético

En este caso, de las luces de tráfico

Cada una de las entidades significativas, como la hora actual o el color de la luz, se asigna a una variable que sirve como sucedáneo interno para la entidad externa

Los valores de estas entidades pueden transformarse, tanto de forma procedural como declarativa, para simular el comportamiento del sistema

José Carlos Cortizo Pérez

Sucedáneo

10

Page 11: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

El acercamiento procedural usa programas o reglas que

Representan cada posible evento como una operación que modifica el modelo de la forma adecuada

Diseña una estructura de control que desencadena cada operación en el momento en el que la condición necesaria se cumple

Ejecuta los programas para ver como el modelo evoluciona en el tiempo

José Carlos Cortizo Pérez

Sucedáneo

11

Page 12: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Los programas pueden ser ejecutados directamente en una computadora

Las reglas deben de ser interpretadas por otro programa (motor de inferencia)

Para un mayor rendimiento, un compilador puede transformar las reglas en programas que corran directamente en la computadora

José Carlos Cortizo Pérez

Sucedáneo

12

Page 13: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

El acercamiento declarativo se basa en axiomas que definen las precondiciones, postcondiciones y transformaciones para cada evento que pueda ocurrir en el modelo

Describe el estado de inicio S mediante una colección de fórmulas

Añade la descripción de S a los axiomas del modelo M

Para determinar el estado de M en cualquier otro tiempo t, comienza con los axiomas de M y la descripción de S y prueba un teorema que describa M en t

José Carlos Cortizo Pérez

Sucedáneo

13

Page 14: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Los compromisos ontológicos se determinan por los tipos de variables en la representación del conocimiento

Para el ejemplo de los semáforos, las variables representan las entidades significativas, como los semáforos en si mismo, el tiempo, el color actual, la última vez que cambió el color, etc.

Estos compromisos pueden ser representados por variables en cálculo de predicados, por conceptos en un grafo, o por slots en structuras de datos llamadas marcos, esquemas o templates

José Carlos Cortizo Pérez

Compromisos ontológicos

14

Page 15: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Un ejemplo de template para Semáforo escrito en CLIPS(deftemplate semaforo          (slot nombe        (type SYMBOL))          (slot colorActual (allowed-values rojo verde))          (slot tiempoRojo   (type FLOAT))          (slot tiempoVerde  (type FLOAT))          (slot cuandoCamb (type FLOAT))          (slot cambioAuto   (allowed-values on off)))

José Carlos Cortizo Pérez

Compromisos ontológicos

15

Page 16: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Este template tiene 6 slots (huecos)

El template con sus slots, representan el compromiso ontológico primario

Las facetas añaden más compromisos ya que reflejan la existencia de entidades de tipo FLOAT y SYMBOL

que no pertenecen al dominio real de los semáforos

pero si al metalenguaje del dominio utilizado para representar

José Carlos Cortizo Pérez

Compromisos ontológicos

16

Page 17: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Después de definir el template, se puede instanciar(assert (semaforo          (nombre          Parpadeante)          (colorActual     verde)          (tiempoRojo    60)          (tiempoVerde  60)          (cuandoCamb 0)          (cambioAuto    on)) )

José Carlos Cortizo Pérez

Compromisos ontológicos

17

Page 18: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

En lógica, cada slot corresponde a predicados o relaciones como tiempoRojo(x, y), dónde la primera variable representa el semáforo y la segunda (y), representa el valor actual del slot

José Carlos Cortizo Pérez

Compromisos ontológicos

18

Page 19: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Tanto los acercamientos procedurales como los declarativos pueden transformarse en algo computable

Si se necesitan mejoras en la eficiencia para algunos problemas, se puede programar con un lenguaje de más bajo nivel

El siguiente ejemplo muestra un programa que simula un semáforo mediante un bucle que va cambiando el estado

José Carlos Cortizo Pérez

Medio para una Computación Eficiente

19

Page 20: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

loop while cambioAuto          set colorActual to rojo;          wait tiempoRojo;          set colorActual to verde;          wait tiempoVerde;

José Carlos Cortizo Pérez

Medio para una Computación Eficiente

20

Page 21: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Este programa puede usarse para simular un semáforo o bien para conducir a un microprocesador que controle el semáforo

Como representación del conocimiento falla en un punto esencial: no proporciona una forma de obtener información

El semáforo no explica por qué cambia de color

No mantiene un registro de los cambios de color

No responde a preguntas acerca del tiempo medio de los estados rojo y verde

José Carlos Cortizo Pérez

Medio para una Computación Eficiente

21

Page 22: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Si no necesitamos este tipo de información, quizas el bucle sea una buena forma de resolver este problema

Pero si el semáforo es, en si mismo, importante, entonces necesitaremos más instrucciones para mantener otro tipo de datos

Estas son instrucciones metanivel que soportan razonamiento acerca del semáforo, que pueden volverse muy voluminosas y pesadas de ejecutarse

José Carlos Cortizo Pérez

Medio para una Computación Eficiente

22

Page 23: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Para manejar este tipo de situaciones, se han desarrollado varios lenguajes de simulación para operar en 2 niveles en paralelo

El nivel de objeto, dónde se calculan los efectos de cada acción sobre el mundo simulado

En el metanivel, se monitorizan los objetos y se almacena información acerca de los mismos

José Carlos Cortizo Pérez

Medio para una Computación Eficiente

23

Page 24: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

La manera declarativa de simular los semáforos es traducir la descripción en fórmulas lógicas y probar los teoremas sobre sus estados

(∀x:Semáforo)(∀t:Tiempo)(∀r:Duracion)((poneRojo(x,t)⋀tiempoRojo(x,r)⋀autoCambio(on))⊃ poneVerde(x, t+r)).

(∀x:Semáforo)(∀t:Tiempo)(∀g:Duracion)((poneVerde(x,t)⋀tiempoVerde(x,g)⋀autoCambio(on))⊃ poneRojo(x, t+g)).

José Carlos Cortizo Pérez

Medio para una Computación Eficiente

24

Page 25: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

La traducción de esta lógica a un lenguaje computable (p.e. Prolog) sería

pone_verde(X, T2) := semaforo(X) & pone_rojo(X, T) & tiempo_rojo(X, R) & cambio_auto(on) & suma_tiempos( T, R, T2).

pone_rojo(X, T2) := semaforo(X) & pone_verde(X, T) & tiempo_verde(X, G) & cambio_auto(on) & suma_tiempos( T, G, T2).

José Carlos Cortizo Pérez

Medio para una Computación Eficiente

25

Page 26: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Antes de poder ejecutar estas reglas, deben establecerse las condiciones previas, p.e. traduciendo la instancia de CLIPS

semaforo( parpadeante ).

tiempo_rojo( parpadeante, 60 ).

tiempo_verde( parpadeante, 60 ).

pone_verde( parpadeante, 0:00 ).

José Carlos Cortizo Pérez

Medio para una Computación Eficiente

26

Page 27: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

A partir de todo esto, el motor de inferencia podría deducir conclusiones del tipo

pone_rojo( parpadeante, 0:01 ).

pone_verde( parpadeante, 0:02 ).

pone_rojo( parpadeante, 0:04 ).

pone_verde( parpadeante, 0:05 ).

etc.

José Carlos Cortizo Pérez

Medio para una Computación Eficiente

27

Page 28: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

El bucle procedural, la fórmula lógica y las reglas ilustran 3 estrategias diferentes para razonar acerca de los semáforos

Las instrucciones en el bucle llevan una simulación paso a paso del semáforo

Las fórmulas lógicas soportan la demostración de un teorema que predice el estado del semáforo para cualquier tiempo t

Las reglas esperan a que su precondición sea cierta para actualizar la descripción del semáforo

José Carlos Cortizo Pérez

Teoría de razonamiento fragmentaria

28

Page 29: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Cualquiera de estas estrategias podría ser utilizada por un humano para razonar acerca de los semáforos

Cada una de ellas tiene sus ventajas y sus inconvenientes, lo cuál las convierte en estrategia preferida para según que propósitos

José Carlos Cortizo Pérez

Teoría de razonamiento fragmentaria

29

Page 30: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Los Ingenieros del Conocimiento deben trabajar con expertos de otros campos

Deben ser capaces de comunicarse con ellos en lenguajes y notaciones que eviten la jerga de la IA y la informática

Los grafos conceptuales y otros diagramas han sido utilizados de forma exitosa como medio de comunicación entre IC y expertos de dominio

José Carlos Cortizo Pérez

Medio de expresión humana

30

Page 31: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Los Ingenieros del Conocimiento deben trabajar con expertos de otros campos

Deben ser capaces de comunicarse con ellos en lenguajes y notaciones que eviten la jerga de la IA y la informática

Los grafos conceptuales y otros diagramas han sido utilizados de forma exitosa como medio de comunicación entre IC y expertos de dominio

José Carlos Cortizo Pérez

Medio de expresión humana

31

Page 32: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

José Carlos Cortizo Pérez

Medio de expresión humana

32

Page 33: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Como se puede ver en la figura anterior, los grafos conceptuales son más legibles que las reglas lineales, pero no son autoexplicativos

Un experto del dominio que no haya visto nunca un GC necesitaría alguna explicación acerca de las distinciones entre ovalos y cajas, las direcciones de las flechas, las diferencias entre *x y ?x, etc

José Carlos Cortizo Pérez

Medio de expresión humana

33

Page 34: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Como notación alternativa, los GC pueden traducirse a lenguaje natural

Si un semáforo x se vuelve rojo en tiempo t,   tiene una duración en estado rojo de r,   y el estado del auto cambiado esta en on,entonces x se vuelve verde en un tiempo que es la suma de t   y r

José Carlos Cortizo Pérez

Medio de expresión humana

34

Page 35: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Hemos visto varias formas de simular el comportamiento de los semáforos

Estas simulaciones son limitadas, ya que describen lo que pasa para un caso específico

No pueden probar un teorema general

Sin embargo, la lógica tiene una flexibilidad mayor, puede ser utilizada la diseñar una simulación, o bien para probar teoremas

José Carlos Cortizo Pérez

Prueba y simulación de teoremas

35

Page 36: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Si una simulación se ejecutara durante mucho tiempo, los resultados sugerirían el patrón predicho por los teoremas

Ya que la simulación comienza en el instante 0, tanto la simulación como el demostrador de teoremas mostrará que “parpadeante” se pone verde cada minuto impar

Sin embargo, solo el demostrador de teoremas puede explicar como los resultados se suceden a partir de las condiciones iniciales

José Carlos Cortizo Pérez

Prueba y simulación de teoremas

36

Page 37: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

La cuestión de si el conocimiento debe representarse de forma declarativa, en alguna forma de lógica, o procedural, en algún lenguaje de programación, es uno de las discusiones más antiguas y que genera más confrontación dentro de la IA

Depende mucho de las necesidades, tiempos de ejecución, etc.

José Carlos Cortizo Pérez

Prueba y simulación de teoremas

37

Page 38: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Tanto la simulación como el demostrador de teoremas determinan que ocurre en instantes de tiempo puntuales, cuándo los semáforos cambian de color

Pero es necesario disponer de información de lo que ocurre entre estos instantes de tiempo

Esta información adicional se proporciona con axiomas de persistencia

José Carlos Cortizo Pérez

Persistencia

38

Page 39: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Persistencia del rojo y del verde(∀x:Semáforo) (∀t:Tiempo)(∀t1:Tiempo)(∀r:Duracion)((poneRojo(x,t1)⋀tiempoRojo(x,r)⋀(t=t1⋁(antes(t1, t)⋀antes(t,t1+r))) ⊃ poneVerde(x, t+r)).

(∀x:Semáforo) (∀t:Tiempo)(∀t1:Tiempo)(∀r:Duracion)((poneVerde(x,t1)⋀tiempoVerde(x,g)⋀(t=t1⋁(antes(t1, t)⋀antes(t,t1+g))) ⊃ poneRojo(x, t+r)).

José Carlos Cortizo Pérez

Persistencia

39

Page 40: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Repr. del Conocimiento

Este tipo de información puede parecer obvia, sin embargo las computadoras no pueden reconocer lo obvio salvo que esté expuesto de forma explícitica

José Carlos Cortizo Pérez

Persistencia

40

Page 41: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

¿Alguna pregunta?

41

Page 42: ISBC: Tema 4 Representaciones del Conocimiento

José Carlos Cortizo Pérez

Bibliografía

Capítulo 3 (Knowledge Representations): John F. Sowa, “Knowledge Representation: Logical, Philosophical and Computational Foundations”

Capítulo 1 (Introducción a los SBC): Amparo Alonso et al., “Ingeniería del Conocimiento, Aspectos Metodológicos”

Específica

42