Exploração e transformação, ordenando sequências pseudo-aleatórias

Investigação e conversão, classificando seqüências pseudoaleatórias

Algoritmos em C # e qbasic e uma tabela compatível com Excel foram criados, provando a capacidade de examinar seqüências pseudoaleatórias quanto à aleatoriedade e capaz de determinar sequências não aleatórias ou de baixa potência.

Shell gráfico: tabela Excel compatível para pesquisas acima de 50 mil. elementos de 2 tipos:
1. Estudo de uma sequência de números;
2. O estudo da sequência dos dígitos 0 e 1.




Pesquisa de sequência numérica: a tabela define recursos binários, por exemplo, menos / mais e par / ímpar.
O shell gráfico de uma tabela compatível com Excel usa as fórmulas: O


número de correspondências em uma linha é calculado pela fórmula N = log (1-C) / log (1-P), em
que N é a etapa, P é a probabilidade, C é a confiabilidade da probabilidade.

Número da etapa de distribuição:
em C = P = 0,5; N = 1 = log0,5 / log0,5 = log (1-1 / 2) / log (1-1 / 2) = 1
em C = 0,25; P = 0,5; N = 2 = log0,75 / log0,5 = log (1-1 / 4) / log (1-1 / 2) = 2, etc.

Coluna A é o nome da sequência;
Coluna B - sequência;
Coluna D - 1ª distribuição: menos / mais;
Colunas E, F - definição de idênticas em uma linha;
Colunas G, H - contando o número de sinais idênticos em uma linha;
Coluna J - 2ª distribuição: par / ímpar;
Colunas K, L - definição de sinais idênticos em uma linha;
Colunas M, N - contando o número de sinais idênticos em uma linha.

Fórmulas usadas na tabela:

Célula


Fórmula


Explicação


C1


= MÉDIA (D1: D55000)


O valor médio dos números de sequência


C2


= MÉDIA (B1: B55000)


Média de distribuição 1


D1


= SE (B1 <C $ 2; 0; 1)


Se o número for menor que a média, então 0, caso contrário 1


D2


= SE (B2 <C $ 2; 0; 1)


Se o número for menor que média, então 0, caso contrário 1, etc.


E2


= SE (D2 = D1; E1 + 1; 0)


Se os sinais de distribuição forem os mesmos, o contador da mesma linha será +1, caso contrário, o contador será redefinido para zero.


F2


= SE (E3 = 0; E2; "")


Se o contador for zerado, o contador mais alto será gravado.


G2-g19


0 ... 7


Números para comparar


H1


= SUM (H2: H10)


Soma das comparações


H2


=(F$1:F$55000;G2)


1


H3


=(F$1:F$55000;G3)


  2 ..


H12


=H2/H3



I12


=(H12:H19)



I13


=(N12:N19)


..


I1


=(J1:J55000)


2


J1


=(B1/2=(B1/2);0;1)


, 0, 1


J2


=(B2/2=(B2/2);0;1)


, 0, 1 ..


K2


=(J2=J1;K1+1;0)


,   +1,


L2


=(K3=0;K2;" ")


,


M2-M19


0…7



N1


=(N2:N10)



N2


=(L$1:L$55000;M2)


1


N3


=(L$1:L$55000;M3)


2 ..


N12


=H2/H3




Outras funções de monitoramento podem ser programadas na tabela.
Na tabela é possível criar gráficos dos valores de qualquer célula.

A continuação da tabela explora permutações aleatórias da sequência

Coluna Q - aleatória para permutações: números inteiros até 10 ^ 6,
para minimizar a repetição de aleatórias;
Coluna R - inicialmente uma cópia da coluna B e depois modificada;
As colunas T ... AE são iguais às colunas C ... N.

Célula


Fórmula


Explicação


Q1


= CASO ENTRE (0; 1.000.000)


Aleatório para reorganizar


Q2


= CASO ENTRE (0; 1.000.000)


Aleatório para permutação, etc.



A permutação é feita classificando 2 colunas Q e R: a
coluna Q está à frente e a coluna R é escrava.

Resultado: permutação da coluna R e uma nova sequência.

Os estudos PRNG baseados no PRNG integrado mostram a normalidade do algoritmo.
Antes da permutação de 500 células:

Após a permutação de 500 células: A

verificação mostra uma boa distribuição, comparando os sinais: pequeno / grande e par / ímpar.

A tabela examina o PRNG trigonométrico, usando os dígitos decimais das funções trigonométricas, sem usar o PRNG padrão.
'rndsin.bas
OPEN "rndsin.txt" FOR OUTPUT AS #1
c = 0: a = SIN(TIMER) * 100 + 200
PRINT #1, "a= ", a

FOR k = 1 TO 10 ^ 3 + a * 10 ^ 3: NEXT

FOR i = 1 TO 100
    FOR j = 1 TO a
        x = SIN(TIMER) * 1000 + 2000
        b = COS(x): c = c + b
        LOCATE 1, 1: PRINT j
    NEXT

    d = (ABS(c)) - INT(ABS(c))
    PRINT #1, d
    FOR k = 1 TO 10000 + a * b * c * 10 ^ 2: NEXT
NEXT

Antes da permutação de 500 células: insatisfatória

Obviamente, a distribuição é ruim, revelando a frequência e a dispersão dos valores, comparando os sinais: pequeno / grande e par / ímpar.

Após o rearranjo de 500 células: normal


Objetivo: excluir o PRNG embutido.

Método de rearranjo: a sequência original é classificada, a mesma sequência que é invertida ou invertida de qualquer forma é aceita como aleatória para o rearranjo.

Por exemplo, no Excel, 2 cópias das colunas de uma sequência foram criadas à distância, e uma linha inicial de 1 ... 55000 em uma linha é construída em uma coluna à esquerda e 2 colunas são classificadas do máximo para o mínimo, invertendo os dados originais.

Em seguida, duas colunas da sequência são mapeadas lado a lado e classificadas, onde a coluna principal é a coluna reversa e a coluna escrava é a coluna inicial.

Antes da permutação de 500 células: insatisfatório

Após a permutação de 500 células: normal


Resultado: a sequência tornou-se normal sem o PRNG embutido.

Conclusões: a aleatoriedade verdadeira não é natural para as pessoas e é possível sintetizar sequências de baixa potência ou falsas que são aceitas por pessoas e computadores como sequências aleatórias.

Qualquer sequência pode realmente ser sintetizada em linguagens de programação e em tabelas compatíveis com Excel.

O problema de superar a aleatoriedade é resolvido reconhecendo a aleatoriedade como normal ou falsa em uma planilha do Excel com gráficos.

Q.E.D.


Continuação da aprovação:

programas de permutação nos idiomas C # e qbasic
Dígitos de pesquisa de pi
Possibilidade de falsificação
Desenvolvimentos 2020 Mente estrangeira

All Articles