What is the optimal algorithm for the game 2048?
Eu tropecei recentemente no jogo2048. Você mescla blocos semelhantes movendo-os em qualquer uma das quatro direções para criar blocos "maiores". Após cada movimento, um novo bloco aparece na posição vazia aleatória com um valor de2
ou4
. O jogo termina quando todas as caixas estão preenchidas e não há movimentos que possam mesclar peças ou você cria uma peça com o valor de2048
.
Primeiro, preciso seguir uma estratégia bem definida para alcançar a meta. Então, pensei em escrever um programa para ele.
Meu algoritmo atual:
while (!game_over) {
for each possible move:
count_no_of_merges_for_2-tiles and 4-tiles
choose the move with a large number of merges
}
O que estou fazendo é que, a qualquer momento, tentarei mesclar os blocos com valores2
e4
ou seja, eu tento ter2
e4
telhas, o mínimo possível. Se eu tentar dessa maneira, todos os outros blocos serão mesclados automaticamente e a estratégia parecerá boa.
Mas, quando eu realmente uso esse algoritmo, recebo apenas 4000 pontos antes do jogo terminar. Máximo de pontos O AFAIK é um pouco mais de 20.000 pontos, muito maior do que a minha pontuação atual. Existe um algoritmo melhor que o acima?