![]() |
Re: Maths problem: fatigue vs critical hits
Quote:
Here's roughly what I did: 1) Constructed a vector A(i) of the explicit probabilities for each single drn outcome i. This is pretty straightforward: A(1)=A(2)=...=A(5)=1/6 A(6)=A(7)=...=A(10)=(1/6)^2 Etc. 2) Constructed a vector B(j) of the probabilities a second drn would be less than or equal to j. So: B(1)=A(1) B(2)=A(1)+A(2) B(3)=A(1)+A(2)+A(3) Etc. 3) Constructed a matrix M such that M(i,j) = A(i)*B(j). Therefore, each M(i,j) = P(X<=i+j | drn1=i). 4) Summing the / diagonals of this matrix (i.e. all M(i,j) whose i+j are identical) gives the probability that the 2d6oe will be less than or equal to i+j. So for example, lets take the case when we want the 2d6oe <= 3. This is only possible 2 ways: if drn1=1 & drn2<=2, or if drn1=2 & drn2=1. We therefore have: A(1)=1/6 A(2)=1/6 B(1)=1/6 B(2)=2/6 M(1,2)=(1/6)*(1/6) M(2,1)=(1/6)*(2/6) So M(1,2)+M(2,1)= 0.083 Of course, this summation becomes larger for larger X=i+j. When X=7, you'll need to add M(1,6)+M(2,5)+M(3,4)+...+M(6,1). Phew. |
Re: Maths problem: fatigue vs critical hits
And now in English? http://forum.shrapnelgames.com/images/smilies/happy.gif
|
Re: Maths problem: fatigue vs critical hits
Quote:
|
Re: Maths problem: fatigue vs critical hits
Quote:
Let X-1 = 5a + b, 0 <= b < 5. (notice the -1!!) Then the probability that a DRN gives exactly X is p(DRN = X) = (1/6)^(a+1). The probability that it is X or greater is: http://img159.imageshack.us/img159/5...etexcgilv4.gif Now, we have two ways of measuring all the (x,y) in IN x IN which sum is equal to or greater than X: Either we take all the (x,y) with x+y < X and subtract the probability of them showing up simultaneously from 1, thus inverting the set, like you did if I understood right, or measure the following (with a loose mathematical notation): <font class="small">Code:</font><hr /><pre> (1, >= X-1) (2, >= X-2) (3, >= X-3) ... etc. (X-1, >= 1) (>= X, *)</pre><hr /> which should be equal to {(x,y) | x+y >= X}. I implemented both versions in Python again: <font class="small">Code:</font><hr /><pre>#!/usr/bin/env python # p(DRN) >= x def p_1(x): if x < 1: return 1 b = (x-1) % 5 a = (x-1) / 5 return (6-b)*pow((float(1)/6), a+1) # p(DRN) == x def p_2(x): if x < 1: return 0 b = (x-1) % 5 a = (x-1) / 5 return pow((float(1)/6), a+1) # p(2d6oe) >= x def doubledrn(x): M = [(a,b) for a in range(1,x-1) for b in range(1,x-a)] s = 0.0 for (x_1, x_2) in M: s += p_2(x_1)*p_2(x_2) return 1-s # p(2d6oe) >= x (alternate version) def doubledrn_2(x): s = p_1(x) for y in range(1,x): s += p_2(y)*p_1(x-y) return s for x in range(2,20): print ">= %2d : %f" % (x, doubledrn(x)) print ">= %2d : %f" % (x, doubledrn_2(x))</pre><hr /> and huzzah, they both give the same result, and it is: <font class="small">Code:</font><hr /><pre>>= 2 : 1.000000 >= 3 : 0.972222 >= 4 : 0.916667 >= 5 : 0.833333 >= 6 : 0.722222 >= 7 : 0.583333 >= 8 : 0.462963 >= 9 : 0.361111 >= 10 : 0.277778 >= 11 : 0.212963 >= 12 : 0.166667 >= 13 : 0.127315 >= 14 : 0.094907 >= 15 : 0.069444 >= 16 : 0.050926 >= 17 : 0.039352 >= 18 : 0.029578 >= 19 : 0.021605</pre><hr /> http://forum.shrapnelgames.com/image...es/biggrin.gif http://forum.shrapnelgames.com/image...es/biggrin.gif http://forum.shrapnelgames.com/image...es/biggrin.gif |
Re: Maths problem: fatigue vs critical hits
Quote:
-Max |
Re: Maths problem: fatigue vs critical hits
Quote:
|
Re: Maths problem: fatigue vs critical hits
I don't know if you are still interested in this, but I was, as it says "maths problem" in the title http://forum.shrapnelgames.com/images/smilies/happy.gif For future reference, if nothing else, the actual probability distributions for 1d6oe and 2d6oe (=DRN in the manual) are:
http://www.helsinki.fi/~mtvepsal/p1x.png http://www.helsinki.fi/~mtvepsal/p2x.png and for the original question, http://www.helsinki.fi/~mtvepsal/p2sum.png In all expressions X=5n+r, with 1<=r<=5 (note limits!). The first one is more or less trivial, the second is proven by induction in n and the third follows from that by straightforward summation. |
Re: Maths problem: fatigue vs critical hits
http://forum.shrapnelgames.com/images/smilies/shock.gif
I started reading all of this and thought of this picture... http://i289.photobucket.com/albums/l...jun20gal49.jpg |
Re: Maths problem: fatigue vs critical hits
So that is what kids are learning in school these days. http://forum.shrapnelgames.com/images/smilies/eek.gif
|
Re: Maths problem: fatigue vs critical hits
With only a little calculus long, long ago I can't play math, but I do enjoy watching it.
|
All times are GMT -4. The time now is 04:20 PM. |
Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©1999 - 2025, Shrapnel Games, Inc. - All Rights Reserved.