Sistemas expertos

Los sistemas expertos resuelven problemas que normalmente son solucionados por expertos humanos.
Un sistema experto se compone de una base de conocimiento del dominio en cuestión, mecanismos de razonamiento para aplicar conocimiento a los problemas que se proponen, mecanismos para explicar a los usuarios el razonamiento utilizado a la hora de ofrecer una respuesta y mecanismos de aprendizaje y adquisición de nuevo conocimiento.
Para crear una base de conocimiento es necesario contar con al menos un experto humano del dominio en cuestión. Se puede adquirir su conocimiento a partir de entrevistas o mediante interfaces amigables para que lo introduzca. Pero también es muy importante una adecuada modelización de su conocimiento.
Los mecanismos de representación del conocimiento que se pueden encontrar son: 

Lógica.
Redes.
Marcos.
Reglas. 

No obstante, lo más utilizado es una adecuada combinación de marcos y reglas.


Arquitectura de Sistemas Expertos.





Base de Conocimientos (Knowledgebase):  

representa el conocimiento del experto y el problema en forma de hechos descriptivos y reglas de inferencia lógica. La base de conocimientos es algo más que una base de datos, ya que su mecanismo de búsqueda (query) es más que una simple comparación (text matching), de hecho (como se verá más delante), es una búsqueda donde un elemento puede "encadenar" a otro (chaining) utilizando comparaciones más sofisticadas (unification and pattern matching).


Máquina de Inferencias (Inference Machine): 

traduce reglas siguiendo sus propios algoritmos de búsqueda, control y resolución de conflictos. Dos métodos típicos de búsqueda (encadenamiento de reglas) son: 1) forward chaining y 2) backward chaining. De manera simplificada, el proceso inicia partiendo de los hechos del problema que se alimenten al sistema, e.g. un dato, lectura, señal, imágen, etc. Luego, la máquina intenta llegar a una conclusión válida buscando aquellas relgas que crea puedan cumplirse, i.e. mecanismo de encadenamiento.

Interfaz de Usuario (User Interface)

recibe y entrega información interactuando con el usuario, es decir, el usuario puede: 1) alimentar hechos, 2) proporcionar objetivos, 3) nuevas restricciones y reglas, 4) escribir programas que deban adicionarse al sistema, 5) solicitar resultados y reportes, y 6) cuestionar cómo se obtuvieron ciertas conclusiones. Dada la posible complejidad que puede existir entre el sistema y el usuario, se pueden tener distintos tipos de especialistas como usuarios, tales como: 1) el experto, 2) el ingeniero de conocimiento, 3) el programador, 4) el administrador del sistema, y 5) los usuarios finales. 

No hay comentarios:

Publicar un comentario