De meesten van jullie hebben er denk ik wel eens van gehoord; die zogenoemde "RNG", kort voor Random Number Generator[1].Deze term wordt sterk in verband gebracht met (on)geluk hebben. Je ziet wel eens als iemand heel erg veel ongeluk of geluk heeft, dat dit wordt dan verweten of geprezen aan de "RNGgods", terwijl je eigenlijk gewoon een reeks ongelukkige nummers hebt getrokken.
Ik zie vaak mensen die denken dat ze heel veel ongeluk hebben omdat ze al te lang geen drop hebben gehad (bijvoorbeeld: 200 Legiones geen Signet). Vaak valt dit wel mee. Of mensen die zeggen dat ze iemand kennen die een vriend heeft die na 90k goblins nog geen champions scroll heeft gehad.
In dit artikel wil ik laten zien of je nu daadwerkelijk zo unlucky bent en dus kunnen aantonen of het een beetje realistisch is met wat voor killcounts mensen komen aanzetten.
- Ik zal beginnen met de kans op minstens één drop (champion scrolls)
- Daarna de kans hoe lang het duurt om een willekeurig aantal drops te krijgen (5 Kal'gerion titles of 13 champion scrolls)
- Als laatst wil ik de boss pets proberen aan te pakken. Deze zijn iets ingewikkelder.
Boeit het je niet, of raak je de draad kwijt? Je kunt altijd naar de conclusie springen of naar grafiekjes kijken. En schroom niet om vragen te stellen.
Droprates 1
Laten we beginnen met het simpelste geval: Champion Scrolls.
In het geval van Champion Scrolls ben je benieuwd hoeveel creatures je moet neerhalen voordat je je eerste scroll krijgt.
De kans op een scroll is door Jagex bevestigd: 1/5000.
De kans dat je je eerste kill een scroll krijgt is dus 1 op 5000. Nu zou je misschien verwachten dat de kans dat je tweede kill een scroll krijgt ook 1 op 5000 is. Dit is waar, maar we zijn benieuwd naar onze eerste scroll. Er bestaat namelijk een kans dat de eerste kill al een scroll was, en dat de tweede kill dus al je tweede scroll is. Hiervoor moeten we dus corrigeren.
We zijn in het geval van droprates echter niet benieuwd naar het exacte aantal kills, maar na hoeveel kills je een item krijgt. Of juist na hoeveel kills je er nog geen hebt gekregen.
Om het wat overzichtelijk te houden, introduceer ik wat variabelen:
P(X)= de kans dat gebeurtenis X gebeurt
N= het totaal aantal kills
x= het nummer van succes. (x=400 betekent dus dat je je drop hebt na 400 kills)
p= de kans op succes (in het geval van champion scrolls is dit 1/5000)
De kans dat je meer dan 1x iets moet killen is gelijk aan de kans dat je de eerste kill niets krijgt:
P(N>1) = P(N≠1)=1-p=4999/5000
P(N>2) = P(N≠1)*P(N≠2)=(1-p)*(1-p)=(1-p)2
P(N>x)=(1-p)x
En de kans dat je hem wel hebt na x kills is dus:
P(N≤x)=1-P(N>x)=1-(1-p)x
Zoals je kunt zien is de kans dat je pas je scroll hebt na 5000 kills niet gelijk aan 50% zoals veel mensen denken. De kans is hoger dan dat: in 63% van de gevallen valt de scroll voor de 5000 kills.
Zo'n plot kunnen we natuurlijk ook maken voor andere items, zoals de abbysal whip en Kal'gerion titles (beiden 1/512) en de Ascension signets (1/64):
Terugkomend op het begin van dit artikel. De kans dat je geen Signet hebt na 200 kills is dus 4%. Stel je voor dat 1 op de 25 man een topic maakt omdat ze 200 Legiones droogstaan...
En de kans dat je minstens 90.000 goblins moet killen voor je scroll, is gelijk aan 1 op 66 miljoen(!). Zoiets kan je gewoon niet geloven. Ja, natuurlijk kan het gebeuren, maar als je het via via hoort is het gewoon grote bullshit.
Droprates 2
Oké, we weten nu de kansen om één keer een drop te krijgen.
Wat zijn de kansen dat je na x kills twee of meer keer een drop hebt? Zoals in het geval van de Kal'gerion Demon titles. Waar je niet 1x maar 5x een drop wilt hebben.
Hiervoor introduceer ik weer nieuwe variabelen:
k = het aantal items dat je onderzoekt (k was in droprates 1 overal gelijk aan 0)
Y = het aantal items.
P(N=x,Y=k) is dan de kans dat je na x kills k aantal items hebt.
Ook hier zijn we niet geïnteresseerd in het exacte aantal items. We willen bijvoorbeeld weten wat de kans is dat we na x kills niet meer dan k drops te hebben:
P(N=x,Y≤k)
Een voorbeeld, we willen de kans weten dat we na vier kills nog niet meer dan twee drops hebben: Y(N=4,Y≤2)
Dit kunnen we weer illustreren aan de hand van een tabel met alle mogelijke dropcombinaties die je kunt hebben na vier kills. Een één staat voor een drop, en een nul staat voor geen drop. In het rood de combinaties waar je minder dan drie drops hebt, in het groen waar je drie of meer drops hebt. En daarnaast de kans op deze mogelijkheid.
- In- of uitklappen •
P(N=4,Y≤3)=(1-p)4+4*p(1-p)3+6*p2(1-p)2
Dit is gelijk aan de kans dat je geen drops krijgt + de kans dat je één drop krijgt + de kans dat je twee drops krijgt.
De algemene formule hiervoor is
P(N=x,Y≤k)=(1-p)x+(x boven 1)(1-p)x-1p+(x boven 2)(1-p)x-2p2+...+(x boven x-k)(1-p)x-kpk
Deze factor is bekend als het binomiaalcoëfficiënt en is gedefinieerd als
x boven k = x!/((x-k)!*k!)[2].
Waarbij '!' het faculteit-teken is.
10! = 10*9*8*7*6*5*4*3*2*1
(5) is nu niet bepaald mooi en handig te noemen. Gelukkig kunnen we het vereenvoudigen met een som-teken...
die ik ook niet kan typen in BBC.
Ook dit kan natuurlijk het beste gevisualiseerd worden door middel van een grafiek.
Onderstaande grafiek is voor de Kal'gerion Demon Titles, die verwacht worden een dropkans van 1 op 512 te hebben. Maar je kan hem ook zien als grafiek voor de Abyssal Whip en andere items met een kans van 1 op 512.
Voor k=0 (één drop, de blauwe lijn) zie je dat je hetzelfde resultaat als in droprates 1.
Ik moest zo'n 4000 tot 5000 demons killen voor alle vijf mijn titles. Ik zat dus bij 12% die meer dan 4000 demons moesten killen.
Hoe ziet dit eruit als je kijkt naar het totaal aantal kills voor alle 13 champion scrolls?
Droprates 3 - Boss pets
Boss pets zijn een (iets) ander verhaal.
Door het zeiken van mensen over het prachtige dropsysteem hebben ze het droppen van deze pets iets aangepast:
De pet heeft een dropkans zoals elke andere drop. Laten we deze kans p noemen.
Voor Molly (Giant Mole) is deze 1 op 2500. (Hard mode is de kans 5 x zo hoog: 5*p = 1/500)
Na een bepaalde aantal kills wordt de kans verhoogd. Voor Molly zit de threshold op 500.
Onder de 500 kills is de kans dus 1/2500, maar tussen de 500 en 1000 kills is deze 2*p = 2/2500, tussen de 1000 en 1500, 3/2500. Dit houdt op na 9 thresholds, dus op 10/2500.
Noem deze threshold T.
Ik definieer r als het aantal keer dat je de threshold bent gepasseerd:
r = floor(x/T)
De kans dat je 'm nog niet hebt is de kans dat je hem na de eerste threshold nog niet hebt, maal de kans dat je hem na de tweede nog niet hebt...
P(N>x)=(1-p)T(1-2p)T*...*(1-rp)x-r*T
=
P(N>3423) = (4999/5000)1000(4998/5000)1000(4997/5000)1000(4996/5000)423 = 0,21. 21% kans je dan nog geen drop hebt. (en 79% kans wel dus)
En de kans dat je hem wel hebt na x kills is dus:
P(N≤x)=1-P(N>x) = 1 - formule (8)
Grafiekjes!:
GWD (Kree'arra, Zilyana, Graardor, K'ril), p = 1/5000, T = 1000
En hardmode: p =1/1000 T = 1000
KBD, QBD, KQ, CE, Corp; p = 1/2500, T = 500
Legiones: p = 1/1000, T = 1200
Van de overige bosses is het ongeveer hetzelfde.
Let er op dat de x-as niet overal gelijk is.
De blauwe lijn is de daadwerkelijke kans. Rood is er bij als vergelijking. Je ziet dat het soms bijna niets uitmaakt. (Als de threshold dichtbij de kans ligt; Tp ~ 1)
Samenvatting
De kans dat je meer dan x maal iets moet doden voor je je eerste drop krijgt met een drop rate van p = (1-p)x
De kans dat je na x maal iets gedood te hebben hoogstens k maal een drop met droprate p hebt is
Opmerkingen
Algemene opmerking: Geen enkele kans in dit artikel wordt ooit precies 1. Ook al lijkt dat er soms wel op in de grafiekjes. Je bent nooit 100% gegarandeerd om een drop te hebben na x kills. De kans dat het zo lang duurt is gewoon onrealistisch klein. (Als je echter in het infinite multiverse theorie gelooft, zijn er oneindig veel universa waarin niemand ooit een champion scroll heeft gekregen. Maar dat is filosofie, een heel ander vakgebied. )
[1]De random nummers die zo'n RNG genereert zijn semi-random. Een computer volgt namelijk orders op en kan (nog) geen volledig random nummer maken zoals een dobbelsteen dat doet. Er worden formules toegepast om een nummer willekeurig te doen lijken, maar als je dit systeem weet zal je de nummers kunnen voorspellen. Voor meer informatie hierover raad ik jullie de video van Numberphile over Random nummers aan.
"Nog" staat tussen haakjes, als kwantumcomputers op de markt komen is, moet het naar mij idee wel mogelijk worden om een volledig willekeurig nummer te genereren.
[2]Ai. n! wordt al heel snel zeer groot. (10! = 3628800, 100! = 9.332 * 10157). We werken hier met duizenden kills, een computer kan zulke grote getallen al snel niet meer precies uitrekenen.
Gelukkig zijn er briljante wiskundigen die hier benaderingen voor kunnen maken. Waardoor ik (nouja, eigenlijk Matlab) dus gebruik maak van de benadering van Stirling
Wat je verder kunt lezen
Ben je geïnteresseerd in dit soort kansverdelingen?
Neem eens een kijkje bij de geometrische en binominale verdeling die ik hier deels behandeld heb.
Achteraf is de wiskunde misschien wel ietwat meer dan ik gehoopt had te gebruiken. Ach ja.
Verder ben ik ook heel benieuwd hoeveel man op LTF zulke artikelen nou interessant vinden. Zou mij erg interesseren, dus laat het me weten wat je van zo'n wiskundig artikel vindt.
En als je verdere ideeën hebt wat ik zou kunnen onderzoeken/uitleggen, brand los.