Borges y la computación.

Este ensayo fué parte de una tarea para mi curso de Cómputo Concurrente. Es una versión editada (y creo que mejorada) a la que entregué, esa vez tenía un montón de prisa y sentía que no habia quedado tan bonito. Recomiendo encarecidamente leer antes el cuento que se cita en todo el texto.

Borges en “El jardín de senderos que se bifurcan” nos muestra cómo podía pensar en temas tan comunes, como la comunicación y el tiempo, de una manera fantásticamente distinta. De una manera que en computación (y en muchas otras áreas) nos ha servido un montón pensarlos.

Al ser perspectivas tan únicas y con fines literarios podrían parecer imposibles, irreales, válidas únicamente para entretener nuestra imaginación y totalmente inútiles para la vida diaria. Pero no solo resulta que no es así, al contrario, difícilmente encontremos otro modo de ver las cosas que nos ayuden más que éstas.

Borges tenía claro del impacto que sus cuentos podían tener en el mundo científico. Alguna vez Seth Loyd, un investigador de física cuántica, le preguntó directamente si las ídeas de tal ciencia habían influido en su cuento y a la perspectiva que tenía sobre el tiempo. Este lo negó, pero sugirió que quizá el recíproco era cierto: las ideas de la física cuántica estaban inspiradas en su cuento, los físicos también eran lectores. Y no solo ellos, estoy muy seguro que al menos un computólogo se inspiró en él para resolver algún problema de nuestra área.

Y es que Borges deshecha la idea de un tiempo que avanza imparable y únicamente hacia al futuro. Él piensa al tiempo frágil, en el que no solo existimos nosotros, hijos de todas las acciones que nos han llevado hasta este momento. También existen otros nosotros, productos de una secuencia de acciones distintas a las nuestras, que habitan en estados completamente distintos al nuestro. Que por cada decisión que pudimos haber tomado, nuestra línea del tiempo se bifurca en vidas completamente distintas de las que nunca llegaremos si quiera a sospechar nada y que con ellas solo compartimos el pasado.

Cada una de estas bifurcaciones, además, es exactamente igual de rica y compleja que su vecina y que cada bifuración que salga de ellas. Es una visión abrumadora, sofocante de la existencia.

Ahora recordemos la definición de un árbol en computación. No definimos a un árbol directamente, lo hacemos a través de sus elementos: los nodos. Estos solo se definen por su contenido y otros nodos adyacentes a él; todos son estructuralmente idénticos únicamente diferenciables por lo que guardan. Esta definición recursiva comparte la esencia abrumadora y abstracta de la visión que tiene el autor del tiempo.

Borges nos da una idea de lo sobrehumano que sería tener una noción de todos los caminos posibles, de lo diferente que sería tener información sobre lo que pasa en nodos temporales distintos al nuestro. Y justo de esto se aprovechan las computadoras, es la gran ventaja que tienen sobre nosotros. Ellas, gracias a su brutal capacidad de procesamiento pueden, en poco tiempo, calcular (aproximadamente) cual es la mejor opción entre todas las decisiones posibles. En cada paso que dan pueden afirmar, con mucha seguridad, que la decisión que tomaron es la que más les convenía (al menos localmente).

Pero las similitudes del cuento no se limitan a las que a tomas de decisiones se refiere. Recordemos que en el cuento, el protagonista manda un mensaje a su país, Alemania, através de las noticias. No pagando un anuncio, no. Eso sería conceptualmente similar a ir personalmente con el presidente del país e informarle lo que sabemos. El sabía que la comunicación directa no siempre sería posible, que habría que pensar en como informar sin tener si quiera contacto con el remitente.En este cuento lo resuelve asegurandose de hacer algo lo suficientemente llamativo como para afectar a un recurso común: las noticias.

De nuevo, la similitud con la computación es muy clara. Muchas veces no podemos hacer que los participantes de alguna actividad se comuniquen directamente, en nuestro caso no es porque estén atrapados en un país que sabe que lo espías, sino porque hacerlo sería muy costoso, ya sea en tiempo o en espacio. Entonces ideamos un recurso parecido a las noticias: uno compartido al cual todos los participantes tengan acceso. De este modo, si podemos asegurar que los participantes son capaces de modificar este recurso, y hacer claro que fueron ellos quienes lo modificaron, sería en términos prácticos, equivalente a mandar el mensaje directamente.

Este último ejemplo es especialmente importante en el curso de Cómputo Concurrente, es en esencia lo que se investiga. Siempre estamos buscando la manera más eficiente de hacer trabajar a varios procesadores en la misma tarea, al mismo tiempo, sin que estos lleguen a confundirse sobre lo que están haciendo y teniendo imposibilitada la comunicación entre ellos.

Borges encontró la solución óptima al problema que se le había planteado a su personaje. Nosotros siempre buscamos (aunque no siempre lo logramos) la solución óptima del problema al que nos estemos enfrentando. Aunque, a diferencia de Borges, nosotros mismos no somos los que nos estamos poniendo el problema.

Creo que si queremos rescatar algo de encontrar estas relaciones no debería ser estas en específico. Debemos aprender a no limitar nuestro estudio a cosas terrenales. Aprender que, a veces, puede resultar muy conveniente dejar a la imaginación volar. Imaginar cosas que en nuestra realidad sean imposibles de imitar pero que si las aplicamos adecuadamente a las estructuras tan abstractas con las que estamos acostumbrados a trabajar cosas mágicas pueden pasar.

Written on April 4, 2020