Prijava



Razdelitev kart na članskem taroku ...


Nola

Nola
Št. sporočil: 334
Regija: Ljubljana z okolico
Datum objave: 07.01.2014 12:32:36 Citiraj objavo Pošlji ZS

Tudi jaz sem že pisala na forum, ne vem več kam in kdaj, o čudnih delitvah kart in se zanimala za algoritem. Ker nisem računalničar, se seveda s programerji ne znam pogovarjati, pa karkoli bi mi povedali.

Mi je pa zanimivo, da nihče ne uporablja pojmov kot sta verjetnostni račun in kombinatorika. Imam kar nekaj znanja statistike, zato bom poskušala razložiti, kako gledam na problem.

Prvi izziv je ugotoviti, ali so deljene karte skladne s tem, kako naj bi bile razdeljene po naših pričakovanjih (kako se delijo karte iz kartona, vsi vemo). Če poznamo teoretsko porazdelitev (popolnoma slučajnostno, kot jo pričakujemo od računalnika, ki karte vedno dobro zmeša, tako da se štihi prejšnje igre ne držijo več skupaj), lahko ugotovimo, ali se dejanska delitev kart od teoretske razlikuje, tako da izvedemo statistični test. Ta je možen pri odigranih 20 igrah (male množice, uporabimo npr. t-test) ali pri velikem številu odigranih iger (velike množice, z-test). Imam namen izračunati verjetnost pojavljanja 1, 2, 3, 4 kraljev v talonu, ker je še nisem zasledila na tem forumu (če je kdo že to naredil, naj to hitro pove, da se ne mučim zaman), potem pa se lahko pogovarjamo, ali naše izkušnje to teoretsko vrednost potrjujejo ali ovržejo.

Drugi izziv, ločen od gornjega, pa je sprogramirati deljenje kart, da bo popolnoma slučajnostno. Tu gre za enostavne permutacije 54 elementov - ko je mešanje enkrat opravljeno, in število različnih permutacij je končno (54!), se karte delijo po vrstnem redu, kot so bile razporejene- z leve proti desni, z vrha proti dnu, od začetka proti koncu. Ne izbira se vsaka karta iz kupa po neki random funkciji (kot bi se šli črnega petra) , ker bi to bilo v nasprotju z naravnimi pravili. No, tako bi se jaz lotila programiranja, če bi znala. Če narobe razmišljam, me popravite.

 



Nazadnje uredil Nola dne, 07.01.2014 ob 12:34

Mladen

Mladen

Admin Št. sporočil: 860
Regija: Ljubljana z okolico
Datum objave: 07.01.2014 12:46:18 Citiraj objavo Pošlji ZS

Živjo Nola,

vsakega testiranja smo zelo veseli, saj nam to prihrani kar nekaj časa. Vsekakor se tudi sami strinjamo, da deljenje ni najboljše rešeno, kot rečeno smo ga trenutno samo prekopirali iz bete, ker nismo imeli drugih možnosti, se pa nameravamo temu posvetiti takoj po naslednji rundi popravkov, ki smo jih označili za prioritetne. 

Še enkrat hvala obema na mnenju, vse je bilo tudi že posredovano našemu programerju igre, tako da je le še vprašanje časa kdaj se bomo lotili tega. Ampak kot vidite migamo cel čas, tako da bo tudi to slej kot prej rešeno.

Vsako testiranje pa kot rečeno - zelo dobrodošlo!




nagy

nagy

Elitni član Št. sporočil: 27
Regija: Ljubljana z okolico
Datum objave: 07.01.2014 13:04:49 Citiraj objavo Pošlji ZS

Well, danes sem zahaklal šefa v pisarni, pa ga povprašal glede statistične verjetnosti kraljev v talonu; to je stresel iz rokava malo čez sedmo zjutraj:

Verjetnost, da se katerakoli karta pojavi v talonu je: (54 x 53 x 52 x 51 x 50 x 49) / 6! = 0,615270782

Verjetnost, da se katerikoli izmed kraljev v talonu je: (50 x 49 x 48 x 47 x 46 x 45) / 6! =0,384729218

Verjetnost kralja v talonu je cca 38,5%, kar se ujema z našimi praktičnimi opažanji. Priznam, da sem pričakoval pol manjši rezultat, a cifre so take.

Še zmeraj ostaja vprašanje, zakaj je razlika med eno in drugo verzijo taroka. Navsezadnje sem že slišal izjave med igro, da bo padla zahteva po vračilu denarja in to od več soigralcev. Ravno zato upam, da se bo to dogajanje vseeno pošteno raziskalo, drugače bo pač število članov upadalo, kar pa verjetno ni nikomur v interesu.

Vsekakor bom še naprej štrikal kodo, dokler ne pridem do dejanske implementacije Welfordovega algoritma, ker mi bo to prišlo prav pri par drugih stvareh, ki se jih lotevam. Pa tudi zanesljiv generator naključnih števil lahko pride prav pri marsikaterem programerskem podvigu.

Mimogrede, v mojem programu sem našel napako pri iteracijah, zato tudi števila niso tako različna, ko sem dejansko pričakoval (predvsem pri GUID seed). Vseeno se dejansko vidi, da pri "timestamp seed" zaradi hitrosti generiranja števil v isti milisekundi sprocesiral več istih vrednosti, le algoritem mi jo je zagodel pri gradnji elementov v array iteracije. Bilo je pozno, kaj čmo.

Bom popravil, pa se javim.

Cheers smile




Mladen

Mladen

Admin Št. sporočil: 860
Regija: Ljubljana z okolico
Datum objave: 07.01.2014 13:23:48 Citiraj objavo Pošlji ZS

Živjo,

zanimivo, tudi sam bi laično sklepal, da bo številka manjša.  Omenil si praktična opažanja - se številka okvirno ujema z opažanjem pri novi igri ali pri beti? Meniš, da je pri beti številka manjša v praksi? 

Glede nezadovoljstva - vsekakor nam je v interesu igro v kratkem pripeljati na ta nivo, da bo večina 100% zadovoljna z njo. Sami lahko vidite, da neprestano nalagamo popravke, vsak popravek seveda terja svoj čas. Ampak napake kot so ta je nemogoče rešiti iz danes na jutri, posebno pa ne vnaprej, sploh ker se na beti nikoli nihče ni pritožil glede te napake in nismo niti vedeli, da je lahko tu težava.

Več kot to, da vam zdaj obljubimo, da se bo to uredilo, tudi sami žal ne moremo. Kakršnekoli odpovedi članarin bi ta proces žal samo dodatno zavlekle (ker se članarine v celoti namenjajo izključno razvoju igre - sami si od članarin ne plačamo niti kave), tako da upam, da stvar ni toliko moteča. Vsi nezadovoljni se nam seveda lahko vedno oglasijo po mailu ali po ZS, stresanje jeze na chatu nima nobenega efekta (razen negativnega za vse igralce), zato verjamem, da lahko z vsakim najdemo neko skupno rešitev, tako kot smo jo vedno. 

hvala še enkrat tebi in tudi šefu smile




Nola

Nola
Št. sporočil: 334
Regija: Ljubljana z okolico
Datum objave: 07.01.2014 13:33:14 Citiraj objavo Pošlji ZS

Nagy,

Nisem šla preverjat izračuna, ampak takole na pamet - če talon predstavlja 1/9 vseh razdeljenih kart, in so kralji 4, kako je lahko verjetnost pojava kralja  v talonu tako visoka? To bi pomenilo, da je verjetnost, da dobim kralja jaz, ki imam dvakrat toliko kart kot talon, dvakrat tolikšna (76%), kar ne more držati. Povprašaj še malo šefa, prosim, za razlago - ali igra tarok? Preverita izračune - vsota vseh verjetnosti mora biti ena. Da se karta pojavi v talonu, ne more biti bolj verjetno, kot da se ne pojavi v njem.



Nazadnje uredil Nola dne, 07.01.2014 ob 13:53

nagy

nagy

Elitni član Št. sporočil: 27
Regija: Ljubljana z okolico
Datum objave: 07.01.2014 14:02:45 Citiraj objavo Pošlji ZS

Uf, oba izračuna sem zgolj prenesel (copy-paste) - izračuna sicer sta po občutku na mestu ampak ... bejba bo zdle napisala njen popravek obeh formul, jutri pa lahko šefa še enkrat zahaklam in ga vprašam za bolj detajlno razlago.

Moj občutek med starim, nečlanskim in članskim tarokom pa je tak, da je preveč zarufov na članskem delu. Sicer mene sploh ne moti do te mere, da bi se pretirano sekiral, ampak tisti, ki igrajo na rezultat pa običajno niso tako potrpežljivi. Cel ta mini projekt je zame nabiranje znanja na področju, ki sem ga kar dolgo zanemarjal, če pa v procesu še kako stvar skupaj razmislimo, pa toliko bolje smile

EDIT: tiskarski škrjat



Nazadnje uredil nagy dne, 07.01.2014 ob 14:03

Razdelitev kart na članskem taroku ...