Inteligencia Artificial

61
1 LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA Inteligencia Artificial 1. Objetivos. Dar a conocer a que nos referimos cuando hablamos de Inteligencia Artificial, tanto como sus fundamentos. Mostrar la evolución de la IA y sus lenguajes a través de la historia. Conocer las características, filosofía de la IA. Informar acerca de los lenguajes que son partes de la Inteligencia Artificial Conocer la importancia de la IA mediante sus aplicaciones y en los campos en que se emplea, a si como sus problemas. 2. Introducción. 2.1 Fundamentos de la Inteligencia Artificial En primer lugar, revisemos algunas definiciones generales de inteligencia, antes de intentar definir inteligencia artificial. Inteligencia es la aptitud de crear relaciones. Esta creación puede darse de manera puramente sensorial, como en la inteligencia animal; también puede darse de manera intelectual, como en el ser humano, que pone en juego el lenguaje y los conceptos. También se la puede conceptuar como la habilidad para adquirir, comprender y aplicar

Transcript of Inteligencia Artificial

Page 1: Inteligencia Artificial

1LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Inteligencia Artificial1. Objetivos.

Dar a conocer a que nos referimos cuando hablamos de Inteligencia

Artificial, tanto como sus fundamentos.

Mostrar la evolución de la IA y sus lenguajes a través de la historia.

Conocer las características, filosofía de la IA.

Informar acerca de los lenguajes que son partes de la Inteligencia Artificial

Conocer la importancia de la IA mediante sus aplicaciones y en los

campos en que se emplea, a si como sus problemas.

2. Introducción.

2.1 Fundamentos de la Inteligencia Artificial

En primer lugar, revisemos algunas definiciones generales de inteligencia, antes

de intentar definir inteligencia artificial.

Inteligencia es la aptitud de crear relaciones. Esta creación puede darse de

manera puramente sensorial, como en la inteligencia animal; también puede darse

de manera intelectual, como en el ser humano, que pone en juego el lenguaje y

los conceptos. También se la puede conceptuar como la habilidad para adquirir,

comprender y aplicar conocimiento; o como la aptitud para recordar, pensar y

razonar.

La IA es una nueva generación de tecnología informática, caracterizada no sólo

por su arquitectura (hardware), sino también por sus capacidades. El énfasis de

generaciones previas fue en las computaciones numéricas para aplicaciones

científicas o de negocios. La nueva generación de tecnología informática incluye

además la manipulación simbólica, con el objetivo de emular el comportamiento

inteligente; y, la computación en paralelo, para tratar de conseguir resultados

prácticamente en tiempo real. La capacidad predominante de la nueva generación,

Page 2: Inteligencia Artificial

2LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

también conocida como la Quinta Generación, es la habilidad de emular (y tal vez

en algunos casos superar) ciertas funciones inteligentes del ser humano. Por

ejemplo:

2.1.1 Aprendizaje:

Captación automática de conocimientos.

2.1.2 Razonamiento:

Sistemas basados en conocimientos.

Bases de datos inteligentes.

Prueba de teoremas y juegos.

2.1.3 Percepción:

Comprensión de lenguaje natural.

Interpretación de escenas visuales (Visión por computadora).

2.1.4 Locomoción y Manipulación:

Realizar procesos mecánicos y tareas manuales (Robótica).

2.1.5 Creación:

Generación, verificación, depuración y optimización automática de

programas.

Algunas de las tareas que estos sistemas realizan en el campo de la IA son:

2.1.6 Tareas generales

Percepción: Visión, Fonemas.

Lenguaje Natural: Comprensión, generación y traducción.

Razonamiento de sentido común.

Control de robots.

2.1.6.1 Tareas formales

Juegos: Ajedrez, Backgammon, Damas.

Matemáticas: Geometría, Lógica, Cálculo Integral.

2.1.6.2 Tareas expertas

Ingeniería: Diseño, Localización de fallas, Planeamiento.

Análisis Científico. Diagnóstico Médico.

Análisis Financiero.

Page 3: Inteligencia Artificial

3LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

2.2 Preguntas Fundamentales de la Inteligencia Artificial y su filosofía

1. ¿Cuáles son las suposiciones subyacentes acerca de la inteligencia?

2. ¿Cuáles son las técnicas útiles para la resolución de problemas en IA?

3. ¿A qué nivel de detalle se trata de modelar la inteligencia humana?

4. ¿Cómo se puede saber que se ha tenido éxito en el desarrollo de un sistema

inteligente?

5. ¿En qué consiste la inteligencia? ¿Cómo la reconoceríamos en un objeto no

humano, si la tuviera?

6. ¿Qué sustancia y organización se requiere? ¿Es posible que una criatura

hecha de metal, por ejemplo, posea una inteligencia comparable a la humana?

7. Aunque una criatura no orgánica pudiera solucionar problemas de la misma

manera que un humano, ¿tendría o podría tener conciencia y emociones?

8. Suponiendo que podemos hacer robots con una inteligencia comparable a la

nuestra, ¿debemos hacerlo?

Como ocurre casi siempre en el caso de una ciencia recién creada, la inteligencia

artificial aborda tantas cuestiones confundibles en un nivel fundamental y

conceptual que, adjunto a lo científico, es necesario hacer consideraciones desde

el punto de vista de la filosofía. Gran parte de esta ciencia se junta con temas en

la filosofía de la mente, pero hay ciertos temas particulares a la IA. Por ejemplo:

Durante más de 2000 años de tradición en filosofía, han ido surgiendo diversas

teorías del razonamiento y del aprendizaje, simultáneamente con el punto de vista

de que la mente se reduce al funcionamiento físico. La psicología ofrece

herramientas que permiten la investigación de la mente humana, así como un

lenguaje científico para expresar las teorías que se van obteniendo. La lingüística

ofrece teorías para la estructura y significado del lenguaje, así como la ciencia de

la computación, de la que se toman las herramientas que permiten que la

Inteligencia Artificial sea una realidad.

Page 4: Inteligencia Artificial

4LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Empezó con el nacimiento de Platón en 428 a. C. y con lo que aprendió de

Sócrates. La temática de su obra fue muy diversa: política, matemática, física,

astronomía y diversas ramas de la filosofía. El filósofo Hubet Dreyfus (1979) afirma

que: Bien podría afirmarse que la historia de la inteligencia artificial comienza en el

año 450 a.C., cuando Platón cita un diálogo en el que Sócrates le pregunta a

Eutidemo: «Desearía saber cuál es la característica de la piedad que hace que

una acción se pueda considerar como pía... y así la observe y me sirva de norma

para juzgar tus acciones y las de otros.»

Los filósofos delimitaron las más importantes ideas relacionadas con la inteligencia

artificial, pero para pasar de allí a una ciencia formal era necesario contar con una

formalización matemática en tres áreas principales: la computación, la lógica y la

probabilidad. La idea de expresar un cálculo mediante un algoritmo formal se

remonta a la época de Jwarizmi, matemático árabe del siglo IX, con cuyas obras

se introdujeron en Europa los números arábigos y el álgebra (de su nombre al-

Jwarizmi deriva la palabra algoritmo).

El hombre se ha aplicado a sí mismo el nombre científico de Homo sapiens como

una valoración de la trascendencia de nuestras habilidades mentales tanto para

nuestra vida cotidiana como para nuestro propio sentido de identidad. Los

esfuerzos del campo de la inteligencia artificial se enfocan en lograr la compresión

de entidades inteligentes. Una de las razones de su estudio es el aprender más de

nosotros mismos. A diferencia de la filosofía y de la psicología, que también se

ocupan de la inteligencia, los esfuerzos de la inteligencia artificial están

encaminados tanto a la construcción de entidades como a su compresión. Otra

razón por la cual se estudia la inteligencia artificial es debido a que ha sido posible

crear sorprendentes y diversos productos de trascendencia. Nadie podría

pronosticar con toda precisión lo que se podría esperar en el futuro, es evidente

que las computadoras que posean una inteligencia a nivel humano tendrán

Page 5: Inteligencia Artificial

5LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

repercusiones muy importantes en nuestra vida diaria así como en el devenir de la

civilización.

El problema que aborda la inteligencia artificial es uno de los más complejos:

¿Cómo es posible que un diminuto y lento cerebro, sea biológico o electrónico,

tenga capacidad de percibir, comprender, predecir y manipular un mundo que en

tamaño y complejidad lo excede con creces?, pero a diferencia de la investigación

en torno al desplazamiento mayor que la velocidad de la luz o de un dispositivo

antigravitatorio, el investigador del campo de la inteligencia artificial cuenta con

pruebas contundentes de que tal búsqueda es totalmente factible.

La inteligencia artificial permite al hombre emular en las máquinas el

comportamiento humano, tomando como base el cerebro y su funcionamiento, de

manera tal que se pueda alcanzar cierto razonamiento creando marionetas

robóticas.

2.3 Raíces

La Inteligencia artificial es un campo interdisciplinario que se deriva de múltiples

raíces, incluyendo contribuciones de la psicología, filosofía, lingüísticas, ingeniería

eléctrica y la ciencia de las computadoras. La intersección entre la psicología y la

inteligencia artificial se centra en las subraeas conocidas como psicología

cognitiva y psico lingüística. La filosofía del lenguaje y la filosofía de la mente. Las

intersecciones con la lingüística incluyen lingüística computacional, psico

lingüística y socio lingüística. Concentraciones mutuas entre la ingeniería eléctrica

y la inteligencia artificial incluyen proceso de imágenes , reconocimiento de

patrones y robótica. Finalmente, la ciencia de las computadoras apoya a la

inteligencia artificial de manera propia y a los campos relacionados de los

sistemas adaptativos.

Page 6: Inteligencia Artificial

6LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

2.4 Definiciones de Inteligencia Artificial

Debido a que la inteligencia artificial tuvo muchos padres no hay un consenso para

definir ese concepto, pero podemos decir que la inteligencia artificial se encarga

de modelar la inteligencia humana en sistemas computacionales.

Puede decirse que la Inteligencia Artificial (IA) es una de las áreas más

fascinantes y con más retos de las ciencias de la computación, en su área de

ciencias cognoscitivas. Nació como mero estudio filosófico y razonístico de la

inteligencia humana, mezclada con la inquietud del hombre de imitar la naturaleza

circundante (como volar y nadar), hasta inclusive querer imitarse a sí mismo.

Sencillamente, la Inteligencia Artificial busca el imitar la inteligencia humana.

Obviamente no lo ha logrado todavía, al menos no completamente. 

Una buena definición de IA es algo elusiva y controversial, fundamentalmente

porque la inteligencia humana no está completamente entendida. Cada libro de

texto en IA propone una definición que enfatiza las diferentes perspectivas que,

cada autor cree, encierra el campo. A continuación se transcriben algunas de

ellas:

La IA es una rama de la ciencia de computación que comprende el estudio y

creación de sistemas computarizados que manifiestan cierta

forma de inteligencia: sistemas que aprenden nuevos

conceptos y tareas, sistemas que pueden razonar y derivar

conclusiones útiles acerca del mundo que nos rodea,

sistemas que pueden comprender un lenguaje natural o

percibir y comprender una escena visual, y sistemas que

realizan otro tipo de actividades que requieren de inteligencia

humana.

Page 7: Inteligencia Artificial

7LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

La IA es una ciencia que trata de la comprensión de la inteligencia y del diseño de

máquinas inteligentes, es decir, el estudio y la simulación de las actividades

intelectuales del hombre (manipulación, razonamiento, percepción, aprendizaje,

creación).

La IA es el estudio de las computaciones que permiten percibir, razonar y actuar.

La IA es un campo de estudio que busca explicar y emular el comportamiento

inteligente en términos de procesos computacionales.

La IA estudia las representaciones y procedimientos que automáticamente

resuelven problemas usualmente resueltos por humanos.

Se define la inteligencia artificial como aquella inteligencia exhibida por artefactos

creados por humanos (es decir, artificial). A menudo se aplica hipotéticamente a

los computadores. El nombre también se usa para referirse al campo de la

investigación científica que intenta acercarse a la creación de tales sistemas.

Se denomina inteligencia artificial (IA) a la rama de las Ciencias de la

Computación dedicada al desarrollo de agentes racionales no vivos.

Para explicar la definición anterior, entiéndase a un agente como cualquier cosa

capaz de percibir su entorno (recibir entradas), procesar tales percepciones y

actuar en su entorno (proporcionar salidas), y entiéndase a la racionalidad como la

característica que posee una elección de ser correcta, más específicamente, de

tender a maximizar un resultado esperado (este concepto de racionalidad es más

general y por ello más adecuado que inteligencia para definir la naturaleza del

objetivo de esta disciplina).

Por lo tanto, y de manera más específica la inteligencia artificial es la disciplina

que se encarga de construir procesos que al ser ejecutados sobre una arquitectura

física producen acciones o resultados que maximizan una medida de rendimiento

determinada, basándose en la secuencia de entradas percibidas y en el

conocimiento almacenado en tal arquitectura.

Page 8: Inteligencia Artificial

8LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

A pesar de la diversidad de conceptos propuestos para la IA, en general todos

coinciden en que la IA trata de alcanzar inteligencia a través de la computación.

Toda computación, requiere de una representación de cierta entidad y de un

proceso para su manipulación.

Desde el punto de vista de los objetivos, la IA puede considerarse en parte como

ingeniería y en parte como ciencia:

Como ingeniería, el objetivo de la IA es resolver problemas reales, actuando

como un conjunto de ideas acerca de cómo representar y utilizar el conocimiento,

y de cómo desarrollar sistemas informáticos.

Como ciencia, el objetivo de la IA es buscar la explicación de diversas clases

de inteligencia, a través de la representación del conocimiento y de la aplicación

que se da a éste en los sistemas informáticos desarrollados.

Para usar la IA se requiere una comprensión básica de la forma en que se puede

representar el conocimiento y de los métodos que pueden utilizar o manipular ese

conocimiento.

2.5 La inteligencia artificial y los sentimientos

El concepto de IA es aún demasiado difuso. Contextualizando, y teniendo en

cuenta un punto de vista científico, podríamos englobar a esta ciencia como la

encargada de imitar una persona, y no su cuerpo, sino imitar al cerebro, en todas

sus funciones, existentes en el humano o inventadas sobre el desarrollo de una

máquina inteligente.

A veces, aplicando la definición de Inteligencia Artificial, se piensa en máquinas

inteligentes sin sentimientos, que «obstaculizan» encontrar la mejor solución a un

problema dado. Muchos pensamos en dispositivos artificiales capaces de concluir

miles de premisas a partir de otras premisas dadas, sin que ningún tipo de

emoción tenga la opción de obstaculizar dicha labor.

En esta línea, hay que saber que ya existen sistemas inteligentes. Capaces de

tomar decisiones «acertadas».

Page 9: Inteligencia Artificial

9LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Aunque, por el momento, la mayoría de los investigadores en el ámbito de la

Inteligencia Artificial se centran sólo en el aspecto racional, muchos de ellos

consideran seriamente la posibilidad de incorporar componentes «emotivos» como

indicadores de estado, a fin de aumentar la eficacia de los sistemas inteligentes.

Particularmente para los robots móviles, es necesario que cuenten con algo similar

a las emociones con el objeto de saber –en cada instante y como mínimo– qué

hacer a continuación [Pinker, 2001, p. 481].

Al tener «sentimientos» y, al menos potencialmente, «motivaciones», podrán

actuar de acuerdo con sus «intenciones» [Mazlish, 1995, p. 318]. Así, se podría

equipar a un robot con dispositivos que controlen su medio interno; por ejemplo,

que «sientan hambre» al detectar que su nivel de energía está descendiendo o

que «sientan miedo» cuando aquel esté demasiado bajo.

Esta señal podría interrumpir los procesos de alto nivel y obligar al robot a

conseguir el preciado elemento [Johnson-Laird, 1993, p. 359]. Incluso se podría

introducir el «dolor» o el «sufrimiento físico», a fin de evitar las torpezas de

funcionamiento como, por ejemplo, introducir la mano dentro de una cadena de

engranajes o saltar desde una cierta altura, lo cual le provocaría daños

irreparables.

Esto significa que los sistemas inteligentes deben ser dotados con mecanismos de

retroalimentación que les permitan tener conocimiento de estados internos, igual

que sucede con los humanos que disponen de propiocepción, interocepción,

nocicepción, etcétera. Esto es fundamental tanto para tomar decisiones como para

conservar su propia integridad y seguridad. La retroalimentación en sistemas está

particularmente desarrollada en cibernética, por ejemplo en el cambio de dirección

y velocidad autónomo de un misil, utilizando como parámetro la posición en cada

instante en relación al objetivo que debe alcanzar. Esto debe ser diferenciado del

conocimiento que un sistema o programa computacional puede tener de sus

estados internos, por ejemplo la cantidad de ciclos cumplidos en un loop o bucle

Page 10: Inteligencia Artificial

10LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

en sentencias tipo do... for, o la cantidad de memoria disponible para una

operación determinada.

A los sistemas inteligentes el no tener en cuenta elementos emocionales les

permite no olvidar la meta que deben alcanzar. En los humanos el olvido de la

meta o el abandonar las metas por perturbaciones emocionales es un problema

que en algunos casos llega a ser incapacitante. Los sistemas inteligentes, al

combinar una memoria durable, una asignación de metas o motivación, junto a la

toma de decisiones y asignación de prioridades con base en estados actuales y

estados meta, logran un comportamiento en extremo eficiente, especialmente ante

problemas complejos y peligrosos.

En síntesis, lo racional y lo emocional están de tal manera interrelacionados entre

sí, que se podría decir que no sólo no son aspectos contradictorios sino que son –

hasta cierto punto– complementarios.

3. Contenido.

3.1 Historia de la inteligencia artificial

La idea de algo parecido a la inteligencia artificial existe desde hace millones de

años. El primer hombre primitivo que tomo conciencia de su propia existencia, y de

que era capaz de pensar, seguramente se pregunto como funcionaria su

pensamiento y posteriormente llegaría a la idea de un "creador superior". Por lo

tanto, la idea de que un ser inteligente cree a otro, la idea de un diseño virtual para

la inteligencia, es tan remota como la

toma de conciencia del ser humano.

Los juegos matemáticos antiguos,

como el de la torres de Hanói (aprox. 3000ac), demuestran el interés por la

búsqueda de un bucle resolutor, una IA capaz de ganar en los mínimos

movimientos posibles.

Page 11: Inteligencia Artificial

11LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Las ideas más básicas se remontan a los griegos, antes de Cristo.

Aristóteles (384-322 a. C.) fue el primero en describir un conjunto de reglas

que describen una parte del funcionamiento de la mente para obtener

conclusiones racionales, y Ctesibio de Alejandría (250 a. C.) construyó la

primera máquina auto controlada, un regulador del flujo de agua (racional

pero sin razonamiento).

En 1903 Lee De Forest inventa el tríodo (también llamados bulbo o válvula

de vacio). Podría decirse que la primera gran máquina inteligente diseñada

por el hombre fue el computador ENIAC, compuesto por 18.000 válvulas de

vacío, teniendo en cuenta que el concepto de "inteligencia" es un término

subjetivo que depende de la inteligencia y la tecnología que tengamos en

esa época. Un indígena del amazonas en el siglo 20 podría calificar de

inteligente un tocadiscos, cuando en verdad no lo es tanto.

En 1315 Ramon Llull en su libro Ars magna tuvo la idea de que el

razonamiento podía ser efectuado de manera artificial.

1928. John Von Neuman desarrolla su teorema "mínimos y máximos"

utilizado posteriormente en juegos.

En 1937, el matemático inglés Alan Mathison Turing (1912-1953) publicó un

artículo de bastante repercusión sobre los "Números Calculables", que

puede considerarse el origen oficial de la Informática Teórica. En este

artículo, introdujo la Máquina de Turing, una entidad matemática abstracta

que formalizó el concepto de algoritmo y resultó ser la precursora de las

computadoras digitales. Con ayuda de su máquina, Turing pudo demostrar

que existen problemas irresolubles, de los que ningún ordenador será

capaz de obtener su solución, por lo que a Alan Turing se le considera el

padre de la teoría de la computabilidad. También se le considera el padre

de la Inteligencia Artificial, por su famosa Prueba de Turing, que permitiría

comprobar si un programa de ordenador puede ser tan inteligente como un

ser humano.

Page 12: Inteligencia Artificial

12LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

En 1943 Warren McCulloch y Walter Pitts presentaron su modelo de

neuronas artificiales, el cual se considera el primer trabajo del campo, aun

cuando todavía no existía el término. Los primeros avances importantes

comenzaron a principios de los años 1950 con el trabajo de Alan Turing, a

partir de lo cual la ciencia ha pasado por diversas situaciones.

1945. Vannevar Bush publica "As we may think ...", o "Cabría imaginar ... ",

en Atlantic Monthly el cual sienta las bases de lo que hoy se conoce como

Hipertexto, Multimedia e Hipermedia.

1949. Shannon desarrolla la Teoría de la Información base fundamental de

la Informática y varias de sus áreas. 1950 Shannon propone el primer

programa de ajedrez.

1950. Turing pública "Computing machinery and Intelligence".

En 1951 William Shockley inventa el transistor de unión. El invento del

transistor hizo posible una nueva generación de computadoras mucho más

rápidas y pequeñas.

En 1956, se acuño el término "inteligencia artificial" en Dartmouth durante

una conferencia convocada por McCarthy, a la cual asistieron, entre otros,

Minsky, Newell y Simon. En esta conferencia se hicieron previsiones

triunfalistas a diez años que jamás se cumplieron, lo que provocó el

abandono casi total de las investigaciones durante quince años.

1956. Newell, Shaw, y Simon crean "IPL-11" el primer lenguaje de

programación para IA. Newell, Shaw, y Simon crean "The Logic Theorist"

para la resolución de problemas matemáticos.

En 1957 Newell y Simon continúan su trabajo con el desarrollo del General

Problem Solver (GPS). GPS era un sistema orientado a la resolución de

problemas. Chomsky escribe "estructuras Sintácticas".

En 1958 John McCarthy desarrolla en el Instituto de Tecnología de

Massachusetts (MIT), el LISP. Su nombre se deriva de LISt Processor.

LISP fue el primer lenguaje para procesamiento simbólico.

Page 13: Inteligencia Artificial

13LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

A finales de los 50 y comienzos de la década del 60 Robert K. Lindsay

desarrolla «Sad Sam», un programa para la lectura de oraciones en inglés y

la inferencia de conclusiones a partir de su interpretación.

1959. EL programa de ajedrez de Samuel gana juegos contra grandes

jugadores. Rosenblatt introduce el Perceptrón.

1963. ARPA da un fondo de investigación de dos millones de dólares al

laboratorio de IA del MIT. Minsky escribe "Steps toward Artificial

Intelligence". Quillian desarrolla las redes semánticas como modelo de

representación del conocimiento.

En 1964 Bertrand Raphael construye el sistema SIR (Semantic Information

Retrieval) el cual era capaz de inferir conocimiento basado en información

que se le suministra. Bobrow desarrolla STUDENT.

1964. Se comienza el desarrollo de BBNLisp en BBN.

A mediados de los años 60, aparecen los sistemas expertos, que predicen

la probabilidad de una solución bajo un set de condiciones. Por ejemplo

DENDRAL, iniciado en 1965 por Buchanan, Feigenbaum y Lederberg, el

primer Sistema Experto, que asistía a químicos en estructuras químicas

complejas euclidianas, MACSYMA, que asistía a ingenieros y científicos en

la solución de ecuaciones matemáticas complejas.

1965. Iva Sutherland hace demostración del primer monitor en forma de

casco para realidad virtual. Dreyfus argumenta en contra de la IA.

Posteriormente entre los años 1968-1970 Terry Winograd desarrolló el

sistema SHRDLU, que permitía interrogar y dar órdenes a un robot que se

movía dentro de un mundo de bloques.

En 1968 Minsky publica Semantic Information Processing. Seymour Papert,

Danny Bobrow y Wally Feurzeig, desarrollan el lenguaje de programación

LOGO.

En 1969 Alan Kay desarrolla el lenguaje Smalltalk en Xerox PARC y se

publica en 1980. Minsky y Papert critican el Perceptron.

Page 14: Inteligencia Artificial

14LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

1970. Colmerauer desarrolla PROLOG quizás el lenguaje de Inteligencia

Artificial más popular actualmente.

1972. Dreyfus publica "What Computers Can't Do". Y se desarrolla el

lenguaje SmallTalk en Xerox PARC.

En 1973 Alain Colmenauer y su equipo de investigación en la Universidad

de Aix-Marseille crean PROLOG (del francés PROgrammation en LOGique)

un lenguaje de programación ampliamente utilizado en IA. Shank y Abelson

desarrollan los guiones, o scripts, pilares de muchas técnicas actuales en

Inteligencia Artificial y la informática en general.

En 1974 Edward Shortliffe escribe su tesis con MYCIN, uno de los Sistemas

Expertos más conocidos, que asistió a médicos en el diagnóstico y

tratamiento de infecciones en la sangre. Minsky publica "A Framework for

Representing Knowledge". Se establece la red SUMEX-AIM para

aplicaciones de la Inteligencia Artificial en medicina.

1975. La DARPA lanza un programa de financiación para el procesamiento

y comprensión de imágenes.

1976. Greenblatt crea "CONS" el primer ordenador con arquitectura para

LISP. Lenat introduce su "Automated Matematician".

1978. Xerox comienza a desarrolla ordenadores LISP.

1979. Raj Reddy funda el Instituto de Robótica en la Universidad Carnegie

Mellon.

En las décadas de 1970 y 1980, creció el uso de sistemas expertos, como

MYCIN: R1/XCON, ABRL, PIP, PUFF, CASNET, INTERNIST/CADUCEUS,

etc. Algunos permanecen hasta hoy (shells) como EMYCIN, EXPERT,

OPSS.

1980. Primera conferencia de la AAAI (American Association on Artificial

Intelligence) en Stanford, y primera Conferencia de Lisp y programación

funcional de la ACM.

1981. Kazuhiro Fuchi anuncia el proyecto japonés de quinta generación de

computadores. Que dio lugar al auge de los sistemas expertos, pero que no

Page 15: Inteligencia Artificial

15LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

alcanzó muchos de sus objetivos, por lo que este campo ha sufrido una

nueva detención en los años noventa. El PSL (Portable Standard Lisp) se

puede ejecutar sobre varias plataformas. Se construyen máquinas LISP por

Xerox, LMI y Simbolics, las cuales soportan Programación Orientada a

Objetos. Se sientan las bases del Common Lisp con aspectos comunes de

las familias: Lisp machine Lisp, MacLisp, NIL, S-1 Lisp, Spice Lisp y

Scheme.

1982. John Hopfield resucita las redes neuronales.

1983. Feigenbaum y McCorduck publican "The Fifth Generation".

1984. Steele publica "Common Lisp the Language". La comunidad europea

comienza el programa ESPRIT. Gold Hill crea el Golden Commom Lisp.

1985. General Motors y Campbell's Soup dejan de usar Lisp para sus

Sistemas Expertos. Se funda el Media Lab en el MIT. Minsky publica "The

Society of Mind". Teknowledge, una compañía dedicada al desarrollo de

sistemas en Inteligencia Artificial, abandona Lisp y Prolog por el lenguaje C.

1986. Primera conferencia de la OOPSLA sobre programación orientada a

objetos, en la cual se presenta CLOS, Lisp Orientado a Objetos, como

lenguaje independiente de la comunidad de Lisp e IA. IBM desarrolla shells

para Lisp, Prolog y Sistemas expertos y entra a la AAAI. McClelland y

Rumelhart's publican "Parallel Distributed Processing" (Redes Neuronales).

En 1987 Martin Fischles y Oscar Firschein describieron los atributos de un

agente inteligente. Al intentar describir con un mayor ámbito (no solo la

comunicación) los atributos de un agente inteligente, la IA se ha extendido a

muchas áreas que han creado ramas de investigaciones enormes y

diferenciadas. Dichos atributos del agente inteligente son: 

1. Tiene actitudes mentales tales como creencias e intenciones

2. Tiene la capacidad de obtener conocimiento, es decir, aprender.

3. Puede resolver problemas, incluso particionando problemas complejos en

otros más simples.

Page 16: Inteligencia Artificial

16LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

4. Entiende. Posee la capacidad de crearle sentido, si es posible, a ideas

ambiguas o contradictorias.

5. Planifica, predice consecuencias, evalúa alternativas (como en los juegos

de ajedrez)

6. Conoce los límites de sus propias habilidades y conocimientos.

7. Puede distinguir a pesar de la similitud de las situaciones.

8. Puede ser original, creando incluso nuevos conceptos o ideas, y hasta

utilizando analogías.

9. Puede generalizar.

10.Puede percibir y modelar el mundo exterior.

11.Puede entender y utilizar el lenguaje y sus símbolos.

1987. Existen alrededor de 1900 Sistemas Expertos en el mundo. El

Sistema experto XCON de DEC capaz de configurar ordenadores

realizando el trabajo de 300 personas, basándose para esto en 10.000

reglas. Japón establece su sistema AFIS para la identificación automática

de huellas digitales.

1988 se establecen los lenguajes Orientados a Objetos. El chip del 386

ofrece una velocidad a los PC’s comparable a la de las máquinas Lisp.

Minsky y Papert publican una revisión de "Perceptrons". La compañía TI

anuncia microExplorer una máquina Lisp con tecnología Macintosh.

1990. Steele publica la segunda edición de "Common lisp the Language".

1992. Apple Computer introduce el lenguaje Dylan, de la familia Lisp, como

su visión del futuro en la programación. X3J13 crea una propuesta para la

Sociedad Americana de Common Lisp.

1994. La versión para tiempo real del lenguaje CLOS, Lisp con Objetos, de

Harlequin se utiliza en sistema de intercambio de AT&T.

1997 Garry Kasparov, campeón mundial de ajedrez pierde ante la

computadora autónoma Deep Blue.

Page 17: Inteligencia Artificial

17LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

2006 se celebró el aniversario con el Congreso en español 50 años de

Inteligencia Artificial - Campus Multidisciplinar en Percepción e Inteligencia

2006.

2009 en desarrollo sistemas inteligentes terapéuticos que permiten

detectar emociones para poder interactuar con niños autistas.

3.1.1 El futuro de la IA

Existen personas que al dialogar sin saberlo con un chatbot no se percatan de

hablar con un programa, de modo tal que se cumple la prueba de Turing como

cuando se formuló: «Existirá Inteligencia Artificial cuando no seamos capaces de

distinguir entre un ser humano y un programa de computadora en una

conversación a ciegas».

Como anécdota, muchos de los investigadores sobre IA sostienen que «la

inteligencia es un programa capaz de ser ejecutado independientemente de la

máquina que lo ejecute, computador o cerebro».

Un robot de charla o chatterbot es un programa de inteligencia artificial que

pretende simular una conversación escrita, con la intención de hacerle creer a un

humano que está hablando con otra persona.

Estos programas informáticos prometen ser el futuro de la inteligencia artificial. En

el futuro podremos ver como a estos actuales bots se les unirán las tecnologías

del reconocimiento de voz y el de video.

El cerebro humano tiene 100.000 millones de neuronas. Un programa de

ordenador puede simular unas 10.000 neuronas.

Si a la capacidad de proceso de un ordenador la sumamos la de otros 9.999.999

ordenadores, tenemos la capacidad de proceso de 10.000.000 ordenadores.

Multiplicamos 10.000.000 ordenadores por 10.000 neuronas cada uno y da =

100.000 millones de neuronas simuladas. Un cerebro humano sera simulado en el

futuro gracias a internet y cualquiera puede programarlo.

Page 18: Inteligencia Artificial

18LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Una vez que la inteligencia artificial tenga una inteligencia igual o superior a la del

hombre, obligatoriamente surgirá un cambio político y social, en el que la IA tiene

todas las de ganar si se da cuenta que no necesita a los humanos para colonizar

el universo. Suena a ciencia ficción pero actualmente orbitando están los satélites

de comunicaciones con sus procesadores 486.

En el futuro, la inteligencia artificial auto replicante podría fácilmente hacerse con

todas las colonias humanas fuera de la tierra, y la raza humana nunca podrá

luchar en el espacio vacío en igualdad de condiciones.

El futuro de una inteligencia superior puede ser la investigación de tecnologías

como la tele transportación, los viajes estelares y cualquier otra tecnología para

aumentar "artificialmente" la inteligencia.

3.2 Características de la IA.

La IA ha sido creada por el hombre para copiar, en cierta medida, la inteligencia

natural. Para conseguirlo se ha escogido como herramienta disponible más

potente y sofisticada, al computador, máquina capaz de procesar gran cantidad de

datos en muy poco tiempo, según las directrices definidas en un programa.

Hasta hoy se ha considerando al computador como una máquina tonta, lo que

significa que solo realiza aquello que se haya programado previamente. Este

modo de operar elimina una de las cualidades principales de la inteligencia , que

consiste en un comportamiento diferente para idénticas situaciones,

comportamiento que no ha sido previamente programado, sino que se ha

producido como consecuencia de una manipulación inteligente de los

conocimientos y experiencia que se poseían.

También ha sido común el trabajo del computador solo con datos, mientras que

una máquina inteligente ha de ser capaz de operar con conocimiento.

Page 19: Inteligencia Artificial

19LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

En el ser humano la experiencia y la facultad de razonamiento se alternan a lo

largo del tiempo, por lo que es muy frecuente que reaccione de forme diferente

ante los mismos hechos.

Una máquina puede considerarse como inteligente cuando cumple los siguientes

requisitos:

a) Si es capaz de percibir visualmente los objetos que la rodean y reconocer sus

formas. Actualmente el desarrollo de la visión artificial ofrece comercialmente

equipos económicos y poco voluminosos.

b) Una máquina es inteligente si es capaz de entender el lenguaje natural,

hablado o escrito, así como de producir repuesta en dicho lenguaje.

c) Otra característica propia de una maquina inteligente consiste en elaborar

actuaciones de acuerdo con las condiciones cambiantes del entorno y llevarlas

a cabo mediante los correspondientes del entorno y llevarlas a cabo mediante

los correspondientes elementos físicos.

d) Una máquina se dice inteligente cuando puede almacenar información y

conocimiento a los que manipula mediante reglas y algoritmos para alcanzar

soluciones a los problemas que plantea su funcionamiento.

Si la inteligencia comprende facultades como:

percibir y manipular elementos del mundo real

adquirir, aplicar conocimientos y entender el lenguaje natural y

razonar y resolver problemas

Se puede afirmar que en estos momentos el hombre es capaz de construir

maquinas inteligentes. Pero los seres vivos inteligentes combinan

maravillosamente las facultades anteriores y además, tienen sentimientos.

3.3 Clasificación de la IA.

Se agrupan en cuatro categorías.

Page 20: Inteligencia Artificial

20LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

3.3.1 Sistemas que piensan como humanos.

La interesante tarea de lograr que las computadoras piensen…, maquina

con mente, en su amplio sentido literal(Haugeland, 1985)

La automatización de actividades que vinculamos con procesos de

pensamiento humano, actividades tales como toma de decisiones, resolución

de problemas, aprendizaje.

3.3.2 Sistemas que actúan como lo humanos.

El arte de crear maquinas con capacidad de realizar funciones que

efectuadas por personas requieren de inteligencia (Kurzweil, 1990).

Es estudio de cómo lograr que las computadoras realicen tareas que, por el

momento, lo humanos hacen mejor (Rich & Knight, 1991)

3.3.3 Sistemas que piensan racionalmente

El estudio de la facultades mentales mediante el uso de modelos

computacionales ( Charniak & McDermott, 1995)

El estudio de los cálculos que permiten percibir razonar y actuar (Winston,

1992).

3.3.4 Sistemas que actúan racionalmente

Un campo de estudio que se enfoca a la explicación y emulación de la

conducta inteligente en función de procesos computacionales (Schlkoff,

1990).

La rama de la ciencia de la computación que se ocupa de la automatización

de la conducta inteligente (Luger & Stubblefield, 1993).

Page 21: Inteligencia Artificial

21LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

3.4 Escuelas de pensamiento

La IA se divide en dos escuelas de pensamiento:

La inteligencia artificial convencional

La inteligencia computacional

3.4.1 Inteligencia artificial convencional

Se conoce también como IA simbólico-deductiva. Está basada en el análisis formal

y estadístico del comportamiento humano ante diferentes problemas:

Razonamiento basado en casos: Ayuda a tomar decisiones mientras se

resuelven ciertos problemas concretos y aparte que son muy importantes

requieren de un buen funcionamiento.

Sistemas expertos: Infieren una solución a través del conocimiento previo

del contexto en que se aplica y ocupa de ciertas reglas o relaciones.

Redes bayesianas: Propone soluciones mediante inferencia probabilística.

Inteligencia artificial basada en comportamientos: que tienen autonomía y

pueden auto-regularse y controlarse para mejorar.

Smart process management: facilita la toma de decisiones complejas,

proponiendo una solución a un determinado problema al igual que lo haría

un especialista en la actividad.

3.4.2 Inteligencia artificial computacional

La Inteligencia Computacional (también conocida como IA subsimbólica-inductiva)

implica desarrollo o aprendizaje interactivo (por ejemplo, modificaciones

interactivas de los parámetros en sistemas conexionistas). El aprendizaje se

realiza basándose en datos empíricos.

3.5 Técnicas y campos de la Inteligencia Artificial

Aprendizaje Automático (Machine Learning)

Page 22: Inteligencia Artificial

22LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Ingeniería del conocimiento (Knowledge Engineering)

Lógica difusa (Fuzzy Logic)

Redes neuronales artificiales (Artificial Neural Networks)

Sistemas reactivos (Reactive Systems)

Sistemas multi-agente (Multi-Agent Systems)

Sistemas basados en reglas (Rule-Based Systems)

Razonamiento basado en casos (Case-Based Reasoning)

Sistemas expertos (Expert Systems)

Redes Bayesianas (Bayesian Networks)

Vida artificial (Artificial Life). La VA no es un campo de la IA, sino que

la IA es un campo de la VA.

Computación evolutiva (Evolutionary Computation)

Estrategias evolutivas

Algoritmos genéticos (Genetic Algorithms)

Técnicas de Representación de Conocimiento

Redes semánticas (Semantic Networks)

Frames

Vision artificial

Audicion artificial

Lingüística computacional

Procesamiento del lenguaje natural (Natural Language Processing)

Minería de datos (Data Mining)

3.6 Importancia de la Inteligencia Artificial

Conforme el mundo se vuelve más complejo, debemos usar nuestros recursos

materiales y humanos con más eficiencia, y para lograrlo, se necesita la ayuda

que nos ofrecen los computadores.

Existe la falsa impresión de que uno de los objetivo del IA es sustituir a los

trabajadores humanos y ahorrar dinero. Pero en el mundo de los negocios, la

Page 23: Inteligencia Artificial

23LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

mayoría de personas está más entusiasmada ante las nuevas oportunidades que

ante el abatimiento de costos. Además, la tarea de reemplazar totalmente a un

trabajador humano abarca de lo difícil a lo imposible, ya que no se sabe cómo

dotar a los sistemas de IA de toda esa capacidad de percibir, razonar y actuar que

tienen las personas. Sin embargo, debido a que los humanos y los sistemas

inteligentes tienen habilidades que se complementan, podrían apoyarse y ejecutar

acciones conjuntas:

En la agricultura, controlar plagas y manejar cultivos en forma más

eficiente.

En las fábricas, realizar montajes peligrosos y actividades tediosas (labores

de inspección y mantenimiento).

En la medicina, ayudar a los médicos a hacer diagnósticos, supervisar la

condición de los pacientes, administrar tratamientos y preparar estudios

estadísticos.

En el trabajo doméstico, brindar asesoría acerca de dietas, compras,

supervisión y gestión de consumo energético y seguridad del hogar.

En las escuelas, apoyar la formación de los estudiantes, especialmente en

aquellas materias consideradas complejas.

Ayudar a los expertos a resolver difíciles problemas de análisis o a diseñar

nuevos dispositivos.

Aprender de los ejemplos para explorar bases de datos en busca de

regularidades explotables.

Proporcionar respuestas a preguntas en lenguaje natural usando datos

estructurados y texto libre.

La IA aplicada es la contraparte de ingeniería de la ciencia cognoscitiva y

complementa sus perspectivas tradicionales. La ciencia cognoscitiva es una

mezcla de psicología, lingüística y filosofía.

La metodología y terminología de la IA está todavía en vías de desarrollo. La IA se

está dividiendo y encontrando otros campos relacionados: lógica, redes

neuronales, programación orientada a objetos, lenguajes formales, robótica, etc.

Page 24: Inteligencia Artificial

24LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Esto explica por qué el estudio de IA no está confinado a la matemática, ciencias

de la computación, ingeniería (particularmente la electrónica y la mecánica), o a la

ciencia cognoscitiva, sino que cada una de estas disciplinas es un potencial

contribuyente. La robótica es considerada como un campo interdisciplinario que

combina conceptos y técnicas de IA, con ingeniería óptica, electrónica y mecánica.

3.7 Aplicaciones de la inteligencia artificial

Existen distintos tipos de conocimiento y medios de representación del

conocimiento, el cual puede ser cargado en el agente por su diseñador o puede

ser aprendido por el mismo agente utilizando técnicas de aprendizaje.

También se distinguen varios tipos de procesos válidos para obtener resultados

racionales, que determinan el tipo de agente inteligente. De más simples a más

complejos, los cinco principales tipos de procesos son:

Ejecución de una respuesta predeterminada por cada entrada (análogas

a actos reflejos en seres vivos).

Búsqueda del estado requerido en el conjunto de los estados producidos

por las acciones posibles.

Algoritmos genéticos (análogo al proceso de evolución de las cadenas

de ADN).

Redes neuronales artificiales (análogo al funcionamiento físico del

cerebro de animales y humanos).

Razonamiento mediante una lógica formal (análogo al pensamiento

abstracto humano).

También existen distintos tipos de percepciones y acciones, pueden ser obtenidas

y producidas, respectivamente por sensores físicos y sensores mecánicos en

máquinas, pulsos eléctricos u ópticos en computadoras, tanto como por entradas y

salidas de bits de un software y su entorno software.

Page 25: Inteligencia Artificial

25LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Varios ejemplos se encuentran en el área de control de sistemas, planificación

automática, la habilidad de responder a diagnósticos y a consultas de los

consumidores, reconocimiento de escritura, reconocimiento del habla y

reconocimiento de patrones. Los sistemas de IA actualmente son parte de la rutina

en campos como economía, medicina, ingeniería y la milicia, y se ha usado en

gran variedad de aplicaciones de software, juegos de estrategia como ajedrez de

computador y otros videojuegos.

Lingüística computacional

Industriales.

Médicas

Mundos virtuales

Procesamiento de lenguaje natural (Natural Language Processing)

Robótica

Sistemas de apoyo a la decisión

Videojuegos

Prototipos informáticos

Análisis de sistemas dinámicos.

Smart Process Management

3.7.1 El público y la IA

La IA a sido una gran desconocida para el público hasta que llego el invento de la

televisión, porque las películas anteriores de cine sobre inteligencias artificiales

tuvieron muy poca aceptación y difusión.

En el año 2001 Steven Spilberg dirige una película titulada "inteligencia artificial",

batiendo records de taquilla. Trata de un niño robótico con un fuerte complejo

maternal. Mediocre película, comparada con otras anteriores, como matrix, o

posteriores, como terminator3, que volvieron a batir los records de taquilla.

Page 26: Inteligencia Artificial

26LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

En los últimos años las ganancias por vender películas sobre IAs se incrementan

de manera exponencial. Y parece normal, porque ahora con el llamado "efecto IA"

puedes encontrar inteligencia artificial hasta en las batidoras.

3.7.2 Problemas básicos en Inteligencia Artificial

Para construir un sistema básico de inteligencia artificial capaz de resolver un

problema específico, es necesario realizar las siguientes acciones:

Definir de una forma precisa el problema, incluyendo especificaciones de las

condiciones iniciales y de las situaciones finales que pueden considerarse como

soluciones aceptables al problema.

Analizar el problema. Puede darse el caso de que unos muy pocos rasgos

importantes puedan tener un gran impacto en la identificación de la técnica más

apropiada para resolver el problema.

Identificar y representar el conocimiento que es necesario para resolver el

problema.

Escoger la mejor técnica y aplicarla para la resolución del problema.

En este capítulo trataremos los fundamentos sobre los que se basan cada una de

las acciones indicadas.

3.7.3 Críticas

Las principales críticas a la inteligencia artificial tienen que ver con su incapacidad

de imitar por completo a un ser humano. Estas críticas ignoran que ningún

humano individual tiene capacidad para resolver todo tipo de problemas, y autores

como Howard Gardner han propuesto que existen inteligencias múltiples. Un

sistema de inteligencia artificial debería resolver problemas. Por lo tanto es

fundamental en su diseño la delimitación de los tipos de problemas que resolverá

y las estrategias y algoritmos que utilizará para encontrar la solución.

Page 27: Inteligencia Artificial

27LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

En los humanos la capacidad de resolver problemas tiene dos aspectos: los

aspectos innatos y los aspectos aprendidos. Los aspectos innatos permiten por

ejemplo almacenar y recuperar información en la memoria y los aspectos

aprendidos el saber resolver un problema matemático mediante el algoritmo

adecuado. Del mismo modo que un humano debe disponer de herramientas que le

permitan solucionar ciertos problemas, los sistemas artificiales deben ser

programados de modo tal que puedan resolver ciertos problemas.

Muchas personas consideran que el test de Turing ha sido superado, citando

conversaciones en que al dialogar con un programa de inteligencia artificial para

chat no saben que hablan con un programa. Sin embargo, esta situación no es

equivalente a un test de Turing, que requiere que el participante esté sobre aviso

de la posibilidad de hablar con una máquina.

Otros experimentos mentales como la Habitación china de John Searle han

mostrado cómo una máquina podría simular pensamiento sin tener que tenerlo,

pasando el test de Turing sin siquiera entender lo que hace. Esto demostraría que

la máquina en realidad no está pensando, ya que actuar de acuerdo con un

programa preestablecido sería suficiente. Si para Turing el hecho de engañar a un

ser humano que intenta evitar que le engañen es muestra de una mente

inteligente, Searle considera posible lograr dicho efecto mediante reglas definidas

a priori.

Uno de los mayores problemas en sistemas de inteligencia artificial es la

comunicación con el usuario. Este obstáculo es debido a la ambigüedad del

lenguaje, y apareció ya en los inicios de los primeros sistemas operativos

informáticos. La capacidad de los humanos para comunicarse entre sí implica el

conocimiento del lenguaje que utiliza el interlocutor. Para que un humano pueda

comunicarse con un sistema inteligente hay dos opciones: o bien el humano

aprende el lenguaje del sistema como si aprendiese a hablar cualquier otro idioma

Page 28: Inteligencia Artificial

28LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

distinto al nativo, o bien el sistema tiene la capacidad de interpretar el mensaje del

usuario en la lengua que el usuario utiliza.

Un humano durante toda su vida aprende el vocabulario de su lengua nativa. Un

humano interpreta los mensajes a pesar de la polisemia de las palabras utilizando

el contexto para resolver ambigüedades. Sin embargo, debe conocer los distintos

significados para poder interpretar, y es por esto que lenguajes especializados y

técnicos son conocidos solamente por expertos en las respectivas disciplinas. Un

sistema de inteligencia artificial se enfrenta con el mismo problema, la polisemia

del lenguaje humano, su sintaxis poco estructurada y los dialectos entre grupos.

Los desarrollos en inteligencia artificial son mayores en los campos disciplinares

en los que existe mayor consenso entre especialistas. Un sistema experto es más

probable de ser programado en física o en medicina que en sociología o en

psicología. Esto se debe al problema del consenso entre especialistas en la

definición de los conceptos involucrados y en los procedimientos y técnicas a

utilizar. Por ejemplo, en física hay acuerdo sobre el concepto de velocidad y cómo

calcularla. Sin embargo, en psicología se discuten los conceptos, la etiología, la

psicopatología y cómo proceder ante cierto diagnóstico. Esto dificulta la creación

de sistemas inteligentes porque siempre habrá desacuerdo sobre lo que se

esperaría que el sistema haga. A pesar de esto hay grandes avances en el diseño

de sistemas expertos para el diagnóstico y toma de decisiones en el ámbito

médico y psiquiátrico (Adaraga Morales, Zaccagnini Sancho, 1994).

 

3.8 LENGUAJES DE LA I.A.

3.8.1 Introducción.

Los lenguajes de programación tradicionales no se han adaptado bien a las

aplicaciones en Inteligencia Artificial. Estos lenguajes brindan características

especialmente diseñadas para operar problemas.

Page 29: Inteligencia Artificial

29LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Tales lenguajes permitirán eventualmente a las máquinas tener "sentido común",

como los seres humanos. Sin embargo, no se perfilan todavía en el horizonte. Los

lenguajes de que vamos hablar, son todos de la tercera clase, los llamados

lenguajes de Inteligencia Artificial.

Se llaman así porque se usan preferentemente en aplicaciones que producen en

las máquinas comportamientos que, si los ejecutaran seres humanos, diríamos

que requieren inteligencia.

Podemos distinguir tres grandes estilos o subfamilias en los lenguajes de

Inteligencia Artificial. Todos ellos están formados por lenguajes de tipo coactivo y

disponen del poder de la recursión.

Pero tienen cada uno de ellos características especiales que les singularizan de os

diferentes estilos de programación.

3.8.2 Lenguajes Funcionales

Los lenguajes funcionales se caracterizan porque sus programas son expresiones

simbólicas que se evalúan y producen un resultado, en el mismo sentido en que la

expresión simbólica "(7 + 5)", al ser evaluada, produce "12". Esta característica

contrasta notablemente con lo que ocurre con lenguajes del tipo imperativo,solo

ocasionalmente una expresión en LISP, u otro lenguaje funcional, produce un

"efecto", como distinto del "valor" de la expresión evaluada, por ejemplo, la

activación de un periférico de la computadora o la asociación de un término con su

significado en una tabla de definiciones.

En el caso de LOGO, el aspecto de efecto está enfatizado, dado el sesgo del

programa, hacia las aplicaciones gráficas. Una nota importante que debe

subrayarse es que en los lenguajes funcionales puros, los argumentos de las

funciones pueden a su vez ser funciones, las cuales deben ser evaluadas con

anterioridad para que la función de mayor nivel pueda obtener sus argumentos

efectivos con los cuales deberá evaluarse.

Page 30: Inteligencia Artificial

30LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

3.8.3 Lenguajes Relacionales

El segundo estilo de programación de Inteligencia Artificial es el estilo relacional.

El mejor ejemplo es PROLOG, un lenguaje simple y poderoso desarrollado en los

años setenta por varios investigadores europeos que aplicaron descubrimientos de

otros lógicos. (KOWALSKI 82) Es también un lenguaje recursivo. Se diferencia de

LISP y los otros lenguajes funcionales, en que es más explícito en la definición de

los constreñimientos, incorporando dentro de la expresión que se evalúa, un lugar

para el resultado de la computación (en contraste con la función, cuyo valor es

simplemente reportado).

3.8.4 Lenguajes de programación por objetos

Los lenguajes de programación por objetos, por su parte, tienen un estilo muy

particular, ya que tratan de representar a los objetos del mundo con que lidian

nuestros programas con entidades computacionales cerradas sobre sí mismas,

llamadas también objetos. Estos objetos computacionales son al mismo tiempo

datos y procedimientos. En cuanto datos, los objetos se definen por variables

privadas que no son inspeccionables desde fuera de ellos, y que conservan sus

valores a través del tiempo. En cuanto procedimientos, los objetos se definen

como métodos, que solo ellos pueden aplicar como reacción a ciertos mensajes

que reciben. La computación se realiza por medio de intercambio de mensajes

entre los distintos objetos. Los mensajes suelen consistir en requerimientos para

que un objeto aplique uno de sus métodos a sí mismo (por ejemplo para variar el

estado de sus variables privadas) o a otros objetos (enviándoles un mensaje);

pero puede también suceder que un mensaje consista en un objeto que se envía a

otro objeto. Generalmente los objetos se organizan en clases jerárquicamente

organizadas, de modo que todos los miembros de una clase comparten ciertos

atributos y que los miembros de una clase subalterna heredan atributos de la clase

subalternante (por ejemplo, una clase de objetos puede ser "vehículos" y otra

"automóviles", y los objetos de la segunda heredar de la primera clase el atributo

Page 31: Inteligencia Artificial

31LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

de servir para transporte o necesitar combustible). Uno de los lenguajes de

programación por objetos es el SMALLTALK.

3.8.5 Lenguajes de Inteligencia Artificial

3.8.5.1 PROLOG: Programming in Logic (PROLOG), es otro de los lenguajes de

programación utilizados en La Inteligenia Artificial. PROLOG fue desarrollado en

Francia, en 1973 en la Universidad de Marseilles. Prolog es un lenguaje de

programación hecho para representar y utilizar el conocimiento que se tiene sobre

un determinado dominio. Más exactamente, el dominio es un conjunto de objetos y

el conocimiento se representa por un conjunto de relaciones que describen las

propiedades de los objetos y sus interrelaciones. Un conjunto de reglas que

describa estas propiedades y estas relaciones es un programa Prolog es un

lenguaje de programación que es usado para resolver problemas que envuelven

objetos y las relaciones entre ellos.

3.8.5.1.1 Hechos

Expresan relaciones entre objetos. Supongamos que queremos expresar el hecho

de que "un coche tiene ruedas". Este hecho, consta de dos objetos, "coche" y

"ruedas", y de una relación llamada "tiene". La forma de representarlo en

PROLOG es: tiene (coche,ruedas).

Los nombres de objetos y relaciones deben comenzar con una letra

minúscula.

Primero se escribe la relación, y luego los objetos separados por comas y

encerrados entre paréntesis.

Al final de un hecho debe ir un punto (el carácter ".").

El orden de los objetos dentro de la relación es arbitrario, pero debemos ser

coherentes a lo largo de la base de hechos.

3.8.5.1.2 Operadores

Son predicados predefinidos en PROLOG para las operaciones matemáticas

básicas. Su sintaxis depende de la posición que ocupen, pudiendo ser infijos o

Page 32: Inteligencia Artificial

32LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

prefijos. Por ejemplo el operador suma ("+"), podemos encontrarlo en forma prefija

'+(2,5)' o bien infija, '2 + 5'.

Al igual que en otros lenguajes de programación es necesario tener en cuenta la

precedencia y la asociatividad de los operadores antes de trabajar con ellos.

En cuanto a precedencia, es la típica. Por ejemplo, 3+2*6 se evalúa como 3+(2*6).

En lo referente a la asociatividad, PROLOG es asociativo por la izquierda. Así,

8/4/4 se interpreta como (8/4)/4. De igual forma, 5+8/2/2 significa 5+((8/2)/2).

3.8.5.1.3 El mecanismo de control de PROLOG

El mecanismo empleado por PROLOG para satisfacer las cuestiones que se le

plantean, es el de razonamiento hacia atrás (backward) complementado con la

búsqueda en profundidad (depth first) y la vuelta atrás o reevaluación

(backtracking).

Razonamiento hacia atrás: Partiendo de un objetivo a probar, busca las

aserciones que pueden probar el objetivo. Si en un punto caben varios caminos,

se recorren en el orden que aparecen en el programa, esto es, de arriba a abajo y

de izquierda a derecha.

Reevaluación: Si en un momento dado una variable se instancia con determinado

valor con el fin de alcanzar una solución, y se llega a un camino no satisfactorio, el

mecanismo de control retrocede al punto en el cual se instanció la variable, la des-

instancia y si es posible,

3.8.5.1.4 Entrada/Salida

PROLOG, al igual que la mayoría de lenguajes de programación modernos

incorpora predicados predefinidos para la entrada y salida de datos. Estos son

tratados como reglas que siempre se satisfacen.

Las comillas simples encierran constantes, mientras que todo lo que se encuentra

entre comillas dobles es tratado como una lista. También podemos mostrar el

valor de una variable, siempre que este instanciada:

Page 33: Inteligencia Artificial

33LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

3.8.5.1.5 Desarrollo de Prolog

Una de las preocupaciones más tempranas de la computación de los años

cincuenta fue la posibilidad de hacer programas que llevaran a cabo

demostraciones automáticas de teoremas. Así empezaron los primeros trabajos de

inteligencia artificial que más de veinte años después dieron lugar al primer

lenguaje de programación que contempla, como parte del intérprete, los

mecanismos de inferencia necesarios para la demostración automática. Este

primer lenguaje está basado en el formalismo matemático de la Lógica de Primer

Orden y ha dado inicio a un nuevo y activo campo de investigación entre las

matemáticas y la computación que se ha denominado la Programación Lógica.

Estos mecanismos de prueba fueron trabajados con mucho entusiasmo durante

una época, pero, por su ineficiencia, fueron relegados hasta el nacimiento de

PROLOG, ocurrido en 1970 en la Universidad de Marsella, Francia, en el seno de

un grupo de investigación en el campo de la Inteligencia Artificial.

La Programación Lógica tiene sus orígenes más cercanos en los trabajos de

prueba automática de teoremas de los años sesenta. J. A. Robinson propone en

1965 una regla de inferencia a la que llama resolución, mediante la cual la

demostración de un teorema puede ser llevada a cabo de manera automática.

La resolución es una regla que se aplica sobre cierto tipo de fórmulas del Cálculo

de Predicados de Primer Orden, llamadas cláusulas y la demostración de

teoremas bajo esta regla de inferencia se lleva a cabo por reducción al absurdo.

Actualmente, la programación lógica ha despertado un creciente interés que va

mucho más allá del campo de la Inteligencia Artificial(IA) y sus aplicaciones. Los

japoneses, con su proyecto de máquinas de la quinta generación, dieron un gran

impulso a este paradigma de programación. Sin embargo, antes que ellos existían

ya en Estados Unidos y en Europa grupos de investigación en este campo, en

países como Inglaterra, Holanda, Suecia y, desde luego, Francia.

Page 34: Inteligencia Artificial

34LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

A principios de los años ochentas los japoneses comienzan a invertir recursos en

un proyecto que denominan la Quinta Generación, para lucrar con la buena fama

de los 4GL. Con este ambicioso proyecto Japón busca obtener el liderazgo en

computación, usando como base la Programación Lógica y la Inteligencia Artificial.

La programación lógica tiene sus raíces en el cálculo de predicados, que es una

teoría matemática que permite, entre otras cosas, lograr que un computador

pueda realizar inferencias, capacidad que es requisito para que un computador

sea una "máquina inteligente". La realización del paradigma de la programación

lógica es el lenguaje Prolog.

El Prolog estuvo un tiempo diseñado para ejecutarse en minicomputadoras o

estaciones de trabajo, actualmente hay versiones en Prolog que pueden instalarse

en computadores personales como IBM-PC y PC-Compatibles.

Un programa escrito en PROLOG puro, es un conjunto de clausulas.

Sin embargo, PROLOG, como lenguaje de programación moderno, incorpora más

cosas, como instrucciones de Entrada/Salida, etc.

Una clausula puede ser una conjunción de hechos positivos o una implicación con

un único consecuente (un único termino a la derecha). La negación no tiene

representación en PROLOG, y se asocia con la falta de una afirmación (negación

por fallo), según el modelo de suposición de un mundo cerrado solo es cierto lo

que aparece en la base de conocimiento o bien se deriva de esta.

Las diferencias sintácticas entre las representaciones lógicas y las

representaciones PROLOG son las siguientes:

1. En PROLOG todas las variables están implícitamente cuantificadas

universalmente.

2. En PROLOG existe un símbolo explicito para la conjunción "y" (,), pero no existe

uno para la disyunción "o", que se expresa como una lista de sentencias

alternativas.

Page 35: Inteligencia Artificial

35LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

3. En PROLOG, las implicaciones p --> q se escriben al reves q :- p, ya que el

interprete siempre trabaja hacia atrás sobre un objetivo.

3.8.5.1.6 Desarrollo de Versiones Actuales

Antes de que existieran sistemas expertos, sistemas inteligentes adaptables o

cualquier otro tipo de programa capaz de funcionar con inteligencia artificial, se

necesito crear los lenguajes para desarrollarlo. Para ello, se consideraron algunos

requerimientos básicos como la posibilidad de procesar símbolos de todo tipo y la

capacidad de hacer inferencias asociadas con el lenguaje, todo dentro de un

ambiente flexible que permitiera escribir el programa de forma interactiva.

Uno de los lenguajes que más éxito ha tenido es Prolog. Por tal razón son muchas

las compañías de software que han creado sus propias versiones del mismo.

La diferencia es mínima entre versiones ya que su sintaxis y semántica es la

misma, la variación que más resalta son el cambio de plataforma para el cual

fueron desarrollados.

Nuestro trabajo de investigación no pretende abarcarlos todos, pero si hablar de

los más usados y conocidos por el ámbito informático.

3.8.5.1.6.1 PROLOG.- Esta versión la ofrece Expert Systems International, se

utiliza en maquinas que trabajan con los sistemas operativos MS-DOS, CP/M-86,

RSX-11M y RT-11.

Su mayor fortaleza radica en su intérprete PROLOG86, este interprete contiene un

editor de cláusulas del sistema. Tiene un mejor manejo de los tipos de datos

entero y real, y además posee más predicados integrados por lo cual el

programador ya no requiere de definirlos.

3.8.5.1.6.2 PROLOG QUINTUS.- Es una versión avanzada del lenguaje. El

objetivo de sus diseñadores era producir una versión que pudiera ofrecer

velocidades rápidas de ejecución, así como la capacidad de comunicación con

otros programas. Esta versión funciona en los sistemas operativo UNIX y VMS.

Page 36: Inteligencia Artificial

36LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Una de las características interesantes es la interface al editor EMACS, esto

provocara que la pantalla se parta en dos ventanas, en una estará el código del

archivo fuente en la parte superior, mientras prolog correrá en la parte inferior,

esto brinda una ayuda ya que cualquier cambio en las cláusulas del archivo,

podría ser probada inmediatamente, solamente interactuando entre ventanas.

3.8.5.1.6.3 MACPROLOG.- Esta versión está diseñada totalmente para correr en

maquinas MAC. Esta versión combina sofisticadas técnicas de programación de

inteligencia artificial en ambientes Macintosh. Al integrar el compilador Prolog con

las herramientas de MAC (ratón, menú, ventanas y gráficos), Prolog ofrece un

entorno de programación sofisticado que antes solo se podía obtener con

hardware costoso y muy especializado.

3.8.5.1.6.4 SWI-PROLOG.- Es una implementación de Prolog basada en un

subconjunto del WAM (Warren Abstract Machine). SWI-Prolog ha sido diseñado e

implementado de tal modo que puede ser empleado fácilmente para experimentar

con la lógica de la programación y con las relaciones que esta mantiene con otros

paradigmas de la programación, tales como el entorno PCE orientado al objeto.

Posee un rico conjunto de predicados incorporados que hacen posible el

desarrollo de aplicaciones robustas.

Además ofrece una interfaz para el lenguaje C.

3.8.5.2 LISP: Su nombre viene de LISt Processor. LISP fue el primer lenguaje

para procesamiento simbólico. fue desarrollado en 1958, en el Instituto de

Tecnología de Massachusetts LISP es un lenguaje funcional. En consecuencia,

sus unidades de acción son funciones. PROLOG, como lenguaje relacional, tiene

unidades de acción que son relaciones. SMALLTALK, como lenguaje objetivo,

tiene como sus unidades de acción los objetos. Una estrategia razonable para

integrar los estilos dentro de uno de los lenguajes consiste en identificar una de

Page 37: Inteligencia Artificial

37LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

sus unidades de acción con la invocación al estilo diverso deseado.

Más concretamente: estando en ambiente LISP se debe poder invocar una función

que se llame PROLOG, dándole como argumento el problema que quiero resolver

en estilo relacional; el valor reportado por la función sería la misma fórmula de la

invocación pero con todas sus variables lógicas sustituidas por los respectivos

valores encontrados por el intérprete relacional.

Estando en ambiente PROLOG, debo poder ejecutar una relación que se llame —

digamos— LISP, uno de cuyos argumentos sea una expresión funcional y otro sea

el valor de la misma, que produciría el intérprete funcional.

3.8.5.3 LOGO: El lenguaje LOGO fue creado en el "Massachusetts Institute of

Technology" (MIT) por el investigador en Inteligencia Artificial y renombrado

teórico de la educación Seymour Papert. Pertenece a la familia de lenguajes

simbólicos, y por ello se diferencia sustancialmente de los más conocidos

lenguajes de programación, como Basic, Pascal, Cobol o Fortran. No obstante,

tiene también capacidades matemáticas suficientes como para haber sido

postulado como la mejor introducción a estas disciplinas por el mismo Papert. En

particular, LOGO es un pariente cercano de otros lenguajes simbólicos diseñados

específicamente para sustentar la investigación en Inteligencia Artificial. Más

concretamente, LOGO es una versión simplificada del lenguaje LISP (del inglés

"List Processing"), uno de los más evolucionados lenguajes de Inteligencia

Artificial, adaptada para tener capacidades gráficas.

3.8.5.4 SMALLTALK: Fue desarrollado por el Learning Research Group del

Centro de Investigación de la Compañía Xerox, en Palo Alto, California, al

comienzo de los años setenta. Sus ideas principales se deben a Alan Kay. Las

primeras realizaciones del lenguaje las produjo Dan Ingalls (primera persona que

programó ventanas superpuestas en ambientes de cómputo). Otra persona que

colaboró de manera importante en el proyecto fue Adele Golberg, del mismo

Page 38: Inteligencia Artificial

38LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

laboratorio.

El desarrollo de SMALLTALK fue guiado por la experiencia con el sistema FLEX,

creado por el mismo Alan Kay a fines de la década de los sesenta, y por ideas

centrales del lenguaje SIMULA, desarrollado a la mitad de los sesenta por Ole-

Johan Dahl y Kristen Nygaard del Centro Noruego de Cómputo en Oslo. El

esfuerzo paralelo realizado en MIT para la creación de LOGO tuvo también

innegable influencia. Su motivación principal fue proporcionar a los niños un

ambiente de computación gráfico y concreto. Sin embargo, el lenguaje ha

resultado ser de uso general, para toda clase de aplicaciones.

Aunque existan lenguajes específicos para este estilo objetivo de programación,

es interesante subrayar que el mismo estilo de programación puede lograrse con

un lenguaje funcional como LISP, en varios de sus dialectos. En particular, admiro

la tersura con que este tipo de programación puede realizarse en uno de los

dialectos más puros y elegantes de esta gran familia: el lenguaje SCHEME, otro

producto del MIT.

4. Conclusión.

En esta monografía se puso en claro lo complicado de definir el campo de estudio

de esta nueva ciencia, así como su filosofía, como desde la antigüedad existían

filósofo, que tocaban ya, temas referentes a la actual IA.

Se ha presentado, el desarrollo de la Inteligencia Artificial a lo largo de la historia,

pudiéndose evidenciar el gran desarrollo e impulso que tuvo sobre todo en los

últimos años, con la aparición de las nuevas tecnologías.

Además hemos tocado las principales características de esta ciencia, pudiendo

evidenciar, a que se debe el amplio número de aplicaciones y de relación con

otras ciencias que tiene la IA.

Page 39: Inteligencia Artificial

39LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

Sin dejar de lado, los problemas y criticas que la IA afronta, siendo la principal, el

hecho de desarrollarla en tal sentido que pueda llegar a emular no solo lo

referente al aprendizaje del ser humano, sino lo que son los sentimientos de una

persona, brindando herramientas a la robótica para crear robots que se asemejen

más a las personas.

Podemos entonces decir que la IA incluye características humanas tales como el

aprendizaje, la adaptación, el razonamiento, la autocorrección, el mejoramiento

implícito, y la percepción modelar del mundo. Así, podemos hablar ya no sólo de

un objetivo, sino de muchos dependiendo del punto de vista o utilidad que pueda

encontrarse a la IA.

Muchos de los investigadores sobre IA sostienen que "la inteligencia es un

programa capaz de ser ejecutado independientemente de la máquina que lo

ejecute, computador o cerebro".

También hemos presentado una visión muy sucinta de los tres estilos de

programación en Inteligencia Artificial. Nos resta subrayar un hecho sumamente

interesante, a saber, que por lo menos en principio es posible programar usando

cualquiera de los tres estilos desde cualquiera de los tres lenguajes principales:

LISP, PROLOG, SMALLTALK. Puedo hablar de primera mano en el caso de LISP,

pues he desarrollado un lenguaje escrito en LISP, llamado GOAL, que hace todo

lo que hace PROLOG (y un poco más) en el estilo relacional. Además, acabamos

de ver cómo un dialecto de LISP, SCHEME, se presta directa y elegantemente a la

programación por objetos. Conozco de oídas intentos de programar desde

PROLOG o SMALLTALK en los estilos diferentes al propio del lenguaje. La idea

general, que cubre todos los cruces entre estilos y lenguajes, es la siguiente.

LISP es un lenguaje funcional. En consecuencia, sus unidades de acción son

funciones. PROLOG, como lenguaje relacional, tiene unidades de acción que son

Page 40: Inteligencia Artificial

40LA INTELIGENCIA ARTIFICIAL, SUS LENGUAJES E HISTORIA

relaciones. SMALLTALK, como lenguaje objetivo, tiene como sus unidades de

acción los objetos. Una estrategia razonable para integrar los estilos dentro de uno

de los lenguajes consiste en identificar una de sus unidades de acción con la

invocación al estilo diverso deseado.

Estando en ambiente PROLOG, debo poder ejecutar una relación que se llame

digamos LISP, uno de cuyos argumentos sea una expresión funcional y otro sea el

valor de la misma, que produciría el intérprete funcional. Estando en un ambiente

de programación por objetos, debiera poder dar un mensaje a un objeto llamado

LISP, o PROLOG, que consista precisamente en una invocación que debe ser

ejecutada por el respectivo intérprete. LISP no tiene problema en trabajar con

objetos, y varios dialectos del lenguaje han incorporado ya la programación por

objetos, llamados sabores en varias de las implantaciones.

5. Bibliografía.

Tirso de Andrés, Homo Cybersapiens. La Inteligencia artificial y la humana,

2002, ISBN 84-313-1982-8

Luis Mª Gonzalo, Inteligencia Humana e Inteligencia Artificial, Madrid, 1987.

ISBN 84-7118-490-7

Víctor Gómez Pin, Entre lobos y autómatas. La causa del hombre, Espasa,

Madrid, 2006. ISBN 978-84-670-2303-9

Revista "Inteligencia Artificial" Revista Iberoamericana de Inteligencia

Artificial. ISSN 1137-3601

Adaraga Morales P., Zaccagnini Sancho J. L., Psicología e inteligencia

artificial, Editorial Trotta, Madrid, 1994. ISBN 84-87699-77-4.

Páginas Web como: www.monografías.com , www.inteligenciaartificial.cl,

Wikipedia y de la Universidad Central del Ecuador.

Dossier de Inteligencia Artificial de la Universidad Saleciana de Bolivia.