For one, with e = 0.001 the algorithm N([0.64, 0.36, 0, 0, 0]) = 3 gives a wrong result. Using e = 0.0001 would give a better answer in this case. I haven't given more thought though on what e is optimal.
Though the bigger issue is the number of players can't strictly be computed based on percentages alone.
It would be nice if we could make the assumption that the least common multiple (with some leeway to account for rounding) is the correct answer, but I don't feel comfortable with that. This assumption comes from it being just past midnight and therefore we assume the number of players is "small." But how small?
What should N([0.5, 0.5, 0, 0, 0]) return? It could be any multiple of 2, many of which are small.
The only way I can think to get a correct answer is to frequently refresh the page to get a time series of percentages. Then an algorithm could possibly give the number of players.
For example say you saw [0.5, 0.5, 0, 0, 0] and then refresh and immediately after saw [0.444, 0.444, 0.111, 0, 0]. If you were confident that only 1 player joined between refreshes, you would know that the number of players is now 9. If you can't be sure it was only 1 player, it would be a lot more complicated though.
For one, with
e = 0.001
the algorithmN([0.64, 0.36, 0, 0, 0]) = 3
gives a wrong result. Usinge = 0.0001
would give a better answer in this case. I haven't given more thought though on whate
is optimal.Though the bigger issue is the number of players can't strictly be computed based on percentages alone.
It would be nice if we could make the assumption that the least common multiple (with some leeway to account for rounding) is the correct answer, but I don't feel comfortable with that. This assumption comes from it being just past midnight and therefore we assume the number of players is "small." But how small?
What should
N([0.5, 0.5, 0, 0, 0])
return? It could be any multiple of 2, many of which are small.The only way I can think to get a correct answer is to frequently refresh the page to get a time series of percentages. Then an algorithm could possibly give the number of players.
For example say you saw
[0.5, 0.5, 0, 0, 0]
and then refresh and immediately after saw[0.444, 0.444, 0.111, 0, 0]
. If you were confident that only 1 player joined between refreshes, you would know that the number of players is now 9. If you can't be sure it was only 1 player, it would be a lot more complicated though.