Forum strony www.multipasko.pl [Regulamin]


Dodaj wpis w tym temacie
Spis tematów
Login:

Hasło:
Strona: 1 2 ... 9 10 11 ... 30 31
Wyślij wiadomość do admina

Przewiń wpisy ↓

Turbo Pascal dla zielonych

2010-05-20 (04:20)

status Tajemniczy Don Pedro
Data rejestracji: 2009-04-18 00:00:00
Ilość postów: 722

4474
wpis nr 326 016
[ CZCIONKA MONOSPACE ]

Kurko,



w związku z Twoimi ostatnim pytaniem chyba potrzeba zapytać specjalistów od szyfrowania. To - na marginesie - jest ostatnio niebezpieczny politycznie temat.



Chyba kol. Amadeus coś o tym gdzieś na forum pisał w swoim czasie.



Osobiście jestem w stanie ręcznie znaleźć sekwencje nietypowe dla losowań bębnowych maszyn losujących, ale to wymaga dość czasochłonnych obliczeń.



Natomiast kłopot powstaje wówczas, gdy generator nie wyłamuje się z pewnego zakresu zdarzeń. Wtedy człowiek nie potrafi odróżnić maszyny bębnowej od generatora.



Czytałem w literaturze tematu, iż nawet programy przeznaczone do automatycznego wyławiania pseudolosowości mają kłopot.



Ale w rozwoju technologii postęp jest tak szybki, że być może już rzecz jest dawno rozwiązana.



Pytanie, czy nam tu jest potrzebna aż taka dokładność.



Bo myślałem, że assembler załatwia sprawę i można ustawić dowolny zakres precyzji.





Dobrej Nocy, bo już świta a jutro też jest dzień
2010-05-20 (11:05)

status KURKA
Data rejestracji: 2009-01-23 00:00:00
Ilość postów: 2551

4098
wpis nr 326 067
[ CZCIONKA MONOSPACE ]

TDP, zapewne Amadeus mógłby powiedzieć co sądzi o takim rozwiązaniu :



Pobieram znacznik czasowy procesora następnie wykonuje jakąś instrukcje i znów pobieram znacznik.

Różnica w młodszym słowie znacznika (starsze się nie zdąży zmienić bo to krotki okres czasu) jest rzędu 1500 ale nie jest ona stała. Podczas wykonywania tej operacji raz wynosi 1351 a następnym 1428 i non stop jest inna.

Jeżeli odczyt jest wykonany po sobie raz, za razem to różnica jest stała i zapewne w zależności od procesora będzie wynosić różną wartość rzędu np 50.

Mam w ten sposób nie obliczoną przyszłą wartość na podstawie wcześniejszej , a odczytaną z procesora ,wynikającą z tego że czas wykonywania instrukcji nie jest idealnie stały i różni się .



Przykładowe następujące po sobie różnice wyświetlone przez program:

1392

1337

1425

1352

1355

1361

1384

1364

1413









2010-05-20 (20:09)

status KURKA
Data rejestracji: 2009-01-23 00:00:00
Ilość postów: 2551

4098
wpis nr 326 204
[ CZCIONKA MONOSPACE ]

Może ktoś przetestuje generator.

http://wrzucacz.pl/file/1561274378800



losuje 6 z 49 , ograniczenie do 1 000 000 losowań , losuje zadaną ilość razy, wyniki losowania w 6-ciu kolumnach w pliku tekstowym Generator.txt
2010-05-20 (21:40)

status kleszek
Data rejestracji: 2006-05-27 00:00:00
Ilość postów: 4903

2047
wpis nr 326 232
[ CZCIONKA MONOSPACE ]

KURKA, sprawdziłem Twój program. Na komputerze z procesorem Intel Core i7 CPU860 @ 2,80 GHz, 1 mln. zestawów program generował około 6 min. 30 sek. Plik wynikowy zajmuje 17 MB. Wszystko działa OK! Gratulacje !
2010-05-20 (23:01)

status KURKA
Data rejestracji: 2009-01-23 00:00:00
Ilość postów: 2551

4098
wpis nr 326 270
[ CZCIONKA MONOSPACE ]

Chodzi mi o opinie, czy jest losowy ???

Nie wiem jak zachowa się na innych kompach, powinien na wszystkich tak samo działać, jedynie szybciej lub wolniej.

Nie stosuje tam funkcji random i dlatego na razie wydajność tragiczna , ale mam nadzieje że jakość będzie lepsza, nie pseudolosowa.



Przy użyciu Random to 1 mln losuje się w 1 sekundę - może 2s.



Myślę że teraz spróbuję zrobić nieco szybciej ale raczej to \"główny spowalniacz\" który powoduję różnicę czasu i wygląda na to że dość losową , w wykonywaniu się tych samych , zapętlonych instrukcji, - jest nie bardzo do przeskoczenia. Może uda się od razu generować Licznik , a nie 6 kulek, co powinno 6-cio krotnie przyśpieszyć program , ale może odbić się na jakości.

2010-05-20 (23:09)

status kleszek
Data rejestracji: 2006-05-27 00:00:00
Ilość postów: 4903

2047
wpis nr 326 274
[ CZCIONKA MONOSPACE ]

Kurka, jestem laikiem w tych sprawach. Jak rozpoznać czy wygenerowane zestawy są losowe czy też pseudolosowe? Czym się charakteryzują zestawy losowe? Na co zwrócić uwagę przy analizie zestawów z programu?
2010-05-20 (23:43)

status KURKA
Data rejestracji: 2009-01-23 00:00:00
Ilość postów: 2551

4098
wpis nr 326 280
[ CZCIONKA MONOSPACE ]

Można to wytłumaczyć na prostym przykładzie:

Generator zawsze jednakowo wylicza liczby i powiedzmy że ustawia je w 40 pozycjach :



początek...1,4,9,0,2,5,3,5,6,6,1,0 i tak dalej ...9,7,0,1,3...koniec



teraz wyobraź sobie , że początek i koniec tego łańcucha o 40 oczkach ,gdzie jest 4 oczka w każdym kolorze a kolorów mamy 10 (od 0 do 9) są połączone.



Jak połączymy początek z końcem , to mamy łańcuch zapięty i nie ma już ani początku , ani konca.



Randomize na podstawie czasu systemowego ustala sobie początek - które oczko będzie jako pierwsze.

Powiedzmy że ustalił pierwsze oczko a jest nim :



początek...1,4,9,0,2,5 - ta piątka (5) , po niej będzie 6,6,1,0,itak dalej...9,7,0,1,3,1,4,9,0,2, i tu dochodzimy do miejsca gdzie rozpoczął się odczyt oczek .



Jeżeli losujemy 50 razy to na 100% od 40 losowanie wszystko się powtórzy.



Random ma 4miliardy 300 milionów oczek w łańcuchu , i te oczka zawsze są w tym samym miejscu , tylko odczyt - miejsce startu się zmienia.



Przy dużych ilościach losowań taki generator jest do ....

Ale jest szybki , tylko że szybkość to nie jedyny parametr a nawet nie najważniejszy .





2010-05-21 (00:16)

status Tajemniczy Don Pedro
Data rejestracji: 2009-04-18 00:00:00
Ilość postów: 722

4474
wpis nr 326 288
[ CZCIONKA MONOSPACE ]

Kleszek,



Można to jeszcze napisać tak:



Jeśli generator jest pseudolosowy, to można dzięki znajomości pewnej ilości początkowych wyrazów ciągu uzyskać matematyczny wzór tego ciągu i w ten sposób z góry przewidzieć jakie będą następne wyrazy ciągu, czyli co będzie wylosowane.
2010-05-21 (01:21)

status sindbad
Data rejestracji: 2008-10-13 00:00:00
Ilość postów: 20519

3794
wpis nr 326 289
[ CZCIONKA MONOSPACE ]

KURKA,

Jak sprawdzałaś ten generator?

2010-05-21 (12:04)

status KURKA
Data rejestracji: 2009-01-23 00:00:00
Ilość postów: 2551

4098
wpis nr 326 368
[ CZCIONKA MONOSPACE ]

W zasie tworzenie generatora ustawiam sobie zakres na 100 czy 200 losowań i tworzę pary z wylosownych (x,y) które są współrzędnymi na ekranie.

Od razu widzę czy punktuje ekran równomiernie czy rysuje mi jakieś wzorki

To jest test graficzny - taki wizualny trochę .

Testów jest ponad 10. Nie wiem które są bardziej miarodajne , ja robię te które jest mi najwygodniej (najprościej zrobić) , ale brak czasu niestety nie pozwala na razie na powtórzenie i tych prostych testów np :test równomierności.



Ale są też proste testy jak test serii który mówi :



Generator jest OK jeżeli (musimy liczby 1-49 zamienić na bity 0,1) kolejne bity nie tworzą serii dłuższych od 25.

To jest dla nie niezrozumiałe, zgodnie z RP to przy takiej ilości losowań jak 1mld x 6 liczb w każdym losowaniu i zamiana na bity to w takim ciągu bitów spokojnie seria 25 bitów=0 lub =1 może się zdarzyć.



Nie wiem które testy warto spróbować przeprowadzić, może Amadeusz ma narzędzia do testowania ?

2010-05-21 (12:31)

status Robal_36
Data rejestracji: 2010-02-28 00:00:00
Ilość postów: 4885

12415
wpis nr 326 377
[ CZCIONKA MONOSPACE ]

KURKA>>

Czemu, ma nie być \"dłuższej serii\" ?Co znaczy dłuższe? Czemu akurat 25 ?

I czym ma się różnić losowy od pseudolosowego ?

Kto o tym decyduje?

Czy przy, bez urazy, \"zabawie\" w 6/49 ma NIE BYĆ 14mln coś tam powtórzeń - (minus) efekty tunelowe, brzegowe itd itp

No, niby z jednej strony to (te 14xxxxxx) byłoby wynikiem IDEALNYM...



Jak to pytania, że tak powiem - nie za bardzo , nie ten poziom, bo piaskownica i przedszkole etc, to fuknij

ale delikatnie

proszę
2010-05-21 (12:34)

status KURKA
Data rejestracji: 2009-01-23 00:00:00
Ilość postów: 2551

4098
wpis nr 326 379
[ CZCIONKA MONOSPACE ]

Random ponoć ma najdłuższą serię = 17 a jest 32bitowy

Irand48 ma najdłuższa serię = 19 , jest chyba 48 bitowy



To od razu mówi, że przy użyciu tych generatorów nie uzyskamy ciągu 20 Orłów, choćbyśmy losowali do końca świata i jeden dzień dłużej



Do zastosowań edukacyjnych wystarcza generator jaki oferuje TurboPascal, ale jeżeli ktoś by chciał uczyć się dalej i pomagać sobie w walce z losem to jednak musi wiedzieć by nie wyciągać zbyt daleko idących wniosków.









2010-05-21 (14:22)

status KURKA
Data rejestracji: 2009-01-23 00:00:00
Ilość postów: 2551

4098
wpis nr 326 425
[ CZCIONKA MONOSPACE ]

Niestety ale jeden z testów mówi że wynik ma mieścić się w granicy od 9725 do 10275 a jest :



zero = 10088

jeden = 9912



zero = 10163

jeden = 9837



zero = 10096

jeden = 9904



zero = 10176

jeden = 9824



zero = 10153

jeden = 9847



zero = 10351

jeden = 9649



zero = 10152

jeden = 9848



zero = 10185

jeden = 9815



zero = 10190

jeden = 9810



zero = 10135

jeden = 9865



Na 10 prób jedna nie mieści się.

Po drugie wynik ten ma stałą tendencję , zer jest zawsze więcej.

Spróbuje przerobić nieco program.

2010-05-21 (14:28)

status KURKA
Data rejestracji: 2009-01-23 00:00:00
Ilość postów: 2551

4098
wpis nr 326 426
[ CZCIONKA MONOSPACE ]

zero = 10047

jeden = 9953



zero = 10062

jeden = 9938



zero = 9919

jeden = 10081



zero = 10094

jeden = 9906



zero = 9940

jeden = 10060



zero = 9967

jeden = 10033



zero = 9882

jeden = 10118



zero = 10154

jeden = 9846



zero = 9940

jeden = 10060



zero = 10072

jeden = 9928



Teraz jest super a to ciekawe ponieważ procedura LOS jest taka sama (natomiast zmieniłam mod49 na mod100) i ilość parzystych i nieparzystych w losowaniu z 49 liczb to był poprzedni test a obecny to ilość parzystych /nieparzystych w losowaniu z 100 liczb.
2010-05-21 (14:33)

status KURKA
Data rejestracji: 2009-01-23 00:00:00
Ilość postów: 2551

4098
wpis nr 326 427
[ CZCIONKA MONOSPACE ]

No to już sobie odpowiedziałam dlaczego pierwszy test wydał się zły



Na razie wygląda na to że proste testy generator przejdzie pomyślnie.



Nie wiem jakie testy próbować zrobić .

przykład z testem na długość serii do mnie nie przemawia, nie wiem dlaczego ktoś określił, że nie może być dłuższej serii niż 25 Orłów







2010-05-21 (15:37)

status starak
Data rejestracji: 2005-09-29 00:00:00
Ilość postów: 141

1269
wpis nr 326 449
[ CZCIONKA MONOSPACE ]

Witaj,Ktoś ustalił z sufitu, ponieważ 2 do 24 wyczerpuje bez powtórzeń z górą 13 983816 a reszta bezkrytycznie powtarza.Pozdrawiam
2010-05-21 (18:12)

status KURKA
Data rejestracji: 2009-01-23 00:00:00
Ilość postów: 2551

4098
wpis nr 326 478
[ CZCIONKA MONOSPACE ]

Wyjaśniło się odnośnie tych 25 orłów



Chodzi o to że w próbie 20 000 losowań nie może być 25 lub więcej orłów



Wyniki testowania generatora za pomocą najłatwiejszych testów:



http://wrzucacz.pl/file/5271274458025

2010-05-21 (18:33)

status Robal_36
Data rejestracji: 2010-02-28 00:00:00
Ilość postów: 4885

12415
wpis nr 326 482
[ CZCIONKA MONOSPACE ]

KURKA>>

2^23 >16 cośtamcośtam, o rety rety



Hmmm aż, sztuk pobrań, hmmm raz

hmmm

będzie lepiej, a przynajmniej,podobno ma być



Czy TurboP, to te narzędzie, które znać mogę z poczciwego dos-a ?

Jakieś komendy typu powtórz, stos, przesunięcie, to ta bajka ?

Czy konfabuluje coś ?

2010-05-21 (18:44)

status Tajemniczy Don Pedro
Data rejestracji: 2009-04-18 00:00:00
Ilość postów: 722

4474
wpis nr 326 483
[ CZCIONKA MONOSPACE ]

Brak czasu nie pozwala zbadać mi większej próbki.



Na próbce kilkudziesięciu pierwszych losowań generator ma tendencję wynajdywania niszowych /rzadkich w jakimś zakresie/ kombinacji.



Czyli jakby nieco udziwnia swój wybór w porównaniu z bębnowym /właściwie, to nie oglądałem losowań kilka lat i nie wiem, jaka obecnie jest maszyna/.



Potrzeba by przeliczyć większą próbkę i porównać, bo na takiej małej próbce test jest mocno niemiarodajny.



Udostępniłaś plik wykonywalny a nie ma pliku \".pas\"..
2010-05-22 (01:28)

status sindbad
Data rejestracji: 2008-10-13 00:00:00
Ilość postów: 20519

3794
wpis nr 326 614
[ CZCIONKA MONOSPACE ]

Moim zdaniem funkcja random() jest wystarczająca do zabawy z Lotto i nigdy nie szukałem innego generatora.
| Dodaj wpis w tym temacie | Spis tematów | Wyniki lottoStrona: 1 2 ... 9 10 11 ... 30 31
Wyślij wiadomość do admina