QNA > C > Come Funziona Un Motore Di Scacchi?

Come funziona un motore di scacchi?

La maggior parte dei motori scacchistici inizia generando una lista di tutte le mosse legali nella posizione corrente. Poi esaminerà ognuna di queste mosse una per una. Eseguirà la mossa sulla scacchiera e poi valuterà la nuova posizione risultante. Poi ritratterà (annullerà) di nuovo la mossa, e tornerà alla mossa successiva nella lista.

Questa è chiamata ricerca a forza bruta, perché tutte le mosse legali sono considerate. Questo è molto diverso da come pensa un umano. Gli umani tipicamente considerano solo poche mosse candidate, come consigliato da Alexander Kotov nel libro "Think like a Grandmaster".

Ora, torniamo al motore degli scacchi. La parte cruciale nella ricerca brute-force di cui sopra è la parte "poi valutare la nuova posizione risultante". Questo fa uso di una funzione di valutazione. Questa è la parte che è unica per ogni motore di scacchi. Queste funzioni di valutazione sono tipicamente estremamente complicate.

Oh, un'altra cosa. Il metodo di cui sopra cerca davvero solo un livello di profondità. I motori scacchistici spesso cercano fino a 20 strati in profondità, e lo fanno usando il pruning alfa-beta, più una serie di altre ottimizzazioni.

Se siete interessati a una conoscenza più approfondita dei motori scacchistici, e forse a suggerimenti per scrivere il vostro, allora date un'occhiata alla mia risposta qui: Michael Jørgensen's answer to Come posso iniziare a scrivere il mio motore scacchistico?

Di Tremain

Come fa un'IA a scegliere la sua prima mossa di scacchi? :: È pericoloso indossare un orologio intelligente?
Link utili