3. componentes del modelo de conocimientocalonso/ingenieriaconocimientocommonk... · 2006-03-02 ·...

31
3. Componentes del Modelo de Conocimiento 3.1 Introducción 3.2 Conocimiento de Dominio 3.3 Conocimiento de Inferencia 3.4 Conocimiento de Tarea Carlos Alonso González Dpto. de Informática Universidad de Valladolid La metodología CommonKADS

Upload: vuongthien

Post on 08-Oct-2018

225 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 2: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 3: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 4: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 5: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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)

Page 6: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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)

Page 7: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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;

Page 8: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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;

Page 9: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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;

Page 10: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

10

Desacoplo datos/función (I)

• Vocabulario diferente para Dominio / proceso de razonamiento (tarea)

• Busca incrementar capacidad reutilización

Page 11: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 12: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 13: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

13

Funciones de transferencia

sistema externa iniciativa

externa obtain receive

sistema present provide

origen información

Page 14: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

14

Especificación función de transferencia

TRANSFER-FUNCTION obtain;

TYPE: OBTAIN;

ROLES:

INPUT: expected-finding;

OUTPUT: actual-finding;

END TRANSFER-FUNCTION obtain;

Page 15: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 16: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

16

Estructura de inferencia

cover

complaint

hypothesis

causal model

predict

manifestationmodel

expectedfinding compare

obtain actualfinding

result

Page 17: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 18: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 19: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 20: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 21: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 22: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 23: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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;

Page 24: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 25: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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”

Page 26: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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;

Page 27: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 28: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 29: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 30: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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

Page 31: 3. Componentes del Modelo de Conocimientocalonso/IngenieriaConocimientoCommonK... · 2006-03-02 · – Diseñar una ascensor para un edificio nuevo ... diagrama de actividad UML

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