Generazione di numeri casuali uniformemente distribuiti (0,1) - pagina 5

 
Mathemat >>:

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

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

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

Alexey, per generare sequenze pseudo-casuali, per esempio, se usi un registro a scorrimento lineare o Fibo, mi ricordo, sono estremamente importanti i ritardi del generatore, cioè quelle posizioni di registro da cui viene preso il feedback. Mi sembra che se usi il tuo schema, il ritardo può essere disturbato e possono verificarsi correlazioni non previste tra gli elementi della sequenza

 
Mathemat писал(а) >>

gumgum, ecco un altro link: https://forum.mql4.com/ru/19996/page4. Ma ha dll, ma il generatore è di tipo crittografico, cioè più avanzato di quello standard crt. E genera molti più numeri, da -2^31 a 2^31. Tutto ciò di cui avete bisogno si trova nello stesso ramo.

Non è necessario generare numeri. È necessario generarne tanti e tanti molto casuali, e impostare ogni volta un nuovo punto di offset da qualcosa anch'esso molto casuale e poco chiaro)))). Quasi tutti gli oscillatori funzionano in questo modo.

 
Figar0 >>:

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

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

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

No, non lo faccio da un po'...

Per quanto ne so, i moderni DSP software usano il contatore di clock del processore come fonte di entropia

 
Mathemat >>:

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


Grazie. Ma ho bisogno di numeri reali nell'intervallo (0, 1).
 
alsu >>:

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

Grazie, alsu. Non sto insistendo, sto solo suggerendo un'opzione. Non conoscevo queste sottigliezze.

Ma ho bisogno di numeri reali nell'intervallo (0, 1).

Allora dovrò scriverlo io, non ho visto ricette così pronte. Genera le cifre separatamente e poi incollale in un numero.

 
Mathemat >>:

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

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


Questo è quello che ho fatto.
 

generatori reali e interi davvero buoni. http://www.agner.org/random/ con un periodo di 10^8100 da qualche parte.

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

Sì, l'ho notato. Ma sarà lento. Probabilmente è meglio fare prima un numero binario e poi convertirlo in decimale. Qui c'è una libreria di conversione.

 

questo è uno dei più veloci generatori di numeri casuali (non pseudo) disponibili oggi.

Oppure ce n'è uno più semplice, ma è anche veloce e ha buone caratteristiche

 
alsu писал(а) >>

questo è uno dei più veloci generatori di numeri casuali (non pseudo) disponibili oggi.

Oppure ce n'è uno più facile, ma è anche veloce e ha buone caratteristiche.

Cosa intende per "non pseudo"? Non esiste una cosa del genere in natura.