Sistemas Expertos Introducción Arquitectura - Motor de Inferencias

Slides:



Advertisements
Presentaciones similares
Inteligencia artificial y sus aplicaciones
Advertisements

INTELIGENCIA ARTIFICIAL
Metodologías ágiles.
CARACTERISTICAS PRINCIPALES DE LOS SISTEMAS EXPERTOS
ANÁLISIS DE REQUERIMIENTOS
COMPETENCIAS Y METODOLOGÍA
Sistemas Basados En Conocimiento (Sistemas Expertos)
METODOLOGÍAS ÁGILES “PROCESO UNIFICADO ÁGIL (AUP)
Iván ventura presenta.
ADMINISTRACIÓN DEL CAMBIO.
Conocimiento Base de conocimientos:
Universidad Simón Bolívar Sistema de Información I Profesora: Marianella Villegas Integrantes: Delgado, José Angel Oropeza, Ayanim Candelo, Ronny Maldonado,
Evaluación de Productos
INTEGRACIÓN OBJETOS - REGLAS EL CASO DEL ASCENSOR
Inteligencia artificial
Sistemas Evolutivos Introduccion.
UNIDAD I Conceptos Básicos.
SEMANA Introducción.
Sistemas Expertos Introducción Arquitectura - Motor de Inferencias
Introducción a Sistemas Expertos
Tema 6 Razonamiento aproximado
Sistemas Expertos.
SISTEMAS EXPERTOS INNOVADORES
Ciclo de Vida del Software Paradigmas de Desarrollo
Ida Leticia Berenice Alanís Verdugo Beatriz Elena Olivares Garza
INTELIGENCIA ARTIFICIAL
5.3 APROXIMACIONES AL DISEÑO
Planificación.
SISTEMA DE EXPERTO SISTEMA DE EXPERTO.
Plan de Sistemas de Información (PSI)
Autor : Ing. Eli Casadiego
Una introducción a la computación evolutiva
Sistemas Expertos Introducción Arquitectura - Motor de Inferencias Introducción a la Inteligencia Artificial Licenciatura en Ciencias de la Computación.
EL APORTE DE LA INGENIERIA DE SOFTWARE A LAS ORGANIZACIONES
Tema 1: Introducción a la Ingeniería de Software
Tecnologías Industriales. Justificación y objetivo (a) Este grado tiene una clara singularidad que lo diferencia del resto de títulos de grado de Ingeniería.
INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL Y LOS SISTEMAS EXPERTOS
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Facultad de Ingeniería
SISTEMAS EXPERTOS (SE) Coronel Jaramillo Ricardo
Diseño de Sistemas Expertos
COMPLETA LOS ESPACIOS CON LA PALABRA ADECUADA 1.LOS _______________________ SE DEFINEN COMO LA _________________LÓGICA DE _________PARA SOLUCIONAR UN.
Introducción a los Sistemas Inteligentes
Fundamentos de Sistemas Expertos
CALIDAD Y VALIDACIÓN DE SISTEMAS EXPERTOS
Joscelyn Vega Chaparro Carlos Gonzalez Gatica.  Definición 1:  Es una aplicación informática capaz de solucionar un conjunto de problemas que exigen.
Sistemas Basados en Reglas
SISTEMA BASADO EN CONOCIMIENTO
Desarrollo de sistemas expertos basados en reglas
Introducción al proceso de verificación y validación.
INGENIERIA DEL CONOCIMIENTO Toribio Sarmiento Miguel Sesarego Cruz Rosmery.
Son sistemas de computación que emulan la habilidad de tomar decisiones de un especialista humano en un dominio restringido. Son programas que tienen.
Modelo Prescriptivos de proceso
M.I.A Daniel Alejandro García López. Conocimiento publico: Definiciones, hechos y teorías. Conocimiento privado: reglas de oro (heurística).
Ingeniería del Software I
Enseñar con Aprendizaje Basado en Problemas
Ramas de I.A. ROBOTICA SISTEMAS DE VISION SISTEMAS EXPERTOS
Preocupaciones del Analista Programador & Usuarios
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.
República Bolivariana de Venezuela Universidad Nacional Experimental Politécnica de la Fuerza Armada (UNEFA) Carrera: Ingeniería de Sistemas Cátedra: Análisis.
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.
INGENIERIA EN SISTEMAS COMPUTASIONALES. SISTEMAS EXPERTOS Es una aplicación informática capaz de solucionar un conjunto de problemas que exigen un gran.
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
Fundamentos de Computación
Las fases del ciclo de la vida de desarrollo de sistemas
NZ/EA/abril Introducción Julio NZ/EA/abril ¿ Que es la IS ? Disciplina que trata los aspectos concernientes al desarrollo de sistemas.
Desarrollo de Sistemas Expertos
Planificación de Sistemas de Información
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 Introducción Arquitectura - Motor de Inferencias Ingeniería Electrónica Ingeniería del Conocimiento

Inicio de los Sistemas Expertos Se buscaban soluciones generales 70´s Los sistemas son más eficientes en dominios acotados La calidad y cantidad de conocimiento son esenciales para una buena performance Es importante independizar el conocimiento del dominio, del mecanismo de inferencia.

Sistemas basados en conocimiento (SBC-KBS) Definiciones. Sistemas que resuelven problemas aplicando una representación simbólica de la experiencia humana. Jackson. Sistemas que representan el conocimiento sobre el dominio en forma explícita y separada del resto del sistema. Waterman.

Sistemas basados en conocimiento (SBC-KBS) Definiciones. Sistemas de software capaz de soportar la representación explícita del conocimiento de un dominio específico y de explotarlo a través de mecanismos apropiados de razonamiento para proporcionar un comportamiento de alto nivel en la resolución de problemas. Guida y Taso

Sistemas Expertos: Definición. Es un sistema de cómputo capaz de simular la conducta inteligente de un experto humano en un dominio específico y especializado, con el objeto de resolver problemas. Hardware + software Sistema de computación Simulación Conducta inteligente Experto Dominio limitado Fuente de pericia humana en el dominio Específico y especializado

Experiencia humana vs. SE.  Los humanos son aún imprescindibles.

SE/SBC: Tareas Tareas abordadas Síntesis: Clasificación, diagnóstico Análisis: Planificación, diseño o modelado Las áreas de aplicación son muy variadas !!! Los SBC abordan problemas complejos en dominios específicos en los que el peso de las heurísticas para acotar el espacio de búsqueda es importante.

Primeros Sistemas Expertos Stanford (Buchanan - Shortliffe 1976): Diagnóstico y tratamiento de enfermedades infecciosas (aprox. 500 reglas). Introduce factores de certeza. MYCIN Conocimiento inexacto Stanford-US Geological Survey (Duda-Gashning-Hart, 1979): Evaluación de yacimientos minerales y petrolíferos. (aprox 1600 reglas). Probabilidades condicionales y Teorema de Bayes. PROSPECTOR INTERNIST Pittsburg (Pople-Myers, 1977): Diagnóstico en Medicina interna. CADUCEUS: Analiza relaciones causales. CASNET Rutgens (Kulikowsky-Weiss-Safir, 1977): Oftalmología. Aplica un modelo causal para el diagnóstico de glaucoma. Razonamiento experto Modelos causales Carnegie Mellon (Mc Dermott): Configuración de ordenadores VAX (aprox 500 reglas). Descompone el diseño en distintos niveles de abstracción. R1 Reducción espacio de búsqueda Stanford (Stefik): Diseño de experimentos genéticos. Utiliza abstracción. MOLGEN

Habilidades que se esperan de un SE Manipular con fluidez descripciones simbólicas. Buena perfomance, comparable al menos a la de los especialistas. Interfaz amigable, adecuada a las necesidades de la aplicación. Habilidad para manipular conocimiento incompleto e impreciso. Capacidad de explicar sus decisiones a los usuarios. Posibilidad de justificar sus conclusiones.

Estructura básica de un SE. Base de Conocimientos Motor de Inferencias Interface Usuario Ingeniero del conocimiento Experto del dominio KAT

Estructura básica de un Sistema Experto Su estructura de datos queda definida en términos del esquema de representación elegido para incorporar el conocimiento del dominio de trabajo. Base de Conocimientos Separados entre sí Es la estructura de control de un SE, contiene el programa que gestiona la BC y otros mecanismos necesarios para administrar un sistema de naturaleza interactiva. Motor de Inferencias

Periodo industrial de la IA Década de los 80 Importante apoyo económico a los esfuerzos de I+D. Gran cantidad de SE en distintos dominios. Problemas con la metodología de desarrollo Limitaciones propias del tipo de sistema. CRISIS Comparable a la Crisis de los SI pero posterior

Ingeniería del Conocimiento (IC) Crisis SI Desarrollo de la Ingeniería del Software Crisis SBC Desarrollo de la Ingeniería del Conocimiento La Ingeniería del Software consiste en la aplicación de una aproximación sistemática, disciplinada y cuantificable al desarrollo, funcionamiento y mantenimiento del software. (IEEE, 1999) La IC tiene los mismos objetivos respecto de los SBC

SBC: Ventajas El conocimiento no se pierde. Reducción del espacio de búsqueda con heurísticas para que el problema sea tratable en un tiempo razonable. Manejo de conocimiento incierto e incompleto. Posibilidad de justificar el razonamiento seguido. Hacer el conocimiento disponible en ambientes hostiles o con carencia de especialistas. Aumento de fiabilidad, evitando que prevalezcan las últimas experiencias. Modificación sencilla de la BC por su característica modular.

SBC: Inconvenientes La adquisición del conocimiento es difícil y cara. La reutilización del conocimiento en contextos diferentes no es simple. Falta de creatividad y sentido común. Obstáculos para el aprendizaje y la adaptación. Quedan inmersos en el campo de los Sistemas Inteligentes. Se trabaja sobre metodología de desarrollo Se los combina con otras tecnologías

SE basados en reglas de producción Newell y Simon (1972): Al resolver problemas, las personas utilizan su memoria a largo plazo (permanente) que aplican a situaciones actuales contenidas en su memoria a corto plazo (transitoria). Esto puede generar modificaciones en la última. Sistemas de producción BC (Reglas) Memoria de trabajo (Hechos) Motor de Inferencias Mundo Exterior

SE basados en reglas de producción < CONDICION > < ACCION> Son “gránulos” de conocimiento. Reúnen información relativa a las condiciones de disparo y a los efectos resultantes del disparo. Son estructuras bidireccionales. SI ?X ES MAMIFERO Y ?X COME CARNE ENTONCES ?X ES CARNIVORO.

SE basados en reglas de producción Ventajas: Naturaleza modular: El conocimiento es fácil de encapsular y expandir. Explicaciones sencillas: El registro de reglas disparadas permite presentar la cadena de razonamiento asociada. Semejanza con el proceso cognitivo humano: modelo natural del razonamiento humano. Dificultades: Completitud y consistencia como responsabilidad del desarrollador. Se necesitan otras estructuras para lograr una visión global del conocimiento del dominio. Se las combina con otros formalismos de representación.

SE basados en reglas de producción MOTOR DE INFERENCIAS Dos formas de funcionamiento. Inductivo: A partir de un objetivo intenta verificar los hechos que los sostienen BACKWARD CHAINING Deductivo: A partir de los hechos disponibles infiere todas las conclusiones posibles FORWARD CHAINING

SE basados en reglas de producción Encadenamiento hacia atrás - Backward Chaining. BH := CONOCIMIENTO INICIAL (HECHOS). HASTA OBJETIVO O SIN REGLAS PARA DISPARAR. REPITA (1) ENCONTRAR K CONJUNTO DE REGLAS, CUYAS CONCLUSIONES PUEDEN UNIFICARSE CON LA HIPÓTESIS (CONJUNTO DE CONFLICTO). (2) ELEGIR R DE K SEGÚN ESTRATEGIA DE SOLUCIÓN DE CONFLICTOS (POSIBLE BACKTRACKING). (3) SI LA PREMISA DE R NO ESTÁ EN BH, TOMARLA COMO SUBOBJETIVO. Hechos iniciales Objetivo

SE basados en reglas de producción Backward Chaining: Ciclo base de un motor inductivo. DETECCIÓN: SI EL OBJETIVO ES CONOCIDO ÉXITO. SINO, TOMAR LAS REGLAS QUE LO CONCLUYEN (CC). ELECCIÓN: DECIDIR QUE REGLA APLICAR (RC) APLICACIÓN: REEMPLAZAR EL OBJETIVO POR LA CONJUNCIÓN DE LAS CONDICIONES DE LA PREMISA ELEGIDA.

SE basados en reglas de producción Ejemplo Backward Chaining: Primer paso BASE DE REGLAS R1: p  q  s R2: r  t R3: s  t  u R4: s  r  v OBJETIVO: v v  BH ? v  BH SIGUE BH: p q r

SE basados en reglas de producción Ejemplo Backward Chaining: Segundo paso BASE DE REGLAS R1: p  q  s R2: r  t R3: s  t  u R4: s  r  v MATCHING CON v CC = { R4 } s  BH? s  BH s SUBOBJETIVO SIGUE BH: p q r

SE basados en reglas de producción Ejemplo Backward Chaining: Tercer paso BASE DE REGLAS R1: p  q  s R2: r  t R3: s  t  u R4: s  r  v MATCHING CON s CC = { R1 } p  BH? SI. q  BH? SI. DISPARA R1. BH  s BH: p q r

SE basados en reglas de producción Ejemplo Backward Chaining: 4º paso BASE DE REGLAS R1: p  q  s R2: r  t R3: s  t  u R4: s  r  v CC = { R4 } r  BH? SI. DISPARA R4. BH  v BH: p q r s

SE basados en reglas de producción Ejemplo Backward Chaining: 5º paso BASE DE REGLAS R1: p  q  s R2: r  t R3: s  t  u R4: s  r  v OBJETIVO OK. FIN BH: p q r s v

SE basados en reglas de producción Encadenamiento hacia adelante - Forward Chaining. BH := CONOCIMIENTO INICIAL (HECHOS). HASTA OBJETIVO O SIN REGLAS PARA DISPARAR. REPITA: (1) ENCONTRAR K CONJUNTO DE REGLAS CUYAS PREMISAS CUMPLEN CON BH (CONJUNTO DE CONFLICTO-CC). (2) ELEGIR R DE K SEGÚN ESTRATEGIA DE SOLUCIÓN DE CONFLICTOS (RC). (3) DISPARAR R Y ACTUALIZAR BH. (RECORDAR R). Hechos iniciales Objetivo

SE basados en reglas de producción Forward Chaining: Ciclo base de un motor deductivo. DETECCIÓN: DETERMINAR EL CONJUNTO DE REGLAS APLICABLES ELECCIÓN: DECIDIR QUE REGLA APLICAR (RC) APLICACIÓN DISPARAR LA REGLA ELEGIDA Y ACTUALIZAR BH.

SE basados en reglas de producción Ejemplo Forward Chaining: Primer paso BASE DE REGLAS R1: p  q  s R2: r  t R3: s  t  u R4: s  r  v CC = { R1, R2 } R1  RC DISPARA R1 BH  s R1 APLICADA BH: p q r

SE basados en reglas de producción Ejemplo Forward Chaining: 2º paso BASE DE REGLAS R1: p  q  s R2: r  t R3: s  t  u R4: s  r  v CC = { R2, R4 } R2  RC DISPARA R2 BH  t R2 APLICADA BH: p q r s

SE basados en reglas de producción Ejemplo Forward Chaining: 3er paso BASE DE REGLAS R1: (p  q  s) R2: (r  t) R3: s  t  u R4: s  r  v CC = { R3, R4 } R3  RC DISPARA R3 BH  u R3 APLICADA BH: p q r s t

SE basados en reglas de producción Ejemplo Forward Chaining: 4º paso BASE DE REGLAS (R1: p  q  s) (R2: r  t) (R3: s  t  u) R4: s  r  v CC = {R4 } R4  RC DISPARA R4 BH  v R4 APLICADA BH: p q r s t u

SE basados en reglas de producción Ejemplo Forward Chaining: 5º paso BASE DE REGLAS (R1: p  q  s) (R2: r  t) (R3: s  t  u) (R4: s  r  v) CC = { } FIN BH: p q r s t u v

Sistemas expertos: Metaconocimiento Es el conocimiento estratégico vinculado a la utilización del conocimiento del dominio del Sistema Experto. Es conocimiento que predica sobre el conocimiento involucrado en el sistema. Métodos de implementación: Activación o no de grupos de reglas específicas. Ordenación de las reglas dentro de los grupos. Meta-reglas Definición de la búsqueda o no de conceptos asociados. PC-PLUS  FINDOUT - NOFINDOUT Funciones Orden de las reglas Posibilidad de asignarles “pesos” numéricos. PC-PLUS  UTILITY. KAPPA-PC  PRIORITY

Sistemas expertos: Metaconocimiento Enriquece y aporta a la perfomance de un Sistema Experto y por sus características incluye: Elementos en el Motor de Inferencias: Demonios. Elementos en la Base de Conocimientos: Metareglas, PRIORITY, etc. Ejemplos de Metareglas en SEXP-1 IF Litología_Principal = Arenisca THEN Tratar sólo el grupo de reglas asociadas. IF Litología_Principal = Roca_Ignea THEN NoAsk (Lista de valores)

Motor de Inferencias: Estructuras de control Funcionamiento sistemático Tipo de búsqueda implementada Ruptura Son procedimientos especiales Demonios Elementos de metaconocimiento Se invocan a partir de cierto conocimiento deducido durante la ejecución de la aplicación.

Estructuras de control: Demonios El demonio es una estructura de control que vigila constantemente el comportamiento del SE y se activa cuando encuentra determinadas condiciones en la BC. Disparador BC Procedimiento Difieren de los procedimientos tradicionales, en que estos últimos responden a un llamado específico que los identifica y pone en acción. Personal Consultant-xx Forward Chaining es un demonio, manejado mediante la propiedad ANTECEDENT de las reglas. Kappa-PC Monitores: Demonios que se activan a partir de cómo maneja el sistema los objetos con los que se los asocia.

SE: Herramientas Una herramienta para la construcción de sistemas expertos (expert system building tools-shell) es un software para el desarrollo de sistemas expertos,: un motor de inferencias, forma/s de representar el conocimiento (BC vacía) y una interfaz para el usuario final, permite construir sistemas expertos agregando el conocimiento específico sobre el dominio particular que se quiere resolver.

SE: Herramientas KAPPA-PC (C - Intellicorp, software liberado) CLIPS (C – NASA, software libre) JESS (Java - Lic. académica) ----------- M1 Personal Consultant-Easy / PC-Pluss INSIGHT 2 +. VP-Expert permiten construir sistemas expertos agregando el conocimiento específico sobre el dominio particular que se quiere resolver.

Herramientas: Kappa-PC Es un shell, cáscara o Sistema Experto vacío Formalismos de representación Reglas y Objetos El funcionamiento sistemático está definido, pueden personalizarse características (Forward-Backward) Funcionamiento del Motor de Inferencias Posee herramientas de trace y debug.

¿ Qué es Jess ? JESS (Java Expert System Shell). http://herzberg.ca.sandia.gov/jess/ (ejfried@ca.sandia.gov) Diseñado para integrar fácilmente Clips y Java. Originalmente (1995) era un clon de Clips, programado en Java. Hoy es mucho más. (versión actual: 7.1) Objetivo: Aplicaciones Java + razonamiento de un sistema experto (reglas+motor de inferencias). Integración Ontología + inferencia

Características Utiliza el algoritmo de Rete para procesar las reglas. Puede obtener mayor rapidez que CLIPS. Incluye encadenamiento hacia atrás (5.0) Permite manipulación directa de objetos Java (objetos definidos en Protege) Incluye lógica difusa en la 5.0 (FuzzyJess): http://ai.iit.nrc.ca/IR_public/fuzzyJToolKit.html