¿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.