Qual seria o Elo de um programa de computador que executa movimentos aleatórios?
Por uma questão de simplicidade, suponha que ele nunca peça um empate ou se demita e nunca aceite uma oferta de empate.
Qual seria o Elo de um programa de computador que executa movimentos aleatórios?
Por uma questão de simplicidade, suponha que ele nunca peça um empate ou se demita e nunca aceite uma oferta de empate.
Respostas:
Bem na parte inferior da Lista de classificação de xadrez por computador para o controle de tempo de 40/4 está o Brutus RND, um mecanismo que simplesmente seleciona movimentos legais aleatórios.
Tem uma classificação de 205 (a partir de 06/06/2018). Esta não é uma classificação da FIDE, é claro, mas está usando o sistema Elo.
Possui 0 vitórias, 242 derrotas e 64 empates. Os sorteios são devidos a programas defeituosos que acidentalmente causam empates por repetição ou ocasionalmente empate, embora geralmente tenham uma vantagem material substancial quando isso ocorre.
A FIDE tem um piso de classificação de 1000. A Brutus RND simplesmente não conseguiu estabelecer uma classificação tão alta e não teria classificação.
Se ignorarmos o piso de classificação da FIDE, é possível ter uma classificação negativa no sistema Elo.
Um ponto a ser mencionado é que o FIDE usa uma tabela para calcular alterações de classificação e se a diferença de classificação for maior que 735, nenhuma mudança ocorre quando o jogador mais forte vence. Isso significa que Brutus nunca poderia ter uma classificação de -5000 ou algo assim, porque precisaria perder pontos para jogadores espetacularmente incompetentes que não seriam capazes de entregar xeque-mate.
https://www.fide.com/component/handbook/?view=article&id=197
Ficamos adivinhando aqui. 1000 jogadores classificados como Elo seriam capazes de reduzir a classificação de Brutus para 265, mas como não existem jogadores com classificações piores, não podemos dizer exatamente quanto mais eles poderiam empurrar a classificação de Brutus para baixo, caso existissem.
Eu acho que jogadores com 500 Elo ou pior teriam problemas para oferecer mate de forma consistente, assim como os programas defeituosos. Os empates por repetição de 3 vezes ou a regra dos 50 movimentos não são automáticos sob as regras da FIDE e só ocorreriam se Brutus os reivindicasse. Mas um ser humano pode perder se ficar sem tempo, assim como desenhar com um impasse acidental.
Então, acho que em algum lugar na faixa de -200 a 200, se a FIDE permitiu classificações abaixo de 1000 e a Brutus competisse.
O problema do jogo aleatório é que, em uma posição média do xadrez, existem muitos movimentos (de 20 na abertura a facilmente 50 ou mais em jogos complicados), mas apenas alguns são aceitáveis. Movimentos aleatórios resultarão em total descoordenação desde o início do jogo. Além disso, capturar peças menos valiosas seria muito comum, principalmente no meio do jogo. Dito isto, mesmo contra uma oposição extremamente fraca, o computador irá, a longo prazo, errar: toneladas de material serão negociadas e possivelmente não muito boas para o computador, o computador será indubitavelmente subdesenvolvido, seu rei não estará seguro e possivelmente nem mesmo enrolado ...
Tantas coisas ruins se acumulam e extremamente rapidamente resultarão em uma derrota segura para a máquina. Seu Elo provavelmente será 0 FIDE.
Não sei como as classificações do Go se comparam ao xadrez, mas o jogo aleatório é de cerca de -3500 lá . Como o fator de ramificação do xadrez é menor, eu esperaria que o jogador aleatório elo fosse maior, talvez algo entre -2000 e -500.
Pior do que um iniciante absoluto que mal conhece as regras do jogo, porque pelo menos o iniciante pensa um pouco na escolha de uma jogada. Seus movimentos ainda podem ser na maioria aleatórios, mas pelo menos há alguma avaliação de posições em andamento.
Portanto, a classificação deste mecanismo estaria no piso mais baixo possível de qualquer sistema de classificação que você escolher. Eventualmente, pode ganhar ou empatar um jogo contra um oponente igualmente ruim e aumentar em alguns pontos. No entanto, você pode esperar que a classificação do motor volte rapidamente ao piso mínimo posteriormente.
Em "Programar um computador para jogar xadrez", de Shannon, ele observa que a probabilidade de jogo aleatório derrotar Botvinnik é da ordem de 10 ^ -75. Portanto, se esse computador aleatório jogar Botvinnik (ou mesmo um mestre comum) sem parar por toda a vida humana, podemos razoavelmente esperar que nunca vença.
No entanto, Shannon continua dizendo que o jogo aleatório não é a pior estratégia; a pior estratégia é deliberadamente jogar movimentos que ajudam o oponente. Embora seja possível que um iniciante completo possa fazer isso, é provável que eles tentem executar movimentos que melhorem sua própria posição.
Uma resposta muito boa seria fazer isso:
Use numpy, um mecanismo de jogo muito fraco, 1500 ELO, aproximadamente, e anexe um script python a ele. Existem muitas bibliotecas que fornecem os movimentos possíveis em uma posição, para que possamos escolher uma aleatoriamente. Vou postar os resultados mais tarde.
http://creative-co.de/random_chess/
Você também deve verificar isso.