Como é possível que a base de tabela de Lomonosov-final de 2012 ainda seja a base de tabela mais poderosa?


7

Devido à Wikipedia: Base de tabela de final de jogo, a base de tabela de final de jogo de Lomonosov ainda é a maior base de tabela (com um tamanho de 140 TB). Agora, essa base de tabela foi calculada no ano de 2012 com o Lomonosov 1 ( lista Top500 em novembro de 2012, classificação 26 ). O Lomonosov 1 tinha 78.660 núcleos com ~ 900 TFlop / s (pico: 1.700 TFlop / s). Quando olho para a lista Top500 mais recente (junho de 2016) , vejo que o Lomonosov 2 está classificado em 41 no mundo com ~ 2.100 TFlop / s (pico: ~ 2.900 TFlop / s), o super número 1 O computador possui 93.000 TFlop / s.

Então, eu me pergunto por que a base de mesa de Lomonosov após 4 anos ainda é a maior base de mesa. Não deveria ser fácil, com o crescente poder computacional, calcular uma base de 8 homens? Ou o passo das 7 às 8 é grande demais? Talvez o tamanho subisse exponencialmente para que os sistemas de armazenamento padrão simplesmente não pudessem lidar com isso?

Gostaria de receber todas as informações sobre este tema. Desde já, obrigado!


10
O passo de 7 a 8 é grande demais. De acordo com o artigo da Wikipedia, são necessários 7 GB para armazenar as mesas até 5 homens (no formato Nalimov), 1,2 TB para armazenar as mesas até 6 homens e 140 TB para armazenar as mesas até 7 homens. Portanto, o armazenamento de uma mesa de 8 pessoas exigirá mais de um petabyte de armazenamento.
dfan

3
@dfan Seus comentários devem ser uma resposta.
SmallChess

11
@ StudentT Eu não achei que fosse definitivo o suficiente.
Dfan

Eles poderiam fazer 7 homens com peões opostos nas mesmas configurações de arquivo contadas como "1" em vez de "2", ou algo assim. Isso teria apenas cerca de 3x o tamanho da corrente. Além disso, a memória (em todos os nós) é mais importante que a velocidade ("TFlops", não exatamente a melhor medida), eu acho.
Post-It-Note

11
de acordo com esta página , estima-se que o cálculo da TB de 8 homens exija 10PB de armazenamento e 50TB de RAM. Isso sem mencionar o tempo necessário - com esse volume de requisitos de armazenamento e acesso aleatório, é necessária muita tecnologia para gerenciar os tempos de acesso ao armazenamento.
MM

Respostas:


3

Atualmente, sou desenvolvedor de software para calcular bases de tabela de final de jogo. O verdadeiro gargalo com o cálculo de posições não é a memória em si, mas a memória de trabalho e os ciclos de computação necessários para calcular uma rede para um conjunto de posições em crescimento exponencial.

O número de posições cresce exponencialmente de acordo com o número de homens no quadro; isso significa que a memória de trabalho necessária (seja a RAM ou as leituras do disco rígido, que são menos caras e mais escaláveis, mas significativamente mais lentas) aumenta proporcionalmente ao local A^Nonde Aestá uma constante de escala (um pouco menor que 64) e Né o número de homens na lista. tablebase. O supercomputador Lomonosov usava 92 TiB de RAM , o que é suficiente para uma mesa de 7 pessoas; como dfan disse em seu comentário, o salto é grande demais.

Além disso, à medida que mais nós são adicionados à base de tabela, o número de cálculos aumenta mais rapidamente do que linearmente o número de nós. Por exemplo, acessar dados em uma Árvore de Pesquisa Binária (BST) é proporcional a ln(M)onde Mestá o número de nós na árvore; pois M = A^N, para acessar cada nó da árvore uma vez, A^N * ln(A^N)são necessárias operações. Existem várias etapas no algoritmo de avaliação retrógrada da tabela que são dimensionadas de maneira semelhante.

Em resumo, a memória aumenta exponencialmente e o número de operações aumenta mais rapidamente do que exponencialmente à medida que mais homens são adicionados. A computação não avançou até agora em (no momento da redação) 6 anos.


2

Não consigo comentar, pois não tenho "50 reputação", mas queria saber se é possível usar a base de tabelas 7 como parte da resposta para uma base de 8 tabelas. Eles fizeram isso pela mesa 7?

Ou seja, ao determinar a solução para 8 peças, pare se você tiver 7 peças e apenas consulte a base da mesa 7. É verdade que, mesmo com isso, seria enorme porque ainda haveria muitas combinações antes de chegar às 7 peças, mas menos do que seria se você quisesse descobrir isso sem fazer referência à base de mesa 7?

Se a solução usou um método de ir na outra direção, talvez não ajude?


2
A base da tabela armazena se uma posição é Vitória, Empate ou Perda; e também uma métrica (por exemplo, DTC - significando número de movimentos até que a posição se mova para outra categoria). Ele não armazena "uma solução", como você sugere, em vez disso, o mecanismo que usa a base de tabela examinará todos os movimentos possíveis em uma posição, classificará as métricas para cada posição resultante e selecionará um movimento com base na melhor métrica. Se a melhor jogada foi uma captura, o mecanismo procurará a base da nova posição para realizar sua próxima jogada.
MM
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.