português brasileiro

Portal do Binho

Campeonato Super Blitz

Desde fevereiro de 2015, estou promovendo um grande campeonato entre engines. O objetivo é estabelecer um bom padrão de comparação através de um número expressivo de jogos, por isso os jogos são de curta duração ("blitz"); afinal, um programa de computador deve ser capaz de jogar rápido. Além disso, eu não dispunha de um recurso de hardware que pudesse ficar muito tempo dedicado exclusivamente: para os jogos, pude contar apenas com um PC comum e um notebook, descritos mais adiante. A seguir, informações gerais, classificação e links para baixar os PGNs com os jogos.

Informações gerais

Recursos

Organização

Não foi estabelecida uma organização previamente, eu simplesmente iniciei o campeonato; depois, fui organizando em fases (descrição detalhada em cada uma delas), etapas e turnos, que podem ser "gauntlets" (uma engine joga contra todas as outras) ou "round robin" (todos jogam contra todos). Em geral, a numeração do jogo (tag "round") segue este formato: F.E.TT.JJJ, onde F é a fase (um algarismo), E é a etapa (um algarismo), T é o turno (dois algarismos) e J o número do jogo dentro do turno (três ou quatro algarismos)

Engines participantes

Praticamente todas as engines que eu tinha instalado. Para as engines com várias versões: algumas delas entraram no campeonato com mais de uma versão para ter uma comparação de sua evolução; outras, procurei colocar somente as versões mais modernas, para limitar o número de participantes e de jogos. No caso de engines com versões para várias plataformas, dei preferência a nativas Linux e 64bits; algumas entraram com mais de uma versão porque as mais novas eram Windows ou 32bits. Mais detalhes na primeira fase, que tem informações da atuação delas.

Observações importantes sobre o Komodo, versões 8 e 9

Esclarecimentos sobre vários Stockfish

Por ser de longe a engine open source mais forte, é comum existirem várias engines baseadas no Stockfish. Entre elas, se destaca o projeto SugaR. Costumo apelidar essas engines de "Stock likes". Mas também existem as variações com o nome Stockfish mesmo, como o MZ e o Marco. E, além disso tudo, os "clones", que não são projetos levados a sério, com o propósito de obterem melhores resultados através de alterações no código fonte, mas experiências muitas vezes sem o menor conhecimento técnico através de alterações aleatórias. Os clones nem se identificam com nomes exclusivos, exibem os nome das engines em que são baseadas. E, claro, não se espera melhores resultados, mas às vezes é o que se obtém com elas. A seguir, um breve histórico, para melhor entendimenbto, e um resumo dos vários sabores Stockfish:

Assim sendo, temos:

Os clones são:

Lembrando que os clones sempre se identificam como as engines de que são cópias. Exemplo: o Shark vai exibir "Stockfish" e o Pepper, "Stockfish MZ". E, fora o SugaR, seja qual for a versão, haverá créditos para Tord Romstad, Marco Costalba e Joona Kiiski. As versões MZ costumam ter a informação de que é uma compilação especial "by MZ" e as SugaR, o nome de Marco Zerbinati.

Classificação

O formato das estatísticas é este: Engine +V [ ... ... ] =E [ ... ... ] -D [ ... ... ] => P/T (A%), onde:

Entre colchetes, os números seguidos de letras indicam o tipo de vitória, empate ou derrota, sendo:

Fase 1

A primeira fase simplesmente começou. Assim mesmo, sem muito planejamento ou regras definidas. Eu ainda pretendia instalar mais engines e testá-las melhor, mas já estava demorando demais e resolvi começar. Algumas versões foram instaladas no decorrer do andamento e precisei rodar alguns jogos retroativamente. Outras, que se comportaram mal, foram desclassificadas. Uma engine esperada era a versão 9 do Komodo, que só foi lançada quando a primeira fase estava prestes a terminar; e, ainda por cima, seus resultados não foram tão bons quanto se esperava.

Objetivos

  1. Iniciar o campeonato
  2. Estabelecer uma base de comparação
  3. Verificar o quanto as melhores engines podem tropeçar nas piores
  4. Levantar estatísticas com um número expressivo de jogos
  5. Possivelmente descobrir outras boas engines, além das já conhecidas

Recurso usado

Como a ideia era fazer um número muito grande de jogos, somente o primeiro, o PC da HP, para não comprometer muito o notebook, principalmente em um período de muito calor.

Organização

Turnos "gauntlets" comandados por engines 64bits, jogos com 50 movimentos por minuto (-tc 1 -mps 50), em três etapas:

  1. O início, ainda sem ter todas as regras planejadas: 15 turnos, engines "repo" - com base na classificação dessa etapa, escolhidos gauntlets da etapa seguinte
  2. Planejei e executei 15 turnos, engines escolhidas com base na classificação da etapa anterior (foram 13 top e sub-top, 1 compilada e uma repo)
  3. A ideia era fazer de 15 a 20 turnos voltados para "Stock likes" e novidades Komodo (conforme andamento, escolha dos gauntlets e desclassificações)

Participantes

Como usei um hardware sem suporte AVX, algumas versões de SugaR e Stockfish não participaram.

Participações em geral

Engines problemáticas, mas Ñ desclassificadas

Engines desclassificadas (além de muito problemáticas, com aproveitamento muito baixo)

Turnos

Classificação final

O que se vê aqui é um clone do Stockfish vencendo a primeira fase e o desempenho do tão esperado Komodo 9 abaixo do desejado.

Classificação final com as estatísticas dos gauntlets separadas

A separação das estatísticas das engines atuando como gauntlets é importante, pois, nessa situação, a engine joga contra mais engines fracas do que fortes. Por isso os primeiros lugares estão ocupados pelas engines mais fortes, em seus turnos gauntlets. Descartando-se essas estatísticas, pode-se fazer uma comparação melhor entre as engines e, nesse caso, o vencedor seria o Stockfish MZ PrO, uma compilação séria do Stockfish, mas o tão esperado Komodo 9 continuou aquém do desejado.

Estatísticas dos jogos com DESCLASSIFICADOS (engines problemáticas)

As estatísticas a seguir mostram que as engines desclassificadas mereceram sair do campeonato. Algumas conseguiram alguns pontos, mas contra os gauntlets mais fracos, Dreamer e Fairy Max, e ficaram abaixo delas.

Links

Fase 2

As 61 melhores engines foram classificadas para a segunda fase. Um número grande, pois um dos objetivos é comparar as engines com quantidade igual de jogos. No geral, versões Komodo e Stockfish. Além delas, Critter, Equinox (que foi uma revelação) e o Houdini 3. Entre as que ficaram para trás, destacam-se as versões do Houdini 4, que apresentaram problemas de lentidão. Ainda está em andamento.

Objetivos

  1. Classificar as melhores com igualdade de jogos
  2. Estabelecer um padrão de comparação de recursos
  3. Incluir engines que precisam de suporte a AVX

Recursos usados

Ambos, pois um dos objetivos desta fase é comparar o desempenho das engines em arquiteturas diferentes (Intel e AMD). Essa comparação não foi feita na primeira fase porque um dos recursos é um notebook e não seria uma boa ideia submetê-lo ao esforço no período de calor.

Organização

Duas etapas, cada uma correspondendo a um grande turno round robin envolvendo todas as engines, sendo um em cada recurso. O primeiro, no PC com processador AMD, somente com as 61 engines classificadas na 1ª fase; e o segundo, no notebook com processador Intel, envolvendo também as AVX. Todos os jogos terão o mesmo controle de tempo usado na fase 1, 50 movimentos por minuto (-tc 1 -mps 50). Como os turnos são grandes, foram divididos em pequenos turnos que serão unidos aos poucos.

Participantes

Turnos

Classificação final do 1º turno

Aqui já se vê um cenário mais próximo do esperado. Eu esperava mais do Komodo, mas só conseguiu o 22º lugar. Pelo menos suas versões estão quase na ordem esperada, com o 9 Modern na melhor posição. Em compensação, o 9 Generic ficou abaixo de todas as versões do 8. E o 6, acima do TCEC, que é quase a versão 7. O Stockfish "release" oficial também só conseguiu um 15º lugar. Quem ficou bem foi a versão de desenvolvimento de 12/4 (o que faz sentido) e o MZ PrO (também faz sentido). A surpresa mesmo ficou com o Pepper mais uma vez se colocando entre os cinco primeiros, confirmando o quanto um projeto que não é levado a sério pode obter bons resultados.

Classificação final do 2º turno sem os AVX

Para uma comparação direta com o 1º turno (mesmos jogos) e ver a diferença entre um Intel e um AMD. no final, o clone Pepper se firmou no 1º lugar e os Stockfish chegaram junto dos Komodo.

Classificação final do 2º turno, jogos AVX

Demais jogos do turno, envolvendo as engines AVX, que não rodam no AMD. Não ficou bem como eu esperava. Mas, como as engines não AVX têm menos jogos, melhor olhar a classificação geral.

Classificação final do 2º turno, todos os jogos

Ainda assim o clone Pepper confirmou o 1º lugar. Dentre as AVX, somente o Sugar mostrou serviço. E os Komodo não ficaram tão bem.

Links

Link de jogos extras (todas as fases)

Jogos realizados, mas que não computaram para a classificação por diversos motivos. Em cada jogo, um comentário com um resumo.

Copyright © Binho RbSoft, 2014 - 2018