Computación basada en Colisiones
Desde nuestras primeras concepciones del concepto de computación hasta estudios más rigurosos y profesionales, asociamos (a suerte de intuición) esta área con:
- procesadores,
- memoria,
- arquitectura centralizada,
- secuencias explícitas de instrucciones.
Sin embargo, el paradigma de collision-based computing propone una noción distinta: la posibilidad de realizar computación a partir de interacciones físicas entre entidades móviles dentro de un sistema dinámico.
A diferencia de la computación tradicional, que ocurre a partir de “sobre el sistema”, la computación basada en colisiones emerge directamente de su dinámica (naturaleza de sistema dinámico). ¿De qué dinámica? de aquella resultante de las interacciones entre las entidades.
Las entidades involucradas pueden ser:
- partículas,
- ondas,
- excitaciones químicas,
- señales ópticas,
- o patrones móviles dentro de un autómata celular.
¿Qué es el cómputo basado en colisiones?
La idea central puede resumirse de forma relativamente simple:
La información es representada por objetos móviles, y la computación ocurre cuando éstos colisionan.
Durante una interacción, las entidades pueden:
- aniquilarse,
- fusionarse,
- desviarse,
- reflejarse,
- o generar nuevas estructuras.
Cada colisión representa una transformación lógica dentro del sistema.
A diferencia de la computación clásica, aquí no existe necesariamente:
- un procesador central,
- un reloj global,
- ni separación estricta entre memoria y procesamiento.
El propio medio físico funciona simultáneamente como:
- soporte,
- canal de transmisión,
- y mecanismo computacional.
Origen conceptual
El paradigma posee conexiones profundas con:
- autómatas celulares,
- dinámica de partículas,
- sistemas reversibles,
- y física computacional.
Uno de los antecedentes más importantes aparece en el trabajo de Edward Fredkin y Tommaso Toffoli sobre Conservative Logic, donde la computación es modelada mediante partículas ideales que preservan información y momento.
Posteriormente, estas ideas se expandieron hacia:
- medios químicos,
- materiales excitables,
- redes ópticas,
- dinámica molecular,
- y particularmente, autómatas celulares.
La idea fundamental detrás de todos estos enfoques es similar: la computación puede emerger espontáneamente de interacciones locales suficientemente ricas.
El Juego de la Vida como medio computacional
El Game of Life de Conway resulta especialmente interesante porque contiene:
- estructuras móviles,
- osciladores,
- objetos estacionarios,
- mecanismos de crecimiento,
- y colisiones complejas.
En otras palabras: posee todos los ingredientes necesarios para construir sistemas computacionales universales.
Los gliders funcionan como señales binarias móviles:
- presencia de un patrón →
1 - ausencia →
0
Mientras tanto, estructuras estacionarias pueden actuar como:
- memoria,
- reflectores,
- absorbentes,
- sincronizadores,
- o direccionadores de señales.
Esto permite construir circuitos lógicos enteros dentro del propio autómata.
Colisiones como lógica
La parte más interesante aparece cuando múltiples gliders interactúan.
Dependiendo de:
- sincronización,
- fase,
- ángulo,
- y posición relativa,
la colisión puede producir resultados distintos.
Algunas interacciones:
- destruyen señales,
- generan nuevos gliders,
- alteran trayectorias,
- o preservan parcialmente información.
Estas colisiones permiten implementar operaciones booleanas fundamentales como:
- AND,
- OR
- NOT.
A partir de suficientes combinaciones lógicas, el sistema adquiere capacidad de computación universal.
Universalidad computacional
La consecuencia más importante de todo esto es la siguiente:
Si un sistema puede transmitir, almacenar y transformar información, entonces puede realizar computación universal.
Precisamente por ello, el Game of Life es considerado Turing-completo
Dentro del sistema es posible:
- transmitir información mediante patrones móviles,
- almacenarla utilizando estructuras estables,
- sincronizar eventos,
- y construir compuertas arbitrarias mediante colisiones.
En esencia: las partículas emergentes del autómata terminan formando una computadora dentro del propio sistema.
Emergencia computacional
Quizá lo más inquietante es que las reglas locales del sistema no contienen explícitamente:
- compuertas,
- memoria,
- arquitectura computacional,
- ni intención de cálculo.
Cada célula únicamente sigue reglas extremadamente simples.
Sin embargo, la interacción colectiva entre patrones produce:
- organización,
- transmisión de información,
- sincronización,
- y computación universal.
Esto convierte al cómputo basado en colisiones en uno de los ejemplos mas claros de emergencia computacional.
Computación más allá de la electrónica
El paradigma también sugiere una idea particularmente profunda:
La computación no pertenece exclusivamente a dispositivos electrónicos.
Cualquier sistema físico capaz de:
- propagar información,
- transformar estados,
- y mantener interacciones suficientemente complejas,
puede, potencialmente, computar.
Por ello, el collision-based computing ha sido estudiado en:
- medios químicos,
- colonias bacterianas,
- óptica,
- fluidos,
- materiales excitables,
- e incluso sistemas biológicos.
La computadora deja entonces de entenderse como un objeto específico y pasa a interpretarse como una propiedad dinámica de ciertos sistemas.
Reflexión final
Existe algo particularmente fascinante en observar cómo entidades tan simples como los gliders terminan produciendo computación universal.
Especialmente porque dichas entidades:
- no poseen intención,
- no poseen conocimiento global,
- ni fueron diseñadas para “pensar”.
Simplemente obedecen reglas locales.
Y aun así, de sus interacciones emergen:
- logica,
- memoria,
- transmisión de información,
- y computación.
Quizá una de las ideas más profundas detrás del cómputo basado en colisiones es precisamente esa: La computación puede emerger allí donde exista dinámica suficientemente rica.
Recursos
- Andrew Adamatzky (ed.), Collision-Based Computing
- Stephen Wolfram, A New Kind of Science
- Tommaso Toffoli & Norman Margolus, Cellular Automata Machines
- Martin Gardner, Mathematical Games — The Fantastic Combinations of John Conway’s New Solitaire Game “Life”