Esto es básicamente en el campo de la Inteligencia Artificial (IA).
La forma más común de hacer que una computadora "piense" en un juego de ajedrez es usando el método mini-max donde la computadora "piensa" analizando los resultados de hacer diferentes movimientos antes de tiempo desde el estado actual.
La "bondad" de los resultados de diferentes movimientos se puede determinar a partir de muchos criterios, como puntuación, número de enemigos restantes, estado ganador, por ejemplo. Por ejemplo, si mueves al jugador hacia la derecha y ganas el juego, ese es un estado muy bueno. Pero si lo mueves hacia la izquierda no obtienes nada. Es razonable moverse hacia la derecha. Esta función que define la "bondad" suele denominarse Función heurística.
Este proceso se realiza de forma recursiva durante muchos turnos. Cuanto mayor sea el número de vueltas, más tiempo necesitará. Y cuanto mayor sea el número de vueltas, más inteligente será su software. Pensar en el futuro en un solo turno solo puede resultar en una selección codiciosa. El software de ajedrez inteligente tiene una gran función heurística y piensa en el futuro en muchos turnos.
PD. Hay algunos detalles del algoritmo mini-max que no expliqué aquí, pero esto debería cubrir la idea básica.