Skocz do zawartości
Forum Kopalni Wiedzy
KopalniaWiedzy.pl

Liczby pierwsze nie są rozłożone losowo?

Rekomendowane odpowiedzi

Ja skolei, jeżlei nie popełniłem nigdzie błędu. (wyniki skonfrontuję z wami), 

W niecałe 6 minut, wygenerowałem(w zasadzie to policzyłem) ostatnie 49 188 859 liczb pierwszych, czyli ekstrapolując (ale idę spać), 100 milionów powinienem pyknąć, w 8 minut (bo 4 minuty to koszt stały).

 

Ale to już jutro.

Są jakieś stronki gdzie poznam ile jest liczb pierwszych z jakiegoś zakresu liczb? to bym zweryfikował.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Co masz na myśli pisząc "ostatnie"?

 

 

(JEdnak nie śpię i liczę liczby pierwsze z zakresu 3 do 100 mld ;) )

 

Ostatnie mam na myśli to o czym pisał Jajcenty.

Czyli biorę long_max (dla mnie to signed), i lecę w dół.

i otrzymuję 49 kk liczb pierwszych, które są ostatnie z zakresu.

 

Czyli nie szukam ich z zakresu 0..do N.. tylko  od N do long_max (i Jajcenty postawił próg 100 milionów)

Bo od dołu (od zera) to zraz będę wiedział czy dobrze liczę, bo spodziewam się ich znaleźć około 4 miliardy (Tzn. pierwsze 4 miliardy liczb pierwszych) 

 

 

Innymi słowy, większych już nie znajdę bo mi się nie mieszczą w longu

[edit]

Ok, wygląda na to, że działa dobrze.

 

Znalezienie pierwszych 4,1 mld liczb pierwszych (czyli zaczynając od liczby 2) zajęło mi 39 minut i 16 sekund)

Już nie mam tych 8 minut, ale jestem prawie pewien, że zmieszczę się w 8 minutach do znalezienia 100 mln. ostatnich (z przedziału N do long_max) liczb pierwszych.

 

Po podaniu przez was czasów (bo jednak domniemam, że w C możecie być szybsi) zdecyduję czy wprowadzę moją mega koncepcję która jak domniemam, dość znacznie przyspieszy proces., 

Edytowane przez Afordancja

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Potwierdzam, liczby pierwsze nie są rozmieszczone losowo. Kilka miesięcy temu bawiłem się próbując "rozkminić" jakąś regułę rządzącą ich rozkładem i wydaje mi się że ją znalazłem. Wystarczy prosty zestaw funkcji okresowych i bazując na liczbie 2 jestem w stanie wygenerować kolejne liczby pierwsze. Inna kwestia to złożoność obliczeń potrzebnych do wygenerowania coraz większych liczb, ponieważ aby wygenerować liczby pierwsze mniejsze od k muszę znać wszystkie liczby pierwsze mniejsze od SQRT(k). Ta funkcja ma dość skomplikowany kształt, ale z pewnością nie ma nic wspólnego z losowością, choć na pierwszy rzut oka można takie wrażenie odnieść. Kształtem przypomina nieco zapis dźwięku, ciekawe jak by to brzmiało.
bez-nazwy.jpg

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

 

Innymi słowy, większych już nie znajdę bo mi się nie mieszczą w longu

Podaj proszę jaką największą liczbę znalazłeś?  Czasy jakie podałeś u mnie osiągam dla ulong.MaxValue/10. Coś mi tu nie gra.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Mój algorytm wolny  :(

W 88 i pół minuty mam wszystkie pierwsze poniżej 5e9 (234954223 sztuki w 4.5 minuty) i dzięki nim 218 sztuk "od góry". Największa 18446744073709551557, najmniejsza 18446744073709541621.

Pociesza mnie jedynie fakt, że to czas na bardzo słabym i3-2375M @ 1.5GHz + 6GB RAM

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Inna kwestia to złożoność obliczeń potrzebnych do wygenerowania coraz większych liczb, ponieważ aby wygenerować liczby pierwsze mniejsze od k muszę znać wszystkie liczby pierwsze mniejsze od SQRT(k).

 

To chyba dość oczywiste.

 

 

 

Wystarczy prosty zestaw funkcji okresowych i bazując na liczbie 2 jestem w stanie wygenerować kolejne liczby pierwsze.

A to już nie bardzo, bo skoro masz zestaw funkcji bazujących an liczbie 2 to po co Ci te poprzednie wyniki? Nie możesz ich wygenerować za pomocą tych funkcji?

 

Kształt funkcji może nie wygląda jak biały szum, ale nie wygląda na taki oczywisty.No ale wyglądanie to sobie mogę wsadzić ;)

 

 

 

Podaj proszę jaką największą liczbę znalazłeś?  Czasy jakie podałeś u mnie osiągam dla ulong.MaxValue/10. Coś mi tu nie gra.

 

hm..jeśli dobrze spojrzałem to największa z moich to 9223372036854775783.

 

Ostateczny wynik (trochę nie trafiłem, bo stop mam nie wg. znalezionych liczb, ale wg. zakresów szukania, a że jadę zawsze z dołu do góry, to nawet jak szukam od N do long_max, to N muszę podać).

 

Znalezionych największych (w zakresie do long_max signed)liczb pierwszych 98 369 463 (@Jajcenty, będziesz się czepiał czy tyle może być? :) ) w czasie 6 minut i 32 sekundy. 

 

Koszt stały programu(niezależnie ile i które, liczby pierwsze będę liczył)  to mniej więcej 4:25 minuty, jest dość nieoptymalny, ale olać. 

Nie stosowałem, żadnych bibliotek matematycznych oprócz sqr oczywiście ;)

Pozbyłem się praktycznie modulo (jest słabe).

 

Obstawiam, że mogę jeszcze podkręcić dokonując małych optymalizacji, dużo pokręcić (ale to już przeczucie), dość mocno zmieniając koncepcję (a trochę mi się nie chce).

Ostatecznie jeszcze widzę trzecią możliwość "optymalizacji" widzę możliwość przepisania tego na kartę graficzną :D (ale to było by już małe oszustwo).

 

[edit]

(Aby mieć wyniki w jednym miejscu)

 

Znalezienie pierwszych(czyli najmniejszych)  4,1 mld liczb pierwszych (czyli zaczynając od liczby 2 a kończąc  w granicach 100 mld-> dlatego około bo używam liczby 1024 w celach optymalizacyjnych ) zajęło mi 39 minut i 16 sekund)

 

Jeszcze testowo spróbuje znaleźć ostatnie (największe) nie wiem wyjdzie ale szacuję, że powyżej 2 miliardów (no chyba, że są w wyższych liczbach jakoś mocno rzadziej) i zobaczę ile mi wyjdzie, w każdym razie jadę taki sam zakres jak od dołu

N do max_long gdzie N = max_long - 100 * 1024*1024*1024.

Edytowane przez Afordancja

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

 

Znalezionych największych (w zakresie do long_max signed)liczb pierwszych 98 369 463 (@Jajcenty, będziesz się czepiał czy tyle może być? ) w czasie 6 minut i 32 sekundy.   

Dla mnie bomba. Widać że nie ma większych trudności z uzyskaniem 10e8 liczb pierwszych  rzędu 10e18. A oni zatrzymali się na 1oe7 liczb rzędu 10e12.

Teraz powinieneś im je posłać. :D

Ja ciągle płacę 47 sekund za prime'a, ale się nie poddaję :D Prze weekend coś wymyślę.

 

ttps://en.wikipedia...iki/Ulam_spiral

Tak, spirala Ulama miała być naocznym dowodem na nielosowości pierszych, ale tłumaczono mi że to tylko przypadek. Dla mnie wskazówką podejrzanego zachowania pierwszych jest twierdzenie Gaussa o liczbie dc417289d89a2bd2ac86e4179a3dcf35.png

Podejrzana sprawa :) 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Ostatenie "podsumowanie" z pierwszych testów.

 

Dwa zakresy sprawdzone

od 2 do około 100 miliardów ->4,1 mld liczb pierwszych czas 39 minut i 16 sekund.

od (long_max - około 100 miliardów)  do long_max -> 2,4 mld liczb pierwszych czas 78 minut i 59 sekund.

 

Na razie dalsze optymalizowanie czasowe odkładam na później (chyba, że się pojawi jakiś super czas :) ) .

 

A co zrobię:

1. Przeczytam z grubsza co zrobili

2. wezmę 5 zakresów. (każdy zakres 100 miliardów liczb,  a w każdym zakresie jak do mniemam, liczb pierwszych od 2,4 mld do 4,1 mld.)

zakresy będą w miarę równo rozłożone w zakresie od 2 do long_max. czyli na początku, ćwiartka, połówka, trzy czwarte i końcówka (tak to sobie wymyśliłem).

3. Przeprowadzę takie same statystyki ostatnich cyfr, ale też ostatnich cyfr dla X systemów zapisu (nie wiem jeszcze ile ich wezmę).

4. Nie wiem co z tym zrobię :D 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

A możesz jeszcze np. zrobić taką statystykę?

ile liczb pierwszych jest w zakresie:

1-1 mln

1 mln - 2 mln

2 mln - 3 mln

itd.?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

 

A możesz jeszcze np. zrobić taką statystykę? ile liczb pierwszych jest w zakresie: 1-1 mln 1 mln - 2 mln 2 mln - 3 mln itd.?

A okieno może wynosić miliard? a najlepiej okienko 1024*1024*1024 (chociaż nie wiem czy to nie zaszłość w moim kodzie ;) jak optymalizowałem modulo, sprawdzę)

 

Tzn. mogę i milion, parę ifów więcej, ale dla okienka miliard już to liczę jako efekt uboczny (testowałem coś i mi zostało )

 

Bo generalnie to 

https://primes.utm.edu/howmany.html

 

Jak weryfikowałem czy mi dobrze szuka to sprawdzałem czy się zgadza z tą tabelka na dole.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

 Nie tędy droga. :(

 

            do
            {
                if (Number % 2 == 0) continue;
                if (Number % 3 == 0) continue;
                if (Number % 5 == 0) continue;
                if (Number % 7 == 0) continue;
                if (Number % 9 == 0) continue;
 
                for (ulong dvd = 11; dvd < Math.Sqrt(Number) + 2; dvd += 2)
                {
                    if (Number % dvd == 0)
                        goto NotPrime;
                }
                file.WriteLine(Number.ToString());
                howMuch--;
 
            NotPrime: continue;
 
            } while (--Number > 0 && howMuch > 0);
 
 
 

 

Ojej masakra....

Algorytm w stylu "brute force" z najgorszą z możliwych dla procesorów funkcji:

dzielenia (czy tam reszty wszystko jedno) :P

 

https://pl.wikipedia.org/wiki/Sito_Atkina

 

Podobny patent można zastosować dla liczb zaprzyjaźnionych.. Proste w stworzeniu sito Erastotenesa niestety wymagało by kosmicznych ilości pamięci a ona do szybkich nie należy.. Pozostaje też wykorzystanie OpenCL(na GPU) w teorii zarzucasz circa 1000 danych do 1000 procesorów strumieniowych, jedną instrukcją otrzymujesz 1000 wyników. Biorąc pod uwagę że taktowanych ok 1GHz wychodzi 1THz procek ;)

W pamięci karty graficznej zmieści się z powodzeniem cała tabelka liczb 2^32

Myśle że można by zejść poniżej.. hm.. 5 sekund? 

Nie przychodzi mi jednak do głowy jak powyższe zastosować dla 2^64 zwyczajnie nie mieści mi się w głowie...

Im dalej w las tym trudniej.

 

W sumie to nieprzypadkowość liczb pierwszych jest całkiem logiczna, skoro całkiem liniowe funkcje - podzielność przez 2,3,4,5,6,7,8,9,10 itd mają stałe okresy powtarzalności a każdy kolejny to w zasadzie harmoniczne poprzednich to reszta siłą rzeczy "resztki" powinny mieć jakieś cechy okresowości i czegoś na kształt spirali. (Linki ex nihillo) Z drugiej strony jeśli narysować przebieg sinusoidy, w kolejnym okresie sumy z jej harmoniczną z kolejną i kolejną i w miare postępu czasu dodawać harmonicznych czyli niby pozostających w zależności to reszta niby będzie jakoś tam sumą stałych zależności ale jednak realnie całkiem losowa i z każdą kolejną liczbą będzie niepowtarzalną. Spirala utkana z resztek.

Można by jedynie wyliczyć trend.. Dla Pi chyba nie można? Ale czy pierwsze są czy nie są rozłożone losowo.. no realnie rzecz biorąc jednak spełniają cechy losowości.  W dodatku chyba(zgaduje) bardziej losowe Pi jednak łatwiej obliczać niż pierwsze, w dodatku Pi można ładnie rozłożyć na wątki? Łatwiej czy nie, pierwszych nie można obliczyć prostym wzorem na karcioszce i bach.. 

 

Nie wiem po co prowadzone są nad nimi badania, sądzę że to ma bardzo bliski związek z kryptografią i ewentualnym przyspieszeniem rozszyfrowywania dla niesymetrycznego klucza..

 

Prime95 - można benchmarkować własne algorytmy :)

http://www.mersenne.org/download/

Edytowane przez Stanley

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Proste w stworzeniu sito Erastotenesa niestety wymagało by kosmicznych ilości pamięci

Ja stosuje jakby tak patrzeć sito Erastotelesa-Afordancja ;) , i pamięciowo daję radę.(I czasowo wydaje mi się na ten moment też)

 

 

 

 

jedną instrukcją otrzymujesz 1000 wyników biorąc pod uwagę że taktowanych ok 1GHz wychodzi 1THz procek

 

hm... dawno nie pisalem pod GPU, ale coś mi się wydaje,że w praktyce to tak będzie daleko od 1Thz .

 

 

 

W pamięci karty graficznej zmieści się z powodzeniem cała tabelka liczb 2^32 

Dla 2^32, to i Prockiem jest banał i szkoda nawet zabierać się za jakieś karty graficzne.

 

 

 

 

Nie przychodzi mi jednak do głowy jak powyższe zastosować dla 2^64 zwyczajnie nie mieści mi się w głowie..

Mi przychodzi tak trochę, jak zastosować "moje" sito na GPU, ale chyba aż takiego parcia nie mam. 

 

ale z tym sitem atkina to mnie zagięło, muszę porównać praktyczną wydajność mojego kodu z tym algorytmem, jeżeli przegram znacznie, to wrażam mój plan mega optymalizacji :D

[edit]

No dobra już widzę, że nie jest hop siup, albo wziąlem jakąś kiepską  implementację tego algorytmu, bo chce abym stworzył tablicę dla wszystkich badanych liczb, a chciałbym teścik dla 100 mld. zrobić

Edytowane przez Afordancja

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

 

Ojej masakra....

Bo nie o to chodzi by złapać króliczka lecz by gonić go. Tak formalnie to Astro podał rozwiązanie. http://primesieve.org/

Tylko brać i generować, ale gdzie tu zabawa?

 

Update: Niechętnie dodałem dodałem do Erastotenesa pregenerowaną  small prime table[4096]. Ta tablica jest pierwsza do sprawdzania podzielności.

Co ciekawe jej rozmiar wydaje się nie mieć dużego wpływu. 

 

jedna liczba pierwsza kosztuje teraz średnio 26 sekund (było 47) / 2.6 sekundy per 64 bitowy integer. 

Wynik (timespan, prime)

00:00:26.4980836 18446744073709551557
00:00:24.9163866 18446744073709551533
00:00:24.9338560 18446744073709551521
00:01:12.1850855 18446744073709551437 !!! dziura na 84 liczby
00:00:24.6580624 18446744073709551427
00:00:36.9004336 18446744073709551359
00:00:24.6210776 18446744073709551337
00:00:50.9192274 18446744073709551293
00:00:24.5627875 18446744073709551263
00:00:24.8693882 18446744073709551253

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
jedna liczba pierwsza kosztuje teraz średnio 26 sekund (było 47) / 2.6 sekundy per 64 bitowy integer. 

 

hm..a możesz podać czasy dla signed? Ciekaw jestem jak to zmieni Twoje wyniki.

 

Bez tablicy (ja mam taką, ale ona  jest połową mojego rozwiązania, bo tylko dzielac przez liczby pierwsze prędkośc też nie powalała, ale była znacznie większa niż 26 sekund, czy nawet 2.6 sekundy) z liczbami pierwszymi z zakresu 2..int_max, nie dasz rady nawet się zbliżyć (tą metodą) do sensownych wyników. 

[edit]

 

Chyba lepszą metodą pomiaru jest ile liczb sprawdzasz na jednoskę czasu. no bo przecież liczby nie sa równo rozłożone.

PS.

Sito atkina dla małych liczb, naprawdę wymiata, wow.(zaraz sprawdzę czy go użyję (czy ma sens) jako mój inicjalizator :D)

[kolejny edit]

 

pfff. nie użyję

57 sekund do 1:13, dla Atkina. (a jechałem na  moich "tablicach" dla longów.

Edytowane przez Afordancja

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

 

hm..a możesz podać czasy dla signed? Ciekaw jestem jak to zmieni Twoje wyniki.
 

 

dla long: 29 sek na pierwszą; 1,45 liczby/sek

 

dla long akurat na początku są jakieś duże przerwy między pierwszymi

00:00:21.1394624 9223372036854775783
00:00:44.2416246 9223372036854775643 *
00:00:47.4166287 9223372036854775549 *
00:00:49.0677030 9223372036854775507 *
00:00:44.9756219 9223372036854775433 *
00:00:21.1411755 9223372036854775421
 

 

jeśli odrzucić odstające wyniki to mamy jakieś 21sekund na pierwszą.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość Astro

 

 

Bo nie o to chodzi by złapać króliczka lecz by gonić go

 

Jajcenty, nasze jaźnie rzeczywiście są coraz bliżej jednej całości.

 

 

 

Ojej masakra....

 

Stanley, "niby" faktycznie, ale nie złapałeś dobrej zabawy? Pamiętam jak z zacięciem rysowałeś rozwiązanie pewnego problemu z ośmiokątem… Tak mnie cieszył wówczas Twój umysł. Szkoda, że nie chcesz się przyłączyć do zabawy, bo to bardzo dobra i odświeżająca dla umysłu rzecz. Spieszmy się kochać problemy intelektualne, tak szybko odchodzą…

 

Afordancja: edycja posta z powodów takiego, a nie innego właśnie edytora na KW powoduje dziwne zachowania jak rozstrzelenie (więcej nawet niż na śmierć) Twojego tekstu. Jak edytujesz, to dla czytelności powycinaj jednak te odstępy pionowe (wertykalne, jak wolą niektórzy ;)) – będzie wyglądać ładniej i zaspokoi oczekiwania estetów. ;)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Tak, spirala Ulama miała być naocznym dowodem na nielosowości pierszych, ale tłumaczono mi że to tylko przypadek.

 

Nie bawiłem się nigdy jakoś specjalnie pierwszymi, ale kiedy patrzę na sprawę "z oddali" też nie wydaje mi się, żeby to był rozkład całkiem losowy. Raczej mocno skomplikowany układ rozkładów nielosowych. Spirala Ulama i inne podobne zabawki to w sumie przekształcenia układu współrzędnych. Jeśli wychodzą tam jakieś regularności, to jest to chyba dosyć wyraźny ślad nielosowości. Albo jakaś dziwna własność "losu", który startując od jakiejś reguły cuda wyczynia.

 

Nie wiem czy słuszne jest traktowanie liczb pierwszych jako jednolitej masy. Być może dałoby się je podzielić na skończoną ilość reguł (dla niektórych są) w przyjętych skończonych przedziałach. W takim przypadku całość też byłaby (chyba) nielosowa. To taka durna hipotezka :D Pęta mi się pod czaszką jeszcze kilka pomysłów, m.in. zabawy z układami współrzędnych, ale na razie są mocno niekonkretne.

 

Jak wiesz, losowość lubię, wcale  by mnie nie zmartwiła losowość rozkładu pierwszych, ale czuję tu jakiś paskudny smrodek determinizmu :D;)

Edytowane przez ex nihilo

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Z drugiej strony jeśli narysować przebieg sinusoidy, w kolejnym okresie sumy z jej harmoniczną z kolejną i kolejną i w miare postępu czasu dodawać harmonicznych czyli niby pozostających w zależności to reszta niby będzie jakoś tam sumą stałych zależności ale jednak realnie całkiem losowa i z każdą kolejną liczbą będzie niepowtarzalną. Spirala utkana z resztek.

 

 

Dokładnie na to samo wpadłem. Wszystkie liczby nie będące liczbami pierwszymi są po prostu wielokrotnością jakiejś liczby pierwszej. Jeśli posłużymy się funkcją sinus do wyznaczenia kolejnych harmonicznych to te liczby które pozostaną będą liczbami pierwszymi.

Np. P1(x):=sin(((1 / 2 * π) * x))  wyznaczy wszystkie wielokrotności 2, P2(x):=sin(((1 / 3 * π) * x)) wielokrotności 3 itd. Kiedy nałożymy te funkcje na siebie to oczywistym będzie to, że liczby pierwsze nie są liczbami losowymi, ale po prostu są tym co pozostaje po wyznaczeniu wszystkich wielokrotności mniejszych liczb pierwszych. Nie jest to nic odkrywczego, bo na tej właśnie zasadzie opiera się sito Eratostenesa, ale w graficznej formie jest to bardziej czytelne.

Kiedy posłużymy się funkcją F(x):=sin(((1 / 2 * π) * x))*sin(((1 / 3 * π) * x))*sin(((1 / 5 * π) * x))*sin(((1 / 7 * π) * x)) w której użyjemy liczb pierwszych: {2,3,5,7}, to możemy wyznaczyć wszystkie liczby pierwsze w zakresie od 7 do (11^2)-1 (11 - kolejna liczba pierwsza). Wszystkie liczby całkowite w tym zakresie dla których ta funkcja jest różna od 0 są liczbami pierwszymi.Dodając kolejne człony do tej funkcji z kolejnymi liczbami pierwszymi możemy powiększyć zakres.

 

https://www.geogebra.org/apps/?id=xCkbuqRU

Edytowane przez Eco_PL

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Też jestem amatorem, drzewiej napisało mi się:

http://4programmers.net/Delphi/Gotowce/Liczby_pierwsze_-_szybki_algorytm

dziś zrobiłem kilka statystyk od 2^20 do dwudziestu kilku, dla dziesiętnego ale strzeliłem dla kilku innych,. (małe bo działaly gdy wychodziłem na papierosa)

Jest coś dziwnego, ostatnia leży przy średniej ale następstwo jakoś nie

Ale swoją drogą, potrafiłem policzyć dowolną średnią wszystkich liczb wymiernych mniejszych od 1

Zabawnie, numercznie pięknie zbieżne, a każda inna

Jakieś licho w tym tkwi: )

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

fajny macie tu konkurs.

w programowaniu jestem na takim poziomie że raczej nie mamy o czym gadać :D ale wytłumaczcie mi podstawę tego artykułu i waszego konkursu, a mianowicie gdzie Wy widzicie nielosowość? ja bym zobaczył nielosowość jakby było powiedziane np. że jeśli liczba kończy się 9 to następna na 100% zakończy się na 3, i to nie w jakimś tam przedziale jak w artykule tylko od 0 do ever. a w tym przypadku równie dobrze można zająć się badaniem losowości wygranych numerów totka i też pewnie były by ciekawe wyniki analizy. i można by zrobić krzywe losowości, ale co z tego jak po paru kolejnych losowaniach nasz model będzie coraz bardziej odstawał od faktycznych danych. mozna zrobić korektę ale po następnych losowaniach będzie to samo.

moim zdaniem opisywany problem(a raczej jego brak) to idealny szum biały w zakresie 0-ever. a jeśli bierze się tylko mały fragment tego nieskończonego zbioru to zawsze się znajdzie jakąś pozorną regularność, im ten zakres będziemy zawężać tym bardziej cudowne własności znajdziemy. aż zobaczymy boga i będziemy bić pokłony przed wydrukiem liczby pierwszej :) przypomina mi to algorytm postępowania grupy społecznej, która w usyfionej(za przeproszeniem) szybie widzi obraz Maryji. ja tam widzę losową plamę brudu.....

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

 

fajny macie tu konkurs

 

Trochę trąci Pi - Darrena Aronofsky'ego ;)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

 

 

Trochę trąci Pi - Darrena Aronofsky'ego

 

no też skojarzyłem temat z tym filmem :)

tak samo w liczbach pierwszych jak i kolejnych cyferkach pi można doszukiwać się mistycyzmu. a dla nauki taka wiedza chyba nie ma żadnej wartości.

Jeszcze wczoraj myślałem że te fluktuacje prawdopodobieństw w pewnych przedziałach mają znaczenie dla łowców tych liczb bo mogą przerobić algorytm aby dzielił w kolejności najwyższych prawdopodobieństw. no ale przecież nikt chyba nie zaczyna zabawy od początku? tylko zaczyna od największej już poznanej liczby?

a jeśli niema tu żadnej stałości to przyszłości(nowych liczb) nie pomoże to znaleźć.

równie dobre są wszystkie algorytmy analizy technicznej na giełdzie - wspaniale tłumaczą(i nigdy się nie mylą) to co zaszło od początku notowań do teraz. ale żaden z nich nie przewidzi kursu jutrzejszego. jutro słupki analizy znowu wspaniale będą się prezentować ale dopiero jak algorytm dostanie kurs jutrzejszy...

 

a co do konkursu to z chęcią bym przepisał wasze pomysły na asemblera i zoptymalizował pod konkretny procesor i zapuścił na linuxie bo windows to nieporozumienie dla takich obliczeń, ale ostatnio cokolwiek robiłem na x86 486DX :D nie mam czasu ani już chyba głowy żeby zgłębiać architekturę nowoczesnego procka i samego assemblera...

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się

×