Formula/Algorithm for Weighting Game Outcomes
I have an interesting conceptual problem, and I'm wondering if anyone can help me quantify it. Basically, I'm playing a set of game开发者_JS百科s... and for each game I know the probability that I will win, the probability that I will tie, and the probability that I will lose (each game will have different probabilities).
At a high level, what I want to know is: which games should I focus my attention on? For example, I'm not going to put any effort into games that I have a 0% chance of winning (or games that I have a 100% chance of winning). But for a 50/50 game, I will care a lot and want to put in the most effort. If ties were not involved, it would be as simple as: "care-ability" = how close is my chance of winning to 50%? But with ties, it complicates things.
I'm not sure it's strictly necessary, but if you need to, you can assume that a win is 0 points, a tie would give you 1 point, and a win would give you 2 points. In other words, it would be just as valuable to go from a loss to a tie, as it would to go from a tie to a win.
You can also assume that all games are independent. Basically, I'm just looking for a quantitative metric for "care-ability" (a value from 0 to 1 for example).
Anybody have any ideas for how to approach something like this? If you're an economics person, you can imagine I have a finite number of dollars I can spend on improving my chances of winning games. How would you allocate those dollars across the games in order to maximize your expected outcomes?
Thanks in advance!
EDIT: Sorry, I've since realized that this was a fairly poorly phrased question. I don't specify the relationship between additional investment and produced outcome. I wanted to assume it was a linear relationship, but in that case, it doesn't matter which game you invest in, since it will always increase your expected value the same way. My actual problem is a little more complicated, and I need to rethink it a bit. Thanks to everyone who helped and gave great ideas!
You can formulate this as a constrained optimization problem.
I'm going to ignore draws for now...
So what you need to do is first let a_i be the amount you spend on game i.
The chance of winning game i is presumably a function of a_i .. call it p_i(a_i)
Your expected payout for game i is 2 * p_i(a_i)
So your total expected payout is P = 2* Sum( p_i(a_i) )
You have some constraint on the amount you spend... sum(a_i) = A
Your aim is to maximise P subject to the constraint.
Using the Lagrange method this gives you N+1 equations to solve simultaneously, for the unknowns a_i and lambda.
N equations like this:
2 p_i'(a_i) = lambda
And the one constraint equation
sum(a_i) = total
How you solve these are going to depend on the structure of your p_i functions. Depending on your structure or the p_i functions you may need to introduce the aditional constraint that each a_i > 0. I'd try to structure my p_i's to avoid that as it makes solving the equations much harder.
If you wanted to introdue the chance of a draw you'd split your p_i(a_i) into w_i(a_i) and d_i(a_i) and change your payout per game to 2 * w_i(a_i) + 1 * d_i(a_i) .. though this doesn't change any of the core maths.
The most obvious thing that I can think that you need to consider is how much resource (effort, dollars, whatever) is needed to change the probabilities?
Using dollars as an easy example if you have a game that you currently have 0% chance to win but $1 will give you a 50% chance to win then that is a better option than if that $1 will make a 50% chance to win into a 99% chance.
In broad terms I think you need to apply a value to the win/tie/loss of each game (as you have already mentioned). Then you can work out your current expected total value (eg 50%win, 25% draw and 25% loss will give 0.5*2+0.25*1+0.25*0 = 1.25 expected points). The aim would be to then use all your resource to improve the total expected value as much as possible.
This last step is wholely dependant on your resource to success function. Analysis of this function might make it an easy solution.
Some example effort formulae:
1) Linear - one unit of resource will increase your probability to win and draw by X.
This will mean that it doesn't matter where you put the effort as long as you haven't already elimitated the chance of losing. Put the effort into any game that you might lose.
2) Inverse - the lower your chance to win/draw the higher your benefit
If one unit of effort produces "X/win chance" increase to win chance then you are clearly going to get most benefit from boosting your worst games.
3) Midpoint tendancies - the closer you are to an equal win/lose the more you benefit
This simulates the fact that games were you are very likely to win or very likely to lose are least likely to be improvable (if somebody is that much better than you the effort probably isn't important). In this scenario you would want to concentrate on those with as near to equal win/lose chance to try to get maximum increase.
I hope this makes sense. :)
But for a 50/50 game, I will care a lot and want to put in the most effort. If ties were not involved, it would be as simple as: "care-ability" = how close is my chance of winning to 50%? But with ties, it complicates things.
i don't think so. if you're looking for a game with 50/50 win-chance, isn't it just calculating "how close is my chance of winning plus half of the chance to tie to 50%" - or have i missunderstood your question?
EDIT:
the formula would look like this:
x = 1 - abs(0.5-abs(win% + tie%/2));
^ the inner 'abs' here may be useless, but i'm not sure ;)
精彩评论