Sistemas Expertos Adquisición del conocimiento Fases de desarrollo

Slides:



Advertisements
Presentaciones similares
PROCESO Y MODELOS EN LA INGENIERIA DE SOFTWARE
Advertisements

ANÁLISIS DE REQUERIMIENTOS
METODOLOGÍAS ÁGILES “PROCESO UNIFICADO ÁGIL (AUP)
INGENIERIA DE REQUERIMIENTOS
Análisis y Diseño de Aplicaciones Ingeniería de Software
M.S.C. Ivette Hernández Dávila
Elementos conceptuales
Ciclo de formulación del proyecto.
INTELIGENCIA DE NEGOCIOS
SEMANA Introducción.
PRENDIZAJE BASADO EN PROBLEMAS.
PROGRAMA APRENDER-UNAH MÓDULO 5: DISEÑO DE LA INSTRUCCIÓN
CAMBIO ORGANIZACIONAL
Las etapas de un proyecto
Toma de Decisiones Gerenciales
Ciclo de Vida del Software Paradigmas de Desarrollo
5.3 APROXIMACIONES AL DISEÑO
REQUERIMIENTOS DE SOFTWARE
1 Diseño Orientado a Objetos Agustín J. González ELO-329: Diseño y Programación Orientados a Objetos 1er. Sem
Una nueva opción de enseñanza- aprendizaje
Sistemas Basados en Conocimiento Diego Faúndez Nelson Escobar.
Sesión de Aprendizaje Expositora: Luz Angélica León Salmón.
CONCEPTOS BÁSICOS Diseño de Sistemas.
Modelo de espiral Fue originalmente propuesto por Barry Boehm en Es una secuencia de actividades con retrospectiva de una actividad a otra, representado.
Modelos de desarrollo de Software
Técnicas de Programación
Evaluación de Sistemas y de sus Interfaces
Principios para las Matemáticas Escolares
Análisis y diseño detallado de aplicaciones informáticas de gestión
Sistemas Basados en Conocimiento (Knowledge Based Systems) Lic. Mario G. Oloriz Agosto 2004.
CICLO DE VIDA Y NORMAALIZACION DE UN SISTEMA DE BASE DE DATOS
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Ing. Noretsys Rodríguez. Definición de Conceptos  Falla: Ocurre cuando un programa no se comporta de manera adecuada. Es una propiedad estadística de.
SISTEMAS EXPERTOS (SE) Coronel Jaramillo Ricardo
TALLER DE ESTRATEGIAS EN EL APRENDIZAJE
Diseño de Sistemas Expertos
PRESENTACIÓN Este trabajo se desarrolla sobre el tema de competencias, y basado en el Marco de Fundamentacion Conceptual Especificaciones de la Pruebas.
¿Qué son las competencias?
COMPLETA LOS ESPACIOS CON LA PALABRA ADECUADA 1.LOS _______________________ SE DEFINEN COMO LA _________________LÓGICA DE _________PARA SOLUCIONAR UN.
Ciclo de vida de un sistema
Ingeniería de Requisitos
Fundamentos de Sistemas Expertos
DIPLOMADO EN EDUCACION SUPERIOR EN SALUD CON NUEVAS TECNOLOGIAS
Barbara Mercedes Parada Urieta Estudiante
APRENDIZAJE BASADO EN PROBLEMAS
TIPOS DE AUDITORÍAS EN SISTEMAS DE INFORMACIÓN
DISEÑO CURRICULAR Presentado por: Cesar Augusto Sáenz María Alejandra Hernández 1.contenidos curriculares de competencia.
Conceptos sobre GESTIÓN DE PROYECTOS
APRENDIZAJE BASADO EN PROBLEMAS (ABP)
Elementos de información
Actividades en el Proceso de desarrollo de Software
Diseño de Adiestramientos
Modelo Prescriptivos de proceso
Enseñar con Aprendizaje Basado en Problemas
Ramas de I.A. ROBOTICA SISTEMAS DE VISION SISTEMAS EXPERTOS
REVISION Y AUDITORIA.
Mejores Prácticas para el Desarrollo de Software Omar de Jesús Rosales Hernández.
Ingeniería en Informática F UNDAMENTOS DE C OMPUTACIÓN B ACHILLERATO EN I NGENIERÍA I NFORMÁTICA L IC. C ARLOS H. G UTIÉRREZ L EÓN.
Un requerimiento es una condición o capacidad a la que el sistema (siendo construido) debe conformar [ Rational ]. Un requerimiento de software puede.
60´s Inicio de los Sistemas Expertos Se buscaban soluciones generales 70´s Los sistemas son más eficientes en dominios acotados La calidad y cantidad.
EI, Profesor Ramón Castro Liceaga IV. AREAS DE EVALUACIÓN DE LA AUDITORIA EN INFORMÁTICA. UNIVERSIDAD LATINA (UNILA)
Fundamentos de Computación
Identificación de entradas, salidas y herramientas de procesos de gestión del PMI Jairo A. Orozco L.
Modelo de procesos de software
CICLO DE VIDA DE UN SOFTWARE. Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados, que forman parte de.
El diseño de la interfaz de usuario requiere el estudio de las personas y el conocimiento tecnológico adecuado.
 La definición y componentes básicos de las competencias profesionales.  Los procedimientos empleados por las organizaciones para identificar sus competencias.
GESTIÓN DE PROYECTOS.
OBJETIVOS DE LOS PROGRAMAS DE ESTUDIO: SESIÓN DE TRABAJO 3 DE SEPTIEMBRE DE 2013 SECRETARÍA GENERAL SECRETARÍA DE APOYO A LA DOCENCIA.
Transcripción de la presentación:

Sistemas Expertos Adquisición del conocimiento Fases de desarrollo Ingeniería del Conocimiento Ingeniería Electrónica

¿Quiénes participan en la construcción de un SE ? SHELL Ingeniero del Conocimiento Sistema Experto Personal de Apoyo Experto del Dominio Constructor del SHELL Usuario final Construye Refina Prueba Extiende Agregan datos Usa Entrevista

Participantes fundamentales en el desarrollo. Experto del dominio Especialista. Conoce los hechos importantes y comprende el significado de las relaciones entre ellos. Posee conocimiento, juicio, metodología y sabe aplicarlas en el dominio de trabajo. Ing. del conocimiento Posee el conocimiento técnico para adquirir, representar y utilizar apropiadamente el conocimiento para estructurar y explicar líneas de razonamiento. Es muchas veces el constructor del sistema. Usuario final Quien usará el sistema. Sus necesidades deben quedar claramente definidas: objetivos, características de la interacción, tipo de vocabulario, calidad de ayuda y explicaciones.

Ingeniero del conocimiento Debe poseer la lógica y las cualidades de un informático. Debe ser un especialista en la tecnología de los sistemas expertos. Debe poseer la capacidad de aprendizaje interdisciplinario. Debe ser competente para reconocer y tratar con lo expertos del dominio. Debe ser hábil para educir el conocimiento en diferentes circunstancias. Debe tener la destreza interpersonal y directiva para liderar el proyecto.

Usuario Final El equipo de desarrollo de un sistema experto se completa con el concurso del usuario final que contribuye a definir los aspectos operativos y las características de la interfaz.

Requerimientos para desarrollar un SE. Existen verdaderos expertos Los expertos acuerdan soluciones Los expertos pueden articular sus métodos Y Se dispone de casos de prueba La tarea está bien estructurada y se entiende bien Desarrollo Posible La tarea no requiere sentido común La tarea requiere sólo habilidades cognitivas.

Cuando es apropiado implementar un SE. Se requiere manipular símbolos Se requieren soluciones heurísticas La tarea no es demasiado fácil La tarea tiene valor práctico La tarea es de un tamaño manejable Y Desarrollo Apropiado Naturaleza Alcance Complejidad

Justificación del desarrollo de un SE. Experiencia humana escasa Pérdida de experiencia humana Experiencia necesaria en entornos hostiles O No existen soluciones alternativas Alta tasa de recuperación de la inversión Desarrollo Justificado

SE aplicados a tareas de: Infiere la descripción de situaciones a partir de los datos Infiere mal funcionamiento del sistema a partir de observaciones Prescribe acciones correctivas ante un mal funcionamiento Pronóstico. Infiere las consecuencias de la situación actual Compara lo observado con lo deseado Gobierna la conducta del sistema Diseña planes y acciones para alcanzar un objetivo Configura objetos bajo ciertas restricciones Provee apoyo a decisiones Ayuda en el aprendizaje Indica el “cómo hacerlo” Interpretación Debugging Predicción Control Planificación Diseño Tutor Monitoreo Diagnóstico Consultor Asist.Inteligente

Problemas y limitaciones de los SE El proceso de adquisición del conocimiento es dificultoso. Los dominios deben estar bien acotados. La validación del sistema puede ser cuestionable, si no existen expertos independientes que verifiquen los resultados. El desarrollo es caro. El sentido común no es representable. Si se los saca de contexto exhiben un comportamiento poco razonable. La incorporación automática de nuevo conocimiento (aprendizaje) es complicada.

Problemas y limitaciones de los SE El proceso de adquisición del conocimiento es dificultoso. Los dominios deben estar bien acotados. La validación del sistema puede ser cuestionable, si no existen expertos independientes que verifiquen los resultados. El desarrollo es caro. El sentido común no es representable. Si se los saca de contexto exhiben un comportamiento poco razonable. La incorporación automática de nuevo conocimiento (aprendizaje) es complicada.

Adquisición del conocimiento Proceso de extraer, estructurar y organizar conocimiento de una o varias fuentes. Es el “cuello de botella” del desarrollo. Dificultades: Es costoso Los expertos suelen disponer de poco tiempo Deben existir acuerdos y se debe trabajar en equipo Es fundamental estructurar el conocimiento y explicitar métodos

Métodos de adquisición del conocimiento. Se estructuran alrededor de algún tipo de entrevista con el/los expertos donde además se trabaja con toda la documentación disponible. Manuales Lentos y caros Aún los más usados Programas interactivos que “entrevistan a los expertos”. Se minimiza el rol del ing. del conocimiento. Semiautomáticos Apoyos computarizados para colaborar con los ing. del conocimiento. Automáticos Se minimizan los roles del experto e ing. del conocimiento. Métodos inductivos

Métodos manuales de adquisición del conocimiento Entrevistas: distintos tipos El experto “enseña” tratando de explicar y justificar su conocimiento del dominio. El experto instruye sobre como leer e interpretar el material disponible. El experto explica como aborda un caso particular Informales o no estructuradas Dificultades Los expertos tienen dificultad en identificar los principales elementos de su conocimiento en dominios complejos. Dificultad para: interpretarlos integrarlos estructurarlos Los datos adquiridos no se relacionan o tienen distinto nivel de complejidad.

Métodos manuales de adquisición del conocimiento. Entrevistas: distintos tipos Tienen un objetivo específico. Organizan la comunicación y reducen los problemas de interpretación. Estructuradas Agenda con áreas de interés Exigen un análisis previo de la información disponible hasta el momento. Cuestionario específico Exigen un análisis cuidadoso de la información obtenida para validarla, debiéndose volver sobre ella en entrevistas posteriores.

Adquisición del conocimiento La tarea de educción comprende tres aspectos fundamentales: La motivación del experto del dominio. El estilo y el conocimiento que posee el ingeniero del conocimiento. Un método adecuado.

Métodos manuales de adquisición del conocimiento. Análisis de protocolo Se propone al experto la realización de una tarea real. Se planifica la actividad previamente y se prepara el escenario. El experto debe explicar detalladamente su proceder, justificar sus decisiones y caracterizar las distintas alternativas con sus valores específicos. Análisis de casos Se analiza el comportamiento del experto en campo. Se puede analizar con quienes interactúa y de que forma, a que eventos dirige su atención. Observación de campo Se reúne a varios expertos para que den su opinión sobre distintos aspectos del problema. Es útil para generar ideas. Brainstorming Aunque sean parciales, estimulan la crítica por parte de los expertos y ayudan a orientar el desarrollo. Prototipos

Desarrollo basado en CASNET - 70s Soporte para el Ingeniero del conocimiento Debugging TRACE BREAK Habitualmente disponibles. Testeo automático Raramente disponible Almacena gran cantidad de casos de prueba con sus soluciones correctas. Los utiliza para testear las reglas en la KB. Muy útil para analizar modificaciones. EXPERT Desarrollo basado en CASNET - 70s

Soporte para el Ingeniero del conocimento La mayoría de los SE pueden explicar de que forma alcanzan sus conclusiones. Puede proveerlo la herramienta o depender del programador Facilidades de explicación Razonamiento retrospectivo Razonamiento hipotético Razonamiento sobre conclusiones Traza de las reglas disparadas. Explica las diferencias si cierto hecho o regla hubiera sido distinto. Explica porque no se alcanzó una conclusión esperada. Explicación incluida. Más elaborada que la simple traza de las reglas. Muy complejos EMYCIN

Métodos automáticos: Inducción de reglas. Las reglas se obtienen a partir de ejemplos. El programa genera una matriz de atributos, valores y elecciones y sobre ella operan algoritmos de distinto tipo para lograr las reglas (desde métodos estadísticos a redes neuronales). Ventajas Desventajas Al experto le resulta más fácil dar ejemplos. El constructor no necesita ser Ingeniero del conocimiento. Al revisar las reglas el experto organiza su pensamiento Pueden generar reglas difíciles de comprender. El nº de atributos debe ser pequeño. Se limita a situaciones de total certeza. Se debe tener idea de la solución pues no se sabe de antemano el nº de ejemplos necesarios para que la solución sea razonable. Se utilizan como aproximaciones y se complementan luego con otros métodos

Adquisición a partir de múltiples expertos Dominios complejos que requieren más de una opinión Necesidad de varios expertos Tareas multidisciplinarias Beneficios Dificultades En promedio menos errores El dominio puede ser más amplio Síntesis de experiencias particulares Aumenta la calidad por la interacción Opiniones encontradas Expertos dominantes Competencia mal entendida Temor frente a profesionales de distinta jerarquía.

Adquisición del conocimiento: Experiencias Experto principal que fijó las estrategias básicas Malezas consenso Grupo de botánicos asesores Los expertos no estaban disponibles Interacción Capas reservorio Experto intermediario: La mayor interacción se realizó con él. Se inicia el trabajo con un grupo de expertos sensibilizados a través de cursos. Este grupo inicial se desgrana quedando un experto principal que da las pautas fundamentales y culmina el desarrollo. Encendido de una caldera

Herramientas para el desarrollo de SE. Pascal Fortran C Java Orientados al problema Lenguajes de programación Manipulación de símbolos Lisp Prolog PC - PLUS KAPPA – PC CLIPS JESS Lenguajes de Ingeniería del conocimiento Herramientas (SHELL)

Construcción de un SE: Fases del desarrollo Identificación Caracterizar los aspectos importantes del problema Reformulación Requerimientos Conceptualización Encontrar los conceptos para representar el conocimiento Reformulación Conceptos formalización Rediseño Diseñar las estructuras para representar el conocimiento Estructura Implementación Refinamiento Desarrollo del sistema Reglas Validación del sistema Testeo

Construcción de un SE: Fases del desarrollo Identificación Estudio de factibilidad de la aplicación Naturaleza del problema (scheduling, diagnóstico, control etc.) Tarea a cumplir Expertos del dominio Usuarios finales Recursos y fuentes de información Objetivos del sistema Alcance del problema ( Es manejable? Tiene interés práctico?) Esta fase requiere un gran esfuerzo para compatibilizar ideas, ya que el equipo de trabajo recién se constituye y las perspectivas de cada integrante suelen ser bastante diferentes.

Construcción de un SE: Fases del desarrollo Conceptualización Razonamiento del experto Se deben determinar los conceptos claves, las relaciones y las características del flujo de información necesario para el proceso de solución del problema. Se considera la posibilidad de descomposición del problema. Se presta atención a los distintos tipos de conocimiento involucrados Se comienza a perfilar la representación del conocimiento del dominio.

Construcción de un SE: Fases del desarrollo Formalización Se deben representar los conceptos claves y sus relaciones. Se definen los formalismos de representación del conocimiento. Se determina la herramienta constructora de SE que se usará. Se tiene en cuenta: Técnicas de representación. Tipos de conocimiento. Estrategias de búsqueda.

Construcción de un SE: Fases del desarrollo Se construye un prototipo con capacidad de resolver un conjunto de casos seleccionados, con los que se pone en evidencia las grandes líneas de razonamiento inherentes a la solución del problema. Implementación El desarrollo es incremental, puede involucrar la prueba de distintos enfoques o partir de un modelo simplificado e incluso parcial del problema. Contribuye a una mayor comprensión del problema por parte de los agentes intervinientes. Prueba la calidad de las etapas de desarrollo. Permite un ciclo iterativo de corrección y refinamiento de las fases de desarrollo.

Construcción de un SE: Fases del desarrollo Se evalúa la perfomance y utilidad del sistema, realizando las correcciones necesarias. Testeo El control considera los ítems en orden natural? Perfomance Las reglas son correctas y consistentes? Las decisiones del SE son apropiadas? Los casos de prueba cubren adecuadamente el dominio, consideran situaciones difíciles? Casos de prueba Posibles problemas: Pérdida de conceptos y/o relaciones. Nivel de detalle insuficiente. Estructura de control. Utilidad Es significativa la ayuda del sistema? Las conclusiones están ordenadas y tienen buen nivel de detalle? Es suficientemente rápido el sistema? Es satisfactoria la interface? Revisar fases

Construcción de un Sistema Experto La complejidad inherente de la tarea no permite el establecimiento de pasos o fases bien definidas que deben seguir los diseñadores durante el desarrollo. Desarrollo incremental Realimentación permanente Se avanza desde tareas simples a otras más complejas. De su análisis se obtienen pautas para reenfocar el diseño El sistema apoya el esfuerzo del desarrollo

Construcción de un SE: Modelo en Espiral ES UN MODELO PROGRESIVO O INCREMENTAL. CADA CIRCUITO DE LA ESPIRAL AGREGA ALGUNA CAPACIDAD FUNCIONAL AL SISTEMA.

Medidas de calidad de software para SE SATISFACCIÓN DE NECESIDADES Y REQUERIMIENTOS. RESPUESTA CORRECTA PARA ENTRADA CORRECTA. RESPUESTA COMPLETA PARA ENTRADA CORRECTA. RESPUESTA REPETITIVA PARA ENTRADA CORRECTA. CONFIABLE (ERRORES Y FALLAS). AMIGABLE CON EL USUARIO. TRANSPORTABLE. DEGRADACIÓN SUAVE DE SUS LÍMITES DE CONOCIMIENTO. INTERACCIÓN CON OTROS PAQUETES DE SOFTWARE. EXPLICACIONES. MEJORABLE. REDITUABLE