Sie sind auf Seite 1von 23

Capítulo 1

INTRODUCCION AL CAMPO DE LA INTELIGENCIA ARTIFICIAL

J o s é

L u i s

Z a c c a g n

i ni

1.

E l

c o n c e p t o

d e

«In t e l ig e n c ia

A r t ific ia l »

El término «Inteligencia Artificial» se debe a John McCarthy, que lo acuña a mediados de los años 50 al organizar un congreso sobre nuevas perspectivas de la investigación en informática. El congreso se celebró en Dartmouth (EE.UU.) en 1956, y ésa es la fecha que se suele consid­

erar como la del nacimiento oficial de la disciplina. Desde entonces el término «Inteligencia Artificial» no ha dejado de ser criticado por la in­ dudable ambigüedad que supone la combinación de las palabras que lo forman. Téngase en cuenta que el propio concepto de «inteligencia hu­ mana» que se maneja en psicología científica resulta altamente proble­ mático, pese a la ingente cantidad de investigación desarrollada sobre el tema. En la actualidad es posible llevar a cabo cierto tipo de mediciones psicológicas de la inteligencia, pero la interpretación de las mismas y, sobre todo, la propia definición del concepto siguen siendo temas com­ plejos y muy abiertos (para una discusión véase p.e. Sternberg, 1987). N o es de extrañar, por tanto, que en otros ámbitos (informática, filoso­

fía, neurología

qué pueda ser una «inteligencia artificial». De hecho, hay desde los que ingenuamente tratan de definirla objetivamente, hasta los que niegan su posibilidad, pasando por los que la caracterizan circularmente como el trabajo que hacen los que dicen que hacen Inteligencia Artificial, o los pragmáticos que ofrecen listas de capacidades que caracterizarían a un ente inteligente (sea éste una máquina o un ser vivo). Sin embargo, y es­ to es lo importante, el término no sólo no ha sido abandonado sino que, más de treinta años después de su invención, se sigue utilizando y está totalmente consolidado como forma de identificar una rama de I+D (Investigación y Desarrollo) en el campo de la informática. En efecto, la línea de trabajo que se identifica con la etiqueta de «Inteligencia Artificial» (IA a partir de ahora) ha desarrollado y organi­ zado un conjunto de ideas, técnicas y productos que constituyen todo

puedan encontrarse todo tipo de opiniones acerca de

)

13

P S I C O L O G I A

E

I N T

E L I G E N C I A

A R T I F I C I A L

un nuevo ámbito disciplinar. Lo relevante, por tanto, no es la discusión acerca de posibles interpretaciones semánticas, más o menos literales, de las palabras que conforman el término, sino el nuevo ámbito de .tra­ bajo que se trata de delimitar con ellas. De esto último es de lo que nos ocuparemos aquí. Pues bien, si entramos en su contenido, la IA no es más que una de­ terminada forma de programar ordenadores, es decir, de utilizarlos co­ mo herramientas para realizar tareas y resolver problemas. En este sen­ tido la IA es una rama, o una parte, de la informática. Pero es una rama peculiar, que se distingue de la informática convencional tanto por el ti­ po de problemas que aborda como por la forma en que lo hace. En efecto, lo que hoy día entendemos convencionalmente por informática hace referencia al uso de ordenadores para procesar algoritmos lógico- matemáticos capaces de realizar tareas procedimentalmente definidas, o resolver problemas formalmente planteados. Dicho de otra forma, para que los problemas o tareas puedan ser tratados mediante esta informá­ tica convencional, valga decir, para que puedan ser abordados con la ayuda de las aplicaciones que suelen tener los ordenadores al uso, es ne­ cesario que previamente hayan sido analizados y descritos en términos de un procedimiento secuencial, sistemático y exhaustivo, capaz de al­ canzar automáticamente la salida correcta a partir de los datos de en­ trada. Esto no sólo implica que un ordenador no puede hacer nada para lo que no esté programado, cosa que es una tautología, sino que para programarlo con los medios de la informática convencional es necesario describir, exacta y exhaustivamente, todos los pasos a realizar para al­ canzar el resultado deseado (organigrama algorítmico). Esto es una cla­ ra limitación en cuanto al tipo de tareas que se pueden mecanizar con este paradigma. Cualquiera que tenga alguna experiencia en el manejo o explotación de ordenadores se ha encontrado, más de una vez, con la imposibilidad de mecanizar lo que desearía. Sin embargo, la informática convencional, pese a sus limitaciones, es la que ha dado lugar a los programas de cálculo científico e indus­ trial, las herramientas informáticas (bases de datos, tratamientos de texto, hojas de cálculo), las aplicaciones de gestión (p.e. nóminas, con­ tabilidad, gestión de stocks) y las aplicaciones de tratamiento de infor­ mación digitalizada (diseño gráfico, síntesis musical, tratamiento de on­ das). En definitiva, todo lo que ofrece la actual informática comercial. Ahora bien, esto no excluye, tal como acabamos de señalar, que exis­ tan muchas tareas y problemas que no pueden ser abordadas con esa aproximación algorítmica, porque o bien no es posible reducir el pro­ blema a dimensiones razonables, o bien no se sabe cómo describir su tratamiento de manera exacta y exhaustiva. Un ejemplo típico de lo primero es el juego del ajedrez. Si se intenta programar algorítmica­ mente un ordenador para que calcule sistemáticamente todas las posi­ bles jugadas a partir del inicio del juego, nos encontramos Con que muy pronto se desborda la capacidad de cualquier ordenador existente o

14

I N T R O D U C C I O N

AL

C A M P O

DE

LA

I N T

E L I G E N C I A

ARTIFICIAL

imaginable. Un ejemplo de lo segundo es el diagnóstico médico, que es una tarea cuyo «algoritmo» se desconoce. N o existe una fórmula lógi­ co-matemática que nos permita obtener automáticamente un diagnós­ tico a partir de un subconjunto de todos los síntomas posibles; senci­ llamente, nadie sabe formularla, incluidos los propios profesionales ex­ pertos en diagnosticar enfermedades. Sin embargo, no se trata de pro­ blemas irresolubles. Los seres humanos son capaces de realizar esas ta­ reas (jugar al ajedrez y diagnosticar enfermedades) con un razonable grado de éxito. Por tanto hay que suponer que la mente humana, ade­ más de realizar cálculos, es capaz de operar con otro tipo de estrate­ gias diferentes. Y esto ocurre con otras muchas actividades humanas tales como mantener una conversación, identificar los obstáculos y co­ ordinar los movimientos al conducir o practicar algún deporte, dirigir una empresa, realizar descubrimientos científicos, etc. Todas estas acti­ vidades exigen un cierto grado de «inteligencia» y no parecen fácil­ mente abordables mediante métodos algorítmicos. La cuestión enton­ ces es: ¿sería posible programar los ordenadores de esa «otra forma» para que pudiesen enfrentarse a ese tipo de tareas y problemas? Pues bien, el intento de responder a esta pregunta dio origen a la IA. Evidentemente, esa pregunta no fue posible formularla hasta que la informática convencional no había alcanzado un determinado grado de desarrollo, dejando patente las limitaciones de la aproximación al­ gorítmica en el abordaje de cierto tipo de tareas y problemas. Por otra parte la respuesta a esa pregunta pasaba, en primer lugar, por profun­ dizar en cómo resuelven esas situaciones los seres humanos (psicología cognitiva) y, en segundo lugar, exigía imaginar una nueva forma de programar los ordenadores capaz de recoger la forma de pensar de la mente humana (programación de heurísticas). Ambas cosas, junto con el nombre de «Inteligencia Artifical», aparecieron por primera vez en el mencionado congreso de Dartmouth, y por ello se le considera el congreso fundacional de la IA. A partir de ese momento puede decirse que la IA queda acotada co­ mo un campo de investigación interdisciplinar (surgido de la informá­ tica y en conexión con la psicología, lingüística, neurología, etc.), que trata de abordar problemas y tareas no-algorítmicamente tratables (pe­ ro que sí resuelven los seres humanos), mediante el diseño de progra­ mas de ordenador que implementan procedimientos no-exhaustivos (heurísticos), inspirados en el funcionamiento mental humano (psicolo­ gía cognitiva y neurología). Posteriormente las investigaciones y traba­ jos realizados siguiendo esta idea se han ido diversificando, acotando y desgajando, con la aparición de diversos campos específicos de desa­ rrollo que, a su vez, han dado lugar a definiciones más concretas y a enconadas discusiones teóricas sobre la posibilidad de construir má­ quinas que verdaderamente imiten la «inteligencia humana». Sin em­ bargo, como ya subrayábamos anteriormente, lo importante es que, en el tiempo transcurrido desde sus orígenes, la IA, entendida como una

15

I N T R O D U C C I O N

AL

C A M P O

DE

LA

I

N T E L I G E N C I A

ARTIFICIAL

cia en el Renacimiento es el enorme desarrollo de las matemáticas ba­ sado en los números arábigos, que sustentó toda una gama de disposi­ tivos orientados a la realización autom ática de cálculos numéricos. Pascal y Leibniz realizaron importantes aportaciones en esa línea, dise­ ñando máquinas de cálculo. A principios del siglo XIX, Charles Babbage logra construir su má­ quina analítica, que ya se considera como la primera calculadora artifi­ cial, en el sentido actual del término. Se trataba de un artefacto basado en engranajes y ruedas dentadas construidos de madera, lo que al pare­ cer supuso un costo excesivo, dada la cantidad y precisión que exigía. Babbage se arruinó y su máquina tampoco pudo ser explotada. Sin em­ bargo, sirvió para mostrar definitivamente la viabilidad efectiva de la idea de construir un dispositivo artificial capaz de realizar cálculos complicados que, en cierto sentido, podían ser calificados de inteligen­ tes. Pero, además, sirvió para acotar una primera operativización de lo que podría considerarse como una «maquina pensante»: sería una má­ quina capaz de realizar los cálculos numéricos necesarios para resolver problemas matemáticos. Esta identificación de la inteligencia con el cál­ culo lógico-matemático era un axiom a indiscutible. La idea original provenía de Aristóteles, que hacía una clara distinción entre la memo­ ria, que guardaba datos literales, y el entendimiento, que razonaba siguiendo las leyes de la lógica. En el Renacimiento esta idea fue reto­ mada y difundida por Descartes, siendo asumida por la mayoría de los filósofos posteriores, hasta llegar al siglo XX. Durante el primer tercio del siglo XX, y gracias al desarrollo de la ingeniería electrónica, aparecen los primeros computadores digitales que, sin ningún género de dudas, ya son máquinas capaces de realizar cálculos numéricos de manera automática. Por tanto, con la aparición y desarrollo de los computadores se cierra definitivamente la discusión acerca de la posibilidad de construir máquinas capaces de realizar los cálculos numéricos que subyacen a la resolución de problemas matemá­ ticos relativamente complejos. Sin embargo, este avance, lejos de zanjar la discusión acerca de la viabilidad de lo que hoy día llamamos IA, abrió una nueva e interesante polémica respecto de lo que se puede considerar como «pensamiento inteligente». La cuestión ahora sería la siguiente. Es indiscutible que un computador es una máquina capaz de procesar información. Es decir, un computador es capaz de retener sím­ bolos en su memoria y manipularlos, según una secuencia pre-definida que se denomina «programa». A su vez, con esos ingredientes es posi­ ble programar los computadores para que resuelvan cualquier proble­ ma que podamos plantear en términos de un algoritmo, o sea, como una sucesión pre-definida de cálculos num éricos exhaustivos. Finalmente, es indiscutible que si un sujeto humano realiza ese tipo de operaciones matemáticas algorítmicas, por ejemplo para calcular una raíz cuadrada o el área de un polígono, asumimos que ese sujeto es in­ teligente. Sin embargo, eso no nos permite calificar automáticamente a

17

P S I C O L O G I A

E

I N T E L I G E N C I A

A R T I F I C I A L

los computadores como «máquinas inteligentes», porque la cuestión ahora es dilucidar si esos ingredientes son suficientes para producir el fenómeno que calificamos de inteligencia. Una cosa es llevar a cabo al­ guna de las tareas puntuales que realizan los seres inteligentes, y otra muy diferente ser inteligente. De la misma forma que el auto-movi- miento es característico de la vida, pero no todo sistema capaz de au­ to-moverse está vivo; al menos parece obvio que un auto-móvil no lo está. En este contexto algunos autores de principios del presente siglo argumentaban que la inteligencia propiamente dicha era algo exclusi­ vo de los seres dotados del «espíritu de la vida» y, por tanto, los com­ putadores jamás podrían llegar a ser inteligentes, por mucha capaci­ dad de cálculo que llegaran a mostrar. Incluso hoy día se pueden en­ contrar argumentaciones que le niegan a los computadores la posibili­ dad de sustentar pensamiento inteligente por razones tales como que no están constituidos evolutivamente, que no viven en un medio so­ cio-cultural, o que carecen del grado de incertidumbre que caracteriza el funcionamiento de los cerebros neuronales que sustentan la inteli­ gencia natural. Pues bien, frente a este tipo de actitudes negativas a priori, A. M. Turing propuso en 1950 una alternativa pragmática. Definió un experimento hipotético en el cual una persona se comuni­ caría mediante teletipo con dos interlocutores; uno de ellos sería un ser humano y el otro sería un computador. A partir de aquí Turing postulaba que si esa persona no era capaz de distinguir cuál era el in­ terlocutor humano y cuál el artificial, tendría que concluirse que el computador se estaba comportando de manera inteligente, con lo que planteaba una definición a posteriori de la inteligencia. Este experi­ mento ocurrió accidentalmente unos años más tarde con un programa llamado ELIZA (vid. Boden, 1977), y hoy día sería muy fácil de re­ producir utilizando una máquina de jugar al ajedrez. Pero lo realmen­ te trascendente de la aportación de Turing es que rescata la cuestión del ámbito de las discusiones de ciencia-ficción, y la ubica en el con­ texto de la investigación empírica. En efecto, para resolver la cuestión acerca de si una máquina puede sustentar pensamiento inteligente más allá del cálculo algorítmico, no sólo cabe argüir postulados filo­ sóficos, sino que con ayuda de los computadores también es posible ponerse manos a la obra. Pues bien, el resultado de esta segunda op­ ción abrió una nueva forma de trabajar con los computadores que se separa claramente de la línea constituida por la informática conven­ cional, dando lugar a un ingente volumen de nuevas ideas, herramien­ tas y aplicaciones que, con independencia de que se quieran conside­ rar como auténtica inteligencia artificial, o no, el hecho innegable es que son de una gran trascendencia y, sobre todo, que ofrecen unas in­ discutibles posibilidades futuras. En el cuadro 1 se ofrece una síntesis de los hitos más importantes que precedieron a la aparición de la IA.

18

I N T R O D U C C I O N

AL

C A M P O

DE

LA

I

N T E L I G E N C I A

AR TI FI CI AL

350 a.C.

Aristóteles crea la lógica como form alización del proceso de ra­ zonamiento humano.

1110

Raimundo Llull, en su Ars magna describe una máquina capaz de realizar razonamiento teológico y científico (esta máquina es­ taba inspirada en la «z a n ja », que era una máquina similar crea­ da por los árabes).

1120

Abelardo de Bath traduce del árabe el libro de álgebra (en base decimal) de Al-Guarismi (850).

1642

Blaise Pascal diseña una máquina de calcular.

 

1694

Gottfried Leibnitz presenta su «Calculadora universal».

 

1747

Le Metrié publica su obra L ’homme machine.

 

1822

Charles Babbage diseña y construye su «M áquina analítica».

1915

Leonardo Torres Quevedo construye un autóm ata capaz de ju ­ gar al ajedrez.

1936

Alan Mi Turing diseña formalmente

una «M áquina universal»

que demuestra la viabilidad de un dispositivo físico para imple-

mentar cualquier cómputo formalmente definido.

 

1943

McCulloch y Pitts diseñan una «neurona electrónica».

 

1944

Comienza a funcionar oficialmente el MARK I (considerado el primer ordenador digital moderno).

1948

Norbert Wiener crea la cibernética.

 

1950

Turing propone una prueba empírica (el «Test de Turing») para verificar la posibilidad de que una máquina sea capaz de pensar de manera inteligente.

1952

Aparece

el IBM

701

(primer ordenador

potente

para

cálculo

científico).

Cuadro 1.- Hitos en la historia de la IA (Antecedentes)

3.

E l

n a c im ien t o

de

la

In t e l ig e n c ia

A r tificia l

Para entender el significado de esa nueva forma de programar ordena­ dores que se denomina IA, es necesario acotar claramente lo que hasta entonces se venía haciendo con los ordenadores, y que hoy día seguimos haciendo bajo el nombre de informática convencional. Esta informática convencional es la que se orienta a la explotación de las posibilidades de los computadores para procesar algoritmos. Los primeros ordenadores construidos a principios de los años 50 tenían unas capacidades de ma-

19

P S I C O L O G I A

E

I

N T E L I G E N C I A

A R T I F I C I A L

nipulación simbólica muy limitadas, por lo que, aunque efectivamente procesaban información, apenas si podían manejar unos cuantos núme­ ros y algunas operaciones aritméticas elementales. Esto, si bien resultaba muy prometedor, no permitía a aquellas primeras máquinas abordar ta­ reas mínimamente complejas y, mucho menos, realizar operaciones so­ fisticadas. Sin embargo, la situación cambiaría drásticamente en muy pocos años. El exponencial desarrollo de la tecnología de diseño electró­ nico, tras la Segunda Guerra Mundial, permitió un espectacular aumen­

to cuantitativo en la potencia del hardware de los ordenadores digitales.

A finales de los años 60 este aumento en la cantidad de información que

podía manejarse permitió a su vez el desarrollo del software y, sobre to­ do, su avance cualitativo. Aparecieron entonces los lenguajes de progra­ mación de primera generación y, a continuación, los sistemas operati­ vos y otras herramientas de apoyo al desarrollo. Con ello se crearon las condiciones para la aparición, en los años 70, de las primeras aplicacio­

nes comerciales, tales como los procesadores de textos, las bases de da­ tos, los sistemas de procesamiento matemático, las aplicaciones de ges­ tión de stocks, de nóminas, de gestión bancaria, etc. Finalmente, en los años 80, el desarrollo de los ordenadores personales, que actualmente alcanzan potencias muy superiores a las de los grandes ordenadores de

la pasada década, junto con nuevos avances cualitativos en el software,

han generalizado y popularizado el uso de lo que se denomina informá­ tica convencional, que está presente en la mayoría de los ámbitos de la vida cotidiana (para una revisión de la historia de la informática con­ vencional véase p.e. Arroyo, 1991). La informática convencional, pese su impresionante aumento cuanti­ tativo y cualitativo, sigue limitándose al «procesamiento algorítmico de la información». Es decir, sólo resuelve las tareas que se pueden abor­ dar en términos de algoritmos lógico-matemáticos que operan sobre ba­ ses de datos. En esencia, un algoritmo es un procedimiento de ordena­

ción secuencial de una serie de fórmulas lógico-matemáticas totalmente explícitas, que operan de forma exhaustiva sobre cierto tipo de datos. A su vez, los datos, en este contexto, son tablas de códigos numéricos que representan información directamente tratable mediante operaciones ló­ gico-matemáticas. Un ejemplo de algoritmo puede ser el procedimiento para calcular los plazos que hay que pagar por un préstamo de x pese­ tas a n años. Este tipo de problemas algorítmicos se pueden programar muy fácilmente con las herramientas de programación disponibles en cualquier ordenador personal (p.e. BASIC). Además, para ayudarnos a diseñar estrategias formales encaminadas a resolver problemas de ese ti­ po, contamos con todos los desarrollos de la matemática y la lógica for­ mal, con lo que la capacidad de resolución de problemas mediante pro­ cesamiento algorítmico de la información es realmente importante. Ahora bien, el tratamiento algorítmico de la información no agota las posibilidades de resolución de problemas relevantes. Existen, efectiva­ mente, muchos problemas y tareas que resulta muy difícil, o práctica-

20

I N T R O D U C C I O N

Al

C A M P O

DE

LA

I

N T E L I G E N C I

A

ARTI FI CI AL

mente imposible, abordar directamente mediante estrategias formales implementables en un procesamiento lógico-matemático de información. Por ejemplo, siguiendo con el tema de los préstamos, el problema se complicaría si lo que quisiéramos fuera programar los criterios por los que un empleado de una entidad bancaria debe decidir si se puede conce­ der, o no, un determinado préstamo a un cliente que lo solicita. Cuestio­ nes tales como la apariencia del cliente, la estimación de la probabilidad de que el cliente devuelva el préstamo, o la adecuación de la concesión de ese crédito a la política coyuntural de la entidad o a los intereses pun­ tuales de la sucursal que trata con el cliente, no son directamente trata­ bles mediante el tipo de análisis que habitualmente subyace a la defini­ ción de las fórmulas lógico-matemáticas al uso. La razón es que en ese ti­ po de problemas y decisiones juegan un papel clave ciertos procesos de percepción, pensamiento, motivación y lenguaje que no son algorítmicos porque no se basan en razonamientos directamente cuantificables, sino que dependen de procesos aproximativos y difusos, basados en la expe­ riencia, el sentido común e, incluso, la intuición, típicas del pensamiento humano. En definitiva, parece evidente que el comportamiento que de­ nominamos inteligente se apoya en algo más que puro cálculo. Una de las primeras utilizaciones de los computadores para realizar tareas que van más allá del simple cálculo consistió en implementar mo­ delos de simulación. La simulación, que es anterior a la aparición de los ordenadores, consiste básicamente en experimentar con modelos de algún fenómeno real. Un caso muy típico consiste, por ejemplo, en cons­ truir una maqueta a escala de una embarcación o un coche, para reali­ zar experimentos para comprobar su comportamiento bajo determina­ das condiciones. Más simple todavía es el caso de colocar sacos de tierra en un puente u otra edificación recién construida, para simular el peso que habrá de soportar cuando efectivamente se utilice. Ahora bien, cuando se conocen las formulas que modelizan la resistencia de materia­ les, aunque sólo sea de forma aproximada, es posible realizar esa simu­ lación mediante cálculos más o menos tentativos. De hecho, este tipo de cálculos vienen siendo habituales en ingeniería y arquitectura. Con la llegada de los computadores ha sido posible complejizar cuantitativa y cualitativamente este tipo de simulaciones, ampliando grandemente las posibilidades de esta técnica. En concreto, la inclusión del calculo de probabilidades abrió todo un nuevo campo de trabajo que, por ejemplo, incluye la simulación de la reproducción de especies en sus nichos ecoló­ gicos, teniendo en cuenta los recursos alimenticios, los depredadores, las enfermedades, etc. En definitiva, la simulación, en tanto que experimen­ tación con modelos formalizados, si bien se apoya en cálculos puramen­ te numéricos, permite abordar problemas complejos que van más allá de los que tradicionalmente se podían resolver mediante el cálculo conven­ cional. Pero estas técnicas también exigen una formalización estadística del problema, con lo que dejan fuera una gran cantidad de tareas no formalizables que resuelve la «inteligencia humana».

21

P S I C O L O G I A

E

I

N T E L I G E N C I A

A R T I F I C I A L

Otra aproximación en la utilización del ordenador para resolver problemas no fácilmente calculables es la búsqueda en árboles de deci­ sión. Aquí la idea es que los algoritmos no operen sobre bases de datos planas (simples listas/tablas de datos) sino sobre información estructu­ rada en árboles de decisión previamente construidos. Para ello se ha llegado a desarrollar un lenguaje de programación específico, el PRO­ LOG, que permite construir dichos árboles y realizar búsquedas ex­ haustivas en ellos. Con esta aproximación, actualmente denominada programación lógica, es posible resolver tareas tales como planifica­ ción de recursos o diagnóstico de averías, que son tareas típicas de la IA. Sin embargo, la exigencia de disponer previamente de un árbol que incluya todos los caminos posibles (sin círculos viciosos) limita las po­ sibilidades de aplicación de esta aproximación. Algunos autores incluyen la simulación y/o la programación lógica dentro del ámbito de la IA, pero otros muchos consideran que no se puede hablar de auténtica IA hasta que no se trasciende el cálculo numérico formalizado y se pasa directamente a emular en los compu­ tadores las estrategias no-exhaustivas que se supone utiliza la mente humana. Pues bien, el primer paso concreto en esta nueva línea de in­ vestigación se dio en la ya famosa conferencia de Dartmouth. El ya mencionado Delclaux (1982) lo describe así:

En el verano de 1956 se reunieron (

computación, con el propósito de aprovechar las ideas que existían hasta aquel momento sobre ordenadores, con la intención de construir una máquina de múl­

tiple uso que fuera capaz de realizar funciones que cayeran fuera del puro cálcu­ lo numérico, que era el fin para el que habían sido construidas hasta entonces. Es decir, se pretendía sacar a los ordenadores de su uso exclusivo como calcula­

doras, para tratar de llevar a cabo acciones inteligentes. (

dades como

grande para aquellos momentos en la ciencia de la computación que su espíritu

estaba presente a través de sus publicaciones (op. cit., p. 25).

Turing, pero de una u otra forma su impacto había sido ya tan

en Dartmouth los grandes especialistas en

)

)

Faltaban personali­

El resultado de esta famosa conferencia fue el inicio de una nueva línea de explotación de las posibilidades de los computadores que se denomina IA y que se separa claramente de lo que hoy día conocemos como informática convencional. La IA, tal como quedó establecida de hecho en Dartmouth, no sólo pretende utilizar los ordenadores para realizar tareas inteligentes, sino que definitivamente se enfrenta con el reto de que los ordenadores aborden dichas tareas mediante estrategias que imiten o, por lo menos, se asemejen a la mente humana. Volvamos ahora a la conferencia de Dartmouth y retomemos el mencionado trabajo de Delclaux (1982), porque a aquella conferencia «acudieron dos desconocidos, cuyos nombres eran Alien Newell y Herbert Simón. Estos dos científicos ha­ bían estado trabajando en un programa de ordenador que trataba de

22

I N T R O D U C C I O N

AL

C A M P O

DE

LA

I N T E L

I G E N C I A

ARTIFICIAL

llevar a cabo operaciones similares a las que realiza el ser humano en sus actividades de pensamiento. Concretamente este programa, deno­ minado Logic theorist, permitía resolver algunos de los teoremas de los Principia mathematica de Whitehead y Russell. Lo interesante era que en la construcción de ese programa los mencionados autores se ha­ bían interesado no sólo por lograr que su programa funcionara, sino que lo hiciera mimetizando la mente de los matemáticos cuando tratan de demostrar teoremas. Para ello habían introducido una novedad me­ todológica consistente en la utilización de un lenguaje intermedio entre los lenguajes estándar de programación y las descripciones verbales que los expertos hacían acerca de la forma en que se debían resolver ese tipo de problemas. Esta idea habría de resultar enormemente fruc­

tífera, aunque, en principio, el esfuerzo de estos autores no fue aprecia­ do en toda su medida» (Minsky, 1963). Una de las razones por las que inicialmente no se comprendió la importancia de las ideas de Newell y Simón era que, por entonces, to­ davía se pensaba que la aproximación computacional-algorítmica, pese

a las evidentes limitaciones que presentaba, sería capaz de resolver la mayoría de los problemas relevantes. Sólo era cuestión de más tiempo

y de más investigación. Éste es un error muy común en la historia de la

ciencia o, mejor dicho, en la trayectoria personal de los científicos;

cuando se enfrentan con un fracaso, en lugar de cuestionar el método

o la estrategia (lo que les obligaría a cambiar su forma de pensar),

cuestionan los medios (lo que justifica un aumento en los presupues­ tos). En cualquier caso, problemas muy interesantes tales como la tra­ ducción automática, la visión artificial, el aprendizaje o la resolución de problemas en contextos de información incompleta se mostraron

muy resistentes al abordaje mediante estrategias algorítmicas. Fue en­ tonces cuando los investigadores que trabajaban en informática con­ vencional comenzaron a comprender que había que explorar otras aproximaciones en la programación de los ordenadores, si se quería te­

ner algún éxito en el abordaje de dichos problemas. Pues bien, la mejor idea acerca de cómo podía ser esa otra aproximación era la de Newell

y Simón, a saber, tratar de analizar cómo lo hace la mente humana,

para emular ese funcionamiento mediante programas de ordenador di­ señados al efecto. Ahora bien, para poner en práctica esa idea era necesario dar dos pasos fundamentales. El primero era que los investigadores informáti­ cos se volvieran hacia sus colegas que investigaban esos temas (psicólo­ gos, lingüistas, neurólogos, biólogos, etc.) y trataran de utilizar los co­

nocimientos obtenidos en dicha áreas para diseñar nuevas estrategias de abordaje de los problemas. El segundo era diseñar herramientas in­ formáticas (lenguajes) capaces de implementar esas nuevas estrategias. Pues bien, la profundización en ambos aspectos es lo que constituye el desarrollo de la IA, dando lugar a los distintos campos de investiga­ ción que la constituyen.

23

4 .

El

P S I C O L O G I A

E

I N T E L I G E N C I A

A R T I F I C I A L

d e s a r r o l l o

d e

l a

I n t e l ig e n c ia

A r t if ic ia l

Tal como acabamos de señalar, la idea seminal que subyace a la IA, y que aparece en Dartmouth, es la de que puede merecer la pena explo­ rar otras formas de programación de ordenadores que no se limiten a los formalismos de la lógica y la matemática convencional, sino que traten de emular el funcionamiento mental humano. Rápidamente esta idea caló en unos cuantos investigadores que, a su vez, la operativiza- ron de maneras muy distintas. Con ello empezó un largo camino que, si bien inicialmente parecía muy prometedor, pronto tropezó con grandes dificultades que frenarían su desarrollo. Incluso a finales de los años 60 se llegó a afirmar que la IA era inviable. Sin embargo, a mediados de los 70 la IA recibe un nuevo impulso que culmina en los 80 con la definitiva consolidación de la IA como área de investigación y desarrollo con importantes aplicaciones prácticas y comerciales. En la figura 1 se ofrece un esquem a de esta evolución, siguiendo a Winston (1987). Para profundizar en el análisis de lo que hoy día constituye la IA, convendrá hacer algunas distinciones básicas. En primer lugar, hay que

1990

 

Primer Congreso Internacional sobre redes neuronales COMERCIALIZACION Creación de empresas de IA

1980

XCON: Primer sistema experto comercial

 

CONSOLIDACION

 

Nace la ingeniería del conocimiento

1975

 

RENACIMIENTO

 

MYCIN: Primer sistema experto: basado en reglas

1970

 

EPOCA OSCURA

Reducción drástica en la financiación de la investigación en IA

1965

DENDRAL: Primer sistema experto operativo

 

PRIMEROS CLASICOS Primeros laboratorios de IA

1960

 

NACIMIENTO

Creación del LISP Conferencia de Dartmouth

1955

 

PREHISTORIA

i

Í

i

Figura 1.- Evolución de la IA (Adaptado de Winston, 1987)

24

!

I N T R O D U C C I O N

AL

C A M P O

DE

LA

I

N T E L I G E N C I A

ARTI FICIAL

separar lo que es investigación básica, la IA propiamente dicha, de lo que es el desarrollo de aplicaciones comerciales, que se denomina inge­ niería del conocimiento. Por otra parte, es importante distinguir los te­ mas, o áreas de investigación, de las herramientas metodológicas con que se trabaja. Tal como ya hemos señalado, la diferencia entre la IA y la informática convencional se debe tanto al tipo de problemas que abordan (áreas de investigación), como al tipo de estrategias de pro­ gramación con que los abordan (herramientas metodológicas). Pues bien, a continuación revisaremos cada uno de estos aspectos por sepa­ rado, aunque evidentemente tienen gran relación entre sí.

4.1. Áreas de investigación en Inteligencia Artificial

Tal como ya hemos señalado, los intentos por construir máquinas inte­ ligentes capaces de mostrar algunos de los comportamientos propios de la mente humana son anteriores a la aparición de los ordenadores (p.e. máquinas de calcular, robots mecánicos). Tras la aparición de és­ tos, y antes de que se desarrollaran las técnicas de IA, también se esta­ ban abordando comportamientos mentales mediante estrategias for­ males (p.e. la traducción automática, la simulación del funcionamiento neuronal). Pero con la aparición y desarrollo de la idea de emular el funcionamiento mental humano, tal como se aborda desde la IA, todos esos intentos, dispersos, convergen y se estructuran bajo esta nueva rú­ brica. La razón es que todos ellos están vinculados con un «núcleo central» constituido por las estrategias mentales de manipulación del conocimiento. Simplificando mucho podríamos decir que la IA estruc­ tura el comportamiento inteligente humano en cinco grandes bloques, o áreas (véase figura 2), que dan lugar a las grandes líneas de investiga-

“núcleo básico” EMULACION DEL RAZONAMIENTO SIMBOLICO

PROCESAMIENTO NEURONAL

VISION

ARTIFICIAL

FUNCIONAMIENTO

TRATAMIENTO

DEL

LENGUAJE

MENTAL

HUMANO

í

CUERPO

HUMANO

ROBOTICA

Figura 2.- Graneles áreas de investigación en IA

25

P S I C O L O G I A

E

I

N T E L I G E N C I A

A R T I F I C I A L

ción en IA: razonamiento simbólico, simulación del funcionamiento neuronal, tratamiento del lenguaje natural, visión artificial y robótica. A continuación las analizaremos brevemente.

4.1.1. Emulación del razonamiento simbólico

El núcleo básico de las investigaciones en IA es el resultado de exten­ der las ideas de Turing, operativizadas por Newell y Simón. Tal como ya se ha señalado, se trata de emular la forma de razonar que tiene la mente humana cuando se enfrenta con tareas que no son resolubles mediante cálculo. El caso típico de aplicación de esta idea fue el de la construcción de máquinas capaces de «jugar» al ajedrez. Cuando este problema se aborda con métodos puramente lógico-matemáticos, re­ sulta que las combinaciones posibles a analizar a partir de una situa­ ción de partida aumentan de forma logarítmica. Es lo que se llama la «explosión combinatoria». Este fenómeno hace que, aunque el proble­ ma sea teóricamente resoluble mediante cálculo, en la práctica sea im­ posible calcularlo en un ordenador, ya que éste debería tener una po­ tencia de procesamiento de información prácticamente ilimitada. Sin embargo, cuando el problema se abordó con la estrategia propuesta por Newell y Simón, acudiendo al estudio del pensamiento de los juga­ dores de ajedrez expertos, se encontró que lo que ellos hacían era algo muy diferente. En concreto, el «pensamiento de los expertos» sólo operaba con unas pocas estructuras «significativas» de combinaciones de piezas, que son las que tienen significado, y con las reglas que per­ mitían pasar de unas a otras. Cuando se programó los ordenadores con estos criterios, se alcanzaron dos importantes logros. El primero fue la construcción de un programa que efectivamente jugaba razona­ blemente bien al ajedrez (una versión mejorada de ese primer progra­ ma es lo que tienen las máquinas de jugar al ajedrez que hoy día se venden como electrodomésticos). La segunda consecuencia, mucho más trascendente, es que a partir de ese momento quedó establecida una nueva forma de programación que trascendía el «procesamiento de la información». Es decir, se había encontrado una alternativa a la idea de abordar los problemas tratando de resolverlos en términos de «algoritmos» que operan sobre «datos». Esta nueva forma de progra­ mación, que por analogía podríamos denominar el «procesamiento de conocimiento», no utiliza las posibilidades de procesamiento de los or­ denadores para implementar algoritmos, sino para emular artificial­ mente ciertos aspectos de los procesos que subyacen al pensamiento humano. En concreto, lo que se hizo fue descomponer el conocimiento de los expertos en reglas del tipo:

Si: se cumple tal y cual condición, Entonces: realícese determinada acción. Mediante este formalismo, denominado «producción», es posible

26

I N T R O D U C C I O N

Al

C A M P O

DE

LA

I N T

E L I G E N C I A

ARTI FICIAL

describir con bastante exactitud todo el conocimiento que utiliza un jugador de ajedrez experto a la hora de tomar decisiones sobre la si­ guiente jugada. Si a esa descripción se le aplica un mecanismo que, en ¡función del estado en que se encuentra la partida, identifique las pro­ ducciones que se cumplen y realiza las acciones correspondientes (mo­ tor de inferencias), tenemos las bases para programar el «conocimiento heurístico» (no-algorítmico, no exhaustivo) con que opera un jugador de ajedrez (para mayor profundización, véase el capítulo 6). Con el tiempo han ido apareciendo nuevas formas de representar el conocimiento simbólico (redes semánticas, esquemas, marcos, etc.; véanse los capítulos 3-6) y nuevas formas de manejarlo (véanse los ca­ pítulos sobre modelización lógica de procesos de solución de proble­ mas, sistemas basados en el conocimiento, y el apartado dedicado a las herramientas metodológicas de la IA, en este mismo capítulo). Sin em­ bargo, la idea básica continúa siendo la misma. Para emular el razona­ miento simbólico heurístico, que utiliza la mente humana para resolver problemas que no son abordables mediante cálculo puro, es necesario dotar al ordenador de dos cosas: de una «representación simbólica» del medio sobre el que ha de operar, y de algún tipo de «estrategia in- ferencial» capaz de operar sobre dicha representación simbólica para extraer conclusiones a partir de datos sobre el estado en que se encuen­ tra el medio en un momento dado. La gran diferencia con la informáti­ ca convencional es que ya no es necesario describir formalmente todos los pasos que ha de dar el programa para alcanzar la solución, sino que es el mecanismo inferencial el que «busca» su camino a través de la representación, para alcanzar la solución, o soluciones posibles (pa­ ra una explicación más detallada, véase el capítulo 6). En definitiva, el núcleo de la IA viene constituido por las investiga­ ciones que se orientan a encontrar y perfeccionar formas de describir funcionalmente los escenarios en los que se plantean los problemas de razonamiento humano, así como las estrategias inferenciales con las que se analizan. Posteriormente este núcleo se ha ampliado con el abordaje de otros muchos procesos cognitivos vinculados con el pensamiento, en general. Por ejemplo, se ha trabajado en el aprendizaje automático (Michalski et a i, 1982), el razonamiento analógico basado en casos (ver capítulo 3), la demostración automática de teoremas (Wos et al., 1984), y otros procesos mentales de naturaleza simbólica y relacionados con el razo­ namiento, como la programación automática de ordenadores (para una revisión pueden consultarse manuales como p.e. Barr y Feigen- baum, 1982; Shapiro, 1987).

4.1.2. Simulación del funcionamiento neuronal

Tal como acabamos de revisar, el núcleo original de la IA se comienza a partir del desarrollo de algunas ideas acerca de cómo se podría pro-

27

P S I C O L O G I A

E

I N T

E L I G E N C I A

A R T I F I C I A L

gramar en un ordenador convencional las estrategias heurísticas del razonamiento simbólico que realiza la mente humana. Ahora bien, ese razonamiento simbólico se apoya en el funcionamiento fisiológico de las neuronas. Por tanto, existía una clara alternativa. Si se quiere que un ordenador funcione como una mente humana, ¿por qué no se pro­ grama para que funcione como un conjunto de neuronas conectadas como las del cerebro humano? De hecho, en 1943 McCulloch y Pitts propusieron la idea de construir neuronas artificiales (electrónicas) y con ellas diseñar un «cerebro artificial». Su idea no tuvo continuidad inmediata, entre otras razones porque no propusieron ideas viables acerca de cómo programar semejante máquina. Sin embargo, varias décadas mas tarde la idea resurgirá, dando lugar a lo que hoy día co­ nocemos como redes neuronales. Las redes neuronales no operan en el plano simbólico, es decir, no implementan una representación explícita del escenario sobre el que «razonan». En realidad funcionan a modo de filtros estadísticos (sub- simbólicos) capaces de aprender a identificar determinado tipo de pa­ trones numéricos, a partir de una cantidad suficiente de ejemplos. En este sentido se asemejan bastante a muchos procesos perceptuales hu­ manos, como, por ejemplo, aprender a identificar las letras del alfabe­ to o a reconocer la cara de un amigo. Si alguien nos pide que le descri­ bamos las reglas por las que somos capaces de saber que determinado garabato es una «a» y no una «d », no podremos darle ninguna clave explícita, simplemente en la infancia hemos aprendido a discriminar las letras por puro ejercicio (más o menos doloroso). Pues bien, las re­ des neuronales son una formalización matemática que se aproxima a ese tipo de aprendizaje, aunque todavía están lejos de alcanzar la efica­ cia de los mecanismos perceptivos naturales (para una discusión de es­ tos aspectos, ver capítulo 5). Otra aproximación sub-simbólica al funcionamiento de las neuro­ nas como mecanismos perceptuales es lo que Zadeh (1965) desarrolló bajo el nombre de «lógica difusa» (Fuzzy Logic). En este caso no se trata de emular la arquitectura de las neuronas, sino su funcionalidad. El funcionamiento neuronal en el análisis perceptual no opera con una lógica dicotómica sí/no, sino con «aproximaciones» intermedias entre ambas opciones. La lógica difusa es una estrategia matemática de aná­ lisis de datos que admite y trata ese tipo de información ambigua. Evidentemente, los avances en esta línea de simulación del funcio­ namiento neuronal interesan tanto a los investigadores de la IA como a los neurólogos. De la colaboración entre ambos ha surgido una nue­ va línea de investigación interdisciplinar denominada neurociencia.

4.1.3. Tratamiento del lenguaje natural

Existe una importantísima línea de investigación orientada al estudio de las estrategias que permiten a un ente comprender y producir dis­

28

I N T R O D U C C I O N

AL

C A M P O

DE

LA

I

N T E L I G E N C I A

ARTI FI CI AL

cursos lingüísticos. Esta línea tiene su origen en los trabajos de Chomsky, y se continúa con los desarrollos de la psicolingüística (para una revisión, véase Belinchón et al., 1992). Todos estos avances han puesto de manifiesto que para que un ente sea capaz de comprender y producir discursos lingüísticos es imprescindible que posea algún tipo

de representación del escenario al que se refiere el discurso. Pues bien,

para abordar este problema resulta ineludible acudir a los desarrollos

de la IA, tal como mostró Winograd (1972). Desde entonces la colabo­

ración entre la lingüística, la psicología del lenguaje y la IA se ha con­ vertido en imprescindible para avanzar en este cam po (Anderson, 1976; Winograd, 1982).

4.1.4. Visión artificial

Bajo el nombre de «visión artificial» se estudian las estrategias inteli­ gentes que permiten a un ente interpretar las imágenes que capta del medio. Al igual que en las líneas anteriores, aquí nos encontramos con un problema que ya venía siendo abordado antes de la aparición de la IA, pero que hoy día es inseparable de ella. Con la invención de la cámara fotográfica y, posteriormente, de la cámara de TV, queda resuelto el problema de imitar el funcionamiento del ojo humano. Pero entonces se descubre que la interpretación de una imagen dista de ser una tarea trivial; por el contrario, transformar una pura imagen (que no es ni más ni menos que una superficie bidimensio- nal con diversos patrones luminosos) en una disposición tridimensional de objetos identificados es uno de los problemas computacionales más complejos que se ha intentado resolver. De hecho, hasta que no se abordó desde la perspectiva de la IA (Marr, 1982), no se comenzó a avanzar significativamente en este problema.

4.1.5. Robótica

La robótica es el estudio de los mecanismos de control que permiten a un ente mecánico moverse en un medio físico y/o manipular elementos físicos con cierto grado de autonomía. Tal como ya hemos comentado, la idea de construir autómatas es muy antigua. Además del ya citado trabajo de Le Metrié (1747), y por la misma época, Jacques Vaucanson

construyó un famoso «pato mecánico» que hacía varios movimientos típicos de los patos, graznaba e, incluso, imitaba la conducta de comer

y defecar. Este ingenio, construido mediante dispositivos de relojería

parecidos a los de los relojes de cuco, fue muy conocido en las cortes europeas de la época. La idea se extendió y se realizaron cientos de au­ tómatas, incluidos algunos fraudes como la máquina que jugaba al aje­ drez y que, en realidad, estaba manipulada por una persona oculta en su interior. En cualquier caso, todos estos autómatas no pasaban de ser

juguetes para el entretenimiento de la nobleza.

29

P S I C O L O G I A

E

I

N T E L I G E N C I A

A R T I F I C I A L

Con la revolución industrial de finales del XIX comenzaron a aparecer los robots orientados a la realización de tareas laborales, dando lugar al verdadero desarrollo de la robótica. En el siglo XX estos robots ya no te­ nían apariencia humanoide, sino que se tratabas de máquinas herra­ mientas (electromecánicas) que admitían cierto grado de programación. Ahora bien, para que una máquina alcance verdadera autonomía de fun­ cionamiento ha de ser capaz de tomar sus propias decisiones, auto-modi­ ficando su programación en función de los objetivos de la tarea que ha de realizar. Un primer avance en este sentido se debe a Wiener (1948), inventor de la cibernética. La cibernética, que en principio no tiene nada que ver con la informática, aunque a menudo se confunden, es la disci­ plina que estudia los sistemas capaces de auto-regularse mediante retro­ acción (feed-back). A partir de Wiener la robótica se convierte en una disciplina consolidada. Sin embargo, para hacer efectiva esa auto-regula­ ción resulta imprescindible añadir ciertas capacidades «inteligentes» (vi­ sión, razonamiento), y esto es lo que aporta la IA a la robótica (Craig, 1986). En este sentido, muchos autores no consideran a la robótica co­ mo parte de la IA, sino a ésta como un ingrediente de aquélla. En cual­ quier caso, es indudable que la robótica actual forma parte del conjunto de disciplinas que se benefician del núcleo básico de la IA.

4.2. Herramientas metodológicas de la Inteligencia Artificial

Hasta aquí hemos revisado el tipo de problemas de los que se ocupa la investigación propia de la IA; ahora revisaremos sucintamente el tipo de herramientas metodológicas que le permiten abordar dichos problemas.

4.2.1. Lenguajes de programación

Al año siguiente de la Conferencia de Dartm outh, el propio

McCarthy da a conocer un nuevo lenguaje de programación, el LISP, que implementaba un nuevo paradigma de programación. Este paradig­ ma, basado en funciones orientadas al tratamiento recursivo de listas de items, se convertirá en uno de los pilares de la IA, al ser utilizado en la construcción de alguno de los sistemas emblemáticos (p.e. MYCIN). A

diferencia del COBOL, del FORTRAN o del BASIC, el LISP no es un lenguaje secuencial, es decir, no opera a partir de una secuencia ordena­ da de instrucciones, con posibilidad de hacer bucles y direccionamien- tos go to. En su lugar, en LISP se definen funciones con argumentos de entrada y valores de salida, permitiéndose la recursividad, es decir, la posibilidad de introducir una función como elemento de sí misma. En cuanto a los datos, el LISP no opera con tablas (de acceso secuencial o aleatorio), sino con listas de items que pueden componerse recursiva- mente a partir de listas. Todas estas características técnicas suponen una conceptualización de los problemas totalmente diferente de la que exige la programación convencional. Bajo LISP una tarea no se inter­

John

30

I N T R O D U C C I O N

AL

C A M P O

DE

LA

I N T E L I G E N C

I A

ARTI FI CI AL

preta como una secuencia de cálculos y decisiones sucesivas, sino como una estructura de funciones que transforman la información de entrada en la información de salida deseada. Pues bien, esta nueva visión no só­ lo permitió abordar y resolver problemas que hasta entonces se habían resistido a la programación procedural tradicional, sino que contribuyó decisivamente a cambiar la noción de «pensamiento». Pensar no es sólo una cuestión de calcular ciegamente todos los valores que se pueden ob­ tener a partir de unos datos, sino que es una búsqueda intencional de cierto tipo de resultados. Dicho de otra forma, en la resolución de un problema cuentan tanto los datos de entrada como el tipo de solución que se busca. Por tanto, para resolver un problema no basta con aplicar algoritmos de cálculo a los datos disponibles, sino que hay que orientar y «sesgar» esos cálculos desde la perspectiva del tipo de resultados que se desean. Ésta es la gran aportación del LISP a la filosofía de la IA. Durante la década de los 80, el LISP ha sido progresivamente sustituido por otro lenguaje, el «C », como herramienta para el desarrollo de pro­ gramas de IA (y de informática convencional). Pero el «C » mantiene y hereda esas ideas pioneras desarrolladas por McCarthy, aunque técni­ camente posea características diferenciales propias. Otro lenguaje de programación que está muy relacionado con la IA es el ya mencionado PROLOG. Este lenguaje permite resolver proble­ mas mediante la programación de estrategias propias de la lógica for­ mal (véase el capítulo 4 sobre modelización lógica de procesos de solu­ ción de problemas). Más recientemente ha surgido otro paradigm a de programación denominado «Programación Orientada a Objetos» (OOP). Este para­ digma se caracteriza por representar el conocimiento en forma de uni­ dades conceptuales (llamadas «objetos»), en lugar de operar con infor­ mación en forma de «datos». Tal como ya hemos comentado, las ideas básicas en que se apoya la IA señalan la necesidad de dotar al ordena­ dor de una representación funcional del escenario en que se define la tarea o problema a abordar. Pues bien, una forma «natural» de descri­ bir un escenario es hacerlo en términos de los objetos y clases de obje­ tos que lo constituyen, incluyendo la descripción del comportamiento propio de cada uno. Esto es precisamente lo que permiten este tipo de lenguajes. Con ellos es posible construir una jerarquía de clases de ob­ jetos, indicando el comportamiento y las características de cada uno, y con la posibilidad de que una sub-ciase «herede» las características de su «padre». Por ejemplo, si creamos la clase «anim al», incluyendo las características propias de todo animal (es un ser vivo, come, etc.), luego podremos construir una sub-clase «animales-domésticos» en la que só­ lo tendremos que indicar las características específicas de esta sub-clase (tiene dueño, tiene nombre, etc.). Una vez construida la jerarquía, el ra­ zonamiento se implementa a base de «procedimientos» asociados a ca­ da objeto. Por ejemplo, podemos asociar a la clase «animales-domésti- cos» el procedimiento «identificar-al-dueño», de manera que cuando lo

31

P S I C O L O G I A

E

I N T E L I G E N C I A

A R T I F I C I A L

apliquemos a cualquier elemento de esa clase nos devuelva el nombre concreto del dueño de ese animal. Este tipo de paradigma de programación se ha mostrado muy útil para representar cosas tales como los componentes de un proceso de fabricación, sobre el que hay que razonar para detectar averías. De he­ cho, algunos autores vaticinan que en un futuro inmediato todos los lenguajes de programación, sean o no de IA, incorporarán la posibili­ dad de crear este tipo de representaciones. En cualquier caso, lo que nos interesa destacar aquí es que se trata de una estrategia totalmente diferente de la aproximación secuencial algorítmica propia de los len­ guajes informáticos convencionales.

4.2.2 Shells y entornos

Tal como acabamos de señalar, los lenguajes de programación de la IA han sido diseñados para poder construir con ellos determinadas repre­ sentaciones de la realidad. Ahora bien, una vez que se desarrollaron las primeras aplicaciones, se descubrió que era posible transferir algunos procedimientos generales válidos para la mayoría de los sistemas que tuviesen una representación del problema similar. En concreto, el desa­ rrollo del M YCIN, sistema experto para el diagnóstico de enfermeda­ des infecciosas (ver capítulo 6), dio lugar a la idea de quitar los aspec­ tos específicos del tema, para dejar sólo la estructura o cáscara (sbell en inglés) de lo que sería un sistema de diagnóstico en general. Así na­ cen los shells que son herramientas construidas con algún lenguaje de programación (p.e. LISP o C), que añaden a las funciones generales propias de todo lenguaje de programación otras muchas funciones es­ pecíficas para el desarrollo de sistemas inteligentes. Hoy día existen cientos de herramientas de este tipo en el mercado, y son ampliamente utilizadas en el desarrollo de aplicaciones de IA. Un segundo grupo de herramientas propias de la IA viene constitui­ do por los instrumentos que se han desarrollado como ayuda en alguna fase del proceso de desarrollo de sistemas basados en el conoci­ miento. Estas herramientas se orientan principalmente hacia el proble­ ma de la adquisición del conocim iento (véase capítulo 8), y el desarrollo de la interfaz de usuario (capítulo 9). Finalmente, y bajo esa misma idea de ofrecer herramientas que ya incluyen funciones específicas para desarrollar aplicaciones concretas, pueden incluirse otro tipo de productos como son los hipertextos y los sistemas multimedia (Knee y Atkinson, 1990). Estas herramientas no son específicas de la IA, aunque su desarrollo y utilización suele mo­ verse muy cerca de ella.

4.3. Las aplicaciones de la Inteligencia Artificial

Hasta aquí hemos visto la IA como un campo de investigación básica.

32

I N T R O D U C C I O N

AL

C A M P O

DE

LA

I

N T E L I G E N C I A

A R T I F I C I A L

Ahora bien, como toda investigación básica, la IA ha dado lugar a de­ sarrollos tecnológicos de carácter aplicado. De hecho, desde la década de los 80, las aplicaciones comerciales de la IA y la creación de empre­ sas comerciales dedicadas a vender herramientas de IA han tenido un crecimiento exponencial (véase, p.e., Rauch-Hindin, 1985). En 1977 Feigenbaum bautizó esta actividad como ingeniería del conocimiento, dando a entender que se trataba de una nueva ingeniería orientada a la construcción de sistemas de conocimiento.

5. R ecapitu la ció n fin a l

En este capítulo se ha tratado de presentar una panorámica general del desarrollo del campo de la IA, con especial énfasis en los elementos que la definen y caracterizan. En el cuadro 2 se resumen algunos de los hitos más importantes de este desarrollo. En resumen podemos decir que la IA ha de ser interpretada en primer lugar como una forma alter­ nativa y complementaria de desarrollar aplicaciones informáticas. A su

1955

Alan Newell y Herbert Simón desarrollan el Logic Theorist, primer pro­ grama diseñado desde la perspectiva de la IA.

1956

John McCarthy organiza la Conferencia de Dartmouth y acuña el término «Inteligencia Artificial».

Rosemblatt publica su trabajo sobre el «Perceptron».

1957

McCarthy desarrolla el LISP, primer lenguaje de programación orientado a la IA.

Chomsky desarrolla la noción de «Gramática generativa».

Newell, Shaw y Simón comienzan a trabajar en el GPS (Solucionado!' General de Problemas).

1965

Edward Feigenbaum et al. desarrollan DENDRAL, el primer sistema ex­ perto.

1968

M. R. Quillian desarrolla el concepto de «red semántica».

1972

Shortliffe, Buchanan et al. desarrollan MYCIN, y crean el paradigma de sistemas expertos basados en reglas con incertidumbre.

Terry Winograd desarrolla SHRDLU.

Newell y Simón publican la obra «Human Problem Solving» («produccio­ nes» y «protocolos»).

1974

Marvin Minsky desarrolla el concepto de «marco».

1975

En el MIT se construye la primera máquina LISP.

1977

Feigenbaum acuña el término «Ingeniería del Conocimiento».

1980

DEC desarrolla el Rl/XCO N, primer sistema experto comercial.

Cuadro 2.- Hitos en la historia de la IA (hasta 1980)

33

P S I C O L O G I A

E

I

N T E L I G E N C I A

A R T I F I C I A L

vez hay que subrayar que esa forma alternativa se caracteriza por dos cosas: 1) el tipo de tareas y problemas que aborda, y 2) el tipo de he­ rramientas metodológicas con que trabaja. Ambas cosas permiten utili­ zar los ordenadores para representar escenarios complejos y realizar sobre ellos razonamientos que, pese a no ser ni exhaustivos ni sistemá­ ticos, alcanzan soluciones aceptables. En este sentido la IA, en princi­ pio, imita a, y se base en, la forma en que funciona la mente humana, como base para programar ordenadores. Esto ha dado lugar a un nue­ vo campo de investigación y desarrollo que en la actualidad contiene gran cantidad de teoría, métodos y herramientas, así como productos capaces de desarrollar comportamientos inteligentes en la resolución de múltiples tareas. A su vez esta investigación en IA ofrece dos con­ juntos de aportaciones relevantes que van más allá de su propio cam­ po. Por un lado, ayuda a la comprensión de los procesos psicológicos humanos y, por otro, permite desarrollar aplicaciones informáticas de gran utilidad práctica.

34

I N T R O D U C C I O N

AL

C A M P O

DE

LA

I N T

E L I G E N C I A

AR TI FI CI AL

REFERENCIAS BIBLIOGRAFICAS

Anderson, J.R. (1976). Language, memory and thought. L.E.A. Arroyo, L. (1991). 200 años de informática. Espasa Calpe. Barr, A. y Feigenbaum, E.A. (Eds.) (1982). The Handbook of Artificial In- telligence. (3 vols.). Addison Wesley. Belinchón, M., Riviére, A. e Igoa, J.M . (1992). Psicología del lenguaje. Investigación y teoría. Trotta. Colby, K.M. (1975). Artificial paranoia. Pergamon Press. Craig, J.J. (1986). Introduction to robotics: mechanics and control. Addison Wesley. Delclaux, I. (1982). Introducción al procesamiento de información en psicolo­ gía. En I. Delclaux y J. Seoane (Eds.), Psicología cognitiva y procesamiento de la información. Pirámide. Delclaux, I. y Seoane, J. (Eds.) (1982). Psicología cognitiva y procesamiento de la información. Pirámide. Gardner, H. (1985). La nueva ciencia de la mente. Paidós. Gevarter, W.M. (1985). Máquinas inteligentes. Trad. Díaz de Santos, 1987 . Knee, N. y Atkinson, S.D. (Comps.) (1990). Hypertex/Hypermedia. Greenwood Press.

Marr, D.A. (1982). Vision: a com putational investigation into the human repre- sentation and Processing o f visual information. Freeman.

McCorduk, P. (1979). Machines who think. Freeman. Le Metrié (1747). L ’homme machine. Trad. Alhambra, 1987 . Michalski, R.S., Carbonel, J.G. y Mitchell, T.M. (Eds.) (1982). Machine lear- ning, an Artificial Intelligence approach. Tioga. Minsky, M. (1963). Steps toward Artificial Intelligence. En Feigenbaum y Feldman (Eds.), Computers and thought. McGraw-Hill. Newell, A. y Simón, H. (1956). The logic theory machine. Reproducido en Feigenbaum y Feldman (Eds.) (1963). Computers and thought. McGraw- Hill. Newell, A. y Simón, H. (1972). Human problem solving. Prentice Hall. Rauch-Hindin, W.B. (1985). Aplicaciones de la IA en la actividad empresarial, la ciencia y la industria. Trad. Díaz de Santos, 1989 . Rolston, D.W. (1987). IA y Sistemas Expertos. Trad. McGraw-Hill. Shapiro, S.C. (Ed.) (1987). Encyclopedia of Artificial Intelligence (2 vols.). John Wiley & Sons. Steels, L. (1992). Knowledge systems. EUROPACE. Turing, A.M. (1936). On computable numbers, with an application to the Entscheindungsproblem. Proceedings of the London Mathematical Society. Series 2, 42, pp. 230-265. Turing, M.A. (1950). Intelligent machinery. Reproducido en Collings y Smith (Eds.) (1988). Readings on cognitive Science. Kaufman. Wiener, N. (1948). Cybernetics, or control and commnunication in the animal and the machine. Wiley.

35

P S I C O L O G I A

E

I N T E L I G E N C I A

A R T I F I C I A L

Winograd, T. (1972). Understanding natural languaje. Acadermc Press. Winograd, T.(1982). Language as a cognitive process. (Vanos vols.). Addison Wesley.

Winston, P.H. (1987). Artificial Intelligence: a perspective. En Grimson y Patil (Eds.), Al in the 1980s and beyond. The MIT Press. Wos, L., Overbeek, R., Lusk, E. y Boyle, J. (1984). Automated reasoning. Introduction and applications. Prentice Hall.

Zaccagnini, J.I

una psicología del conocimiento. Estudios de Psicología, 22, pp. 19-32. Zaccagnini, J.L. y Delclaux, I. (1982). Psicología cognitiva y procesamiento de

(1985). «Modelos de Mundo» como marco de referencia de

la infomación. En I. Delclaux y J. Seoane (Eds.), Psicología cognitiva y pro­ cesamiento de la infomación. Pirámide.

36