· 6.1 Tareas que realiza un Sistema Experto
o 6.1.1 Interpretación
o 6.1.2 Diagnostico
o 6.1.3 Reparación, corrección o terapia
· 6.2 Control
o 6.2.1 En tiempo diferido
o 6.2.1 En tiempo real
· 6.3 Tendencias futuras
6.1 - Tareas que realiza un Sistema Experto
En la actualidad los Sistemas Expertos, ofrecen grandes posibilidades y sus aplicaciones son de gran utilidad en temas tan variados que pueden ir desde la medicina hasta la enseñanza. En las empresas, los Sistemas Expertos empiezan a tener cada vez mayor auge, hasta el punto de ir suponiendo un punto de referencia importante en la toma de decisiones para los directivos. En realidad, incluso se podría decir que el límite de las aplicaciones de los Sistemas Expertos está en la imaginación humana, siendo siempre de utilidad allí donde se necesite un experto.
Según la clase de problemas hacia los que estén orientados, podemos clasificar los Sistemas Expertos en diversos tipos entre los que cabe destacar interpretación, diagnosis, pronóstico, planificación, reparación , corrección, control e instrucción.
6.1.1 Interpretación
La interpretación consiste en encontrar el significado de los datos de entrada obtenidos por sensores o introducidos por el usuario.
Con frecuencia aparecen datos contradictorios, incompletos o inexactos, por lo que hay que dotar al SE de conocimiento para resolver un problema de este tipo, y que de todas formas llegue a una resolución. Existen dos tipos de interpretación:
· Análisis: La interpretación de datos se obtiene mediante la separación o distinción de las partes que forman los datos.
· Síntesis: La interpretación de los datos se obtiene mediante la combinación de los mismos.
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.
6.1.2 Diagnostico
El diagnóstico consiste en identificar las causas internas que provocan un problema, avería o disfunción a partir de una serie de datos o síntomas que son consecuencia de la misma y que son observables.
Los SE en diagnóstico encuentran múltiples dificultades a la hora de realizar su tarea como son las siguientes:
Los SE en diagnóstico encuentran múltiples dificultades a la hora de realizar su tarea como son las siguientes:
· Manifestaciones Nuevas. Es decir, síntomas que no se habían observado con anterioridad.
· Causas Nuevas.
· Manifestaciones debidas a varias causas.
· Datos Inaccesibles, caros o de obtención peligrosa.
· Relaciones no biyectivas entre los datos y las causas.
· Fallos o averías de aparición intermitente.
· Existencia de varios fallos simultáneos o en cadena
6.1.3 Reparación, Corrección 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:
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.
6.2 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.
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.
6.2.1 En tiempo diferido
Es el control tradicional, que requiere un espacio temporal para que la información obtenida sea procesada con intenciones de verificación.
6.2.2 En tiempo real
Es aquel que procesa información de forma continuada para detectar de inmediato cualquier desviación y actuar a continuación.
Han sido la informática y la tecnología los que ha posibilitado la generalización de los controles a tiempo real en la aplicación de los Sistemas Expertos. Este tipo de control aumenta de manera significativa.
6.3 Tendencias futuras
Tendencias futuras de los Sistemas expertos.El mercado de herramientas para el desarrollo de SE está sufriendo una profunda transformación debido a una reorganización en el mercado informático y al cambio de estrategia de las compañías dedicadas al desarrollo de estas herramientas. Son cada vez más las compañías que antaño se dedicaban exclusivamente a la inteligencia artificial y que han decidido introducirse en otros mercados más amplios. Esto ha provocado una confusión que irá en aumento a medida que las empresas que integraban el grupo del mercado de la inteligencia artificial pasen a comercializar otro tipo de productos.
El mercado se ha ido reconfigurando aprovechando las experiencias del pasado y el avance tecnológico. Así se ha pasado de utilizar máquinas específicas (por ejemplo máquinas LISP) a usar ordenadores comunes (estaciones de trabajo, ordenadores personales, etc.). Las aplicaciones eran muy específicas y ahora el ámbito es mucho más amplio. Los sistemas basados en el conocimiento estaban pensados para trabajar de forma aislada y ahora se conciben integrados con otros sistemas. Y, finalmente, el número de personas formadas en estas técnicas es mucho mayor que las existentes hace unos años. Un análisis del mercado actual lleva a distinguir seis categorías de herramientas en función de la plataforma de desarrollo y de operación que lo estructuran:
Clasificaciones posibles:
Según plataformas
Según herramientas de desarrollo:
Lenguajes (LISP, PROLOG, C++,...)
"Shell" (utilizando esos entornos)
CBR
Otra clasificación:
Herramientas de propósito general
Herramientas de dominio.
Las herramientas de desarrollo de sistemas basados en el conocimiento se pueden clasificar de varias formas.
Según la plataforma de desarrollo y de operación que lo estructuran podemos distinguir cuatro tipos:
· Herramientas para PCs y Macintosh: Hasta hace poco, las herramientas que existían para estos entornos estaban orientadas al desarrollo de sistemas pequeños y prototipos. Actualmente, y dado el aumento de la potencia de los PCs, hay herramientas que antes sólo funcionaban en estaciones de trabajo y ahora tienen versiones para PC.
· Herramientas para estaciones de trabajo: Aunque el número de herramientas en este sector no ha sufrido grandes variaciones, la aparición de nuevas herramientas catalogadas como herramientas orientadas a dominios específicos podrían incluirse en esta categoría. Este mercado presenta el mayor volumen de ventas, y puede ser considerado sin duda, junto con el de los PCs, el que tiene más proyección de futuro. De hecho, aquellas compañías que no ofrecen una buena herramienta para estaciones de trabajo están realizando esfuerzos para colocar en el mercado un producto capaz de competir en este entorno.
· Herramientas para mainframes: El número de herramientas en este mercado es pequeño y se prevé que en los próximos años descienda lenta pero continuamente hasta desaparecer, ya que las compañías que los comercializan se están desplazando hacia las herramientas para estaciones de trabajo y PCs.
· Herramientas Lisp: Son ordenadores con arquitecturas especiales para ejecutar programas Lisp. El interés por herramientas Lisp continúa descendiendo así como el número de productos en el mercado. Se prevé un descenso continuo en los próximos años.
Según el alcance de la herramienta podemos dividirlas en:
· Herramientas de Propósito General. No están especialmente concebidas para tratar problemas específicos. Tienen como ventaja su capacidad para ser empleadas en gran variedad de problemas.
· Orientadas a dominios y problemas específicos. Esta última categoría representa el mayor grupo de herramientas en el mercado. Se trata de herramientas que abordan problemas o áreas específicos. Ahorran mucho tiempo de desarrollo en el caso de ser aplicadas en los dominios para los que se diseñaron. El número permanece estable aunque con perspectivas de crecimiento en los años venideros debido al gran interés existente en este tipo de herramientas.
Por último podemos realizar una última división atendiendo al lenguaje o técnica para el que sirve la herramienta y así podemos distinguir entre:
· Herramientas CBR (Case-Based Reasoning): La demanda de herramientas de este tipo se está consolidando mediante la mejora de la calidad de sus productos con más utilidades y nuevos componentes. Son herramientas de razonamiento basadas en casos, para a partir de ellos inducir las reglas y criterios por similitud.
· Herramientas para lenguajes Lisp, Prolog, C++. Son entornos de desarrollo; proporcionan las utilidades necesarias ( editores, compiladores, depuradores ) para poder programar de forma cómoda en estos lenguajes. ( Se incluye el C++ porque cada vez hay más programas basados en el conocimiento que se desarrollan en él).
· Shells. Son entornos de desarrollo completos y particulares. Contienen un motor de inferencia y utilizan métodos propios de representación del conocimiento que pueden ser más o menos parecidos al Lisp o al Prolog. Sirven principalmente para el desarrollo de prototipos aunque también pueden utilizarse como herramientas finales. Algunos ejemplos son CLIPS, ART, G2.
Algunos de los campos actuales de investigación y de aplicación son:
· Aprendizaje: Se pretende que sea el propio ordenador el que adquiera el conocimiento. Existen muchas técnicas aplicables o no dependiendo del problema: aprendizaje inductivo, deductivo, redes neuronales, algoritmos genéticos.
· Redes Neuronales: Consisten en nodos conectados con otros mediante enlaces, simulando las conexiones que forman las neuronas en el cerebro. Se investiga su utilización en muchas áreas; Visión Artificial, Razonamiento, Aprendizaje, Comprensión Lenguaje Natural.
· Redes Bayesianas: Técnica para tratar el razonamiento con incertidumbre. Su base es el teorema de Bayes que es el método matemático exacto para tratar las probabilidades. Consiste en una red donde los nodos son hechos ciertos o no y los enlaces entre los nodos son las probabilidades condicionadas de unos hechos con respecto a otros. Propagando las probabilidades a través de la red, se pueden obtener los resultados más probables a partir de los hechos que se conocen (razonamiento). El ejemplo típico son los sistemas de diagnóstico médico.
· Algoritmos genéticos: Son métodos de aprendizaje inspirados en la evolución natural, y que utilizan las nociones de individuos, apareamiento, recombinación de cromosomas, mutación genética, adaptación y selección natural. Son la base de las investigaciones en Vida Artificial.
Otras técnicas que se pueden mencionar son la utilización de Ontologías para representar el conocimiento, Data Mining para obtención de conocimiento en bases de datos y los Agentes Inteligentes para la recuperación de información en Internet.