You are on page 1of 12

Captulo 6

INTRODUCCIN A
LOS SISTEMAS
EXPERTOS

6.1 Introduccin
Las etapas tempranas en el desarrollo de los sistemas expertos fueron ayuda-
das por dos lecciones principales aprendidas del trabajo en LA. y DENDRAL
(programa desarrollado en la Universidad de Stanford a requerimiento de la
NASA para realizar anlisis qumico del suelo de Marte):

La importancia de codificar una fuente rica de conocimiento dentro del


programa. Se reconoci que las tcnicas de razonamiento de propsito
general estaban demasiado limitadas para resolver problemas reales.
Los sistemas que estaban diseados para temas bien enfocados trabaja-
ban mejor que los que abarcaban problemas amplios.

Estas dos lecciones condujeron naturalmente hacia una fuente cuando se


construye un sistema experto: un experto en el programa. Un experto es un
individuo que posee un conocimiento superior del problema. A travs de la
experiencia, el experto desarrolla las habilidades que le permiten resolver el
problema efectiva y eficientemente. El objetivo es "clonar" este experto en el
sistema experto.
Un sistema experto/sistema basado en el conocimiento (SE/SBC) es un sis-
tema software que incorpora conocimiento de experto sobre un dominio de
aplicacin dado, de manera que:
124 Captulo 6. Introduccin a los sistemas expertos

Es capaz de resolver problemas de relativa dificultad y apoyar la toma de


decisiones inteligentes en base a un proceso de razonamiento simblico.

Dicho razonamiento debe soportar incertidumbre y/o imprecisin y es


de carcter bsicamente heurstico.

Ofrece interaccin eficaz y cmoda (grficos).

Incorpora la posibilidad de aprendizaje.

Se contempla la posibilidad de ofrecer soluciones alternativas as como


de justificar la lnea de razonamiento seguida para alcanzarlas.

Hay dos rasgos principales de un experto que se intentan modelizar en el


sistema: el conocimiento del experto y el razonamiento. Para realizar esto, el
sistema debe tener dos mdulos principales:

Base de conocimientos.

Motor de inferencia.

La base de conocimientos contiene conocimiento altamente especializado


del rea del problema proporcionado por el experto. Incluye hechos, reglas,
conceptos y relaciones. El motor de inferencia es el procesador del conoci-
miento. El motor trabaja con informacin disponible de un problema dado
junto con el conocimiento almacenado en la base de conocimientos para obte-
ner conclusiones o recomendaciones.
A lo largo de la dcada de los 70 se desarrollaron diversos sistemas experi-
mentales en universidades y centros de investigacin, entre los que podemos
destacar:

DENDRAL: sistema experto para la interpretacin y propuesta de ensayos


para reconocer compuestos qumicos.

MYCIN: sistema experto para el diagnstico de enfermedades infecciosas.

INTERNIST: sistema experto para el diagnstico de enfermedades inter-


nas.

PROSPECTOR: sistema experto para la evaluacin de potenciales yaci-


mientos mineros.
6.2. Sistemas expertos versus expertos humanos 125

6.2 Sistemas expertos versus expertos humanos


Los expertos representan un recurso valioso para cualquier organizacin. Pue-
den ofrecer ideas creativas, resolver problemas difciles y realizar tareas ru-
tinarias eficientemente. Sus contribuciones pueden mejorar la productividad
de la organizacin, lo cual puede mejorar su posicin competitiva dentro del
mercado. Pero, cul es el valor de capturar este talento en un sistema exper-
to? Una forma de contestar a esta pregunta es comparando un sistema experto
con un experto humano.
Como cualquier mquina, un sistema experto contina trabajando mucho
tiempo despus de que el experto haya terminado su jornada laboral. Como
cualquier programa de computador, se puede duplicar y dispersarlo geogrfi-
camente. Tambin se puede enviar el sistema a entornos hostiles.
La experiencia humana es perecedera: a travs de la muerte, la jubilacin,
o el cambio de trabajo, una organizacin puede perder los talentos de un ex-
perto. Una vez capturada en un sistema experto, la organizacin retiene esta
experiencia, permitiendo soporte continuado. La organizacin tambin puede
utilizar el sistema en un papel de entrenamiento para pasar la experiencia a
los novatos.
Un sistema experto produce resultados ms consistentes que un experto
humano. La toma de decisiones humana est influenciada por muchos factores
que pueden influir en la ejecucin. Por ejemplo, los problemas personales o
las situaciones de stress. El sistema experto no es susceptible a estas distrac-
ciones.
La velocidad a la que un experto resuelve un problema tambin este in-
fluenciada por muchos factores. En contraste, un sistema experto ejecuta a
velocidad constante y, en muchos casos, puede realizar la tarea mucho ms
rpidamente que el experto.
Los expertos humanos tienden a ser caros mientras que los sistemas exper-
tos son relativamente econmicos.
De la comparacin mostrada en la Tabla 6.1 aparecen dos razones princi-
pales por las que se puede querer construir un sistema experto: reemplazar
un experto o asistirlo.

6.3 Tipos de sistemas expertos


A continuacin de detallan algunos de los tipos de sistemas expertos (en la
Figura 6.1 se muestra un porcentaje de utilizacin de estos tipos de S.E.):
126 Captulo 6. Introduccin a los sistemas expertos

Factor Experto humano Sistema experto


Disponibilidad de tiempo Da laborable Siempre
Geografa Local Cualquier lugar
Seguridad Irremplazable Reemplazable
Caducidad S No
Ejecucin Variable Constante
Velocidad Variable Constante
Coste Alto Abordable

Tabla 6.1: Comparacin entre un experto humano y un sistema experto

Control Gobiernan el comportamiento de un sistema dado. Por ejemplo, con-


trolando el tratamiento de un paciente en el hospital. Un sistema de
control experto obtiene datos del funcionamiento del sistema, interpre-
ta los datos para formar un conocimiento del estado del sistema o una
prediccin de su estado futuro y determina y ejecuta ajustes necesarios.
Los sistemas de control tambin deben realizar monitorizacin y tareas
de interpretacin para seguir el comportamiento del sistema a lo largo
del tiempo.
Diseo Los sistemas de diseo configuran objetos bajo un conjunto de restric-
ciones del problema. Por ejemplo, el diseo de un sistema informtico
bajo restricciones definidas por el usuario de memoria necesaria, veloci-
dad, etc. Estos sistemas realizan sus tareas siguiendo una serie de pasos,
cada uno con sus propias restricciones especficas.
Diagnstico Estos sistemas deducen fallos del sistema desde informacin ob-
servable. La mayora de los sistemas de diagnstico incorporan conoci-
miento de posibles condiciones de fallo. Por ejemplo, diagnosticando un
trastorno dado desde los sntomas de un paciente o localizando fallos en
un circuito electrnico desde los resultados de prueba. La mayora de los
sistemas de diagnstico incluyen una tarea de prescripcin que ofrece un
remedio al fallo detectado.
Instruccin Los sistemas de instruccin guan la educacin de un estudiante
en un tema dado. Tratan al estudiante como un sistema que debe ser
diagnosticado y reparado. Empiezan interactuando con el estudiante pa-
ra formar un modelo de los conocimientos del estudiante sobre el tema.
Entonces, comparan este modelo del estudiante con un modelo ideal pa-
ra descubrir cualquier debilidad en los conocimientos del estudiante. A
6.3. Tipos de sistemas expertos 127

continuacin, se corrige cualquier equivocacin.


Interpretacin Producen un descripcin de una situacin desde informacin
disponible. Por lo general, la informacin consiste en datos de sensores,
instrumentos, resultados de prueba, etc. Estos sistemas traducen los da-
tos en una forma simblica que describe la situacin. Frecuentemente
necesitan trabajar con ruido o con datos incompletos que requieren ra-
zonamiento inexacto o estadstico.
Monitorizacin Comparan informacin observable del comportamiento de un
sistema con estados del sistema que se consideran cruciales en su opera-
cin. Los sistemas de monitorizacin interpretarn seales desde senso-
res y compararn la informacin con estados cruciales conocidos. Cuan-
do se detecta un estado crucial, se ejecuta una secuencia establecida de
tareas.
Planificacin Los sistemas de planificacin disean un plan de acciones para
realizar una meta dada. Por ejemplo, planificar las diferentes tareas rea-
lizadas por un robot para cumplir una funcin de trabajo dada. Algunos
sistemas de planificacin deben tener la flexibilidad de cambiar la serie
de tareas planificadas cuando obtienen nueva informacin del problema.
Para realizar esto, necesitan la habilidad de retroceder y rechazar una
lnea actual de razonamiento a favor de explorar una mejor.
Prediccin Deducen consecuencias probables desde una situacin dada. Estos
sistemas intentan predecir eventos futuros usando informacin disponi-
ble y un modelo del problema. Los sistemas de prediccin deben ser
capaces de razonar sobre el tiempo o eventos ordenados. Los modelos
deben estar disponibles para deducir cmo algunas acciones dadas influ-
yen sobre eventos futuros. Por ejemplo, predecir el dao esperado a un
cultivo ante la invasin de una plaga de insectos.
Prescripcin Recomiendan soluciones a un fallo del sistema dado. Estos tipos
de sistemas normalmente incorporan primero una tarea de diagnstico
para determinar la naturaleza del fallo. Por ejemplo, un sistema experto
que recomienda una determinada terapia para los pacientes que sufren
una depresin.
Seleccin Identifican la mejor eleccin de una lista de posibilidades. Trabajan
desde especificaciones del problema definidas por el usuario e intentan
encontrar una solucin que proporcione mejor estas especificaciones.
128 Captulo 6. Introduccin a los sistemas expertos

Simulacin Modelan un proceso o sistema para permitir estudios operacio-


nales bajo diversas condiciones. Modelan las diversas componentes del
sistema y sus interacciones. Normalmente se les permite a los usuarios
hacer ajustes al modelo para tener en cuenta condiciones reales o hipo-
tticas.

Figura 6.1: Aplicaciones de sistemas expertos por tipo de problema expresado en %.

6.4 Arquitectura bsica de los SBC/SE


Se considera a alguien un experto en un problema cuando l o ella tiene conoci-
miento especializado sobre el problema. En el campo de los sistemas expertos
a este tipo de conocimiento se le llama conocimiento sobre el dominio. Se usa
la palabra dominio para enfatizar que el conocimiento pertenece a un proble-
ma especfico. En la Figura 6.2 se muestra grficamente la arquitectura de un
SBC/SE.

6.4.1 Base de conocimientos


Es la parte del sistema experto que contiene el conocimiento sobre el domi-
nio. Hay que obtener el conocimiento del experto y codificarlo en la base de
conocimientos. Una forma tpica de representar el conocimiento en un siste-
ma experto son las reglas. Una regla es una estructura ff/THEN que relaciona
6.4. Arquitectura bsica de los SBC/SE 129

lgicamente la informacin contenida en la parte del IF con otra informacin


contenida en la parte del THEN. Por ejemplo:

REGLA 1
IF El coche no arranca
THEN El problema puede estar en el sistema elctrico

REGLA 2
IF El problema puede estar en el sistema elctrico
AND El voltage de la batera est por debajo de 10 voltios
THEN El fallo es una batera defectuosa

6.4.2 Base de hechos (Memoria de Trabajo)


Contiene los hechos sobre un problema que se han descubierto durante una
consulta. Durante una consulta con el sistema experto, el usuario introduce
la informacin del problema actual en la base de hechos. El sistema empareja
esta informacin con el conocimiento disponible en la base de conocimientos
para deducir nuevos hechos.

6.4.3 Motor de inferencia


El sistema experto modela el proceso del razonamiento humano con un mdulo
conocido como el motor de inferencia.
El motor de inferencia trabaja con la informacin contenida en la base de
conocimientos y la base de hechos para deducir nuevos hechos. Confronta los
hechos particulares de la base de hechos con el conocimiento contenido en la
base de conocimientos para obtener conclusiones acerca del problema.

6.4.4 Subsistema de explicacin


Una caracterstica de los sistemas expertos es su habilidad para explicar su
razonamiento. Usando el mdulo del subsistema de explicacin, un sistema
experto puede proporcionar una explicacin al usuario de por qu est hacien-
do una pregunta y cmo ha llegado a una conclusin.
Este mdulo proporciona beneficios tanto al diseador del sistema como
al usuario. El diseador puede usarlo para detectar errores y el usuario se
beneficia de la transparencia del sistema.
130 Captulo 6. Introduccin a los sistemas expertos

Figura 6.2: Estructura bsica de un Sistema Experto.

6.4.5 Interfaz de usuario


La interaccin entre un sistema experto y un usuario se realiza en lenguaje
natural. Tambin es altamente interactiva y sigue el patrn de la conversacin
entre seres humanos. Para conducir este proceso de manera aceptable para el
usuario es especialmente importante el diseo del interfaz de usuario.
Un requerimiento bsico del interfaz es la habilidad de hacer preguntas.
Para obtener informacin fiable del usuario hay que poner especial cuidado
en el diseo de las cuestiones. Esto puede requerir disear el interfaz usando
mens o grficos.

6.5 Fases en el desarrollo de un sistema experto


A diferencia de la programacin convencional, desarrollar un sistema experto
es un proceso altamente iterativo. El diseador construye parcialmente el sis-
tema, lo prueba y modifica el conocimiento del sistema. Las fases a seguir son
(ver Figura 8.1):

1. Investigacin. Durante esta fase, se realizan estudios para determinar la


facilidad y justificacin del problema candidato. Se examina el problema
para identificar las metas finales del proyecto. Este estudio establece el
rango del proyecto as como los recursos necesarios (incluyendo perso-
nal). Se identifican las fuentes de conocimiento: expertos, informes, etc.
Despus de esta fase inicial, quedan establecidos los requerimientos del
proyecto.
2. Adquisicin del conocimiento. El objetivo de esta fase es adquirir el
6.5. Fases en el desarrollo de un sistema experto 131

conocimiento necesario sobre el problema para guiar el esfuerzo del de-


sarrollo. Durante este periodo, se producen conversaciones con los ex-
pertos. El objetivo es descubrir los conceptos clave y los mtodos de
resolucin de problemas empleados por los expertos. Durante las prime-
ras sesiones, el material recopilado es de carcter general. Las ltimas
sesiones se aprovechan de la informacin obtenida con las pruebas efec-
tuadas con el sistema para buscar informacin ms especfica.

3. Diseo. Se define la estructura global y el conocimiento del sistema.


Tambin se definen mtodos para procesar el conocimiento. Durante
esta fase se construye un prototipo inicial del sistema. El propsito del
prototipo es proporcionar un vehculo para obtener una comprensin
mejor del problema. El prototipo tambin sirve para futuras entrevistas
con el experto. El diseo del sistema es un proceso iterativo en el cual
los resultados obtenidos probando el sistema se emplean para refinar el
conocimiento del sistema.

4. Prueba. No es una tarea separada sino ms bien un proceso continuo a


lo largo del proyecto. A travs de cada entrevista con el experto en el
dominio, se aade nueva informacin al sistema. El principal objetivo de
las pruebas es validar la estructura global del sistema y su conocimiento.
A travs de las pruebas, el diseador trabaja con el experto para guiar el
conocimiento del sistema y con el usuario final para desarrollar el interf az
de usuario.

5. Documentacin. Esta fase se ocupa de la necesidad de reunir toda la


informacin del proyecto en un documento que contenga los requeri-
mientos tanto del usuario como del diseador del sistema. El documento
debe explicar cmo operar con el sistema y debera proporcionar un tuto-
rial que muestre paso a paso las principales caractersticas operacionales
del sistema. Adems, la documentacin debe contener un diccionario de
conocimiento que proporcione una presentacin bien organizada del co-
nocimiento del sistema y de los procedimientos para resolver problemas.

6. Mantenimiento. Despus de que el sistema se incorpora en el entorno de


trabajo, necesitar ser mantenido peridicamente. El conocimiento del
sistema puede necesitar ser refinado o actualizado. Puede tambin ocu-
rrir que se requiera una reformulacin de los requerimientos del sistema.
132 Captulo 6. Introduccin a los sistemas expertos

Figura 6.3: Fases en el desarrollo de un sistema experto.

6.6 Ventajas e inconvenientes de un sistema experto


6.6.1 Venteras

La separacin entre el conocimiento sobre el dominio y el conocimiento


sobre cmo resolver el problema permite:

- Reutilizacin del motor de inferencia para solucionar distintos pro-


blemas en el dominio. Permite crear Sistemas de Propsito General
(GPS) y Sistemas Vacos (Skeletons).
- Facilita el proceso de aprendizaje y por lo tanto de programacin
6.6. Ventabas e inconvenientes de un sistema experto 133

automtica, pues es posible definir procesos de obtencin de unida-


des de conocimiento en funcin de una valoracin de los resultados
producidos por el sistema y los observados realmente.
- Facilidad de refinamiento en funcin de la experiencia cuando se
maneja conocimiento incompleto.
- Atender requisitos especficos del dominio apartando los problemas
referentes a otros conocimientos.
Apoyo/Sustitucin de expertos humanos: permanencia, transportabili-
dad, coherencia, coste, estabilidad.

6.6.2 Inconvenientes
Resolucin y bsqueda menos eficientes al separar el conocimiento sobre
el dominio y sobre el proceso.
No capturan, todava, algunas buenas cualidades de los expertos huma-
nos: creatividad, sentido comn, adaptabilidad, miras amplias, entradas
sensoriales.
Comprobacin costosa de inconsistencias (mantenimiento de integridad).

You might also like