uma engine de xadrez em c++
capizero é uma engine de xadrez que estou desenvolvendo para aprender sobre xadrez computacional.
no momento ela se encontra incompleta pois existem diversos recursos a serem implementados a fim de melhorar sua performance, velocidade e entendimento das posições, porém, já é possível jogar contra ela através do terminal de comandos, basta você baixar e compilar o código fonte, ou baixar uma das builds disponíveis nos releases.
caso queira contribuir com o projeto, fique a vontade, toda ajuda é bem vinda!
1.2 Geração de lances
2.1 Poda de lances
2.2 Extensões de pesquisa
2.3 Reduções de pesquisa
-
Estrutura de peões
-
Posicionamento das peças
-
Torres na coluna aberta ou semi aberta
-
Segurança da ala no qual o rei está rocado
- Modo interativo via terminal (comandos em português)
- Compatibilidade com Xboard
- Compatibilidade com UCI — permite usar cutechess-cli, Fastchess, Arena, etc.
use o g++ para compilar
a versão do c++ é a 11
no terminal, digite:
make build
depois de compilar o binário capizero_<versao> fica na raiz do repositório. modos disponíveis:
./capizero_<versao> # modo interativo (português)
./capizero_<versao> uci # protocolo UCI
./capizero_<versao> xboard # protocolo XBoard
./capizero_<versao> bench [prof] # executa o bench padrão (default prof=13)
# imprime Nodes: N / NPS: M no final
duas ferramentas estão disponíveis em tests/ para medir a força da engine:
-
SPRT (teste relativo patch-vs-baseline) — veja tests/sprt/README.md. útil para validar se uma mudança ganhou ou perdeu Elo.
-
Gauntlet (teste absoluto vs. Stockfish com força reduzida) — veja tests/gauntlet/README.md. útil para estimar o rating absoluto da engine.
ambas as ferramentas usam o Fastchess como driver.
leia o nosso Guia de contribuição