Historial de revisiones | ||
---|---|---|
Revisión 0.1 | 18-Feb-2003 | Revisado por: apm |
Creación |
Desarrollo de un Sistema Experto
T.G. 1: Identificación y Análisis del Dominio
T.G. 2: Adquisición y Modelado del Conocimiento
Conocimiento Estratégico
Estructura de Tareas Genéricas y Métodos
Conocimiento del Dominio (Inferencias y Conocimiento Estático)
Restricciones
T.G. 3: Reducción al Nivel Simbólico
T.G. 6: Refinamiento y Aprendizaje
En el proceso de discriminación y elección, de un Entorno de Diseño para un S.E. (Sistema Experto), influyen los siguientes factores:
Selección de los Métodos de Representación del Conocimiento requeridos (reglas, marcos, ...)
Selección de las Herramientas (para la adquisición del conocimiento) que mejor se adapten al método de representación elegido
Interfaz con el Usuario (Facilidad de Uso)
Prototipos e Implementación
Herramientas de Desarrollo de S.E. Entre las mas destacadas se encuentran: Nexpert Object y CLIPS (siendo esta ultima herramienta Software Libre).
Características:
Potencia de Representación del Conocimiento
Flexibilidad (modificar y adaptar la herramienta)
Comodidad y Sencillez de la Interfaz de Usuario
Eficiencia
Robustez
Traza y Depuración (se explica la como se ha llegado a la conclusión)
Interfaces (usuario, bases de datos, lenguajes de programación, sistemas operativos, ...)
Se compone de:
Lista de Hechos |
Lista de Instacias |
Base de Conocimiento (para el Almacenamiento de Reglas) |
Motor de Inferencia (Agenda con Prioridad de Reglas) |
Mecanismos de Representación del Conocimiento
Reglas con encaminamiento hacia adelante
Programación Secuencial
Programación Orientada a Objetos (Marcos)
Extensión de CLIPS para Programación Orientada a Objetos (POO), con las características de Herencia y Encapsulamiento.
Classes: Define un concepto general
Objects: Instanciaciones de una clase
Slots: Propiedades de una clase
Messages: Comunicación entre objetos
Relations: Relaciones entre clases (is-a)
Facets: Restricciones sobre las propiedades (slots)
Definición. Descripción formal explicita de los conceptos de un dominio de discurso, propiedades de cada concepto que describen diversos aspectos y atributos y restricciones sobre los atributos.
Base de Conocimiento. Es la representación de las Ontologías y las Instanciaciones. (Knowledge Base)
Desarrollo de Ontologías
Definición de Clases
Estructuración de Taxonomia Jerárquica
Definición de Propiedades y Resticciones
Generación de Instanciaciones
Metodología
Generación desde arriba (partiendo de las superclases)
Generación Abstraccón (partiendo de las instacias)
Generación Hibrida
Debe aproximarse lo mas posible al Modelo del Experto del Dominio. |
Pasos
Determinar el Dominio y el alcance
Reutilización de Ontologías previas
Enumerar los terminos importantes del dominio
Definición de la Jerarquía de Clases
Definición de las Propiedades
Definición de Restricciones
Instanciación (crear los objetos concretos de las clases)
Siblings: Todos los nodos (subclases) de una determinada clase
Convenciones Tipográficas: Seguir una normas de estilo para escribir los nombres de las clases, propiedades, restricciones, guiones...
Metaclases: Tipos de clases
Metaslots: Tipos de propiedades
Slots Invertibles: Propiedades que pueden ser instancias de otra clase
Herramienta que permite la interacción entre el Sistema Experto y el usuario.
Tipos de Usuarios. Deben de estar diseñado para distintos tipos de usuarios ( experto, diseñador, principiante ... ).
Tipos de Interfaz
WIMP (Windows Icon Menu Pointer)
Conversacionales (comandos en modo texto)
Sistemas de Desarrollo de Interfaces. Su desarrollo se compone de un modelo de conocimiento para el tipo de interacción.
Características
Capaz de generar herramientas estándar con poco esfuerzo.
Guía de usuario
Tratamiento de gráficos
Desarrollo de prototipos
Separación entre Dialogo y Computación
Facilita el diseño de interfaces no supeditados a la implementación de la aplicación.
Modificiación Selectiva. En elproceso de mantenimiento se pueden realizar modificaciones en cada módulo sin que afecte al resto.
Mantenimiento. Sustitución de la interfaz sin que afecte al Sistema Experto.
Tipos de Interacción
Gramaticas Independientes del Contexto (Context Free Grammars)
Redes de Transiciones (Transicion Diagrams)
Modelos de Eventos (Event Models or Languages)
Árboles de Menús
Las Redes de Transiciones se representa por la multiplicidad posibles estados cuyas transiciones (arcos) son procesos de comunicación de 3 tipos: usuario, internas (Mecanismos de control), externas (Aplicación) |
Etapas en la Construcción de una Interfaz
Diseño
Construcción
Ejecución
Evaluación
Herramientas de Simulación
No son interfaces en sí.
No son interactivos.
Librerías Estándar (Toolkit)
No están orientados a Inteligencia Artificial.
Desarrollo de Software General (Ingeniería de Sistemas).
Sistemas de Gestión de Interfaces de Usuario (User Interface Management Systems - UIMS)
Basados en un Modelo de la Interacción del Dialogo (existe un Modelo de Conocimiento del Dialogo).
Facilidades de Prototipado
Facilidades de Implementación y Ejecución
Facilidades de Evaluación
Facilidades de Modificación y Mantenimiento
Diseño de la interfaz en la fase previa basado en especificaciones.
Ejemplos: ITS, Hypernews, MAGIT, ACE, CLIM
Evaluación: Es el proceso final que debe ser llevado a cabo desde el principio de la implementación, es decir en todas las etapas. El proceso de Evaluación engloba la Validación y la Verificación.
Validación: Comprobar que hemos construido el Sistema Experto correcto, adecuado.
Verificación: Comprobar que hemos construido el Sistema Experto bien.
Distinción entre estrategia, conocimiento de tareas, inferencias y conocimiento del dominio.
Características
Fiabilidad. Sistema Basado en el Conocimiento para explicar el resultado de la evaluación.
Validez. El SBC y el método de evaluación (Resultado). Tratar los aspectos relevantes y Comprobar que el proceso de inferencia es correcto.
Aceptación. Se mide con los usuarios finales (utilización y utilidad). Concepto de Explicación
Criterios para el proceso de evaluación en el desarrollo de un Sistema Experto.
Completitud del Dominio (No falta conocimiento) |
Consistencia |
Exclusiones |
Inspección Manual. Revisar el código (requisitos) a mano. No es sistemático.
Verificación Estática. Comprobar la Base de Conocimientos de un Sistema Experto buscando anomalias (conflictos, redundancia ...)
Prueba Formal. Se da para Sistemas Formalizados (Desarrollo Teoría, Demostración ... )
Verificación por Referencia Cruzada. Distintos niveles de conocimiento (Físico, Simbólico y Conocimiento) en las entidades del diseño conocimiento. Se mantiene en los distintos niveles (Completitud y Consistencia de las descripciones)
Comprobación Empírica. Es analogo al Test de Turing, que consiste en: Comprobar si el Sistema Experto se comporta como un Experto Humano, sin distinguir quien es quien. Conductista evalua el Sistema Experto por cómo se comporta.
Documento Requisistos Aplicación (requisitos míninos y deseados)
Modelo Conceptual (Metodología de KADS u otras metodologís
Modelo Diseño que especifican sistemas en terminos de entidades de computación
Sistema implementado o Prototipo
Dar un razonamiento (explicación) del resultado obtenido; cómo y porque se ha llegado a esa conclusión
Crear un Sistema Experto para explicar las Inferencias del Sistema Experto original
Traza: Enumera las reglas o jerarquias (Marcos) se han activado y su orden
Aprendizaje Simbólico