Story Transcript
La metodología CommonKADS
4. Plantillas de Modelos de Conocimiento 4.1 Introducción 4.2 Tipología de tareas 4.3 Catálogo de Plantillas de Tareas Carlos Alonso González Dpto. de Informática Universidad de Valladolid
Reutilización • Partes del modelo de conocimiento pueden reutilizarse en nuevas aplicaciones • Reutilizar combinaciones de elementos del modelo de conocimiento • CommonKADS proporciona catálogos de elementos de modelos de conocimiento • Principal criterio de reutilización: tarea • Catálogo de plantillas de tareas
4-2
Necesidad reutilización • • • •
No “reinventar la rueda” Eficiencia coste, tiempo Disminuye complejidad proceso construcción modelos Criterio de calidad
4-3
Plantilla de tareas • Modelo de conocimiento parcial que especifica – Conocimiento de tarea e inferencia habituales en la solución de un problema de un tipo particular – Esquema de dominio requerido desde la perspectiva de la tarea – Carácter provisional
• Para un tipo de tarea • Permite aproximación analítica al “Análisis de Conocimiento”
4-4
Tipología de tareas • Rango limitado de tipos de tareas – Se limita a tareas que hacen un uso intensivo del conocimiento
• Objeto de estudio de las ciencias cognitivas/sicología • Existen numerosas propuestas • Tipología basada en la noción de sistema
4-5
Noción de “Sistema” • Término abstracto que describe aquello sobre lo que se aplica una tarea – diagnosis médica: cuerpo humano – diagnosis técnica: artefacto o dispositivo – configuración ascensores: ascensor a configurar
• No necesita existir (aún)
4-6
Tareas analíticas/sintéticas • Tareas analíticas – El sistema ya existe – Entrada: datos sobre el sistema – Salida: alguna caracterización del sistema
• Tareas sintéticas – El sistema aún no existe – Entrada: requisitos del sistema a construir – Salida: descripción del sistema
• Subdivisión adicional – En función del tipo de problema 4-7
Tipo de Tareas knowledge-intensive task
Tarea Sintética
Tarea Analítica
clasificación
evaluación
diagnosis
predicción
monitorización
diseño
modelado
configuración
planificación
asignación
scheduling
4-8
Tareas Analíticas Tipo de tarea
Entrada
Salida
Conocimiento
Características
Análisis
Observaciones Caracterización Modelo del sistema del sistema del sistema
Se proporciona la descripción del sistema
Clasificación
Propiedades de Clase objetos
Asociación características-clases
Conjunto de clases predefinidas
Diagnosis
Síntomas, quejas
Categoría de fallo
Modelo de comportamiento
Distintos tipos de salidas: cadena causal, estado, componente
Evaluación
Descripción caso
Clase de decisión
Criterios, normas
Se realiza en un instante temporal
Monitorización
Datos del sistema
Clase de discrepancia
Comportamiento normal del sistema
Se realiza repetidamente
Predicción
Datos del sistema
Estado del sistema
Modelo de comportamiento
Proporciona una descripción del sistema en el futuro 4-9
Tareas Sintéticas (I) Tipo de tarea
Entrada
Salida
Conocimiento
Características
Síntesis
Requisitos
Estructura del sistema
Elementos, restricciones, preferencias
Hay que generar la descripción del sistema
Diseño
Requisitos
Descripción dispositivo
Componentes, restricciones, preferencias
Puede incluir diseño creativo de componentes
Diseño de configuración
Requisitos
Descripción dispositivo
Componentes, plantillas de diseños, restricciones, preferencias
Diseño en el que todos los componentes están predefinidos
Aplicación de un conjunto en otro
Restricciones, preferencias
La aplicación no tiene que ser 1 a 1
Asignación Dos conjuntos de objetos, requisitos
4-10
Tareas Sintéticas (II) Tipo de tarea
Entrada
Salida
Conocimiento
Características
Síntesis
Requisitos
Estructura del sistema
Elementos, restricciones, preferencias
Hay que generar la descripción del sistema
Planificación
Metas, requisitos
Plan
Acciones, restricciones, preferencias
Acciones parcialmente ordenadas
Scheduling
Actividades, Asignación actividadesrecursos, tiempos tiempos, requisitos
Restricciones, preferencias
La vertiente temporal lo diferencia de asignación
Modelado
Requisitos
Elementos de modelos, plantillas de modelos, restricciones, preferencias
Puede incluir síntesis creativa
Modelo
4-11
Catalogo de plantillas de Tarea • Pequeño catalogo de knowledge-intensive task relativamente sencillas – Clasificación, diagnosis, evaluación, monitorización, configuración, asignación, planificación y scheduling
• Descritas por – Caracterización general • características típicas de la tarea
– Método por defecto • papeles, subtareas, estructura de control, estructura de inferencia
– Variaciones del método – Esquema de dominio habitual 4-12
Clasificación. Caracterización general • Meta: establecer la clase (categoría) de un objeto. Objetos disponibles para su inspección. Clasificación basada en las características del objeto • Ejemplos típico: clasificación de minerales en una roca, clasificación de una manzana. • Terminología – objeto (una manzana), clase (Granny Smith), atributo (color), Característica (color=verde)
• Entrada: un objeto a clasificar • Salida: La(s) clase(s) encontrada(s) • Características – simple, muchos métodos – otras tareas analíticas se pueden reducir a ella
4-13
Clasificación. Método por defecto: poda • Método guiado por la solución • generar todas las clases a las que puede pertenecer el objeto • especificar un atributo del objeto a clasificar • obtener el valor del atributo (característica) • eliminar las clases que no posean la característica • repetir especificar y obtener
4-14
Clasificación. Estructura de inferencia object
specify
attribute
generate
candidate classes
obtain
match
truth value
feature
4-15
Clasificación. Método de tarea (control) generate(object -> candidate-classes) WHILE NEW-SOLUTION specify(candidate -> attribute) AND SIZE candidate-classes > 1 DO
obtain(attribute -> new-feature); current-feature-set := new-feature ADD current-feature-set; FOR-EACH candidate IN candidate-classes DO match(candidate + current-feature-set -> truth-value); IF truth-value = false; THEN candidate-classes := candidate-classes SUBSTRACT candidate; END IF END FOR-EACH END WHILE
4-16
Clasificación. Variantes • Generación de candidatos limitada – añadir elemento guiado por datos
• Diferentes formas de selección de atributos – árboles de decisión – teoría información – usuario
• Búsqueda jerárquica en estructura de clases – usar la jerarquía para la selección de atributos – usar la jerarquía para guiar la poda (los supertipos son candidatos)
4-17
Clasificación. Esquema de dominio object type
has-attribute class-of
2+
1+
object class
attribute attribute
requires value: universal
class constraint 4-18
Ejemplo: clasificación de rocas minerals ontology
rock
1+
texture grainsize colour
mineral
silicate
mineral content
igneous rock
percentage presence
plutonic rock
volcanic rock
neso silicate
tecto silicate
olivine
quartz
mineral content constraint
diorite
syenite
peridotite
dunite
4-19
Evaluación. Caracterización general (I) • Meta: encontrar categoría de decisión para un caso en base a un conjunto de normas específicas del dominio • Dominios Típicos: aplicaciones financieras, servicios a la comunidad, • Ejemplo típico: decidir si una persona obtiene el préstamo que ha solicitado • Terminología – Caso: el caso a ser evaluado, e.g. datos sobre la entidad de crédito y el préstamo solicitado – Categoría de decisión: e.g. cualificado-para-préstamo si o no – Normas: conocimiento de dominio utilizado para tomar la decisión, e.g. Reglas que relacionan ingresos con total solicitado4-20
Evaluación. Caracterización general (II) • Entrada: datos sobre el caso (siempre), normas específicas del caso (a veces) • Salida: categoría de decisión • Características – Su estructura puede ser similar a monitorización – Diferencias • Evaluación se realiza en un punto temporal concreto, monitorización a intervalos • Monitorización obtiene una discrepancia, no una categoría de decisión – Diferencia sutil – Monitorización se podría considerar una sucesión de tareas evaluación 4-21
Evaluación. Método por defecto (I) • Abstract – Generalmente es necesario abstraer los datos, en función de las normas – Abstracción se modela como una inferencia que se repite hasta que no se pueden realizar más abstracciones
• Specify – Hay que encontrar los críterios (norms) que se pueden utilizar para evaluar el caso – Los criterios (norms) utilizados en cada caso pueden depender del propio caso
4-22
Evaluación. Método por defecto (II) • Select – Hay que seleccionar cada norma para su evaluación – El conocimiento de dominio puede indicar el orden de evaluación
• Evaluate – Genera un valor de verdad para la norma – Suele ser un computo sencillo
• Comprobar si ya se puede tomar una decisión • Repetir selección y evaluación de la norma hasta que se pueda tomar una decisión
4-23
Evaluación. Estructura de Inferencia case
abstract
abstracted case
specify
norms
evaluate
decision
match
select
norm
norm value
4-24
Evaluación. Tarea y Método de Tarea TASK evaluación; ROLES: INPUT: case-description: “El caso a ser evaluado”; OUTPUT: decision: “El resultado de evaluar el caso”; END TASK evaluación; TASK-METHOD assessment-with-abstraction; REALIZES: evaluación; DECOMPOSITION: INFERENCES: abstract, specify, select, evaluate, match; ROLES: INTERMEDIATE: abstracted-case: “Datos sin tratar más abstracciones”; norms: “Conjunto de criterios de evaluación” norm: “Un criterio de evaluación” evaluation-results: “Lista de normas evaluadas” CONTROL-STRUCTURE:
4-25
Evaluación. Método de Tarea: control CONTROL-STRUCTURE: WHILE NEW-SOLUTION abstract(case-description -> abstracted-case) DO case-description := abstracted-case; END WHILE specify(abstracted-case -> norms) REPEAT select(norms -> norm); evaluate(abstracted-case + norm -> norm-value); evaluation-results := norm-value ADD evaluation-results; UNTIL HAS-SOLUTION match(evaluation-results -> decision); END REPEAT END TASK-METHOD assessment-with-abstraction; 4-26
Evaluación. Método de Tarea: especificación de control UML
[more abstractions] abstract
specify norms [no more abstractions]
[match fails no decision]
[match succeeds: decision found]
select norm
evaluate norm
match decision
4-27
Evaluación: Variantes del método • Quizás no sea necesario abstraer • Los criterios (norms) pueden depender del caso • La selección de normas tb. se puede basar en conocimiento • Aleatoria, heurística, estadística • Influencia en la eficiencia
4-28
Assessment. Esquema de dominio case regla abstracción
case datum
1+
tiene abstracción
case datum
value: universal 1+ requisito
implica 1+ norm
indica
decision
truth-value: boolean regla decisión 4-29
Gestión reclamaciones por desempleo claim handling collect data
data entry
finacial department decide about claim
:claim [no right] [right] compute benefit
send notification
prepare payment
4-30
Reglas de decisión gestión de reclamaciones WW benefit requirement
DEFINES
WW benefit right
benefit decision rule
insured = false DEFINES W W -benefit-right.value = no-right iunemployed = false DEFINES W W -benefit-right.value = no-right
insured = true AND unemployed = true AND weeks-worked--requirement = true AND years-worked-requirement = false DEFINES W W -benefit-right.value = short-benefit
insured = true AND unemployed = true AND weeks-worked--requirement = true AND years-worked-requirement = true DEFINES W W -benefit-right.value = long-benefit
weeks-worked-requirement = false DEFINES W W -benefit-right.value = no-right
4-31
Monitorización. Caracterización general (I) • Meta: analizar un proceso en marcha para determinar si se comporta como se espera • Ejemplo típico: proyecto software, planta industrial • Terminología – Parámetro: entidad cuyo valor actual puede ser relevante para detectar un comportamiento anómalo. – Norma: valor o rango de valores esperado para un parámetro en el caso de comportamiento normal – Discrepancia: indica un comportamiento anómalo del sistema que se monitoriza
4-32
Monitorización. Caracterización general (II) • Entrada: datos históricos, generalmente obtenidos en ciclos de monitorización previos • Salida: Discrepancia encontrada, si existe (no explicación) • Características – Monitorización/diagnosis: observa/explora – Monitorización/evaluación naturaleza dinámica/estática
4-33
Monitorización. Método por defecto (I) Monitorización guiada por datos • Comienza cuando se reciben nuevos datos (findings) • Para cada dato, se selecciona un parámetro del sistema y su norma (valor esperado) • La comparación entre el valor recibido y el esperado genera una diferencia • La diferencia se clasifica como discrepancia (o no) usando datos de ciclos previos
4-34
Monitorización. Estructura de Inferencia
4-35
Monitorización: Tarea task monitoring; roles: input: historical-data: "data from previous monitoring cycles"; output: discrepancy: "indication of deviant system behavior"; end task monitoring;
4-36
Monitorización: Método de Tarea (I) task-method data-driven-monitoring; realizes:monitoring; decomposition: inferences: select, specify, compare, classify; transfer-functions: receive; roles: intermediate: finding: "some observed data about the system"; parameter: "variable to check for deviant behavior"; norm: "expected normal value of the parameter"; difference: "an indication of the observed norm deviation"; 4-37
Monitorización: Método de Tarea (II) control-structure: receive( new-finding ); select( new-finding -> parameter ); specify( parameter -> norm ); compare( norm + finding -> difference ); classify( difference + historical-data -> discrepancy ); historical-data := finding add historical-data ; end task-method data-driven-monitoring;
4-38
Monitorización: Variantes del método • Monitorización guiada por modelo • El agente basado en conocimiento tiene la iniciativa • Típicamente, tarea periódica
• La clasificación puede ser una tarea compleja • Añadir etapa de abstracción de datos
4-39