View
239
Download
0
Category
Preview:
Citation preview
3. Componentes del Modelo de Conocimiento
3.1 Introducción3.2 Conocimiento de Dominio3.3 Conocimiento de Inferencia3.4 Conocimiento de Tarea
Carlos Alonso GonzálezDpto. de InformáticaUniversidad de Valladolid
La metodología CommonKADS
2
3.2 Conocimiento de inferencia
• Describe como usar los elementos estáticos del Conocimiento de Dominio para realizar un proceso de razonamiento
• Elementos básicos– inferencias, papeles de conocimiento y funciones de transferencia
• Estructura de inferencia• Interés
– relación indirecta con el conocimiento de dominio– permite reutilización
3
Inferencias(I)
• Unidad básica de procesamiento de la información en el modelado de conocimiento
compare, select, specify, verify, ... • Una inferencia
– Corresponde el nivel más bajo de descomposición funcional– Realiza un paso de razonamiento primitivo (atómico)– Típicamente, usa conocimiento de una BC para derivar nueva
información a partir de una entrada dinámica
4
Ejemplo inferencia
complaint hypothesiscover
causalmodel
my car does not start fuel tank is empty
fuel tank is empty leads to lack of gas in engineif there is no gas in the engine, then the car does not start
dynamic input role dynamic output role
static role
inference
5
Inferencias(II)
• Una inferencia– Totalmente descrita mediante una especificación declarativa de sus
entradas y salidas– Proceso interno: caja negra, desde la perspectiva de modelado– Entradas y salidas: descritas mediante nombres de papeles (roles)
• Granularidad adecuada de las inferencias– Las inferencias proporcionan una traza comprensible del
razonamiento (expliación)
6
Papeles de conocimiento (knowledge role)• Nombre abstracto de objetos del dominio que indica su
papel (función) en el proceso de razonamiento– Hypothesis: nombre funcional para un objeto del dominio que
realiza el papel de candidato a solución
• Asociación explicita con tipos del dominio• Papeles
– Dinámicos: Entrada/salida inferencias – Estáticos: Conocimiento de dominio utilizado para realizar la
inferencia (una base de conocimiento)
7
Ejemplo especificación inferencia
INFERENCE cover;
ROLES:
INPUT: complaint;
OUTPUT: hypothesis;
STATIC: causal-model;
SPECIFICATION:
“Cada vez que se invoca la inferencia, genera un candidato a
solución que puede haber causado la queja. La salida debe ser
un estado inicial de la red de dependencia de estado, que
causalmente ‘cubra’ la queja de entrada.”;
END INFERENCE cover;
8
Ejemplo papeles dominio dinámico
KNOWLEDGE-ROLE complaint;
TYPE: DYNAMIC;
DOMAIN-MAPPING: estado-coche-visible;
END KNOWLEDGE-ROLE complaint;
KNOWLEDGE-ROLE hypothesis;
TYPE: DYNAMIC;
DOMAIN-MAPPING: estado-coche-no-visible;
END KNOWLEDGE-ROLE hypothesis;
9
Ejemplo papeles dominio estático
KNOWLEDGE-ROLE causal-model;
TYPE: STATIC;
DOMAIN-MAPPING: dependencia-estado FROM red-causal-automovil;
END KNOWLEDGE-ROLE causal-model;
10
Desacoplo datos/función (I)
• Vocabulario diferente para Dominio / proceso de razonamiento (tarea)
• Busca incrementar capacidad reutilización
11
Desacoplo datos/función (II)
covercomplaint hypothesis
causal model
estado cochevisible
dependenciaestado
estado cocheno visible
asociacióninferencia-dominio
asociacióninferencia-dominio
asociacióninferencia-dominio
12
Funciones de transferencia (I)
• Modelan transferencias de información entre el agente que soporta el razonamiento y otros agentes
• Necesarias si la interacción forma parte del proceso de razonamiento
• Cajas negras: nombre, entrada y salida• Especificación detallada: modelo de comunicación
13
Funciones de transferencia
sistema externa iniciativa
externa obtain receive
sistema present provide
origen información
14
Especificación función de transferencia
TRANSFER-FUNCTION obtain;
TYPE: OBTAIN;
ROLES:
INPUT: expected-finding;
OUTPUT: actual-finding;
END TRANSFER-FUNCTION obtain;
15
Estructura de inferencia
• Representación gráfica de la capacidad básica de inferencia del sistema (todas las inferencias)– Papeles dinámicos: rectángulos– Inferencias: elipses– Funciones transferencia: cajas redondeadas– Papeles estáticos: entre dos líneas gruesas– Arcos
• Dirigidos• Simples/Gruesos
16
Estructura de inferencia
cover
complaint
hypothesis
causal model
predict
manifestationmodel
expectedfinding compare
obtain actualfinding
result
17
Uso estructura de inferencia
• Herramienta de comunicación y discusión durante el desarrollo
• Carácter provisional durante análisis• Dificultad de comprensión por su nivel de abstracción• Útil añadir anotaciones con ejemplos del dominio
18
Estructura de inferencia anotada
cover
complaint
hypothesis
causal model
predict
manifestationmodel
expectedfinding compare
obtain actualfinding
result
motor no arranca
reglasdependencia estado
depósito combustible vacío
reglasmanifestación estado
indicador combustible = cero/bajo
indicador combustible = normal
no igual
19
Reutilización de inferencias
• No existe un conjunto estándar de inferencias• Se propone un Catálogo:
– Abstract, Assign, Classify, Compare, Cover, Critique, Evaluate, Generate, Group, Match, Modify, Operationalize, Propose, Predict, Select, Sort, Specify, Verify (Scheriber et al., 1999)
• Usar nombres estándar
20
Conocimiento de Tarea
• Describe las metas del razonamiento.– Evaluar solicitud de hipoteca para minimizar riesgo de perder
dinero– Encontrar la causa del fallo de una fotocopiadora para restablecer
el servicio– Diseñar una ascensor para un edificio nuevo
• Describe las estrategias para alcanzarlas.• Descripción jerárquica mediante
– Tarea (Task): meta, entrada/salida, especificación.– Método de Tarea (Task Method): subtareas, control
21
Ejemplo descomposición tarea
cover
predict
diagnosismediante
generación y prueba
compare
diagnosis
obtain
tarea
método de tarea
descomposición
inferencias
función de transferencia
22
Tarea
• Tarea de alto nivel (the top level task)– Habitualmente se corresponde con tarea identificada en modelo de
tareas• Diferencia esencial con función alto nivel: datos
manipulados por al tarea descritos de forma independiente del dominio
• Descrita por– Meta
• Textual, informal– Entrada/salida en términos de papeles de tarea– Especificación
• Relación entre entrada salida, textual, informal
23
Especificación tareaTASK diagnosis-automóvil;
META: “Encontrar una causa probable para la queja de un usuario”;
ROLES:INPUT:
complaint: “Queja sobre el comportamiento del automóvil”;OUTPUT:
fault-category: “una hipótesis explicada por la evidencia”;evidencia: “Conjunto de observaciones obtenidas durante el
proceso de diagnóstico”SPEC:
“Encontrar un estado inicial que explique la queja y seaconsistente con la evidencia obtenida”;
END TASK diagnosis-automóvil;
24
Método de Tarea
• Describe como se realiza una tarea mediante– Descomposición en subfunciones
• Otras tareas, inferencias o funciones de transferencia– Estructura de control
• Proporciona el flujo de control de subfunciones– Subfunciones / procedimientos– Roles /parámetros
• Debe capturar la estrategia de razonamiento– Papeles intermedios adicionales
• Almacenar resultados de razonamiento intermedios
25
Especificación Método de Tarea (I)
TASK-METHOD diagnosis-mediante-generación-y-test;REALIZES: diagnosis-automóvil;DECOMPOSITION:
INFERENCES: cover, predict, compare;TRANSFER-FUNCTIONS: obtain;
ROLES:INTERMEDIATE:
hypothesis: “Una solución candidata”;expected-finding: “Finding predicho si la hipótesis es cierta”actual-finding: “Finding observado”result: “El resultado de la comparación”
26
Especificación Método de Tarea (II)CONTROL-STRUCTURE:
WHILE NEW-SOLUTION cover(complaint -> hypothesis)DO
predict(hypothesys -> expected-finding);obtain(expected-finding -> actual-finding);evidence := evidence ADD actual-finding;compare(expected-finding + actual-finding -> result);IF result == equal;
THEN “break from loop”;END IF
END WHILEIF result = = equal
THEN fault-category := hypothesis;ELSE “no se encontró solución”
END IFEND TASK-METHOD diagnosis-mediante-generación-y-test;
27
Especificación del control mediante diagrama de actividad UML
cover
predict
obtain compare
[no more solutionsof cover]
[new solutionof cover]
[result = equal]
[result = not equal]
solution found
no solution found
startdiagnosisthrough
generate-and-test
28
Elementos estructura de control(I)
• “Llamadas a procedimientos”– Tareas, funciones de transferencia, inferencias
• Operaciones sobre papeles– assign, add/append, delete/subtract, …
• Primitivas de control– repeat-until, while-do, foreach-do, if-then-else
29
Elementos estructura de control(II)
• Condiciones– Expresiones lógicas sobre papeles
until differential = empty
– Dos condiciones especiales• has-solution
– para invocar inferencias que pueden fallar• new solution
– invocar inferencias que pueden ir generando nuevas soluciones
30
¿Inferencia o tarea?
• Si el comportamiento interno de una función es importante para explicar el comportamiento del sistema, la función debe definirse como una tarea
31
Modelado de conocimiento frente a modelado convencional• El conocimiento del dominio contiene “datos sobre datos”
• Conocimiento
• Las funciones se describen con independencia del modelo de datos
• Reutilización
• Énfasis en “control interno”• Estrategia del proceso de razonamiento
• Se abstraen los aspectos de comunicación
Recommended