A probabilidade de 2 mineiros terem o mesmo mundo

Olá pessoal! Recentemente, eu estava interessado na pergunta: "será que 2 jogadores no Minecraft têm o mesmo mundo único?"

O fato é que o mundo Minecraft é gerado aleatoriamente a partir de uma determinada semente. Pode ser definido manualmente ou recebido pelo governo pseudo-aleatório. Vale a pena notar que a mesma semente gera o mesmo mundo.

Este jogo é muito popular, portanto, não é possível entrevistar diretamente todos os jogadores e comparar seus mundos individuais. No entanto, sempre podemos calcular a probabilidade desse evento. Parece: tudo o que precisamos é calcular o número de resultados elementares que satisfazem esse evento e dividi-lo no conjunto de todos os resultados elementares. Infelizmente, essa é uma tarefa não trivial, então lembrei do "Paradoxo do aniversário".

O paradoxo em si é que, em um grupo de 23 pessoas, com uma probabilidade de 50%, duas pessoas têm um aniversário coincidente. Obviamente, a tarefa é semelhante à nossa. Como foi resolvido? Muito simples: o cálculo da probabilidade de cada pessoa de um grupo ter um aniversário único é muito mais fácil. Para fazer isso, pegue uma pessoa e lembre-se de seu aniversário, depois pegue a segunda, e a probabilidade de que seu dia não coincida com o primeiro será igual

$$ display $$ p_2 = 1- \ frac {1} {365} $$ display $$

I.e. 100% menos a probabilidade de o aniversário deles ser o mesmo. Pegamos o terceiro e consideramos a probabilidade de seu aniversário não coincidir com os dois anteriores

$$ display $$ p_3 = 1- \ frac {2} {365} $$ display $$

E assim por diante até a enésima pessoa

$$ display $$ p_n = \ frac {n-1} {365} $$ display $$

Então a probabilidade de ninguém no grupo corresponder

$$ display $$ p = 1 * (1- \ frac {1} {365}) * (1- \ frac {2} {365}) * ... * (1- \ frac {n-1} { 365}) $$ display $$

E a probabilidade de que pelo menos 2 correspondam

$$ display $$ p_ {search} = 1-p $$ display $$



Resta apenas aplicar esta solução ao nosso caso. Existem apenas 2 ^ 64 sementes possíveis no Minecraft e existem cerca de duzentos milhões de jogadores. Então nossa fórmula ficará

$$ display $$ p = 1 * (1- \ frac {1} {2 ^ {64}}) * (1- \ frac {2} {2 ^ {64}}) * ... * (1- \ frac {2 * 10 ^ 8} {2 ^ {64}}) $$ display $$

Contar manualmente isso consome muito tempo, então escrevi um pequeno programa Python 3 que fez isso em vez de mim.

imagem

Se alguém estiver interessado, aqui está o código do programa, mas é muito simples.

a = 2**64 n = 200000000 p = 1 for i in range(n): p *= (1 - i/a) print('Chance that 2 players of minecraft have the same seed: ' + str((1-p)*100) + '%') 


O resultado foi 0,1%, o que, a propósito, é bastante, dado o número de sementes possíveis.

Obrigado pela atenção!

Referências:

Paradoxo do aniversário
Quantas pessoas jogam Minecraft
Quantas sementes existem no Minecraft

Source: https://habr.com/ru/post/pt460629/


All Articles