# Assess team win rate by combining individual win rates?

Suppose I have 5 players on each team in a game where each player selects a character (League of legends, Valorant, etc.).

I am considering the overall win rates of the characters, and the unique win rate attached to the player is not considered (i.e some players focus on using X character, so their win rate may be higher with this specific character, I am ignoring this, I am using the win rate of a character across all games played in a given season).

Each character has been played (in a game that has matches consisting of 2 teams formed by 5 players each, selected at random) anywhere from at least 4,000 to even 60,000 times in a given patch (lets just use season for simplicity).

Upon entry, team A may have overall individual character win rates (calculated across all matches played from and up to a certain point) of [40%, 50%, 55%, 50%, 60%] and team B may have individual win rates of [50%, 45%, 60%, 40%, 65%] for each character (not player) respectively.

Is it naïve to just average the win rates and consider that the team win rate, or is there a more robust method of doing this?

Despite all the characters having 4000+ games, some may have only around 4000, some may have 8000, some may have even more depending on popularity, so I imagine there may need to be sort of weighting, but I am not sure if 4000+ games is enough to disregard the need for a weighting system (as opposed to a basketball player playing less than 20 games a season and then 70 games the next, clearly weighting there may be more important).

My goal is to determine a predicted win rate for each team given the win rates of each character selected.

I can come up with everything, I am just trying to figure out that last key data point (predicted team win rate), it seems almost too easy to just average the 5 win rates, or maybe I am just overthinking it =)

Thanks!

I have been thinking over the same question in my head for the past few weeks. I don't have a good answer yet sorry.

I know for certain that averaging the WRs is not correct. For example, consider a theoretical character with a 100% WR (broken, I know!). Regardless of the other characters picked in the game, they always win. If we have a team of 50%, 50%, 50%, 50%, and our 100% character, on average we get 60% WR. But this does not logically fit with the fact that the character we described is guaranteed to win! So there must be a more fitting statistical method.

I haven't come up with a good method yet sorry. In my thinking, it's clear that more weighting needs to be given to characters who are further from a 50% WR: i.e. a character with a 15% WR will make their team MUCH more likely to lose, even if the "average" WR of the team is 43%!!

It's probably best to focus on a formula that produces an accurate average for one team (against any given five characters in the second team) before then making a more complex formula for comparing two teams' individual WRs.

I somehow wish I'd paid more attention to Statistics in school!

Best of luck, R.

Cool question.

To me this looks like a regression problem with interactions.

As @Raphael (did I mention correctly? how does it work?) mentioned above it's not a linear sum problem. for example an overpowered character may force the probability to 1, but averaging reduces the probability.

A second example would be (I don't know the games so don't judge me :P) that a team with no healers has a lower probability of winning, so adding a healer would increase the probability. But a team of all healers is no good either.

So we know it's not a summation problem, and we know that interactions are important. and what we want to find is the following:

$$P(win|c_1,c_2,c_3,c_4,c_5)$$ where $$c_i$$ are the 5 characters.

One way to do it is to assume that $$P(c_i)$$ is a function with interactions of the following form:

$$P = a_0 + a_1*c_1 + a_2*c2 ... a_n*c_n + b_{1,2}*c_1*c_2 + b_{1,3}*c_1*c_3... + b_{n,n}*c_n*c_n$$

where $$a_0$$ is a bias term, $$c_i$$ are indicator variables (0 or 1) for each character and $$a_i$$ are their coefficients. a second interaction term for each character pair is also added and represented by coefficients $$b_{i,j}$$. which can easily be interpreted as a matrix and $$a_i$$ a vector. so in Einstein notation we can write it as:

$$P = a_0 + a_i*c_i + b_{i,j}*c_i*c_j$$

we now want to find the missing coefficients that optimize our problem.

We can further force it to be a valid probability by making it a logistic regression:

$$P = \frac{1}{1+e^{-(a_0 + a_i*c_i + b_{i,j}*c_i*c_j)}}$$

And a final version I'd suggest would be to use a factorization machine, where we replace the indicator variables by a vector of coefficients (an embedding) that we optimize:

$$P = \frac{1}{1+e^{-(a_0 + \Sigma_i a_i*c_i + \Sigma_{i,j} e_i^Te_j*c_i*c_j)}}$$

where $$a_0$$ is a constant, $$e_i, e_j$$ are the embeddings of the i'th and j'th characters and $$c_i,c_j$$ are the indicator variables, T is transpose. we now loop over all 5 added characters, so when having 5 healers we'll have: $$P = \frac{1}{1+e^{-(a_0 + 5*a_{healer} + 5e_{healer}^Te_{healer}}}$$

If necessary we can add 3rd order terms.

Here for example if having multiple healers is a bad thing, the interaction will be negative and the more healers we'll have the worse the probability will become.

That's my 2 cents.