Perft

Conosciuto anche come: Performance test

Test che conta ogni sequenza di mosse legali fino a una profondità di ricerca esatta.

Spiegazione

Perft attraversa l’albero delle mosse legali da una posizione e conta ogni sequenza che raggiunge una profondità esatta. Profondità uno significa contare le mosse legali disponibili ora. Profondità due include ogni risposta legale, e il modello prosegue allo stesso modo. Ogni sequenza viene contata separatamente anche quando due sequenze diverse raggiungono lo stesso stato della scacchiera. Il risultato è un numero riproducibile per quella posizione e profondità.

Il suo scopo principale è verificare il generatore di mosse di un programma. Se il totale differisce da un riferimento affidabile, qualche regola o aggiornamento della posizione è errato. Una forma chiamata divide riporta un subtotale separato per ogni mossa iniziale, aiutando lo sviluppatore a localizzare il ramo in cui comincia la discrepanza.

Perft è particolarmente efficace nell’individuare errori sottili riguardanti scacchi, en passant, cioè una cattura speciale di pedone, promozioni e , la speciale mossa congiunta di re e torre. Può inoltre rivelare che un programma ripristina in modo errato la parte al tratto, i diritti di arrocco o la casa bersaglio dell’en passant dopo avere annullato una mossa.

Perft non esegue alcuna valutazione della posizione, selezione della mossa migliore o potatura dei rami. Superare il test dimostra coerenza con conteggi verificati delle mosse legali, ma non dimostra che un giochi bene. Sebbene il nome derivi da performance test, il conteggio corretto è lo scopo centrale; la misurazione della velocità è un benchmark aggiuntivo che dipende dall’implementazione.

Confusioni comuni

Perft e forza di gioco

Perft convalida le regole e la generazione delle mosse. Non misura comprensione posizionale, qualità della valutazione o forza tattica.

Perft e hashing

Un’implementazione può usare l’ per riconoscere le posizioni, ma una chiave corretta non sostituisce il conteggio legale.

Visualizza termine

Fonti

  1. 1.Perft, Chess Programming Wiki

Termini correlati

© 2026 MindZug