Article View: pl.comp.lang.c
Article #308703Re: test randomizacyjny w C
From: Matt D.
Date: Mon, 04 Jul 2016 19:12
Date: Mon, 04 Jul 2016 19:12
73 lines
4160 bytes
4160 bytes
On 7/4/2016 20:06, M.M. wrote: > On Monday, July 4, 2016 at 5:57:17 PM UTC+2, M.M. wrote: >> On Monday, July 4, 2016 at 3:23:47 AM UTC+2, Matt D. wrote: >> >>> W praktyce: Istniejace implementacje `rand` _zdecydowanie_ zawala kazde >>> porzadne testy losowosci. >> >> Poprawny generator liniowy, zaimplementowany na dużym zakresie >> powinien przejść doskonale wszystkie testy na równomierność rozkładu, ponieważ >> generuje wszystkie liczby z zakresu od 0 do N-1. Moim zdaniem problem tego >> generatora polega na tym, że przechodzi te testy zbyt dokładnie. Byc moze, ale... >> Problemy ten generator dopiero ma przy testach na zależność, bo >> liczba losowa numer [i] zależy bezpośrednio od liczby [i-1]. >> W ciut lepszych odmianach zależy od dwóch lub trzech poprzednich. ...wlasnie. I w testach losowosci w sensie ogolnym musimy miec zaliczenie baterii (t.j., calej kolekcji) -- zawalenie jednego implikuje zawalenie baterii. > Spoglądam na tę stronę z testami generatorów: > http://www.cacert.at/cgi-bin/rngresults > > stdlib rand() - nie przechodzi ich testów. > java.util.Random.Random - też nie przechodzi > MT19337(java) nie przechodzi? czy to to jest merseen twister??? > MersenneTwister19937 Gaussian - to na pewno MT, nie przechodzi??? > Mersenne Twister (with some speed optimization) - prawie przeszedł, ale tylko 6Mbajtów na sekundę. > > Czy ja czegoś nie rozumiem? MT nie przechodzi testów? Oczywiscie -- tutaj nie ma zadnego zaskoczenia, MT zdecydowanie nie nadaje sie do krypto --- bardziej nadaje sie do obliczen numerycznych (n.p., naukowe symulacje), gdzie statystyczne wlasciwosci rozkladu sa wazniejsze od nieprzewidywalnosci (ale tez nie jest najlepszy, to bardzo ciezki -- duzy stan -- i powolny generator). // Dla szybkosci (numeryka, nie krypto) to raczej http://www.agner.org/random/ Drastyczny przyklad dlaczego numeryki nie zawsze obchodza problemy kryptografow -- QRNG (quasi-random number generator -- w odroznieniu od PRNG/pseudo): https://en.wikipedia.org/wiki/Low-discrepancy_sequence http://www.johndcook.com/blog/2009/03/16/quasi-random-sequences-in-art-and-integration/ Czysta matematyka dyskretna / teoria liczb, a wiec w pelni deterministyczny i trywialnie przewidywalny -- ale do calkowania Monte Carlo potrafi sie calkiem niezle sprawdzac :-) https://en.wikipedia.org/wiki/Quasi-Monte_Carlo_method > Aż musiałem wrzucić generator mojego autorstwa: > my generator no have any important name yet, version 0.00 > Wygląda na to że przechodzi ichniejsze testy. > > Trochę jestem zaskoczony. Ciekawe, moze cos dobrego masz :-) Czytajac opis jednak: "At the moment, we are using ENT and diehard for analysis. ENT is used to sort all results, and diehard is used to raise red flags. We are trying to switch to dieharder which promises better tests than diehard." http://www.cacert.at/random/ Wiec mozesz jeszcze TestU01 (poprzedni post) i Dieharder sprawdzic: http://www.phy.duke.edu/~rgb/General/dieharder.php Pozdrawiam, Matt
Technical Details
Message-ID:
<nlecfp$94i$1@portraits.wsisiz.edu.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!.POSTED.d40a9baa.rev.stofanet.dk!not-for-mailReferences:
<5777f44e$0$12548$65785112@news.neostrada.pl> <nlcdr5$rk4$1@portraits.wsisiz.edu.pl> <3fabf491-7526-4652-b460-a6c2b03318fe@googlegroups.com> <52620181-d1a6-4812-96a5-38eaed8f0860@googlegroups.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!.POSTED.d40a9baa.rev.stofanet.dk!not-for-mail From: "Matt D." <no-spam@invalid.local> Newsgroups: pl.comp.lang.c Subject: Re: test randomizacyjny w C Date: Mon, 4 Jul 2016 21:12:56 +0200 Organization: http://www.wit.edu.pl Sender: mdziubin@nospam.wsisiz.edu.pl Message-ID: <nlecfp$94i$1@portraits.wsisiz.edu.pl> References: <5777f44e$0$12548$65785112@news.neostrada.pl> <nlcdr5$rk4$1@portraits.wsisiz.edu.pl> <3fabf491-7526-4652-b460-a6c2b03318fe@googlegroups.com> <52620181-d1a6-4812-96a5-38eaed8f0860@googlegroups.com> Mime-Version: 1.0 Injection-Date: Mon, 4 Jul 2016 19:12:57 +0000 (UTC) Injection-Info: portraits.wsisiz.edu.pl; posting-host="d40a9baa.rev.stofanet.dk:212.10.155.170"; logging-data="9362"; mail-complaints-to="abuse@wsisiz.edu.pl" User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1 In-Reply-To: <52620181-d1a6-4812-96a5-38eaed8f0860@googlegroups.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit