Perft

Cunoscut și ca: Test de performanță

Test care numără fiecare secvență de mutări legale până la o adâncime exactă a căutării.

Explicație

Perft parcurge arborele mutărilor legale dintr-o poziție și numără fiecare secvență care ajunge la o adâncime exactă. Adâncimea unu înseamnă numărarea mutărilor legale disponibile acum. Adâncimea doi include fiecare răspuns legal, iar tiparul continuă în același mod. Fiecare secvență este numărată separat, chiar dacă două secvențe diferite ajung la aceeași stare a tablei. Rezultatul este un număr reproductibil pentru poziția și adâncimea respectivă.

Scopul său principal este verificarea generatorului de mutări al unui program. Dacă totalul diferă de o referință de încredere, o regulă sau o actualizare a poziției este greșită. O formă numită divide raportează câte un subtotal pentru fiecare mutare inițială, ajutând dezvoltatorul să localizeze ramura în care începe discrepanța.

Perft este deosebit de eficient în descoperirea erorilor subtile legate de șahuri, en passant, adică o captură specială de pion, promovări și , mutarea specială comună a regelui și turnului. Poate dezvălui și faptul că un program restaurează incorect partea aflată la mutare, drepturile de rocadă sau câmpul-țintă en passant după anularea unei mutări.

Perft nu efectuează evaluarea poziției, selecția celei mai bune mutări sau tăierea ramurilor. Trecerea testului arată concordanța cu numărătorile verificate ale mutărilor legale, dar nu arată că un joacă șah puternic. Deși denumirea provine din performance test, numărarea corectă este scopul central, iar măsurarea timpului este un reper suplimentar care depinde de implementare.

Confuzii frecvente

Perft și forța de joc

Perft validează regulile și generarea mutărilor. Nu măsoară înțelegerea pozițională, calitatea evaluării sau forța tactică.

Perft și hashing

O implementare poate folosi pentru a recunoaște pozițiile, dar o cheie corectă nu înlocuiește numărarea mutărilor legale.

Vezi termenul

Surse

  1. 1.Perft, Chess Programming Wiki

Termeni înrudiți

© 2026 MindZug