Epizódok értékelése - a sorsolás menete
Érdekességképpen leírom pár mondatban, hogyan történik az adott évadra szavazók közül annak az egy embernek a kiválasztása, aki ajándékot nyer.
Próbáltam átlátható, reprodukálható, de mégis a véletlenen alapuló megoldást készíteni az adott évad nyertesének meghatározására. Végül a következő
módszert hoztam össze. Mindenkinek, aki az oldalon regisztrált (és részt vett az értékelésben) a nevén kívül van egy számból álló azonosítója.
(Ezt pl. a fórumbeli hozzászólásoknál, a felhasználó nevének linkjében lehet megnézni, a userID=
utáni szám az azonosító.)
Kiszedem az adatbázisból egy fájlba azon azonosítókat, akikhez tartózó látogatók legalább 7 epizódot értékeltek. Már itt van némi véletlen a rendszerben, mivel
nincsenek sorrendbe rakva az azonosítók, az adatbázisból olyan sorrendben jönnek ki, ahogy a látogatók szavaztak, nagyjából össze-vissza. Ezután egy ún.
pszeudo-véletlenszám generátoron alapuló algoritmus az értékelés lezárását követő ötöslottó-sorsolás 5 száma alapján első körben 5 azonosítót, azaz 5
látogatót válogat ki a felmérésben és így a nyereménysorsolásban résztvevők közül. Ezután van egy második körös húzás
, ekkor a már előválogatott 5
azonosító közül történik a nyertes meghatározása. Ebben a körben a véletlenszám-generátort az ötöslottó 5 számjegyének egymás mellé helyezéséből képzett
számmal inicializálom.
A pszeudo-véletlenszám generátor biztosítja azt, hogy a sorosolás eredményei reprodukálhatóak a bemenő paraméterek (a résztvevők listája, és a generátort inicializáló
számok) ismeretében, így a sorsoló algoritmus birtokában bárki meggyőződhet róla, hogy a sorsolás tiszta volt
, azon minden résztvevő egyenlő eséllyel indult.