¿De qué sufre este programa?
Un programa llamado Lxndr.exejunto con un readme.txtapareció de repente en mi escritorio. El archivo Léame dice
Creo que muestro algunos síntomas. ¿Crees que lo sufro?
Bueno, aunque definitivamente hay algo mal en mi computadora, no tengo idea de qué se trata el ejecutable.
Al igual que la persona sensata que soy, jugué con eso ejecutándolo. En primer lugar, llamar lxndr.exe -?al símbolo del sistema produce el siguiente resultado:
C:\users\me>lxndr.exe -?
lxndr [-p pos] [-d d] [-t time] [-b]
Options:
-p pos fenny position; default: random
-d d [redacted]
-t time max time (milliseconds)
-b !w; default: false
Luego lo ejecuté con algunos valores para -dy -t:
C:\users\me>lxndr.exe -d 10 -t 500
Output: [redacted] - 100ms - !
C:\users\me>lxndr.exe -d 22 -t 100
Output: [redacted] - 100ms - ??
C:\users\me>lxndr.exe -d 15 -t 200
Output: [redacted] - 190ms - ?
C:\users\me>lxndr.exe -d 8 -t 7
Output: [redacted] - 7ms - ??
C:\users\me>lxndr.exe -d 25 -t 75000
Output: [redacted] - 5000ms - !!
C:\users\me>lxndr.exe -d 20 -t 800
Output: [redacted] - 700ms - ?!
C:\users\me>lxndr.exe -d 60 -t 8000
Output: [redacted] - 8000ms - ??
¿De qué sufre este programa?
Notas:
- Con la respuesta deseada, puede a) explicar para qué se podría usar este programa, b) explicar el resultado y ciertas partes de él de manera más extensa c) derivar el significado de cada opción al llamar
-?yd) explicar el nombre del ejecutable. - No se concentre demasiado en los números exactos I en mis entradas y salidas de "prueba".
Pista n. ° 1:
Una vez que hayas descubierto que este rompecabezas está relacionado con el ajedrez, debes averiguar especialmente el significado de la última salida. ¿Por qué un motor "funcionaría mal" de esa manera? ¿Qué "enfermedad" debe tener que encaje con el nombre del ejecutable?
La respuesta no es técnica. La respuesta tiene más que ver con el conocimiento sobre ciertas cosas que rodean el ajedrez (¡podrías resolver esto solo conociendo los conceptos básicos del juego!) Y nada con la programación (del ajedrez). El hecho de que este sea un programa es la forma en que decidí presentarlo. Si no sabe la respuesta después de leer esta sugerencia, es posible que deba buscar en Google.
Respuestas
Primero de todo, obviamente
lxndr.exe es un programa de ajedrez.
Las opciones son
-ppara una posición en FEN (notación de Forsyth-Edwards; "fenny");-dpor la profundidad a la que buscar;-tes solo lo que dice;-bes decir, negro en lugar de blanco para moverse.
El resultado de ejecutar el programa consiste en
algo redactado, que podría ser la elección del programa de movimiento en la posición dada o su evaluación de qué jugador está por delante y cuánto; cuánto tiempo tardó en hacer su búsqueda; y algún tipo de evaluación de algún movimiento (tal vez el movimiento que eligió, pero no está claro cómo proporcionaría tal evaluación sin hacer una búsqueda adicional más larga). La evaluación se expresa en términos tradicionales de anotación de ajedrez, de modo que, por ejemplo, ?? significa un movimiento realmente terrible y !! significa uno brillante. (Aunque anotar algo como !! generalmente significa no solo que es el mejor movimiento, sino que de alguna manera fue un movimiento difícil de encontrar. Por ejemplo, aunque 1. e4 podría ser el mejor movimiento de apertura, nadie le daría dos signos de exclamación porque todos saben que es una buena elección).
Entonces
cuando aumenta
-d, obtiene búsquedas más profundas y, por lo tanto, tiempos más lentos;-d 60como en el último ejemplo, es extremadamente profundo para cualquier cosa que no sea una simple posición de final de juego donde todo se transpone a todo lo demás, por lo que esa búsqueda se cortó por el límite de tiempo.
El nombre del programa
parece ser una abreviatura de "Alexander".
Entonces, ¿cuál es su problema? Bien,
el gran maestro Alexander Kotov escribió un libro llamado "Piensa como un gran maestro", con una ilustración famosa en su capítulo inicial donde describe a un jugador que piensa de manera bastante desorganizada sobre una serie de movimientos candidatos plausibles, sin llegar a una conclusión clara, y eventualmente pensando "¡ajá! ¿Qué pasa si juego tal y cual en su lugar?" y hacerlo de inmediato ... lo cual es un terrible error, como lo hubieran reconocido si hubieran pensado de manera sistemática en tal o cual cosa. Este tipo de insuficiencia mental se denomina ocasionalmente síndrome de Kotov .
Y eso parece que podría ser lo que pasó con el programa al final.
Nota pedante:
Realmente no tiene mucho sentido que el programa en sí anote sus propios movimientos, a menos que esté siguiendo cada uno con una búsqueda más larga y mejor :-). Pero OP ha confirmado, en el chat de TSL, que eso es solo porque hubiera sido demasiado difícil transmitir la idea de, digamos, otra cosa que hiciera las anotaciones. Así que supongamos que después de hacer su búsqueda, ejecuta Stockfish NNUE o Leela Chess Zero o algo así durante unos minutos para decidir qué tan bueno es realmente el movimiento . Supongo que la salida redactada probablemente incluye la posición inicial y el movimiento elegido.
Algunas observaciones que pueden ser útiles para que otros respondan completamente al acertijo:
Creo que está relacionado con el ajedrez:
- "fenny" se refiere a la notación FEN de las posiciones de ajedrez
- "d" podría ser la profundidad, es decir, el número de (medio) movimientos que el programa necesita para pensar en el futuro
- es común limitar la cantidad de tiempo que un motor de ajedrez puede pensar
- el parámetro "b" es una abreviatura de "negro para moverse" y es la inversa de "blanco para moverse"
- la salida contiene? y!, que se utilizan con frecuencia para describir movimientos buenos y malos en el ajedrez, y sus combinaciones tienen su propio significado
: "lxndr" son las consonantes de Alexander, que es el primer nombre del ex campeón de ajedrez Alekhine.