| Volver menú revistas | Número 1 - JULIO 1992 |
Página anterior |
| CHARLES: planteamiento
teórico de un sistema de IA
Por killerbyte/Alterna Parte I - El superdeterminismo como base de un "sistema inteligente" En general, a la hora de realizar un programa, el primer problema con el que se encuentra el programador es utilizar el lenguaje más adecuado. En el caso de un juego, se utilizará un ensamblador o compilador de C, o un sistema de desarrollo. En el caso de una aplicación de gestión o contabilidad, incluso el BASIC podría servir pero, ¿cual es el lenguaje más adecuado para la gestión de un sistema que pretenda simular una "cierta inteligencia"?. A dicho efecto, han surgido lenguajes específicos como el LISP o PROLOG. El primero, basado en la evaluación de expresiones, dista de ser fácil de aprender o usar, al exigir al programador una fuerte aproximación al nivel del lenguaje. El caso del PROLOG, es ligeramente diferente; al ordenador le decimos explicitamente como se hace algo, y las relaciones de ese algo con los átomos que nos interesen del universo, pero sigue adoleciendo del defecto común a todos los lenguajes de ordenador, la exigencia de un aprendizaje previo y, aún despues, la necesidad de planificar cuidadosamente un programa antes de que pueda llegar a funcionar. Es aquí donde entra un concepto-lenguaje que hemos reunificado bajo el nombre de CHARLES, en honor a Charles Babbage (1792-1871), pionero de la informática cuando ésta era impensable. Dejo advertido que todo el material expuesto en este artículo y los que le seguirán lo está en el más riguroso planteamiento teórico; de hecho, muchos de los problemas que se plantearán, no parecen tener una solución inmediata o, en muchos casos, accesible. De esta forma, no nos responsabilizamos de la viabilidad de muchos de los conceptos que serán planteados, debido a su idealización. Sin embargo, algunos de ellos, ya han sido puestos en práctica, como la ramificación de tareas en un sistema multiprocesador, pero esto será planteado más adelante. Empecemos por el concepto eje de este primer artículo: el superdeterminismo. Realicemos ese pequeño esfuerzo que en ocasiones se nos pide en un curso de física, e imaginemos un universo vacío, sin ninguna partícula. Es obvio que dentro de millones de años o dos segundos, no nos equivocaremos al asegurar que dicho universo sigue absolutamente vacío. Si tuvieramos un universo de una sola partícula, pasaría algo parecido, la certeza del pronóstico es asegurada en virtud al primer principio de Newton, pero... ¿Qué pasa en un universo de dos partículas? Para conocer la posición del sistema pasado un cierto tiempo, deberemos establecer alguna ley que, fijado un sistema de referencia, se cumpla para las dos partículas. También en este caso, Newton acude a nuestra ayuda con el concepto de la fuerza. El detalle importante es que para conocer la posición, velocidad y aceleración de una partícula en cualquier instante t, necesitamos conocer a priori no solo dichos datos en un momento previo de la misma partícula, sino también de la otra. ¿Y qué ocurre con tres partículas? Para conocer con exacta precisión la posición de una partícula, debemos conocer los datos de las otras del mismo modo. Pero para conocer la posición de las otras partículas, necesitamos conocer la interacción que se produce entre ellas. Compliquemos el proceso hasta el punto de añadir el resto de las partículas del universo. ¿Está determinado este universo como lo estaban los primigenios de ninguna, una o dos partículas? Si aplicamos superposición de fuerzas, nada parece indicar que no sea así, pero, ¿es computable? Para tres partículas, un simple Spectrum podría resolver el problema con cierta elegancia, incluso para cuatro. Para veinte, tenemos nada más y nada menos que del orden de 2E18 relaciones entre partículas; si necesitaramos una posición de memoria por partícula, dicha memoria tendría que ser como mínimo del mismo orden, lo cual está a años luz de la disponible por cualquier ordenador personal. El número de relaciones desborda la capacidad de mi calculadora para cien partículas, pero supongamos que alguien fuese capaz de construir un ordenador con un diseño y una capacidad de proceso tales que tuviera dicha memoria... Suponiendo que fuera capaz de realizar dichos cálculos, en un periodo de tiempo razonable, podríamos determinar completamente dicho sistema de cien partículas. Cojamos un millón de pequeños
átomos esta vez, y supongamos cada átomo como una partícula
simple. Entonces se nos ocurre la feliz idea de agrupar partículas
usando funciones de densidad y así, obtener predicciones no ya
de posiciones de partículas, sino de densidades. Entonces, conocer
posiciones de partículas se reducirá a buscar zonas donde
la densidad tienda a m, siendo m la masa de la partícula buscada, De cualquier modo, para tener una predicción exacta, seguimos necesitando conocer la posición de cada partícula, llegando así a una interesante paradoja. Si reducimos todo el estudio a tener en cuenta de cada partícula su posición y su velocidad, y supusieramos que para cada uno de estos datos solo necesitamos una partícula, necesitaríamos como mínimo otros dos universos iguales al nuestro, lo cual es imposible, por que si disponemos de dichos universos, es por que los despreciamos a la hora de concebir el Todo. ¿Qué es lo que ocurre entonces? Tenemos leyes, se pueden fijar relaciones dos a dos, pero todo el sistema se desmorona para un número de átomos o partículas tan insignificante como pueda ser el que tenga esta revista. El sistema se halla superdeterminado.¿Y que relación guarda este hecho con la creación de un sistema IA? En el estudio, he puesto énfasis en la necesidad de establecer no sólo posiciones, sino relaciones entre partículas. Un sistema IA siempre tiene en cuenta relaciones, pero lo hace de un modo arbitrario. Un programa de ajedrez que me hubiera "visto" jugar, sabría que poseo unas determinadas manías que podría aprovechar para ganarme con facilidad. Un programa de predicción del tiempo en estado de guerra, daría pronósticos posiblemente equivocados si no tuviera en cuenta pequeños detalles como la posibilidad de un bombardeo. Todo importa, es la ley de la mariposa, según la cual la causa más mínima e insignificante puede convertirse en detonante de una determinada situación. De esta forma, llegamos a que la superdeterminación no es sino otro aspecto del caos, explicando la imposibilidad de una predicción completa en base a que si bien todo el universo está determinado, no podemos tener en cuenta todos los factores que intervienen. A la hora de programar un sistema de pronóstico, no puedo tener en cuenta que, por ejemplo, el árbitro de un partido de hockey tuvo una niñez desgraciada, o que la pista tenga sólo diez grados bajo cero. Sin embargo, deberé intentar introducir el máximo número de factores posibles y la relación entre dichos factores hasta que, de forma análoga a lo visto antes, se produzca la superdeterminación, pero no para el ordenador, sino para el usuario. Un programa ya famoso, llamado ELIZA, mantenía una conversación con una persona expresándose en los términos en que los haría un correcto psiquiatra. Versiones reducidas de dicho programa, realizaban algo parecido, pero estaban toscamente determinados, pudiendose preveer la respuesta, o esperar algo sin sentido en versiones pseudointeligentes. De cualquier modo, como parece intuirse, el corazón de un buen sistema IA tendrá buena salud si posee un indice elevado de SD (superdeterminación) respecto a la aplicación final. Además, el índice de SD para jugar al ajedrez con una cierta calidad de juego, puede tolerarse más bajo que en un sistema para el cálculo de un acolchamiento térmico, donde una sola loseta de cerámica mal emplazada, puede ocasionar el sobrecalentamiento y destrucción de un transbordador espacial. En el próximo artículo, hablaremos de una primera aproximación a lo que constituirá el núcleo y filosofía de CHARLES. |