Article View: pl.comp.lang.c
Article #308698Re: test randomizacyjny w C
From: Matt D.
Date: Mon, 04 Jul 2016 01:23
Date: Mon, 04 Jul 2016 01:23
43 lines
2564 bytes
2564 bytes
On 7/2/2016 19:05, Norbert Cielecki wrote: > > Witam! > Czy ktoś mógłby mi wytłumaczyć, wjaki sposób funkcja rand() może | ma > skorzystać z 10 ziaren losowych srand(time(0)), przy generowaniu 1000 > liczb pseudolosowych z zakresu 1-10. Chodzi mi dokładnie o zbadanie > losowości generatora liczb pseudolosowych. Wdzięczny będę za wskazówki. W praktyce: Istniejace implementacje `rand` _zdecydowanie_ zawala kazde porzadne testy losowosci. A wiec jesli Twoim celem jest odpowiedzenie na pytanie, "czy `rand` przejdzie test(y) losowosci", to natychmiast -- i bez dalszej straty czasu -- odpowiedz jest prosta i bezwzgledna: ABSOLUTNIE NIE! (bez szans, bez wyjatkow, bez przeprosin). (W teorii, zachowanie `rand` jest implementation-defined, wiec mozna sobie wyobrazic implementacje ktore zrobia cos innego -- osobiscie nie znam takowej.) Jesli chodzi o czysta ciekawosc (i przekonanie sie, ze, faktycznie, zawali :]): Diehard i TestU01 to podstawowe testy (a raczej cale kolekcje tychze)--wiec mozesz zaczac od nich: https://en.wikipedia.org/wiki/Diehard_tests https://en.wikipedia.org/wiki/TestU01 Tutaj jest implementacja TestU01 w ANSI C: http://www.iro.umontreal.ca/~simardr/testu01/tu01.html Patrz tez: http://csrc.nist.gov/groups/ST/toolkit/rng/batteries_stats_test.html http://stackoverflow.com/questions/778718/how-to-test-random-numbers Jak chcesz porzadny generator, to przyjrzyj sie: http://www.pcg-random.org/ Tutaj przykladowe wyniki testow (ktorym mozesz sie przyjrzec takze--jako przyklad, jak testowac): http://www.pcg-random.org/statistical-tests.html Pozdrawiam, Matt
Technical Details
Message-ID:
<nlcdr5$rk4$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>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 03:23:47 +0200 Organization: http://www.wit.edu.pl Sender: mdziubin@nospam.wsisiz.edu.pl Message-ID: <nlcdr5$rk4$1@portraits.wsisiz.edu.pl> References: <5777f44e$0$12548$65785112@news.neostrada.pl> Mime-Version: 1.0 Injection-Date: Mon, 4 Jul 2016 01:23:49 +0000 (UTC) Injection-Info: portraits.wsisiz.edu.pl; posting-host="d40a9baa.rev.stofanet.dk:212.10.155.170"; logging-data="28292"; 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: <5777f44e$0$12548$65785112@news.neostrada.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit