[Arquivo!] Pura matemática, física, química, etc.: problemas de treinamento do cérebro não relacionados ao comércio de qualquer forma - página 451

 

Aqui está o resultado com SMax=3000

2011.01.15 19:14:26 MetaSage (EURUSD,M1) //+---- Max = 3000 -------------------+
2011.01.15 19:14:21 MetaSage (EURUSD,M1) S=163; P=4192; a=32; b=131
2011.01.15 19:14:21 MetaSage (EURUSD,M1) S=127; P=1776; a=16; b=111
2011.01.15 19:14:21 MetaSage (EURUSD,M1) S=89; P=1168; a=16; b=73
2011.01.15 19:14:21 MetaSage (EURUSD,M1) S=65; P=244; a=4; b=61
2011.01.15 19:14:21 MetaSage (EURUSD,M1) S=17; P=52; a=4; b=13
2011.01.15 19:14:21 MetaSage (EURUSD,M1) //+---- Montante máximo = 3000 -------------------+

 
Quanto tempo durou a contagem? Não cinco segundos...
 
Mathemat:

1. De modo geral, é preciso remover as restrições sobre o valor. Todo o raciocínio permanece essencialmente o mesmo, apenas mais do que isso.

2. A julgar pelo fato de que na citação o homem precisava de um Cray 1, seu algoritmo foi menos otimizado que o seu :)

1. Grande não é possível - minha mesa de expansão multiplicadora não cabe na memória já na SMax=3400.

Algum avanço com lemma para um produto máximo para um determinado SMax ?

Aqui está a impressão para 3300:

2011.01.15 19:18:12 MetaSage (EURUSD,M1) //+---- Soma máxima = 3300 -------------------+
2011.01.15 19:18:06 MetaSage (EURUSD,M1) S=163; P=4192; a=32; b=131
2011.01.15 19:18:06 MetaSage (EURUSD,M1) S=127; P=1776; a=16; b=111
2011.01.15 19:18:06 MetaSage (EURUSD,M1) S=89; P=1168; a=16; b=73
2011.01.15 19:18:06 MetaSage (EURUSD,M1) S=65; P=244; a=4; b=61
2011.01.15 19:18:06 MetaSage (EURUSD,M1) S=17; P=52; a=4; b=13
2011.01.15 19:18:06 MetaSage (EURUSD,M1) //+---- Max = 3300 -------------------+

.

2. Não, é que o mql5 é uma linguagem muito rápida... :)

 
Mathemat:
Quanto tempo durou a contagem? Não cinco segundos...
Cerca de um minuto.
 
MetaDriver: Qualquer avanço com lema para o máximo trabalho para um determinado SMax ?
Ainda não, só me pergunto se vale a pena o trabalho :)
 

Checado na SMax=3350. O resultado é o mesmo. Conta por cerca de um minuto, ainda menos.

A principal limitação neste momento é a memória. Precisamos limitar a tabela de decomposição do multiplicador.

Versão atual de PMax=SMax*(SMax/2-1). Pode ser diminuído ainda mais? Você pode habilitá-lo?

Acho que é suficientemente fácil provar que PMax<=SMax*(sqrt(SMax)-1)). Tentarei executá-lo agora e se ele cair, significa que estou errado. :)

 
Deixe-me dar um sentido a isso.
 

Não funcionou (construiu uma mesa, mas parecia ser muito pequena), mas consegui encontrar mais uma solução (!) :-)

2011.01.15 19:40:28 MetaSage (EURUSD,M1) Array out of range in 'MetaSage.mq5' (100,47)
2011.01.15 19:40:24 MetaSage (EURUSD,M1) S=343; P=9952; a=32; b=311
2011.01.15 19:40:24 MetaSage (EURUSD,M1) S=163; P=4192; a=32; b=131
2011.01.15 19:40:24 MetaSage (EURUSD,M1) S=127; P=1776; a=16; b=111
2011.01.15 19:40:24 MetaSage (EURUSD,M1) S=89; P=1168; a=16; b=73
2011.01.15 19:40:24 MetaSage (EURUSD,M1) S=65; P=244; a=4; b=61
2011.01.15 19:40:24 MetaSage (EURUSD,M1) S=17; P=52; a=4; b=13
2011.01.15 19:40:24 MetaSage (EURUSD,M1) //+---- Montante máximo = 4000 -------------------+
2011.01.15 19:40:24 MetaSage (EURUSD,M1) //============== START ========================

 

Agora, se pudéssemos ter certeza de que estas não são apenas soluções potenciais, mas soluções reais.

OK, podemos pensar mais, estabelecendo um limite de, digamos, 10.000.

P.S. Quantos números você tem na tabela aos 3300?

3300*(3300/2-1) ~ 5 milhões?

 
Mathemat:

1. Agora, se pudéssemos ter certeza de que estas não são apenas soluções potenciais, mas soluções reais.

OK, podemos pensar mais, estabelecendo um limite de, digamos, 10.000.

2. P.S. Quantos números você tem na tabela aos 3300?

3300*(3300/2-1) ~ 5 milhões?

1. Bem, o roteiro é a maneira de ter certeza. Altere-o para uma versão de verificação. Será suficiente, mas vamos lidar primeiro com a PMax.

2. SIM.

Aqui está um pouco de mexer com o tamanho da mesa. Obtivemos os resultados com SMax=4100.

Conjunto PMax como segue: SMax*(uint)(SMax/6-1) = 2796200

2011.01.15 20:21:29 MetaSage (EURUSD,M1) //+---- Max = 4100 -------------------+
2011.01.15 20:21:18 MetaSage (EURUSD,M1) S=343; P=9952; a=32; b=311
2011.01.15 20:21:18 MetaSage (EURUSD,M1) S=163; P=4192; a=32; b=131
2011.01.15 20:21:18 MetaSage (EURUSD,M1) S=137; P=4672; a=64; b=73
2011.01.15 20:21:18 MetaSage (EURUSD,M1) S=127; P=1776; a=16; b=111
2011.01.15 20:21:18 MetaSage (EURUSD,M1) S=89; P=1168; a=16; b=73
2011.01.15 20:21:18 MetaSage (EURUSD,M1) S=65; P=244; a=4; b=61
2011.01.15 20:21:18 MetaSage (EURUSD,M1) S=17; P=52; a=4; b=13
2011.01.15 20:21:18 MetaSage (EURUSD,M1) //+---- Max = 4100 -------------------+
2011.01.15 20:21:18 MetaSage (EURUSD,M1) //============== START ========================

2011.01.15 20:21:00 MetaSage (EURUSD,M1) SMax*(uint)(SMax/6-1) = 2796200

.

Como vemos, há mais uma solução no meio: S=137; P=4672; a=64; b=73.

Razão: