Blog de libre acceso, de propósito educativo e informativo, el cual va dirigido a todo tipo de público, en especial para aquellas personas que requieran información referente a Sistemas Expertos en la Inteligencia Artificial. Cualquier usuario podrá acceder, interactuar, informarse, comentar, consultar, presentar evaluaciones y contactarse directamente con nosotros en el caso que lo requiera.
Los Sistemas Expertos, rama de la
Inteligencia Artificial, son sistemas informáticos que simulan el proceso de
aprendizaje, de memorización, de razonamiento, de comunicación y de acción en consecuencia de un
experto humano en cualquier rama de la ciencia. Estas características le permiten
almacenar datos y conocimiento, sacar
conclusiones lógicas, tomar decisiones, aprender de la
experiencia y los datos existentes, comunicarse con expertos humanos,
explicar el por qué de las decisiones tomadas y realizar acciones como
consecuencia de todo lo anterior.
Técnicamente
un sistema experto, contiene una base de conocimientos que incluye la
experiencia acumulada de expertos humanos y un conjunto de reglas para
aplicar ésta base de conocimientos en una situación particular que se le
indica al programa. Cada vez el sistema se mejora con adiciones a la
base de conocimientos o al conjunto de reglas.
¿Por qué utilizar un Sistema Experto?
Con la ayuda de un Sistema
Experto, personas con poca experiencia pueden resolver problemas que requieren
un "conocimiento formal especializado.
Los Sistemas Expertos pueden obtener conclusiones y resolver
problemas de forma más rápida que los expertos humanos.
Los Sistemas Expertos razonan pero en base a un conocimiento
adquirido y no tienen sitio para la subjetividad.
Se ha comprobado que los Sistemas Expertos tienen al menos, la misma
competencia que un especialista humano.
El uso de Sistemas Expertos es especialmente recomendado en las
siguientes situaciones:
Cuando los expertos humanos en una determinada materia son
escasos.
En situaciones complejas, donde la subjetividad humana puede llevar
a conclusiones erróneas.
Cuando es muy elevado el volumen de datos que ha de
considerarse para obtener una conclusión.
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. Un ejemplo es el análisis
financiero, donde se estudian las oportunidades de inversión,
dependiendo de los datos financieros de un cliente y de sus propósitos.
Para detectar y reparar fallos en equipos electrónicos, se utilizan
los sistemas expertos de diagnóstico y depuración, que formulan listas
de preguntas con las que obtienen los datos necesarios para llegar a una
conclusión. Entonces recomiendan las acciones adecuadas para corregir
los problemas descubiertos. Este tipo de sistemas se utilizan también en
medicina (ej. MYCIN y PUFF), y para localizar problemas en sistemas
informáticos grandes y complejos.
Los sistemas expertos son buenos para predecir resultados futuros a
partir del conocimiento que tienen. Los sistemas meteorológicos y de
inversión en bolsa son ejemplos de utilización en este sentido. El
sistema PROSPECTOR es de este tipo. La planificación es la secuencia de acciones necesaria para lograr una
meta. Conseguir una buena planificación a largo plazo es muy difícil.
Por ello, se usan sistemas expertos para gestionar proyectos de
desarrollo, planes de producción de fábricas, estrategia militar y
configuración de complejos sistemas informáticos, entre otros.
Cuando se necesita controlar un proceso tomando decisiones como
respuesta a su estado y no existe una solución algorítmica adecuada, es
necesario usar un sistema experto. Este campo comprende el supervisar
fábricas automatizadas, factorías químicas o centrales nucleares. Estos
sistemas son extraordinariamente críticos porque normalmente tienen que
trabajar a tiempo real.
El diseño requiere una enorme cantidad de conocimientos debido a que
hay que tener en cuenta muchas especificaciones y restricciones. En este
caso, el sistema experto ayuda al diseñador a completar el diseño de
forma competente y dentro de los límites de costes y de tiempo. Se
diseñan circuitos electrónicos, circuitos integrados, tarjetas de
circuito impreso, estructuras arquitectónicas, coches, piezas mecánicas,
etc.
Por último, un sistema experto puede evaluar el nivel de conocimientos
y comprensión de un estudiante, y ajustar el proceso de aprendizaje de
acuerdo con sus necesidades.
Un sistema experto en medicina. La medicina atrae, por el momento, buena
parte de la atención de los diseñadores de sistemas y cuenta con el
mayor número de programas. El sistema INTERNIST contempla el diagnóstico
de las enfermedades de medicina interna u hospitalaria. Fue
desarrollado en la universidad norteamericana de Pittsburg en 1 977.
En los centros médicos que disponen de dicho sistema, el médico acude a
la consola de la computadora después de haber reconocido al paciente y
haber realizado los análisis que cree pertinentes. Entonces la máquina
solicita al médico información sobre el paciente, y se establece una
conversación a través de la pantalla y el teclado, similar a la que se
establecería entre un médico y un reputado especialista al que se acude
para contrastar un diagnóstico.
La computadora recibe el historial médico del enfermo, los síntomas y
los resultados de pruebas y análisis. Con esta información, el sistema
experto relaciona los datos de forma muy elaborada y comienza por
desechar posibles diagnósticos hasta que llega a los que parecen más
probables. Finalmente, elige uno y lo da a conocer con todo el detalle
del proceso. Luego justifica su elección y el porqué de la posible
enfermedad: cuadro clínico, historial, tratamiento, posibilidades de
error, etc.
El video muestra un Sistema Experto dedicado a La Medicina llamado InsightArthro.
Principalmente existen tres tipos de sistemas expertos:
Basados en reglas previamente establecidas.
Basados en casos o CBR (Case Based Reasoning).
Basados en redes bayesianas.
En cada uno de ellos, la solución a un problema planteado se obtiene:
Aplicando reglas heurísticas apoyadas generalmente en lógica difusa para su evaluación y aplicación.
Aplicando el razonamiento basado en casos, donde la solución a un
problema similar planteado con anterioridad se adapta al nuevo problema.
Aplicando redes bayesianas, basadas en estadística y el teorema de Bayes.
Ventajas y limitaciones de los Sistemas Expertos
Ventajas
Permanencia: A diferencia de un experto humano un SE (sistema
experto) no envejece, y por tanto no sufre pérdida de facultades con el
paso del tiempo.
Replicación: Una vez programado un SE lo podemos replicar infinidad de veces.
Rapidez: Un SE puede obtener información de una base de datos y realizar cálculos numéricos mucho más rápido que cualquier ser humano.
Bajo costo: A pesar de que el costo inicial pueda ser elevado,
gracias a la capacidad de duplicación el coste finalmente es bajo.
Entornos peligrosos: Un SE puede trabajar en entornos peligrosos o dañinos para el ser humano.
Fiabilidad: Los SE no se ven afectados por condiciones externas, un humano sí (cansancio, presión, etc.).
Consolidar varios conocimientos.
Apoyo Académico.
Limitaciones
Sentido común: Para un Sistema Experto no hay nada obvio. Por
ejemplo, un sistema experto sobre medicina podría admitir que un hombre
lleva 40 meses embarazado, a no ser que se especifique que esto no es
posible ya que un hombre no puede gestar hijos.
Lenguaje natural: Con un experto humano podemos mantener una conversación informal mientras que con un SE no podemos.
Capacidad de aprendizaje: Cualquier persona aprende con relativa
facilidad de sus errores y de errores ajenos, que un SE haga esto es muy
complicado.
Perspectiva global: Un experto humano es capaz de distinguir cuales
son las cuestiones relevantes de un problema y separarlas de cuestiones
secundarias.
Capacidad sensorial: Un SE carece de sentidos.
Flexibilidad: Un humano es sumamente flexible a la hora de aceptar datos para la resolución de un problema.
Conocimiento no estructurado: Un SE no es capaz de manejar conocimiento poco estructurado.
Estructura Básica de un Sistema Experto
Un sistema experto esta conformado por:
Base de Conocimientos: Contiene conocimiento modelado extraìdo del diagolo con un experto. Base de Hechos: (memoria de trabajo): contiene los hechos sobre un problema que se ha descubierto durante el análisis. Motor de Inferencia: modela el proceso de razonamiento humano. Módulos de justificación: explica el razonamiento utilizado por el sistema para llegar a una determinada conclusión.
Interfaz de Usuario: es la interacción entre el sistema experto y el usuario. y se realiza mediante el lenguaje natural.
Tareas que realiza un Sistema Experto
Monitorización
La monitorización es un caso particular de la interpretación, y
consiste en la comparación continua de los valores de las señales o
datos de entrada y unos valores que actúan como criterios de normalidad o
estándares. En el campo del mantenimiento predictivo los Sistemas
Expertos se utilizan fundamentalmente como herramientas de diagnóstico.
Se trata de que el programa pueda determinar en cada momento el estado
de funcionamiento de sistemas complejos, anticipándose a los posibles
incidentes que pudieran acontecer. Así, usando un modelo computacional
del razonamiento de un experto humano, proporciona los mismos resultados
que alcanzaría dicho experto.
Diseño
Diseño es el proceso de especificar una descripción de un artefacto
que satisface varias características desde un número de fuentes de
conocimiento.
El diseño se concibe de distintas formas:
El diseño en ingeniería es el uso de principios científicos,
información técnica e imaginación en la definición de una estructura
mecánica, máquina o sistema que ejecute funciones específicas con el
máximo de economía y eficiencia.
El diseño industrial busca rectificar las omisiones de la
ingeniería, es un intento consciente de traer forma y orden visual a la
ingeniería de hardware donde la tecnología no provee estas
características.
Los SE en diseño ven este proceso como un problema de búsqueda de una
solución óptima o adecuada. Las soluciones alternas pueden ser
conocidas de antemano o se pueden generar automáticamente probándose
distintos diseños para verificar cuáles de ellos cumplen los
requerimientos solicitados por el usuario, ésta técnica es llamada
“generación y prueba”, por lo tanto estos SE son llamados de selección.
En áreas de aplicación, la prueba se termina cuando se encuentra la
primera solución; sin embargo, existen problemas más complejos en los
que el objetivo es encontrar la solución óptima.
Planificación
La planificación es la realización de planes o secuencias de acciones
y es un caso particular de la simulación. Está compuesto por un
simulador y un sistema de control. El efecto final es la ordenación de
un conjunto de acciones con el fin de conseguir un objetivo global.
Los problemas que presentan la planificación mediante SE son los siguientes:
Existen consecuencias no previsibles, de forma que hay que explorar y explicar varios planes.
Existen muchas consideraciones que deben ser valoradas o incluirles un factor de peso.
Suelen existir interacciones entre planes de subobjetivos diversos, por lo que deben elegirse soluciones de compromiso.
Trabajo frecuente con incertidumbre, pues la mayoría de los datos
con los que se trabaja son más o menos probables pero no seguros.
Es necesario hacer uso de fuentes diversas tales como bases de datos.
Control
Un sistema de control participa en la realización de las tareas de
interpretación, diagnóstico y reparación de forma secuencial. Con ello
se consigue conducir o guiar un proceso o sistema. Los sistemas de
control son complejos debido al número de funciones que deben manejar y
el gran número de factores que deben considerar; esta complejidad
creciente es otra de las razones que apuntan al uso del conocimiento, y
por tanto de los SE.
Cabe aclarar que los sistemas de control pueden ser en lazo abierto,
si en el mismo la realimentación o el paso de un proceso a otro lo
realiza el operador, o en lazo cerrado si no tiene que intervenir el
operador en ninguna parte del mismo. Reparación, correcta o terapia.
La reparación, corrección, terapia o tratamiento consiste en la
proposición de las acciones correctoras necesarias para la resolución de
un problema. Los SE en reparación tienen que cumplir diversos
objetivos, como son: Reparación lo más rápida y económicamente posible.
Orden de las reparaciones cuando hay que realizar varias. Evitar los
efectos secundarios de la reparación, es decir la aparición de nuevas
averías por la reparación.
Simulación
La simulación es una técnica que consistente en crear modelos basados
en hechos, observaciones e interpretaciones sobre la computadora, a fin
de estudiar el comportamiento de los mismos mediante la observación de
las salidas para un conjunto de entradas. Las técnicas tradicionales de
simulación requieren modelos matemáticos y lógicos, que describen el
comportamiento del sistema bajo estudio.
El empleo de los SE para la simulación viene motivado por la
principal característica de los SE, que es su capacidad para la
simulación del razonamiento de un experto humano, que es un proceso
complejo.
En la aplicación de los SE para simulación hay que diferenciar cinco configuraciones posibles:
Un SE puede disponer de un simulador con el fin de comprobar las soluciones y en su caso rectificar el proceso que sigue.
Un sistema de simulación puede contener como parte del mismo a un SE
y por lo tanto el SE no tiene que ser necesariamente de simulación.
Un SE puede controlar un proceso de simulación, es decir que el
modelo está en la base de conocimiento del SE y su evolución es función
de la base de hechos, la base de conocimientos y el motor de inferencia,
y no de un conjunto de ecuaciones aritmético – lógicas.
Un SE puede utilizarse como consejero del usuario y del sistema de simulación.
Un SE puede utilizarse como máscara o sistema frontal de un
simulador con el fin de que el usuario reciba explicación y
justificación de los procesos.
Instrucción
Un sistema de instrucción realizara un seguimiento del proceso de
aprendizaje. El sistema detecta errores ya sea de una persona con
conocimientos e identifica el remedio adecuado, es decir, desarrolla un
plan de enseñanza que facilita el proceso de aprendizaje y la corrección
de errores.
Recuperación de información
Los Sistemas Expertos, con su capacidad para combinar información y
reglas de actuación, han sido vistos como una de las posibles soluciones
al tratamiento y recuperación de información, no sólo documental. La
década de 1980 fue prolija en investigación y publicaciones sobre
experimentos de este orden, interés que continua en la actualidad.
Lo que diferencia a estos sistemas de un sistema tradicional de
recuperación de información es que éstos últimos sólo son capaces de
recuperar lo que existe explícitamente, mientras que un Sistema Experto
debe ser capaz de generar información no explícita, razonando con los
elementos que se le dan. Pero la capacidad de los SE en el ámbito de la
recuperación de la información no se limita a la recuperación. Pueden
utilizarse para ayudar al usuario, en selección de recursos de
información, en filtrado de respuestas, etc. Un SE puede actuar como un
intermediario inteligente que guía y apoya el trabajo del usuario final.
Arquitectura de Los Sistemas Expertos
Base de conocimientos. Es la parte del sistema
experto que contiene el conocimiento sobre el dominio. Hay que obtener el
conocimiento del experto y codificarlo en la base de conocimientos. Una forma
clásica de representar el conocimiento en un sistema experto son lar reglas.
Una regla es una estructura condicional que relaciona lógicamente la
información contenida en la parte del antecedente con otra información
contenida en la parte del consecuente.
Base de hechos . Contiene los hechos sobre un
problema que se han descubierto durante una consulta. Durante una consulta con
el sistema experto, el usuario introduce la información del problema actual en
la base de hechos. El sistema empareja esta información con el conocimiento
disponible en la base de conocimientos para deducir nuevos hechos.
Motor de inferencia. El sistema experto modela el
proceso de razonamiento humano con un módulo conocido como el motor de
inferencia. Dicho motor de inferencia trabaja con la información contenida en
la base de conocimientos y la base de hechos para deducir nuevos hechos.
Contrasta los hechos particulares de la base de hechos con el conocimiento
contenido en la base de conocimientos para obtener conclusiones acerca del
problema.
Subsistema de explicación. Una característica de
los sistemas expertos es su habilidad para explicar su razonamiento. Usando el
módulo del subsistema de explicación, un sistema experto puede proporcionar una
explicación al usuario de por qué está haciendo una pregunta y cómo ha llegado
a una conclusión. Este módulo proporciona beneficios tanto al diseñador del
sistema como al usuario. El diseñador puede usarlo para detectar errores y el
usuario se beneficia de la transparencia del sistema.
Interfaz de usuario. La interacción entre un
sistema experto y un usuario se realiza en lenguaje natural. También es
altamente interactiva y sigue el patrón de la conversación entre seres humanos.
Para conducir este proceso de manera aceptable para el usuario es especialmente
importante el diseño del interfaz de usuario. 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 cuestiones. Esto
puede requerir diseñar el interfaz usando menús o gráficos.
Los Sistemas Expertos y la Robótica
A finales de los años 70, se produjo un nuevo giro en el campo de la
investigación relacionada con la inteligencia artificial: la aparición de robots. Los robots experimentales
creados para estos efectos eran automatismos capaces de recibir información
procedente del mundo exterior (por ejemplo,
censores, cámaras de televisión, etc.), así como órdenes de un
manipulador humano (expresadas en lenguaje natural). De este modo, el robo
determinaba un plan y, de acuerdo con él, ejecutaba las órdenes recibidas
mediante el empleo de un modelo del universo en el que se encontraba. Era
incluso capaz de prever las consecuencias de sus acciones y evitar, así,
aquéllas que más tarde pudieran resultarle inútiles o, en algún momento,
perjudiciales. Estos primeros robots experimentales eran bastante más
inteligentes que los robots industriales, y lo eran porque disponían de un
grado mucho mayor de percepción del entorno que los robots empleados en las
cadenas de producción.
El principal problema con el que se
enfrenta la inteligencia artificial aplicada a los robots es el de la visión.
Mientras que la información recibida a través de censores se puede interpretar
con relativa facilidad y entra a formar parte de la descripción del modelo de
universo que emplea el robot para tomar decisiones, la percepción de las
imágenes captadas y su interpretación correcta es una labor muy compleja. En
cuanto a la interpretación de las imágenes captadas mediante cualquier sistema,
se ha logrado ya el reconocimiento de formas pre programadas o conocidas, lo
que permite que ciertos robots lleven a cabo operaciones de reubicación de
piezas o colocación en su posición correcta a partir de una posición
arbitraria. Sin embargo, no se ha logrado aún que el sistema perciba la imagen
tomada mediante una cámara de ambiente y adapte su actuación al nuevo cúmulo decircunstancias que esto implica. Así,
por ejemplo, la imagen ofrecida por una cámara de vídeo de las que se emplea en
vigilancia y sistemas de seguridad no puede ser interpretada directamente por
el ordenador.