Jugando a ser Dios. Manuel López Michelone
Чтение книги онлайн.
Читать онлайн книгу Jugando a ser Dios - Manuel López Michelone страница 5
5 Los programas en el lenguaje funcional Prolog se ejecutan de arriba hacia abajo. De hecho, ésta es la razón por la cual la condición terminal debe ir antes de la función recursiva. Si se ponen al revés, el resultado es que se cicla el programa o se detiene por falta de memoria en el stack.
6 Es claro que los seres humanos son un ejemplo de máquinas que se autorreproducen.
Capítulo iii
El Juego de la vida de John Conway
Un matemático es un hechicero que revela sus secretos.7
John Horton Conway
Hay un juego de computadora fascinante, llamado Juego de la vida, que fue diseñado en 1970 por el matemático británico John Horton Conway,8 en la Universidad de Cambridge, Inglaterra. Se hizo muy popular desde que Martin Gardner, en su columna de octubre de ese año en la revista Scientific American, abordara las ideas de dicho matemático. Pero más allá de ser un interesante pasatiempo, el Juego de la vida contiene las ideas que originalmente Von Neumann intentó plasmar en su autómata celular. Lo importante aquí es que Conway halló una serie de reglas simples para su autómata celular en dos dimensiones que permitieron superar las dificultades que Von Neumann enfrentó en su momento para crear máquinas que se autorreplicaran.
[no image in epub file]
John Horton Conway.
El Juego de la vida ocurre en un tablero cuadriculado, en cada casilla o escaque puede haber una célula o estar vacío. La idea es acomodar una serie de células en la malla cuadriculada, y observando las vecindades de cada célula, es decir, cada cuadro, mediante las reglas de Conway (véase más abajo), determinar las nuevas configuraciones de células que aparecerán en la siguiente generación.
Puede apreciarse que el Juego de la vida de Conway no es estrictamente un juego de video, pues el jugador no hace nada más que ver la evolución que en cada tiempo, en cada generación, aparece en la pantalla. Las reglas de evolución en el Juego de la vida son:
No ha de haber ninguna configuración inicial para la que pueda demostrarse fácilmente que la población crecerá de manera ilimitada.
No deben existir configuraciones iniciales que en apariencia crezcan indefinidamente.
Han de existir configuraciones iniciales sencillas que crezcan y cambien durante periodos de tiempo considerables, antes de acabar en una de estas tres posibilidades:
a) extinguirse completamente (ya sea por superpoblación o por excesivo enrarecimiento);
b) adoptar una configuración estable, invariable en tiempos sucesivos o
c) entrar en fase oscilatoria, donde se repitan sin fin, cíclicamente, dos o más estados.
Cabe decir que las reglas que se definan para el Juego de la vida deben ser tales que la conducta de la población resulte a un tiempo interesante e impredecible. Las reglas de evolución, dadas por el propio matemático, llamadas también reglas genéticas, son de una grata sencillez y pensamos que Conway las fue descubriendo (¿inventando?) poco a poco.
Tomemos un plano cuadriculado de dimensiones infinitas. Cada sitio, cuadro o casilla, tiene ocho casillas vecinas: cuatro ortogonalmente adyacentes, en diagonal, dos en vertical y dos en horizontal. Es posible adjudicar a cada sitio un valor binario (hay célula o no hay en esa casilla). Las reglas son:
Supervivencia: cada célula o ficha que tenga dos o tres fichas vecinas sobrevive y pasa a la generación siguiente.
Fallecimiento: cada ficha que tenga cuatro o más vecinas muere y es retirada del tablero, por sobrepoblación. Las fichas con una vecina o solas fallecen por aislamiento.
Nacimientos: cada casilla vacía, adyacente a exactamente tres cifras vecinas —tres, ni más ni menos— es casilla generatriz. Es decir, en la siguiente generación habrá de colocarse una ficha en esa casilla.
Es importante hacer notar que todos los natalicios y fallecimientos ocurren simultáneamente y constituyen en su conjunto una generación en particular al paso del tiempo t, también llamado tic del reloj.
Para ciertas configuraciones iniciales de sitios distintos de cero (casillas vacías), las generaciones subsiguientes van experimentando cambios constantemente, algunos parecen insólitos y otros inesperados. En algunos casos, la sociedad termina por extinguirse (al quedar eliminados todos los sitios en donde hay células), y esto puede acontecer después de muchas generaciones (pasos del reloj). Sin embargo, casi todas las generaciones terminan por alcanzar figuras estables, que Conway bautizó como naturalezas muertas, incapaces de cambio, o formaciones que oscilan por siempre.
En un principio, el inventor de este singular juego conjeturó que ningún patrón inicial podría crecer ilimitadamente. Dicho en otras palabras, ninguna configuración compuesta por un número finito de fichas puede crecer hasta rebasar un límite superior finito, que restringe el número de fichas que puede contener el campo del juego. Seguramente ésta es la cuestión más difícil y profunda que plantea este pasatiempo.
Conway ofreció un premio de 50 dólares a la primera persona capaz de probar o de refutar la conjetura antes de finalizar 1970. Una forma de refutarla sería dar con las configuraciones que, generación tras generación, añadiesen más piezas al terreno de juego: un cañón (es decir, una configuración que repetidamente dispara objetos en movimiento), o bien el tren puf-puf (configuración que al paso del tiempo t avanza dejando tras de sí una estela de “humo”).
La conjetura de Conway se refutó en noviembre de 1970. Un grupo integrado en el proyecto de inteligencia artificial del mit, comandado por William Gosper, halló un cañón lanzadeslizadores, el cual genera un deslizador cada 30 pulsos de reloj (o generaciones). Ese cañón suscita una interesante posibilidad de que el juego de Conway pueda simular una máquina de Turing,9 la cual es capaz de hacer, en principio, cualquier cálculo. Si el juego permite esta alternativa, entonces la siguiente pregunta es si podría crearse un constructor universal. De esto se encontraría una máquina con capacidad de autorreproducción no trivial. Desafortunadamente, hasta la fecha no ha podido construirse.
La máquina de Turing fue descrita por su propio creador, Alan Turing, en 1936, quien la llamó una “máquina automática”. Esta máquina no es tecnología de computación físicamente, sino un dispositivo hipotético que representa una máquina de computación.
Turing dio una definición sucinta del experimento en su ensayo de 1948, “Máquinas inteligentes”. Refiriéndose a su publicación de 1936, escribió que la aquí llamada máquina de computación lógica, consistía en:
una ilimitada capacidad de memoria obtenida en la forma de una cinta infinita marcada con cuadrados, en cada uno de los cuales podría imprimirse un símbolo. En cualquier momento hay un símbolo en la máquina llamado el símbolo leído. La máquina puede alterar el símbolo leído y su comportamiento está en parte determinado por ese símbolo, pero los símbolos en otros