Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.programming > #31120
| Newsgroups | pl.comp.programming |
|---|---|
| Date | 2017-12-21 00:25 -0800 |
| References | (2 earlier) <b2214f68-1e85-4335-a2c2-69dddbf375f4@googlegroups.com> <7c77eae7-0600-4ebe-9428-783b16fe069d@googlegroups.com> <2027339c-574e-44f6-8a51-4217e48a355f@googlegroups.com> <bbd9bc33-9495-42df-98ab-2f61af046bc7@googlegroups.com> <ca24cdbf-454d-4a6b-90eb-dbbc05bdb70b@googlegroups.com> |
| Message-ID | <264aa68a-cd26-4b58-b33e-9833fd601cb7@googlegroups.com> (permalink) |
| Subject | Re: jeden generator liczb losowych do testowania drugiego? |
| From | "M.M." <mmarszik@gmail.com> |
On Thursday, December 21, 2017 at 12:46:19 AM UTC+1, M.M. wrote:
> On Wednesday, December 20, 2017 at 7:40:52 PM UTC+1, M.M. wrote:
> > On Wednesday, December 20, 2017 at 8:30:32 AM UTC+1, M.M. wrote:
> > > On Tuesday, December 19, 2017 at 5:11:43 AM UTC+1, bartekltg wrote:
> > >
> > > > [...]
> > > > Weź dobry generator h i zrób z niego kiepski:
> > > > Niech G daje liczbę będącą średnią dwóch odpaleń
> > > > generatora h. G nie jest nawet w przybliżeniu jednorodny.
> > > > A Twój test przejdzie.
> > > > [...]
> > >
> > > Co myślisz o tym na dole? Porównałem ranlux48 z ranlux48 na innych
> > > seedach. Długość roku dałem 2^20, ilość urodzin 2^12. Ilość
> > > kubełków zredukowałem, jak radziłeś. Cały kod:
> > >
> > > https://pastebin.com/JhLN12C5
> > >
> > >
> > > P-value wyszło 0.9999927195600541432. Może jednak taki test jest trochę
> > > lepszy niż myślimy?
> >
> >
> > MT testowany sam ze sobą raczej też nie przechodzi testu:
> >
> > test 1
> > chi-dist-cum: 0.9999997015849526988
> >
> > test 2
> > chi-dist-cum: 0.9999228118927154972
>
> I generator Fibonacciego z tamtego kodu powyżej ( przypomnę:
> https://pastebin.com/JhLN12C5 ), gdy jest testowany sam ze sobą,
> też nie przechodzi testu urodzinowego. Albo mam błąd, albo to
> jest lepszy (bo trudniejszy) test niż można było się spodziewać :)
> Ale błędu raczej nie mam, bo ten sam kod generuje oba rozkłady i
> inne narzędzia dają tę samą wartość p-value. Mam prośbę, spójrzcie
> na tamten kod, może znajdziecie błędy?
>
> Przy założeniu, że nie mam błędu, jakie płyną z tego wnioski? Proszę,
> jeden ważny wniosek: Jeśli uruchamiacie symulację na klastrze, jeśli
> używacie nawet tak dobrych generatorów jak std::ranlux48 lub
> std::mt19937_64 i w każdym procesie/wątku liczycie to samo zadanie z
> innym seedem, to wyniki z poszczególnych wątków/procesów prawdopodobnie
> nie są niezależne :)
>
>
> Ułatwię test. Zrobię rok o długości 2^24 i dam 32 urodziny. Generatory
> powinny przejść ułatwione testy.... zobaczymy. Z jakiś czas dam wyniki.
>
Generator Fibonacciego na ułatwionym teście zachował się przyzwoicie.
P-value jest równe 0.6862016765421758663. W teście było wygenerowanych
3E11 liczb pseudo-losowych, ponad 11 godzin obliczeń.
Kod:
https://pastebin.com/1huv7HP5
Test:
time ./frnd
rnd seed1: 252276773
rnd seed2: 1201639756
--------------------------------------
loops: 4763156481
0 465935620 465937865 0.0108169465901
1 2253109 2250870 2.22719259664
2 456 450 0.08
chi-square: 2.318009543230488209
chi-dist: 0.1568991632651941654
chi-dist-cum: 0.6862016765421758663
--------------------------------------
^C
real 679m37.501s
user 679m28.800s
sys 0m2.584s
Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-17 20:33 -0800
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-18 08:37 -0800
Re: jeden generator liczb losowych do testowania drugiego? "AK" <nobody@nowhere.net> - 2017-12-20 00:46 +0100
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-19 16:52 -0800
Re: jeden generator liczb losowych do testowania drugiego? "AK" <nobody@nowhere.net> - 2017-12-21 22:53 +0100
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-21 15:05 -0800
Re: jeden generator liczb losowych do testowania drugiego? "AK" <nobody@nowhere.net> - 2017-12-22 09:55 +0100
Re: jeden generator liczb losowych do testowania drugiego? bartekltg <bartekltg@gmail.com> - 2017-12-18 15:48 -0800
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-18 17:24 -0800
Re: jeden generator liczb losowych do testowania drugiego? bartekltg <bartekltg@gmail.com> - 2017-12-18 20:11 -0800
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-18 21:39 -0800
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-18 22:22 -0800
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-19 23:30 -0800
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-20 10:40 -0800
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-20 15:46 -0800
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-21 00:25 -0800
Re: jeden generator liczb losowych do testowania drugiego? "M.M." <mmarszik@gmail.com> - 2017-12-21 11:33 -0800
csiph-web