¿Un computador que se repara a sí mismo?


¿A quién no le ha ocurrido alguna vez estar trabajando con su ordenador y que éste, de forma totalmente imprevista, se quede bloqueado, teniendo que abandonar la tarea que se estaba realizando, apagar y volver a reiniciar? 

Seguramente a muy pocas personas. Pues bien, parece que los errores informáticos de este tipo pueden ser historia. Así al menos lo afirman desde la Escuela Universitaria de Londres (University London College, UCL), donde Peter Bentley, científico de computación, y el estudiante de informática Christos Sakellairou han creado un ordenador que nunca se queda «colgado».

La máquina funciona, según explican sus desarrolladores a la revista «New Sciencists», donde han dado a conocer su invento, inspirándose en la propia naturaleza, que es capaz de adaptarse a las adversidades, reparándose a sí misma y reorganizándose si es preciso. El concepto que subyace bajo el invento de Bentley y Sakellairu es la llamada computación sistémica, un paradigma que se inspira en el modus operandi de los seres vivos pero aplicada al mundo de la informática. 
 
«La computación sistémica –explica Bentley– está diseñada para soportar algoritmos biológicos como las redes neuronales, algoritmos evolucionarios y modelos de desarrollo, y comparte las deseadas capacidades de la biología que no se encuentran en otras arquitecturas». Además, matiza, «este paradigma reconoce las incompatibilidades prácticas que existen entre la informática convencional y la computación natural representada por sistemas biológicos».

Inteligente como la naturaleza

Pero, ¿cómo funciona en concreto este ordenador? La máquina, cuando se queda «colgada» es capaz de reparar los datos corruptos y mantener el funcionamiento de los sistemas de misión crítica. Esto es posible porque no está programada al uso de los sistemas convencionales, que funcionan de forma secuencial y ejecutan una orden a la vez, sino que se comportan como la naturaleza, «con procesos distribuidos, descentralizados y probabilísticos –explica Bentley– que además son tolerantes a fallos y capaces de repararse a sí mismos».

Así, en comparación con la secuencia convencional de instrucciones que se ejecutan en una CPU, la computación sistémica se basa en eventos (interacciones) que ocurren en paralelo y de forma estadística y define una serie de convenciones para cada modelo natural que son las siguientes, según reza el trabajo de Bentley y Sakellairou: «Todo es un sistema; los sistemas pueden albergar o compartir otros sistemas en su interior; los sistemas pueden ser transformados pero nunca destruidos o creados desde la nada; la interacción entre sistemas puede provocar transformación de aquellos sistemas dentro de un sistema contextual; todos los sistemas pueden actuar potencialmente e interactuar en algún contexto; la transformación de los sistemas es obligada por el propio foco de los sistemas; y, finalmente, la computación es transformación».

Sistemas que interactúan en paralelo

En definitiva, en el nuevo ordenador, cada sistema dispone de una memoria que contiene datos sensibles al contexto lo que significa que solo puede interactuar con otros sistemas similares. Además, más que utilizar un contador de programa, los sistemas se ejecutan en momentos elegidos por un generador de números casi aleatorio, diseñado para imitar precisamente la aleatoriedad de la propia naturaleza. De este modo, los sistemas ejecutan sus instrucciones simultáneamente, de forma que ningún sistema precede a otros. «El conjunto de sistemas interactúa en paralelo –indica Bentley– y de forma aleatoria, como resultado de una computación que, simplemente, emerge de esas interacciones».

Y, dado que este ordenador sistémico contiene múltiples copias de sus instrucciones distribuidas a lo largo de sus múltiples sistemas, si uno de estos se corrompe la máquina puede acceder a otra copia «sana» para reparar su propio código. En este sentido, al contrario que los sistemas operativos tradicionales, que se quedan bloqueados cuando no pueden acceder a una parte de la memoria, este ordenador siempre funcionará, ya que cada sistema individual incluye su propia memoria.

Los científicos Bentley y Sakellairou, están ya trabajando en la siguiente fase de su estudio, que consiste en enseñar al ordenador a reescribir su propio código como respuesta a los cambios que se produzcan en el entorno.