La Componente Humana
Un SE es el resultado de la colaboración de uno o varios expertos humanos especialistas que suministran el conocimiento básico en el tema de interés, y los ingenieros del conocimiento trasladan este conocimiento a un lenguaje, que él SE pueda entender. Esta etapa requiere una enorme dedicación y un gran esfuerzo debido a los diferentes lenguajes que hablan las distintas partes y a las diferentes experiencias que tienen.
La Base de Conocimiento
Son un conjunto de relaciones bien definidas y explicadas por los especialistas a los ingenieros del conocimiento. Esta forma estructurada de pensar requiere que los expertos humanos repiensen, reorganicen, y reestructuren la base de conocimiento
El conocimiento se almacena en la base de conocimiento y los datos se almacenan en la memoria de trabajo. Todos los procedimientos de los diferentes sistemas y subsistemas que son de carácter transitorio se almacenan también en la memoria de trabajo.
Subsistema de Adquisición de Conocimiento
El subsistema de adquisición de conocimiento controla el flujo del nuevo conocimiento que fluye del experto humano a la base de datos. El sistema determina que nuevo conocimiento se necesita, o si el conocimiento recibido es en realidad nuevo, es decir, si debe incluirse en la base de datos y, en caso necesario, incorpora estos conocimientos a la misma.
Control de la Coherencia
Este subsistema controla la consistencia de la base de datos y evita que unidades de conocimiento inconsistentes entren en la misma. En situaciones complejas incluso un experto humano puede formular afirmaciones inconsistentes. Por ello, sin un subsistema de control de la coherencia, unidades de conocimiento contradictorio pueden formar parte de la base de conocimiento, dando lugar a un comportamiento insatisfactorio del sistema.
Motor de Inferencia
El motor de inferencia es el corazón de todo sistema experto. El cometido principal de esta componente es el de sacar conclusiones aplicando el conocimiento a los datos.
Las conclusiones del motor de inferencia pueden estar basadas en conocimiento determinista o conocimiento probabilístico. Como puede esperarse, el tratamiento de situaciones de incertidumbre (probabilísticas) puede ser considerablemente más difícil que el tratamiento de situaciones ciertas (deterministas).
Esta tarea es tan compleja que da lugar a que ´esta sea probablemente la componente más débil de casi todos los SE existentes.
El Subsistema de Adquisición de Conocimiento
Si el conocimiento inicial es muy limitado y no se pueden sacar conclusiones, el motor de inferencia utiliza el subsistema de adquisición de conocimiento para obtener el conocimiento necesario y continuar con el proceso de inferencia hasta que se hayan sacado conclusiones. En algunos casos, el usuario puede suministrar la información requerida para este y otros objetivos.
De ello resulta la necesidad de una interfaz de usuario y de una comprobación de la consistencia de la información suministrada por el usuario antes de introducirla en la memoria de trabajo.
Interface de Usuario
La interface de usuario es el enlace entre el sistema experto y el usuario, esta debe incorporar mecanismos eficientes para mostrar y obtener información de forma fácil y agradable.
Cuando el motor de inferencia no puede concluir debido, a la ausencia de información, la interfaz de usuario es un vehículo para obtener la información necesaria del usuario.
Otra razón de la importancia de la interface de usuario es que los usuarios evalúan comúnmente los sistemas expertos y otros sistemas por la calidad de dicha interface más que por la del sistema experto mismo.
El Subsistema de Ejecución de Órdenes
Permite al sistema experto iniciar acciones. Estas acciones se basan en las conclusiones sacadas por el motor de inferencia. Como ejemplos, un sistema experto diseñado para analizar el tráfico ferroviario puede decidir retrasar o parar ciertos trenes para optimizar el tráfico global, o un sistema para controlar una central nuclear puede abrir o cerrar ciertas válvulas, mover barras, etc. La explicación de las razones por las que se inician estas acciones pueden darse al usuario mediante el subsistema de explicación.
El Subsistema de Explicación
El usuario puede pedir una explicación de las conclusiones sacadas o de las acciones iniciadas por el sistema experto. Por ello, es necesario un subsistema que explique el proceso seguido por el motor de inferencia o por el subsistema de ejecución. Ya que en muchos casos es necesaria la explicación de las conclusiones debido a los riesgos asociados con las acciones a ejecutar.
El Subsistema de Aprendizaje
Una de las principales características de un sistema experto es su capacidad de aprender. Diferenciaremos entre aprendizaje estructural y aprendizaje paramétrico. Por aprendizaje estructural nos referimos a algunos aspectos relacionados con la estructura del conocimiento (reglas, distribuciones de probabilidad, etc.). Por ello, el descubrimiento de nuevos síntomas relevantes para una enfermedad o la inclusión de una nueva regla en la base de conocimiento son ejemplos de aprendizaje estructural. Por aprendizaje paramétrico nos referimos a estimar los parámetros necesarios para construir la base de conocimiento.