Generator rzutu kośćmi / stealth dice

Nasze home-rules do różnych gier, a także PRZETESTOWANE i ciekawe home-rules znalezione w sieci.
Awatar użytkownika
jawohl
Posty: 303
Rejestracja: 06 sty 2012, 13:18
Lokalizacja: Warszawa

Generator rzutu kośćmi / stealth dice

Post autor: jawohl »

czesc,

pod wpływem Pocket Dungeon zacząłem szukać alternatyw do stealth dice. Wariant z post-it nie bardzo mnie rajcuje.

Trafiłem na Generator Fibonacciego i masę innych generatorów rzutu kością na stronach internetowych lub w Excelu. Zależy mi jednak na tym, żebym mógł to robić sam, obliczając wynik w głowie.


Niestety nie jestem w stanie do końca zrozumieć alternatyw proponowanych na bgg np tutaj.

Kod: Zaznacz cały

irstly, select any two numbers, that isn't equal each other and not equal to zero.It will be "random seeds". Then, to get the following random number, you must add (plus) previous and pre-previous numbers, then divide with the remainder by number that we need (in programming that operation called "MOD" ) . That remainder will be our random number.
So, formula is that: Xi = (Xi-1 + Xi-2) mod m, where Xi - member of sequence, m - maximum number that we need.
For example, if our seeds will be 2 and 3, and we want to generate random likes d6. Then, our "m " from formula will be 6. We get next sequence:
2,3,5,2,1,3,4,1 ... Looks like random, isn't it? 
Moze macie swoje propozycje i rozwiązania? Jeśli nie to proszę chociaż o pomoc w wykorzystaniu tego wariantu z Generatorem Fibonacciego.

Obrazek

Jak powinno to wyglądać dla pierwszego rzutu kością? I jak dla kolejnych przy ograniczeniu wyników <1;6>? Magiczna jest dla mnie ta operacja 'mod' bo nie miałem jej ani na statystyce ani na matematyce i ekonometrii.
Awatar użytkownika
pebro
Posty: 97
Rejestracja: 05 sty 2011, 19:37
Lokalizacja: Poznań
Been thanked: 2 times

Re: Generator rzutu kośćmi / stealth dice

Post autor: pebro »

jawohl pisze: Magiczna jest dla mnie ta operacja 'mod' bo nie miałem jej ani na statystyce ani na matematyce i ekonometrii.
MOD to reszta z dzielenia.
np. MOD 6/4 = 2
MOD 17/6 = 5
Awatar użytkownika
jawohl
Posty: 303
Rejestracja: 06 sty 2012, 13:18
Lokalizacja: Warszawa

Re: Generator rzutu kośćmi / stealth dice

Post autor: jawohl »

OK, dzięki.

Nie zmienia to faktu, że wciąż nie rozumeim jak dojść do tego momentu

"For example, if our seeds will be 2 and 3, and we want to generate random likes d6. Then, our "m " from formula will be 6. We get next sequence:
2,3,5,2,1,3,4,1 ... Looks like random, isn't it? "

Jak to podstawic i jak tworzyć kolejne wyniki?
mbork
Posty: 1144
Rejestracja: 20 cze 2009, 01:05
Lokalizacja: Poznań
Kontakt:

Re: Generator rzutu kośćmi / stealth dice

Post autor: mbork »

2+3=5
5 mod 6 =5
3+5=8
8 mod 6=2
5+2=7
7 mod 6=1
2+1=3
3 mod 6=3
1+3=4
4 mod 6=4

Uwaga 1. Jak wyjdzie sześć, to nie bierzesz (mod 6) (bo wyszłoby zero), ale sześć.

Uwaga 2. Jak źle wybierzesz dwie początkowe wartości, to ciąg może być wybitnie nielosowy (przykładowe pary: 2,4 albo 3,3). Zadanie domowe: znaleźć warunek konieczny i dostateczny na to, by ciąg zawierał wszystkie liczby całkowite między 1 a 6.

Uwaga 3. Może to i "looks random", ale losowe to to nie jest. Do Chińczyka może i starczy, ale warto by sprawdzić, czy zda np. jakiś statystyczny test losowości. Albo popatrzeć choćby, czy każda liczba wystąpi w tym równie często.

Z drugiej strony, plastikowe kości sprzedawane z grami też nie są "symetryczne" (w sensie rozkładu jednostajnego prawdopodobieństwa). Komputerowe generatory liczb pseudolosowych też generują jedynie liczby pseudolosowe, a nie losowe.

Można też zerknąć tu: http://www.amazon.com/Million-Random-Di ... 800&sr=8-1 . Naprawdę warto przeczytać "customers' reviews", tylko nie pijcie nic w tym czasie!
Awatar użytkownika
pebro
Posty: 97
Rejestracja: 05 sty 2011, 19:37
Lokalizacja: Poznań
Been thanked: 2 times

Re: Generator rzutu kośćmi / stealth dice

Post autor: pebro »

jawohl pisze:OK, dzięki.

Nie zmienia to faktu, że wciąż nie rozumeim jak dojść do tego momentu

"For example, if our seeds will be 2 and 3, and we want to generate random likes d6. Then, our "m " from formula will be 6. We get next sequence:
2,3,5,2,1,3,4,1 ... Looks like random, isn't it? "

Jak to podstawic i jak tworzyć kolejne wyniki?
2, 3 : 2+3=5 mod6(5)=5
3, 5 : 3+5=8 mod6(8)=2
5, 2 : 5+2=7 mod6(7)=1
2, 1 : 2+1=3 mod6(3)=3
itd...
oczywiście w przypadku mod6(6)=0 trzeba przyjąć 6

Nie jestem zbyt dobry z matematyki, ale widać, że ciąg może być przewidywalny.

edit: widzę, że zostałem uprzedzony.
Pary 3,3 (ani innej równej) nie można wybrać "...select any two numbers, that isn't equal each other and not equal to zero..."
mbork
Posty: 1144
Rejestracja: 20 cze 2009, 01:05
Lokalizacja: Poznań
Kontakt:

Re: Generator rzutu kośćmi / stealth dice

Post autor: mbork »

No, pebro, znindżowałem Cię, ale jak widać, Poznań rządzi w matematyce. :D
mbork
Posty: 1144
Rejestracja: 20 cze 2009, 01:05
Lokalizacja: Poznań
Kontakt:

Re: Generator rzutu kośćmi / stealth dice

Post autor: mbork »

pebro pisze:edit: widzę, że zostałem uprzedzony.
Pary 3,3 (ani innej równej) nie można wybrać "...select any two numbers, that isn't equal each other and not equal to zero..."
Oj, nie doczytałem.

Z drugiej strony, chyba młotek jakiś matematyczny to pisał. Niby dlaczego mogę wybrać na początek np. 2 i 4 (co daje ciąg losowy jak nie wiem), a nie mogę np. 5 i 5 (co od drugiego miejsca niczym nie różni się od pary startowej 5 i 4, legalnej wg podanego algorytmu)?

Pytanie o warunek na to, żeby w ciągu wystąpiły wszystkie liczby (choć raz), wydaje się na tyle interesujące, że chyba dam studentom na dodatkowe punkty. :P
Awatar użytkownika
jawohl
Posty: 303
Rejestracja: 06 sty 2012, 13:18
Lokalizacja: Warszawa

Re: Generator rzutu kośćmi / stealth dice

Post autor: jawohl »

Dzięki Poznań!


Wyniki wrzucone przez kogoś na bgg do excela przy 1700 próbach wyglądają tak:

25% 1
13% 2
17% 3
13% 4
25% 5
8% 6

Czyli losowe to to nie jest, ALE, w domowych warunkach, może satysfakcjonować.

+ kolejna garść przemyśleń z bgg

Tutaj - http://boardgamegeek.com/thread/762306/ ... lternative
jest jeszcez inna alternatywa nawiazująca do http://en.wikipedia.org/wiki/Linear_con ... _generator

Myślę, że mogłoby Cię to mbork zaciekawic :)
mbork
Posty: 1144
Rejestracja: 20 cze 2009, 01:05
Lokalizacja: Poznań
Kontakt:

Re: Generator rzutu kośćmi / stealth dice

Post autor: mbork »

1. Widziałem to. Sama częstość wystąpień pojedynczych liczb to trochę mało.

2. Z tego co wyczytałem na wikipedii, LCG jest już całkiem wystarczający na potrzeby planszówkowe, przy założeniu, że nikt nie będzie oszukiwał (zgadując, co może - lub nie może - wyjść; jeśli znamy algorytm, możemy np. dość łatwo przewidywać rzeczy typu: kiedy na pewno nie dostaniemy nic parzystego).

3. Tak czy siak: dla rzeczy typu pocket dungeon takie algorytmy mogą być całkiem ok, problemy się zaczynają przy grach 2p i więcej z kłótliwymi graczami. :P
Awatar użytkownika
jawohl
Posty: 303
Rejestracja: 06 sty 2012, 13:18
Lokalizacja: Warszawa

Re: Generator rzutu kośćmi / stealth dice

Post autor: jawohl »

Nie no, ja chciałbym tylko coś takiego biegle opanować dla własnej satysfakcji intelektualnej i przy grach solo, albo na nudnych wykładach. ;)

Poczytam jeszcze o tym LCG, ale wydaje sie być bardziej skomplikowany.
Awatar użytkownika
pebro
Posty: 97
Rejestracja: 05 sty 2011, 19:37
Lokalizacja: Poznań
Been thanked: 2 times

Re: Generator rzutu kośćmi / stealth dice

Post autor: pebro »

To, że rozkład prawdopodobieństwa jest nierównomierny może zostać wykorzystane jako zaletę. Wszak w niektórych grach kostki posiadają nierównomierną numerację (np. 1,1,2,3,4,5).

Aby zapobiec oszukiwaniu, czy też przewidywaniu wyników proponuję we wzorze wprowadzić modyfikację:

Xn = (Xn-1) + (Xn-2) + time

Gdzie "time" to liczba zależna od czasu czyli np. liczba minut czy dziesiątki sekund na zegarku.
ODPOWIEDZ