Aktualności:

Nasz kanał IRC - Porozmawiaj z nami.

Menu główne

własny projekt

Zaczęty przez mariotti, 25 Maj 2012, 23:40

mariotti

Cytat: legis w 23 Czerwiec 2012, 23:23
jednego nie kumam jeśli za każdym razem wartości są losowe to jak można sprawdzić czy program się uczy,
Sprawdzić najlepiej można przez rozegranie wielu gier na różnorodny czas, z różnorodnymi
przeciwnikami, z różnorodnym czynnikiem losowym, z różnorodną książką debiutową...

Cytat: legis w 23 Czerwiec 2012, 23:23
jeśli zagramy 100 razy a potem raz jeszcze 100 te same partie i kolejny raz 100 tych samych partii to stwierdzimy że program się uczy lub nie jednoznacznie.
Zależy. Jeśli wyeliminujemy czynnik losowy i gramy zawsze w takich samych warunkach to
owszem można stwierdzić jednoznacznie czy się uczy (chociaż gry są za każdym razem inne,
zmieniają się z powodu uczenia). Natomiast gdy testujemy w warunkach innych niż było
uczenie, to często okazuje się że innych warunkach gra gorzej.

Cytat: legis w 23 Czerwiec 2012, 23:23
Przy milionach możliwych rozgrywek za każdym razem innych losowych chyba trudno to stwierdzić.
Jeśli rzucisz trzy razy monetą i trzy razy wypadnie orzeł to nie można wnioskować że orzeł
wypada zawsze. Dlaczego nie można? Dlatego że było za mało rzutów. Dopiero jakbyś rzucił
nią miliony razy i zawsze by wypadł orzeł (albo chociaż częściej) to byś mógł podejrzewać
jakąś prawidłowość. Rozgrywając miliony gier szuka się prawidłowości pt "gra lepiej".

Pozdrawiam

goofyx

Może jest już za późno dla mnie na logiczne myślenie, ale nie w twoim poście nie wyczytałem odpowiedzi na moje pytania.

1. hmm, czyli wolontariusze mają liczyć genialny algorytm uczący który sobie wybierzesz i przygotujesz? Piszesz, że przetestowałeś dziesiątki algorytmów, proponujesz kolejne dziesiątki <- to na czym w tej chwili stoisz? Chodzi mi o etap projektu <- projektujesz na papierze, piszesz program czy uruchamiasz projekt boinc?
2. ilość gier ma milion cyfr? <- a ile taka jedna gra według ciebie może trwać 5 minut, 5 godzin, 5 dni, a może miesięcy czy lat? Może w ten sposób mi napisz żebym miał pojęcie o czasie pracy jaki jest potrzebny dla np.: jednego procesora z jednym wątkiem. Czy taki procesor potrzebuje np.: 100 lat żeby ci pomóc?



mariotti

Cytat: goofyx w 24 Czerwiec 2012, 01:39
Może jest już za późno dla mnie na logiczne myślenie, ale nie w twoim poście nie wyczytałem odpowiedzi na moje pytania.

1. hmm, czyli wolontariusze mają liczyć genialny algorytm uczący który sobie wybierzesz i przygotujesz? Piszesz, że przetestowałeś dziesiątki algorytmów, proponujesz kolejne dziesiątki <- to na czym w tej chwili stoisz? Chodzi mi o etap projektu <- projektujesz na papierze, piszesz program czy uruchamiasz projekt boinc?
2. ilość gier ma milion cyfr? <- a ile taka jedna gra według ciebie może trwać 5 minut, 5 godzin, 5 dni, a może miesięcy czy lat? Może w ten sposób mi napisz żebym miał pojęcie o czasie pracy jaki jest potrzebny dla np.: jednego procesora z jednym wątkiem. Czy taki procesor potrzebuje np.: 100 lat żeby ci pomóc?

Hmmmm

1. Piszę programy i testuję na komputerach które mam w domu.

2. Gdy rozmyślam nad algorytmami to także używam kartki i ołówka. Ale nie wiem
    dlaczego chcesz to wiedzieć.

3. Stoję na tym o czym pisałem, czyli myślę co uruchomić w BOINC. Idę w
    tamtych dwóch kierunkach o których pisałem:
   a) ogólny algorytm (np. genetyczny )
   b) algorytm specjalistyczny
ad 3.a) Wszystko co wiem na ten temat, wskazuje na to że nawet jakby użyć miliona
              procesorów i każdy by liczył milion lat to tego zadania nawet by nie rozpoczęły.
              Ale to nie znaczy że jutro nie będę miał na ten temat innego zdania i nie będę
             wiedział czegoś nowego - jak pisałem, pracuję nad tym.
ad 3.b) mam zaimplementowane i sprawdzone na domowych komputerach dwie
             metody które przynosiły (w swoich ograniczeniach) dobre wyniki. Jedna
             metoda to magnetyczna, druga to aproksymacja funkcji. Ponadto przez
            ostatnie 2-3 tygodnie sprawdzałem 2 kolejne metody, też zaimplementowałem i
            uruchamiam na domowych komputerach. Te dwie metody przynoszą dziwne
            rezultaty, jeszcze nie wiem co o nich myśleć.

4. Dla BOINC nic gotowego nie mam, dotarłem gdzieś do początkowego etapu
    konfigurowania serwera i kompilacji przykładowych programów. Czyli mam kilka wersji
    programu szachowego, kilkanaście programów do ich uczenia i uruchamiam to na
    domowych komputerach.

Pytasz o czas potrzebny do obliczeń. Każda metoda ma inne wymagania.
Pracuję głównie nad tym, aby w rozsądnym czasie zapewnić lepsze
rezultaty. Rozsądny czas to dla mnie to sto lat ciągłych obliczeń na 10tys
rdzeni.

Algorytm genetyczny wymaga koszmarnego czasu, nawet wszystkie komputery
z sieci BOINC nie dadzą rady. Jedna iteracja ucząca trwa powiedzmy 50-200 lat
obliczeń na jednym rdzeniu. Iteracji trzeba zrobić milion aby ledwo rozpocząć. Mowa
tutaj o naiwnym algorytmie genetycznym. Jedną z rzeczy nad jaką pracuję
to właśnie uzdatnienie naiwnego algorytmu genetycznego. Jak na razie nie mam
konkretnych (tych uzdatnionych) pomysłów, a tym bardziej implementacji.

Metoda magnetyczna na jednym komputerze (sześć rdzeni) dawała mi ładne wyniki
np. po kilku miesiącach obliczeń. Niestety metoda magnetyczna ma pewne ograniczenia i
ich nawet teoretycznie nie może przeskoczyć. Uzyskamy dzięki niej przeciętny
program, nie wiem czy warto się w to angażować. Ponad to metoda magnetyczna
ciężko się zrównolegla. Użycie więcej niż 50 komputerów dużo nie daje.

Metody bazujące na aproksymacji funkcji dawały mi ciekawe wyniki już po kilku godzinach
obliczeń, niestety mają jeszcze większe ograniczenia niż metoda magnetyczna i są
mniej dokładne od niej. Kilka postów wcześniej pisałem o tym jak można tą metodę
dostosować do obliczeń rozproszonych, jednak cały czas nie przeskakując ograniczeń.

Czyli tak w dwóch słowach, mam kilka takich rzeczy które działają szybko, ale dają
słabe wynik. Boję się ich wrzucać do boinc dlatego właśnie że dają słabe wyniki.
Mam też coś co daje dobre wyniki, ale wymaga koszmarnej mocy obliczeniowej, tego
boję się wrzucać do BOINC właśnie dlatego że się nie doczekamy rezultatów.
Trzeba czegoś co działa szybko i skutecznie ;-)

Pozdrawiam





Rysiu

Cytat: goofyx w 24 Czerwiec 2012, 01:39
2. ilość gier ma milion cyfr? <- a ile taka jedna gra według ciebie może trwać 5 minut, 5 godzin, 5 dni, a może miesięcy czy lat? Może w ten sposób mi napisz żebym miał pojęcie o czasie pracy jaki jest potrzebny dla np.: jednego procesora z jednym wątkiem. Czy taki procesor potrzebuje np.: 100 lat żeby ci pomóc?
Nie 100 lat, nie 1 000 lat ani też 10 000 lat.

Bez względu na procesory (we współczesnym rozumieniu) potrzebuje więcej niż dotychczasowy czas życia wszechświata. Oczywiście dla osiągnięcia ideału.

goofyx

ad <- 1
A może wrzucisz te programy jako pod projekty w swoim projekcie boinc <- możesz wtedy podać linka na forum i kilku ludzi na pewno ci pomoże w obliczeniach <- mam do dyspozycji tak jak pisałem ok.20 dni pracy CPU na dobę więc z chęcią dorzucę coś od siebie. Po co masz czekać 2-3 tygodnie na wyniki skoro można to przerobić w kilka godzin lub dni. Pierwsze możesz dopuścić do projektu np.: 20-25 osób i sam zobaczysz czy ich wkład coś dla ciebie daje i wtedy możesz wyznaczyć sobie kierunek dalszego rozwoju projektu. Przynajmniej ja bym tak zrobił gdybym miał gotowy pomysł na projekt boinc

ad <- 2
używanie kartki papieru jest jak najbardziej w porządku <- mnie bardziej chodziło na czym rzeczywiście stoisz

ad <- 3a
warto kiedyś w ogóle zacząć tzn.: wrzuć algorytm jako pod projekt i niech żyje własnym życiem i niech zbiera wyniki <- może dzięki temu po np.:2-3 miesiącach pozwolili ci to opracować coś lepszego. Gdyby każdy miał podejście, że projekt boinc potrzebuje XXXX lat na liczenie i się poddawał to nie byłoby żadnych projektów.
Przykładowo projekty szukania liczb pierwszych chyba nigdy się nie skończą cały czas szukają następnych liczb. Albo Seti, który ma nieograniczony czas działania bo oni raczej będą szukać sygnałów radiowych przez następne pokolenia.
Nie warto stać w miejscu skoro w łatwy sposób możesz wykorzystać potężny potencjał mocy obliczeniowej boinc.

ad <- 3b
to co wyżej, aż do znudzenia <- wrzuć jako pod projekty. Teraz masz dziwne wyniki, a jak przeliczy to 1000 procków to możesz dojść do innych rezultatów

ad <- 4
może się mylę, ale może teraz skup się nad uruchomieniem projektu i przerzuceniem tych różnych wersji programów i algorytmów właśnie do niego

ad <- 5
"sto lat ciągłych obliczeń na 10tyś rdzeni" <- ciężko to nazwać rozsądnym czasem ;) ale może warto kiedyś rozpocząć kiedyś tą walkę, a może się okazać że zakończysz obliczenia jeszcze za swojego życia

goofyx

Cytat: Rysiu w 24 Czerwiec 2012, 02:56
Cytat: goofyx w 24 Czerwiec 2012, 01:39
2. ilość gier ma milion cyfr? <- a ile taka jedna gra według ciebie może trwać 5 minut, 5 godzin, 5 dni, a może miesięcy czy lat? Może w ten sposób mi napisz żebym miał pojęcie o czasie pracy jaki jest potrzebny dla np.: jednego procesora z jednym wątkiem. Czy taki procesor potrzebuje np.: 100 lat żeby ci pomóc?
Nie 100 lat, nie 1 000 lat ani też 10 000 lat.

Bez względu na procesory (we współczesnym rozumieniu) potrzebuje więcej niż dotychczasowy czas życia wszechświata. Oczywiście dla osiągnięcia ideału.
w porządku ja to naprawdę rozumiem, ale jeśli nie rozpoczniesz obliczeń to będziesz stał w miejscu <- może warto zrobić pierwszy krok na tej długiej drodze.
tak jak pisałem może dzięki wynikom za kilka miesięcy ktoś wpadnie na genialny pomysł, który skróci czas obliczeń (lub czas uczenia się) nawet o 50%.

mariotti

#166
Cytat: goofyx w 24 Czerwiec 2012, 03:03
ad <- 1
A może wrzucisz te programy jako pod projekty w swoim projekcie boinc <- możesz wtedy podać linka na forum i kilku ludzi na pewno ci pomoże w obliczeniach <- mam do dyspozycji tak jak pisałem ok.20 dni pracy CPU na dobę więc z chęcią dorzucę coś od siebie. Po co masz czekać 2-3 tygodnie na wyniki skoro można to przerobić w kilka godzin lub dni. Pierwsze możesz dopuścić do projektu np.: 20-25 osób i sam zobaczysz czy ich wkład coś dla ciebie daje i wtedy możesz wyznaczyć sobie kierunek dalszego rozwoju projektu. Przynajmniej ja bym tak zrobił gdybym miał gotowy pomysł na projekt boinc
Niby mogę jakiś projekt wrzucić, ale jeden, bo na wszystkie to bym potrzebował ze 3 lata :)
Można sieć BOINC potraktować jako źródło danych uczących, a żeby było w tym trochę tego
całego kolorytu, to potem danymi można karmić sztuczną sieć neuronową. A masz Linuxa-64bit
do obliczeń? :D Nie wiem czy będzie mi się chciało portować przeciętny program na wszystkie
platformy. Na takim projekcie powinniśmy zaobserwować proces uczenia. Program zacznie
od zera, będzie wykonywał przypadkowe ruchy jak dziecko. Potem będzie grał lepiej, niestety
gdy robiłem wcześniej takie eksperymenty, to nigdy nie osiągał rewelacyjnego poziomu. Co
gorsza, w miarę uczenia spadała umiejętność gry. Swoje optimum osiągał gdzieś pomiędzy
początkiem a końcem, nigdy w tej metodzie nie zaobserwowałem stabilnego, ciągłego
wzrostu.


Cytat: goofyx w 24 Czerwiec 2012, 03:03
ad <- 3a
warto kiedyś w ogóle zacząć tzn.: wrzuć algorytm jako pod projekt i niech żyje własnym życiem i niech zbiera wyniki <- może dzięki temu po np.:2-3 miesiącach pozwolili ci to opracować coś lepszego. Gdyby każdy miał podejście, że projekt boinc potrzebuje XXXX lat na liczenie i się poddawał to nie byłoby żadnych projektów.
Przykładowo projekty szukania liczb pierwszych chyba nigdy się nie skończą cały czas szukają następnych liczb. Albo Seti, który ma nieograniczony czas działania bo oni raczej będą szukać sygnałów radiowych przez następne pokolenia.
Nie warto stać w miejscu skoro w łatwy sposób możesz wykorzystać potężny potencjał mocy obliczeniowej boinc.
Na pewno masz rację co do tego że inne projekty też są zaplanowane na ogromną ilość lat.


Cytat: goofyx w 24 Czerwiec 2012, 03:03
ad <- 3b
to co wyżej, aż do znudzenia <- wrzuć jako pod projekty. Teraz masz dziwne wyniki, a jak przeliczy to 1000 procków to możesz dojść do innych rezultatów
By musiał mieć dobre (reprezentatywne) dane uczące. Zwiększanie ilości danych nie
zawsze oznacza że będą bardziej reprezentatywne. Może zamiast tracić czas na
wrzucanie projektu do sieci, lepiej jednak się zastanowić jak pozyskać reprezentatywny
zbiór danych?

Cytat: goofyx w 24 Czerwiec 2012, 03:03
ad <- 4
może się mylę, ale może teraz skup się nad uruchomieniem projektu i przerzuceniem tych różnych wersji programów i algorytmów właśnie do niego
Niestety możesz się mylić. Wielkie rzeczy dzieją się dzięki przemyśleniom, a komputery
to tylko szybkie liczydła. Niemniej można coś wrzucić tak dla hecy ;-)


Cytat: goofyx w 24 Czerwiec 2012, 03:03
ad <- 5
"sto lat ciągłych obliczeń na 10tyś rdzeni" <- ciężko to nazwać rozsądnym czasem ;) ale może warto kiedyś rozpocząć kiedyś tą walkę, a może się okazać że zakończysz obliczenia jeszcze za swojego życia
To jest rozsądny czas, pierwsze wyniki byłby po roku. Potem program np.
co 3 lata wskakiwał by na kolejną pozycję w światowym rankingu - marzenia :)

Pozdrawiam


goofyx

Linux 64-bity to nie problem ;)

krzyszp

1. Spora grupa tutaj obecnych ma masę sprzętu działającego na Lin64 - ja mam z 12 rdzeni :)
2. Z tego co pamiętam i rozumiem (ale mogę kompletnie się mylić) w algorytmach genetycznych progres nie postępuje liniowo wraz z przyrostem ilości obliczeń, ale po osiągnięciu pewnej "masy krytycznej" następuje jakby przejście na wyższy poziom - mylę się?

Fajne zegarki :)
Należę do drużyny BOINC@Poland
 Moja wizytówka

goofyx

Cytat: krzyszp w 24 Czerwiec 2012, 12:11
1. Spora grupa tutaj obecnych ma masę sprzętu działającego na Lin64 - ja mam z 12 rdzeni :)
2. Z tego co pamiętam i rozumiem (ale mogę kompletnie się mylić) w algorytmach genetycznych progres nie postępuje liniowo wraz z przyrostem ilości obliczeń, ale po osiągnięciu pewnej "masy krytycznej" następuje jakby przejście na wyższy poziom - mylę się?
ad <- 1
dokładnie :) a nawet jak coś to postawienie Lin64 nawet dla takiego linuksowego beztalencia jak ja nie jest problemem ;) więc to nie jest argument przeciw uruchomieniu projektu do testów

ad <- 2
można to prosto i w miarę szybko sprawdzić właśnie dzięki projektowi boinc <- zaś nudzę ;) ale taka jest prawda

Troll81

Na twoim miejscu odpalałbym projekt. Najwyżej twym wnioskiem będzie że ten a ten algorytm jest zbyt wymagający dla obliczeń rozproszonych. to też jakaś wiedza. ktos inny kto będzie chciał coś robić w tym temacie  będzie wiedział która droga nie iść....

goofyx

Cytat: Troll81 w 24 Czerwiec 2012, 13:12
Na twoim miejscu odpalałbym projekt. Najwyżej twym wnioskiem będzie że ten a ten algorytm jest zbyt wymagający dla obliczeń rozproszonych. to też jakaś wiedza. ktos inny kto będzie chciał coś robić w tym temacie  będzie wiedział która droga nie iść....
no cóż <- nic dodać nic ująć :)

mariotti

Cytat: krzyszp w 24 Czerwiec 2012, 12:11
1. Spora grupa tutaj obecnych ma masę sprzętu działającego na Lin64 - ja mam z 12 rdzeni :)
2. Z tego co pamiętam i rozumiem (ale mogę kompletnie się mylić) w algorytmach genetycznych progres nie postępuje liniowo wraz z przyrostem ilości obliczeń, ale po osiągnięciu pewnej "masy krytycznej" następuje jakby przejście na wyższy poziom - mylę się?

1) Fajnie że jest Linux64, mam nadzieję że niedługo będziemy testować.

2) Jest masa odmian algorytmów genetycznych/ewolucyjnych. Każdy ma inne właściwości. To o
     czym wyżej pisałem że następuje regres po 'przeuczeniu' ma inną naturę. Problemy biorą
     się prawdopodobnie z dwóch powodów: zły model i niereprezentatywne dane.

3) Co do stawiania serwera. Rano napisałem aplikacje obliczeniowe. Są gotowe, tylko trzeba
    jakoś to wpiąć do BOINC.

   Pobrałem na nowo całe źródła wszystkiego, serwerów, przykładów, itd Próbuję utworzyć projekt
    zgodnie z tymi wytycznymi:
    http://boinc.berkeley.edu/trac/wiki/QuickStart .
    Niestety wywala mi błędy że coś nie tak z pythonem:
./make_project --url_base http://bearded_neural.localhost --test_app test
Traceback (most recent call last):
  File "./make_project", line 7, in <module>
    from Boinc.setup_project import *
  File "/home/x/Dokumenty/c/boinc/boinc/py/Boinc/setup_project.py", line 9, in <module>
    from Boinc import database, db_mid, configxml, tools
  File "/home/x/Dokumenty/c/boinc/boinc/py/Boinc/database.py", line 33, in <module>
    from db_base import *
  File "/home/x/Dokumenty/c/boinc/boinc/py/Boinc/db_base.py", line 15, in <module>
    import MySQLdb, MySQLdb.cursors
ImportError: No module named MySQLdb

Nie bardzo wiem co zrobić.

Pozdrawiam

Szopler

Pyton zainstalowany? ;)

    easy_install mysql-python (mix os)
    pip install mysql-python (mix os)
    apt-get install python-mysqldb (Linux Ubuntu, ...)
    cd /usr/ports/databases/py-MySQLdb && make install clean (FreeBSD)
    yum install mysql-python (Linux Fedora, ...)

mariotti

Cytat: Szopler w 24 Czerwiec 2012, 20:00
Pyton zainstalowany? ;)

    easy_install mysql-python (mix os)
    pip install mysql-python (mix os)
    apt-get install python-mysqldb (Linux Ubuntu, ...)
    cd /usr/ports/databases/py-MySQLdb && make install clean (FreeBSD)
    yum install mysql-python (Linux Fedora, ...)


Tak, python był, nie było modułu pythona do mysqla. To przebrnąłem, ale
teraz inny problem, tak jakby nie skompilował się program 'boinc/lib/crypt_prog'.

legis

zerknąłem dziś na globalne statystyki WCG
oto wyniki:

Totals:
Members   596,780
Total Run Time   627,942 years!!!!!!!!!!!!!!!!!!!!!!!!!!

Yesterday:
Total Run Time (y:d:h:m:s)   420:175:00:57:50

To tak na zachętę.
P.S. Jak postępy?

Ania

Przeczytałam :(

Do autora:     Facet ale Ty masz problemy.....

Nagadałeś się sporo ... ale nic nie działa. Nikt nie oczekuje że za pierwszym razem wyjdzie coś extra. Jak nawet nie wyjdzie  ... np.

"Metoda magnetyczna na jednym komputerze (sześć rdzeni) dawała mi ładne wyniki
np. po kilku miesiącach obliczeń. Niestety metoda magnetyczna ma pewne ograniczenia i
ich nawet teoretycznie nie może przeskoczyć. Uzyskamy dzięki niej przeciętny
program, nie wiem czy warto się w to angażować. Ponad to metoda magnetyczna
ciężko się zrównolegla. Użycie więcej niż 50 komputerów dużo nie daje. "

To piszesz na stronie projektu że dzięki BOINC potwierdziłeś że powyżej 50 maszyn nie działa i ktoś już bedzie wiedział.
Dodatkowo jeśli stworzyłbyś POLSKI przepis na uruchomienie takiego serwera to być może więcej chętnych uruchomiłoby więcej polskich obliczeń być może robioących wspaniałe rzeczy.

A Ty myślisz że my co robimy. Liczymy za własne pieniądze jakieś rzeczy licząc że komuś to pomoże ... a może się okazać że nikomu ... a szczególnie z naszych najbliższych.

Weź się w garść i napisz w końcu ten serwer, uruchom go i daj GO NAM i INNYM ocenić.
Jak ktos pisał publikacja Twoich działań więcej może pomóc niż być może uzyskane dla Ciebie wyniki.

Przykładowo na Twoją stronę projektu zapląta się ktoś kto chciałby sprawdzić koleny lek na raka ale nie wie jak to potwierdzić. I napisze do Ciebie czy nie napisałbyś takiego programu który sprawdzi 1 000  000  000 000 000  kombinakcji i okaże się że w pierszej 100 000 000 osiągniecie sukces .....


Mam dalej pisać ....

Weź się do roboty :)




mariotti

#177
Cytat: Ania w 05 Październik 2012, 16:09
Przeczytałam :(
Do autora:     Facet ale Ty masz problemy.....
Nagadałeś się sporo ... ale nic nie działa. Nikt nie oczekuje że za pierwszym razem wyjdzie coś extra. Jak nawet nie wyjdzie  ... np.
[...]
Weź się do roboty :)

Aniu... aż mi poszło w pięty :)

Posłuchaj uważnie, to nie jest do końca tak, jak myślisz. Można znaleźć łatwo lek na raka, jeśli zbuduje się
komputery o łącznej masie przekraczającej masę znanego wszechświata :) Podobnie (proszę, ostrożnie
z tym słowem, bo to bardzo specyficzny rodzaj podobieństwa ) jest z programami szachowymi. Można łatwo
znaleźć najlepszy program do gry w szachy, ale trzeba zostawić włączony komputer na 9!! lat - to liczba która składa
się z około 2 milionów cyfr. Wiesz już do czego zmierzam? Żadna ilość komputerów (przynajmniej współczesnych)
nie zastąpi możliwości jakie kryją się w ludzkim mózgu. Ludzie przez 10tys lat zrobili więcej, niż mogłyby
zrobić komputery zbudowane z całej materii jaka jest w znanym kosmosie. Dlatego poza mocą obliczeniową
jaką oferują takie sieci jak BOINC, ważna jest jeszcze JAKOŚĆ algorytmów jakie się do niej wrzuca.

Między innymi dlatego pracuję nad czymś lepszym do szachów, bo jeśli się uda, to ktoś, może właśnie naukowiec
szukający leku na raka, podpatrzy jakich użyłem algorytmów i znajdzie lekarstwo nie po 9!! latach obliczeń,
ale po 10 latach :D

Pozdrawiam

goofyx

a masz jakieś konkretne efekty tych prac poszukiwawczych?
z chęcią przetestujemy dla ciebie <- bo temat nie co umarł a miałeś uruchamiać ileś tam algorytmów do sprawdzenia na platformie boinc.

mariotti

Cytat: goofyx w 06 Maj 2013, 07:51
a masz jakieś konkretne efekty tych prac poszukiwawczych?
z chęcią przetestujemy dla ciebie <- bo temat nie co umarł a miałeś uruchamiać ileś tam algorytmów do sprawdzenia na platformie boinc.
Pewnie że mam. Np. na tym turnieju:
http://wbec-ridderkerk.nl/html/BayesianElo_ed19.htm
program zajął 86 miejsce. Program wszystkie parametry
dobrał automatycznie.

Problem w tym, że algorytmy jakich używałem do uczenia, nie nadają się z
różnych powodów do BOINC.

Pozdrawiam

goofyx

Cytat: mariotti w 06 Maj 2013, 08:31
Problem w tym, że algorytmy jakich używałem do uczenia, nie nadają się z
różnych powodów do BOINC.
pisałeś kiedyś że jeśli jest więcej niż X kompów to wyniki są przekłamane, zgadza się?
zawsze możesz ograniczyć ilość userów do rejestracji itp
zawsze jest jakieś rozwiązanie <- ale to już twoja decyzja.
dodatkowo jako fundacja też mamy możliwości pomocy tylko musi to być twoja wola i musi być informacja co potrzebujesz.
ja nikogo do niczego nie mam zamiaru zmuszać <- przedstawiam tylko możliwości.

mariotti

Cytat: goofyx w 06 Maj 2013, 08:39
pisałeś kiedyś że jeśli jest więcej niż X kompów to wyniki są przekłamane, zgadza się?
Nie pamiętam, w jakim kontekście to było?

Cytat: goofyx w 06 Maj 2013, 08:39
dodatkowo jako fundacja też mamy możliwości pomocy tylko musi to być twoja wola i musi być informacja co potrzebujesz.
Super fajnie, dziękuję z góry. Problem w tym, że algorytmy które znam,
wymagają znacznie więcej komputerów niż jest na całej planecie.

Cytat: goofyx w 06 Maj 2013, 08:39
ja nikogo do niczego nie mam zamiaru zmuszać <- przedstawiam tylko możliwości.
Rozumiem, potrzebny jest jeszcze algorytm... taki co np. co rok obliczeń na 1tys
komputerów sam się nauczy trochę lepiej grać. Opracowanie i implementacja takiego
algorytmu stanowią bardzo trudne zadanie. Spróbuj zaproponować taki algorytm i
przedstaw przesłanki że to będzie w miarę działało - to zrozumiesz też mnie :)

Pozdrawiam

goofyx

Cytat: mariotti w 06 Maj 2013, 09:25
Cytat: goofyx w 06 Maj 2013, 08:39
dodatkowo jako fundacja też mamy możliwości pomocy tylko musi to być twoja wola i musi być informacja co potrzebujesz.
Super fajnie, dziękuję z góry. Problem w tym, że algorytmy które znam,
wymagają znacznie więcej komputerów niż jest na całej planecie.
no tak, ale od czegoś chyba trzeba zacząć zamiast czekać aż pojawią się komputery kwantowe, które wystarczą na twoje potrzeby.
w przeciwnym wypadku nie byłoby projektów boincowych bo wszyscy czekaliby aż będzie wystarczająca moc komputerów

mariotti

#183
Cytat: goofyx w 06 Maj 2013, 09:43
no tak, ale od czegoś chyba trzeba zacząć zamiast
Ja bym najchętniej zaczął od tutoriala jak to skonfigurować i uruchomić. Gdy czytałem
dokumentację do API i przykładowe programy, to nie miałem problemów. Natomiast
gdy chciałem zainstalować i skonfigurować to nie mogłem przebrnąć nawet
podstawowych rzeczy.


Cytat: goofyx w 06 Maj 2013, 09:43
czekać aż pojawią się komputery kwantowe, które wystarczą na twoje potrzeby.
w przeciwnym wypadku nie byłoby projektów boincowych bo wszyscy czekaliby aż będzie wystarczająca moc komputerów
To się nazwa koszt alternatywny. Gdy masz godzinę czasu i idziesz do kina, to
kosztem alternatywnym jest np. to, że w ciągu tej godziny nie możesz czytać
książki. Jeśli zajmę się uruchamianiem programów które z bardzo dużym prawd.
nie przyniosą spodziewanych rezultatów, to tracę czas, w którym mogę myśleć/pracować
nad lepszymi algorytmami. A lepsze algorytmy mogą przynieść rezultaty.

Do tego dochodzi jeszcze inna sprawa. Z konfiguracją BOINC miałem problemy i nie
dałem rady. A znam narzędzia w których bez problemu (ale kosztem dość dużego
nakładu pracy) bym zrobił dowolne środowisko do obliczeń rozproszonych.

Jednak największy problem jest z algorytmami. W statystyce siła tkwi w ilości
losowych próbek. Te algorytmy które badałem, z jakiś dziwnych powodów nie
działają w ten sposób. Szybko uzyskują swój najwyższy poziom, a potem następuje
spadek. Czyli zastosowane tutaj dużej ilości komputerów nie ma sensu, w zupełności
wystarczy 20-30 dni na jednym rdzeniu do takiego eksperymentu, może nawet
5 dni by wystarczyło.

Potrzebuję takiego algorytm, który jest zbieżny. Taki algorytm co na 2*N komputerach
robi szybsze postępy niż w tym samym czasie na N.

Pozdrawiam

goofyx

ok, rozumiem.
nikt cie nie będzie zmuszał do wykorzystania boinc do testowania twoich algorytmów.

mariotti

Cytat: goofyx w 06 Maj 2013, 21:50
ok, rozumiem.
nikt cie nie będzie zmuszał do wykorzystania boinc do testowania twoich algorytmów.

Miło że są chętni do pomocy, ale trzeba mieć coś, co się dobrze liczy na takiej
ilości komputerów jaką oferuje BOINC. Ja mam algorytmy które dobrze liczą
się na jednym komputerze, albo na bilionach. Nie mam niczego co idealnie
pasuje np. na 1000 komputerów bez przerwy przez wiele lat.

Pozdrawiam