SE y su diseño

38
SISTEMAS EXPERTOS

description

Diseño de Sistemas expertos, Una introducción al diseño

Transcript of SE y su diseño

Page 1: SE y su diseño

SISTEMAS

EXPERTOS

Page 2: SE y su diseño

¿Qué es un Sistema Experto? Es un sistema de cómputo que emula la

habilidad de tomar decisiones de un especialista humano.

Hace uso del conocimiento especializado para resolver problemas.

El conocimiento de los sistemas expertos puede obtenerse por experiencia o consulta de los conocimientos que suelen estar disponibles en libros, revistas y con personas capacitadas.

Page 3: SE y su diseño

Base de conocimiento

Mecanismo de inferencia

Usuario

Hechos

Aptitudes de experto

Sistema experto basado en conocimiento

El usuario aporta los hechos u información al sistema experto y recibe consejo o experiencia como respuesta. En su interior, el sistema experto incluye dos componentes principales. La base de conocimiento contiene el conocimiento que le permite al mecanismo de inferencia sacar conclusiones; éstas son las respuestas del sistema experto a la consulta especializada del usuario.

Page 4: SE y su diseño

Dominio de

conocimiento

Dominio del problema

Relación entre el problema y el dominio del

conocimientoLa porción exterior al dominio del conocimiento simboliza un área en que no existe conocimiento acerca de todos los problemas.En su dominio de conocimiento, el sistema experto razona o hace inferencias de la misma forma en que un especialista humano inferiría la solución de un problema (dados algunos hechos se infiere un conclusión)

Page 5: SE y su diseño

VENTAJAS DE LOS SISTEMAS EXPERTOS

Mayor disponibilidad: La experiencia esta disponible para cualquier hardware de computo adecuado. Costo reducido: El costo de poner la experiencia a disposición del usuario se reduce enormemente. Peligro reducido: los sistemas expertos pueden usarse que podrían ser peligrosos para un ser humano.

Page 6: SE y su diseño

Permanencia: La experiencia es permanente, a diferencia de los especialistas humanos, que pueden retirarse, renuncia o morir, el conocimiento del sistema puede durar indefinidamente.

Experiencia múltiple: El conocimiento de varios especialistas puede estar disponible para trabajar simultáneamente y continuamente a cualquier problema, a cualquier hora del día y de la noche.

Page 7: SE y su diseño

Mayor confiabilidad: Incrementa la confianza en que un especialista a tomado la decisión correcta o dar un voto de calidad en caso de desacuerdo.

Explicación: Puede explicar claramente y detalladamente el razonamiento que conduce a la conclusión, lo que aumenta la confianza.

Respuesta rápida: Dependiendo del software y hardware usado, un sistema experto puede responder mas rápido y estar mas dispuesta que un especialista.

Page 8: SE y su diseño

Respuesta sólidas, completas y sin emociones, en todo momento.

Tutoría inteligente: El sistema experto puede actuar como un tutor inteligente dejando que el estudiante ejecute programas de ejemplo y explicando el razonamiento.

Bases de datos inteligentes: Los sistemas expertos pueden usarse para tener acceso a una base de datos en forma inteligente.

Page 9: SE y su diseño

Conceptos Generales de los

Sistemas Expertos

Sistemas Expertos

Page 10: SE y su diseño

Conceptos Generales

Un método común de representar el conocimiento es en forma de reglas tipo SI … ENTONCES.

Una regla de inferencia es un esquema para construir inferencias válidas. Estos esquemas establecen relaciones sintácticas entre un conjunto de fórmulas llamados premisas y una aserción llamada conclusión.

Sistemas Expertos

Page 11: SE y su diseño

EjemploSI la luz es roja

ENTONCES deténgase.

Muchos Sistemas Expertos significativos, expresan en reglas el conocimiento de los expertos.

Conceptos Generales

Sistemas Expertos

Page 12: SE y su diseño

Ingeniero del Conocimiento. Especialista en el área del conocimiento necesario para el Sistema Experto.

Ingeniería del Conocimiento. Se le denomina así al proceso de construcción del Sistema Experto.

Conceptos Generales

Sistemas Expertos

Page 13: SE y su diseño

Sistema Basado en el Conocimiento. Es la expresión que mejor explica la aplicación de la tecnología basada en el conocimiento.

Facilidad de Explicación.

Razonamiento Hipotético.

Inducción de Reglas

Conceptos Generales

Sistemas Expertos

Page 14: SE y su diseño

Limites de Ignorancia. Alcance del conocimiento de un especialista.

Conocimiento. Conocimiento

Casual. Conocimiento

Superficial. Conocimiento

Profundo. Conocimiento

Heurístico

Conceptos Generales

Sistemas Expertos

Page 15: SE y su diseño

Características de un Sistema Experto

Los sistemas expertos suelen diseñarse para que tengan las siguientes características generales:

Alto desempeño: El sistema debe tener la capacidad de responder a un nivel de competencia igual o superior al de un especialista en el campo.

Tiempo de respuesta adecuado: el sistema debe actuar en un tiempo razonable, comparable o mejor al tiempo requerido por un especialista, para alcanzar una decisión.

Confiabilidad: El sistema experto debe ser confiable y no propenso a “caídas”.

Page 16: SE y su diseño

Comprensible: El sistema debe ser capaz de explicar los pasos de su razonamiento mientras se ejecutan, de tal modo que sea comprensible. Este rasgo es muy importante por varias razones.

Revisión del razonamiento comprensible para los seres humanos.

Para confirmar que el conocimiento ha sido adquirido y esta siendo utilizado correctamente por el sistema.

Page 17: SE y su diseño

Para revisar los errores que pudieron generarse en las interacciones imprevistas por el sistema experto.

En un sistema experto el curso de la ejecución no es secuencial, de manera que no es posible simplemente leer su código línea tras línea y entender como opera. El sistema experto actúa como un programa en paralelo en que las reglas son procesadores de conocimiento independientes.

Page 18: SE y su diseño

Flexibilidad: Debido a la gran cantidad de conocimiento que puede tener un sistema experto, es importante contar con un mecanismo eficiente para añadir, modificar y eliminar conocimiento.

Dependiendo del sistema, un mecanismo de explicación puede ser simple o elaborado.

Uno simple, es un sistema basado en reglas, puede presentar una lista de todos los hechos que hicieron que la última regla se ejecutara.

Page 19: SE y su diseño

Los sistemas mas elaborados pueden hacer lo siguiente:

Enumerar todas las razones a favor y en contra de una hipótesis en particular. Una hipótesis se puede ver como un hecho cuya verdad esta en duda y debe probarse.

Enumerar todas las hipótesis que puedan explicar la evidencia observada.

Explicar todas las consecuencias de una hipótesis.

Page 20: SE y su diseño

Dar un pronóstico o predicción de lo que ocurrirá si la hipótesis es verdadera.

Justificar las preguntas que el programa hace al usuario para obtener más información.

Justificar el conocimiento del programa. El conocimiento justifica una hipótesis y este a su vez, se justifica con una garantía de que es correcto.

Page 21: SE y su diseño

La base del conocimiento en un sistema experto puede crecer poco a poco a medida que se agregan reglas, de modo que pueden revisarse continuamente la ejecución y corrección del sistema.

El crecimiento del conocimiento facilita la construcción rápida de prototipos, de modo que el ingeniero del conocimiento pueda mostrar pronto al especialista un prototipo de trabajo del sistema experto.

La construcción rápida de prototipos muestra rápidamente las lagunas, inconsistencias o errores en el conocimiento del especialista o del sistema, de manera que puedan corregirse inmediatamente.

Page 22: SE y su diseño

EL DESARROLLO DE LA TECNOLOGIA DE

SISTEMAS EXPERTOS

Page 23: SE y su diseño

Las raíces de los sistemas expertos abarcan muchas disciplinas , una de las raíces principales es el área del procesamiento de la información humana, llamada ciencia cognitiva.

Las cognición es el estudio de la manera en que los humanos procesan la información.

Page 24: SE y su diseño

SOLUCION HUMANA DE PROBLEMAS Y PRODUCCIONES

Page 25: SE y su diseño
Page 26: SE y su diseño

• Newell y Simón popularizaron el uso de las reglas para representar al conocimiento humano y mostraron como puede razonarse con ellas.

• Otro elemento para la solución humana de problemas es un procesador cognitivo, este trata de controlar las reglas que se activan con el estimulo apropiado, pero no lo hará cualquier regla.

• El modelo de Newell y Simón para la solución humana de problemas desde la perspectiva de la memoria a largo plazo(reglas), la memoria a corto plazo (memoria activa) y un procesador cognitivo(mecanismo de inferencia) es la base de los modernos sistemas expertos basados en reglas

Page 27: SE y su diseño

APLICACIONES Y DOMINIOS DE LOS

SISTEMAS EXPERTOS

Page 28: SE y su diseño

APLICACIONES DE LOS SISTEMAS EXPERTOS

CLASE:* Configuración* Diagnóstico* Instrucción* Interpretación* Supervisión* Planeación* Pronóstico* Remedio* Control

Page 29: SE y su diseño

EJEMPLOS DE ALGUNOS SISTEMAS EXPERTOS

QUÍMICA ELECTRÓNICA MÉDICOS INGENIERÍA GEOLOGÍACRYSALIS ACE VM REACTOR DIPMETER

DENDRAL IN-ATE AI/COAG DELTA LITHO

CLONER NDS ANNA STEAMER MUD

MOLGEN EURISKO BLUE BOX PROSPECTOR

SECS SOPHIE ATTENDING

Page 30: SE y su diseño

DOMINIOS APROPIADOS PARA LOS SISTEMAS

EXPERTOS* Puede solucionarse eficazmente el problema con

programación convencional?* Está bien delimitado el dominio?* Hay la necesidad y el deseo de tener un sistema

experto?* Hay al menos un especialista que esté dispuesto a

cooperar?* Puede el experto explicar el conocimiento en

forma comprensible al ingeniero del conocimiento?

* El conocimiento para resolver problemas es principalmente heurístico e incierto?

Page 31: SE y su diseño

Diseño de Sistemas Expertos

Page 32: SE y su diseño

Diseño de Sistemas Expertos (SE) El diseño de un sistema cualquiera consiste en la evaluación de

las alternativas y la especificación de una solución detallada. El diseño especifica como logrará el sistema los objetivos para los cuales se creará.

Para un sistema experto, el concepto anterior también es válido. Una vez se tiene el problema a resolver se debe analizar y evaluar las soluciones dentro del área de conocimiento respectivo. Aclarando que el diseño de un sistema experto variará en relación a lo sistemas tradicionales.

Page 33: SE y su diseño

Diseño de Sistemas Expertos (SE) En todo desarrollo de un sistema, juega un papel importante el equipo

de trabajo. Para el desarrollo de un sistema experto, se consideran las

siguientes clases de personas que interactúan en su creación:

1. El experto: La función del experto es la de poner sus conocimientos

especializados a disposición del Sistema Experto.

2. El ingeniero del conocimiento: Es el encargado de realizar las preguntas al

experto, estructura sus conocimientos y los implementa en la base de

conocimientos.

3. El usuario: Aporta sus deseos y sus ideas, determina especialmente el

escenario en el que debe aplicarse el Sistema Experto.

Page 34: SE y su diseño

Ingeniería de software y Sistemas Expertos

La ingeniería de software es aplicable al desarrollo de los sistemas expertos pero además se

necesitan otras técnicas, por la razón que estos sistemas están integrados tanto por paquetes

convencionales como por componentes exclusivos.

La creación equivale simplemente a desarrollar un paquete de programas; por consiguiente el

sistema queda sujeto a las mismas normas, métodos y técnicas de ingeniería que cualquier otro

grupo de programas. Parece trivial pero es necesario plantearlo porque los nuevos sistemas

expertos deberán incluir todas estas reglas, tales como, presentación cómoda al usuario, diseño

adecuado, etc.

Para desarrollar el software es necesario la búsqueda de los recursos adecuados para

implementarlo. Dichos recursos son mano de obra, maquinaria y tiempo.

Page 35: SE y su diseño

Ciclo de vida de un Sistema ExpertoEl ciclo de vida consiste de siete fases. Este ciclo no es fijo. Como los expertos

con frecuencia tienen problemas para explicar sus soluciones, los problemas tienen

que fraccionarse en subproblemas antes que las soluciones puedan quedar

definidas. Cada fase puede necesitar de varias interacciones antes de que un

sistema completo pueda ser desarrollado. Ahora describiremos estas fases.

lPlanteamiento del problema. La primera etapa en cualquier proyecto es

normalmente la definición del problema a resolver. Puesto que el objetivo principal

de un sistema experto es responder a preguntas y resolver problemas, esta etapa

es quizás la mas importante en el desarrollo de un sistema experto. Si el sistema

esta mal definido, se espera que el sistema suministre respuestas erróneas.

Page 36: SE y su diseño

Ciclo de vida de un Sistema Experto2. Encontrar expertos humanos que puedan resolver el problema. En algunos casos, sin

embargo, las bases de datos pueden jugar el papel del experto humano.

3. Diseño de un sistema experto. Esta etapa incluye el diseño de estructuras para almacenar el

conocimiento, el motor de inferencia, el subsistema de explicación, la interfase de usuario, etc.

4. Elección de la herramienta de desarrollo, concha, o lenguaje de programación.

Debe decidirse si realizar un sistema experto a medida, o utilizar una concha, una herramienta, o un

lenguaje de programación. Si existiera una concha satisfaciendo todos los requerimientos del diseño,

esta debería ser la elección, no solo por razones de tipo financiero sino también por razones de

fiabilidad. Las conchas y herramientas comerciales están sujetas a controles de calidad, a los que

otros programas no lo están.

Page 37: SE y su diseño

Ciclo de vida de un Sistema Experto5. Desarrollo y prueba de un prototipo. Si el prototipo no pasa las pruebas

requeridas, las etapas anteriores (con las modificaciones apropiadas) deben

ser repetidas hasta que se obtenga un prototipo satisfactorio.

6. Refinamiento y generalización. En esta etapa se corrigen los fallos y se

incluyen nuevas posibilidades no incorporadas en el diseño inicial.

7. Mantenimiento y puesta al día. En esta etapa el usuario plantea problemas

o defectos del prototipo, corrige errores, actualiza el producto con nuevos

avances, etc.

Todas estas etapas influyen en la calidad del sistema experto resultante, que

siempre debe ser evaluado en función de las aportaciones de los usuarios.

Page 38: SE y su diseño

Ciclo de vida de un Sistema Experto