一様分布乱数(0,1)の生成 - ページ 5

 
Mathemat >>:

gumgum, тогда попробуй вот так. Принцип тот же, но вместо генерации целых чисел от 0 до 32767 ты получишь примерно от 0 до 2^30. Каждое число - это MathRand() + MathRand()*32768. Я не исследовал, как будут распределены, но надеюсь, что для не слишком требовательных задач все будет тип-топ.

Это числа вида AB в 32768-ичной системе счисления.

А еще лучше все-таки использовать dll. Есть такая, она сразу генерит такие большие числа.

アレクセイ、擬似乱数列の生成には、たとえばリニアシフトレジスタやFiboを使う場合、生成器のラグ、つまりフィードバックを受けるレジスタの位置が非常に重要だと記憶しているんだ。あなたの方式を使うと、ラグが崩れて、シーケンスの要素間に予定外の相関が発生する可能性があるようです

 
Mathemat писал(а)>>

gumgum さん、こちらもリンクです。https://forum.mql4.com/ru/19996/page4。しかし、このジェネレーターは暗号化されており、標準的なCrtのジェネレーターよりも高度なものです。そして、-2^31から2^31まで、より多くの数字を生成する。必要なものはすべて同じ支店にあります。

数字を生成する必要はないのです。非常にランダムなものをたくさん生成し、同じく非常にランダムで不明確なものから新しいオフセットポイントを毎回設定する必要があります)))。ほとんどのオシレーターはこのような仕組みになっています。

 
Figar0 >>:

Буквально на днях читал описание этого эксперимента. Понял что не потяну) Может это как раз описание Вашего опыта?

Ну такое мне наверно все же не надо, я видел что-то типа где последовательность инициализировалась системным временем или чем-то подобным... Ну как обычно, когда надо - не найдешь)

З.Ы. Кажется это было на форуме каких-то лотерейщиков, никто не встречал?

いや、しばらくやってないんだけど...。

私の知る限り、最近のソフトウェアDSPは、エントロピー源としてプロセッサーのクロックカウンターを使用しています

 
Mathemat >>:

gumgum, вот еще ссылочка: https://forum.mql4.com/ru/19996/page4. Но там с dll, зато генератор типа криптографический, т.е. более совершенный, чем стандартный из crt. И чисел намного больше генерит, примерно от -2^31 до 2^31. Все нужное найдете в той же ветке.


ありがとうございます。しかし、(0, 1)の範囲の実数値が必要です。
 
alsu >>:

Алексей, для генерации псевдослучайных последовательностей, например, если используется линейный регистр со сдвигом или Фибо, помнится, крайне важны лаги генератора, т.е. те позиции регистра, с которых берутся отводы обратной связи. Мне кажется, если использовать указанную тобой схему, то лаговость может нарушиться и между элементами последовательности возникнут незапланированные корреляции

alsu さん、ありがとうございます。主張するわけではなく、選択肢を提案するだけです。そんな繊細なことは知りませんでした。

しかし、私は範囲(0, 1)の実数が必要です。

それなら自分で書かないと、そんな既成のレシピは見たことがない。桁を別々に生成し、それらを接着して数字にする。

 
Mathemat >>:

Спасибо, alsu. Я и не настаиваю, а только предложил вариант. О таких тонкостях я и не знал.

Тогда придется писать его самостоятельно, тут подобных готовых рецептов не видел. Генерить цифры отдельно, а потом склеивать их в число.


それが、私の仕事です。
 

実数と整数のジェネレータがとても良い。http://www.agner.org/random/、どこかで10^8100の周期を持つ。

 
gumgum >>: Дык я так и делал.

はい、気づきました。しかし、それは遅いでしょう。おそらく、最初に2進数を作ってから10進数に変換した方が良いのでしょう。ここに変換ライブラリーがあります。

 

、現在利用可能な最も高速な乱数(疑似ではない)ジェネレータの一つです。

あるいは、もっとシンプルな ものでも、速くて良い機能を持ったものがあります

 
alsu писал(а)>>

、現在利用可能な最も高速な乱数(疑似ではない)ジェネレータの一つです。

あるいは、もっと簡単な ものもありますが、スピードもあり、特性もいい。

疑似じゃないとはどういうこと?自然界にはそんなものはない。