Theck's MATLAB TPS analysis - WotLK/3.x
Moderators: Fridmarr, Worldie, Aergis, theckhd
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
imapler wrote:->404 - Not Found<-
pic says it all, thanks for being awesome
How ironic.
-

Soralin - Posts: 107
- Joined: Wed Jan 14, 2009 8:43 pm
SoV Stack Stability and Ramp Time
I was having a discussion today about the assumption that we'll always have a 5-stack of Holy Vengeance on the boss. The question was, "How reasonable is this assumption, since HV can be parried, dodge, and miss?" In addition, I wanted to calculate the ramp time just to see how much worse rets have it.
To answer these two questions, I ran some quick numbers:
Five-stack Stability
For our approximation that we can keep a 5-stack indefinitely to be a good one, we want to make sure that the probability of that 5-stack dropping off is very low.
We make an attack that triggers a debuff application roughly every 1/(1/1.3+1/6)=1.0685 seconds, not counting parry haste. So let's use one application attempt per second as a ballpark estimate. The probability of an application being successful is p, and the probability of failure (it gets avoided) is q=1-p.
The probability of the stack falling off is then q^N, where N is the number of attacks we get in the time it takes to fall off. In this case, 15 attacks, since we have 15 seconds. In the worst-case scenario, we have an 8% chance to miss, 6.5% chance to dodge, and 14% to parry, for a total q of 0.285.
Thus, the chance for the stack to fall off is 0.285^15, or 6.65 x 10^-9. In other words, the stack will fall off, on average, once every 150.4 million attacks, or every 4.7565 years at one attack per second. I think that solidifies it as a pretty good assumption; I've certainly never seen one fall off my self. In fact, you have a better chance of:
And remember that all of that is if you've got no hit or expertise. At the dodge soft-cap, with no hit rating, the odds go up to 1 in 1396 billion, at which point you have a better chance of being hit by lightning during a fatal car accident.
Five-stack Ramp Time
This is a little trickier, but not much. We can use the same math for prot and ret by doing everything in terms of applications rather than time. We can convert at the end by multiplying by average attack speed to find out ret's ramp time (as we saw in the last example, ours is about 1 application per second, so prot doesn't need to multiply at all).
To see the pattern, let's just look at the first few possibilities:
The time it takes to get the 5-stack will be the sum of the product of the probability times the ramp-up time, or
for N=5 to as high as you want to consider. Using the worst-case scenario above (no hit or expertise), it converges quite well by N=15, and by N=20 the probabilities sum to 1 within four digits of accuracy.
I wrote a quick script to evaluate the sum, and let me play with the parameters: calc_sov_ramp.m
The sum evaluates to 6.993 applications, or 6.993 seconds at 1 application per second. Dropping q down to 0.08+0.075 (i.e. reaching the dodge soft-cap of expertise) gives a sum of 5.9172 applications.
We could plot this as a function of expertise skill or hit rating as well. I'll do expertise, because it's the more interesting of the two graphs:

You can see the "knee" in the graph where we hit the dodge soft-cap. If we plot this in terms of raw avoidance reduction (i.e. convert expertise to percent), we get the following graph:

It's clear that the ramp time drops from 7 fairly linearly (it's actually slightly nonlinear, but not enough to make much difference here). It should continue decreasing down to 5 applications once we reach q=0 (28.5% hit+dodge+parry reduction), at which point the curve just stops.
Most rets will be hit-capped, but I'm not sure about expertise-capped. I'd guess both, in which case their ramp-up time is just 5 times whatever their effective swing speed happens to be. If Crusader Strike is the only other attack that stacks HV, then it would be around 1/(1/swing_speed + 1/4.5). Assuming about 3 seconds between melee auto-attacks, that works out to 1.8, for a 1.8 * 5 = 9-second ramp time. If they had zero hit or expertise, it could go up to as high as 12.6 seconds, though since they attack from behind they can probably assume a free 14% hit which brings it down to about 10.4 seconds.
To answer these two questions, I ran some quick numbers:
Five-stack Stability
For our approximation that we can keep a 5-stack indefinitely to be a good one, we want to make sure that the probability of that 5-stack dropping off is very low.
We make an attack that triggers a debuff application roughly every 1/(1/1.3+1/6)=1.0685 seconds, not counting parry haste. So let's use one application attempt per second as a ballpark estimate. The probability of an application being successful is p, and the probability of failure (it gets avoided) is q=1-p.
The probability of the stack falling off is then q^N, where N is the number of attacks we get in the time it takes to fall off. In this case, 15 attacks, since we have 15 seconds. In the worst-case scenario, we have an 8% chance to miss, 6.5% chance to dodge, and 14% to parry, for a total q of 0.285.
Thus, the chance for the stack to fall off is 0.285^15, or 6.65 x 10^-9. In other words, the stack will fall off, on average, once every 150.4 million attacks, or every 4.7565 years at one attack per second. I think that solidifies it as a pretty good assumption; I've certainly never seen one fall off my self. In fact, you have a better chance of:
- winning the lottery (roughly 1 in 1 million to 1 in 14 million depending on the type of lottery),
- getting struck by lightning: 1 in 80,000 to 1 in 280,000,
- dying in a plane crash: 1 in 6000 (overall) to 1 in 13 million (as a passenger on a commercial jet liner)
- dying in a car accident: 1 in 5000 to 1 in 8000 per year depending on whether you use fatalities per licensed driver or per population, up to around 1 in 20,000 per year
- dying in a car accident while on your way to the store to pick up your lottery ticket, assuming you spend 30 minutes in the car doing so: 1 in 130 million
- earth getting hit by a comet (1 in about 100 million),
And remember that all of that is if you've got no hit or expertise. At the dodge soft-cap, with no hit rating, the odds go up to 1 in 1396 billion, at which point you have a better chance of being hit by lightning during a fatal car accident.
Five-stack Ramp Time
This is a little trickier, but not much. We can use the same math for prot and ret by doing everything in terms of applications rather than time. We can convert at the end by multiplying by average attack speed to find out ret's ramp time (as we saw in the last example, ours is about 1 application per second, so prot doesn't need to multiply at all).
To see the pattern, let's just look at the first few possibilities:
- There's 1 way you can get to a 5-stack in 5 hits (ppppp)
- There's 5 ways (or permutations, P(n,r)) to get a 5-stack in 6 hits (ppppqp, for example). The function call here is P(6-1,1)=5. Note the last hit can't be a q (or else it would be a 5-stack in 5 hits), hence the -1 in the function call.
- There's 15 ways (P(7-1,2)) to get a 5-stack in 7 hits (p^5*q^2)
- Code: Select all
P(N-1,N-5) * p^5 * q^(N-5).
The time it takes to get the 5-stack will be the sum of the product of the probability times the ramp-up time, or
- Code: Select all
average_ramp_up_time = sum(N * P(N-1,N-5) * p^5 * q^(N-5) ),
for N=5 to as high as you want to consider. Using the worst-case scenario above (no hit or expertise), it converges quite well by N=15, and by N=20 the probabilities sum to 1 within four digits of accuracy.
I wrote a quick script to evaluate the sum, and let me play with the parameters: calc_sov_ramp.m
The sum evaluates to 6.993 applications, or 6.993 seconds at 1 application per second. Dropping q down to 0.08+0.075 (i.e. reaching the dodge soft-cap of expertise) gives a sum of 5.9172 applications.
We could plot this as a function of expertise skill or hit rating as well. I'll do expertise, because it's the more interesting of the two graphs:

You can see the "knee" in the graph where we hit the dodge soft-cap. If we plot this in terms of raw avoidance reduction (i.e. convert expertise to percent), we get the following graph:

It's clear that the ramp time drops from 7 fairly linearly (it's actually slightly nonlinear, but not enough to make much difference here). It should continue decreasing down to 5 applications once we reach q=0 (28.5% hit+dodge+parry reduction), at which point the curve just stops.
Most rets will be hit-capped, but I'm not sure about expertise-capped. I'd guess both, in which case their ramp-up time is just 5 times whatever their effective swing speed happens to be. If Crusader Strike is the only other attack that stacks HV, then it would be around 1/(1/swing_speed + 1/4.5). Assuming about 3 seconds between melee auto-attacks, that works out to 1.8, for a 1.8 * 5 = 9-second ramp time. If they had zero hit or expertise, it could go up to as high as 12.6 seconds, though since they attack from behind they can probably assume a free 14% hit which brings it down to about 10.4 seconds.
Last edited by theckhd on Thu Sep 03, 2009 3:03 pm, edited 1 time in total.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
-

theckhd - Moderator
- Posts: 7456
- Joined: Thu Jul 31, 2008 3:06 pm
- Location: Harrisburg, PA
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
Theck, you might want to edit the post above (C/P failure, plus CS not stacking HV)
it seems that even the great bringerers of numbers are subject to anthropomorphic fatigue; how bizarre...
/tar Theck
/soothe
it seems that even the great bringerers of numbers are subject to anthropomorphic fatigue; how bizarre...
/tar Theck
/soothe
-

tlitp - Posts: 552
- Joined: Mon Jul 27, 2009 3:25 pm
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
tlitp wrote:Theck, you might want to edit the post above (C/P failure, plus CS not stacking HV)
it seems that even the great bringerers of numbers are subject to anthropomorphic fatigue; how bizarre...
/tar Theck
/soothe
That's what I get for hurrying to post before I leave work.
So CS doesn't stack HV? I could've sworn that at least one of their specials did, but perhaps I'm mistaken. If none do, then for a 3-second swing speed it's basically just 3*5=15 seconds at best (hit and dodge capped, attacking from behind), 3*7=21 seconds at worst (no hit or expertise, attacking from the front), and 3*5.9=17.7 seconds for the third example (no hit/expertise and attack from behind).
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
-

theckhd - Moderator
- Posts: 7456
- Joined: Thu Jul 31, 2008 3:06 pm
- Location: Harrisburg, PA
Re: SoV Stack Stability and Ramp Time
theckhd wrote:And remember that all of that is if you've got no hit or expertise. At the dodge soft-cap, with no hit rating, the odds go up to 1 in 1396 billion, at which point you have a better chance of being hit by lightning during a fatal car accident.
I lol'd. Thanks Theck.
-

Grehn|Skipjack - Maintankadonor
- Posts: 4529
- Joined: Tue May 27, 2008 8:53 am
- Location: Malorne
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
Haven't laughed so hard in a long time lol.
Might be a nice article for rets as well though.
Might be a nice article for rets as well though.
-

Awyndel - Posts: 672
- Joined: Sat Feb 14, 2009 8:49 am
- Location: The Netherlands
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
Hahaha, those are some good probabilities :p.
- Mithos
- Posts: 728
- Joined: Thu Aug 30, 2007 7:54 am
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
So what I'm gathering is if Vengeance ticks fall off during a fight, be ready to die in real life? 
- Cylan
- Posts: 72
- Joined: Sun Nov 25, 2007 9:31 am
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
This has the makings of another Final Destination movie in it.
-

jere - Posts: 2877
- Joined: Fri May 11, 2007 5:12 pm
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
jere wrote:This has the makings of another Final Destination movie in it.
"Oh my God, Jeremy's SoV stack dropped! We're all gonna die!!!!!! NOOOOOOO!"
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
-

theckhd - Moderator
- Posts: 7456
- Joined: Thu Jul 31, 2008 3:06 pm
- Location: Harrisburg, PA
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
theckhd wrote:jere wrote:This has the makings of another Final Destination movie in it.
"Oh my God, Jeremy's SoV stack dropped! We're all gonna die!!!!!! NOOOOOOO!"
Next scene.
Jeremy: Fancy a tan?
- toothdecaykills
- Posts: 138
- Joined: Sat Jul 28, 2007 10:50 pm
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
Out of curiousity Theck, when you did the last libram comparisons, did you account for both the str->sp conversion talent and the new 450 BV on LoSS?
-

jere - Posts: 2877
- Joined: Fri May 11, 2007 5:12 pm
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
jere wrote:Out of curiousity Theck, when you did the last libram comparisons, did you account for both the str->sp conversion talent and the new 450 BV on LoSS?
Nope, but I will once I finalize the 3.2.2 code. The new 200 STR libram should end up being the highest-threat option if my rough estimates are correct.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
-

theckhd - Moderator
- Posts: 7456
- Joined: Thu Jul 31, 2008 3:06 pm
- Location: Harrisburg, PA
Re: Theck's MATLAB TPS analysis (A Jonesy derivative work)
theckhd wrote:jere wrote:Out of curiousity Theck, when you did the last libram comparisons, did you account for both the str->sp conversion talent and the new 450 BV on LoSS?
Nope, but I will once I finalize the 3.2.2 code. The new 200 STR libram should end up being the highest-threat option if my rough estimates are correct.
Though DMC:G will have a lower cost to benefit ratio.
Amirya wrote:some bizarre lovechild of Hawking, Einstein, and Theck
-

majiben - Moderator
- Posts: 6999
- Joined: Fri Aug 22, 2008 4:37 pm
- Location: Retired
Return to Advanced Theorycraft and Calculations
Who is online
Users browsing this forum: No registered users and 1 guest




