Investigadores crean computador "sistémico" que nunca se cuelga

La clave está en imitar el azar aparente que existe en la naturaleza.

Puede que la "pantalla azul de la muerte" o los congelamientos espontáneos de una computadora sean poco recurrentes en la actualidad, pero de vez en cuando nos seguimos encontrando con ellos. ¿Es posible crear una máquina que nunca se quede pegada? Investigadores de University College London se hicieron esta pregunta y crearon lo que ellos llaman un computador "sistémico", que es capaz de autorepararse y recuperarse de caídas de sistema.

La clave está en imitar el azar aparente que existe en la naturaleza. Los computadores actuales no son buenos modelando procesos naturales, como por ejemplo la forma en que funcionan las neuronas en el cerebro, o cómo se agrupan las abejas. Esto se debe a que trabajan de forma secuencial, es decir, ejecutando una tarea a la vez.

Puede ser que la computadora nos haga creer que está trabajando en múltiples procesos al mismo tiempo, aunque en realidad lo que hace es cambiar rápidamente su atención entre todas las tareas que están corriendo. Las tareas son extraídas de la memoria, ejecutadas y el resultado es vuelto a poner en la memoria. Mientras el temporizador secuencial o contador de programa no deje a ninguna tarea esperando más de una fracción de segundo, no nos damos cuenta de que esto ocurre. Este sistema nos ha servido, sin embargo, el punto débil está en que cuando uno de los procesos falla, toda la computadora se congela.

En la naturaleza, explican los investigadores Peter Bentley y Christos Sakellariou, los procesos son distribuidos, descentralizados y probabilísticos, además de resistentes a las fallas ya que pueden adaptarse.

Los investigadores crearon entonces una computadora en la que los datos están integrados con las instrucciones sobre qué hacer con ellos. Por ejemplo, el computador podría ser capaz de monitorear la temperatura en un ambiente, y al mismo tiempo tener instrucciones de qué hacer en caso de que ésta suba a un rango específico. Luego se divide el resultado en "sistemas". Cada sistema contiene una memoria con datos de contexto, que implican que este sistema sólo podrá interactuar con otros similares. En lugar de usar un contador de programa, los sistemas se ejecutan en momentos elegidos por un generador aleatorio de números, diseñado para imitar el azar en la naturaleza.

Los sistemas ejecutan sus instrucciones de forma simultánea, sin que ninguno resulte más importante que otro. Los grupos de sistemas interactúan en paralelo y al azar. Aunque suena confuso, funciona y los investigadores presentarán la máquina en una conferencia de sistemas evolutivos en Singapur en abril.

¿Y la capacidad de auto-reparación? El computador sistémico contiene varias copias de sus instrucciones de forma distribuida en varios sistemas diferentes, de modo que si uno se corrompe, el computador puede acceder a una de las copias que no estén afectadas para auto-reparar su propio código. Así, en lugar de colgarse como ocurre con un computador tradicional cuando no puede acceder a parte de la memoria, el computador sistémico sigue adelante porque cada sistema individual contiene su propia memoria.

Link: The computer that never crashes (New Scientist)

 

powered byDisqus