Sistemas Expertos

30.01.2013 16:47

 

Ø  Definición de un sistema experto

 

Un Sistema Experto es aquel capaz de almacenar el conocimiento de un experto en una especialidad determinada y limitada, y a su vez de solucionar problemas mediante la inducción- deducción lógica.

Los sistemas expertos son programas de computación que capturan el conocimiento de un experto y tratan de imitar su proceso de razonamiento cuando resuelven los problemas en un determinado dominio.

Los sistemas expertos incorporan en la base de conocimiento del sistema el conocimiento de un experto e intentan simular el razonamiento humano por medio de un conjunto de programas de computación.

 

Ø  Historia del desarrollo de sistemas de expertos

 

A comienzos de los años 50 el conocido Alan Mathinsong Turing  publicó "Inteligencia y Funcionamiento de las Máquinas" con el fin de demostrar hasta qué punto estas tienen inteligencia.

En estos años se dieron varias definiciones de lo que significaba la inteligencia en una máquina. Sobre lo que denominamos la inteligencia artificial.

Definición de Elaim Reich:

La inteligencia artificial es el estudio de cómo hacer que los ordenadores hagan cosas que, en estos momentos, hace mejor el hombre.

Definición de Alexander Sporl (1971):

En su obra  "Sporls-Computerbuch": Bajo Inteligencia entiendo la capacidad de un ser vivo o una máquina de ordenar informaciones, extensas observaciones, experiencias, descubrir interrelaciones para abstraer de esta forma cosas y poderlas ligar entre sí

Uno de los primeros sistemas expertos se llamó Dendral y era capaz de calcular o descubrir hechos relativos a la estructura molecular a partir de unos datos químicos sin elaborar. Otros sistemas expertos famosos son MYCIN que diagnostica enfermedades de la sangre y que sugiere un tratamiento y PUFF, un sistema similar pero para enfermedades de pulmón.

En el año 1950 el campo de la automática recibe un gran impulso cuando Wiener desarrolla el principio de la retroalimentación. La teoría de la retroalimentación es base fundamental de los sistemas de control.

En 1955 Newell y Simon desarrollan la Teoría de la lógica. Este desarrollo permitió desarrollar un programa que exploraba la solución a un problema utilizando ramas y nudos, seleccionando únicamente las ramas que más parecían acercarse a la solución correcta del problema.

En 1956, se celebra una conferencia en Vermont (USA) de gran trascendencia en el desarrollo de la I.A. John McCarthy propone por primera vez el uso del término "Inteligencia Artificial" para denominar el estudio del tema.

En 1957, aparece la primera versión de "The General Problem Solver" (GPS, Solucionador general de problemas), un programa capaz de solucionar problemas de sentido común pero no problemas del mundo real como diagnósticos médicos. El GPS utilizaba la teoría de la retroalimentación de Wiener.

En 1958 McCarthy anuncia su nuevo desarrollo el lenguaje LISP (LISt Procesing), el lenguaje de elección para todos aquellos desarrolladores inmersos en el estudio de la IA.

En 1963, el Instituto Tecnológico de Massachussets (MIT) recibe una subvención de 2,2 millones de dólares del gobierno de los Estados Unidos en concepto de investigación en el campo de la IA. De esa forma, se comprueba la importancia que el Gobierno concede a la investigación dentro de ese campo.

En 1965 aparece DENDRAL, el primer sistema experto. Es en ese año cuando Feigenbaum entra a formar parte del departamento de informática de Stanford. Allí conoció a Joshua Lederberg, el cual quería averiguar cuál era la estructura de las moléculas orgánicas completas. El objetivo de DENDRAL fue estudiar un compuesto químico. El descubrimiento de la estructura global de un compuesto exigía buscar en un árbol las posibilidades, y por esta razón su nombre es DENDRAL que significa en griego "árbol". Antes de DENDRAL los químicos solo tenían una forma de resolver el problema, estar era tomar unas hipótesis relevantes como soluciones posibles, y someterlas a prueba comparándolas con los datos.

La realización de DENDRAL duró más de diez años (1965-1975). Se le puede considerar el primer sistema experto.

En 1965 también se empezaron a utilizar técnicas para la resolución de problemas que se caracterizaban por la búsqueda heurística como modelo para la resolución de problemas, y con ellas comenzó la investigación y desarrollo de los sistemas expertos.

En 1972, en la Universidad de Standford se desarrolla MYCIN, sistema experto dentro del campo de la medicina para diagnostico de enfermedades infecciosas en la sangre. MYCIN se trataba de un sistema experto para el diagnóstico de enfermedades infecciosas. Desde los resultados de análisis de sangre, cultivos bacterianos y demás datos, el prog rama era capaz de determinar, o en lo menos, sugerir el microorganismo que estaba causando la infección. Después de llegar a una conclusión, MYCIN prescribía una medicación que se adaptaba perfectamente a las características de la persona, tales como el peso corporal de este.

Al mismo tiempo, Davir Marr propone nuevas teorías sobre la capacidad de reconocimiento visual de las diferentes máquinas.

En 1972 aparece el lenguaje PROLOG basado en las teorías de Minsky.

En 1973 se desarrolla el sistema experto llamado TIERESIAS. El cometido de este sistema experto era el de servir de intérprete entre MYCIN y los especialistas que lo manejaban, a la hora introducir nuevos conocimientos en su base de datos. El especialista debía utilizar MYCIN de una forma normal, y cuando este cometiera un error en un diagnóstico (hecho producido por la falta o fallo de información en el árbol de desarrollo de teorías) TEIRESIAS corregiría dicho fallo destruyendo la regla si es falsa o ampliándola si es eso lo que se necesita.

En 1979 aparece XCON, primer programa que sale del laboratorio Su usuario fue la Digital Equipament Corporation (DEC).

El cometido de XCON sería configurar todos los ordenadores que saliesen de la DEC. El proyecto presentó resultados positivos y se empezó a trabajar en el proyecto más en serio en diciembre de 1978.

En abril de 1979 el equipo de investigación que lo había diseñado pensó que ya estaba preparado para salir, y fue entonces, cuando se hizo una prueba real, esperando resolver positivamente un 95% de las configuraciones, este porcentaje tal alto se quedó en un 20% al ser contrastado con la realidad; XCON volvió al laboratorio, donde fue revisado y a finales de ese mismo año funcionó con resultados positivos en la DEC.

En 1980 se instauró totalmente en DEC. Y en 1984, el XCOM había crecido hasta multiplicarse por diez. El XCOM supuso un ahorro de cuarenta millones de dólares al año para la DEC.

Entre los años 80 a 85 se produce la revolución de los Sistemas Expertos

En estos 5 años se crearon diversos sistemas expertos como el DELTA, de General Electric Company, para la reparación de locomotoras diesel y eléctricas. "Aldo en Disco" para la reparación de calderas hidroestáticas giratorias usadas para la eliminación de bacterias.

Se crearon multitud de empresas dedicadas a los sistemas expertos como Teknowledge Inc., Carnegie Group, Symbolics, Lisp Machines Inc., Thinking Machines Corporation, Cognitive Systems Inc. formando una inversión total de 300 millones de dólares. Los productos más importantes que creaban estas nuevas compañías eran las "máquinas Lisp", que se trataba de unos ordenadores que ejecutaban programas LISP con la misma rapidez que en un ordenador central, y el otro producto fueron las "herramientas de desarrollo de sistemas expertos".

En 1987 XCON empieza a no ser rentable. Los técnicos de DEC tuvieron que actualizar XCOM rápidamente llegándose a gastar más de dos millones de dólares al año para mantenimiento y algo parecido ocurrió con el DELTA..También en 1987 aparecieron los microordenadores Apple y compatibles IBM con una potencia parecida a los LISP. El software se transfirió a máquinas convencionales utilizando el lenguaje "C" lo que acabó con el LISP.

A partir de los 90 y con el desarrollo de la informática, se produce un amplio desarrollo en el campo de la IA y los sistemas expertos, pudiéndose afirmar que estos se han convertido en una herramienta habitual en determinadas empresas en la actualidad.

La evolución histórica de los métodos utilizados en el desarrollo de los sistemas expertos también se ha producido a medida que se ha ido desarrollando la IA y los diferentes métodos que se han empleado para su resolución. El desarrollo de lenguajes como LISP y PROLOG condicionó esa evolución, así como investigaciones en diversos campos relacionados. Los primeros sistemas expertos que se desarrollaron en los años 60 eran capaces de resolver solo problemas basados en situaciones determinadas, mediante sistemas de reglas .Es a partir de los 70 cuando se empiezan a resolver problemas basados en situaciones inciertas, basados en medidas difusas al principio y en redes probabilísticas con posterioridad

 

 

 

 

 

 

 

 Primeros Sistemas Expertos y sus aplicaciones

Sistema

Fecha

Autor

Aplicación

DENDRAL

1965

Stanford

Deduce información sobre estructuras químicas

Macsyma

1965

MIT

Análisis matemático complejo

HearSay

1965

Carnegie - Mellon

Interpreta en lenguaje natural un subconjunto del idioma

Mycin

1972

Stanford

Diagnóstico de enfermedades de la sangre

Tieresias

1972

Stanford

Herramienta para la transformación de conocimientos

Prospector

1972

Stanford

Exploración mineral y herramientas de identificación

Age

1973

Stanford

Herramienta para generar Sistemas Expertos

OPS5

1974

Carnegie - Mellon

Herramientas para desarrollo de Sistemas Expertos

Caduceus

1975

University of Pittsburg

Herramienta de diagnóstico para medicina interna

Rosie

1978

Rand

Herramienta de desarrollo de Sistemas Expertos

R1

1978

Carnegie - Mellon

Configurador de equipos d computación para DEC

 

Ø  El papel del conocimiento en los sistemas expertos

 

1.    Con la ayuda de un Sistema Experto, personas con poca experiencia pueden resolver problemas que requieren un "conocimiento formal especializado".

2.    Los Sistemas Expertos pueden obtener conclusiones y resolver problemas de forma más rápida que los expertos humanos. 

3.    Los Sistemas Expertos razonan pero en base a un conocimiento adquirido y no tienen sitio para la subjetividad.

4.    Se ha comprobado que los Sistemas Expertos tienen al menos, la misma competencia que un especialista humano.

5.    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.

 

Ø  Análisis del conocimiento

 

El conocimiento es la comprensión adquirida, implica aprendizaje, concienciación y familiaridad con una o más materias; el conocimiento se compone de ideas, conceptos, hechos y figuras, teorías, procedimientos y relaciones entre ellos, y formas de aplicar los procedimientos a la resolución práctica de problemas.

El conocimiento que ha de funcionar en un SE es el conocimiento heurístico; el conocimiento heurístico es aquel conocimiento que ayuda a las personas u ordenadores a aprender, es el uso de los conocimientos empíricos. Las reglas de pensamiento, los trucos, los procedimientos o cualquier tipo de información que nos ayuda en la resolución de problemas.

La representación del conocimiento es un esquema o dispositivo utilizado para capturar los elementos esenciales del dominio de un problema. Una representación manipulable es aquella que facilita la computación. En representaciones manipulables, la información es accesible a otras entidades que usan la representación como parte de un cómputo.

Debido a la variedad de formas que el conocimiento puede asumir, los problemas involucrados en el desarrollo de una representación del conocimiento son complejos, interrelacionados y dependientes del objetivo. En términos generales, el conocimiento debe estar representado de tal forma que:

§  Capture generalizaciones.

§  Pueda ser comprendido por todas las personas que vayan a proporcionarlo y procesarlo.

§  Pueda ser fácilmente modificado.

§  Pueda ser utilizado en diversas situaciones aún cuando no sea totalmente exacto o completo.

§  Pueda ser utilizado para reducir el rango de posibilidades que usualmente debería considerarse para buscar soluciones.

El conocimiento declarativo puede ser representado con modelos relacionales y esquemas basados en lógica. Los modelos relacionales pueden representar el conocimiento en forma de árboles, grafos o redes semánticas. Los esquemas de representación lógica incluyen el uso de lógica proposicional y lógica de predicados.

Los modelos procedimentales y sus esquemas de representación almacenan conocimiento en la forma de cómo hacer las cosas. Pueden estar caracterizados por gramáticas formales, usualmente implantadas por sistemas o lenguajes procedimentales y sistemas basados en reglas (sistemas de producción).

En forma natural, el ser humano representa el conocimiento simbólicamente: imágenes, lenguaje hablado y lenguaje escrito. Adicionalmente, ha desarrollado otros sistemas de representación del conocimiento: literal, numérico, estadístico, estocástico, lógico.

La ingeniería cognoscitiva ha adaptado diversos sistemas de representación del conocimiento que, implantados en un computador, se aproximan mucho a los modelos elaborados por la psicología cognoscitiva para el cerebro humano. Tradicionalmente la representación del conocimiento conlleva el uso de marcos (frames), redes semánticas, cálculo de predicados o sistemas de producción. Sin embargo, existen otros sistemas para la representación del conocimiento. Entre los principales sistemas se tienen:

§  Lógica Simbólica Formal:

§  Lógica proposicional

§  Lógica de predicados.

§  Reglas de producción.

§  Formas Estructuradas:

§  Redes asociativas.

§  Estructuras frame.

§  Representación orientada a objetos.

 

Ø  Definición de red semántica

 

Una red semántica o esquema de representación en Red es una forma de representación de conocimiento lingüístico en la que los conceptos y sus interrelaciones se representan mediante un grafo. En caso de que no existan ciclos, estas redes pueden ser visualizadas como árboles. Las redes semánticas son usadas, entre otras cosas, para representar mapas conceptuales y mentales.

1. Una Red Semántica es un conjunto de Nodos y Arcos

 

2. Una Red Semántica es una representación grafica del conocimiento.

3. Una Red Semántica es una representación grafica del conocimiento en la que existe una jerarquía de Nodos.

Definición de Nodo.

Un Nodo es identificado por un objeto.

Nodo = objeto

Donde un Objeto puede ser representado por:

1.    Personas

2.    Animales

3.    Eventos

4.    Acciones

5.    Conceptos

6.    Atributos o características que identifican a un objeto.

 

Los Nodos de un Red Semántica están unidos por arcos, los cuales indican la relación que existe entre ellos.

Existen ciertos tipos de Arcos típicos entre los cuales están.

Es-un: El cual usa para identificar que un cierto pertenece a una clase mayor de objeto.

 

Tiene-un: este tipo de arcos se utiliza para identificar que un cierto nodo tiene o pase una cierta característica o atributo o propiedad.

 

 

Ø  Historia y antecedentes de la red semántica

 

Los responsables de los primeros esquemas de representación formalizados fueron Quillian (1968) y Shapiro & Woddmansee (1971). Los esquemas de redes semánticas tienen una fundamentación psicológica muy sólida, por lo que se han realizado numerosos esfuerzos por llevar a cabo implementaciones importantes basadas en ellas.

Las redes semánticas han sido muy utilizadas en Inteligencia Artificial para representar el conocimiento y por tanto ha existido una gran diversificación de técnicas. Los elementos básicos que encontramos en todos los esquemas de redes son:

1.   Estructuras de datos en nodos, que representan conceptos, unidas por arcos que representan las relaciones entre los conceptos.

2.   Un conjunto de procedimientos de inferencia que operan sobre las estructuras de datos.

Básicamente, podemos distinguir tres categorías de redes semánticas:

1.   Redes IS-A, en las que los enlaces entre nodos están etiquetados.

2.   Gráficos conceptuales: en los que existen dos tipos de nodos: de conceptos y de relaciones

3.   Redes de marcos: en los que los puntos de unión de los enlaces son parte de la etiqueta del nodo