Sistemas Expertos

 

Concepto: "Son programas de computadora diseñados para resolver problemas que normalmente son solucionados por expertos humanos en una rama del conocimiento especifica, y mediante esquemas propios del cerebro humano tales como memorización, razonamiento y aprendizaje automático para apoyar a un usuario en la toma de decisiones".

 

Sin embargo es de hacer notar la dificultad para entender este concepto sin antes tratar a grandes riesgos la forma como un experto humano puede trabajar, si habláramos de un experto en mecánica automotriz que trata de encontrar la falla en un coche, en principio realiza una revisión del vehículo, reúne información relativa al comportamiento del mismo, los sistemas de que consta, el patrón de comportamiento bajo ciertas fallas y si dicho patrón se encuentra presente realiza un diagnostico y repara el coche.

 

Si se analiza a un medico éste primero hace una revisión de ciertos parámetros de su paciente, si éstos no son los marcados por los estándares tales como temperatura, pulso el ritmo cardiaco, etc., puede inferir la presencia de una posible enfermedad que incluso deberá corroborar mediante análisis clínicos que tendrían que ser aplicados por otro experto.

 

Existen varias justificaciones para el diseño de un sistema experto:

  1. Hacer que el conocimiento sea más accesible para una mayor cantidad de usuarios.
  2. Que económicamente el conocimiento este al alcance de mas usuarios.
  3. Lograr la trascendencia del conocimiento a través del tiempo sin importar la posible desaparición del experto humano.

 

Tipos:

 

1. Basados en reglas. 2. Basados en la probabilidad.

 

Elementos de un sistema experto:

 

  1. Base del conocimiento.
  2. En ella se almacena el conocimiento proporcionado por el experto humano en una área de la ciencia o el conocimiento humano.

  3. Motor de inferencia.
  4. Se encarga de realizar las búsquedas en la base del conocimiento de acuerdo con los parámetros definidos en la heurística del sistema y que permitirá inferir la solución de un problema o llevar a cabo la toma de decisiones la cual podría ser diagnosticar una posible enfermedad a partir de la relación síntoma - enfermedad.

  5. Subsistema de explicación.
  6. Permite que el usuario no experto pueda entender los parámetros de funcionamiento del sistema sin necesidad de tener que ver mas allá de la aplicación del mismo, es decir, un paciente lo que necesita saber es solo los resultados de un sistema experto medico y el porque de las resoluciones sin tener que adentrarse en situaciones complejas que solo se encuentran dentro del ámbito del experto humano.

  7. Adquisición del conocimiento.

Es la interfaz que permite al experto humano mantener actualizada la base del conocimiento.

5. Subsistema de aprendizaje.

Este es un elemento incluido en forma reciente gracias al avance que se ha tenido en lo que se ha denominado aprendizaje automático y permite al sistema experto definir mediante experiencias realizar la adquisición automática del conocimiento.

 

 

PRINCIPALES APLICACIONES

 

Medicina: Internist, Mycin, Casnet, Caduceus.

Matematicas: Macsima, Excheck, Wumpus.

Quimica: Dendral, Congen, Crysalis.

Geologia: Prospector, Expert.

Ingenieria: Sacon, Spear.

Lenguaje natural: Hersay, Sir, Harpy, Lunar.

 

 

 

 

 

 

Ejemplos de Sistemas Expertos

 

 

 

 

 

 

 

 

 

SISTEMAS DE TIPO PROBABILISTICO

 

ELEMENTOS:

 

a) Base del Conocimiento: es el centro del sistema conformado por el espacio probabilistico. En el caso de un sistema para el diagnostico medico lo conformarían los síntomas y las enfermedades.

b) El motor de inferencias: se basa en las probabilidades condicionales y consiste en actualizar las probabilidades de que el paciente en estudio tenga una determinada enfermedad a medida que van conociéndose los síntomas que padece o se van incorporando nuevos datos, como los análisis clínicos, por ejemplo.

 

 

SISTEMAS BASADOS EN REGLAS

 

ELEMENTOS:

 

  1. Base del Conocimiento: en ella se almacenan los datos a partir de su concepción como objetos, relaciones y niveles de jerarquía marcados por la herencia.

 

b) El motor de inferencias: se basa en las probabilidades condicionales y consiste en actualizar las probabilidades de que el paciente en estudio tenga una determinada enfermedad a medida que van conociéndose los síntomas que padece o se van incorporando nuevos datos, como los análisis clínicos, por ejemplo.

En la tabla siguiente se hace una comparación de las características de cada uno de los dos enfoques descritos anteriormente.

ELEMENTOS

MODELO PROBABILISTICO

MODELO BASADO EN REGLAS

Base de conocimiento

Abstracto: Estructura probabilistica (sucesos dependientes).

Concreto: hechos

Abstracto: Reglas

Concreto: hechos

Motor de inferencia

Evaluación de probabilidades condicionales mediante el teorema de Bayes

Encadenamiento hacia atrás y hacia adelante

Subsistema de explicación

Basado en probabilidades condicionales

Basado en reglas activas

Adquisición del conocimiento

Espacio probabilistico Parámetros

Reglas factores de certeza

Subsistema de aprendizaje

Cambio en la estructura del espacio probabilistico

Cambio en los parámetros

Nuevas reglas

Cambio en los factores de certeza

Ventajas

Motor de inferencia rápido

Aprendizaje paramétrico fácil

Propagación de incertidumbre fácil

Explicación fácil

Solo implicaciones deseadas

Desventajas

Elevado numero de parámetros

Implicaciones superfluas

Motor de inferencia lento

Dificultad de propagación de incertidumbre

 

 

 

FASES PARA EL DESARROLLO DE UN SISTEMA EXPERTO

 

Se utiliza un enfoque similar al método del ciclo de vida para el desarrollo de software descrito en los paradigmas de la Ingeniería de Software y abarca las siguientes etapas:

 

  1. Planteamiento del problema.
  2. Integración del equipo de desarrollo el cual debe incluir al menos un experto humano en la disciplina relativa al problema y un ingeniero de software.
  3. Diseño del sistema mediante un lenguaje de alto nivel como Prolog, Lisp, C, o Delphi, herramientas de diseño de sistemas asistido por computadora acorde con el tipo de arquitectura decidida por el equipo de desarrollo.
  4. Es de hacer notar que se da una mayor importancia a la funcionalidad del sistema con respecto a las interfaces de usuario las cuales pueden carecer de una presentación estética.

    En esta etapa se incluyen las estructuras de almacenamiento para la base del conocimiento, el motor de inferencia, el subsistema de explicación y la interfaz de usuario.

     

  5. Creación y prueba de un prototipo.
  6. Depuración del prototipo. Esta etapa se da a partir de la interacción del usuario con el sistema y los parámetros de funcionamiento del mismo.
  7. Mantenimiento y actualización. Esta etapa podría realizarse con el apoyo del experto humano o mediante aprendizaje automático.
Hosted by www.Geocities.ws

1