Вы находитесь на странице: 1из 10

Ingeniería de Sistemas y Computación. Facultad de Ingenierías. Universidad Tecnológica de Pereira.

Sistemas Expertos
Computación Blanda

Expert Systems
Soft Computing

Andrés Felipe Bravo Giraldo

Ingeniería de Sistemas y Computación, Universidad Tecnológica de Pereira, Pereira, Colombia


Correo-e: andresfelipe.bravo@utp.edu.co

Resumen— Los Sistemas Expertos son una rama de la Inteligencia Direct, Inverse, Hybrid, Input, Output, Knowledge Base, Artificial
Artificial cuyo propósito es simular el comportamiento de un experto Intelligence, Intelligent Agent. Action, Reaction, Uncertainty, True,
humano. Para ello se establece una arquitectura cuyo corazón es un False, Neural Network.
motor de inferencia soportado por una base de conocimiento,
organizada en hechos, reglas y meta reglas. El motor de inferencia
obedece a patrones de entrada iterando a lo largo de la base de
conocimiento, encontrando hechos u objetos que resuelven en lógica I. INTRODUCCIÓN
de predicados de primer orden (o en el ámbito de la lógica difusa), un
objetivo específico. El Sistema Experto requiere para lograr su La Inteligencia Artificial (IA) es una línea de investigación,
propósito de la utilización de una agenda temporal en donde innovación y desarrollo tecnológico en el campo de la
almacena el resultado de todas y cada una de las acciones de informática, cuyo objetivo es el entender la forma de pensar
inferencia. Globalmente, el Sistema Experto requiere disponer de un del ser humano, de modo que sea posible la construcción de
módulo de aprendizaje a través del cual mejora su sistema de
máquinas y sistemas que puedan comportarse como lo haría
inferencia con base en la experiencia. El Motor de búsqueda de
conocimiento opera en tres niveles posibles: directo, inverso e un ser humano frente a la solución de un problema. Existen
híbrido. Para el desarrollo de Sistemas Expertos se dispone de dos grandes tendencias en este campo: los modelos
herramientas computacionales y lenguajes tanto imperativos como conexionistas y los modelos simbólicos. El primero, el
funcionales. conexionista, busca desarrollar procesos inteligentes copiando
la estructura del cerebro, y para ello recurre a la combinación
artificial de elementos físicos o virtuales, que generan un
Palabras clave— Sistemas Expertos, Lógica Difusa, Aprendizaje, principio inteligente de manera emergente. El modelo
Patrones, Inferencia, Motor de Inferencia, Agenda, Hechos, Reglas,
Meta Reglas, Directo, Inverso, Híbrido, Entrada, Salida, Base de
simbólico busca generar inteligencia a partir del estudio de
Conocimiento, Inteligencia Artificial, Agente Inteligente. Acción, las leyes del pensamiento plasmadas en combinaciones forales
Reacción, Incertidumbre, Verdadero, Falso, Red Neuronal. de símbolos, buscando con ello que los conceptos base de la
inteligencia se manifiesten de manera emergente como
Abstract— The Expert Systems are a branch of Artificial Intelligence entidades que resuelven problemas de manera similar al ser
whose purpose is to simulate the behavior of a human expert. To do humano.
this, the architecture is established whose heart is an inference engine
supported by a knowledge base, organized into facts, rules and meta Los Sistemas Expertos (SE) son una de las apuestas de
rules. The inference engine obeys to input patterns iterating along the desarrollo tecnológico en el campo simbólico. A través de su
knowledge base, finding facts or objects that solve in logic of first uso, la capacidad humana de enfrentar problemas a través de
order predicates (or in the field of fuzzy logic), a specific objective.
razonamientos que exploran bases de conocimiento, hechos
The Expert System requires achieving its purpose of using a
temporary agenda where it stores the result of each and every one of conocidos y reglas estándar de comportamiento, los Sistemas
the inference actions. Globally, the Expert System requires having a Expertos Artificiales han llegado a no diferir mucho del
learning module through which it improves its inference system equivalente humano en dominios concretos del conocimiento.
based on experience. The Knowledge Search Engine operates in
three possible levels: direct, inverse and hybrid. For the development El presente documento explora los principales tópicos
of Expert Systems, computational tools and languages are available, asociados a la tecnología de la Computación Blanda asociada
both imperative and functional. a los Sistemas Expertos.

Key Word — Expert Systems, Fuzzy Logic, Learning, Patterns,


Inference, Inference Engine, Agenda, Facts, Rules, Goal Rules,
2 Ingeniería de Sistemas y Computación. Facultad de Ingenierías. Universidad Tecnológica de Pereira.

El cometido de XCON sería configurar todos los ordenadores


II. DESARROLLO DEL TEMA que saliesen de la DEC. El proyecto presentó resultados
positivos y se empezó a trabajar en el proyecto más en serio
Los sistemas expertos se basan en un modelo computacional en diciembre de 1978.
que busca simular la capacidad de un experto humano.
Algunas definiciones aclaratorias se exponen a continuación: En 1980 se instauró totalmente en DEC. Y en 1984, el XCOM
había crecido hasta multiplicarse por diez. El XCOM supuso
“Sistema experto (ES, siglas del término Expert System) es un un ahorro de cuarenta millones de dólares al año para la DEC.
sistema de información basado en el conocimiento que usa su
conocimiento de un área de aplicación compleja y específica a Entre los años 1980 a 1985 se produce la revolución de los
fin de actuar como un consultor experto para los usuarios Sistemas Expertos. En estos 5 años se crearon diversos
finales. Los sistemas expertos proporcionan respuestas sobre sistemas expertos como el DELTA, de General Electric
un área problemática muy específica al hacer inferencias Company, para la reparación de locomotoras diesel y
semejantes a las humanas sobre los conocimientos obtenidos eléctricas. "Aldo en Disco" para la reparación de calderas
en una base de conocimientos especializados.” [1] hidroestáticas giratorias usadas para la eliminación de
bacterias.
“Los Sistemas Expertos (SE) pueden ser considerados como
un subconjunto de la IA (Rossini, 2000). El nombre Sistema A partir de los 1990 y con el desarrollo de la Informática, se
Experto deriva del término “sistema experto basado en produce un amplio desarrollo en el campo de la Inteligencia
conocimiento”. Un Sistema Experto es un sistema que emplea artificial y los Sistemas Expertos, pudiéndose afirmar que
conocimiento humano capturado en una computadora para estos se han convertido en una herramienta habitual en
resolver problemas que normalmente requieran de expertos determinadas empresas en la actualidad.
humanos. Los sistemas bien diseñados imitan el proceso de
razonamiento que los expertos utilizan para resolver ARQUITECTURA
problemas específicos. Dichos sistemas pueden ser utilizados
por no-expertos para mejorar sus habilidades en la resolución
de problemas. Los SE también pueden ser utilizados como
asistentes por expertos. Además, estos sistemas pueden
funcionar mejor que cualquier humano experto
individualmente tomando decisiones en una específica y
acotada área de pericia, denominado como dominio (Turban,
1995).” [2]

EVOLUCIÓN HISTÓRICA

En el desarrollo de los sistemas expertos también se ha


producido a medida que se ha ido desarrollando la Inteligencia
artificial y los diferentes métodos que se han empleado para su
resolución. El desarrollo de lenguajes como LISP y PROLOG
condicionaron esa evolución, así como investigaciones en
diversos campos relacionados.

En 1965 aparece DENDRAL, duró su realización más de diez Un sistema Experto consta de 7 elementos los cuales son:
años hasta 1975, este fue el primer sistema experto. • Base de conocimientos.
• Base de hechos
En 1972, en la Universidad de Standford se desarrolla • Motor de inferencia.
MYCIN, sistema experto dentro del campo de la medicina • Subsistema de explicación.
para diagnostico de enfermedades infecciosas en la sangre. • Interfaz de usuario.
• Módulo de adquisición de conocimiento
En 1972 aparece el lenguaje PROLOG basado en las teorías • Módulo de comunicaciones
de Minsky.
Base de conocimientos. Esta contiene el conocimiento que se
En 1973 se desarrolla el sistema experto llamado TIERESIAS. debe del experto y codificarlo en la base de conocimientos.
La forma clásica de representar el conocimiento en un
En 1979 aparece XCON, primer programa que sale del
sistema experto son la utilización de reglas es
laboratorio Su usuario fue la Digital Equipament Corporation
decir básicamente constituye la descripción de los objetos y
(DEC).
Ingeniería de Sistemas y Computación. Facultad de Ingenierías. Universidad Tecnológica de Pereira. 3

las relaciones entre ellos, así como de casos particulares y lenguaje natural, visión por computadora, robótica y "sistemas
excepciones. de expertos". responde a una interfaz ensamblador, el segundo
a interfaz compilador y el ultimo a interfaz interprete.
Base de hechos . Contiene los hechos sobre un problema que
se han descubierto durante una consulta. Se trata de una Un Lenguaje de Programación se basa en reglas de acción
memoria temporal auxiliar que almacena los datos del usuario, (silogismos) , y el análisis de posibilidades dándonos una
datos iniciales del problema, y los resultados intermedios ayuda muy útil en todas las ramas de la acción humana. Es así
obtenidos a lo largo del proceso de resolución. como los Sistemas Expertos desarrollan una Función muy
importante "Realizar tareas genéricas: es decir para la
Motor de inferencia o Interprete de Reglas. Este motor de monitorización y el diagnóstico, además de los trabajos de
inferencia trabaja con la información contenida en la base de simulación de la realidad (Realidad Virtual en la actualidad).
conocimientos y la base de hechos para deducir nuevos Algunos lenguajes son lenguajes principalmente interpretados,
hechos. Se encarga de las operaciones de búsqueda y como APL, PROLOG y LISP.
selección de las reglas a utilizar en el proceso de
razonamiento. Contrasta los hechos particulares de la base de APL (A Programing Language). Diseñado para tablas,
hechos con el conocimiento contenido en la base de vectores y matrices; utiliza símbolos especiales, distintos que
conocimientos para obtener conclusiones acerca del problema. el ASCII.
Subsistema de explicación. Básicamente lo que trata es El nombre LISP es la abreviatura de List-Processing, ya que el
de explicar al usuario tanto las reglas usadas como el LISP fue desarrollado para el procesamiento de listas. La lista
conocimiento aplicado en la resolución de un determinado es la estructura más importante de LISP. El lenguaje LISP fue
problema. Usando el módulo del subsistema de explicación, diseñado ya a finales de los años 50 por McCarthy. A lo largo
un sistema experto puede proporcionar una explicación al de los últimos años se han desarrollado muchos dialectos, por
usuario de por qué está haciendo una pregunta y cómo ha ejemplo MACLISP, COMMONLISP, INTERLISP,
llegado a una conclusión. ZETALISP, donde el COMMONLISP se está imponiendo
cada vez más como estándar.
Interfaz de usuario. Todo sistema dispone de una interfaz de
usuario, que gobierna el diálogo entre el sistema y el usuario
lo que hace posible la comunicación. Por tanto debe ser
interactiva siguiendo el patrón de la conversación entre seres
TIPOS DE HERRAMIENTAS UTILIZADAS
humanos. Un requerimiento básico del interfaz es la habilidad
de hacer preguntas. Para obtener información fiable del
usuario hay que poner especial cuidado en el diseño de las Herramientas utilizadas para desarrollar sistemas expertos.
cuestiones.
La construcción de un Sistema Experto no es una tarea
Módulo de adquisición de conocimiento. Le sirve al experto sencilla, debido a que involucra mucha participación de
para que pueda construir la base de conocimiento de una distintas personas, cada una de las cuales aportará algo para
forma sencilla, así como disponer de una herramienta de que el Sistemas Expertos a desarrollar sea robusto y fácil de
ayuda para actualizar de la base de conocimiento cuando sea usar y mantener. Además se deben hacer varias elecciones en
necesario. El módulo de adquisición del conocimiento, forman cuanto al desarrollo del Sistema Experto una de ellas es elegir
el esqueleto o sistema esencial, y que, separadas de las bases que herramienta utilizar para su estructuración.
de conocimiento y de hechos, constituyen una A continuación una lista de las herramientas que se pueden
herramienta software para el desarrollo de los sistemas utilizar para desarrollar un Sistema Experto:
basados en el conocimiento.
• ART-IM
Módulo de comunicaciones
Puesto que los sistemas basados en el conocimiento no viven • CBR Express v.1.1.
aislados sino que interactúan con otros sistemas es decir no • Nex - Expert Object v.2.0.
solo son capaces de interactuar con el experto sino con estos
sistemas, para poder recoger información o consultar bases de • Exsys Corvid
datos.
• Xpertrule
• G2
TIPOS DE LENGUAJES UTILIZADOS
• Visual Prolog

Son programas que se han diseñado principalmente para • Jess


emular un comportamiento inteligente. Incluyen algoritmos de
• Winprolog
juego tales como el ajedrez, programas de comprensión del

____________________________
1. Las notas de pie de página deberán estar en la página donde se citan. Letra Times New Roman de 8 puntos
4 Ingeniería de Sistemas y Computación. Facultad de Ingenierías. Universidad Tecnológica de Pereira.

• Clisps 12. Mejoramiento de las funciones para resolver


problemas. Un sistema experto mejora la solución de
• Expert System Builder problemas permitiendo la integración de juicios de
expertos de primera línea en el análisis. De este
VENTAJAS DE LOS SISTEMAS EXPERTOS modo, un sistema experto tiene la posibilidades
resolver problemas cuyo enlace y conocimiento
supera a los de cualquier individuo.
13. Reducción del tiempo para la toma de decisiones.
1. Producción y productividad mayores. Pueden trabajar
Con el empleo de la recomendación del sistema, un
más rápido que lo humanos. Están disponibles
ser humano puede tomar decisiones mucho más
ininterrumpidamente de día y noche, ofreciendo
rápido.
siempre su máximo desempeño. Pueden duplicarse
14. Reducción del tiempo fuera de servicio. Muchos
ilimitadamente, i.e. tener tantos de ellos como se
sistemas expertos operacionales se emplean para
requieran.
diagnosticar malos funcionamientos y prescribir
2. Mayor calidad: Dan la probabilidad de aumentar la
reparaciones.
calidad proporcionando asesoría consistente y
reduciendo las tasas de error.
3. Operación en entornos peligrosos. Muchas tareas
requieren que los seres humanos operen en entornos DESVENTAJAS DE LOS SISTEMAS EXPERTOS
hostiles y peligrosos.
4. Captación de experiencia escasa y su dimensión. Uno 1. Tienen una noción muy limitada acerca del contexto
de los principales beneficios de los sistemas expertos de problema, i.e. no pueden percibir todas las cosas
es su facilidad de trasmitir experiencia a través de que un experto humano puede apreciar de un
fronteras internacionales. situación.
5. Siempre se ajustan a las normas establecidas y son 2. Pueden existir decisiones que sólo son de
consistentes en su desempeño, i.e. no desarrollan competencia para un ser humano y no una máquina.
apreciaciones subjetivas, tendenciosas, irracionales o 3. No saben como subsanar sus limitaciones, e.g. no son
emocionales. capaces de trabajar en equipo o investigar algo
6. Confiabilidad. Los sistemas expertos son confiables. nuevo.
No padece de olvido, fatiga, dolor o comete errores 4. Son muy costosos de desarrollar y mantener.
de cálculo. 5. Tareas que realiza un Sistema Experto
7. No requiere un sueldo, promociones, seguros Monitorización.
médicos, incapacidades. 6. La monitorización es un caso particular de la
8. Accesibilidad al conocimiento y escritorios de vida. interpretación, y consiste en la comparación continua
Hacen accesible el conocimiento (y la información) a de los valores de las señales o datos de entrada y
mucha gente en diversos lugares. Siempre están unos valores que actúan como criterios de
dispuestos a dar explicaciones, asistir o enseñar a la normalidad o estándares. Se trata de que el programa
gente, así como a aprender. pueda determinar en cada momento el estado de
9. Pueden tener una vida de servicio ilimitada. funcionamiento de sistemas complejos, anticipándose
Funciones incrementadas de otros sistemas expertos. a los posibles incidentes que pudieran acontecer.
La integración de un sistema experto con otros
sistemas expertos hacen que estos últimos se vuelvan
más eficientes, los sistemas integrados abarcan más EJEMPLOS DE PROBLEMAS RESUELTOS CON
aplicaciones, trabajan más rápido y producen SISTEMAS EXPERTOS
resultados de mayor calidad.
10. Capacidad para trabajar con información incompleta
o inconcreta. En contraste con los sistemas de Son programas que se han diseñado principalmente para
cómputo convencionales, un sistema experto puede emular un comportamiento inteligente. Incluyen algoritmos de
trabajar con información incompleta al igual que los juego tales como el ajedrez, programas de comprensión del
expertos humanos. lenguaje natural, visión por computadora, robótica y "sistemas
11. Impartición de capacitación. Es factible que un de expertos". responde a una interfaz ensamblador, el segundo
sistema experto facilite la capacitación. El personal a interfaz compilador y el ultimo a interfaz interprete.
nuevo que trabaja con un sistema experto se vuelve Un Lenguaje de Programación se basa en reglas de acción
más experimentado. La fusión de explicación puede (silogismos) , y el análisis de posibilidades dándonos una
servir como un dispositivo de de enseñanza y de ese ayuda muy útil en todas las ramas de la acción humana. Es así
modo puede efectuar apuntes que tal vez se inserten como los Sistemas Expertos desarrollan una Función muy
en la base de conocimiento. importante "Realizar tareas genéricas: es decir para la
Ingeniería de Sistemas y Computación. Facultad de Ingenierías. Universidad Tecnológica de Pereira. 5

monitorización y el diagnóstico, además de los trabajos de precisos y eficientes sistemas son adoptados por más
simulación de la realidad (Realidad Virtual en la actualidad). organizaciones, en las cuales se convierten y/o transforman en
una importante estrategia de negocio.
Algunos lenguajes son lenguajes principalmente interpretados,
como APL, PROLOG y LISP. Por otra parte es importante mencionar que estos seguirán
siendo usados en los todos y cada una de las áreas y/o campos
APL (A Programing Language). Diseñado para tablas, donde los expertos humanos sean escasos. Por consecuencia
vectores y matrices; utiliza símbolos especiales, distintos que de lo anterior estos sistemas son utilizados por personas no
el ASCII. especializadas, por lo cual el uso frecuente de los (SE) les
El nombre LISP es la abreviatura de List-Processing, ya que el produce y/o genera conocimiento a los usuarios.
LISP fue desarrollado para el procesamiento de listas. La lista
es la estructura más importante de LISP. El lenguaje LISP fue
diseñado ya a finales de los años 50 por McCarthy. A lo largo PREGUNTAS LIGADAS A SISTEMAS EXPERTOS
de los últimos años se han desarrollado muchos dialectos, por
ejemplo MACLISP, COMMONLISP, INTERLISP, En esta sección se plantean algunas cuestiones cuyas
ZETALISP, donde el COMMONLISP se está imponiendo respuestas arrojan luz adicional sobre la naturaleza de los
cada vez más como estándar. Sistemas Expertos y sus campos específicos de aplicación.
Son programas que se han diseñado principalmente para
emular un comportamiento inteligente. Incluyen algoritmos de Preguntas:
juego tales como el ajedrez, programas de comprensión del
lenguaje natural, visión por computadora, robótica y "sistemas 1) ¿Cuál es el impacto del proyecto CyC (OpenCyC) en el
de expertos". responde a una interfaz ensamblador, el segundo futuro de la Inteligencia Artificial?
a interfaz compilador y el ultimo a interfaz interprete.
R/. El proyecto CyC se trata de una máquina que aún está en
Un Lenguaje de Programación se basa en reglas de acción el proceso de aprendizaje, la ventaja es que se le pueden
(silogismos) , y el análisis de posibilidades dándonos una enseñar mas cosas
ayuda muy útil en todas las ramas de la acción humana. Es así
como los Sistemas Expertos desarrollan una Función muy 2) ¿Cuál es la razón para que se prefieran (en algunas
importante "Realizar tareas genéricas: es decir para la circunstancias) la utilización de lenguajes funcionales tipo
monitorización y el diagnóstico, además de los trabajos de PROLOG en el proceso de construcción de Sistemas
simulación de la realidad (Realidad Virtual en la actualidad). Expertos, en oposición a lenguajes imperativos como JAVA?
Algunos lenguajes son lenguajes principalmente interpretados,
como APL, PROLOG y LISP. R/. El lenguaje de programación JAVA es un lenguaje
orientado a objetos mientras que PROLOG maneja unas
APL (A Programing Language). Diseñado para tablas, heurísticas que permiten encontrar una solución mucho mas
vectores y matrices; utiliza símbolos especiales, distintos que rápido y mejor
el ASCII.
3) La heurística es una de las características más
El nombre LISP es la abreviatura de List-Processing, ya que el
sobresalientes de la capacidad humana para resolver
LISP fue desarrollado para el procesamiento de listas. La lista
problemas de manera eficiente. ¿Podrá alguna vez emularse
es la estructura más importante de LISP. El lenguaje LISP fue
esta capacidad en un sistema experto? ¿Hasta qué punto podrá
diseñado ya a finales de los años 50 por McCarthy. A lo largo
alcanzarse esta habilidad en un sistema artificial? ¿Qué
de los últimos años se han desarrollado muchos dialectos, por
tópicos deberían abordarse para alcanzar esta habilidad en un
ejemplo MACLISP, COMMONLISP, INTERLISP,
sistema artificial?
ZETALISP, donde el COMMONLISP se está imponiendo
cada vez más como estándar.
R/. Un sistema experto tiene la capacidad de emular las
capacidades de un ser humano experto, aunque es necesario
sobre entrenar el sistema ya que todos los seres humanos son
diferentes.
III. CONCLUSIONES
4) Enumere un grupo de problemas de la región cuya solución
Actualmente el duro, difícil y cambiante mercado competitivo pudiera abordarse con la aplicación sistemática de Sistemas
se vuelve más complejo por la gran diversidad de información Expertos.
que se ven obligados a almacenar y analizar, razón por la cual
las empresas se ven en la necesidad de recurrir a poderosas R/.
y/o robustas herramientas o sistemas que les sirvan de soporte - Plagas de café
a la hora de tomar decisiones. De esta forma estos inteligentes, - Trastornos del sueño

____________________________
1. Las notas de pie de página deberán estar en la página donde se citan. Letra Times New Roman de 8 puntos
6 Ingeniería de Sistemas y Computación. Facultad de Ingenierías. Universidad Tecnológica de Pereira.

- Trastornos alimenticios
- Dieta conforme a las necesidades de la persona

5) ¿Por qué razón el módulo de aprendizaje debe construirse


mediante la utilización de una Red Neuronal? Justifique su
respuesta.

R/ El módulo de aprendizaje debe construirse con una red


neuronal para que se refuercen durante el entrenamiento las
neuronas de entrada activas y las neuronas de salida activas.
[10]

REFERENCIAS

[1] Sistemas Expertos. ECURED. (2018) Disponible en:


https://www.ecured.cu/Sistemas_expertos

[2] Sebastián Badaró, Leonardo Javier Ibañez y Martín Jorge


Agüero. “Sistemas Expertos: Fundamentos, Metodologías y
Aplicaciones”. (2013) Disponible en:
https://www.palermo.edu/ingenieria/pdf2014/13/CyT_13_24.
pdf:
Ingeniería de Sistemas y Computación. Facultad de Ingenierías. Universidad Tecnológica de Pereira. 7

____________________________
1. Las notas de pie de página deberán estar en la página donde se citan. Letra Times New Roman de 8 puntos
8 Ingeniería de Sistemas y Computación. Facultad de Ingenierías. Universidad Tecnológica de Pereira.
Ingeniería de Sistemas y Computación. Facultad de Ingenierías. Universidad Tecnológica de Pereira. 9

____________________________
1. Las notas de pie de página deberán estar en la página donde se citan. Letra Times New Roman de 8 puntos
10 Ingeniería de Sistemas y Computación. Facultad de Ingenierías. Universidad Tecnológica de Pereira.

Вам также может понравиться