A continuacin se revisarn algunos conceptos generales sobre inteligencia:
Inteligencia es la aptitud de crear relaciones. Puede darse de manera puramente sensorial, como en la inteligencia animal. Inteligencia, habilidad para adquirir, comprender y aplicar conocimiento; o como la aptitud para recordar, pensar y razonar.
Los conceptos de inteligencia son relativos y variables pero en general estn relacionados a la capacidad de crear relaciones y generar conocimiento para aplicarlos en la solucin de problemas
1.2 Concepto de Inteligencia Artificial.
Es, en esencia, lograr que una mquina tenga inteligencia propia, es decir: La inteligencia artificial.
Esta es una definicin es muy completa e interesante, pero no es la nica, para algunos otros autores, la Inteligencia Artificial es el estudio de cmo hacer que las computadoras hagan cosas que, en estos momentos, hace mejor el hombre.
1.3 Historia de la Inteligencia Artificial.
En la historia el hombre ha soado con crear mquinas con inteligencia propia, muestra de esto pueden ser: el mito del coloso de Rodas entre los griegos, las estatuas parlantes del medioevo, el androide de Von Kempel en que jug al ajedrez con Napolen, y el motor analtico de Charles Babbage que calculaba logaritmo; sin embargo estos intentos resultaron infructuosos, hasta 1943 cuando la base de la Inteligencia Artificial fue asentada, gracias a Warren Mc Culloch y Walter Pitts, quienes propusieron un modelo de neurona de cerebro humano y animal.
1.4 Campos de la Inteligencia Artificial.
1.5 Los Sistemas Expertos:
Los Sistemas Expertos son el primer resultado operacional de la Inteligencia artificial, pues logran resolver problemas a travs del conocimiento y raciocinio.
Un Sistema Experto (SE), es bsicamente un programa de computadora que lleva a cabo reas que generalmente slo realiza un experto humano; es decir, es un programa que imita el comportamiento humano en el sentido de que utiliza la informacin que le es proporcionada para poder dar una opinin sobre un tema en especial.
1.6 Tipos de Sistemas Expertos.
Por la forma de almacenar conocimiento: se pueden distinguir sistemas basados en reglas y sistemas basados en probabilidad. As en el primer caso, el conocimiento se almacena en forma de hechos y reglas, mientras que el segundo, la base de conocimientos est constituida por hechos y sus dependencias probabilsticas.
Por la naturaleza de la tarea a realizar:
- Diagnostico o Clasificacin - Monitorizacin - Diseo - Prediccin
Por la interaccin del usuario: - Apoyo - Control - Critica
Por la limitacin de tiempo para tomar decisiones: - Tiempo ilimitado: emplean conocimiento casual, que busca orgenes de un problema que ha ocurrido y cuyo anlisis no necesita ser inmediato. - Tiempo limitado (tiempo real): necesitan actuar controlando o monitorizando dispositivos y que han de tomar decisiones inmediatas
Por la variabilidad temporal del conocimiento: - Estticos - Dinmicos
Por la naturaleza del conocimiento almacenado: - Basado en experiencia - Basado en relaciones causa-efecto.
Por la certeza de la informacin: - Completa o perfecta - Imperfecta
1.7 Desarrollo histrico de los Sistemas Expertos.
Surgen a mediados de los aos sesenta Los primeros investigadores que desarrollaron programas basados en leyes de razonamiento fueron Alan Newell y Herbert Simon, quienes desarrollaron el GPS (General Problem Solver).
El primer SE que se aplic a problemas ms reales fue desarrollado en 1965 con el fin de identificar estructuras qumicas: el programa se llam DENDRAL. Lo que este Sistema Experto haca, al igual que lo hacan los expertos de entonces, era tomar unas hiptesis relevantes como soluciones posibles, y someterlas a prueba comparndolas con los datos.
CAPITULO II
GENERALIDADES DE LOS SISTEMAS EXPERTOS
2.1 Introduccin.
Los Sistemas Expertos se han definido como aquellos programas que se basan en el conocimiento y tratan de imitar el razonamiento de un experto para resolver un problema de un tpico definido.
2.2 Definicin de Sistema Experto.
En el Congreso Mundial de IA Feigenbaum se defini a los SE como:
- Un programa de computador inteligente que usa el conocimiento y procedimientos de inferencia para resolver problemas que son lo suficientemente difciles como para requerir la intervencin de un experto humano para su resolucin.
2.3 Los expertos humanos.
Un experto humano es alguien que sabe mucho sobre un tema determinado y que puede dar un consejo adecuado. Esta experiencia slo se adquiere tras un largo aprendizaje y a base de mucha experiencia.
2.4 Diferencias entre un experto y un no experto humano.
2.5 Diferencias entre un Sistema Experto y un programa tradicional.
2.6 Diferencias entre un sistema experto y un experto humano.
2.7 Ventajas de los Sistemas Expertos.
- Estn siempre disponibles a cualquier hora del da y de la noche, y de forma - interrumpida. - Mantiene el humor. - Pueden duplicarse (lo que permite tener tantos SE como se necesiten). - Pueden situarse en el mismo lugar donde sean necesarios. - Permiten tener decisiones homogneas efectuadas segn las directrices que se les - fijen. - Son fciles de reprogramar. - Pueden perdurar y crecer en el tiempo de forma indefinida. - Pueden ser consultados por personas u otros sistemas informticos.
2.8 Forma en que los usuarios interactan con los Sistemas Expertos. - Verificador. - Tutor. - Alumno. - Cliente.
2.9 Sistema Experto vs. Sistema Clsico.
CAPITULO III
REPRESENTACIN DEL CONOCIMIENTO.
3.1 Introduccin.
En Ciencias de la Informacin, se acostumbra a definir un continuo progresivamente complejo, integrado por los datos, la informacin, el conocimiento y la sabidura. As, se define al conocimiento como el conjunto organizado de datos e informacin destinados a resolver un determinado problema.
La ciencia obtiene conocimiento siguiendo un mtodo denominado mtodo cientfico o mtodo experimental, y al conocimiento as obtenido se lo denomina conocimiento cientfico.
3.2 Definicin de conocimiento.
El conocimiento es la comprensin adquirida, implica aprendizaje, concienciacin y familiaridad con una o ms materias; el conocimiento se compone de ideas, conceptos, hechos y figuras, teoras, procedimientos y relaciones entre ellos, y formas de aplicar los procedimientos a la resolucin prctica de problemas.
En trminos 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 fcilmente modificado. Pueda ser utilizado en diversas situaciones aun cuando no sea totalmente exacto o completo. Pueda ser utilizado para reducir el rango de posibilidades que usualmente debera considerarse para buscar soluciones.
3.3 Lgica Proposicional.
La lgica proposicional permite el razonamiento a travs de un mecanismo que primero evala sentencias simples y luego sentencias complejas, formadas mediante el uso de conectivos proposicionales.
3.4 Lgica de Predicados.
La lgica de predicados est basada en la idea de que las sentencias realmente expresan relaciones entre objetos, as como tambin cualidades y atributos de tales objetos. Los objetos pueden ser personas, objetos fsicos, o conceptos. Tales cualidades, relaciones o atributos, se denominan predicados. Los objetos se conocen como argumentos o trminos del predicado.
3.5 Reglas de Produccin.
La regla es la forma ms comn de representar el conocimiento, debido a su gran sencillez y a que es la formulacin ms inmediata del principio de causalidad. Una regla consta de un conjunto de acciones o efectos (una o ms) que son ciertas cuando se cumplen un conjunto de condiciones o causas.
3.6 Redes Asociativas.
Las redes asociativas se caracterizan por representar el conocimiento en forma grfica. Agrupan una porcin de conocimiento en dos partes: objetos y relaciones entre objetos. Los objetos se denominan tambin nodos (elementos del conocimiento) y las relaciones entre nodos se denominan enlaces o arcos. Cada nodo y cada enlace en una red semntica, deben estar asociados con objetos descriptivos.
3.7 Estructuras frame.
Una plantilla (frame) es una estructura de datos apropiada para representar una situacin estereotpica. Las plantillas organizan el conocimiento en objetos y eventos que resultan apropiados para situaciones especficas.
3.8 Representacin orientada a objetos.
- En las plantillas, a los programas y a los datos se los trata como dos entidades relacionadas separadas. - Los demons de las plantillas sirven slo para computar valores para las diversas ranuras o para mantener la integridad de la base de conocimientos cada vez que una accin de alguna plantilla, afecta a otra
CAPITULO IV
COMPONENTES DE UN SISTEMA EXPERTO
4.1 Introduccin.
La arquitectura de un Sistema Experto est constituida por dos componentes principales de cualquier Sistema Experto son una Base de conocimientos y un Programa de inferencia, o tambin llamado Motor de inferencias.
4.2 Base de conocimiento.
- La base de conocimientos del Sistema Experto con respecto a un tema especfico para el que se disea el sistema. - Las bases de conocimiento (KB: Knowledge Base) pertenecen a una etapa muy posterior. Surgieron a partir de la investigacin en IA como respuesta a las necesidades que las aplicaciones de esta disciplina planteaban.
4.3 Motor de inferencia.
Es el que combina los hechos y las preguntas particulares, utilizando la base de conocimiento, seleccionando los datos y pasos apropiados para presentar los resultados.
4.4 Componentes detallados de un Sistema Experto.
Esta definicin de las partes de un Sistema Experto es muy general, ahora se presenta una serie de componentes ms detallados de un SE:
- Subsistema de control de coherencia. - Subsistema de adquisicin de conocimiento.
4.5. Arquitectura de un Sistema Experto.
No existe una estructura de sistema experto comn. Sin embargo, la mayora de los sistemas expertos tienen unos componentes bsicos: base de conocimientos, motor de inferencia, base de datos e interfaz con el usuario.
4.6. Requerimientos para un Sistema Experto.
La construccin de un SE no es una tarea sencilla, debido a que involucra mucha participacin de distintas personas, cada una de las cuales aportar algo para que el SE a desarrollar sea robusto y fcil de usar y mantener.
Para desarrollar un SE primero se debe conocer el equipo de gente necesario, despus los mtodos que utiliza ese equipo de gente y por ultimo cmo prueban y construyen prototipos de software para terminar en el sistema final.
A continuacin se detalla cada componente del equipo dentro del desarrollo y cul es la funcin de cada uno: - El experto. - El ingeniero del conocimiento. - El usuario.
4.7 Metodologas para la construccin de Sistemas Expertos.
4.7.1 Metodologa de Prototipos. El diseo y la especificacin requieren una temprana determinacin de la interfaz del software y de la funcionalidad de los componentes.
4.7.2 Metodologa Orientada a Objetos. La programacin orientada a objetos (OOP en adelante) es un tipo de programacin que provee una manera de modularizar programas estableciendo reas de memoria particionadas para datos y procedimientos: - Abstraccin. - Encapsulacin. - Polimorfismo. - Herencia.
4.8 Lenguajes utilizados para la construccin de Sistemas Expertos.
- LISP: est diseado para manejar smbolos matemticos - CLIPS: ofrece un entorno completo para su construccin basado en reglas y objetos. - Prolog: es un lenguaje de programacin que se centra alrededor de un conjunto pequeo de mecanismos, incluyendo reconocimiento de patrones, estructuras de datos basadas en rboles y bactraking (retroceso) automtico. - Smalltalk: fue el primer lenguaje de programacin que fue diseado para basarse exclusivamente en objetos. - C y C++
4.9 Herramientas y shells utilizados en la construccin de SE.
- Gold Works II: se ejecuta bajo LISP y utiliza la metodologa orientada a objetos. - ART: es una herramienta que tiene un nmero de caractersticas poderosas para el desarrollo de SE. - LOOPS. - KEE. - Humble. - EMYCIN.