Caminata aleatoria (random walk) en un autómata celular

Una caminata aleatoria, random walk en inglés, es un proceso aleatorio donde una partícula (aquí partícula es una forma elegante de decir “cosa”) se mueve avanzando en direcciones aleatorias donde la elección en cada momento no está condicionada por ninguna elección anterior. Se suele ilustrar con el paseo realizado por un caminante borracho que elige aleatoriamente entre alguna de las posibles direcciones que tiene alrededor y da un paso en esa dirección. Tras ese paso repite el proceso. En nuestra simulación los pasos van a tener todos el mismo tamaño, una celda. Para evitar las diagonales (que seria avanzar 1,41 veces mas que por lo lados) se va a usar una vecindad de tipo von Neumann lo que deja solo cuatro vecinos por celda y solo cuatro direcciones en las que el caminante se puede mover (arriba, abajo, izquierda, derecha)

Los estados de las celdas son solo dos, si contiene al caminante o no. Para mejorar la visualización se suele definir un tercer estado que indica si la celda ha sido visitada alguna vez o no por el caminante. Este tercer estado es algo simplemente visual y no afecta en nada a los movimientos del caminante.

  • Negra, celda sin visitas
  • Blanca, celda visitada
  • Azul, indica la celda donde esta el caminante

Las reglas son muy simple, la celda donde este el caminante elige una de sus cuatro vecinas y se mueve ahí.

El simulador se puede ver aquí y el código aquí.