Por que a avaliação manuscrita NN + MCTS & AB + domina o xadrez do motor?


14

Pelo que entendi, os mecanismos podem ser divididos em quatro grupos agora: aqueles que usam Alpha-beta (AB) + aqueles que usam o Monte Carlo Tree Search (MCTS) para pesquisa e aqueles que usam funções manuscritas + aqueles que usam redes neurais para avaliação. Os dois motores mais fortes são Leela e Stockfish. Leela usa MCTS + NN, enquanto Stockfish usa AB + escrito à mão.

Por que essas duas combinações? Por que não NN + AB ou MCTS + manuscritos? Se o MCTS é melhor que o AB, por que o Komodo MCTS não é mais forte que o Komodo AB? Se AB é melhor que MCTS, por que Leela não está usando AB?


Apenas especulando: NN são reconhecedores de padrões. Como o MCTS lança uma rede mais ampla, é mais provável que encontre padrões que a NN tenha sido treinada para reconhecer como boa ou ruim.
John Coleman

Respostas:


12

Rapidez

As redes neurais operam muito mais lentamente do que as funções de avaliação artesanais. No TCEC Superfinal , Leela Chess Zero, rodando em duas GPUs cada uma com núcleos tensores dedicados, é capaz de pesquisar cerca de 60 mil posições por segundo. Por outro lado, o Stockfish, em um único núcleo no meu PC, pesquisa mais de 2 milhões de posições por segundo.

Embora os motores modernos tenham uma grande variedade de técnicas para cortar galhos desnecessários , a pesquisa de árvores alfa-beta ainda é muito uma técnica de força bruta, exigindo um grande número de posições a serem pesquisadas para determinar bons movimentos.

O MCTS, por outro lado, é muito mais seletivo, e apenas expande sua árvore de pesquisa em direção aos movimentos mais promissores, o que permite aproveitar ao máximo o número mais limitado de nós que podem ser pesquisados.

Comportamento de pior caso

Um dos principais requisitos da função de avaliação para um mecanismo baseado na pesquisa alfa-beta é que ele deve ter um bom comportamento de pior caso . Isso ocorre porque qualquer erro grande na avaliação, por mais raro que seja, pode ser facilmente propagado para a raiz e levar a uma jogada horrendamente incorreta.

Por natureza de sua complexidade, as redes neurais são propensas a super adaptação e podem ser tão boas quanto os dados usados ​​para treiná-las. Por exemplo, no jogo 80 da TCEC Temporada 14 Superfinal , o movimento 47 Lc0 aparentemente não foi afetado pela rainha extra de Stockfish, avaliando a posição como legal +0,77, enquanto Stockfish (e a maioria dos outros motores) ostentou uma avaliação de +8,31. Uma explicação popular para isso é que Lc0 pode não ter tido um número significativo de jogos com várias rainhas no tabuleiro em seu conjunto de treinamento.

As redes neurais, portanto, têm um comportamento ruim no pior dos casos e, portanto, provavelmente apresentam um desempenho ruim com a pesquisa alfa beta. O MCTS, por outro lado, permite que uma pontuação incorreta atribuída a uma posição seja compensada pela média com pontuações razoáveis ​​atribuídas às posições próximas na pesquisa.

Quiescência

Todos os mecanismos alfa-beta fortes usam uma técnica chamada pesquisa por quiescência , uma forma restrita de pesquisa alfa-beta aplicada nos nós foliares, reconhecendo que suas funções de avaliação artesanais funcionam apenas bem em posições "silenciosas", onde não há capturas ou verificações pendentes .

Por exemplo, imediatamente após a primeira metade de uma troca de rainhas, uma função de avaliação artesanal pode dizer que o lado que acabou de tirar a rainha está completamente perdido, enquanto uma rede neural pode entender que a rainha será recapturada em breve.

Isso torna as funções de avaliação artesanais igualmente inadequadas para o MCTS devido à ausência de pesquisa por quiescência, resultando em que as funções artesanais executam mal a maior parte do tempo (embora o Komodo 12 MCTS contorne essa restrição usando pesquisas breves de alfa-beta de qualquer maneira , para obter posições inativas e portanto, permita que sua avaliação artesanal retorne uma pontuação razoável)


2

AB e MCTS não são necessariamente melhores que os outros por seus próprios méritos. Só que eles são algoritmos de pesquisa diferentes que funcionam melhor com fundações diferentes. Para o NN, o MCTS funciona bem, pois permite que o mecanismo explore ramos que estão se saindo melhor. Isso dá ao mecanismo mais liberdade para ver o que "deseja".

Enquanto isso, com a AB, todos os ramos, em princípio, precisam ser examinados. Isso ocorre porque, mesmo com o aprofundamento iterativo, o mecanismo apenas parece tão distante em cada ramificação em cada iteração. Portanto, ele não sabe se um ramo está realmente ganhando para um lado, mesmo que pareça perder a uma profundidade limitada.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.