El algoritmo de Wilson para generar laberintos

Wait 5 sec.

Cruz Godar tiene unos cuantos applets que ha ido desarrollando a modo de entretenimiento, entre los que está este generador de laberintos mediante el algoritmo de Wilson. Es entretenido y agradable de ver en acción; basta elegir el tamaño y otros detalles para ponerlo en marcha.Estos laberintos se podrían considerar los más «justos» porque el algoritmo genera árboles aleatorios uniformes: cada posible laberinto (entendido como un conjunto de caminos sin ciclos que conecta todos los puntos del mapa) tiene la misma probabilidad de aparecer. Técnicamente es porque en el Wilson se emplean caminatas aleatorias sin bucles: cada vez que el algoritmo traza un camino desde un punto al azar hasta el conjunto ya generado elimina los bucles en cuanto aparecen. Este proceso no favorece ningún tipo de trayectoria ni dirección.Crear y resolver laberintos son tareas igualmente complejas: diseñarlos exige cierto equilibro entre que sean claros e interesantes a la vez, evitando tanto los caminos triviales como los callejones sin salida demasiado rebuscados. Resolverlos requiere recorrer un espacio finito pero con un número enorme de combinaciones, y puede llegar a ser bastante lioso.En informática, ambos procesos se relacionan con problemas de búsqueda y optimización. Es por esto que, tanto en papel como en simulaciones digitales, los laberintos resultan un estupendo ejercicio de lógica, probabilidad y paciencia.Relacionado:Un generador de laberintos y cuatro algoritmos para resolverlosUn algoritmo para crear laberintos «interesantes»Algoritmos de resolución de laberintos en acciónAlgoritmos para resolver laberintosAlgorithms, de Jeff Erickson: más de 470 páginas sobre los fundamentos e ideas tras todo tipo de algoritmosLos algoritmos recursivos de vuelta atrás (backtracking) explicados y con ejemplosGenerador de laberintosUn algoritmo generador de islasUn generador de mapas de mundos de fantasía incluyendo ciudades, culturas, detalles geográficos y más# Enlace Permanente