Sistemas de Blackboard.

Anuncio
Tema 3: Ðreas de la IA:
Ejemplos de Investigaci‡n Actual
(I)
Sistemas de Blackboard.
SRP
Carlos Carrascosa Casamayor
Vicente J. Julián Inglada
Sistemas de Representación y Procesamiento Automático del Conocimiento
Sistemas de Representación y Procesamiento Automático del Conocimiento
1
Tema 3: Ðreas de La IA:
Ejemplos de Investigaci‡n Actual (I)
Sistemas de Blackboard.
3.1. Definición de Blackboard.
Blackboard.
3.2. Knowledge Sources (KSs)
KSs).
3.3. Idea de Blackboard.
Blackboard.
3.4. Ciclo de Control.
3.5. Estrategias de Control.
3.6. Diversas Arquitecturas de Control.
3.7. Relación con los Sistemas de Producción.
3.8. Ejemplos de Sistemas de Blackboard.
Blackboard.
3.9.
3.9. Un Ejemplo: BB1.
• Bibliografía:
– Pfleger,
Pfleger, K., HayesHayes-Roth,
Roth, B., “An Introduction to BlackboardBlackboard-Style
Systems Organization”, Stanford University, (1997).
– Nii,
Nii, H. P., “Blackboard Systems: The blackboard model of
problem solving and the evolution of blackboard architectures”.
AI Magazine, 7 (2): 3838-53, 1986.
Sistemas de Representación y Procesamiento Automático del Conocimiento
Definici‡n de Blackboard (I)
• “Blackboard”: modelo de resolución de problemas
incremental y oportunista.
• Modelo de Resolución de Problemas:
– Esquema para organizar los pasos de razonamiento y el
conocimiento del dominio para construir una solución al
problema (provee una estructura conceptual para
organizar el conocimiento y unas estrategias para aplicar
ese conocimiento ).
• Resolución de Problemas Incremental:
– Las soluciones completas son construidas "pieza" a
"pieza" a partir de una solución (parcial) basada en datos
incompletos.
• Oportunismo:
– Aplicación de la estrategia de razonamiento más
apropiada en cada momento.
Sistemas de Representación y Procesamiento Automático del Conocimiento
2
Definici‡n de Blackboard (II)
• Blackboard
Estructura Global de Datos
• Conjunto de Fuentes de Conocimiento (Knowledge
(Knowledge Sources,
Sources,
KSs)
KSs)
Módulos computacionales independientes que
contienen el conocimiento útil en el contexto de
la aplicación del sistema
Realizan cambios en el Blackboard
BlackBoard
KS
KS
.
.
.
KS
Sistemas de Representación y Procesamiento Automático del Conocimiento
Historia
– Origen: sistemas de reconocimiento del habla HEARSAY
(Carnegie Mellon University, 70’s).
– Primer sistema de Blackboard: HEARSAY-II.
– Segundo: HASP (interpretación de datos de sonar pasivos).
– Desarrollado para tratar con las características del problema
de reconocimiento del habla:
• Espacio de búsqueda muy grande.
• Datos de entrada erróneos o incompletos.
• Conocimiento de resolución del problema impreciso y/o incompleto.
Modelo de Resolución de Problemas con:
Desarrollo incremental de soluciones.
Aplicable a diversos tipos de conocimiento.
Adapte sus estrategias de forma oportunista.
– Blackboard Architecture o Blackboard Shell:
• Templates para la creación de sistemas reales.
• Ejemplos: HEARSAYHEARSAY-III, AGE, BB1.
Sistemas de Representación y Procesamiento Automático del Conocimiento
3
Blackboard
• Estructura de Datos global.
• Comunicación entre todas las KSs
KSs.
• Contiene
datos,
hipótesis
(soluciones
parciales
potenciales) y soluciones completas.
• Espacio de Soluciones:
Soluciones: conjunto de todas las posibles
soluciones, parciales y totales, al problema.
• No existe un modelo de representación estándar para los
datos en el Blackboard,
Blackboard, aunque eso sí, se suele optar por
una representación estructurada (tipo red o frame,
frame, con
variantes).
Sistemas de Representación y Procesamiento Automático del Conocimiento
Knowledge Sources -KS s- (I)
– Ejecución de KSs:
KSs:
• Realizan cambios al Blackboard.
Blackboard.
• Sólo un conjunto de KSs son apropiados / habilitados /
disparados (triggered
(triggered)) para ejecución en cada momento.
Según el estado actual (o cambios)
del Blackboard
Sistemas de Representación y Procesamiento Automático del Conocimiento
4
Knowledge Sources -KS s- (II)
– Características:
•
•
•
Las KSs
KSs no pueden comunicarse directamente.
AutoAuto-activadas (oportunistas).
El orden de ejecución y el tipo de razonamiento son
determinados en tiempo de ejecución basándose en:
• Computaciones previas
• Posibles eventos externos
Estado
Actual del
Sistema
Sistemas de Representación y Procesamiento Automático del Conocimiento
Knowledge Sources -KS s- (III)
– Composición de una KS:
KS:
• Precondición
Determina si se activa la KS.
KS.
• Problema: Reevaluación.
• Información adicional: valor indicando la importancia
de la KS,
KS, estimación de la duración de la ejecución
del cuerpo,...
Útil para el Módulo de Control.
• Cuerpo
Acciones a realizar por la KS cuando se ejecuta.
• No existe un estándar para la codificación:
procedural,
procedural, conjuntos de reglas, ...
• No suelen mantener un estado interno entre distintas
ejecuciones (se suele almacenar en el Blackboard).
Blackboard).
Sistemas de Representación y Procesamiento Automático del Conocimiento
5
Idea de Blackboard (I)
• Problema:
Grupo de personas intentando resolver
un rompecabezas
• Entorno:
–
–
–
–
Habitación con una pizarra y a su alrededor, un grupo
de personas cada una de las cuales posee un puñado
de piezas del rompecabezas
Inicio: unos voluntarios ponen sus piezas más
"prometedoras" en la pizarra.
Cada persona mira sus piezas y ve si alguna de ellas
encaja en las piezas que ya hay en la pizarra.
Aquellos con las piezas apropiadas se acercan a la pizarra
y actualizan la solución.
Esto causa que otras piezas encuentren su lugar.
Sistemas de Representación y Procesamiento Automático del Conocimiento
Idea de Blackboard (II)
• No importa si una persona tiene más piezas
que otra.
• El rompecabezas completo puede ser
resuelto en absoluto silencio.
• Cada persona "se activa" a sí misma, conociendo cuando sus
piezas contribuirán a la solución.
• Existe un orden no establecido a priori sobre las personas
para acercarse a la pizarra.
• El comportamiento cooperativo aparente es proporcionado
por el estado de la solución en la pizarra.
• Solución construida incrementalmente (una pieza cada
vez) y de forma oportunista (conforme se da una
oportunidad para añadir una pieza).
• Lo opuesto a comenzar sistemáticamente desde
una esquina e intentar cada pieza.
Sistemas de Representación y Procesamiento Automático del Conocimiento
6
Idea de Blackboard (III)
Habitación con sólo un pasillo
central que lleva a la pizarra, ancho
para una única persona.
• Necesidad de un monitor (alguien que vea el grupo y elija el
orden en el cual una persona se acerca a la pizarra).
• Funcionamiento:
– El monitor pide a todas las personas con piezas para
añadir que levanten sus manos.
– El monitor elige una persona de entre las que tienen sus
manos levantadas según algún criterio, como por
ejemplo, la persona que levanta primero la mano, la que
tiene una pieza que sirve de puente entre dos “islas de
solución” (es decir, dos grupos de piezas completadas), ...
Sistemas de Representación y Procesamiento Automático del Conocimiento
Idea de Blackboard (IV)
• El monitor necesita una estrategia o un
conjunto de estrategias para resolver
el rompecabezas, pudiendo elegir una
estrategia antes de que la resolución
del rompecabezas comience o desarrollar estrategias
conforme la solución comienza a revelarse.
• Monitor
Módulo de Control.
• Añadiendo la restricción de que la construcción de la
solución ocurre, físicamente, paso a paso en algún orden
determinado por el monitor (cuando múltiples pasos son
posibles y deseables), el modelo de “Blackboard” es
acercado a las realidades inherentes en los entornos de
computación serial, lo cual es útil si trabajamos en
computadoras uniprocesadores.
uniprocesadores.
Sistemas de Representación y Procesamiento Automático del Conocimiento
7
Ciclo de Control
Determinar las KSs
KSs a activar.
Elegir las KSs
KSs a ejecutar de entre las activas
(1 por ciclo) mediante una Estrategia de Control
Planificador o Scheduler.
Scheduler.
Ejecutar la KS (o KSs)
KSs)
Causa cambios en el Blackboard
BlackBoard
C
o
n
t
r
o
l
KS
KS
.
.
.
KS
Sistemas de Representación y Procesamiento Automático del Conocimiento
Estrategias de Control
– Foco de Atención:
• Seleccionar una zona del BB. y el/los KS/s más apropiado/s
para esa zona (contexto)
Estrategia de Activación.
– Ciclo de Control de Periodo Acotado:
• Seleccionar las KSs
KSs en base al tiempo de ejecución estimado
de las mismas, y al tiempo que tiene para su ejecución el
módulo de Control
Aplicación a sistemas de tiempo real.
– Terminación:
• Si el sistema debe finalizar su ejecución, se puede utilizar
una KS especial cuyas precondiciones evalúan la validez de
la solución.
– Codificación de la Estrategia de Control:
• Almacenar la estrategia de control en el BB. y construir KSs
que la puedan modificar
Sistema adaptativo.
adaptativo.
Sistemas de Representación y Procesamiento Automático del Conocimiento
8
Diversas
Arquitecturas de Control (I)
– Control Basado en Agenda :
• Todas las acciones posibles son colocadas en una agenda y,
en cada ciclo, las acciones son valuadas y la acción de valor
más alto es escogida para su ejecución.
– Control Basado en Eventos :
• Los cambios en el "Blackboard" se describen en términos de
un conjunto de tipos de "eventos del Blackboard"
Blackboard" que
activan
las
KSs
apropiadas
(para
evaluar
sus
precondiciones).
– Control Jerárquico :
• Se usa una jerarquía de ”KS
s de control".
”KSs
Sistemas de Representación y Procesamiento Automático del Conocimiento
Diversas
Arquitecturas de Control (II)
– Blackboard dirigido por el objetivo :
• Trata de integrar factores dirigidos por el objetivo con
dirigidos por los datos en el control basado en agenda.
– Blackboard de Control :
• Extensión del control basado en agenda por medio de la
adición de un mecanismo de "planificación de control".
• El problema del control es tratado como una tarea de
resolución de problemas en sí misma.
• Tanto el problema del dominio como el del control son
resueltos usando una aproximación de "Blackboard".
"Blackboard".
– Blackboard Canalizado Parametrizado :
• Extensión del Blackboard dirigido por el objetivo en
combinación con el Blackboard de control.
Sistemas de Representación y Procesamiento Automático del Conocimiento
9
Relaci‡n con los
Sistemas de Producci‡n (I)
Sistemas de Blackboard
– Blackboard
– KSs
– Estrategia de Control
Sistemas de Producción
–
–
–
Memoria de Trabajo
Reglas
Estrategia de Resol.
de Conflictos
Sistemas de Producción:
– Puede verse como un caso particular de un Sistema de
Blackboard donde los KSs tienen la forma de una simple
regla.
Sistemas de Representación y Procesamiento Automático del Conocimiento
Relaci‡n con los
Sistemas de Producci‡n (II)
Principales diferencias:
– Las reglas de los SP poseen la misma forma y son
típicamente mucho más simples que las KSs (una KS
podría ser un SP).
– Los S. de BB. pueden razonar sobre cualquier tipo
arbitrario de datos (con las KSs apropiadas), los SP no
pueden (imágenes, ...) si no son transformadas antes a un
conjunto de ítems lógicos.
Sistemas de Representación y Procesamiento Automático del Conocimiento
10
Ejemplos de sistemas de Blackboard
– Aplicaciones de Arquitecturas de Blackboard:
•
•
•
•
•
Reconocimiento del habla.
Reconocimiento de señales.
Reconocimiento de imágenes.
Planificación y Scheduling.
cheduling.
OrdenaciónOrdenación-montaje ( identificación de estructuras ),...
Sistemas de Representación y Procesamiento Automático del Conocimiento
Un Ejemplo: BB1 (I)
– Marco independiente del dominio para
construir aplicaciones con arquitectura de
Blackboard .
– Diseñado por el Laboratorio de Sists.
Sists. del
Conoc.
Conoc. (KSL) de la Universidad de Stanford
según una idea y dirección de Barbara
HayesHayes-Roth.
Roth.
– Implementación: Inicialmente en Lisp.
Lisp.
Última versíón (BBK) en C++.
Sistemas de Representación y Procesamiento Automático del Conocimiento
11
Un Ejemplo: BB1 (II)
• Arquitectura de Blackboard de Control
KSs de
Control
Blackboard
de Control
Blackboard
de Dominio
Eventos de
Control
Eventos de
Dominio
KSs de
Dominio
Gestor de la
Agenda
Funciones de
Validación
(Heurísticas)
KSI’s
Agenda
Planificador
Sistemas de Representación y Procesamiento Automático del Conocimiento
Un Ejemplo: BB1 (III)
Scheduler
Plan de Control
Agenda:
Acciones
Posibles
Acciones
Conocidas
Gestor de la
Agenda
Memoria
Próxima
Operación
Resultados del
Razonamiento
Eventos
Ejecutor
Sistemas de Representación y Procesamiento Automático del Conocimiento
12
Un Ejemplo: BB1 (IV)
Scheduler
Plan de Control
Agenda:
Acciones
Posibles
– Ciclo de Ejecución:
Memoria
Acciones
Conocidas
Gestor de la
Agenda
Ejecutor
Próxima
Operación
Resultados del
Razonamiento
Eventos
Ejecutor
Ejecuta la siguiente acción
Cambios en la memoria
Producen eventos asociados
Gestor de la Agenda
Planificador
Sistemas de Representación y Procesamiento Automático del Conocimiento
Un Ejemplo: BB1 (V)
Scheduler
Plan de Control
Agenda:
Acciones
Posibles
– Ciclo de Ejecución:
Memoria
Acciones
Conocidas
Ejecutor
Gestor de la
Agenda
Próxima
Operación
Resultados del
Razonamiento
Eventos
Ejecutor
Gestor de la Agenda
Activa acciones en respuesta a los eventos, y
pone instancias específicas del contexto en
una agenda de posibles acciones
Planificador
Sistemas de Representación y Procesamiento Automático del Conocimiento
13
Un Ejemplo: BB1 (VI)
Scheduler
Plan de Control
Agenda:
Acciones
Posibles
– Ciclo de Ejecución:
Memoria
Acciones
Conocidas
Ejecutor
Gestor de la
Agenda
Próxima
Operación
Resultados del
Razonamiento
Eventos
Ejecutor
Gestor de la Agenda
Planificador
Tasa las posibles acciones contra el plan de
control actual y elige la que tiene una mejor
tasa como siguiente acción a ser ejecutada
Sistemas de Representación y Procesamiento Automático del Conocimiento
Un Ejemplo: BB1 (VI)
– Una adaptación de BB1, para funcionar en
entornos con restricciones temporales (AIS satisficing cycle) se ha empleado en:
• Guardian: Control de pacientes en unidad de cuidados
intensivos.
• AIBots (B-Robot): Robots Móviles Inteligentes en un entorno
incierto y dinámico.
• Virtual Theater: actores inteligentes para un juego de teatro
animado por computador.
• Extempo Systems Inc. (http://www.extempo.com): empresa
que desarrolla personajes interactivos para aplicaciones en:
comercio electrónico, comunicaciones y entrenamiento
corporativo, y entretenimiento.
Sistemas de Representación y Procesamiento Automático del Conocimiento
14
Ejemplo de Aplicaci‡n:
BBB ò Buscador BlackBoard (I)
– Objetivo:
• Diseño de un meta-buscador
Sistemas de Representación y Procesamiento Automático del Conocimiento
Ejemplo de Aplicaci‡n:
BBB ò Buscador BlackBoard (II)
Blackboard
KS Buscador
1
KS Buscador
2
KS Buscador
n
Internet
KS
Visualizador
(KSV)
KS de
Filtrado
(KSF)
KS
Receptor de
Preguntas
(KSRP)
Sistemas de Representación y Procesamiento Automático del Conocimiento
15
Ejemplo de Aplicaci‡n:
BBB ò Buscador BlackBoard (III)
– Funcionamiento:
Consulta a Realizar
KSRP
KS Buscador 1
KS Buscador 2
KS Buscador n
Respuestas sin Filtrar
Internet
KSF
Respuestas Finales
KSV
Blackboard
Sistemas de Representación y Procesamiento Automático del Conocimiento
16
Descargar