Descargar

Sistemas Expertos. Un paso en la simulación del razonamiento humano

Enviado por selimdiaz


    1. Resumen
    2. La Inteligencia Artificial (IA)
    3. Sistemas Expertos (SE)
    4. Componentes de un Sistemas Experto
    5. Campos de aplicación
    6. Ventajas y Desventajas de los Sistemas Expertos
    7. Ejemplos de Sistemas Expertos
    8. Conclusiones
    9. Bibliografía
    1. Resumen

    Desde que naciera la Inteligencia Artificial como tal ciencia, a principios de los 60, hasta la actualidad, se han venido realizando numerosos trabajos, para el desarrollo de los diversos campos que componen la Inteligencia Artificial. De todos esos campos, quizá el que puede tener mayor número de aplicaciones prácticas sea el de los Sistemas Expertos, siendo dichas aplicaciones de utilidad en temas tan variados que pueden ir desde la medicina hasta la enseñanza.

    Palabras claves: Sistemas Expertos, inteligencia, conocimiento, razonamiento

    1. En palabras de un gran matemático, Blaise Pascal: "Como no se puede ser universal y saber todo acerca de todo, es mejor saber un poco de cada tema, que saber todo sobre un solo tema ", así fue como inició la inquietud de los investigadores en los años 40, con la idea de un sistema general de resolución de problemas (General Problem Solver: GPS), que por medio de una serie de algoritmos basados en análisis, más o menos exhaustivos, fuera capaz de resolver toda clase de problemas relativos a juegos de estrategias y demostraciones automáticas. La ambición era grande, así como lo fue la decepción que tuvieron al ver que a pesar de los progresos teóricos y de algunos programas espectaculares, no obtuvieron los resultados que se esperaban. [CAST]

    2. Introducción

    1. Entonces se da un cambio en la dirección del problema, se enfocarían en un dominio específico, y recurriendo al conocimiento sobre el tema obtenido de las mismas personas, pretenden simular el razonamiento de un experto humano ante alguna situación.

      Así es como surge una de las ramas de mayor avance dentro de la Inteligencia Artificial, los Sistemas Expertos; con la idea de automatizar la labor del experto, partiendo en ocasiones de información insuficiente o incompleta.

      Este artículo presentará una introducción al amplio tema de la Inteligencia Artificial, para luego llegar al campo de los Sistemas Expertos, dándonos una descripción general de lo que es, revisando su concepto, estructura, campos de aplicación y ejemplos que fortalezcan la comprensión de los mismos.

      La Inteligencia Artificial comenzó como el resultado de la investigación en psicología cognitiva y lógica matemática. Se ha enfocado en la explicación del trabajo mental y construcción de algoritmos de solución a problemas de propósito general.

      La Inteligencia Artificial es una combinación de la ciencia del computador, fisiología y filosofía, tan general y amplio como eso; reúne varios campos (robótica, sistemas expertos, por ejemplo), todos los cuales tienen en común la creación de máquinas que pueden "pensar".

      La idea de construir una máquina, que pueda ejecutar tareas que parecen necesitar de la inteligencia humana para llevarse a cabo es un atractivo. Las tareas que han sido estudiadas desde este punto de vista incluyen juegos, traducción de idiomas, comprensión de idiomas, diagnóstico de fallas, robótica, suministro de asesoría experta en diversos temas.

      Es así como los sistemas de administración de base de datos cada vez más sofisticados, la estructura de datos y el desarrollo de algoritmos de inserción, borrado y locación de datos, así como el intento de crear máquinas capaces de realizar tareas que son pensadas como típicas del ámbito de la inteligencia humana, acuñaron el término Inteligencia Artificial en 1956.

      Trabajos teóricos fundamentales fueron el desarrollo de algoritmos matemáticos por Warren McCullock y Walter Pitts, en 1943, necesarios para posibilitar el trabajo de clasificación, o funcionamiento en sentido general, de una red neuronal. En 1949 Donald Hebb desarrolló un algoritmo de aprendizaje para dichas redes neuronales creando, en conjunto con los trabajos de McCullock y Pitts, la escuela creacionista. Esta escuela se considera hoy como el origen de la Inteligencia Artificial, sin embargo se trató poco por muchos años, dando paso al razonamiento simbólico basado en reglas de producción, lo que se conoce como sistemas expertos.

    2. Inteligencia artificial (IA)

      Un Sistema Experto es una aplicación informática que simula el comportamiento de un experto humano, en el sentido de que es capaz de decidir cuestiones, aunque sea en un campo restringido.

      Para esto, se debe tener en cuenta que la principal característica del experto humano viene a ser el conocimiento o habilidades profundas en ese campo concreto, por consiguiente, un Sistema Experto debe ser capaz de representar ese conocimiento profundo con el objetivo de utilizarlo para resolver problemas, justificar su comportamiento e incorporar nuevos conocimientos. Se podría incluir también el hecho de poder comunicarse en lenguaje natural con las personas, aunque esta capacidad no es tan determinante como las anteriores de lo que se puede definir como Sistema Experto [IBAR].

      Un experto humano es alguien con un conocimiento profundo, que no solamente soluciona problemas específicos sino que también los pone dentro de un contexto más amplio. Ellos "transfieren" todos sus conocimientos y experiencias a una computadora que posiblemente los sustituya en su labor. Pero los sistemas aún carecen de algo que tal vez jamás vayan a tener: Inteligencia natural.

      Los sistemas expertos se aplican por norma general en problemas que implican un procedimiento basado en el conocimiento. O sea, un procedimiento que comprende la utilización de normas o estructuras que contengan conocimientos y experiencias de expertos, deducción lógica de conclusiones, capacidad de interpretar datos ambiguos y la manipulación de conocimientos afectados por la probabilidad.

      La mejor forma de entender el funcionamiento de un Sistema Experto es conociendo los componentes que conforman la estructura del mismo, y las funciones que desempeñan individualmente. Dichos componentes se tratarán seguidamente.

    3. Sistemas Expertos (SE)
    4. Componentes de un Sistema Experto

    Aunque los componentes de un Sistema Experto no se manejan de forma estándar, nos encontramos con un modelo tradicional en la estructura de los mismos.

    Para ver el gráfico seleccione la opción "Descargar" del menú superior

    Figura 1 Modelo de un Sistema Experto [CANC]

    El conocimiento del experto se obtiene de alguna forma (Subsistema de adquisición de conocimientos) y se organiza en una base de conocimientos, y en función de los datos disponibles de la aplicación (base de hechos o base de datos) se imita la forma de actuar del experto explorando en la base de conocimientos hasta encontrar la solución (motor de inferencia). Los resultados finales y la forma en que se obtienen se expresan a través de la interfase hombre-máquina [ver Figura 1]. Además algunos sistemas expertos manejan un componente de explicación.

    A continuación se explican de forma individual cada uno de los componentes, iniciando con el subsistema de adquisición de conocimientos.

    1. El módulo de adquisición del conocimiento permite que se puedan añadir, eliminar o modificar elementos de conocimiento (en la mayoría de los casos reglas) en el sistema experto. Si el entorno es dinámico es muy necesario, puesto que, el sistema funcionará correctamente sólo si se mantiene actualizado su conocimiento. El módulo de adquisición permite efectuar ese mantenimiento, anotando en la base de conocimientos los cambios que se producen [CHAP].

      Todos los conocimientos que se obtienen deben ser estructurados de una forma correcta, todo este conocimiento se almacena en lo que se conoce como la base de conocimientos.

    2. Subsistema de adquisición de Conocimientos

      La base de conocimientos contiene el conocimiento especializado extraído del experto en el dominio. Es decir, contiene conocimiento general sobre el dominio en el que se trabaja [SAMP].

      El enfoque más común para representar el dominio del conocimiento que se requiere para un Sistema Experto son las reglas de producción. Estas pueden ser referidas como reglas “ situación-acción" o “ if-then". De esta forma, con frecuencia una base de conocimientos esta fraguada principalmente de reglas, las cuales son invocadas por un casamiento de patrones con las particularidades de las tareas circunstanciales que van apareciendo en la base de datos global.

      Un ejemplo de regla de producción es:

      Si (*Persona edad 18)

      and (*Persona sexo masculino)

      Entonces (*Persona hacer Servicio_militar)

      La regla anterior determina que si una persona tiene 18 años y además es de sexo masculino, deberá hacer el servicio militar.

      Existen reglas de producción que indican bajo que condiciones deben considerarse unas reglas en vez de otras, estas reglas son conocidas como Metareglas. Un ejemplo de Metaregla es:

      Si(paciente edad_avanzada)

      entonces(reglas enfermedades_ancianos)

      La Metaregla anterior determina que si un paciente es de edad avanzada, deberán aplicarse las reglas de enfermedades en ancianos, en lugar de utilizar las de enfermedades en jóvenes por ejemplo.

      La fuerza de un Sistema Experto yace en el conocimiento específico del dominio del problema. Casi todos los sistemas existentes basados en reglas contienen un centenar de ellas y generalmente se obtienen de entrevistas con expertos durante un tiempo largo. En cualquier Sistema Experto, las reglas se conectan una a otra por ligas de asociación para formar redes de reglas. Una vez que han sido ensambladas tales redes, entonces tenemos una representación de un cuerpo de conocimientos que es substancial.

      Generalmente, un experto tiene muchas reglas de criterio o empíricas por lo que el soporte suele ser incompleto para la evidencia que se dispone. En tales casos una técnica es la de vincular valores numéricos a cada regla para indicar el grado de certidumbre que ésta tiene.

      En la operación de Sistemas Expertos los valores de certidumbre se combinan unos a otros a través de la red, considerando también, la certidumbre de los datos de entrada del problema, para llegar finalmente a un valor de certidumbre de la solución final [CHAP].

      Pero no es suficiente con conocer la base de conocimientos para entender la estructura y el funcionamiento de los Sistemas Expertos, otro de los componentes esenciales de estos sistemas, es la base de datos o base de hechos.

    3. Base de Conocimientos

      La base de datos o base de hechos es una parte de la memoria del ordenador que se utiliza para almacenar los datos recibidos inicialmente para la resolución de un problema.

      Contiene conocimiento sobre el caso concreto en que se trabaja. También se registrarán en ella las conclusiones intermedias y los datos generados en el proceso de inferencia. Al memorizar todos los resultados intermedios, conserva el vestigio de los razonamientos efectuados; por lo tanto, se puede utilizar explicar las deducciones y el comportamiento del sistema [SAMP].

      Todos estos datos no son suficientes, si no se tiene un sistema encargado de procesar y manipular toda la información para generar los resultados deseados, este sistema es conocido como Motor de inferencia.

    4. Base de Datos o Base de Hechos

      El motor de inferencia es el "supervisor", un programa que está entre el usuario y la base de conocimientos, y que extrae conclusiones a partir de los datos simbólicos que están almacenados en las bases de hechos y de conocimiento. Dependen en gran medida de la representación elegida; por su importancia analizaremos los motores de inferencia basados en reglas [CANC].

      Existen varios algoritmos de búsqueda a lo largo de las reglas para inferir conclusiones a partir de los hechos y las reglas. Todos los algoritmos son del tipo "pattern-matching", van disparando reglas a medida que se cumplen las condiciones. Se pueden diferenciar dos mecanismos de inferencia: Encadenamiento hacia delante y encadenamiento hacia atrás.

      La llamada "técnica de encadenamiento hacia adelante" consiste en aplicar al conocimiento-base (organizado en forma de reglas de producción), junto con otro conocimiento disponible, el esquema inferencial modus ponens. Esta estrategia se denomina "encadenamiento hacia adelante" o "razonamiento de datos dirigidos", porque comienza con los datos conocidos y aplica el modus ponens sucesivamente hasta obtener los resultados que se siguen. Las reglas se aplican "en paralelo", o sea, en cualquier iteración una regla toma los datos cuales eran al principio del ciclo, por lo tanto el conocimiento-base y el sistema no dependen del orden en el que las reglas son establecidas, almacenadas o procesadas. Esta técnica suele utilizarse cuando la cantidad de datos es potencialmente muy grande, y resulta de interés algún conocimiento específico tomado en consideración (caso típico en los problemas de diagnóstico; MYCIN, por ejemplo).

      La técnica del "encadenamiento hacia atrás" consiste en tratar de probar un dato (o conocimiento) engarzándolo en las reglas-base con el esquema de inferencia modus ponens, o sea, tomando al dato como un consecuente y buscando en el conocimiento-base el correspondiente antecedente, a través de los pasos correspondientes.

      Estas dos formas de inferencia se corresponden con los dos métodos lógicos clásicos conocidos por varios nombres: método resolutivo / método compositivo; análisis / síntesis. La distinción se basa en la relación direccional entre objetivos y datos. Y ambas formas pueden combinarse en el razonamiento. Cabe partir de un supuesto inicial, inferir una conclusión mediante un razonamiento hacia adelante y luego establecer un encadenamiento hacia atrás hasta encontrar los datos que confirman esa conclusión [VELA].

      Es importante destacar que la base de conocimientos y el motor de inferencia son sistemas independientes, por lo que se han desarrollado herramientas que únicamente necesitan la implementación del conocimiento, llevando incorporado el motor de inferencia [CANC].

      La forma en que se obtiene o se presenta la información debe ser tal, que facilite la comprensión de los datos y la forma como se ingresa la información, por lo cuál es necesario la interfase Hombre-Máquina.

    5. Motor de Inferencia

      La interface establece una comunicación sencilla entre el usuario y el sistema. El usuario puede consultar con el sistema a través de menús, gráficos, o algún otro tipo de intefases, y éste le responde con resultados. También es interesante mostrar la forma en que extrae las conclusiones a partir de los hechos. En sistemas productivos se cuida la forma de presentar al operador las órdenes obtenidas del sistema experto, debido a que información excesiva o confusa dificulta la actuación en tiempo real [CANC].

      Aunque no se maneja dentro de la estructura de un Sistema Experto en general, existe un componente adicional, el componente de explicación, el cuál se tratará a continuación.

    6. Interfase Hombre-Máquina
    7. Componente de explicación

    El componente de explicación es el que permite justificar y explicar el análisis completo del problema y las soluciones propuestas, así como la semejanza o diferencia entre dicha solución y las de los casos históricos.

    A pesar de su importancia, aún no se ha podido cumplir de manera óptima con sus requisitos. Muchos representan el progreso de la consulta al sistema de forma gráfica. Además los componentes explicativos intentan justificar su función rastreando hacia atrás el camino de la solución. Aunque encontrar la forma de representar finalmente en un texto lo suficientemente inteligible las relaciones encontradas depara las mayores dificultades [CRIA].

    Es importante conocer a parte de la estructura de un Sistema Experto, en que campos cobran mayor relevancia, y cual sería su función en él.

    1. Un sistema experto es muy eficaz cuando tiene que analizar una gran cantidad de información, interpretándola y proporcionando una recomendación a partir de la misma, a continuación una tabla mostrando el uso de los Sistemas Expertos ante distintos problemas.

      Para ver el gráfico seleccione la opción "Descargar" del menú superior

      Figura 2 Modelos Funcionales de los Sistemas Expertos [6]

      A pesar de que los campos de aplicación son grandes, es importante conocer las ventajas y desventajas que se presentan para la utilización de y Sistema Experto.

    2. Campos de aplicación
    3. Ventajas y Desventajas de los Sistemas Expertos

    A la hora de tomar la decisión de desarrollar un Sistema Experto, se deben analizar las distintas ventajas y desventajas que estos tienen.

    1. Ventajas

    Entre las principales ventajas de un Sistema Experto, se pueden mencionar:

    • Los Sistemas Expertos que se codifican y tratan el conocimiento de un experto, alcanzan el nivel de prestaciones de un experto humano.
    • La separación entre base de conocimiento y motor de inferencia proporciona una gran flexibilidad al Sistema.
    • Los Sistemas Expertos permiten llegar a una reflexión sobre el conocimiento y los procedimientos, para toma de decisiones realizados por los expertos.
    • Posibilidad de trazar el razonamiento seguido por el Sistema Experto.
    • Algunos Sistemas Expertos utilizan coeficientes de verosimilitud para ponderar sus deducciones [CAST].
    • En manipulación de símbolos, los Sistemas Expertos abren el campo a nuevas aplicaciones, no automatizadas hasta la fecha [CAST].
    1. Desventajas

    Aunque son grandes las ventajas, no hay que dejar de lado las desventajas que se pueden presentar:

    • La publicidad realizada alrededor de esta técnica seduce a muchas personas pero crea aspiraciones imposibles de satisfacer.
    • La extracción del conocimiento es el problema más complejo que se les plantea a los ingenieros de conocimientos.
    • Ciertos problemas están ligados a la representación del conocimiento.
    • Los SE son incapaces de reconocer un problema para el que su propio conocimiento es inaplicable o insuficiente.
    • Los motores de inferencia poseen algunos límites.
    • Las interfaces con usuarios no son lo suficientemente amigables.
    • Las aplicaciones suministradas por los SE son, frecuentemente, esotéricas.
    • Falta personal competente para investigar y desarrollar aplicaciones.
    • Campo de aplicaciones restringido y específico.
    • El costo es bastante alto.

    Aunque se conozcan las ventajas y las desventajas de los Sistemas Expertos, no se logra una visión clara de los Sistemas Expertos y su capacidad, hasta que se conocen algunos ejemplos en aplicaciones reales.

    1. Ejemplos de Sistemas Expertos

    A continuación se presentan algunos Sistemas Expertos que se han desarrollado para la solución de diversos problemas.

    • MYCIN es un Sistema Experto para la realización de diagnósticos en el área de la medicina, iniciado por Ed Feigenbaum y posteriormente desarrollado por E. Shortliffe y sus colaboradores. Su función es la de aconsejar a los médicos en la investigación y determinación de diagnósticos en el campo de las enfermedades infecciosas  de la sangre[CRIA].
    • XCON es un Sistema Experto para configuraciones, desarrollado por la Digital Equipment Corporation. Según los deseos individuales del cliente se configuran redes de ordenadores VAX. Ya que el abanico de productos que se ofrecen en el mercado es muy amplio, la configuración completa y correcta de un sistema de estas características es un problema de gran complejidad. Responde esencialmente a dos preguntas: ¿Pueden conjugarse los componentes solicitados por el cliente de forma conveniente y razonable? Y ¿Los componentes de sistema especificados son compatibles y completos?. Las respuestas a estas preguntas son muy detalladas. XCON es capaz de comprobar y completar los pedidos entrantes mucho más rápido y mejor que las personas encargadas de hacerlo antes que él [CRIA].
    • DELTA, sistema experto que ayuda a los mecánicos en el diagnóstico y reparación de locomotoras diesel-eléctricas, DELTA no sólo da consejos expertos, sino que también presenta informaciones por medio de un reproductor de vídeo [IBAR].
    • En 1978 se desarrollo otro sistema experto de éxito: PROSPECTOR. Este quizás impulso más la carrera por desarrollar mejores sistemas expertos, dado que su misión era predecir la posibilidad de encontrar depósitos de minerales en una región en concreto. Minerales como petróleo, gas natural, helio.
    1. La composición de un Sistema Experto, sus aplicaciones, ventajas y desventajas, y algunos ejemplos sobre estos; han sido los puntos generales que se han tratado a lo largo de este artículo, con el fin de crear una mayor conciencia del uso real de este tipo de sistemas.

      Un sistema experto puede, sin duda alguna, darnos el mismo resultado que un experto humano; lo que sí debemos reconocer es que ningún sistema experto, hasta ahora, puede resolver diferentes problemáticas dentro de una empresa, ya que estos son siempre muy específicos. Sin embargo, es de esperarse que con los avances que tienen las herramientas tecnológicas se produzcan un desarrollo cercano al comportamiento humano en muchas áreas, con estos avances en el terreno de los negocios se podría ser más eficiente y productivo.

      A pesar de los dramáticos avances logrados, la inteligencia artificial no ha sido capaz de desarrollar sistemas capaces de resolver problemas de tipo general, de aplicar sentido común para la solución de situaciones complejas, de manejar situaciones ambiguas ni de utilizar efectivamente información incompleta. Estas últimas son características inherentes de la inteligencia natural.

    2. Conclusiones
    3. Bibliografía

    [CANC] Canca, J. "Sistemas Expertos". Esi2.us.es. URL: http://www.esi2.us.es/~dco/sistemas.htm

    [CAST] Castro, G. "Tendencias de los Sistemas Expertos". Netmedia.info URL: http://www.netmedia.info/netmedia/articulos.php?id_sec=32&id_art=2255

    [CHAP] Chapa, S. "Arquitectura de Sistemas Expertos". URL:

    http://delta.cs.cinvestav.mx/~schapa/red/intro_lm/node46.html

    [CRIA] Criado, J. "Sistemas Expertos" Worldonline.es URL: http://home.worldonline.es/jmariocr/

    [IBAR] Ibarreta, J. "Sistemas Expertos: Áreas de aplicación". Geocities. URL: http://www.geocities.com/javierml.geo/doc/SistemasExpertos.html

    [SAMP] Samper, J. "Sistemas Expertos: El conocimiento al poder". Psicología.com URL:

    http://www.psycologia.com/articulos/ar-jsamper01_2.htm

    [VELA] Velarde, J. "Sistemas Expertos" . Ucm.es URL: http://www.ucm.es/info/eurotheo/diccionario/S/sistemas_expertos.htm

    Realizado por:

    Selim Díaz Araya

    Ruddy Vargas Carcache

    Escuela de Ciencias de la Computación e Informática,

    Universidad de Costa Rica

    Sede Rodrigo Facio

    Facultad de Ingeniería

    2004