¿Cuáles son los principios o ideas básicos sobre los que funcionan los motores de ajedrez?

Por lo general, es una combinación de búsqueda de árbol de juego y evaluación de posición en las hojas. Con muchas optimizaciones de búsqueda. En orden de importancia, estas optimizaciones son:

Método alfa-beta: para podar ramas que nunca ocurrirán. El puntaje para una posición debe estar entre alfa actual y beta: alfa <= puntaje <= beta, si no se descarta la rama.

Profundización iterativa: use la búsqueda más superficial para ordenar movimientos para la búsqueda más profunda más adelante. El orden de los movimientos es crucial para la efectividad de alfa-beta, los mejores movimientos primero. La esperanza es que los movimientos peores caerán fuera [alfa, beta].

Poda de movimiento nulo: omita un movimiento y si la posición sigue siendo buena, se puede podar toda la rama porque es demasiado buena. Más formalmente, habrá fallas en la parte superior de la rama, es decir, la puntuación de evaluación estará por encima del límite superior (beta en alfa-beta).

Poda de futilidad: si la puntuación actual más algún margen aún cae por debajo de alfa, descarte esta rama antes de realizar la búsqueda de profundidad máxima.

Quiescencia: solo evalúe estáticamente las posiciones tranquilas, por ejemplo, la posición donde está colgada su reina no es tranquila. Extienda la rama hasta que la posición esté tranquila.

Tabla de transposición (TT): tabla hash tecleada en la posición que contiene posiciones ya evaluadas en búsquedas anteriores para no repetir el trabajo. Por supuesto, si la posición en TT se evaluó a baja profundidad y queremos una búsqueda de mayor profundidad ahora, se volverá a evaluar (la profundidad y la puntuación también se almacenan en TT).

Bitboard: la posición está representada por un montón de bits, por lo que la aritmética de bits se puede utilizar tanto como sea posible, por ejemplo, para la generación de movimientos legales.

Función de evaluación: puntaje de seguridad del rey, puestos avanzados para piezas menores, estructura de peones, movilidad general de piezas, etc. Algunos conocimientos están codificados.

Los motores buscan muchas posiciones basadas en algoritmos. Minimax es el más básico, seguido de alfa beta, negascout y profundización iterativa, y vi uno que hizo un movimiento semi aleatorio.

La función de evaluación puntúa la posición, en función de la estructura del peón, la seguridad del rey, el material y otros, para devolver una puntuación a la función de búsqueda.

Hay muchos sitios de programación de ajedrez que pueden explicar esto con más profundidad.

La técnica más popular es la estrategia minimax hasta una cierta profundidad de búsqueda. Mira los enlaces.
Minimax

¿Actualmente se conocen los mejores algoritmos para el ajedrez informático?