eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingjeden generator liczb losowych do testowania drugiego? › Re: jeden generator liczb losowych do testowania drugiego?
  • X-Received: by 10.31.164.131 with SMTP id n125mr919107vke.14.1513844754225; Thu, 21
    Dec 2017 00:25:54 -0800 (PST)
    X-Received: by 10.31.164.131 with SMTP id n125mr919107vke.14.1513844754225; Thu, 21
    Dec 2017 00:25:54 -0800 (PST)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
    0.net!peer02.am4!peer.am4.highwinds-media.com!peer03.iad!feed-me.highwinds-medi
    a.com!news.highwinds-media.com!m31no4998768qtf.0!news-out.google.com!t48ni2010q
    tc.1!nntp.google.com!m31no4998764qtf.0!postnews.google.com!glegroupsg2000goo.go
    oglegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Thu, 21 Dec 2017 00:25:53 -0800 (PST)
    In-Reply-To: <c...@g...com>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=159.205.148.128;
    posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
    NNTP-Posting-Host: 159.205.148.128
    References: <1...@g...com>
    <d...@g...com>
    <b...@g...com>
    <7...@g...com>
    <2...@g...com>
    <b...@g...com>
    <c...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <2...@g...com>
    Subject: Re: jeden generator liczb losowych do testowania drugiego?
    From: "M.M." <m...@g...com>
    Injection-Date: Thu, 21 Dec 2017 08:25:54 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    X-Received-Body-CRC: 1395202167
    X-Received-Bytes: 5167
    Xref: news-archive.icm.edu.pl pl.comp.programming:211944
    [ ukryj nagłówki ]

    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


Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

  • 21.12.17 20:33 M.M.
  • 21.12.17 22:53 AK
  • 22.12.17 00:05 M.M.
  • 22.12.17 09:55 AK

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: