You are on page 1of 54

INTELIGENCIA ARTIFICIAL

1

INTRODUCCION

En donde se intentara explicar por que se considera a la inteligencia artificial tema digno de estudio y en donde se intentara definirla, siendo esta tarea muy recomendable antes de emprender de /lena su estudio.

EI hombre se ha aplicado a si mismo el nombre cientifico de homo sapiens (hombre sabio) como una valoracion de la trascendencia de nuestras habilidades mentales tanto para nuestra vida cotidiana como en nuestro propio sentido de identidad. Los esfuerzos del campo de la inteligencia artificial, 0 lA, se enfocan a lograr la comprension de entidades inteligentes. Por ello, una de las razones de su estudio es el aprender mas acerca de nosotros mismos. A diferencia de la filosofia y de la psicologia, que tambien se ocupan de la inteligencia, los esfuerzos de la IA estan encaminados tanto a la construccion de entidades inteligentes como a su comprension. Otra razon por la cual se estudia la IA es debido a que las entidades inteligentes asi construidas son interesantes y utiles por derecho propio. No obstante las fases tempranas en las que aun se encuentra, mediante la IA ha sido posible crear diversos productos, de trascendencia y sorprendentes. Si bien nadie pod ria pronosticar con toda precision 10 que se podria esperar en el futuro, es evidente que las computadoras que pose an una inteligencia a nivel humano (0 superior) tendran repercusiones muy importantes en nuestra vida diaria asi como en el devenir de la civilizacion.

EI problema que aborda la IA es uno de los mas complejos: l,como es posible que un diminuto y lento cerebro, sea biologico 0 electronico, tenga capacidad para percibir, comprender, predecir y manipular un mundo que en tamafio y complejidad 10 excede con creces? l,Como es posible crear apoyandose en esas propiedades? Preguntas dificiles, sin duda, pero a diferencia de la investigacion en tomo al desplazamiento mayor que la velocidad de la luz 0 de un dispositivo antigravitatorio, el investigador del campo de la IA cuenta con pruebas contundentes de que tal busqueda es totalmente factible. Todo 10 que este investigador tiene que hacer es mirarse en el espejo para tener ante si un ejemplo de sistema inteligente.

La IA es una de las disciplinas mas nuevas. Formalmente se inicia en 1956, cuando se acufio el termino, no obstante que ya para entonces se habia estado trabajando en ello durante cinco afios. Junto

3

4

Capitulo I.

Introduccion

con la genetica moderna, es el campo en que a la mayoria de los cientificos de otras discipIinas "mas les gustaria trabajar". Es justificada la opinion de un estudiante de fisica que considere que todas las ideas interesantes de este campo ya fueron propuestas por Galileo, Newton, Einsten y otros mas, por 10 -que se necesitaria de muchisimos afios de estudio antes de que alguien pueda contribuir con una idea novedosa. Por el contrario, en el campo de la IA todavia hay muchas areas donde uno podria desempefiarse como un Einstein de tiempo completo.

El estudio de la inteligencia es una de las disciplinas mas antiguas. Por mas de 2 000 afios, los filosofos se han esforzado por comprender como se ve, aprende, recuerda y razona, asi como la manera que estas actividades deberian realizarse.' La llegada de las computadoras a principios de la dec ada de los afios cincuenta permitio pasar de la especulacion, a nivel de charlas de cafe, en torno a estas facultades mentales a su abordaje mediante una autentica discipIina teorica y experimental. En opinion de muchos, los nuevos "supercerebros electronicos" tendrian un ilimitado potencial de inteligencia. "Mas rapidos que Einstein", era un comentario comun de la epoca. Pero asi como sirvio para crear entidades inteligentes artificiales, la computadora tambien ha sido una herramienta para probar teorias sobre la inteligencia, muchas de las cuales fracasaron: un caso de "10 que unicamente es valido como charla de cafe, a la basura". La IA ha resultado ser algo mucho mas complejo de 10 que muchos imaginaron al principio, porque las ideas modernas relacionadas con ella se caracterizan por su gran riqueza, sutileza y 10 interesante que son.

En la actualidad la IA abarca una enorme cantidad de subcampos, desde areas de proposito general, como es el caso de la percepcion y del razonamiento logico, hasta tareas especificas, como el ajedrez, la demostracion de teoremas matematicos, la poesia y el diagnostico de enfermedades. No es raro que los cientificos de otros campos vayan gradualmente incursionando en la inteligencia artificial, un area que cuenta con herramientas y vocabularios que a estos cientificos les facilitan sistematizar y automatizar to do el trabajo intelectual que les ha ocupado buena parte de sus vidas. Por otra parte, a aquellos que laboran en la IA se les ofrece la opcion de aplicar su metodologia en cualquier area que tenga que ver con las tareas del intelecto humano. En este ultimo sentido, la IA es un campo genuinamente universal.

1.1 ~QUE ES LA IA?

Hasta ahora solo se ha comentado 10 interesante que es la lA, sin haber dicho que es. Podriamos limitarnos a decir: "Bueno, como tiene que ver con el disefio de program as inteligentes, hagamos eso, escribamos algunos." Pero la historia de la ciencia nos demuestra la conveniencia de emprender esfuerzos en la direccion correcta. Es muy probable que los primitivos alquimistas, en su busqueda del elixir de la inmortalidad y del metodo para convertir plomo en oro, hayan errado el camino. No fue sino hasta que la atenci6n se enfoco en la elaboracion de teorias explicitas para predecir con precision los fenomenos del mundo terrestre, tal como la astronomia predecia el movimiento aparente de estrellas y planetas, cuando surgi6 el metodo cientifico as! como una ciencia productiva.

En la figura 1.1 se presentan definiciones de 10 que es la inteIigencia artificial, de acuerdo con ocho autores recientes. Estas definiciones varian en torno ados dimensiones principales. Las que aparecen en la parte superior se refieren a procesos mentales y al razonamiento, en tanto que las de la parte inferior aluden a la conducta. Por otra parte, las definiciones de la izquierda miden la condicion

I EI objeto de estudio de una rama de la filosofia recientemente creada es el demostrar la imposibilidad de la IA. En el capitulo 26 se aborda este interesante punto de vista.

Seccion 1.1.

l.Que es la IA?

5

"La interesante tarea de lograr que las compu- "EI estudio de las facultades mentales median-
tadoras piensen ... mdquinas con mente, en su te el uso de modelos computacionales. "
amplio sentido literal." (Haugeland, 1985.) (Chamiak y McDermott, 1985.)
"[La automatizacion de] actividades que vin- I "EI estudio de los calculos que permiten per-
culamos con procesos de pensamiento huma- \ cibir, razonar y actuar." (Winston, 1992.)
no, actividades tales como toma de decisiones, I
resolucion de problemas, aprendizaje ... " (Be-
llman, 1978.) I
!
I
"EI arte de crear maquinas con capacidad de I "Un campo de estudio que se enfoca a la ex-
realizar funciones que realizadas por personas j plicacion y emulacion de la conducta inteli-
requieren de inteligencia." (Kurzweil, 1990.) gente en funcion de procesos computaciona-
"EI estudio de como lograr que las computa- j-les." (Schalkoff, 1990.)
doras realicen tareas que, por el momento, los I "La rama de la ciencia de la computacion que
humanos hacen mejor. " (Rich Knight, se ocupa de la automatizacion de la conducta
y
1991.) inteligente." (Luger y Stubblefield, 1993.)
Figura 1.1 Algunas definiciones de IA. Se agrupan en cuatro categorias:
Sistemas que piensan como humanos. Sistemas que piensan racionalmente.
Sistemas que actuan como humanos. Sistemas que actuan racionalmente. RACIONALIDAD

deseable en funcion de eficiencia humana, mientras que las de la derecha 10 hacen de conformidad con un concepto de inteligencia ideal, denominado racionalidad. Se considera que un sistema es racional si hace 10 correcto. De acuerdo con 10 anterior, en la inteligencia artificial existen cuatro posibles objetivos por alcanzar, como se comenta en el pie de pagina de la figura 1.1.

A 10 largo de la historia se han adoptado los cuatro enfoques anteriormente mencionados. Desde luego, existe una tension entre enfoques centrados en los humanos y los centrados en la racionalidad.l El enfoque centrado en el comportamiento humano constituye una ciencia empirica, que entraiia el empleo de hipotesis y de la confirmacion mediante experimentos. El enfoque racionalista combina matematicas e ingenieria. Los. miembros de estos grupos frecuentemente critican el trabajo realizado por los miembros de otros grupos, si bien todas las orientaciones han hecho valiosas aportaciones. A continuacion se comentara con mayor detalle cada uno de estos enfoques.

Actuar como humano: el enfoque de la prueba de Turing

PRUEBA DE TURING Mediante la prueba de Turing, propuesta por Alan Turing (1950), se intenta ofrecer una satisfactoria definicion operativa de 10 que es la inteligencia. Turing defini6 una conducta . jnteligente.comc lil..~a-

2 Conviene aclarar que al emplear los terrninos racional y humano, para referirse a una conducta, de ninguna manera se esta sugiriendo que los humanos son, en si, "irracionales", en el sentido de ser "emocionalmente inestables", 0 "rnentalrnente desequilibrados". Basta con decir que todos, y con frecuencia, cometemos errores; el hecho de conocer las reglas del ajedrez no nos convierte ipso facto en grandes maestros; no todos pueden obtener una calificacion de 10 en un examen. Kahneman et al. (1982) elaboro un catalogo de los errores que sisternaticamente se cometen en el razonamiento humano.

6

Capitulo I.

Introducci6n

PROCESAMIENTO DE LENGUAJES NATURALES

REPRESENTACION DEL CONOCIMIENTO

RAZONAMIENTO AUTOMATIZADO

AUTOAPRENDIZAJE DE MAQUINA

PRUEBA TOTAL DE TURING

VISION DE LA COMPUTADORA

ROSOTICA

pacidaddelograreficiencia a nivel humano en todas las actividades de tipo cognoscitivo, suficiente ~a enganar a un evaluador. Brevemente, la prueba que Turing propuso consistia e~~_l!l1 hurnano interrogasea una cornpiitadora por medio de un teletipo; la prueba se consideraba aprobada si el evaluador era incapaz de determinar si una computadora 0 un humano era quien habia respondido las preguntas en el-otro extremo de la t~rrni·naC En el capitulo 26 sc comentan detalles acerca de esta prueba asi como del eriterio de si una computadora debe considerares como inteligente en caso de pasar la prueba. Hoy por hoy, el trabajo que entrafia programar una computadora para pasar la prueba es considerable. La computadora deberia ser capaz de 10 siguiente:

o procesar un lenguaje natural, para asi poder establecer cornunicacion satisfactoria, sea en ingles 0 en cualquier otro idioma humane;

o representar el conocimiento, para asi guardar toda la informacion que se le haya dado antes 0 durante el interrogatorio;

() razonar automaticarnente, con el fin de utilizar la informacion guardada al responder preguntas y obtener nuevas concIusiones;

o autoaprendizaje de la rnaquina, para que se adapte a nuevas circunstancias y para detectar y

extrapolar esquemas determinados,

En Ia prueba de Turing deliberadamente se evito la interaecion fisica directa entre evaluador y cornputadora, dado que para medir la inteligencia era innecesario simular jisicamente a un humano. Sin embargo, en la denominada prueba total de Turing se utiliza una serial de video para que el evaluador pueda calificar la capacidad de percepcion del evaluado, y tambien para que aquel pueda pasar objetos fisicos "a traves de la trampa". Para aprobar la prueba total de Turing, es necesario que la computadora este dotada de :

o vista, que le permita percibir objetos y

o robotica, para desplazar estos.

En el campo de la IA no se han hecho muchos esfuerzos para pasar la prueba de Turing. La necesidad de actuar como los humanos se presenta basicamente cuando los programas de IA deben interactuar con gente, por ejemplo, cuando un sistema experto ha de explicar 10 justificado de un diagnostico, 0 cuando un sistema de procesamiento de lenguaje natural entabla dialogo con un usuario. Program as como los anteriores deberan comportarse de acuerdo con ciertas convenciones normales de las intcracciones humanas con el fin de poder entenderlos. Por otra parte, la manera de elaborar representaciones y de razonar en que se basan estos sistemas podra 0 no conformarse de acuerdo con un modele humano.

Pensar como humano: el enfoque del modelo cognoscitivo

Para poder afirmar que un programa determinado utiliza algun tipo de razonamiento humano, previamente habra que definir como piensan los seres humanos. Habra que penetrar en el funcionamiento de Ia mente humana. Hay dos form as de hacer esto: mediante la introspeccion (para intentar atrapar nuestros propios pensamientos con forme estos se van dando) 0 mediante la realizacion de experimentos psicologicos. Una vez que se cuente con una teoria bastante precisa de Ia mente, puede procederse a expresar tal teoria en un program a de computadora. Si los datos de entrada/salida del programa y la

Sccci6n 1.1.

i,Que es la IA?

7

CIENCIA COGNOSCITIVA

SILOGISMOS

LOGICA

LOGICISTA

duraci6n de tierppo de su comportamiento corresponden a los de la conducta humana, existe evidencia de que algunos de los mecanismos del programa tambien funcionan en los seres humanos. En el caso de Newell y Simon, creadores del SGP, solucionador general de problemas (Newell y Simon, 1961), no bast6 con que su programa resolviera correctamente los problemas propuestos. Lo que les interesaba fundamentalmente era seguir la pista de los pasos de razonamiento y compararia con la ruta seguida por sujetos human os a los que se propuso los mismos problemas. Esta actitud contrasta fuertemente con la de otros investigadores de la misma epoca (como es el caso de Wang, 1960), a quienes 10 que les importaba era la obtenci6n de respuestas correctas independientemente de c6mo las obtendria un ser humano. En el campo interdisciplinario de la ciencia cognoscitiva concurren model os computacionales de IA y tecnicas experimentales de psicologia para intentar elaborar teorias precisas y verificables del funcionamiento de la mente humana.

Si bien la ciencia cognoscitiva es un campo fascinante por si solo, en esta obra no se estudiara en detalle. Ocasionalmente se haran comentarios acerca de similitudes y diferencias que existen entre tecnicas de IA y cognici6n humana. La autentica ciencia cognoscitiva necesariamente se fundamenta en la investigaci6n experimental en seres humanos 0 animales; en esta obra se da por sentado que el lector unicamente cuenta con una computadora para hacer experimentos. S610 se desea asentar que la IA y la ciencia cognoscitiva siguen intercambiando diversas aportaciones, especialmente en areas de la vista, lenguaje natural y aprendizaje. En la pagina 13 se aborda brevemente la historia de las teorias psico16gicas de la cognici6n.

Pensar racionalmente: el enfoque de las leyes del pensamiento

EI fil6sofo griego Arist6teles fue uno de los primeros que intentara codificar la "rnanera correcta de pensar", es decir, procesos de pensamiento irrefutables. Sus famosos sH~gis!!1os son esquemas de estructuras de argumentaci6n mediante las que siempre se llega a co~siones ~rrectas si se parte de premisas correctas. Por ejemplo: "Socrates es un hombre; todos los hombres son mortales; por 10 tanto, S6crates es mortal." Dichas leyes del pensamiento debian gobemar la manera de operar de la mente. Asi se inaugur6 el campo de la Iogtca.

EI desarrollo de la 16gica formal a fines del siglo XIX y a principios del xx (de 10 que se hablara detalladamente en el capitulo 6) permiti6 contar con una notaci6n precisa para representar aseveraciones relacionadas con todo 10 que existe en el mundo, asi como sus relaciones mutuas. (A diferencia de 10 que sucede con la notaci6n de la aritmetica comun, en cuyo caso practicamente s610 se representan aseveraciones acerca de la igualdad y desigualdad entre nurneros.) Ya para 1965 existian program as que, contando con tiempo y memoria suficientes, podian describir un problema en notaci6n 16gica y encontrarle solucion, siempre y cuando esta existiese. (De no existir, el programa continuaria sin cesar de buscarla.) En la lA, la tradicion logicista se esfuerza por elaborar programas como el anterior para crear sistemas inteligentes.

Este enfoque presenta dos obstaculos. En primer lugar, no es facil recibir un conocimiento informal y expresario en los terminos formales que exige la notaci6n 16gica, especialmente cuando el conocimiento tiene menos de 100% de certidumbre. En segundo lugar, hay una gran diferencia entre la posibilidad de resolver un problema "en principio", y realmente hacerlo en la practica. Incluso problemas que entrafian una docena de elementos agotarian la capacidad de c6mputo de cualquier computadora a menos que se cuente con lineamientos sobre los pasos de razonamiento que hay que utilizar primero. Si bien los dos obstaculos anteriores estan presentes en todo intento de construir sistemas de razonamiento computacional, fue en la tradici6n logicista en donde surgieron por vez primera debi-

8

Capitulo I.

Introducci6n

AGENTE

'i

--' ,._

do a que la capacidad de los sistemas de representacion y de razonamiento est a bien definida y estudiada a profundidad.

Actuar en forma racional: el enfoque del agente racional

Actuar racionalmente implica actuar de manera tal que se logren los objetivos deseados, con base en ciertos supuestos. Un agente es algo capaz de percibir y actuar. (Quizas el empleo que se da a esta palabra sea poco comun, pero se ira acostumbrando a el.) De acuerdo con este enfoque, se considera la IA como el estudio y construccion de agentes racionales.

En el caso del enfoque de la IA segun las "leyes del pensamiento", todo el enfasis se ponia en hacer inferencias correctas. La obtencion de estas inferencias a vecesforma parte de 10 que se considera un agente racional, puesto que una manera de actuar racionalmente es el razonamiento logico que nos asegure la obtencion de un resultado determinado, con 10 que se actuara de conformidad con tal razonamiento. Sin embargo, el efectuar una inferencia correcta no siempre depende de la racionalidad, pues existen situaciones en las que no existe algo que se pueda considerar 10 que correctamente deberia hacerse, y sin embargo hay que decidirse por un curso de accion. Existen tambien maneras de actuar racionalmente que de ninguna manera entrafian inferencia alguna. Por ejemplo, el retirar la mano de una hornilla caliente es un acto reflejo mucho mas eficiente que una tardia actuacion emprendida despues de una cuidadosa deliberacion.

Todas las "habilidades cognoscitivas" que se necesitan en la prueba de Turing permiten emprender acciones racionales. Por 10 tanto, es necesario contar con la capacidad para representar el conocimiento y razonar con base en el, pues de esta manera se podran tomar decisiones correctas en una amplia gama de situaciones. Es necesario ser capaces de generar oraciones comprensibles en lenguaje natural, puesto que la enunciacion de tales oraciones nos permiten desenvolvernos en una sociedad compleja. EI aprendizaje no se emprende solo por erudicion, sino porque el profundizar en el conocimiento de como funciona el mundo facilitara concebir mejores estrategias para manejarse en el. La percepcion visual no es solo algo divertido, sino que es algo necesario para darse una mejor idea de 10 que una accion determinada puede producir (por ejemplo, el ver un delicioso bocadillo contribuira a la decision y accion de acercarse a el).

Estudiar la IA adoptando el enfoque del disefio de un agente racional ofrece dos ventajas. Primera, es mas general que el enfoque de las "leyes del pensamiento", dado que el efectuar inferencias correctas es solo un mecanismo util para garantizar la racionalidad, pero no es un mecanismo necesario. Segunda, es mas afin a la manera como se ha producido el avance cientifico que los enfoques basados en la conducta 0 pensamiento humanos, toda vez que se define c1aramente 10 que sera la norma de la racionalidad, norma que es de aplicacion general. Por el contrario, la conducta humana se adapta bien solo en un entorno especifico y, en parte, es producto de un proceso evolutivo complejo y en gran parte ignoto, cuya perfeccion todavia se ve distante. Por ello, esta obrase concentrara en los principios generales que rigen a los agentes racionales yen los elementos usados para construirlos. Mas adelante se vera que no obstante la aparente facilidad con la que se definen los problemas, cuando se intenta resolverlos surge una gran variedad de cuestiones. En el capitulo 2 se delinean con mas detalle tales cuestiones.

Hay que tener muy presente desde ahora: que mas tarde que temprano podra constatarse que 10- grar la racionalidad perfecta -siempre hacer 10 correcto-- no es posible en entornos complejos. EI computo que implican es excesivo. Sin embargo, a 10 largo de esta obra se asumira la hipotesis de trabajo en el senti do de que ser capaz de comprender la toma de decisiones perfecta ya es un buen comienzo. Lo anterior simplificara el problema y servira de escenario idoneo para todo el material basi-

Seccion 1.2.

Los fundamentos de la inteligencia artificial

9

RACIONALIDAD LlMITADA

co de este campo. En los capitulos 5 y 17 se trata en detalle el tema de la racionalidad limitada: actuar adecuadamente cuando no se cuenta con el tiempo suficiente para efectuar todos los calculos que seria deseable.

1.2 Los FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL

En esta seccion y en la siguiente se presenta una breve historia de la IA. Si bien el de la IA es un campo joven, es heredera de diversas ideas, puntos de vista y tecnicas de otras disciplinas. Durante mas de 2 000 afios de tradicion en filosofia han surgido diversas teorias del razonamiento y del aprendizaje, simultaneamente con el punto de vista de que la mente se reduce al funcionamiento de un sistema fisico. Durante mas de 400 afios de matematica, han surgido teorias formales relacionadas con la logica, probabilidad, toma de decisiones y la computacion. La psicologia ofrece herramientas que permiten la investigacion de la mente humana, asi como un lenguaje cientifico para expresar las teorias que se van obteniendo. La lingiiistica ofrece teorias sobre la estructura y significado del lenguaje. Por ultimo, la ciencia de la computacion, de la que se toman las herramientas que permiten que la IA sea una realidad.

Como en todo recuento historico, sera necesario concentrarse en un reducido numero de personas y hechos, y dejar a un lado otros que, sin embargo, tambien han sido importantes. Se opto por narrar los acontecimientos que informan de como surgieron los diversos componentes intelectuales que constituyen la IA. Conviene aclarar que de ninguna manera se intenta dar la impresion de que los esfuerzos emprendidos en cada una de las disciplinas de donde provienen los componentes estuvieron enfocados a la IA como su objetivo final.

Filosofia (de 428 a. C. al presente)

La mas fiel descripcion de 10 que constituye la tradici6n filos6fica europe a es afirmar que esta no es sino la suma de las glosas y comentarios hechos a la obra de Platen.

-Alfred North Whitehead

Todo empieza con el nacimiento de Platon en 428 a. C. La tematica de su obra es diversa: politic a, matematicas, fisica, astronomia y diversas ramas de la filosofia. Juntos, Platen, Socrates, su maestro, y Artistoteles, su alumno, sentaron las bases de gran parte del pensamiento y cultura occidentales. EI filosofo Hubert Dreyfus (1979, p. 67) afirma que: "Bien podria afirmarse que la historia de la inteligencia artificial comienza en el afio 450 a. c.", cuando Platon cita un dialogo en el que Socrates Ie pregunta a Eutidemo:" "Desearia saber cual es la caracteristica de la piedad que hace que una accion se pueda considerar como pia ... y asi la observe y me sirva de norma para juzgar tus acciones y las de otros.?" En otras palabras, 10 que Socrates deseaba era un algoritmo que Ie permitira diferenciar la piedad de la impiedad. Artistoteles dio un paso mas al formular con mayor precision las leyes que gobieman la parte racional de la mente. Concibio un sistema informal de silogismos para el razonamiento adecuado, los que en principio permiten generar mecanicamente conciusiones, asumiendo ciertas

3 En el dialogo Eutidemo se hace mencion de acontecimientos sucedidos antes del juicio de Socrates en el aiio 399 A. C. Es evidente que Dreyfus esta equivocado al situarlos 51 aiios antes.

4 Notese que en otras traducciones se usa "bondad/bueno" en vez de "piedad/pia".

10

Capitulo I.

Introduccion

DUAUSMO

MATERIALISMO

EMPIRISMO

INDUCCION

PQSITIVISMO LOGICO

ORACIONES DE OBSERVACION

TEORiA DE LA, CONFIRMACION

premisas iniciales. Aristoteles consideraba que no todas las partes de la mente estaban gobemadas por procesos logicos. Consideraba tarnbien la nocion de una razon intuitiva.

Ahora que se tiene la idea de un conjunto de reglas mediante las que se expJica el funcionamiento de la mente (0, por 10 menos, de una parte de ella), el siguiente paso consiste en considerar la mente como un sistema fisico. Habria que esperar hasta Rene Descartes (1596-1650) para contar con un estudio claro de la diferencia entre mente y materia y los problemas que originan. EI problema de una concepcion meramente fisica de la mente es que en ella parece no caber el Iibre albedrio: si la mente esta sujeta por completo a leyes fisicas, no tiene mas Iibre albedrio que una roca al "decidir" caer hacia el centro de la tierra. No obstante ser un denodado defensor de la capacidad del razonamiento, Descartes propuso la nocion de dualismo. Sostenia que existe una parte de la mente (0 del alma 0 del espiritu) que esta al margen de la naturaleza, exenta de la influencia de las leyes fisicas. Por el contrario, consideraba que en los animales no habia tal dualidad; se les podria concebir como si fueran maquinas,

Una altemativa al dualismo es el materialismo, que considera que todo el mundo (cerebro y mente incluidos) funciona sujeto a leyes fisicas." Probablemente haya sido Wilhelm Leibnitz (1646- 1716) quien lIevara por primera vez el punto de vista materialista a una conclusion logica y construyera un dispositivo mecanico cuyo proposito era la realizacion de operaciones mentales. Desafortunadamente, la formulacion de su logica resulto ser muy debil, por 10 que el generador mecanico de conceptos no logro dar ningun resultado interesante.

Es posible optar por una posicion intermedia, la que permite aceptar que la mente tiene una base fisica, pero que rechaza que esta pueda explicarse reduciendola a un mero proceso fisico. Es decir, procesos mentales y conciencia forman parte del mundo fisico, pero inherentemente no se les puede Ilegar a aprehender, estan mas alla de la comprension racional. Algunos filosofos que critic an la lA han asumido esta posicion, como se comenta en el capitulo 26.

Haciendo a un lado las posibles objeciones que se pudieran hacer al propos ito de la IA, la filosofia configuro una tradicion en que la mente se concibio como un dispositivo fisico que basicarnente funcionaba por razonamiento manejando el conocimiento en el depositado. EI siguiente problema consistio en definir la fuente del conocimiento. EI movimiento empirico, iniciado con el Novum Organum6 de Francis Bacon (l561-1626), se caracteriza por el aforismo de John Locke (1632-1704):

"Nada existe en la mente que no haya pasado antes por los sentidos". En A Treatise on Human Nature (Tratado de la naturaleza humana) (Hume, 1740), David Hume (1711-1776) propone 10 que actual-

mente se conoce como principio de la indueclon: las reglas generales se obtienen por contacto con repetidas asociaciones entre sus elementos. Bertrand Russell (1872-1970) le dio aun mas formalidad a esta teoria e introdujo el positivismo logico. Esta doctrina sostiene que todo el conocimiento se puede caracterizar mediante teorias relacionadas, en ultima instancia, con oraciones de observacion, que corresponden a entradas sensoriales.? Con la teo ria de la conflrmaclon Rudolf Camap y Carl Hempel intentaron definir el tipo de conexi on que existe entre oraciones de observacion y otras teorias de caracter mas general: en otras palabras, de comprender como se puede obtener conocimiento a partir de la experiencia.

EI ultimo elemento en esta descripcion filosofica de la mente es la relacion que existe entre conocimiento y accion, i.En que consiste esta relacion y como justificar determinadas acciones? Estas

5 Segun esta concepcion, surge la percepcion de un "Iibrc albedrio" debido a que la generacion detcrminista de la conducta es producto del funcionamiento de la mente que escoge entre 10 que parecerian ser posibles cursos de accion. Siguen siendo "posibles", puesto que el cerebro no tiene acceso a sus propios estados futuros.

6 Una actualizacion del Organon, 0 instrumento del pensamiento, de Aristoteles,

7 De acuerdo con esta teoria, es posible comprobar 0 rechazar toda aseveracion significativa, sea analizando cl significado dc las palabras 0 lIevando a cabo experimentos. Dado que esto rige en su mayoria a la mctafisica, como era la intencion, cl positivismo logico no gozo de popularidad en algunos circulos.

Scccion 1.2.

Los fundamentos de la inteligencia artificial

II

ANALISIS DE MEDIOS Y FINES

ALGORITMO

preguntas son vitales en lA, puesto que solo al comprender como se justifican determinadas acciones se puede entender como construir un agente cuyas acciones sean justificables 0 racionales. Aristoteles ofrece una elegante solucion en su Etica Nicomaquea (Etica a Nicomaco) (Libro III. 3, lI12b):

Lo que nos ocupa son los fines, no los medios. Un medico no se cuestiona si debera 0 no sanar, ni un orador si debera convencer 0 no, ni el estadista si debera instaurar la ley y el orden 0 no, como nadie se cuestiona su fin. Este se da por sentado y se considera el como y los medios para alcanzarlo, hasta que asi se lJega a la causa primera, que en el orden de 10 que se va descubriendo es la ultima ... y 10 que vienen al ultimo en el anal isis es 10 primero en cl orden de 10 que es apropiado. Pero si resultara que algo es imposible, se renunciaria a su obtencion: por ejemplo, necesito dinero pero no hay forma de conseguirlo; pero si algo parece posible de lograr, entonces se intenta.

EI cnfoque de Aristoteles (con unos cuantos refinamientos adicionales) fue implantado 2 300 afios mas tarde por Newell y Simon a traves de su programa SGP, del que comentan (Newell y Simon, 1972):

Los principales metodos del SGP conjuntan la heuristica del analisis de medios y fines. Este anal isis se caracteriza por el siguiente tipo de argumentacion basada en el sentido cornun:

Quiero lIevar a mi hijo a la guarderia. l,En que reside la diferencia entre 10 que tengo y 10 que deseo? En una distancia. l,Que puedo usar para eliminarla? Mi auto. Pero cste no arran ca. l,Que necesito para que funcione? Una bateria nueva. l,En donde hay baterias nuevas? En un taller de reparacion de autos. Quiero que los del taller instalen una nueva bateria; pero ellos ignoran que la necesito. l,En donde reside el problema? En la comunicacion, i,C6mo puedo cstablecerla? Con un tclefono ... etcetera.

Este tipo de analisis (clasificar las cosas de acuerdo con su funcion y pasar de fines, funciones requeridas y medios para realizarlas) constituye el sistema heuristico basico del SGP.

Aunque el analisis de medios y fines es util, no podra definir que hay que hacer cuando existen varias acciones mediante las que se puede obtener 10 mismo, 0 cuando no hay una accion que permita obtener 10 que se desea. Arnauld, discipulo de Descartes, propuso una acertada formula para decidir que accion emprender en casos como los anteriores (vease el capitulo 16). John Stuart Mill (1806-1873) en su libro Utilitarianism (Mill, 1863) abunda sobre esta nocion, En la siguicnte seccion se explica una teoria de decisiones mas formal.

Matematicas (aproximadamente del afio 800 al presente)

Los filosofos delimitaron las mas importantcs ideas relacionadas con la lA, pero para pasar de alli a una ciencia formal era necesario contar con una formalizacion matematica en tres areas principales: computacion, logica y probabilidad. La idea de expresar un calculo mediante un algoritmo formal se rcmonta a la epoca de al-Jwarizmi, matematico arabe del siglo IX, con cuyas obras se introdujeron en Europa los numeros arabigos y el algebra.

La logica data, por 10 menos, desde Aristoteles; su naturaleza era mas filosofica que rnatematica, hasta que George Boole (1815-1864) introdujo su lenguaje formal para hacer inferencias logic as en 1847. EI metodo de Boole no estaba del todo completo, pero era bastante bueno, pues baste con la

12

Capitulo 1.

Introduccion

TEOREMA DE INCOMPLETEZ

INTRA TABILIDAD

REDUCCION

TEORiA DE LA COMPLETEZ NP

contribucion de otros para llenar los huecos faltantes. En 1879, Gottlob Frege (1848-1825) creo una 16gica que, excepto por algunos cambios en la notacion, constituye la 16gica de primer orden que se utiliza actual mente como sistema basico de representacion del conocimiento.f Alfred Tarski (1902- 1983) introdujo una teoria de referencia que ensefia como relacionar objetos de una logica con los objetos del mundo real. EI paso siguiente consistio en definir los limites de 10 que podria hacerse con la logica y la computacion,

A David Hilbert (1862-1943), gran maternatico por derecho propio, se Ie recuerda mas bien por los problemas que no pudo resolver. En 1900 propuso una lista de 23 problemas que acertadamente predijo ocuparian a los matematicos durante todo ese siglo. En el ultimo de ellos se pregunta si existe un algoritmo que permita determinar la validez de cualquier proposicion 16gica en la que figuren los numeros naturales: el famoso Entscheidungsproblem, 0 problema de decision. Basicamente, 10 que Hilbert preguntaba es si habia limites fundamentales en la capacidad de los procedimientos efectivos de demostracion, En 1930, Kurt Godel (1906-1978) demostro que existe un procedimiento eficiente para demostrar cualquier aseveracion verdadera en la logica de primer orden de Frege y Russell; sin embargo, con la logica de primer orden no era posible capturar el principio de la induccion matematica necesario para la caracterizacion de los numeros naturales. En 1931 demostro que en efecto existen limites reales. Mediante su teorema de incompletez dernostro que en cualquier lenguaje que tuviera la capacidad suficiente para expresar las propiedades de los numeros naturales, existen aseveraciones verdaderas indecidibles: no es posible definir su validez mediante ningun algoritmo.

EI fundamental resultado anterior se puede interpretar tambien como la indicacion de que existen algunas funciones de los numeros enteros que no se pueden representar mediante un algoritmo, es decir, no se pueden calcular. Lo anterior motivo a Alan Turing (1912-1954) a tratar de caracterizar exactamente aquellas funciones que sf eran susceptibles de ser calculadas. La nocion anterior en realidad es algo problematic a, porque no es posible dar una definicion formal a la noci6n de un calculo 0 de un procedimiento efectivo. No obstante 10 anterior, la tesis de Church-Turing (en la que se afirma que la maquina de Turing (Turing, 1936) puede calcular cualquier funcion calculable) goza de aceptacion genera liz ada en cuanto definicion suficiente. Turing demostro tambien que existen algunas funciones que no es posible calcular mediante la maquina del mismo nombre. Por ejemplo, ninguna rnaquina puede decidir en general si un programa dado producira una respuesta a determinada entrada, 0 si seguira calculando indefinidamente.

Si bien la indecidibilidad y la incalculabilidad son importantes para comprender el proceso del calculo, la nocion de la intratabiIidad tuvo repercusiones mas importantes. En terminos generales, se dice que una clase de problema se denomina intratable si el lapso necesario para la resolucion de casos particulares de dicha clase crece al menos exponencialmente con el tamafio de tales casos. La diferencia entre crecimiento polinomial y exponencial de la complejidad fue destacado por vez primera a mediados de la dec ada de los afios 60 (Cobham, 1964; Edmonds, 1965). Es importante porque un crecimiento exponencial implica la imposibilidad de resolver en un tiempo razonable casos de tamafio reducido. Es por ella que debera optarse por dividir el problema general de la produccion de la conducta inteligente en subproblemas que si sean tratables en vez de manejar problemas intra tables. EI segundo concepto importante en la teoria de la complejidad es la reduccion, tambien surgido en la decada de los 60 (Dantzig, 1960; Edmonds, 1962). Una reduccion es la transformacion general de una c1ase de problemas a otra, de manera que la solucion de la primera c1ase se obtenga reduciendo esta a problemas que pertenecen a la segunda y resolviendo estos.

l,Como saber que se trata de un problema intratable? Mediante la teo ria de la completez NP, propuesta por vez primera por Steven Cook (1971) Y Richard Karp (1972). Estos demostraron la exis-

8 Para una explicacion del porque no se acepto universalmente la notacion propuesta por Frege, veasc la cubierta de este libro.

Secci6n 1.2.

Los fundamentos de la inteligencia artificial

13

TEORiA DE LAS DECISIONES

tencia de grandes clases de problemas canonicos de razonamiento y busqueda combinatoria que son NP completos. Toda clase de problemas a la que una clase de problema NP completo pueda reducirse posiblemente sea intratable. (Si bien aun no se ha demostrado que los problemas NP completos sean necesariamente intratables, pocos son los teoricos que opinarian 10 contrario.) Los resultados anteriores contrastan notoriamente con el entusiasmo por los "supercerebros electronicos" tan caracteristico con la aparicion de las computadoras. A pesar de la cada vez mayor velocidad de las computadoras, una prudente y esmerada utilizacion de recursos caracterizara a los sistemas inteligentes. De manera sucinta: [el mundo es un ejemplo de problema de dimensiones colosales!

Ademas de la logica y del calculo, la tercera gran contribucion de las mate mati cas a la IA es la teoria de la probabilidad. Fue el italiano Gerolamo Cardano (1501-1576) quien concibiera primero la nocion de probabilidad y la presento como posibles resultados de los juegos de apuesta. Antes de el, se veia el resultado de estos juegos como consecuencia de la voluntad de los dioses, mas que producto del azar. La probabilidad se convirtio pronto en parte invaluable de las ciencias cuantitativas, al ayudar en el manejo de mediciones con incertidumbre y teorias incompletas. Pierre Fermat (1601- 1665), Bias Pascal (1623-1662), James Bernoulli (1654-1705), Pierre Laplace (1749-1827) y otros mas hicieron avanzar esta teoria e introdujeron nuevos metodos estadisticos. Bernoulli concibio otra forma de considerar la probabilidad, como un "grado subjetivo de creencia", mas que como un indice objetivo de resultados. De esta forma, las probabilidades subjetivas se van actualizando conforme surgen nuevas evidencias. Thomas Bayes (1702-1761) propuso una regia para la actualizacion de las probabilidades subjetivas a la luz de las nuevas evidencias (public ada postumamente en 1763). La regia de Bayes, y el campo del analisis bayesiano, constituyen el fundamento sobre el que se apoya el enfoque moderno de abordar el razonamiento incierto en los sistemas de la IA. Persiste aun el debate entre los partidarios de las concepciones objetiva y subjetiva de la probabilidad, aunque en realidad no es muy evidente que tal diferencia sea relevante para la IA. Ambas versiones se basan en el mismo conjunto de axiomas. La obra Foundations of Statistics (Fundamentos de estadisticas) de Savage (1954) es una util guia para introducirse en el tema.

Al igual que en el caso de la logica, es necesario establecer una conexion entre razonamiento probabilista y accion. En la teoria de las decisiones, propuesta por vez primera por John von Neumann y Oskar Morgenstern (1944), se combinan la teoria de la probabilidad con la teoria de la utilidad (que ofrece un marco de referencia formal y completo para especificar las preferencias de un agente) y se cuenta asi con la primera teoria general que permite discernir entre acciones buenas y acciones malas. La teoria de las decisiones es la sucesora maternatica del utilitarismo y constituye la base teorica de muchos de los disefios de agente de la presente obra.

Psicologia (de 1879 al presente)

Se afirma que la psicologia cientifica se inicio con los trabajos del medico aleman Hermann von Helmholtz (1821-1894) y su discipulo Wilhelm Wundt (1832-1920). Helmholtz utilize el metodo cientifico en el estudio de la vista humana, y su Handbook of Physiological Optics (Manual de optic a fisiologica) todavia en nuestros dias se considera como "el unico tratado mas importante actual sobre la fisica y la fisiologia de la vista humana" (Nalwa, 1993, p. 15). En 1879, el mismo afio que Frege dio a conocer su logica de primer orden, Wundt inicio el primer laboratorio de psicologia experimental en la Universidad de Leipzig. Wundt ponia mucho enfasis en la realizacion de experimentos controlados cuidadosamente en los que sus operarios realizaban tareas de percepcion 0 asociacion al tiempo que sometian a introspeccion sus procesos mentales. Los meticulosos controles evolucionaron durante un buen trecho hasta convertir a la psicologia en una ciencia; vale la pena observar que, al irse

14

Capitulo I.

Introducci6n

CONDUCTISTA

PSICOLOGiA COGNOSCITIVA

difundiendo su metodologia, se produjo un curioso fenomeno: se observe que los datos obtenidos de las introspecciones en un laboratorio dado coincidian con las teorias prevalecientes en dicho laboratorio. EI movimiento conductista de John Watson (1878-1958) Y de Edward Lee Thorndike (1874- 1949) fue una respuesta contra el subjetivismo y rechazaba sistematicamente toda teoria en la que intervinieran procesos mentales, arguyendo que la instrospeccion no aportaba una evidencia confiable. Los conductistas se abocaron en el estudio exclusivo de mediciones objetivas de las percepciones (0 estimulos) experimentadas por animales y de los resultados obtenidos (0 respuestasi. Elaboraciones de tipo mental como el conocimiento, creencias, objetivos y pasos del razonamiento quedaron descartados por considerarlos "psicologia popular" no cientifica. EI conductismo hizo muchos descubrimientos en relacion con las ratas y los pichones, pero tuvo menos exito en la comprension de los seres humanos. Aun asi, su influencia en la psicologia fue notable (especialmente en EUA) desde aproximadamente 1920 hasta 1960.

La nocion de que el cerebro posee y procesa informacion, caracteristica principal de la psi cologia cognoscitiva, se remonta, por 10 menos, a las obras de William James? (1842-1910). Helmholtz ponia enfasis en que la percepcion entrai'iaba cierto tipo de inferencia logica inconsciente. Esta posicion cognoscitiva se vio empai'iada por el conductismo hasta 1943, aiio de Ia publicacion de la obra de Kenneth Craik, The Nature of Explanation (La naturaleza de la explicacion). Craik encontro la pieza faltante entre el estimulo y la respuesta. Afirma que creencias, objetivos y pasos del razonamiento son validos y utiles elementos en una teoria del comportamiento humano y son tan cientificos como, por ejemplo, las nociones de presion y temperatura para describir los gases, no obstante que estos esten formados por moleculas que no tienen ni presion ni temperatura. Craik establece tres condiciones fundamentales para los agentes basados en el conocimiento: (I) el estimulo debera ser traducido a una representacion interna, (2) esta representacion se debe manipular mediante procesos cognoscitivos para asi derivar nuevas representaciones internas y (3) estas, a su vez, se retraducen en acciones. Dejo muy claro por que consideraba que eran los requisitos idoneos del disefio de un agente:

Si el organismo contiene en su cabeza un "modelo a pequei'ia escala" de la realidad extema y de todas sus posibles acciones, sera capaz de pro bar diversas opciones, decidir cual es la rnejor, prcparar su reacci6n ante situaciones futuras antes de que estas surjan, emplear 10 aprendido de experiencias pasadas en situaciones del presente y del futuro y, en toda situaci6n, reaccionar ante los imponderables que tenga que enfrentar de manera satisfactoria, eficiente y sin riesgos. (Craik, 1943.)

Un agente disefiado de esta manera podria, por ejemplo, planificar un prolongado viaje considerando varias rutas posibles, comparandolas y eligiendo la mejor, antes de emprender el viaje. A partir de la dec ada de los afios 60 la posicion afin al procesamiento de la informacion ha dominado la psicologia. Actualmente muchos psicologos aceptan casi de manera tacita que "una teoria cognoscitiva debera ser como un programa de computadora" (Anderson, 1980). Es decir, que tal teoria debera definir la cognicion como un conjunto de procesos de transformacion bien definidos que operan al nivel de la informacion que transportan las sefiales de entrada.

En los inicios de am bas, no existia una distincion tajante entre IA y ciencia cognoscitiva. Era frecuente ver programas de IA caracterizados como si fueran resultados psicologicos, sin aclarar exactamente que tipo de conducta humana estaban modelando. Sin embargo, ya durante la decada anterior, existe una mas clara delimitacion metodologica y el objetivo de los estudios esta definido en un campo 0 en otro.

9 William James fue hermano del novelista Henry James. Se afirma que Henry escribia narrativa como si fuera psicologia y que William escribia sobre psicologia como si esta fuera narrativa.

Los fundamentos de la inteligencia artificial

15

Scccion 1.2.

Ingenieria computacional (de 1940 al presente)

Para que la inteligencia artificial pueda ser una realidad se necesitan dos cosas: inteligencia y un artefacto. La computadora se reconoce unanimemente como el artefacto con mayores posibilidades de manifestar inteligencia. La computadora electr6nica digital modema fue inventada de manera independiente y casi simultaneamente por cientificos de tres paises enfrascados en la segunda guerra mundial. La primera computadora modema que se ech6 a andar fue la Heath Robinson.!? construida en 1940 por el equipo de Alan Turing, y cuyo prop6sito era el desciframiento de los mensajes de los alemanes. Cuando estos cambiaron el c6digo por uno mas complicado, los relevadores electromecanicos de la Robinson resultaron demasiado lentos y se construy6 una nueva maquina con bulbos, la Colossus. Estaba terrninada en 1943 y para e1 fin de 1a guerra, ya se emp1eaban cotidianamente diez Colossus.

La primera computadora programable en operaci6n fue 1a Z-3, inventada por Konrad Zuse en Alemania, en 1941. Zuse invent6 numeros de punto tlotante para utilizarlos en 1a Z-3. En 1945 invent6 el Planka1ku1, primer 1enguaje de programaci6n de alto nivel. No obstante que Zuse tenia e1 apoyo del Tercer Reich para que ap1icase su maquina en e1 disefio de aeronaves, 1a jerarquia militar no concedio tanta importancia a 1a computaci6n como su contraparte britanica,

En Estados Unidos, John Atanasotf y su discipulo de posgrado, Clifford Berry, armaron la primera computadora electronica, 1a ABC, entre 1940 y 1942 en 1a universidad del estado de Iowa. E1 proyecto no recibi6 mucho apoyo y qued6 abandonado 1uego de que Atanasoff se vo1cara a la investigaci6n mi1itar en Washington. En calidad de investigaci6n secreta mi1itar se iniciaron otros dos proyectos de computaci6n: un equipo bajo 1a direcci6n de Howard Aiken disefio en Harvard las computadoras Mark I, II y III; mientras en 1a universidad de Pennsylvania, un equipo que incluia a John Mauchly y John Eckert diserio la ENIAC. Se trataba de la primera computadora digital, electr6nica, para uso general. Uno de sus primeros trabajos fue el calculo de tablas de disparos de artilleria; en su versi6n posterior, Hamada EDV AC, se atendi6 la sugerencia hecha por John von Neumann de usar un programa almacenado, para que los tecnicos no tuvieran que estar apresuradamente moviendo clavijas de conmutaci6n cada vez que tuvieran que correr un nuevo programa.

Quizas el avance mas notable fue la aparici6n de la IBM 70 I, construida en 1952 por Nathaniel Rochester y su grupo. Fue la primera computadora que rindiera dividendos a su fabric ante. La IBM se convirti6 asi en una de las compafiias mas grandes del mundo y sus ventas de computadoras ascendieron a $1.5 billones de d61ares estadounidenses por afio, Actualmente, en Estados U nidos, la industria de la computaci6n (incluyendo software y servicios) representa aproximadamente 10% de su producto intemo bruto.

Con cada nueva generaci6n de hardware de computaci6n se han logrado aumentos en velocidad y capacidad y descensos en precio. La ingenieria computacional ha experimentado un notable exito y, por 10 general, logra duplicar eficiencia cada dos afios, sin que se prevea un fin de esta tendencia a corto plazo. Los grandes volumenes de maquinas en paralelo prometen la adici6n de muchos ceros mas al rendimiento global a1canzable.

Desde luego que antes de que apareciera la computadora ya habia dispositivos de calculo. El abaco tiene una antigiiedad aproximada de 7 000 afios. A mediados del siglo XVII, BIas Pascal construy6 una maquina para sumar y restar Hamada Pascalina. En 1694, Leibnitz la mejoro y construy6 un dispositivo mecanico que multiplicaba mediante la adici6n repetida. Los progresos se interrumpieron durante un siglo hasta que Charles Babbage (1792-1871) aspirara a lograr que los logaritmos se ca1cularan mediante maquina. Diseiio una para este prop6sito, pero nunca logr6 concluir su proyecto. En vez de este, se dedic6 a1 disefio de la maquina analitica, para la que Babbage invent6 las nociones de

10 Heath Robinson. caricaturista famoso por sus dibujos que representaban artefactos para uso diario, abigarrados y absurdamente coruplicados, por ejemplo uno para untar mantequilla al pan tostado.

16

Capitulo 1.

Introducci6n

memoria direccionable, programas almacenados y saltos condicionales. No obstante que la idea de las maquinas programables no era nueva (en 1805 Joseph Marie Jacquard invento un telar que se podia programar utilizando tarjetas perforadas), la maquina de Babbage era el primer artefacto que tenia las caracteristicas necesarias para la computacion universal. La colega de Babbage, Ada Lovelace, hija del poeta lord Byron, disefio program as para la maquina analitica e, incluso, especulo sobre la posibilidad de que la maquina jugara ajedrez 0 compusiera musica. Lovelace fue asi el primer programador del mundo y la primera de los muchos que tuvieron que absorber enormes deficits por exceso de costos y que tambien tuvieron, finalmente, que abandonar un ambicioso proyecto.!' Doron Swade y sus colegas demostraron que el disefio basico de Babbage era viable, y echaron a andar un modelo recurriendo solo a las tecnicas mecanicas disponibles en la epoca de Babbage (Swade, 1993). La idea de Babbage era correcta, pero el carecia de los recursos de una organizacion que Ie hubieran permitido construir su maquina.

La IA debe mucho tambien al area de software de la informatica, pues la ha dotado de sistemas operativos, lenguajes de programacion y herramientas necesarias para escribir programas modernos (asi como disertaciones sobre estes). Sin embargo, tal deuda esta com pens ada: la investigacion en el area de la IA ha producido muchas ideas novedosas que han ido a parar a la informatica, como es el caso del tiempo compartido, los interpretes interactivos, los datos tipo lista vinculada, la administracion autornatica de memoria y algunos de los conceptos clave de la programacion orientada a objetos y los entornos de desarrollo de programa integrado con graficas de interfaces de usuario.

Lingiiistica (de 1957 al presente)

En 1957, B. F. Skinner publico Verbal Behavior (Conducta verba!), una vasta y detallada explicacion del enfoque conductista al aprendizaje dellenguaje, escrito por el mas destacado experto de este campo. Curiosamente, una resefia sobre este libro obtuvo tanto publico como la obra misma y, ademas, provo co el casi total desinteres por esta. EI resefiista era Noam Chomsky, quien acababa de publicar un libro sobre su propia teoria, Syntactic Structures (Estructuras sintacticas), Chomsky demostro como la teoria conductista no abordaba el tema de la creatividad en ellenguaje: no explicaba como es posible que un nino sea capaz de entender y construir oraciones que nunca antes ha escuchado. La teoria de Chomsky (basada en modelos sintacticos que se remontaban al lingiiista hindu Panini, aproximadamente 350 A. C.) si podia explicar 10 anterior y, a diferencia de teorias anteriores, poseia la formalidad suficiente como para permitir su programacion,

Estudios posteriores en el campo de la lingiiistica hicieron patente que los problemas eran mas complejos que 10 considerado en 1957. EI lenguaje es algo ambiguo; son muchas las cosas que, aunque no se expresen, se interpretan tacitamente, Es decir, para comprender un lenguaje se necesita tambien comprender el tema y contexto de 10 que se esta hablando, no basta con comprender la estructura de las oraciones empleadas. Lo anterior podra parecer obvio, pero a principios de la dec ada de los 60 era algo que no se habia ponderado. Gran parte de los primeros trabajos de investigacion en el area de la representacion del conocimiento (el estudio de como poner el conocimiento en una forma con la cualla computadora pueda razonar) estaban vinculados al lenguaje y sus fuentes de informacion eran las investigaciones realizadas por los lingiiistas, a su vez relacionadas con decadas de trabajo en el analisis filosofico dellenguaje.

La lingiiistica moderna y la IA "nacieron" al mismo tiempo, por 10 que la primera no desernpeno un papel determinante en el desarrollo de la IA. Mas bien ambas crecieron juntas, y se cruzaron en

II De ella toma su nombre Ada, el lenguaje de programaci6n de prop6sito general del Departamento de Defensa de Estados Unidos.

Secci6n 1.3.

Historia de la inteligencia artificial

17

un campo ~ibrido denominado lingiiistica computacional 0 procesamiento dellenguaje natural, y que se concentra en el problema del uso dellenguaje.

1.3 HISTORIA DE LA INTELIGENCIA ARTIFICIAL

Con el material anterior estamos ya en condiciones de bosquejar el desarrollo de la IA propiamente dicha. Este bosquejo se puede hacer ya sea identificando fases vagamente definidas y traslapadas de su desarrollo, 0 bien, enumerando cronol6gicamente los diversos y entrelazados hilos conceptuales que constituyen el campo. En esta secci6n se utilizara el primer metodo, a riesgo de violentar hasta cierto punto la relacion real que guardan entre si algunos subcampos. Posteriormente, en determinados capitulos, se narrara la historia por separado de cada subcampo.

Genesis de la inteligencia artificial (1943-1956)

Reconocido en general como el primer trabajo de lA, fue realizado por Warren McCulloch y Walter Pitts (1943). Abrevaron de tres fuentes: conocimientos sobre la fisiologia basica y funcionamiento de las neuronas en el cerebro, el analisis formal de la logica proposicional de Russell y Whitehead y la teoria de la computaci6n de Turing. Propusieron un modelo constituido por neuronas artificiales, en el que cada una de ellas se caracterizaba por estar "encendida" 0 "apagada"; el "encendido" se daba como respuesta a la estimulacion producida por una cantidad suficiente de neuronas vecinas. EI estado de una neurona se veia como "equivalente, de hecho, a una proposicion que propusiera sus estimulos adecuados". Por ejemplo, mostraron que cualquier funcion calculable podria calcularsele mediante cierta red de neuronas interconectadas y que todos los conectores 16gicos se podian lograr utilizando sencillas estructuras de red. McCulloch y Pitts tambien insinuaron la posibilidad de aprendizaje por parte de redes definidas para tal prop6sito. Donald Hebb (1949) demostr6 una sencilla regia de actualizacion para modificar las intensidades de las conexi ones entre neuronas, de manera que ocurriera el aprendizaje.

Los trabajos de McCulloch y Pittss son, si bien esto es discutible, los precursores de la tradici6n logicista en IA asi como de la tradicion conexionista, A pnncipios de la decada - de los 50, Claude Shannon (1950) y Alan Turing (1953) se ocupaban de escribir programas de ajedrez para computadoras convencionales al estilo de Von Neumann.F Simultaneamente, dos estudiantes de posgrado del departamento de matematicas de Princeton, Marvin Minsky y Dean Edmonds, construyeron la primera computadora de red neuronal en 1951. La SNARC, ese era su nombre, utilizaba 3 000 bulbos y un mecanismo de piloto automatico obtenido de los desechos de un avi6n bombardero 8-24 para simular una red de 40 neuronas. Los asesores del doctorado de Minsky veian con escepticismo el que este tipo de trabajo pudiera considerarse como matematicas, Neumann formaba parte de los asesores y se dice que su opinion fue: "Si no 10 es actualmente, algun dia 10 sera." Es ironico que Minsky mismo hiciera la demostraci6n de teoremas que contribuyeron a desechar buena parte de las investigaciones sobre

redes neuronales de la decada de los 70. .

Princeton acogi6 a otra de las figuras sefieras de la lA, John McCarthy. Luego de graduarse, McCarthy se paso a Dartmouth College, que se erigiria en ellugar de nacimiento oficial de este cam-

12 Shannon no tenia computadora para hacer su trabajo y a Turing el gobiemo britanico acabo por negarle el acceso a las computadoras de su propio equipo, alegando que las investigaciones relacionadas con la inteligencia artificial eran frivolidades.

IR

Capitulo I.

Introducci6n

po. McCarthy logro convencer a Minsky, Claude Shannon y Nathaniel Rochester para que Ie ayudaran a congregar investigadores estadounidenses interesados en la teoria de los automatas, las redes neuronales y el estudio de la inteligencia. Organizaron un taller de dos meses en Dartmouth, en el verano de 1956. En total hubo diez asistentes, incluidos Trenchard More de Princeton, Arthur Samuel de IBM y Ray Solomonoffy Oliver Selfridge de MIT.

Dos investigadores del Carnegie Tech, 13 Allen Newell y Herbert Simon, acapararon la atencion, Si bien los demas tenian algunas ideas y, en algunos casos, programas para aplicaciones determinadas como el juego de damas, Newell y Simon contaban ya con un program a de razonamiento, el teorico logico (TL), del que Simon afirmaba: "Hernos inventado un programa de computacion capaz de pensar de manera no numerica, con 10 que ha quedado resuelto el venerable problema de la dualidad mente-cuerpo."14 Al termino del taller, el program a ya era capaz de demostrar gran parte de los teoremas del capitulo 2 de Principia Mathematica de Russell y Whitehead. Se dice que Russell se manifesto complacido cuando Simon Ie mostro que el programa habia producido la demostracion de un teorerna mas corta que una de Principia. Los editores del Journal of Symbolic Logic (Revista de logica simbolica) resultaron menos impresionados; rechazaron un articulo cuyos autores eran Newell, Simon y el teorico logico,

Si bien el taller de Dartmouth no produjo ningun avance notable, si contribuyo a que todos los personajes importantes se conocieran. Durante los siguientes 20 afios el campo estuvo dominado por estos personajes, asi como por sus estudiantes y colegas del MIT, UCM, Stanford y la IBM. Quizas 10 ultimo que resulto del taller fue el consenso en adoptar el nuevo nombre propuesto por McCarthy para este campo: inteligencia artificial.

Entusiasmo inicial, grandes esperanzas (1952-1969)

En los primeros alios de la IA hubo una pletora de exitos, de manera limitada. Tomando en consideracion 10 primitivo de las computadoras y herramientas de programacion de esa epoca, y el hecho de que solo unos cuantos alios antes a las computadoras se les consideraba como artefactos que solo podian hacer calculos aritmeticos, resulta natural el azoro que causaba el que hicieran algo remotamente mas inteligente. EI establishment intelectual, en su mayoria, preferia creer que "una rnaquina nunca podra hacer X' (vease el capitulo 26 donde aparece una extensa lista de X recopilada por Turing). Desde luego, los investigadores de IA respondian a esto demostrando la realizacion de una X tras otra. Algunos investigadores de IA se refieren a esta epoca como la de "Mira, Mama, ahora sin manos".

AI temprano exito de Newell y Simon sigui6 el del solucionador general de problemas (SGP). A diferencia del teorico logico, des de un principio este programa se disefio para que imitara protocolos de resolucion de problemas de los humanos. Dentro del reducido numero de acertijos que podia manejar, resulto que la secuencia en que el programa consideraba los subobjetivos y los posibles cursos de accion era semejante a la manera como los seres humanos abordaban los rnismos problemas. Es decir, el SGP posiblemente fue el primer program a que incorporo el enfoque del "pensar como humane". La combinacion de IA y ciencia cognoscitiva continua hasta nuestros dias en la UCM.

En IBM, Nathaniel Rochester y sus colegas produjeron algunos de los primeros programas de IA. Herbert Gelernter (1959) construyo el demostrador de teoremas de geometria (DTG). AI igual que el TL, demostraba los teoremas utilizando axiomas explicitamente representados. Gelernter se dio cuenta pronto de que existian demasiadas secuencias de razonamiento posibles, muchas de las cuales

13 Actualmente la Universidad de Carnegie Mellon (UCM).

14 Newell y Simon son tambien los inventores del lenguaje de procesamiento de lista, (PL, para poder escribir el TL. No conlaban con compilador y 10 tradujeron a mano a c6digo de maquina. Para evitar errores, trabajaron en paralelo, diciendo en voz alta numeros binaries, con forme escribian cada instrucci6n para asegurarse de que ambos coincidian.

Scccion 1.3.

H istoria de la inteligencia artificial

19

LISP

desembocaban en callejones sin salida. Para auxiliar la busqueda, aiiadio la capacidad para crear una representacion numeric a de un diagrama, un caso particular del teorema general que se deseaba probar. Antes de proceder a demostrar algo, el programa primero verificaba en el diagrama si se cumplia en ese caso particular.

A principios de 1952, Arthur Samuel escribio una serie de programas para el juego de darnas, los que a la postre aprendieron el juego a nivel de tomeo. De paso, echo por tierra la idea de que las computadoras solo pueden hacer 10 que se les dice, puesto que su programa aprendio rapidamente a jugar mejor que su creador. El programa fue demostrado en la television en febrero de 1956 y produjo una honda impresion, Como Turing, Samuel tenia dificultades para obtener tiempo de cornputo. Trabajaba en las noches y empleaba maquinas que todavia estaban en etapa de prueba en la planta de fabricacion de IBM. En el capitulo 5 se trata el tema de los juegos y en el 20 se explican con detalle las tecnicas de aprendizaje utilizadas por Samuel.

John McCarthy se paso de Darmouth al MIT, y en el ana historico de 1958 hizo tres contribuciones cruciales. En el laboratorio de IA del MIT Memo No.1, McCarthy definio el lenguaje de alto nivel Lisp, que se convertiria en el lenguaje de programacion dominante en IA. Lisp es el segundo lenguaje de programacion mas antiguo que todavia se utiliza actualmente.P Con el Lisp, McCarthy ya tenia la herramienta que necesitaba, pero aun existia el grave problema de los escasos y costosos recursos de compute. Para resolverlo, el y otros en el MIT inventaron el tiempo compartido. Luego de obtener un sistema experimental para compartir tiempo en el MIT, McCarthy finalmente atrajo el interes de un grupo de graduados del MIT que formaron Digital Equipment Corporation, y que se convertiria en el segundo mas importante fabricante de computadoras del mundo, gracias a sus minicomputadoras de tiempo compartido. Tarnbien en 1958 McCarthy publico un articulo titulado Programs with Common Sense (Programas con sentido cornun), en el que describia el escucha consejos (EC), un programa hipotetico que podria considerarse como el primer sistema de IA completo. Al igual que el TL y el DTG, el programa fue disefiado para la busqueda de solucion de problemas. Pero a diferencia de otros, el programa de McCarthy estaba disefiado para usar el conocimiento general del mundo. Por ejemplo, demostro como sencillos axiomas perrriitian al programa generar un plan para conducir en auto hasta el aeropuerto para abordar un avion. EI disefio del programa perrnitia tarnbien aceptar nuevos axiomas durante el curso normal de operacion, perrnitiendo asi ampliar la capacidad en areas nuevas, sin necesidad de reprogramacion. EI escucha consejos incorporaba asi los principios medulares de representacion y razonamiento: es muy util contar con una representacion formal, explicita del mundo y de como las acciones de un agente 10 afectan, asi como poder manipular estas representaciones por medio de procesos deductivos. Es sorprendente constatar que mucho de 10 propuesto en ese articulo en 1958 todavia es vigente despues de mas de 35 afios.

En 1958 Marvin Minsky se paso al MIT. Durante afios, el y McCarthy fueron inseparables cuando conjuntamente iban definiendo el campo. Su separacion se dio cuando McCarthy decidio enfocar el grueso de sus esfuerzos en la representacion y razonamiento en logica formal, mientras tanto que Minksy estaba mas interesado en lograr que los prograrnas funcionaran, y eventualmente desarrollo un punto de vista antilogico. En 1963, McCarthy aprovecho la oportunidad de irse a Stanford y de iniciar alii el laboratorio de IA. Logro ahorrarse un considerable tiernpo de investigacion necesario para usar la logica en la construccion de la version mas reciente del EC gracias al descubrimiento de J. A. Robinson del metodo de resolucion (un algoritmo completo para la demostracion de teoremas para la logica de primer orden; vease la seccion 9.6). En Stanford se ponia enfasis en los metodos de proposito general para el razonamiento logico. Entre las aplicaciones que se dieron a la logica figuran los sistemas de planificacion y respuesta de preguntas de Cordell Green (Green, 1969b), asi como el

IS

EI FORTRAN es un afio mayor que el Lisp.

20

Capitulo I.

Introducci6n

proyecto de robotica de Shakey en el nuevo Instituto de Investigacion de Stanford (ILS). Este ultimo, del que se habla detalladamente en el capitulo 25, fue el primero que demostro la total integracion del razonamiento logico y la actividad fisica.

Minsky supervisaba el trabajo de unos estudiantes, quienes eligieron problemas limitados cuya solucion parecia requerir de la inteligencia. Estos dominios limitados vinieron a ser conocidos como micromundos. EI programa SAINT de James Slagle (1963a) fue capaz de resolver problemas de integracion de forma cerrada comunes en los cursos de calculo de primer afio de licenciatura. EI programa ANALOGY de Tom Evans (1968) resolvia problemas de analogia geometric a que se aplicaban en las pruebas de medicion de inteligencia, semejantes al de la figura 1.2. EI programa de Bertram Raphael, SIR Semantic Information Retrieval (recuperacion de informacion semantica) (1968) pudo aceptar aseveraciones de entrada de un subgrupo en ingles muy restringido y produjo las correspondientes respuestas. EI programa STUDENT de Daniel Bobrow (1967) podia resolver problemas de algebra del tipo de

MICROMUNDOS

Si la cantidad de clientes de Tom es dos veces el cuadrado de 20 % de la cantidad de anuncios que utiliza, y estes ascienden a 45, (,cmlntos clientes tiene Tom?

es a:

esa:

EI mas famoso de los micromundos fue el de los bloques, formado por un conjunto de bloques solidos colocados en la cubierta de una mesa (mas frecuentemente, en la simulacion de esta), como se muestra en la figura 1.3. Una de las tareas que se realiza en este mundo consiste en reordenar los bloques de cierta manera, recurriendo a la mane de un robot capaz de tomar un bloque a la vez. EI mundo de los bloques fue la morada del proyecto vision de David Huffman (1971), de los trabajos sobre la vision y la propagacion restringida de David Waltz (1975), de la teoria del aprendizaje de Patrick Winston (1970), del programa para comprension de lenguaje natural de Terry Winograd (1972) y del planificador de Scott Fahlman (1974).

Tambien florecieron las actividades enfocadas a las redes-neuronales de McCulloch y Pitts. Mediante el trabajo de Winograd y Cowan (1963) se mostro la magnitud de la cantidad de elementos que en forma colectiva podian representar un concepto individual, con un aparejado aumento en solidez y paralelismo. Los metodos de aprendizaje de Hebbs fueron reforzados por Bernie Widrow (Widrow y Hoff, 1960; Widrow, 1962), quien llamo adalinas a sus redes y por Frank Rosenblatt (1962) con sus perceptrones.

2

3

4

5

Figura 1.2 Ejemplo de un problema resuelto por el programa ANALOGY de Evans.

Seccion 1.3.

Historia de la inteligencia artificial

21

Figura 1.3 Escena del mundo de los bloques. Una tarea para un robot, podria ser: "Toma un bloque rojo grande", expresado en lenguaje natural 0 mediante notacion formal.

Rosenblatt demostro el famoso teorema de convergencia del perceptron, con 10 que mostro que su algoritmo de aprendizaje podia ajustar las intensidades de conexion de un perceptron para que correspondiera a cualquier dato de entrada, siempre y cuando tal correspondencia fuese factible. De estos temas se habla en la seccion 19.3.

Una dosis de realidad (1966-1974)

Desde el principio, los investigadores de IA expresaron sin empacho predicciones sobre el exitoso futuro que les aguardaba. Con frecuencia, se cita el siguiente comentario hecho por Herbert Simon en 1957:

Sin afan de sorprenderlos y dejarlos atonitos, debo informarles lisa y llanamente que actualmente en el mundo existen maquinas capaces de pensar, aprender y crear. Ademas, su capacidad para hacer 10 anterior aumentara rapidamente hasta que --en un futuro previsible-s- la magnitud de problemas que tendran capacidad de manejar ira a la par con la capacidad de la mente humana para hacer 10 mismo.

Si bien terminos tales como "futuro previsible" acepta un amplio margen de interpretacion, algunas de las predicciones hechas por Simon fueron mas concretas. En 1958, predijo que en ellapso de 10 afios una computadora llegaria a ser campeona de ajedrez, y seria posible realizar mediante la maquina la demostracion de un nuevo e importante teorema matematico. El tiempo permitio constatar que afirmaciones como las anteriores pecaban de optimistas. El obstaculo que enfrento la mayoria de los proyectos de investigacion en IA consistio en que aquellos metodos que demostraban funcionar en uno 0 dos ejemplos sencillos, fallaban rotundamente cuando se utilizaban en problemas mas variados 0 de mayor dificultad.

22

Capitulo I.

Introducci6n

,.-

E~OLUCI6N DE MAQUINA

EI primer tipo de obstaculo se origino en los antiguos programas, los cuales contaban con poco o ningun conocimiento de la materia objeto de estudio; lograban resultados gracias a la realizacion de sencillas manipulaciones sintacticas. EI programa ELIZA de Weizenbaum (1965), mediante el que aparentemente se podia entablar una conversacion seria sobre cualquier tema, de hecho tomaba prestadas y manipulaba las oraciones que mediante un teclado proporcionaba un ser humano. Es tipica una anecdota de la epoca cuando se intentaba la traduccion automatizada, actividad que recibia un generoso patrocinio del Consejo Nacional para la Investigacion (estadounidense) en un intento por expeditar la traduccion de articulos cientificos rusos en visperas dellanzamiento del Sputnik en 1957. Al principio se considero que todo se reduciria a sencillas transformaciones sintacticas apoyadas en las gramaticas rusa e inglesa y al reemplazo de palabras mediante un diccionario electronico, 10 que bastaria para obtener el significado exacto de las oraciones. En realidad, para traducir es necesario contar con un conocimiento general del tema respectivo, 10 que permite discernir 10 conducente en casos de ambigiiedad y asi precisar el contenido de una oracion, La famosa retraduccion de la frase "el espiritu es fuerte pero la carne es debil", cuyo resultado fue "el vodka es bueno pero la carne esta podrida" es un buen ejemplo del tipo de dificultades que surgieron. En un informe presentado en 1966, el comite consultivo declare que: "No se ha logrado obtener ninguna traduccion de textos cientificos generales ni se preve obtener ninguna en un futuro inmediato", Se cancelo todo el patrocinio del gobierno estadounidense que se habia asignado a los proyectos academicos de traduccion,

EI segundo obstaculo fue el de la intratabilidad de muchos de los problemas que se estaban intentado resolver mediante IA. La mayoria de los primeros program as de IA se basaban en la representacion de las caracteristicas basicas de un problema y se sometian a prueba diversos pasos, hasta que se llegara a encontrar aquella combinacion de estos que produjeran la solucion esperada. Esto funcion6 en los primeros programas debido a que los micromundos con que se trabajaba contenian muy pocos objetos. Antes de que surgiera la teoria de la completitud-Nl', se creia que para pasar de problemas sencillos a complejos bastaria con instalar hardware mas veloz y memoria de mayor capacidad. EI optimismo que trajo consigo ellogro de la demostraci6n de los teoremas, por ejemplo, pronto se vio ecJipsado cuando los investigadores fracasaron en la demostracion de teoremas que implicaban mas de una decena de condiciones. EI hecho de que, en principio, un program a sea capaz de encontrar una so lucian no implica que tal programa encierre todos los mecanismos necesarios para encontrar la solucion en la practice.

La ilusoria nocion de una ilimitada capacidad de compute no solo existio en los program as para la resolucion de problemas. Los primeros experimentos en el campo de la evolucien de maqulna 0 computadora (actualmente conocido como algoritmos genetlcos) (Friedberg, 1958; Friedberg et al., 1959) estaban basados en la sin duda correcta premisa de que efectuando una adecuada serie de pequefias mutaciones a un programa de codigo de maquina se podria generar un programa con buen desernpefio en la realizacion de cualquier tarea sencilla. De aqui siguio la idea de probar la realizacion de mutaciones aleatorias y luego apJicar un proceso de seleccion con el fin de conservar aquellas mutaciones que hubiesen demostrado que mejoraban tal desempefio. No obstante las miles de horas de CPU dedicadas, no se obtuvo ningun avance tangible.

La incapacidad para manejar la "explosion combinatoria" fue una de las principales criticas que se hicieron a la IA en el informe Lighthill (Lighthill, 1973), informe en el que se baso la decision del gobierno britanico de retirar la ayuda a las investigaciones sobre lA, excepto en dos universidades. (La tradici6n oral presenta un cuadro un poco distinto y mas vivido, en el que figuran ambiciones politicas y animadversiones personales, que es inconveniente que aparezcan en una pagina impresa) .

• En el original en Ingles : "The spirit is willing but the flesh is weak", la retraducci6n del ruso al ingles produjo: "the vodka is good but the meat is rotten". Las erroneas equivalencias literales: spirit (espiritu) = vodka; willing (fuerte, dispuesto) = bueno, de buena calidad; flesh (came, parte instintiva y material del ser humano) = came (comida); weak (debilidad moral) = podrida, en mal estado, descompuesta; explican el sinsentido de la retraduccion. (N. T.)

Scccion 1.3.

Historia de la inteligencia artificial

23

El tercer obstaculo derivo de las limitaciones inherentes a las estructuras basicas que se utilizaban en la generacion de la conducta inteligente. Por ejemplo, en 1969, en el libro de Minsky y Papert Perceptrons, se demostro que si bien era posible lograr que un perceptron aprendiera cualquier cosa que este pudiera representar, su capacidad de representacion era muy limitada. Un caso especifico era la imposibilidad de capacitar a un perceptron de dos entradas a discemir si estas eran diferentes. Si bien los resultados que obtuvieron no eran aplicables a redes mas complejas, de sustrato multiple, los fondos para la investigacion de las redes neuronales se redujeron a practicamente nada. Es ironico que los nuevos algoritmos de aprendizaje de retropropagacion utilizados en las redes de sustrato multiple, responsables del gran resurgimiento de la investigacion en redes neuronales de finales de los afios 80, en realidad se hayan descubierto por primera vez en 1969 (Bryson y Ho, 1969).

Sistemas basados en el conocimiento: lclave del poder? (1969-1979)

La naturaleza de la resolucion de problemas durante la primera decada de la investigacion en IA residia en una mecanismo de busqueda de proposito general en el que se entrelazaban pasos de razonamiento elementales para encontrar asi soluciones completas. A estos procedimientos se les ha denomi-

METODOS DEBILES nado rnetodos debiles, debido a que la informacion sobre el dominio con que cuentan es debil. En el caso de muchos dominios complejos resulta tambien que su rendimiento es debil. La unica forma de remediarlo es recurrir al uso del conocimiento adecuado a pasos de razonamiento mas amplios, y resolver casos recurrentes en limitadas areas de la experiencia. Podria afirmarse que para resolver un problema practicamente es necesario saber de antemano la respuesta respectiva.

El programa DENDRAL (Buchanan et aI., 1969) constituye uno de los primeros ejemplos de este enfoque. Fue disefiado en Stanford, donde Ed Feigenbaum (anteriormente discipulo de Herbert Simon), Bruce Buchanan (filosofo convertido en cientifico de la computacion) y Joshua Lederberg (genetista ganador del premio Nobel) colaboraron en la solucion del problema de inferir una estructura molecular a partir de la informacion proporcionada por un espectrornetro de masas. El programa se alimentaba con la formula elemental de la molecula (p. e., C6HI3N02), el espectro de masas informaba sobre las masas de los diversos fragmentos de la molecula que se producian despues de ser bornbardeada con un haz de electrones. Por ejemplo, un espectro de mas a con un pica en /11 = 15, corresponderia a la masa de un fragmento metilo (CH3).

La primera version del programa generaba todas las posibles estructuras que correspondieran a la formula, luego predecia el espectro de mas a que se observaria en cada caso, y comparaba estos con el espectro real. Como era de esperar, pronto el metodo anterior resulto inviable para el caso de moleculas de tarnafio decente. Los investigadores del DENDRAL consultaron con quimicos analiticos; se dieron cuenta de que estes trabajaban buscando patrones bien conocidos de picos en el espectro que sugerian estructuras comunes en la molecula, Por ejemplo, para identificar el subgrupo de las cetonas (C=O) se empleo la siguiente regia:

si hay dos picos en XI y X2 tales que

(a) XI + X2 = M + 28 (M es la masa de toda la molecula); (b) XI - 28 es un pica alto

(c) X2 - 28 es un pica alto

(d) por 10 menos una de las XI y X2 es alta. por 10 tanto existe un subgrupo cetona

24

Capitulo I.

Introduccion

SISTEMAS EXPERTOS

Luego de determinar que la molecula contiene una subestructura en particular, la cantidad de posibles candidatos se reduce considerablemente. EI equipo DENDRAL concluyo que el nuevo sistema ofrecia muchas posibilidades debido a que:

Toda la informacion teorica necesaria para resolver estos problemas se correlaciono, a partir de su forma general, en el [componente predicho por el espectro] ("primeros principios"), con fonnas eficientes especiales ("recetas de cocina"). (Feigenbaum et al., 1971.)

La trascendencia de DENDRAL fue la de ser el primer sistema de conocimiento intensivo que lograba funcionar: sus conocimientos se basaban en importantes cantidades de reglas para propositos especiales. En sistemas diseiiados posteriormente se incorporo tambien 10 fundamental de 10 propuesto para el EC de McCarthy: la nitida separacion del conocimiento (en forma de reglas) y la parte correspondiente al razonamiento.

Teniendo presente esta leccion, Feigenbaum y otros, en Stanford, dieron inicio al Proyecto de Programacion Heuristica, PPH (HPP, Heuristic Programming Project), dedicado a determinar el grado con el que la nueva metodologia de los sistemas expertos podia aplicarse a otras areas de la actividad humana. EI siguiente esfuerzo de consideracion se dio en el area del diagnostico medico. Feigenbaum, Buchanan y el doctor Edward Shortliffe diseiiaron el programa MYCIN, para el diagnostico de las infecciones sanguineas. Con un respaldo de 450 reglas, MYCIN era capaz de hacer diagnosticos tan buenos como los de un experto y, desde luego, mejores que los de un medico recien graduado. Se distinguia del DENDRAL principalmente en dos aspectos. En primer lugar, a diferencia de las reglas del DENDRAL, no se contaba con un modelo teorico desde el cual pudieran deducirse las reglas de MYCIN. Era necesario obtenerlas a partir de amplias consultas con los expert os, quienes las habian obtenido de su experiencia directa en diversos casos. En segundo lugar, las reglas deberian reflejar la incertidumbre inherente al conocimiento medico. En MYCIN se contaba con un calculo de incertidumbre denominado facto res de certeza (vease el capitulo 14), que al parecer (en esa epoca) correspondia muy bien a la manera como las medicos ponderaban las evidencias al hacer un diagnostico.

A este siguieron otros procedimientos para la realizacion de diagnosticos medicos. En la universidad Rutgers, el proyecto de Saul Amarel Computers in Biomedicine (Las computadoras en la biomedicina) emprendio la ambiciosa tarea del diagnostico de enfermedades tomando como base el conocimiento expIicito de los mecanismos causantes del proceso de la enfermedad. Entretanto, grupos numerosos en el MIT y en el New England Medical Center se afanaban por encontrar un metodo para producir diagnosticos y tratamientos con base en las teorias de la probabilidad y de la utilidad. Su objetivo era construir sistemas que produjeran recomendaciones medicas optimas probables. En Stanford, el metoda de usar reglas propuestas por los medicos gozo al principio de mayor aceptacion, Sin embargo, otro sistema de razonamiento probabilista, PROSPECTOR (Duda et al., 1979), provoco mucha publicidad al recomendar la realizacion de perforaciones de exploracion en una ubicacion geologica en donde se encontraron importantes depositos de molibdeno.

La importancia del conocimiento se demostro tambien en el area de la comprension dellenguaje natural. No obstante que el sistema SHRDLU de Winograd para la comprension del lenguaje natural habia suscitado mucho entusiasmo, su dependencia del analisis sintactico provoco algunos de los mismos problemas que habian surgido en el trabajo con la traduccion automatizada. Si bien era capaz de resolver los problemas de ambigiiedad y de entender los pronombres utilizados, esto era posible gracias a que se Ie habia diseiiado especificamente para un area: el mundo de los bloques. Fueron varios los investigadores que, como Eugene Chamiak, estudiante becado del posgrado de Winograd en el MIT, opinaron que para una solida comprension dellenguaje era necesario contar con un conocimiento general sobre el mundo y del metodo general necesario para el uso de tal conocimiento.

Seccion 1.3.

Historia de la inteligencia artificial

25

MARCOS

En Yale, Roger Schank (un lingiiista convertido en investigador de IA) reforzo 10 anterior al afirmar: "No existe eso que Haman sintaxis", 10 que provoco el enojo de muchos lingiiistas pero sirvio para iniciar un uti I debate. Schank y sus estudiantes disefiaron una serie de programas (Schank y Abelson, 1977; Schank y Riesbeck, 1981; Dyer, 1983) cuyo objetivo era la comprension dellenguaje natural. EI foco de atencion estaba menos en ellenguaje per se y mas en los problemas vinculados a la representacion y razonamiento del conocimiento necesario para la comprension del lenguaje. Entre los problemas estaba el de la representacion de situaciones estereotipadas (Cullingford, 1981), la explicacion de la organizacion de la memoria humana (Rieger, 1976; Kolodner, 1983) y la comprension de planes y objetivos (Wilensky, 1983). William Woods (1973) construyo el sistema LUNAR, que permitio a los geologos hacer preguntas en ingles en relacion con las muestras de roca que trajera la mision lunar del Apolo. LUNAR fue el primer programa de lenguaje natural utilizado por personas distintas al autor del sistema para realizar una tarea. A partir de entonces se han empleado diversos programas de lenguaje natural como interfaces con las bases de datos.

EI generalizado crecimiento de las aplicaciones para problemas del mundo real provoco el respectivo aumento en la demanda de esquemas de representacion del conocimiento que si funcionaran. Se disefio una considerable cantidad de diversos lenguajes de representacion; algunos basados en la logica (por ejemplo ellenguaje Prolog gozo de mucha aceptacion en Europa, aceptacion que en Estados Unidos fue para la familia del PLANNER). Otros, con base en la nocion de marcos de Minsky (1975), se decidieron por un enfoque un poco mas estructurado al recopilar informacion sobre un objeto en particular y tipos de eventos y organizando estos tipos en grandes jerarquias taxonomicas, similares a las de la biologia.

La fA se convierte en una industria (1980-1988)

EI primer sistema experto comercial, Rl, inicio sus actividades en Digital Equipment Corporation (McDermott, 1982). EI programa se utilizaba en la elaboracion de pedidos de nuevos sistemas de computacion. Para 1986 representaba para la compafiia ahorros estimados en 40 millones de dolares al afio. En 1988, el grupo de inteligencia artificial de la DEC habia distribuido ya 40 sistemas expertos, y esperaba tener mas. Du Pont utilizaba ya 100 y estaban en etapa de disefio 500 mas, 10 que le generaba ahorros de diez millones de dolares anuales. Casi todas las compafiias importantes de USA contaban con su propio grupo de lA, en el que se utilizaba 0 investigaba la tecnologia de los sistemas expertos.

En 1981 los japoneses anunciaron el proyecto de la "quinta generacion", un plan de 1 0 afios para construir computadoras inteligentes en los que se corriese Prolog, de manera identica a como las computadoras comunes corren codigo de maquina, La idea era que, con la capacidad para efectuar miHones de inferencias por segundo, las computadoras podrian aprovechar las inmensas reservas de reglas. Entre muchas de las ambiciosas metas propuestas, figuraba la de lograr la comprension total del lenguaje natural.

EI proyecto de la quinta generacion suscito el interes en lA, y aprovechando el temor a un posible dominio por parte de los japoneses, investigadores y empresas obtuvieron apoyo para una inversion semejante en Estados Unidos. Se fundo la Microelectronic and Computer Technology Corporation (MCC), como consorcio para contrarrestar al proyecto japones, En Gran Bretafia, el informe Alvey restauro el patrocinio suspendido por el informe Lighthill.16 En ambos casos, la IA vino a ser par-

16 Para evitarse una molesta aclaraci6n, se defini6 un nuevo campo denominado IKBS (Intelligent Knowledge-Based Systems, sistemas inteligentes basados en el conocimiento), puesto que el de inteligencia artificial oficialmente habia sido cancelado.

26

Capitulo I.

Introducci6n

te de una empresa de gran envergadura, en la que figuraban el disefio de chips y la investigacion en el campo de las interfaces humanas.

En la floreciente industria de la IA figuraban tam bien compafiias tales como Carnegie Group, Inference, Intellicorp y Teknowledge, las que disponian de herramientas de software necesarias para construir sistemas expertos, asi como compafiias de hardware como Lisp Machines, Inc., Texas Instruments, Symbolics y Xerox, en donde se construian estaciones de trabajo optimizadas para el disefio de programas en Lisp. Mas de un centenar de cornpafiias construyeron sistemas de vision robotica para uso industrial. En suma, en esta industria las ventas pasaron de ser de unos cuantos millones en 1980 a veinte mil millones de dolares en 1988.

EI regreso de las redes neuronales (1986 al presente)

Si bien en la ciencia de la computacion se ha hecho a un lado el campo de los redes neuronales luego de la publicacion dellibro de Minsky y Papert, se ha continuado trabajando en otros campos, especialmente en fisica. Podria equipararse a los grandes grupos fonnados por simples neuronas con los grandes conglomerados fonnados por atomos que constituyen a los solidos. Fisicos como Hopfield (1982) utilizaron tecnicas de la mecanica estadistica para analizar las propiedades de almacenamiento y optimizacion de las redes, 10 cual propicio un importante y fertil intercambio de ideas. Psicologos, entre los que figuraban David Rumelhart y Geoff Hinton continuaron con el estudio de los model os de la memoria basados en redes neuronales. Como se ve en el capitulo 19, el impulso mas fuerte se produjo a mediados de la dec ada de los 80, cuando por 10 menos cuatro grupos distintos reinventaron el algoritmo de aprendizaje de retropropagacion, mencionado por vez primera en 1969 por Bryson y Ho. EI algoritmo se aplic6 a diversos problemas relacionados con el aprendizaje en computacion y en psicologia. La gran difusi6n que conocieron los resultados obtenidos, publicados en la colecci6n Parallel Distributed Processing (Rumelhart y McClelland, 1986), suscitaron gran entusiasmo.

Mas 0 menos por la misma epoca, habia pesimismo en cuanto a la posibilidad de aplicacion de la tecnologia de los sistemas expertos obtenida de los sistemas tipo MYCIN. En muchas cornpafiias y grupos de investigaci6n encontraron que para construir un sistema experto satisfactorio se necesitaba algo mas que un sistema de razonamiento que estuviera lleno de reglas. Algunos anticiparon la lIegada de un "invierno para la IA", acompafiado de una severa reducci6n de fondos para patrocinar las actividades de la IA. Quizas el temor por 10 anterior, asi como factores historicos que han caracterizado el area de las redes neuronales, dieron como resultado que durante una epoca redes neuronales e IA tradicional se vieran como rivales entre si, mas que como campos que aportaban enfoques complementarios y coadyuvantes en la soluci6n de un mismo problema.

Acontecimientos recientes (1987 al presente)

En afios recientes se ha podido atestiguar un cambio tanto en contenido como en metodologia en las investigaciones de IA.17 Actualmente es mas comun construir sobre teorias ya existentes que proponer teorias totalmente novedosas, tomar como base rigurosos teoremas 0 s61idas evidencias experimenta-

17 Hay quienes caracterizan este cambio como la victoria de los pulcros (aquellos que consideran que las tcorias de IA dcbcn basarse rigurosamente en las rnaternaticas) sobre los zarrapastrosos (los que despues de intentar un sinnumcro de ideas posibles, elaboran algunos programas y luego evaluan 10 que pudiera series de utilidad). Ambos enfoques son utiles, Esta tendencia cn favor de una mayor pulcritud es seiial de que el campo ha alcanzado cierto nivel de estabilidad y madurcz. (Lo que no descarta el que tal estabilidad se pueda ver alterada con el surgimiento de otra idea de los zarrapastrosos.)

Seccion 1.3.

Historia de la inteligencia artificial

27

les mas que la intuicion, y demostrar la utilidad de las aplicaciones en el mundo real mas que crear ejemplos de juguete.

Un buen modelo de 10 anterior es el campo de la comprension del lenguaje. En la dec ada de los 70 se sometio a prueba una gran variedad de arquitecturas y enfoques. Muchos de ellos fueron poco ad hoc y resultaban endebles, y fueron probados en unos cuantos ejemplos elegidos especialmente. En afios recientes en el area prevalecen los enfoques basados en los modelos de Markov ocultos, MMO (HMM, hidden Markov models). Son dos las caracteristicas de los MMO que tienen relevancia en esta explicacion. Primera, se basan en una rigurosa teoria matematica, 10 que ha permitido a los investigadores del lenguaje basarse en decadas de resultados de investigaciones mate mati cas hechas en otros campos. En segundo lugar, los modelos han sido generados mediante un proceso de aprendizaje basado en un gran volumen de datos del lenguaje real. Lo anterior garantiza un solido desempefio; en severas pruebas de ciego, los MMO logran cada vez mejores calificaciones. La tecnologia dellenguaje y su campo vinculado de la comprension de caracteres manuscritos actualmente estan en transicion hacia una generalizada cantidad de aplicaciones industriales y de consumo.

Otra area que al parecer se ha beneficiado con la formalizacion es la planeacion. Los tempranos trabajos de Austin Tate (1977) continuados por David Chapman (1987) han dado por fruto la elegante sintesis realizada en programas de planeacion que ya existian, convirtiendolos en un sencillo marco de trabajo. Existe un considerable numero de avances sobre los que se apoya el siguiente, en vez de empezar de cero cada vez. En consecuencia, en vez de la planificacion de sistemas que solo funcionaban para los micromundos, en la decada de los 70, actualmente tales sistemas sirven para la programacion del trabajo fabril y de misiones espaciales, entre otras cosas. Para mas detalles, veanse los capitulos II y 12.

La aparicion de Probabilistic Reasoning and Intelligent Systems, Judea Pearl (1988), sefialo la bienvenida al uso de la probabilidad y de la teoria de decisiones en lA, como secuela del resurgimiento del interes por tal utilizacion y cuyo epitome fue el articulo "In defense of Probability" de Peter Cheeseman (1985). La invencion del formalismo de red de creencia obedece a la necesidad de poder razonar eficientemente ante una combinacion de evidencias inciertas. Este enfoque supera con creces a los sistemas de razonamiento probabilistico de las decadas de los afios 60 y 70, Y actualmente prevalece en la investigacion que se hace en IA sobre razonamiento incierto y sistemas expertos. EI trabajo de Judea Pearl (1982a) y el de Eric Horvitz y David Heckerman (Horvitz y Heckerman, 1986; Horvitz et al .• 1986) sirvi6 para promover la nocion de sistemas expertos normativos: es decir, los que actuan racionalmente de acuerdo con las leyes de la teoria de las decisiones, sin que intenten imitar a los expertos humanos. En los capitulos 14 y 16 se aborda este tema.

Simi lares revoluciones se han dado en rob6tica, vision por computadora, autoaprendizaje de maquina (incluidas las redes neuronales) y representaci6n del conocimiento. Una mejor comprension de los problemas y de su complejidad, aunada a una mayor capacidad de manejo matematico, han favorecido la factibilidad de agendas de investigacion y de solidos metodos. Posiblemente estimulados por los avances logrados en la resolucion de los subproblemas de lA, los investigadores han reiniciado sus pesquisas en relacion con el problema del "agente total". EI trabajo de Allen Newell, John Laird y Paul Rosenbloom en el SOAR (Newell, 1990; Laird, et al., 1987) es el ejemplo mas conocido de una arquitectura de agente total en IA. EI tambien llamado movimiento "situado" intenta dilucidar el funcionamiento de agentes inmersos en entomos reales, sujetos a entradas sensoriales continuas. En este trabajo se estan obteniendo resultados muy interesantes, incluyendo la conciencia de la necesidad de reorganizar de alguna forma los subcampos de IA que anteriormente estuvieron aislados, en cuanto los resultados obtenidos en cada uno de ellos pueda amalgamarse en un solo disefio de agente.

Capitulo I.

Introducci6n

28

1.4 EL ESTADO DEL ARTE. Los ULTIMOS AVANCES

EI gran maestro internacional Arnold Denker estudia las piezas que tiene ante si en el tablero. Reconoce que no hay esperanza alguna; perdera el juego. Su oponente, HITECH, se convierte asi en el primer programa de computacion que logra derrotar a un gran maestro de la talla de Denker en un juego de ajedrez (Berliner, 1989).

"Quiero ir de Boston a San Francisco", dice el viajero a traves de un micr6fono. "(.Que datos tiene para el viaje?", es la respuesta. El viajero explica que de sea salir el 20 de octubre, en vuelo directo, con la tarifa mas barata y regresar el domingo siguiente. PEGASUS, un programa para comprension del lenguaje se hace cargo de todo y el resultado es una reservacion confirmada que le permite al viajero ahorrarse $894 del precio normal del boleto. No obstante que de diez palabras, este interprete de lenguaje entiende mal una,IS es capaz de recuperarse de estos errores gracias a su conocirniento de la manera como se estructura un dialogo (Zue et al., 1994).

La atencion de un analista de la sala de Operaciones de Misiones en el Laboratorio de Propulsion de Jets de repente se concentra. En la pantalla ha aparecido un mensaje en rojo que indica la presencia de una "anomalia" en la nave espacial Voyager, que esta en algun lugar de las inmediaciones de Neptuno. Afortunadamente, el analista logra corregir el problema desde tierra. En opinion del personal de operaciones, de no haber sido por MARVEL, este problema habria escapado de su atencion. MARVEL es un sistema experto en tiempo real que monitorea el copioso volumen de datos transmitidos desde la nave espacial, manejando tareas de rutina y alertando a los analistas sobre los problemas mas serios (Schwuttke, 1992).

Por una autopista en las afueras de Pittsburgh, a una velocidad de 80 kph, un hombre que ocupa el asiento del conductor de una camioneta se ve completamente relajado. Es natural: durante los ultimos 135 kilometres recorridos no ha tocado ni el volante, ni el freno ni el acelerador. De hecho, el verdadero conductor es un sistema de robotic a que obtiene informacion de unas camaras de video, de un sonar y de telemetros de laser instal ados en la camioneta. El sistema comb ina estas entradas con la experiencia obtenida durante viajes de entrenamiento y eficientemente determina como conducir el vehiculo.

Uno de los mas reconocidos expertos en patologia de nodos linfaticos plantea un caso endemoniadamente dificil al sistema experto y evalua la respuesta dada por este. La respuesta del sistema Ie causa risa. Ligeramente preocupados, los creadores del sistema Ie sugieren que pida a la computadora una explicacion del diagnostico dado. La maquina sefiala los principales factores que Ilevaron a esa decision y explica la sutil interaccion de varios de los sintomas en este caso. El experto, despues de un tiempo, admite su error (Heckerman, 199 I).

Desde una camara suspendida en el semaforo de un crucero, el monitor de trafico observa el panorama. Si alguien estuviera despierto y observara el monitor principal, leeria: "Citroen 2CV esta dando vuelta a la Plaza de la Concordia en los Campos Eliseos." "Carnien carguero grande de factura desconocida se ha detenido en la Plaza de la Concordia", y asi durante toda la noche. Ocasionalmente leerian: "Grave incidente en la Plaza de la Concordia, una camioneta que avanzaba velozmente se estrello con un motociclista" y se haria una llamada automatics a los servicios de emergencia (King et al., 1993,Kolleretai., 1994).

Los anteriores son solo unos cuantos ejemplos del tipo de sistemas de inteligencia artificial que existen en la actualidad. No se trata de magia ni de ciencia ficcion: es ciencia, ingenieria y matematicas, tema cuya presentacion se ofrece en este libro.

18 Existen otros sistemas que s610 cometen la rnitad de errores que PEGASUS.

Secci6n 1.5.

Resumen

29

1.5 RESUMEN

En este capitulo se define [a lA y se deslindan los antecedentes culturales que Ie han servido de base. Algunos de los puntos mas importantes son:

• Cada quien piensa de distinta manera acerca de [a lA. Es importante dar respuesta a las dos preguntas siguientes. l,Lo que desea es modelar humanos 0 trabajar a partir de un ideal estandar?

• En este libro se adopta el criterio de que la inteligencia tiene que ver principalmente con las acciones racionales. Desde un punto de vista ideal, un agente inteligente es aquel que emprende la mejor accion posible en una situaci6n dada. Se estudiara el problema de la construcci6n de agentes que sean inteligentes en este sentido.

• Los filosofos (des de el afio 400 A.C.) permitieron el poder pensar en la lA, al concebir a la mente, con maneras diversas, como una maquina que funciona a partir del conocimiento codificado en un lenguaje intemo y al considerar que el pensamiento servia para determinar cual era la accion correcta que habia que emprender.

• Las matematicas proveyeron las herramientas para manipular las aseveraciones de certeza logica, asi como [as inciertas, de tipo probabilista. Asimismo, prepararon el terreno para el manejo del razonamiento con algoritmos.

• Los psicologos reforzaron [a idea de que los humanos y otros animales podian ser considerados como maquinas para el procesamiento de informacion. Los lingiiistas demostraron que el uso de un lenguaje ajusta dentro de este modelo.

• La ingenieria de compute ofrecio el dispositivo que permite hacer realidad las aplicaciones de lA. Los programas de lA por [0 general son extensos y no funcionarian sin los grandes avances en velocidad y memoria aportados por la industria de compute.

• La historia de la IA ha sido testigo de ciclos de exito, injustificado optimismo y la consecuente desaparicion de entusiasmo y apoyos financieros. Tambien ha habido ciclos caracterizados por la introducci6n de nuevos y creativos enfoques y de un sistematico perfeccionamiento de los mejores.

• Los avances recientes logrados en la comprension de las bases teoricas de la inteligencia han ido aparejados con mejoras hechas en el potencial de los sistemas reales.

NOT AS BIBLIOGRAFICAS E HISTORlCAS

En Artificial Intelligence de Daniel Crevier (1993), se presenta una completa historia de este campo. La obra Age of Intelligent Machines, de Raymond Kurzweil (1990), ubica la IA dentro del mas amplio contexto de la ciencia informatica y de la historia del intelecto en general. Dianne Martin (1993) ofrece evidencias del grado con el que los medios masivos de comunicaci6n dotaron a las primeras computadoras de miticos poderes de inteligencia.

E[ estado metodologico de la inteligencia artificial se explora en The Sciences of the Artificial, de Herb Simon (1981), en donde se habla de areas de investigacion relacionadas con artefactos complejos. Explica como la IA puede considerarse tanto ciencia como matematicas.

30

Capitulo 1.

Introduccion

Artificial Intelligence: The Very Idea, de John Haugeland (1985) ofrece una sencilla explicacion de los problemas filosoficos y practices relacionados con IA. Una buena explicacion de la ciencia cognoscitiva es la que ofrece Johnson-Laird en The Computer and the Mind: An Introduction to Cognitive Science. Baker (1989) se ocupa de aspectos sintacticos de la linguistica moderna, en tanto que Chierchia y McConnell-Ginet (1990) hacen 10 correspondiente con los semanticos. Allen (1995) se ocupa de la lingiiistica desde el punto de vista de la IA.

Los primeros trabajos en el campo de IA se citan en Computers and Thought, de Feigenbaum y Feldman, en Semantic Information Processing de Minsky, y en la serie Machine Intelligence, editada por Donald Michie. Una nutrida cantidad de articulos se encuentra reunida en Readings in Artificial Intelligence (Webber y Nilsson, 1981). Los primeros articulos sobre redes neuronales estan reunidos en Neurocomputing (Anderson y Rosenfeld, 1988). En la Encyclopedia of AI (Shapiro, 1992) figuran articulos de investigacion practicamente sobre todos los temas de IA. Estos articulos son muy utiles para iniciarse en el conocimiento de la literatura de las investigaciones de diversas areas. En la obra en cuatro tomos Handbook of Artificial Intelligence (Barr y Feigenbaum, 1981) hay explicaciones de practicamente todos los sistemas importantes de IA publicados antes de 1981.

Los trabajos mas recientes aparecen publicados en las aetas de las conferencias sobre IA mas importantes: la bienal Conferencia Mixta Internacional sobre IA (IJCAI, International Joint Conference on AI) y la anual Conferencia Nacional sobre lA, mejor conocida como AAAI, por las siglas de la organizacion patrocinadora. Las mejores publicaciones periodicas sobre lA, en general, son Artificial Intelligence, Computational Intelligence, IEEE Transactions on Pattern Analysis and Machine Intelligence y el Journal of Artificial Intelligence Research. Existen tambien publicaciones periodicas que se enfocan en areas especializadas, las que se mencionan en los capitulos respectivos. Los productos comerciales aparecen en las revistas AI Expert y PC AI. Las principales asociaciones de profesionales de IA son Ia Asociacion estadounidense de inteligencia artificial (AAAI, American Association for Artificial Intelligence), el Grupo de intereses especial en inteligencia artificial ACM (SIGART, ACM Special Interest Grupo in Artificial Intelligencejy la Sociedad para la Inteligencia Artificial y Simulacion de la Conducta (AISB, Society for Artificial Intelligence and Simulation of Behaviour). En la publicaciones AI Magazine de la AAAI y en el SIGART Bulletin aparecen muchos articulos enfocados a temas especificos y de asesoria, asi como anuncios sobre conferencias y talleres.

EJERCICIOS

EI propos ito de los siguientes ejercicios es propiciar el intercambio de ideas; algunos de ellos podrian servir como trabajos del semestre 0 trimestre. Otra posible utilizacion es considerar su resolucion como intentos provisionales, los que se reevaluaran al termino del estudio dellibro.

1.1 Lea el articulo original de Turing sobre IA (Turing, 1950). En el comenta sobre varias de las objeciones potenciales al esfuerzo que se propuso emprender y a su prueba de inteligencia. l,Cuales de estas objeciones tienen todavia cierta validez? l,Son validas sus refutaciones? l,Se le ocurren nuevas objeciones a este documento a la luz de los nuevos adelantos? En el articulo, Turing predijo que para el afio 2000 es probable que una computadora tenga 30% de oportunidad de aprobar una prueba de Turing con duracion de cinco minutos aplicada por un evaluador inexperto. l,Considera razonable 10 anterior?

Scccion 1.5.

Resumen

31

IA FUERTE IA DEBIL

\ii.·c--I- ... c~~l .. ~--~~J

1.2 Se comento que las definiciones de fA se ubican en dos dimensiones: humana contra ideal y pensamiento contra accion. Sin embargo, existen otras dimensiones que vale la pena considerar. Una de elIas consiste en definir si nuestro interes se centra en el logro de resultados teoricos 0 en la obtencion de aplicaciones practicas. Otra es si deseamos que nuestras computadoras esten conscientes de su inteligencia 0 no. Los filosofos tienen mucho que opinar sobre este tema y si bien los investigadores en IA de buen grado han dejado la resolucion de estas preguntas a los filosofos, el debate en torno de elias ha sido acalorado. La afirmacion en el sentido de que las maquinas pueden tener conciencia se denomina la posicion fuerte de la IA. En cambio la posicion debil de la IA no hace afirmacion tal. Caracterice las ocho definiciones de la pagina 5, asi como las siete siguientes, basandose en las cuatro dimensiones antes mencionadas, as! como utilizando otras que usted considere utiles.

La inteligencia artificial es:

a. "Un conjunto de algoritmos manejables mediante el compute, aproximaciones adecuadas de problemas especificados intratables." (Partridge, 1991.)

b. "La empresa de construir un sistema de simbolos fisicos capaz de aprobar la prueba de Turing." (Ginsberg, 1993.)

c. "EI campo de la informatica que estudia que tanto es posible lograr que las maquinas actuen inteligentemente." (Jackson, 1986.)

d. "Un campo de estudio que incluye tecnicas de compute con el fin de realizar tareas que evidentemente requieren de inteligencia cuando las efectuan los seres humanos." (Tanimoto, 1990.)

e. "lnvestigacion muy general sobre la naturaleza de la inteligencia y de los principios y mecanismos necesarios para su comprension 0 su reernplazo." (Sharples et al., 1989.)

f. "Lograr que las computadoras hagan aquello que es al parecer es inteligente." (Rowe, 1988.)

1.3 Son bien conocidos ciertos tipos de problemas inmanejables por las computadoras, asi como otros que probablemente evidencian que ninguna computadora puede tomar decisiones. i,Significaria 10 anterior que la JA es un imposible?

1.4 Supongase que se amplia ANALOGY, el programa de Evans, como para alcanzar un puntaje de 200 en una prueba normal de cociente de inteligencia. i,Quiere decir 10 anterior que se ha obtenido un programa mas inteligente que un ser humano? Explique.

1.5 Consulte en la literatura sobre IA si alguna de las siguientes tareas puede efectuarse mediante cornputadora:

a. Jugar decorosamente un juego de tenis de mesa (ping-pong).

b. Condueir lin auto en el centro de EI Cairo.

c. Jugar deeorosamente un juego de bridge a nivel de competencia.

d. Deseubrir y demostrar nuevos teoremas de matematicas.

e. Escribir inteneionalmente una historia que resulte divertida.

f. Ofrecer asesoria legal competente en un area detenninada.

g. Tradueir ingles hablado al sueeo hablado, en tiempo real.

En el caso de las tareas que aetualmente no es factible realizar, trate de deseubrir cuales son las dificultades y calcule para cuando se podran veneer,

32

Capitulo I.

Introducci6n

1.6 Busque un articulo escrito por un lego, en un periodico 0 revista de prestigio, en donde el autor afirme que una maquina posee una capacidad intelectual absurdamente exagerada 0 falsa.

1.7 Hecho, mito y prediccion:

a. Busque una afirmacion, impresa, de un filosofo 0 cientifico de prestigio, en el sentido de que determinada capacidad nunca podra tenerla una computadora, cosa que los hechos ahora contradicen.

b. Busque una afirmacion hecha por un cientifico de la informatica, en el senti do de que las computadoras llegarian a tener cierta capacidad en una fecha ya rebasada, sin la aparicion de tal capacidad.

c. Compare la exactitud de estas predicciones con otras que se hayan hecho en los campos de la biomedicina, energia de fusion, nanotecnologia, transporte 0 electronic a aplicada al hogar.

1.8 Algunos autores afirman que la percepcion y las habilidades motoras son la parte mas importante de la inteligencia y que las capacidades de "alto nivel' son mas bien parasitas (meros agregados a las capacidades basicas). Es un hecho que la mayor parte de la evolucion y del cerebro se han concentrado en la percepci6n y las habilidades motoras, en tanto se ha hallado que en IA tareas como juegos e inferencia 16gica resultan mas sencillas, en muchos sentidos, que percibir y actuar en el mundo real. l,Consideraria usted que ha sido un error la concentracion tradicional de IA en las capacidades cognoscitivas de alto nivel?

1.9 "En realidad las computadoras no son inteligentes: unicamente son capaces de hacer 10 que los programadores les dicen." l,Es cierta la ultima aseveracion, e implica ala primera?

1.10 "En realidad los animales no son inteligentes, s610 hacen 10 que les dicen sus genes". l,Es correcta la ultima aseveracion, e implica a la primera?

2

AGENTES INTELIGENTES

En don de se explicara que hace un agente inteligente, como se relaciona este con su medio, como se Ie evalua y como se podria construir uno.

2.1 INTRODUCCION

Un agente es todo aquello que puede considerarse que percibe su ambiente mediante sensores y que responde 0 aetna en tal ambiente por medio de efectores. Los agentes humanos tienen ojos, oidos y otros organos que les sirven de sensores, asi como manos, piemas, boca y otras partes de su cuerpo que les sirven de efectores. En el caso de los agentes roboticos, los sensores son sustituidos por camaras y telernetros infrarrojos, y los efectores son reemplazados mediante motores. En el caso de un agente de software, sus percepciones y acciones vienen a ser lascadenas de bits codificados. En la figura 2.1 puede observarse el diagrama de un agente generico,

En esta obra interesa disefiar agentes que logren un buen desernpefio en su ambiente. Primero se intentara precisar que se entiende por un buen desempefio y luego se hablara de los diversos disefios de agentes satisfactorios: la respuesta al signo de interrogacion de la figura 2.1. Se mencionaran algunos de los principios generales aplicados al disefio de agentes a 10 largo dellibro entre los que destaca el principio de que los agentes deben poseer conocimientos. Finalrnente, se ensefiara a conjuntar un agente y un ambiente determinados y se explicaran diversos tipos de ambientes.

2.2 COMO DEBE PROCEDER UN AGENTE

AGENTE RACIONAL Un agente racional es aquel que hace 10 correcto. Obviamente, esto es preferible a que haga algo incorrecto, pero "que significa? Como un primer intento de aproximacion, se afirmara que 10 correcto es

33

34

Capitulo 2.

Agcntes mtcligcntes

----------------- ---.----------------

MEDICION DEL DESEMPENO

OMNISCIENCIA

sensores

percepciones

ambiente

Figura 2.1 Los agentes interactuan can los ambientes a traves de sensores y efectores.

aquello que pennite al agente obtener el mejor desempefio. Dicho 10 anterior, ahora sera necesario decidir como y cuando evaluar ese buen desempeiio del agente.

EI termino medici6n del desempeiio se aplica al como: es el criterio que sirve para definir que tan exitoso ha sido un agente. Desde luego que no existe una medida fija que se pueda aplicar por igual a todos los agentes. Podriamos preguntarle al agente su opini6n subjetiva de cuanto Ie satisface a el mismo su desempeiio; sin embargo, algunos de ellos no estarian en posibilidad de responder y otros, simplemente eludirian responder. (En particular, los agentes humanos se caracterizan por responder que "las uvas estan verdes" para justificar el no haber obtenido 10 que originalmente de seaban.) Por 10 anterior, hay que insistir en la necesidad de contar con una medici6n objetiva del desernpefio, medida que debera ser propuesta por una autoridad. En otras palabras, nosotros, en cuanto observadores extern os, definimos Ia norma de 10 que se considera un sat is facto rio desernpefio en un ambiente y emplearlo en la medici6n del desernpefio de los agentes.

Un ejemplo seria el caso de un agente al que se Ie encomienda limpiar con una aspiradora un piso sucio. Una posible medida de su desempefio seria la cantidad de mugre eliminada en un turno de ocho horas. Una medida mas elaborada consistiria correlacionar la cantidad de electricidad consumida y la cantidad de ruido generada. Una tercera, otorgaria la maxima calificaci6n a un agente que no s610 limpiase silenciosa y eficientemente el piso, sino que tambien se diera tiempo para ir a velear el fin de semana.'

EI cuando evaluar el desempefio es importante tambien. Si s610 midiesemos cuanta mugre elimin6 un agente durante la primera hora del dia, aquellos agentes que empiezan a trabajar rapidamente (no obstante que posterionnente realicen poco 0 ningun trabajo) resultarian premiados, en tanto que aquellos que laboran todo el turno de manera consistente resultarian castigados. Es decir, 10 importante es medir el desempefio a largo plazo, sea este un turno de ocho horas 0 una vida.

Hay que dejar claro que existe una diferencia entre racionalidad y omnisciencia. Un agente omnisciente es aquel que sabe el resultado real que produciran sus acciones, y su conducta es congruente con ello; sin embargo, en la realidad, no existe la omnisciencia. Considerese el siguiente ejemplo: Un dia voy caminando por los Campos Eliseos y yeo que al otro lado de la calle esta un anti guo amigo. No hay transite en las cercanias y no lIevo ninguna prisa; asi que, actuando racionalmente, empiezo a

i En este ejemplo existen riesgos de los que deberan estar conscientes aquellos que van a dcfinir la medida de un desempeiio: casi siempre se recibe 10 que se pide. Por ejemplo, si la manera de medir el desempeiio se basa en la cantidad de mugre elirninada, es posible que un astuto agente se vea tentado a traer consigo una buena carga de mugre todas las mananas, limpiarla en un santi amen y recibir asi una buena calificacion por su desernpefio, Lo que realmente interesa medir es que tan limpio esta el piso, pero su rnedicion es mucho mas dificil que la sencilla operacion de pesar la mugre eliminada.

Seccion 2.2.

Como debe proceder un agente

35

SECUENCIA DE PERCEPCIONES

AGENTE RACIONAL IDEAL

cruzar la calle. Al mismo tiempo, a una altura de 10 000 metros se desprende la puerta de la seccion de carga aerea de una aeronave de pasajeros-, y, antes de poder alcanzar la otra acera, quedo completamente aplastado. l,Se consideraria como irracional el haber atravesado la calle? Es improbable que en las notas necrologicas se afirme "Un idiota intenta atravesar la calle", Del ejemplo anterior se puede deducir que la racionalidad tiene mas bien que ver con un exito esperado, tomando como base 10 que se ha percibido. La decision de atravesar la calle fue racional dado que la gran mayo ria de las veces el cruce habria tenido exito y no habia forma de que yo hubiese previsto la caida de la puerta. Un agente que hubiera contado con un radar para detectar puertas en caida, 0 que estuviera dentro de una caja de acero que 10 protegiera, habria tenido mas exito, pero no por ello habria sido mas raciona!.

Con otras palabras, no se puede cui par a un agente por no haber tornado en cuenta algo que no podia percibir, 0 por no emprender una accion (como el repeler la puerta) de la que es incapaz. Sin embargo, la tolerancia en relacion con la exigencia de perfeccion no es algo que tenga que ver con una actitud justa en favor de los agentes. Lo importante es que si se especifica que un agente inteligente siempre debe hacer 10 que realmente es 10 correcto, sera imposible disefiar un agente para que satisfaga esta especificacion, a menos de que se lograran mejorar los resultados obtenidos mediante una bola de crista!.

En resumen, el caracter de racionalidad de 10 que se hace en un momenta dado dependera de cuatro factores:

• De la medida con la que se evalua el grado de exito logrado.

• De todo 10 que hasta ese momenta haya percibido el agente. A esta historia perceptual completa se le denomina la secuencia de percepciones.

• Del conocimiento que posea el agente acerca del medio.

• De las acciones que el agente puede emprender.

Lo anterior nos lleva a definir 10 que es un agente racional ideal: En todos los casos de posibles secuencias de percepciones, un agente racional debera emprender todas aquellas acciones que favorezcan obtener el maximo de su medida de rendimiento, basandose en las evidencias aportadas por la secuencia de percepciones y en todo conocimiento incorporado en tal agente.

Es necesario examinar cuidadosamente la definicion anterior. Aparentemente, con esta definicion se le permite a un agente emprender actividades definitivamente carentes de inteligencia. Por ejemplo, si un agente no se fija en el trafico de ambos sentidos de una calle antes de proceder a cruzaria, su secuencia de percepciones no Ie podra informar que un enorme camion carguero se aproxima a alta velocidad. En apariencia la definicion afirmaria que es correcto que el agente proceda a atravesar la calle. Sin embargo, la interpretacion anterior esta equivocada por dos razones. La primera es que no seria racional atravesar la calle: el riesgo de hacerlo as! es enorme. Segundo, un agente racional ideal invariablemente eligiria la accion de "verificar el trafico" antes de lanzarse a la calle, ya que esta verificacion Ie permite obtener 10 mejor de su desempefio esperado. EI emprender acciones con el fin de obtener informacion uti! es parte importante de la racionalidad; se explica detalladamente en el capitulo 16.

EI concepto de agente permite pensar en el como herramienta para eI analisis de sistemas, no como una caracterizaci6n absoluta que tajantemente divida al mundo en agentes y no agentes, T6mese el caso de un reloj. Puede considerarsele como un objeto inanimado, 0 bien, como un agente sencillo.

2 Vease N. Henderson "New door latches urged for boeing 747 jumbo jets" (Es urgente dotar de nuevas cerraduras las puertas de los jumbo Boeing 747)", Washington Post, 8/24/89.

36

Capitulo 2.

Agentes inteligentes

MAP EO

MAPEOS IDEALES

En cuanto este ultimo, todos los relojes hacen siempre 10 correcto: mueven las manecillas (0 presentan digitos) de la'manera adecuada. Los relojes, en cierto sentido, son agentes degenerados, dado que su secuencia de percepciones esta vacia; independientemente de 10 que suceda en el exterior, las acciones del reloj no se yen afectadas.

En realidad, 10 anterior no es completamente cierto. Si el reloj y su propietario partieran de viaje de California a Australia, 10 adecuado seria que el reloj se retrasara seis horas. Si nuestros relojes no hicieran 10 anterior no estariamos molestos con ellos puesto que estamos conscientes de que estan actuando racionalmente, considerando que no cuentan con un mecanismo de percepcion.'

EI mapeo ideal de las secuencias de percepciones para acciones

Una vez que nos hemos dado cuenta de que el comportamiento de un agente depende exclusivamente de la secuencia de sus percepciones en un momento dado, sabemos que es posible caracterizar cualquier agente en particular elaborando una tabla de las acciones que este emprende como respuesta a cualquier secuencia de percepciones posible. (En el caso de la mayoria de los agentes, la tabla anterior contendria una lista larguisima -infinita, en realidad- a menos que se ponga un limite a la extension de las secuencias de percepciones que se desee tomar en cuenta.) La anterior lista se denomina un mapeo de secuencias de percepciones para acciones. En principio, es posible determinar que mapeo describe acertadamente a un agente, ensayando todas las secuencias de percepciones posibles y llevando un registro de las acciones que en respuesta emprende el agente. (Si el agente utiliza cierto azar en sus calculos, sera necesario probar algunas secuencias de percepciones varias veces, a fin de formarse una idea adecuada de la conducta promedio del agente.) Si mediante los mapeos se caracteriza a los agentes, los mapeos ideales caracterizan a los agentes ideales. El especificar que tipo de accion debera emprender un agente como respuesta a una determinada secuencia de percepciones constituye el disefio de un agente ideal.

Lo anterior no implica, desde luego, que hay que crear una tabla explicita con una entrada por cada posible secuencia de percepciones. En vez de ello, se puede definir una especificacion del mapeo sin tener que enumerarlo exhaustivamente. Considerese el caso de un agente muy sencillo: la funcion raiz cuadrada de una calculadora. La secuencia de percepciones del agente anterior es una secuencia de pulsaciones de tecla que representan un numero; y la accion consiste en presentar un numero en la pantalla. El mapeo ideal se produce cuando la percepcion es un numero positivo x, y la accion correcta consiste en presentar un numero positivo z tal que z2 ,., x, con una precision de 15 cifras decimales. La anterior especificacion del mapeo ideal no implica que el diseiiador construya realmente una tabla de raices cuadradas. Ni tampoco la funcion raiz cuadrada tiene que utilizar una tabla para responder correctamente: en la figura 2.2 se muestra parte del mapeo ideal y un sencillo programa que permite la implantacion del mapeo utilizando el metodo de Newton.

EI ejemplo de la raiz cuadrada ilustra la relacion que existe entre el mapeo ideal y el diseiio de un agente ideal, en el caso de una muy limitada tarea. En tanto que la tabla es enorme, el agente es un agradable y compacto programa. Es decir, es posible diseiiar agentes agradables, compactos, mediante los que se implanta el mapeo ideal de situaciones mucho mas generales: agentes capaces de resolver una ilimitada variedad de tareas en una ilimitada variedad de ambientes. Antes de proceder a explicar como hacer esto, es necesario examinar primero uno de los mas importantes requisitos que debe satisfacer un agente inteligente.

3 Uno de los autores aim se queda sorprendido cuando su computadora reajusta por SI misma el cambio del horario de verano.

Seccion 2.2.

Como debe proceder un agente

37

AUTONOMIA

Percepcion X Accion z
1.0 I .000000000000000 funcion raiz cuadrada (x)
I.l 1.048808848170152 z~ 1.0 / * suposicion inicial * /
1.2 1.0954451150 I 0332 repetir hasta Iz2 - xl < 10-15
1.3 1.140175425099138 z ;- z - (Z2 - x)/(2z)
1.4 1.183215956619923
1.5 1.224744871391589 fin
1.6 1.264911064067352 regresar a Z
1.7 1.303840481040530
1.8 1.341640786499874
1.9 1.378404875209022
Figura 2.2 Parte del mapeo ideal del problema de la raiz cuadrada (con precision de 15 digitos)
y el programa correspondiente para implantar el mapeo ideal. Autonomia

En la definicion de agente racional ideal hay un elemento mas al que se debe prestar atencion: la parte del "conocimiento integrado". Si las acciones que emprende el agente se basan exclusivamente en un conocimiento integrado, con 10 que se hace caso omiso de sus percepciones, se dice que el agente no tiene autonomia. Por ejemplo, si el fabricante de relojes tuviera la capacidad de saber con antelacion (presciencia) que el propietario del reloj viajara a Australia en una fecha determinada, incorporaria un mecanismo para ajustar automaticamente las manecillas seis horas en el momenta preciso. Sin lugar a dudas la anterior es una conducta satisfactoria, pero la inteligencia respectiva es merito del disefiador del reloj, no del reloj mismo.

La conducta de un agente se basa tanto en su propia experiencia como en el conocimiento integrado que sirve para construir al agente para el ambiente especifico en el cual va a operar. Un sistema sera autonomot en fa medida en que su conducta esta definida por su propia experiencia. Sin embargo, seria excesivo el esperar una total autonomia tan solo con mencionar la palabra "adelante": si el agente cuenta con poca 0 ninguna experiencia, tendra que comportarse de manera aleatoria a menos que el disefiador Ie de algun tipo de ayuda. Y asi como la evolucion ha dotado a los ani males con una dotacion suficiente de reflejos incorporados, a fin de que sobrevivan 10 suficiente hasta que sean capaces de aprender por si mismos, tambien es razonable dotar a un agente de inteligencia artificial con ciertos conocimientos iniciales y de capacidad para aprender.

La autonomia no solo tiene cabida en 10 que nos indica nuestra intuicion, tambien es un ejemplo del solido manejo de la practica. Cuando un agente opera basandose en suposiciones en el integradas, su actuacion sera satisfactoria solo en la medida en que tales suposiciones sean vigentes y, por ello, carecera de flexibilidad. Considerese, por ejemplo, el caso del humilde escarabajo del estiercol. Luego de cavar su nido y depositar en el sus huevecillos, toma una bola de estiercol de una pila cercana para con ella tapar la entrada; si durante ef trayecto se le quita la bola, el escarabajo continuara su recorrido y hara como si estuviera tapando la entrada del nido, no obstante que ya no tenga consigo la bola y sin que se de cuenta de ello. La evolucion incorporo una suposicion en la conducta del escarabajo; si

4 La palabra "autonomo" ha adquirido la connotacion de algo asi como "no bajo el control inmediato de un humano", como sedan los llamados "vehiculos de aterrizaje autonomo", En nuestro caso se utiliza con un sentido mas amplio.



38

Capitulo 2.

Agentes inteligentes

tal suposicion se viola, se produce la consecuente conducta insatisfactoria. EI autentico agente inteligente aut6noino debe ser capaz de funcionar satisfactoriamente en una amplia gama de ambientes, considerando que se Ie da tiempo suficiente para adaptarse.

2.3 ESTRUCTURA DE LOS AGENTES INTELIGENTES

PROGRAMA DE AGENTE

ARQUITECTURA

Hasta ahora nos hemos referido a los agentes mediante la descripci6n de su conducta: aquellas acciones que se producen despues de una determinada secuencia de percepciones. Es tiempo ya de ver como funcionan las cosas desde adentro. EI cometido de la IA es el disefio de un programa de agente: una funcion que permita implantar el mapeo del agente para pasar de percepciones a acciones. Se da por sentado que este programa se ejecutara en algun tipo de dispositivo de c6mputo, al que se denominara arquitectura. Desde luego, el program a elegido debe ser aquel que la arquitectura acepte y pueda ejecutar. La arquitectura puede ser una computadora sencilla 0 hardware especial para la ejecucion de ciertas tareas, como seria el procesamiento de imagenes de una camara, 0 el filtrado de sefiales de entrada de audio. Podria incluir tambien un software que ofrezca cierto grado de aislamiento entre la computadora y el programa de agente, 10 que permitiria la programacion a un nivel superior. En general, la arquitectura pone al alcance del programa las percepciones obtenidas mediante los sensores, 10 ejecuta y alimenta al efector con las acciones elegidas por el programa conforme estas se van generando. La relacion entre agentes, arquitectura y programas podria resumirse de la siguiente manera:

agente = arquitectura + programa

La mayor parte de este libro esta dedicada al disefio de programas de agentes. En los capitulos 24 y 25 se aborda directamente el tema de la arquitectura.

Antes de pro ceder al disefio de un programa de agente, es necesario con tar con una idea bastante precisa de las posibles percepciones y acciones que intervendran, que metas 0 medidas de desempeno se supone lleve a cabo el agente, asi como del tipo de ambiente en que tal agente operara.' Estos pueden ser muy variados. En la figura 2.3 se muestran los elementos basicos que se consideran en la elecci6n de los tipos de agente.

Quizas a algunos de los lectores les sorprenda el hecho de que en la lista de los tipos de agente haya algunos programas que mas bien dan la impresion de funcionar en el ambiente total mente artificial de entradas por medio de un teclado y de salidas a traves de los caracteres que aparecen en una pantalla. "De seguro", podria uno pensar, "este no es un ambiente verdadero, (,no es asi?" En realidad, 10 que verdaderamente importa no es la diferencia entre ambientes "reales" y "artificiales", sino la complejidad de la relacion que existe entre la conducta del agente, la secuencia de percepciones que produce el ambiente y las metas que se espera alcance el agente. Algunos ambientes considerados como "reales", de hecho son muy sencillos. Por ejemplo, un robot disefiado para inspeccionar diversas partes que pasan ante el en una banda transportadora usa una serie de suposiciones de simplificaci6n: que la iluminaci6n sera siempre la misma, que 10 unico que esta sobre la banda son partes de determinado tipo y que s610 se ejecutan dos acciones: aceptar las partes 0 marcarlas como rechazadas.

5 A los que les agrada trabajar con siglas, a 10 anterior se Ie denomina como la descripci6n del PAM A (percepciones, acciones, metas y ambiente) (page, percepts, actions, goals, environment). N6tese que las metas no necesariamente tienen que estar representadas dentro del agente, simplemente describen la medici6n del desempeiio que perrnitira evaluar el diseiio del agente.

Seccion 2.3.

Estructura de los agentes inteJigentes

39

AGENTES DE SOFTWARE

SOFTBOTS

En contraste, en algunos muy ricos e ilimitados ambitos se utilizan agentes de software (0 robots de software, 0 softbots). Imagine un softbot disefiado para pilotear el simulador de vuelo de un 747. El simulador constituye un ambiente muy detallado y complejo; en el, el agente de software debe elegir de entre una amplia gama de acciones en tiempo real. 0, imagine por ejemplo un softbot disefiado para que revise fuentes de noticias en linea y escoja entre 'ellas las que sean del interes de sus c1ientes. Para lograrlo, debera estar dotado con la capacidad de procesamiento del lenguaje natural, tendra que aprender que es 10 que interesa a cada uno de los clientes y es necesario que pueda modificar en forma dinamica sus planes, cuando, por ejemplo, se interrumpa la conexi on con una de las fuentes noticiosas 0 una nueva se incorpore a la linea.

En algunos ambientes se diluye la diferencia entre "real" y "artificial". En el ambiente ALIVE (Maes et al., 1994), los agentes de software reciben como percepcion la imagen digitalizada de una camara colocada en una habitacion en la que deambula un ser humano. El agente procesa la imagen de la carnara y decide la accion que va a emprender. El ambiente presenta la imagen producida por la carnara en una pantalla grande, a la vista del humano y sobrepone a tal imagen una grafica de computadora que es una representacion del agente de software. Esta imagen puede ser un perro de caricatura, programado para aproximarse al humano (a menos que este le indique al perro que se aleje), para dar la pata 0 saltar animadamente cuando el humano hace ciertos gestos.

El mas famoso de los ambientes artificiales es la prueba de Turing, caracterizado porque tanto agentes reales como artificiales se encuentran en igualdad de condiciones, pero el ambiente plantea tantos desafios que resuIta muy dificil para un agente de software desempefiarse tan bien como su contraparte humana. En la seccion 2.4 se explican mas detalladamente los factores que hac en que unos ambientes sean mas complejos que otros.

Tipo de agente Percepciones Acciones Metas Ambiente
Sistema para Sintomas, evidencias Preguntas, pruebas, Paciente saludable, Paciente, hospital
diagnosticos y respuestas tratamientos reduccion al minimo
medicos del paciente de costos
Sistema para el Pixels de intensidad Imprimir una Clasificacion lmagenes enviadas
analisis de y colores diversos clasificacion de correcta desde un sate lite
imageries de satelite escena en orbita
Robot clasificador Pixels de intensidad Recoger partes Poner las partes en Banda transportadora
de partes variable y clasi ficarlas el bote que les sobre la que se
poniendolas en botes corresponda encuentran las partes
Controlador de Lecturas de Abrir y cerrar Lograr pureza, Refineria
una re fi neria temperatura valvulas; ajustar la rendimiento y
y presion temperatura seguridad maxirnos
Asesor interactivo Palabras escritas Ejercicios impresos, Que el estudiante Grupo de
de ingles a maquina sugerencias y obtenga la maxima estudiantes
correcciones calificacion en
una prueba
Figura 2.3 Ejernplos de diversos tipos de agentes y sus correspondientes descripciones PAMA. 40

Capitulo 2.

Agentes inteligentes

function SKELETON-AGENT(percept) returns action

funcion ESQUELETO-AGENTE ipercepciony responde con una accion estatica: memoria, la memoria del mundo del agente

memoria ~ ACTUALIZACION-MEMORlA(memoria, percepciony accion ~ ESCOGER-LA MEJOR-ACCION (memoria)

memoria ~ ACTUALIZACION-MEMORIA (memoria, accion) responde con una accion

Figura 2.4 El esqueleto de un agente. Cada vez que asi se solicite, se actualiza la memoria para que refleje la nueva percepcion, se escoge la mejor accion y tambien se consigna en la memoria la accion emprendida. La memoria persiste de una solicitud a otra.

Programas de agentes

A 10 largo de la obra constantemente se construiran agentes inteligentes. EI esqueleto de todos sera el mismo, es decir, la aceptacion de percepciones originadas en un ambiente y la generacion de acciones respectivas. Las primeras versiones de los programas de agente seran muy sencillas (figura 2.4). En cada una de ellas se emplearan algunas estructuras de datos intemos que se iran actualizando con la llegada de nuevas percepciones. Tales estructuras de datos se operaran mediante los procedimientos de toma de decisiones de un agente para generar la eleccion de una accion, eleccion que se transferira ala arquitectura para proceder a su ejecucion,

En relacion con este programa esqueleto hay dos aspectos que es necesario comentar. Primero, si bien se definio el mapeo de un agente como una funcion para pasar de secuencias de percepciones a acciones, el programa de agente recibe como entrada solo una percepcion. Es decision del agente construir la secuencia de percepciones en la memoria. Algunos ambientes permiten funcionar perfectamente sin necesidad de almacenar la secuencia de percepciones; en algunos dominios complejos no es factible el almacenaje de la totalidad de la secuencia.

Segundo, la meta 0 la medicion del desempefio no forma parte del programa esqueleto. La razon es que la medici on del desempefio se efectua desde afuera, a fin de evaluar la conducta del agente; es frecuente que se obtenga un alto desempefio sin contar con un conocimiento explicito de la medicion del desempefio (por ejemplo, el agente de raiz cuadrada).

;,No seria mas sencillo limitarse a buscar las respuestas?

Empezaremos por la manera mas sencilla de como hacer el programa de un agente: una tabla de consulta. En la figura 2.5 se muestra el programa del agente. Consiste en guardar en la memoria la totalidad de la secuencia de percepciones y en utilizar esta para hacer localizaciones en la tabla, en la que estan todas las acciones que corresponden a todas las posibles secuencias de percepcion.

Sera provechoso ver por que 10 propuesto anteriormente esta destinado al fracaso.

I. Para elaborar la tabla de algo tan sencillo como un agente cuya unica tarea es jugar ajedrez se necesitarian algo asi como 35100 entradas.

2. La elaboracion de la tabla tomaria demasiado tiempo al disefiador.

Seccion 2.3.

Estruetura de los agentes inteligentes

41

function T ABLE-DRlVEN-AGENT(percept) returns action

funcien AGENTE-CONDUCIDO-MEDlANTE TABLA(percepcion) responde con una accion estatlco: percepciones, una seeueneia, originalmente esta vacia

tabla, una tabla, indizada mediante seeueneias de pereepciones, originalmente espeeifieada en su totalidad

afiadir la percepcion al final de todas las percepciones accion f- CONsuLTA(percepciones, tabla)

devolver accion

Figura 2.5 Un agente basado en una tabla de eonsulta previamente espeeifieada. Se mantiene al tanto de la seeueneia de pereepeiones y se limita a definir cual es la mejor accion.

3. EI agente carece total mente de autonomia, puesto que el calculo de 10 que se considera como mejor acci6n esta ya integrado. Si el ambiente se modificara en algun aspecto no previsto, el agente se veria completamente perdido.

4. Incluso si se dotara al agente de un mecanismo de aprendizaje, con el fin de que tuviera cierto grado de autonomia, necesitaria una etemidad para aprender el valor correcto de todas las entradas de la tabla.

A pesar de todo 10 expuesto, el AGENTE-CONDUCIDO-MEDIANTE TABLA si es capaz de hacer 10 que deseamos: implanta el deseado mapeo del agente. No basta con afirmar: "No puede ser inteligente"; 10 importante es comprender por que un agente que razona (en contraste con limitarse a hacer consultas en una tabla) puede tener un mejor desempeiio al superar las cuatro desventajas mencionadas anteriormente.

Un ejemplo

Seria conveniente ahora considerar un ambiente en particular con el fin de hacer mas concreta esta explicaci6n. Principalmente por 10 familiar que resulta y tambien por la enorme gama de destrezas que entraiia, se escogera la tarea del diseiio de un conductor de taxis automatizado. Antes de provocar el azoro del lector, conviene aclarar que en la actualidad tal sistema esta fuera del alcance de la tecnologia actual, si bien la mayoria de los componentes existen de alguna manera.? La tarea de conducir un autom6vil, en su totalidad, es extremadamente ilimitada: no hay limite en cuanto a nuevas combinaciones de circunstancias que pueden surgir (y por esta misma raz6n se escogi6 esta actividad para la presente explicaci6n).

Habra que considerar las percepciones, acciones, metas y ambiente que corresponden a un taxi.

Estan resumidos en la figura 2.6 y se procedera a explicarlos.

EI taxi necesitasaber d6nde se encuentra, quien mas circula por su via y a que velocidad corre.

Esta informaci6n se obtiene de las percepciones que ofrecen una 0 mas camaras de televisi6n controlables, el velocimetro y el contador de kil6metros. A fin de tener un adecuado control del vehiculo, especialmente en las curvas, es necesario contar con un aceler6metro; tambien se necesita conocer el estado mecanico del vehiculo, para ello se debe contar con sensores para los sistemas de la maquina-

6 Vease en la pagina 28 la descripcion de un robot conductor que ya existe en Ia actualidad, 0 lea las aetas de la conferencia de Vehiculos Inteligentes y Sistemas de Vias de Alta Velocidad (IVHS, Intelligent Vehicle and Highway Systems).

42

Capitulo 2.

Agentes inteligentes

Tipo de agente Percepciones Acciones Metas Ambiente
Un viaje seguro,
Conductor de taxi Camaras, velocimetro, Manejo del volante, rapido, sin Caminos, trafico,
sistema satelite acelerar, frenar, infracciones, comedo, peatones, clientes
global de ubicacion, hablar con obtencion maxima
sonar, rnicrofono el pasajero de ganancias
Figura 2.6 El tipo de agente conductor de taxi. ria y electrico. Posiblemente se Ie dotaria de instrumentos con los que no cuenta un conductor humane promedio: un sistema sate lite global para determinar la ubicacion (GPS, global positioning system), mediante el que se generara informacion precisa sobre su ubicacion en relacion con un mapa electronico; 0 sensores infrarrojos 0 de sonar para detectar las distancias que 10 separan de otros carros y obstaculos, Por ultimo, debera estar provisto de un micr6fono 0 de un tecIado para que por medio de estos los pasajeros Ie puedan informar cual es el destino deseado.

Las acciones que puede producir este conductor de taxi son mas 0 menos las mismas que las de un conductor humano: control de la maquina mediante pedal para combustible y control del volante y de los frenos. Ademas, necesitara una salida en pantalla 0 sintetizador de voz que Ie permita contestar a los pasajeros y, quizas, de algun medio para comunicarse con otros vehiculos.

l,CuaJ seria la medida de desempeiio que el conductor automatizado desearia satisfacer? Entre las cualidades deseables estan la de I1egar al destino correcto, reducir al minimo el consumo de combustible, desgaste del vehiculo, tiempo de recorrido, su costo, violaciones al reglamento de transite y las molestias ocasionadas a otros conductores; ofrecer el maximo de seguridad y comodidad al pasajero y producir el maximo de ganancias. Desde luego que el logro de algunos de estos objetivos esta en conflicto con ellogro de otros, por 10 que sera necesario implicar concesiones.

Por ultimo, en caso de que el anterior fuese un proyecto real, seria necesario definir que tipo de ambiente de conduccion enfrentara el taxi. l,Operaria en calles comunes 0 en vias de alta velocidad? l,Estaria en el sur de California, donde muy rara vez existe el problema de la nieve, 0 en Alaska, en donde rara vez la nieve no es problema? l,Se conducira siempre a la derecha, 0 se tendra la flexibilidad de permitirle tambien conducir a la izquierda, en caso de que se quieran operar taxis en Gran Bretafia 0 en Japon? Obviamente, cuanto mas restringido sea el ambiente, menos complicado sera el problema del disefio,

Es tiempo ahora de decidir como se construira un programa real para implantar el mapeo que permitira pasar de percepciones a acciones. Nos damos cuenta de que los diversos aspectos del conducir un auto dan pie a proponer diversos tipos de programas de agente. Consideremos cuatro tipos de estos programas:

• Agentes de reflejo simple

• Agentes bien informados de todo 10 que pas a

• Agentes basados en metas

• Agentes basados en utilidad

Agentes de reflejo simple

EI recurso de utilizar una tabla de consulta explicita esta fuera de toda consideracion, La sefial de entrada visual producida por una sola camara tiene una frecuencia de 50 megabytes por segundo (25 fo-

Secci6n 2.3.

Estructura de los agentes inteligentes

43

REGLA D~ CONDICIONACCION

togramas por segundo, 1000 x 1000 pixels con 8 bits de color y 8 bits de informaci6n de intensidad). La tabla de consulta correspondiente a una hora tendria 260X60X50M entradas.

No obstante, es posible resumir fragrnentos de la tabla si prestamos atenci6n a ciertas asociaciones entre entradas/salidas que se producen con relativa frecuencia. Por ejemplo, si el carro de adelante frena, y enciende las luces de alto correspondientes, el conductor de atras 10 percibe e inicia, a su vez, el frenado. Es decir, se realiza un proceso como respuesta a la entrada visual y se establece la condici6n "el carro de enfrente esta frenando"; esto activa la conexi6n ya definida en el programa del agente y la acci6n correspondiente "empiece a frenar". A esta conexi6n se Ie denomina regia de condicion-acclon 7 y se escribe:

si el carro de adelante esta frenando entonces empiece a frenar

Los humanos funcionan tambien en muchos casos recurriendo a estas conexiones, algunas de las cuales son respuestas aprendidas (como en el caso del manejo de un auto) y otras son reflejos innatos (como el parpadeo del ojo cuando se Ie aproxima algun objeto). A 10 largo de este libro se estudiaran varios metodos que permiten aprender e implantar tales conexiones.

En la figura 2.7 se presenta la estructura de un agente reflejo sencillo en forma esquematizada.

En ella se puede observar c6mo las reglas condici6n-acci6n permiten al agente establecer la conexi6n entre percepciones y acciones. (Si to do esto pareciera trivial al lector, no se preocupe, pues en breve se pondra interesante.) Los rectangulos se usan para indicar el estado intemo en un momenta dado del proceso de decisi6n del agente; los ovalos representan la informaci6n de base utilizada en el proceso. EI programa de agente, tambien muy sencillo, aparece en la figura 2.8. La funci6n INTERPRETAR-ENTRADA genera una descripci6n abstracta del estado prevaleciente de la percepci6n; y la funcion REGLA-COINCIDENCIA produce la primera regIa en el conjunto de reglas que hace juego con la descripcion del estado ofrecida. Si bien agentes como el anterior se pueden implantar con bastante eficiencia (vease el capitulo 10), la extensi6n del ambito en donde se pueden aplicar es bastante limitada, como se vera.

Figura 2.7 Diagrama esquematizado de un agente reflejo simple.

7 Tarnbien conocida como reglas de situaclon-acclon, producciones 0 reglas si-entonces. Algunos autores emplean este ultimo termino en el contexto de la logica, por ello no sen! empleado.

44

Capitulo 2.

Agentes inteligentes

ESTADO INTERNO

function SIMPLE-REFLEX-AGENT(percept) returns action

funcien AGENTE-REFLEJO-SIMPLE(percepcion) responde con una accion estatlco: reglas, un conjunto de reg las de condici6n-acci6n

estado +- INTERPRET AR-ENTRADA(percepcion) regla +- REGLA-COINCIDENCIA(estado, reglas) accion +- REGLA-ACCloN[regla]

responder con una accion

Figura 2.8 Un agente reflejo simple. Actua encontrando una regIa cuya condici6n co inc ida con la situaci6n actual (definida por la percepci6n) y efectuando la acci6n que corresponda a tal regIa.

Agentes bien informados de todo 10 que pasa

El agente reflejo simple explicado anteriormente funcionara s610 si se tom a la decision adecuada con base en la percepci6n de un momento dado. Si el carro que va delante es un modelo reciente, y tiene instalada la luz central indicadora de frenado ahora obligatoria en Estados Unidos, bastara con una imagen para darse cuenta que esta frenando ese carro. Lamentablernente, en los modelos mas antiguos el disefio de luces, luces de frenado y luces direccionales es distinto, por 10 que no siempre es posible decir con precisi6n si el carro esta frenando. Es decir, aun en el caso de la regia de frenado mas sencilIa, el conductor tiene que mantener cierto tipo de estado interno, con el fin de estar en condiciones de optar por una acci6n. En este caso el estado interno no es demasiado extenso: 10 unico que necesita es la imagen anterior de la camara para detectar cuando se encienden 0 se apagan simultaneamente dos luces rojas ubicadas en los extremos del carro.

Considerese el siguiente caso, mas evidente: de vez en vez, el conductor mira al espejo retrovisor para percibir la ubicaci6n de los vehiculos cercanos. Cuando el conductor no ve el espejo, los vehiculos del carril contiguo resultan invisibles (es decir, los estados cuando estan presentes y ausentes son indistinguibles); pero si el conductor qui ere decidir una maniobra de cambio de carril sera necesario que sepa si hay vehiculos en el carril contiguo.

EI problema aqui ejemplificado surge debido a que los sensores no informan acerca del estado total del mundo. En casos asi, el agente necesita actualizar algo de informaci6n en el estado intemo que le permita disc emir entre estados del mundo que generan la misma entrada de percepciones pero que, sin embargo, son total mente distintos. AI decir "totalmente distintos" significa que para cada uno de los estados se necesitan acciones distintas.

La actualizaci6n de esta informacion sobre el estado intemo conforme va pasando el tiempo exige la codificacion de dos tipos de conocimiento en el programa de agente. En primer lugar, se necesita cierta informacion sobre como esta evolucionando eI mundo, independientemente del agente; por ejemplo, un carro que va alcanzando a otro automovil generalmente estara mas cercano a la parte trasera de este que 10 que estaba hace un momento. En segundo lugar, se necesita informaci6n sobre c6mo las acciones del agente mismo afectan al mundo; por ejemplo, cuando el agente cambia de carril ala derecha, queda un lugar vacio (por 10 menos temporalmente) en el carril en donde se encontraba, o que despues de conducir durante cinco minutos en direcci6n norte en una autopista por 10 general se encuentra uno a unas cinco millas al norte de donde se encontraba uno hace cinco minutos.

En la figura 2.9 se puede observar la estructura del agente reflejo y tambien c6mo se combinan las percepciones prevalecientes con el est ado intemo anterior para generar la descripci6n actualizada del estado prevaleciente. El programa de agente se muestra en la figura 2.10. Lo mas interesante es la funcion ACTUALIZAR-ESTADO, que es la responsable de crear la nueva descripci6n del estado intemo.

Seccion 2.3.

Estructura de los agentes inteligentes

45

Figura 2.9 Un agente reflejo con un estado interno.

» 3 2:

CD :::l

-

CD

Agente

function REFLEX-AGENT-WITH-sTATE(percept) returns action

funcion AGENTE-REFLEJO-CON-EsTADo(percepcion) responde con una accion estatico: estado, una descripci6n prevaleciente del estado del mundo

reglas, conjunto de reglas condicion-accion

estado +- ACTUALIZAR-EsTADO(estado. percepciont regia +- REGLA-COlNCIDENcIA(estado. reglas) accion +- REGLA-ACCJON[regla]

estado +- ACTUALIZAR-EsTADO(estado. accion) responder con una accion

Figura 2.10 Un agente reflejo con un estado interno. Opera encontrando una regia cuya condicion coincida con la situaci6n actual (tal como este definida mediante la percepcion y el estado interno almacenado) y luego procede a efectuar la accion que corresponda a tal regia.

Asi como interpreta la nueva percepcion a la luz del conocimiento disponible sobre el estado, tambien utiliza la informacion referente a la manera como evoluciona el mundo y asi mantenerseinformada acerca de esas partes no visibles de el, y ademas debe estar bien enterada en 10 tocante a como las acciones del agente estan afectando al estado del mundo. En los capitulos 7 y 17 se ofrecen ejemplos detallados de 10 anterior.

Agentes basados en metas

Para decidir que hay que hacer no siempre basta con tener informacion acerca del estado que prevalece en el ambiente. Por ejemplo, aillegar a un crucero, el taxi puede optar por dar vuelta a la derecha, a la izquierda 0 seguir de frente. La decision adecuada dependera de adonde desee llegar el taxi. Es decir, ademas de una descripcion del estado prevaleciente, el taxi tambien requiere de cierto tipo de informacion sobre su meta, informacion que detalle las situaciones deseables. Por ejemplo, llegar al

META

46

Capitulo 2.

Agentes inteligentes

BUSQUEDA PLANIFICACION

pun to de destino del pasajero. EI programa de agente puede combinar 10 anterior con la informacion relativa al resultado que producirian las posibles acciones que se emprendan (esta misma informacion se utilizo para actualizar el estado interno en el caso del agente reflejo) y de esta manera elegir aquellas acciones que permitan alcanzar la meta. En ocasiones esto es muy sencillo, cuando alcanzar la meta depende de responder con una sola acci6n; otras veces es mas complicado, cuando el agente tenga que considerar largas secuencias de giros y vueltas hasta que logre encontrar la via que Ie lleve a la meta. La busqueda (capitulos 3 al 5) y la planiflcacion (capitulos II al 13) son los subcampos de la IA que se ocupan de encontrar las secuencias de acciones que permiten alcanzar las metas de un agente.

Notese que la toma de decisiones de este tipo difiere radicalmente de las reglas condicion-accion explicadas anteriormente, en que implica el tomar en cuenta el futuro: tanto el "l.que sucederia si hago tal 0 cual cosa?" como el "is eso me hara feliz?" En el caso del disefio del agente reflejo esta informacion no se utiliza explicitamente puesto que el disefiador calcula previamente la accion correcta correspondiente a diversos casos. EI agente reflejo frena en cuanto ve que se encienden las luces de frenado. Un agente basado en metas, en principio, razonaria que si en el carro de enfrente se han encendido las luces de frenado, debera disminuir su velocidad. Considerando la forma como normalmente evolucionan las cosas en el mundo, la unica accion que permitiria alcanzar la meta de no chocar con otro carro es la de frenar. Si bien el agente basado en metas es menos eficiente, tarnbien es cierto que es mas flexible. Si empieza allover, el agente tendra la posibilidad de actualizar su conocimiento de que tan eficientemente podran funcionar sus frenos; esto trae como consecuencia la alteracion automatica de todas las conductas anteriores con el fin de adaptarse a las nuevas condiciones. Por el contrario, en el caso del agente reflejo habria que reelaborar una gran cantidad de reglas condicionaccion. Asimismo, el agente bas ado en metas es tambien mas flexible con respecto a dirigirse a diferentes destinos. Tan solo con especificar un nuevo destino, se produce en el agente bas ado en metas una nueva conducta. Las reglas de un agente de reflejo acerca de cuando dar vuelta y cuando seguir derecho funcionaran tan solo en el caso de un destino; siempre que surja uno nuevo habra que sustituirlas.

En la figura 2.11 se muestra la estructura del agente basado en metas. En el capitulo 13 se presentan programas detallados para agentes basados en metas.

Figura 2.11 Un agente con metas explicitas.

Seccion 2.4.

Ambientes

47

Agentes basados en utilidad

UTILIDAD

Las metas no bastan por si mismas para generar una conducta de alta cali dad. Por ejernplo, son muchas las secuencias de acciones que permitirian al taxi Ilegar a su destino, con 10 que se habria logrado la meta, pero de todas elias, algunas son mas rapidas, seguras y confiables, 0 baratas que las dernas. Las metas permiten establecer una tajante distincion entre estados "felices" e "infelices", en tanto que mediante una medida de desernpefio mas general seria posible establecer una comparacion entre los diversos estados del mundo (0 secuencias de estados) de acuerdo a como exactamente harian feliz al agente en caso de poder lograrlos. Puesto que el termino "feliz" no suena muy cientifico, la terminologia que se acostumbre utilizar es afirmar que si se prefiere un estado del mundo par otro, entonces ese estado ofrece mayor utilidad al agente.f

Por 10 tanto, la utilidad es una funcion que correlaciona un estado? y un numero real mediante el cual se caracteriza el correspondiente grado de satisfaccion. La completa especificacion de la funci6n de utilidad permite la toma de decisiones racionales en dos tipos de casos en los que las metas se encuentran con problemas. EI primero, cuando el logro de algunas metas implica un conflicto, y solo algunas de elias se pueden obtener (por ejemplo, la velocidad y la seguridad), la funcion de utilidad definira cual es el compromiso adecuado por el que hay que optar. Segundo. cuando son varias [as metas que el agente podria desear obtener, pero no existe la certeza de poder lograr ninguna de elias, la utilidad es una via para ponderar la posibilidad de tener exito considerando la importancia de las diferentes metas.

En e1 capitulo 16 se indica que a todos los agentes racionales se les puede caracterizar como poseedores de una funcion de utilidad. Asi pues, un agente que tiene una funcion de utilidad explicita esta en posibilidad de tomar decisiones racionales, aunque quizas tenga que comparar las utilidades obtenidas mediante diversas acciones. Las metas, no obstante su inflexibilidad, penni ten al agente optar de inmediato por un accion cuando esta perrnite alcanzarlas. Ademas, en algunos casos, se puede traducir la funcion de utilidad en un conjunto de metas, de manera que las decisiones adoptadas por el agente basado en metas tomando como base tal conjunto de metas resulten identicas a las que haria el agente basado en la utili dad.

La estructura general de un agente basado en la utilidad se muestra en la figura 2.12. En el capitulo 5 hay programas reales para agentes basados en la utilidad; se estudian programas para juegos en los que es necesaria una tina discriminacion entre las diversas posiciones de un tablcro, En cl capitulo 17 se aborda el problema general del diseiio de agentes que toman decisiones.

2.4 AMBIENTES

En esta seccion, asi como en los ejercicios del final del capitulo, se vera como acoplar un agente a un ambiente. En la seccion 2.3 se presentaron diversos tipos de agentes y de ambientes. En todos los casos, la relaci6n que existe entre ellos es siempre la misrna: es el agente quien ejerce acciones sobre el ambiente, el que, a su vez, aporta percepciones al agente. Primero se explicara cuales son los diferentes tipos de ambientes y como condicionan el disefio de los agentes. Luego se explicaran los programas de ambientes que sirven como campo de prueba de los programas de agentes.

8 La palabra "utilidad" hace referencia aqui a la "calidad de ser utir'.

9 0 secuencia de estados, cuando se mide la utilidad de un agente a largo plazo.

48

Capitulo 2.

Agentes inteligentes

ACCESIBLE

DETERMINISTA

EPIS6DICO

ESTATICO

Sensores ..... --+-.j..o.

Figura 2.12 Un agente completo basado en la utilidad,

Propiedades de los ambientes

Los ambientes vienen en varios sabores. Las diferencias basicas son las siguientes:

o Accesiblcs y no accesibles.

Si el aparato sensorial de un agente Ie permite tener acceso al estado total de un ambiente, se dice que este es accesible a tal agente. Un agente es realmente accesible si los sensores detectan todos los aspectos relevantes a la elecci6n de una acci6n. Los ambientes accesibles son comodos, puesto que no es necesario que el agente mantenga un estado intemo para estar al tanto de 10 que sucede en el mundo.

o Deterrninistas y no determinlstas,

Si el estado siguiente de un ambiente se determina completamente mediante el estado actual y las acciones escogidas por los agentes, se dice que el ambiente es determinista. En principio, un agente no tiene por que preocuparse sobre la incertidumbre en un ambiente accesible y determinista. Pero si el ambiente es inaccesible, entonces podria parecer que es no determinista. Lo anterior es especialmente valido cuando el ambiente es complejo, dificultando el estar al tanto de todos los aspectos inaccesibles. Por ello, es mas conveniente calificar el que un ambiente sea determinista 0 no determinista considerando el punta de vista del agente.

o Eplsedicos y no episodicos.

En un ambiente episodico, la experiencia del agente se divide en "episodios". Cada episodio consta de un agente que percibe y aetna. La cali dad de su actuaci6n dependera del episodio mismo, dado que los episodios subsecuentes no dependeran de las acciones producidas en episodios anteriores. Los ambientes epis6dicos son mas sencillos puesto que el agente no tiene que pensar por adelantado.

o Estaticos y dimimicos.

Si existe la posibilidad de que el ambiente sufra modificaciones mientras el agente se encuentra deliberando, se dice que tal ambiente se comporta en forma dinamica en relaci6n con el agente;

Seccion 2.4.

Ambientes

49

SEMIDINAMICO DISCRETO

de 10 contrario, se dice que es estatico, Es mas facil trabajar con ambientes estaticos puesto que el agente no tiene que observar 10 que sucede en el mundo al mismo tiempo que decide sobre el curso de una accion, ni tampoco tiene que preocuparse por el paso del tiempo. Si el ambiente no cambia con el paso del tiempo, pero si se modifica la calificacion asignada al desempefio de un agente, se dice que el ambiente es semldlnamlco,

o Discretos y continuos.

Si existe una cantidad limitada de percepciones y acciones distintas y claramente discernibles, se dice que el ambiente es discreto. EI ajedrez es discreto: existe una cantidad fija de posibles jugadas en cada ronda. La conduccion de un taxi es continua: la velocidad y la ubicacion del taxi y de los demas vehiculos se extiende a traves de un rango de valores continuos. iO

Veremos como para los distintos tipos de ambientes se necesitan prograrnas de agente relativamente diferentes para asi poder trabajar con ellos de manera eficiente. EI resultado, como era de esperar, es que el caso mas dificil se caracteriza por ser inaccesible, no episodico, dinamico y continuo. Otro resultado sera el hecho de que puesto que la mayoria de las situaciones reales son tan complejas que el decidir si son realmente deterministas es tema de controversia; para efectos practices, se les debera considerar como no deterministas.

En la figura 2.13 se listan las propiedades de diversos ambientes que nos son familiares. Notese que las respuestas podran variar dependiendo de como conceptue usted ambientes y agentes. Por ejemplo, el p6quer es determinista cuando el agente esta en la posibilidad se obtener informacion del orden de las cartas en el mazo, de 10 contrario seria no determinista. Por otra parte, muchos ambientes son episodicos en niveles mas altos que las acciones individuales de los agentes. Por ejemplo, un torneo de ajedrez consta de una secuencia de juegos: cada uno de ellos es un episodio, puesto que (en gran medida) la contribucion de los movimientos en juego, al desempefio general del agente, no se ve afectada por las jugadas de la siguiente sesion. Por otra parte, las jugadas de una misma sesion indudablemente que interactuan entre si, y por ello es que el agente tiene que anticipar varias de ellas.

Ambiente Accesible Determinista Episodico Estatico Discreto
Ajedrez con reloj Si Si No Semi Si
Ajedrez sin reloj Si Si No Si Si
Poquer No No No Si Si
Backgammon Si No No Si Si
Conducir un taxi No No No No No
Sistema de diag. medico No No No No No
Sistema de analisis de imago Si Si Si Semi No
Robot c1asificador de partes No No Si No No
Controlador de refineria No No No No No
Asesor de ingles interactivo No No No No Si
Figura 2.13 EjempJos de ambientes y sus caracteristicas. 10 Considerando un nivel extremo de divisi6n, aun el ambiente de la conducci6n de un taxi es discreto, puesto que la imagen producida por la camara se traduce en valores digitales para producir valores discretos de, pixeles. Sin embargo, en todo prograrna sensato de agente es necesario hacer una abstracci6n y rebasar este nivel, hasta a1canzar el nivel de divisi6n que se considere ya como continuo.

50

Capitulo 2.

Agentes inteligentes

Programas de ambientes

EI programa generico de ambiente de la figura 2.14 ilustra la relacion basica que existe entre agentes y ambientes. En este libro, por su conveniencia en diversos ejemplos y ejercicios, se utiliza un simulador de ambiente que se apega a la anterior estructura de programa. EI simulador toma como entrada uno 0 mas agentes y dispone de 10 necesario para proporcionar las percepciones correctas una y otra vez a cada agente y asi recibir como respuesta una accion. EI simulador procede a actualizar al ambiente tomando como base las acciones, y posiblemente otros procesos dinamicos del ambiente que no se consideran como agentes (la lluvia, por ejemplo). De esta forma, el ambiente se define por el estado inicial y la funcion de actualizacion. Desde luego, un agente que opera en un simulador debera ser capaz tambien de operar en un ambiente real que Ie proporcione el mismo tipo de percepciones y que acepte el mismo tipo de acciones.

EI procedimiento ElECUCI6N-AMBIENTE permite la adecuada ejercitacion de los agentes en un ambiente. En el caso de algunos tipos de agentes, como los que participan en un dialogo de lenguaje natural, es suficiente con observar su conducta. Para obtener informacion mas detallada acerca del desempefio de un agente, es necesario insertar algun tipo de codigo para medicion de desempeiio. La funcion ElECUCI6N-EVALUACI6N-AMBIENTE, mostrada en la figura 2.15 sirve para eso;aplica una medicion de desernpefio a cada agente y produce una lista de calificaciones obtenidas. Mediante la variable calificaciones se esta al tanto de la calificacion de cada uno de los agentes.

En general, 10 que se use como medicion de desempefio dependera de la secuencia total de estados ambientales generados durante la operacion del programa. Sin embargo, por 10 general, la medida del desempeiio se realiza a traves de una simple acumulacion, recurriendo ya sea a una adicion, a un promedio 0 tomando un maximo. Por ejemplo, si la medida de desempefio de un agente que hace limpieza con aspiradora es la cantidad total de suciedad eliminada durante un tumo, las calificaciones se limitaran a mantenerse al tanto de que tanta mugre se ha eliminado hasta un momenta dado.

La ElECUCI6N-EV ALUACI6N-AMBIENTE produce la medida de rendimiento correspondiente a un solo ambiente, definida como un solo estado inicial y una funcion de actualizacion en particular. Por

..... ,

procedimiento PROBAR-AMBIENTE(estado, FUNCI6N-ACTUALIZACI6N, agentes, terminaciony

entradas: estado, el estado inicial del ambiente FUNCI6N-ACTUALIZAR, funcion para modificar el ambiente agentes, un conjunto de agentes

terminacion, un predicado para probar cuando se concluya

repetir

por cada agente dentro los agentes responden PERCEPCI6N[agente]~OBTENER-PERCEPCI6N(agente, estado) terminar

por cada agente dentro los agentes responden

ACCI6N[agente] ~ PROGRAMA[agente ](PERCEPCI6N [agente]) terminar

estado ~FUNCI6N-ACTUALIZAR (acciones, agentes, estado) basta terminacion (estado)

Figura 2_14 EI programa basico del simulador de ambiente. Da a cada agente su percepcion, obtiene una accion de cada uno de los agentes y procede a actualizar el ambiente.

Secci6n 2.5.

Resumen

51

function RUN-EVAL-ENVIRONMENT(state, UPDATE-FN, agents,

termination, PERFORMANCE-FN) returns scores funcien EJECUCION-EVALUACION (estado, FUNCION-ACTUALlZAR agentes,

terminacion, FUNCION-DESEMPENO) responde con calificaciones variables locales: calificaciones, un vector del mismo tamafio que los agentes, todos 0

repetir

por cada agente dentro los agentes responden

PERCEPCloN[agente] +-HA OBTENER-PERCEPCloN(agente, estado)

fin

por cada agente dentro los agentes responden

ACCION[ agente] +- PROGRAMA[ agente ](PERCEPCION[agente])

fin

estado +- FUNCION-ACTUALlzAR(acciones, agentes, estado) calijicaciones +-FUNCION-DESEMPENo(calijicaciones, agentes, estado)

hasta terminacion (estado) responde con calijicaciones

/ * cambio * /

CLASE AMBIENTAL 10 general, los agentes se diseiian para que funcionen dentro de una clase ambiental, es decir, un conjunto de ambientes diversos. Por ejemplo, el diseiio de un program a de ajedrez capaz de enfrentarse a una amplia gama de oponentes humanos y maquinas. De haberlo diseiiado para un solo oponente, habria sido posible aprovechar las debilidades especificas de tal oponente, pero no se habria logrado un buen programa para utilizarlo en cualquier juego. En rigor, para poder medir el desempeiio de un agente es necesario contar con un generador de ambientes que seleccione ambientes particulares (con ciertas caracteristicas parecidas) en los que se pueda probar el agente. Lo que nos interesa es el desempeiio promedio del agente inmerso en determinada clase ambiental. La implantacion de 10 anterior se puede hacer relativamente sin mayor complicacion en ambientes simulados; los ejercicios 2.5 al 2.10 Ie conduciran a traves del proceso completo del diseiio de un ambiente y del procedimiento de medicion respectivo.

Es posible que exista cierta confusion entre 10 que es la variable de estado en el simulador ambiental y 10 que es la variable de estado en el agente mismo (vease AGENTE-REFLEJO-CON-ESTADO). Cuando como programador se tiene a cargo la tarea de implantar tanto el simulador de ambiente como al agente, se siente uno tentado a permitir que el agente fisgonee la variable de estado del simulador de ambiente. jA todo costo habra que resistir esta tentacion! La version que eI agente proponga para el estado deb era construirse partiendo excIusivamente de sus percepciones, sin acceso alguno a toda la informacion del estado.

2.5 RESUMEN

Figura 2.15 EI programa de un simulador de ambiente que se mantiene al tanto de las medidas de desernpefio obtenidas por cada uno de los agentes

Este capitulo ha sido una especie de agitado viaje de visita por la lA, considerada esta como la ciencia del diseiio de agentes. Los puntos mas importantes que hay que recordar son los siguientes:

/<~fY efl.

I' /".:::~:, d~: t,l ..

" .., r: . i

v" :,

~:-:~V

r

52

Capitulo 2.

Agentes inteligentes

• Un agente es algo que percibe y actua en un ambiente. lntemamente 10 componen la arquitectura y el programa de agente.

• EI agente ideal es aquel que siempre emprende acciones que se espera permitiran obtener la maxima medici6n de desempefio, tomando en cuenta la secuencia de percepciones hasta ese momento recibida.

• Los agentes se consideran aut6nomos en la medida que el tipo de acciones que eligen emprender dependan de su propia experiencia, no del conocimiento sobre el ambiente que les haya sido incorporado por el disefiador.

• Mediante el programa de agente se pasa de percepciones a acciones, al tiempo que se actualiza un estado interno.

• Existe gran diversidad de disefios de programas de agente basicos, y su elecci6n dependera del tipo de informacion que se hace explicita y se utiliza en el proceso de decision. Los disefios varian en cuanto a eficiencia, concision y flexibilidad. EI adecuado disefio de un programa de agente dependera de las percepciones, de las acciones y del ambiente.

• Los agentes reflejos responden de inmediato a las percepciones, los agentes basados en metas actuan en funcion del logro de una meta y los agentes basados en utilidad se esfuerzan por obtener un maximo de "felicidad".

• EI proceso de la toma de decisiones razonando con 10 que se conoce, es fundamental en la IA y en el satisfactorio disefio del agente. Lo anterior es una indicacion de la gran importancia de la

representacion del conocimiento. '

• Algunos ambientes son mas dinamicos que otros. Los ambientes que ofrecen mas retos son los inaccesibles, no deterministas, no episodic os, dinarnicos y continuos.

NOT AS BIBLIOGRAFICAS E HIST6RICAS

EI analisis de la actividad de un agente racional como una correlaci6n que permite pasar de secuencias de percepciones a acciones probablemente se haya originado, en ultima observaci6n, del esfuerzo por definir las conductas racionales dentro del ambito de la economia y de otras formas de razonamiento bajo condiciones de incertidumbre (de las que se habla en capitulos posteriores), y de los trabajos de conductistas psicol6gicos como Skinner (1953) enfocados a reducir la psicologia de los organismos a meras correlaciones entrada/salida 0 estimulo/respuesta. EI paso del conductismo al funcionalismo en el ambito de la psicologia, en parte resultado de la aplicacion de la metafora de la computadora a los agentes (Putnam, 1960; Lewis, 1966) incorpor6 al cuadro general la noci6n de estado interno de un agente. EI filosofo Daniel Dennet (1969, 1978b) contribuyo a sintetizar todos estos puntos de vista en una "posicion intencional" coherente en relacion con los agentes. Tambien en el ambito de la lA, se ha adoptado una perspectiva abstracta y de alto nivel en torno a la noci6n de agencia (McCarthy y Hayes, 1969). Jon Doyle (1983) propuso la idea de que el disefio de agentes racionales es la medula de la IA y seguiria siendo su objetivo primordial, en tanto que otros temas relacionados con la IA experimentarian una evolucion hasta constituirse en nuevas disciplinas. Horvitz et al. (1988) fueron especificos al sugerir el empleo de la racionalidad, concebida esta como la obtencion del maximo de utilidad esperada como fundamento para la IA.

Secci6n 2.5.

Resumen

53

Herb Simon, investigador en IA y economista ganador del premio Nobel, establecio una clara diferencia entre la racionalidad bajo limitaciones de recursos (racionalidad por procedimientos) y la racionalidad de hacer una eleccion objetivamente racional (racionalidad sustantiva) (Simon, 1958). Cherniak (1986) explora el nivel minimo de racionalidad necesario para que una entidad se pueda considerar como agente. Russell y Wefald (1991) abordan explicitamente la posibilidad del empleo de una diversidad de arquitecturas de agente. En Dung Beetle Ecology (Hanski y Cambefort, 1991) se ofrece una vasta cantidad de interesante informaci6n acerca de la conducta del escarabajo del estiercol.

EJERCICIOS

2.1 i,Cuai es la diferencia entre una medida de desempeiio y la funci6n de utilidad?

2.2 Defina que tipo de arquitectura de agente es la mas adecuada para cada uno de los ambientes mencionados en la figura 2.3 (consulte la tabla, reflejo sencillo, basada en metas 0 basada en la utilidad).

2.3 Elija un dominio con el que usted este familiarizado y escriba una descripcion PAMA de un agente para ese ambiente. Defina si el ambiente es accesible, determinista, epis6dico, estatico y continuo 0 si no 10 es. i,Cuai seria la mejor arquitectura de agente para este dominio?

2.4 Al ir conduciendo, i,que es 10 mas apropiado?

a. Siempre poner las luces direccionales antes de dar una vue Ita.

b. Nunca utilizar las luces intermitentes.

c. Mirar al espejo y usar las luces intermitentes s610 si us ted observa un carro que 10 puede observar a usted.

i,Que razonamiento haria usted para determinar que es 10 apropiado (l6gico, basado en metas 0 basado en la utilidad)? i,Que tipo de diseiio de agente seria necesario para llevar hasta el final 10 apropiado (reflejo, bas ado en metas 0 basado en la utilidad)?

Los siguientes ejercicios se refieren a la implantacion de un ambiente y de un conjunto de agentes en el mundo de una aspiradora.

2.5 Implante un simulador de ambiente para la medicion del desempeiio en el mundo de una aspiradora. Tal mundo se puede describir de la siguiente manera:

o Percepciones: Todo agente de aspiradora obtiene cada vez un vector de percepcion formado por tres elementos. EI primero, un sensor tactil, tiene un valor 1 si la maquina topa con algun obstaculo y un valor 0 en caso contrario. EI segundo proviene de un fotosensor que esta debajo de la maquina; este emite un I si hay suciedad y un 0 en caso contrario. EI tercero proviene de un sensor infrarrojo, que emite un 1 cuando el agente se encuentra en su ubicaci6n de origen, y o en cualquier otro caso.

o Acciones: Existen cinco acciones posibles: avanzar, dar vuelta de 90° a la derecha, dar vuelta de 90° a la izquierda, aspirar la mugre y apagarse.

54

Capitulo 2.

Agentes inteligentes

o Metas: La meta de todos los agentes es limpiar e irse a casa. Para ser mas precisos, la medida del desempefio sera de 100 puntos por cada pieza de suciedad aspirada, menos I punto por cada accion emprendida y menos 1000 puntos si no esta en su lugar de origen cuando se apague.

o Ambiente: EI ambiente esta formado por una rejilla de cuadrados. En algunos de ellos hay obstaculos (muros y muebles), en tanto que otros cuadrados son espacios libres. En algunos de estos hay mugre. Por cada accion "avanzar" se adelanta un cuadrado, a menos que en ese cuadrado haya un obstaculo, en cuyo caso el agente permanecera en donde se encuentra, y se enciende el sensor tactil. Mediante la accion "aspirar la mugre" siempre se limpia la mugre. EI comando "apagar" da por terminada la simulacion.

Se puede variar la complejidad del ambiente a 10 largo de tres dimensiones:

o Forma de la habitaci6n: En el caso mas sencillo, la habitacion es un cuadrado de n x n, siendo n un valor fijo. Para complicarlo, se Ie puede considerar rectangular, en forma de L, 0 de forma irregular, 0 bien, como una serie de habitaciones conectadas entre si mediante pasillos.

o Muebles: Poner muebles en una habitacion complica mas las cosas que cuando la habitacion esta vacia. Para un agente de limpieza por aspiradora, desde el pun to de vista de la percepcion no existe diferencia entre un mueble y un muro; para el sensor tactil ambos son un numero 1.

o Distribuci6n de la mugre: En el caso mas sencillo, la mugre esta distribuida uniformemente por toda la habitacion, aunque 10 mas real es que la mugre se concentre en ciertos lugares, como seria a 10 largo de un sector muy transitado, 0 frente a un sillon,

2.6 Implante un agente de consulta de tabla para el caso especial del mundo de la aspiradora, y que consta de una cuadricula de 2 x 2 cuadrados, de los cuales solo un maximo de dos de ellos tienen mugre. EI agente empieza por el extremo superior izquierdo. Recuerdese que el agente de consulta de tabla consta de una tabla de acciones indizadas por una secuencia de percepciones. En este ambiente, el agente siempre es capaz de concluir su tarea en nueve 0 menos acciones (cuatro desplazamientos, tres giros y dos aspiradas), por 10 que en la tabla solo es necesario contar con entradas correspondientes a las secuencias de percepciones de una extension maxima de nueve. En cada ocasion existen ocho posibles vectores de percepcion, por 10 que el tamafio de la tabla sera de 89 = 134 217 728. Afortunadamente, esta cantidad disminuye si nos damos cuenta de que no son necesarias las entradas del sensor tactil y las del sensor del lugar de origen; podemos arreglarnoslas para que el agente nunca choque con un muro y sepa cuando ya esta en casa. Por 10 tanto, solo hay dos vectores de percepcion relevantes, ?O? y ? I?, Y el tamaiio de la tabla es casi 29 = 512. Pruebe el simulador de ambiente del agente de consulta de tabla en todos los mundos posibles (l.cuantos hay?). Anote la calificacion de su desempefio en cada uno de los mundos asi como su calificacion total promedio.

2.7 Implante un ambiente para una habitacion rectangular de n x m, en la que cada uno de los cuadrados tiene una posibilidad de 5% de tener mugre, y n y m se escogen aleatoriamente dentro de un rango que va de 8 a 15, inclusive.

2.8 Disefie e implante un agente reflejo puro para el ambiente del ejercicio 2.7, haciendo caso omiso de los requisitos de regresar a su ubicacion de origen y de medir su desernpefio. Explique por que razon es imposible contar con un agente reflejo que vuelva a casa y se apague solo. Especule sobre que podria hacer el mejor agente reflejo. l.Que es 10 que Ie impide a un agente reflejo tener un buen desempefio?

Secci6n 2.5.

Resumen

55

2.9 Disefie e implante varios agentes que tengan estado interno. Mida su desernpefio. l,Que tanto se aproximan al agente ideal que corresponde a este ambiente?

2.10 Calcule el tamafio de la tabla de un agente de consulta de tabla para el dominio del ejercicio 2.7. ExpJique el porque de su calculo. No es necesario que anote las entradas de la tabla.

2.11 Haga experimentos cambiando la forma de la habitaci6n y la ubicaci6n de la mugre en esta, asi como con la adici6n de muebles. Mida a sus agentes en estos nuevos ambientes. Ofrezca opiniones sobre c6mo podria mejorarse su desernpefio a fin de estar en condiciones de manejar geografias mas complejas.

You might also like