Šachový engine je v počítačovém šachu počítačový program, který analyzuje pozice šachů a generuje tah nebo seznam tahů, které považuje za nejsilnější.
Šachový engine je obvykle back-end s rozhraním příkazového řádku bez grafiky nebo oken. Enginy se často používají s frontendem, grafickým uživatelským rozhraním v okně, jako je ChessBase nebo WinBoard, se kterým může uživatel komunikovat prostřednictvím klávesnice, myši nebo dotykové obrazovky. To uživateli umožňuje hrát proti více enginům, aniž by se pro každý z nich učil nové uživatelské rozhraní, a umožňuje různým enginům hrát proti sobě.
Koncem 90. let 20. století se nejlepší programy staly tak silnými, že málo hráčů mělo šanci proti nim hru vyhrát. Aby hráčům dali více šancí, začali programátoři zahrnovat možnosti úpravy nebo omezení hrací síly. V roce 2000 Stefan Meyer-Kahlen a Franz Huber vydali protokol Universal Chess Interface (UCI), do kterého zahrnuli parametry uci_limitstrength a uci_elo, což umožňuje autorům programů nabídnout různé úrovně hodnocené podle Elo ratingu, kalibrovaných podle jednoho z rating listů. Většina rozhraní pro programy UCI umožňuje uživatelům nastavit tento Elo rating v nabídkách. Dokonce i programy, které tento parametr nepoužívají, mají často nastavitelný parametr síly (např. Stockfish 11). Mezi programy, které obsahují parametr uci_elo patří Houdini, Fritz 15-16, Rybka, Shredder, HIARCS, Junior, Zappa a Sjeng. Rozhraní, jako jsou Shredder, Chess Assistant, Convekta Aquarium, HIARCS Chess Explorer nebo Martin Blume's Arena, mají rozbalovací nabídky pro nastavení parametru uci_elo. Rozhraní rodiny Fritz, Chess Assistant a Aquarium mají také samostatné způsoby omezení síly programu, zjevně[ujasnit] na základě jeho schopnosti generovat seřazené seznamy tahů (nazývané multipv pro „hlavní variantu“).
Výsledky počítačových turnajů demonstrují relativní sílu šachových počítačů. Na turnajích se však nehraje statisticky významný počet her pro určení síly. Ve skutečnosti počet her, které je třeba odehrát mezi poměrně vyrovnanými počítači, aby byly statisticky významné, je řádově v tisících, a proto je rámec turnaje nepraktický. Většina turnajů také umožňuje používat jakýkoli typ hardwaru, takže se porovnávají pouze kombinace engine/hardware.
Historicky nejsilnějšími byly komerční počítače. Pokud amatérský počítač vyhraje turnaj nebo jinak uspěje (například Zappa v roce 2005), pak je rychle komercializován. Tituly získané z těchto turnajů mají pro vítězné počítače velkou prestiž a jsou využívány pro marketingové účely. Po vzestupu dobrovolně distribuovaných počítačových projektů (Leela Chess Zero a Stockfish) a testovacích frameworků (FishTest a OpenBench) na konci roku 2010 vytlačily volné a open source programy z velké části komerční programy coby nejsilnější účastníci v turnajích.
Seznamy hodnocení šachových programů se snaží poskytnout co nejlepší měřítka jejich hrací síly. Některé seznamy hodnocení berou v potaz i typy zahájení partie, čas a hardware počítače s cílem srovnat rozdíly pouze těchto programů. Kromě pořadí tyto seznamy zobrazují i počet chyb v daném hodnocení.
Hodnocení v seznamech, i přesto, že jsou vypočítány systémem Elo, nemají spojení s Elo hodnocením od FIDE ani jinými druhy hodnocení šachových hráčů. Výjimkami byly některé partie člověka proti takovému programu, které byly organizované v době, kdy počítače nebyly tak výkonné.
V tomto článku byl použit překlad textu z článku Chess engine na anglické Wikipedii.