Sekvenční šachový program

Cílem šachového programu je pro danou šachovou pozici najít nejlepší tah pro stranu, která je právě na tahu. Šachové programy, tak jako mnoho jiných algoritmů, procházejí stavový strom úlohy.

V tomto případě jsou uzly stavového stromu možné pozice pro provedení určité posloupnosti tahů (kořen stromu je pak výchozí pozice), větve stromu jsou tahy, kterými přecházím od jednoho uzlu (pozice) k druhému. Šachové programy používají k prohledání stavového stromu
kombinaci dvou základních algoritmů – minimaxu a alfabety.