Gotchaye wrote: Phantron wrote: You're making the assumption that the entity that came up with the formula is a person, not a computer. Just because it is difficult for a person to imagine what formula would have whatever characteristics D3 was going for does not mean it is hard for the computer to figure it out. The computer can basically just do a poly fit if you give it some data points that describes the intended behavior of the system. And, since we don't know if it's a person or a computer that came up with the formula at D3, you can't say 'it must be a person that came up with this formula'. Yes, if you know a person came up with the formula in D3, what Nemek has is almost certainly right, because no person can come up with a better formula. This does not mean a computer cannot come up with a better one. In fact, it's pretty trivial for the computer to do it. This is kind of like how no human has an elegant solution for the 4-color problem and it was solved by a computer that just plugged away at every possible map and determined that it can 4-color every single map, thus proving something that no human was able to do for decades. Some problem doesn't have simple and elegant solutions, which is why we have computers. I'm pretty sure it can be shown that there is a unique solution (besides the boring one of constant f) to the problem you posed, and since a solution is that the rubber-banding function is c*D, where c is some constant and D is the score gap, then that's that. But let's try to solve it. Obviously the solution must be continuous, and it can be approximated arbitrarily closely by a sufficiently impressive polynomial. What you're asking for is a function which is such that A*f(D) + B*f(D+A*f(D)) = B*f(D) + A*f(D+B*f(D)). So we replace f with its Taylor expansion about D. f(D) remains f(D), and f(D+A*f(D)) becomes f(D) + f'(D) * A*f(D) + f''(D)/2 * A^2*f(D)^2 + f'''(D)/6 * A^3*f(D)^3 + ... We can divide through by f(D) and combine, which eliminates several of the leading terms. We end up with 1/2 * f''(D) * f(D) * (B^2*A + A^2*B) + 1/6 * f'''(D) * f(D)^2 * (B^3*A + A^3*B) + ... = 0, and this needs to be true for all A, B, and D. Clearly this is only going to happen if, for every D, either f(D)=0 or all of the second-order and higher derivatives of f at D are 0. We know that f(D) is never 0. So all of its second-order or higher derivatives must be 0 everywhere. So f must be linear. Edit: Of course, this violates the assumption that f(D) is non-zero everywhere unless f(D) is a constant. But as long as we're interested in A, B, and D such that f(D) is not 0 then f can be linear. And so as soon as you make it non-linear you're going to violate the condition you've laid down, and thus order will be important. And the rubber-banding is very clearly not linear where it switches regimes to and from a constant 10x and a constant 1x.
Phantron wrote: You're making the assumption that the entity that came up with the formula is a person, not a computer. Just because it is difficult for a person to imagine what formula would have whatever characteristics D3 was going for does not mean it is hard for the computer to figure it out. The computer can basically just do a poly fit if you give it some data points that describes the intended behavior of the system. And, since we don't know if it's a person or a computer that came up with the formula at D3, you can't say 'it must be a person that came up with this formula'. Yes, if you know a person came up with the formula in D3, what Nemek has is almost certainly right, because no person can come up with a better formula. This does not mean a computer cannot come up with a better one. In fact, it's pretty trivial for the computer to do it. This is kind of like how no human has an elegant solution for the 4-color problem and it was solved by a computer that just plugged away at every possible map and determined that it can 4-color every single map, thus proving something that no human was able to do for decades. Some problem doesn't have simple and elegant solutions, which is why we have computers.
Phantron wrote: Solutions to differential equations are only approximations anyway. There are very few differential equation that have a precise solution (like the ones they force you to solve by hand when you take the class). I remember when I took DE, most of the actual problem was just you plug in something in the computer and say 'the computer told me (impossibly complicated stuff) is likely the answer', because that's about all anyone can do.
Phantron wrote: In fact, even if the formula is indeed what you claim, you'd surely expect sometimes you get a couple points more than expected simply because the overall leader finished another mission while you're doing yours. I guess the point of this is that we really need D3 to tell us what they're trying to accomplish with the rubberband instead of us trying to reverse engineer it. My point, though, is that just because a diferent solution can be impossibly complicated for a human to figure out, doesn't mean it is not the solution. Not when you can simply order your computer to do all the work.
Nemek wrote: Phantron wrote: In fact, even if the formula is indeed what you claim, you'd surely expect sometimes you get a couple points more than expected simply because the overall leader finished another mission while you're doing yours. I guess the point of this is that we really need D3 to tell us what they're trying to accomplish with the rubberband instead of us trying to reverse engineer it. My point, though, is that just because a diferent solution can be impossibly complicated for a human to figure out, doesn't mean it is not the solution. Not when you can simply order your computer to do all the work. Well of course you would expect to get a couple more extra points if the overall leader finished another mission. When testing the formula, though...you don't actually complete the mission, you open up MPQ, open up the event, check the leaderboard, check your point score. Everything is retrieved from the server at the same time (or at least within seconds). And, you're right - it can definitely be much more complicated, and you should be skeptical of the information I present. When it was first brought up last month, I thought the same thing...and is in large part why I never bothered to try to figure it out myself - the variables/formulas could be so crazy, it could be unsolvable. But, then the formula was presented...I doubted it...put it through a battery of my own testing, and saw that it gave me the correct answer every single time. Could the formula be different and I just got lucky with the data points I picked? Could the formula just have converged on the proposed formula so that I wouldn't have seen a difference? Yes, surely...but I find it unlikely. What's interesting is that for the order sensitivity stuff...I really only looked at it yesterday for the first time. Truthfully, I'd suspect that the concept of order sensitivity was a very minor point in developing whatever formula is being used, and it's just a byproduct of what was chosen (and, even then, is pretty damn minor.)
walkyourpath wrote: Here's a little formula I wrote to help me predict my final placement in PvE events, you may find it useful: Boolean Var - IsNemekInBracket Var - MyFinalRank If IsNemekInBracket=yes, then MyFinalRank=MyFinalRank-1
mischiefmaker wrote: Also, walkyourpath, I found a bug in your code: walkyourpath wrote: Here's a little formula I wrote to help me predict my final placement in PvE events, you may find it useful: Boolean Var - IsNemekInBracket Var - MyFinalRank If IsNemekInBracket=yes, then MyFinalRank=MyFinalRank-1 Your code fails the AvengersElite unit test.
walkyourpath wrote: If IsNemekInBracket=yes, and MyHP > 3000, then MyFinalRank=MyFinalRank and MyHP=MyHP-2500
var sleep, stress; while (bracket.status != finished){ sleep--; stress++; }