Articulo de referencia

El algoritmo de Dios

El algoritmo de Dios es una noción que se originó en discusiones sobre formas de resolver el rompecabezas del cubo de Rubik , [1] pero que también se puede aplicar a otros rompe...

El algoritmo de Dios es una noción que se originó en discusiones sobre formas de resolver el rompecabezas del cubo de Rubik , [1] pero que también se puede aplicar a otros rompecabezas combinatorios y juegos matemáticos . [2] Se refiere a cualquier algoritmo que produce una solución con el menor número de movimientos posibles. La alusión a la deidad se basa en la noción de que un ser omnisciente sabría un paso óptimo a partir de cualquier configuración dada.

Alcance

Definición

El concepto se aplica a los rompecabezas que pueden asumir un número finito de "configuraciones", con un arsenal relativamente pequeño y bien definido de "movimientos" que pueden aplicarse a las configuraciones y luego conducir a una nueva configuración. Resolver el rompecabezas significa alcanzar una "configuración final" designada, una configuración singular o una de una colección de configuraciones. Para resolver el rompecabezas se aplica una secuencia de movimientos, comenzando desde una configuración inicial arbitraria.

Solución

Un algoritmo puede considerarse capaz de resolver un rompecabezas de este tipo si toma como entrada una configuración inicial arbitraria y produce como salida una secuencia de movimientos que conducen a una configuración final ( si el rompecabezas se puede resolver a partir de esa configuración inicial, de lo contrario indica la imposibilidad de una solución). Una solución es óptima si la secuencia de movimientos es lo más corta posible. El valor más alto de este, entre todas las configuraciones iniciales, se conoce como el número de Dios [3] o, más formalmente, el valor minimax [4] . El algoritmo de Dios, entonces, para un rompecabezas dado, es un algoritmo que resuelve el rompecabezas y produce solo soluciones óptimas.

Algunos autores, como David Joyner, consideran que para que un algoritmo pueda ser considerado correctamente como "algoritmo de Dios", también debe ser práctico , es decir, que no requiera cantidades extraordinarias de memoria o tiempo. Por ejemplo, el uso de una tabla de búsqueda gigante indexada por configuraciones iniciales permitiría encontrar soluciones muy rápidamente, pero requeriría una cantidad extraordinaria de memoria. [5]

En lugar de pedir una solución completa, se puede pedir un único movimiento a partir de una configuración inicial pero no final, donde el movimiento es el primero de alguna solución óptima. Un algoritmo para la versión de un único movimiento del problema se puede convertir en un algoritmo para el problema original invocándolo repetidamente mientras se aplican cada movimiento informado a la configuración actual, hasta que se llega a una final; a la inversa, cualquier algoritmo para el problema original se puede convertir en un algoritmo para la versión de un único movimiento truncando su salida a su primer movimiento.

Ejemplos

Los rompecabezas conocidos que encajan en esta descripción son los rompecabezas mecánicos como el Cubo de Rubik , la Torre de Hanoi y el rompecabezas del 15. También se cubre el juego de solitario de clavijas para una persona , así como muchos rompecabezas de lógica , como el problema de los misioneros y los caníbales . Estos tienen en común que se pueden modelar matemáticamente como un gráfico dirigido , en el que las configuraciones son los vértices y los movimientos son los arcos.

Rompecabezas mecánicos

norte-Rompecabezas

El rompecabezas de los Quince puede resolverse en 80 movimientos de una sola pieza [6] o 43 movimientos de varias piezas [7] en el peor de los casos. Para su generalización, el rompecabezas n , el problema de encontrar una solución óptima es NP - difícil [8], por lo que no se sabe si existe un algoritmo de Dios práctico.

Torres de Hanoi

En el caso del rompecabezas de las Torres de Hanoi , se conoce un algoritmo de Dios para cualquier número dado de discos. El número de movimientos aumenta exponencialmente con el número de discos ( ) 2 norte 1 Estilo de visualización 2^{n}-1 . [9]

Cubo de Rubik

Un cubo de Rubik desordenado

En 1997, Richard Korf publicó un algoritmo para determinar el número mínimo de movimientos necesarios para resolver el cubo de Rubik. [10] Si bien desde 1995 se sabía que 20 era un límite inferior para el número de movimientos necesarios para encontrar la solución en el peor de los casos, Tom Rokicki demostró en 2010 que ninguna configuración requiere más de 20 movimientos. [11] Por lo tanto, 20 es un límite superior preciso para la longitud de las soluciones óptimas. El matemático David Singmaster había "conjeturado precipitadamente" que este número era 20 en 1980. [4]

Juegos sin resolver

Algunos juegos muy conocidos con un conjunto muy limitado de reglas y movimientos simples bien definidos, sin embargo, nunca han tenido su algoritmo divino para una estrategia ganadora determinada. Ejemplos de ello son los juegos de mesa ajedrez y Go . [12] Ambos juegos tienen un número de posiciones que aumenta rápidamente con cada movimiento. El número total de todas las posiciones posibles, aproximadamente 5 × 10 44 [13] para ajedrez y 10 180 (en un tablero de 19 × 19) para Go, [14] es demasiado grande para permitir una solución de fuerza bruta con la tecnología informática actual (compárese con el Cubo de Rubik, ahora resuelto, con gran dificultad, a sólo unos 1000 000 ).4,3 × 10 19 posiciones [15] ). En consecuencia, no es posible una determinación de fuerza bruta del algoritmo de Dios para estos juegos. Si bien se han construido computadoras de ajedrez que son capaces de vencer incluso a los mejores jugadores humanos, no calculan la partida hasta el final. Deep Blue , por ejemplo, buscó solo 11 movimientos por adelantado (contando un movimiento de cada jugador como dos movimientos), reduciendo el espacio de búsqueda a solo 10 17 . [16] Después de esto, evaluó cada posición para la ventaja de acuerdo con reglas derivadas del juego y la experiencia humana.

Incluso esta estrategia no es posible con Go. Además de tener muchas más posiciones para evaluar, hasta ahora nadie ha logrado construir con éxito un conjunto de reglas simples para evaluar la fuerza de una posición de Go como se ha hecho para el ajedrez, aunque las redes neuronales entrenadas mediante aprendizaje de refuerzo pueden proporcionar evaluaciones de una posición que exceden la capacidad humana. [17] Los algoritmos de evaluación son propensos a cometer errores elementales [18], por lo que incluso para una mirada limitada hacia el futuro con el objetivo limitado a encontrar la posición provisional más fuerte, no ha sido posible un algoritmo de Dios para Go.

Por otra parte, desde hace tiempo se ha sospechado que las damas (damas) se "juegan hasta el final" por sus practicantes expertos. [19] En 2007, Schaeffer et al. demostraron que esto es así al calcular una base de datos de todas las posiciones con diez piezas o menos, proporcionando un algoritmo de Dios para todos los juegos finales de damas que se utilizó para demostrar que todos los juegos de damas jugados perfectamente terminan en tablas. [20] Sin embargo, las damas con solo5 × 10 20 posiciones [21] y aún menos,3,9 × 10 13 , en la base de datos, [22] es un problema mucho más fácil de resolver, del mismo orden que el cubo de Rubik.

La magnitud del conjunto de posiciones de un rompecabezas no determina por completo si es posible un algoritmo de Dios. El rompecabezas de la Torre de Hanoi ya resuelto puede tener una cantidad arbitraria de piezas, y la cantidad de posiciones aumenta exponencialmente como . Sin embargo, el algoritmo de solución es aplicable a problemas de cualquier tamaño, con un tiempo de ejecución que escala como . [23] 3 norte {\estilo de visualización 3^{n}} 2 norte Estilo de visualización 2^{n}}

Véase también

Notas

  1. ^ Paul Anthony Jones, Jedburgh Justice and Kentish Fire: Los orígenes del inglés en diez frases y expresiones , Hachette UK, 2014 ISBN  1472116224 .
  2. ^ Véase, por ejemplo, Rubik's Cubic Compendium de Ernö Rubik, Tamás Varga, Gerzson Kéri, György Marx y Tamás Vekerdy ​​(1987, Oxford University Press, ISBN 0-19-853202-4 ), pág. 207: "...el Pyraminx es mucho más simple que el Cubo Mágico... Nicholas Hammond ha demostrado que el Algoritmo de Dios consta de 21 movimientos como máximo (incluidos los cuatro movimientos triviales de vértice). [Más recientemente, tres personas han descubierto el Algoritmo de Dios. El número máximo de movimientos es 15 (incluidos los cuatro movimientos de vértice).]" 
  3. ^ Jonathan Fildes (11 de agosto de 2010). "La búsqueda de una solución rápida para el cubo de Rubik llega a su fin". BBC News .
  4. ^ de Singmaster, pág. 311, 1980
  5. ^ Joyner, página 149
  6. ^ A. Brüngger, A. Marzetta, K. Fukuda y J. Nievergelt, El banco de búsqueda paralela ZRAM y sus aplicaciones, Annals of Operations Research 90 (1999), págs. 45–63.
  7. ^ Norskog, Bruce; Davidson, Morley (8 de diciembre de 2010). «El rompecabezas de los quince puede resolverse en 43 movimientos». Foro Dominio del Cubo . Consultado el 15 de marzo de 2022 .
  8. ^ Daniel Ratner, Manfred K. Warmuth (1986). "Encontrar una solución más corta para la extensión N × N del rompecabezas de 15 es insoluble". en Actas de la AAAI-86 . Conferencia Nacional sobre Inteligencia Artificial, 1986. págs. 168-172.
  9. ^ Rueda, Carlos (agosto de 2000). "Una solución óptima al rompecabezas de las Torres de Hanoi". Universidad Autónoma de Manizales . Manizales , Colombia . Archivado desde el original el 5 de junio de 2004 . Consultado el 15 de marzo de 2022 .
  10. ^ Richard E. Korf, "Encontrar soluciones óptimas para el cubo de Rubik usando bases de datos de patrones", Proc. Natl. Conf. on Artificial Intelligence (AAAI-97), Providence, Rhode Island, julio de 1997, págs. 700–705.
  11. ^ Rokicki, Tomas; Kociemba, Herbert; Davidson, Morley; Dethridge, John (2010). "El número de Dios es 20". Cube20.org . Consultado el 15 de marzo de 2022 .
  12. ^ Rothenberg, pág. 11
  13. ^ John Tromp. «Clasificación de posiciones en ajedrez». GitHub .
  14. ^ Baum, pág. 199
  15. ^ Maestro de canto, 1981
  16. ^ Baum, pág. 188
  17. ^
  18. ^ Baum, pág. 197
  19. ^ Fraser y Hannah, pág. 197
  20. ^ Moore y Mertens, capítulo 1.3, "Jugando al ajedrez con Dios"
  21. ^ Schaeffer y otros , pág. 1518
  22. ^ Moore y Mertens, "Notas" del capítulo 1
  23. ^ Rueda

Referencias

  • Baum, Eric B., ¿Qué es el pensamiento?, MIT Press, 2004 ISBN 0262025485 . 
  • Davis, Darryl N.; Chalabi, T.; Berbank-Green, B., "Vida artificial, agentes y Go", en Mohammadian, Masoud, Nuevas fronteras en inteligencia computacional y sus aplicaciones , págs. 125–139, IOS Press, 2000 ISBN 9051994761 . 
  • Fraser, Rober (ed); Hannah, W. (ed), The Draught Players' Weekly Magazine , vol. 2, Glasgow: JH Berry, 1885.
  • Joyner, David (2002). Aventuras en la teoría de grupos . Johns Hopkins University Press. ISBN 0-8018-6947-1.
  • Moore, Cristopher; Mertens, Stephan, La naturaleza de la computación , Oxford University Press, 2011 ISBN 0191620807 . 
  • Rothenberg, Gadi, Catálisis, el algoritmo de Dios y el demonio verde , Amsterdam University Press, 2009 ISBN 9056295896 . 
  • Schaeffer, Jonathan; Burch, Neil; Björnsson, Yngvi; Kishimoto, Akihiro; Müller, Martin; Lake, Robert; Lu, Paul; Sutphen, Steve (14 de septiembre de 2007). "El juego de damas está resuelto" (PDF) . Science . 317 (5844): 1518–1522. Bibcode :2007Sci...317.1518S. doi :10.1126/science.1144079. ISSN  0036-8075. PMID  17641166.
  • Singmaster, David, Notas sobre el cubo mágico de Rubik , Penguin, 1981 ISBN 0-907395-00-7 . 
  • Singmaster, David, "El valor educativo del 'Cubo Mágico' húngaro", Actas del Cuarto Congreso Internacional sobre Educación Matemática , celebrado en Berkeley, California, del 10 al 16 de agosto de 1980, págs. 307-312, Birkhauser Boston Inc, 1983 ISBN 978-0-8176-3082-9 . 


Obtenido de "https://es.wikipedia.org/w/index.php?title=Algoritmo_de_Dios&oldid=1246675917"