Discussão do artigo "Importância da qualidade do gerador de números aleatórios no desempenho dos algoritmos de otimização"

 

Novo artigo Importância da qualidade do gerador de números aleatórios no desempenho dos algoritmos de otimização foi publicado:

Neste artigo, analisaremos o gerador de números aleatórios Mersenne Twister e o compararemos com o gerador padrão do MQL5. Veremos como a qualidade dos geradores de números aleatórios influencia os resultados dos algoritmos de otimização.

Quando se trata de aplicar algoritmos de otimização, muitos leitores de artigos se interessam em saber qual é a importância de usar um gerador de números aleatórios de alta qualidade. A resposta a essa pergunta não é tão simples quanto pode parecer à primeira vista. Porém, é intuitivamente óbvio que a qualidade dos números aleatórios se reflete de forma significativa na capacidade de busca dos algoritmos, já que os algoritmos populacionais se baseiam principalmente na busca estocástica.

Tentemos responder a essa pergunta juntos, mas, antes de começarmos, vamos aprender sobre os diferentes tipos de geradores de números aleatórios, como afetam os resultados e onde encontrar versões confiáveis.

Os geradores de números aleatórios (GNA) são algoritmos ou dispositivos que criam uma sequência de números ou valores que aparentam ser aleatórios. É importante destacar que, nas ciências da computação e na matemática, essas sequências são geralmente chamadas de 'pseudoaleatórias', pois são geradas por algoritmos determinísticos, e não por processos verdadeiramente aleatórios.

Autor: Andrey Dik

 
Obrigado. Eu estava esperando mais impacto. Talvez haja algumas situações especiais em que a qualidade do HHR seja revelada com mais força
 
Rorschach #:
Obrigado. Eu estava esperando mais impacto. Talvez haja algumas situações especiais em que a qualidade do HHR seja mais revelada.

Sim, eu também esperava muito mais influência. Mas, como se viu, a qualidade da otimização é muito mais influenciada pela estratégia do próprio algoritmo do que pela qualidade do DST, e essa é uma informação valiosa por si só.

Bem, é claro, se não levarmos em conta os DSTs francamente tortos com enormes distorções de dezenas de por cento, mas não faz sentido usá-los de qualquer forma.

 

Tópico divertido. Na minha opinião, ou os números são aleatórios ou de qualidade!

Se você encontrar 100 libras, a aleatoriedade é qualitativa, mas ser atropelado por um carro não é qualitativo?

É por isso que não há influência, porque não deveria haver. E se o SGD apresentar alguns desvios ruins, então ele não é um SGD, mas um gerador de uma tarefa errônea para gerar esses mesmos desvios (ou seja, alguma função). Há requisitos para o DGS. Na minha opinião, para que o gerador seja adequado para testes, basta estar próximo a esses requisitos.

 
Михалыч Трейдинг #:

Tópico divertido. Na minha opinião, ou os números são aleatórios ou de qualidade!

Se você encontrou 100 libras, a aleatoriedade é qualitativa, mas ser atropelado por um carro não é qualitativo?

É por isso que não há influência, porque não deveria haver. E se o SGD apresentar alguns desvios ruins, então ele não é um SGD, mas um gerador de uma tarefa errônea para gerar esses mesmos desvios (ou seja, alguma função). Há requisitos para o DGS. Na minha opinião, para que o gerador seja adequado para testes, basta estar próximo a esses requisitos.

Parece que você não leu o artigo.

Não confunda processos aleatórios na natureza com números aleatórios obtidos com a ajuda do DGS. Os HGFs vêm em muitas formas e o número de testes em que são aprovados varia muito. Quanto mais testes diferentes um gerador passar, melhor ele será.

 
Andrey Dik #:
Existem diferentes tipos de PRNGs
PRNG
 
Sergey Gridnev #:
PRNG
Você pode chamá-los do que quiser, mas as propriedades dos geradores não mudarão. É importante entender que os geradores de software não são verdadeiramente aleatórios, eles são abreviados como PRNGs.
 
Вихрь медленнее стандартного примерно в 3.4 раза, что может заметно повлиять на скорость работы алгоритмов оптимизации.

Para cada cálculo do FF, há uma chamada para o GCH para gerar um vetor de FFs de entrada. O FF de negociação é muito mais pesado do que o GSC, portanto, a ponderação do GSC não deve ser perceptível.


Agradeço ao autor pelo tutorial e experimento do GFG. Eu gostaria de ver uma natureza diferente de FF no futuro.

 
fxsaber #:

Para cada cálculo do FF, há uma chamada para o GCH para gerar um vetor de FFs de entrada. O FF de negociação é muito mais pesado do que o GCH, portanto, a ponderação do GCH não deve ser perceptível.

Não se trata de uma chamada ao GF para cada FF, mas de pelo menos uma chamada ao GF para cada coordenada do agente, além de chamadas diferentes, seleção de um indivíduo e outras.

Portanto, o GF é capaz de desacelerar bastante o processo geral, e o Vortex de Mersenne está longe de ser o GF mais lento (em parte, foi por isso que ele foi escolhido, pois é relativamente rápido e passa no teste de uniformidade), embora o FF em si, é claro, geralmente tenha um peso muito maior.
 
fxsaber #:

Agradecemos ao autor pelo tutorial e pelo experimento do HGF.

Gostaria de ver um FF de natureza diferente no futuro.

Obrigado pelo feedback.

Você quer dizer: incluir um "teste de negociação" sintético na lista de recursos de teste? Isso pode ser feito, mas acho que esse teste de comércio sintético seria quase idêntico em propriedades à função Megacity discreta, você pode testá-la também.

 
Andrey Dik #:

Significado - incluir um "teste de comércio" sintético na lista de funções de teste?

Sim, estamos otimizando o sistema de negociação.