Ok, Ill try to make an example. Please hide your calculators, because the numbers are just for showing the effects - not showing my math skills
Its pretty long, but I also wanted to show who and why it solves some of the problems I belive the current system have.
If you want to "play" with elo, you can use
http://zeebrothers.net/elocalc.php
Lets say:
TeamA consists of newbies: newAngie, newAndy and oldtimers: oldAnn. oldAron.
TeamB consists of oldtimers: oldBetty and oldBart
TeamC consists of newbies: newCaden and newCathy
(Note the names. Every name beginning with A belongs to Team A etc. All names prefixed with "new" is weak players and "old" is strong players. All weak players play equally good, and all strong players play equally good. Yeah, its very unlikely, but I just want to show the problems - not simulate the league)
TeamA and TeamB are well-establised teams except that TeamA just got fresh cannon fodder (newAngie, newAndy). TeamC is a poor newbie team. Poor souls.
Current rating
First I want to show the bad effects of the current implementation.
Looking at the "league", we can learn that TeamA and TeamB is equal in score. Both teams got 1400 points. TeamC got 800 point
Now, lets see, if TeamA matches TeamB with the different combination of players.
The wining team gets 25 points in every situation, as both teams got 1400 points. Now is this fair?
Case #1: TeamB (oldBetty and oldBart) wins over TeamA (newAngie, newAndy)
If newAngie, newAndy (TeamA) plays oldBetty, oldBart (TeamB) and TeamB gets an easy win (which probably wont surprise anyone), they will get a full 25 points for the victory, even tho its two newbies they play against. TeamB are strong so the newbies (and the Team A for that matter) are punished pretty hard for losing the match even tho everyone expects TeamB to win. Some would consider it newbie bashing if TeamB does this too much (taking points for rich team by playing their weak players)
Case #2: Team A (newAngie, newAndy) wins or get a draw against TeamB (oldBetty, oldBart)
Against all odds, TeamA win. This is something that would hit CNN.. And they get the same amount of points as if TeamB win! So the weak players earns the same amount of points beating old players, as the old players gets for beating the new ones. CNN picked up the story as "breaking news", but our dear old ELO didnt reward their efforts.
But at least get something for the victory. If they get a draw, they get nothing. zip. Nada. However, CNN isnt that hard. They still get an interview.
And we can continue. If the two teams match eachother with only old players.. They will win/lose 25 points. Or get nothing if its a draw.
I'm not sure about you, but two newbies beating up a strong team, should be rewarded more compared to a more even fight.
Case #3: TeamA (newAngie, newAndy) vs TeamC (newCaden and newCathy)
The problem also appears in the opposite situation. If TeamA (with newAngie, newAndy) players TeamC (newCaden and newCathy) - an all newbie game (and I assume this is an even fight). As TeamA is rated high (with 1400) and TeamC is rated low (with 800) the effects of a draw or loss betweem for TeamA is huge. And if they win, they wont get much point-wise.
TeamA wins over TeamC. ELO rewards TeamA with 2 point (and TeamC loses 2 points)
The match is a draw: TeamA loses 23 points and TeamC wins 23.
TeamA loses: They lose 48 points (which TeamC gets)
Does this seem fair - considering that all the players got similar skill?
The problem
Based on the team score, ELO calculates the probability for one team to win. If the team with high probability wins, the reward is smaller. However if the team with low probability wins, they get a big reward.
SideNote Or YouCanSkipThisParagraph: One can also say: If our prediction (the probability) is correct, then the elo rating must be almost correct (or close to it), so we just need to adjust it in small steps. However, if our prediction is wrong (TeamA won, and we didnt belive they could) then we need to make a larger adjustment. So its vital that the numbers we work with is as good as possible.
The problem is, as you might have figured out. We got one score per team. And since alot of teams consist of players of different skilllevels, playing the team is very much different depending on the participating players. (Eg. Strong TeamA is oldAnn and oldAron.. While weak teamA is newAngie, newAndy). So it seems that one score per team isnt enough.
My proposal
My idea is pretty simple. Begin rate every player. Determine if a player is a newbie or a old hardcore tanker. If we know this, our estimation of how strong a team is, can be based on who is participating - and more importantly, how good they are.
Let's say that all new players got 800 as personal elo score, and old players got 1400 as elo scores.
Case #1: TeamB (oldBetty and oldBart) wins over TeamA (newAngie, newAndy)
First of all. We can do better than belive that TeamA and TeamB are both a 1400 points strong teams. We actually know who is playing.
TeamA = (800 + 800) / 2 = 800
TeamB = 1400 + 1400 / 2 = 1400
Now the ELO score for the teams are more correct. TeamA with its newbies are rated much lower than TeamB with its oldies.
In this situation, TeamB will only get 2 points for beating the newbies.
If oldAnn, oldAron was playing instead of newAngie and newAndy, the team would be considered even. And TeamB would have won 25 points. Much much better, imho.
Case #2: Team A (newAngie, newAndy) wins or get a draw against TeamB (oldBetty, oldBart)
CNN is back! And this time Team A gets more than a interview. They get 48 points for their amazing victory. (as two newbies are not supposed to beat two oldies)
Even if they dont do that good, and gets a draw, they'll still get 23 points. TeamB should be able to win this one, according to the numbers.
Dosnt this approch seem more fair; that a newbie team beating a older team, gets a bigger reward, than a old team beating newbies?
CNN is bored, let's see what happens with the last case.
Case #3: TeamA (newAngie, newAndy) vs TeamC (newCaden and newCathy)
Before: TeamA was rated too high, because of the previous matches by oldAnn, oldAron. If the new players lose a match, they shouldnt be punished for this.
As all players got 800 in score, the "teamscores" will be:
TeamA = 800 + 800 / 2 = 800
TeamB = 800 + 800 / 2 = 800
.. No surprise. Teams got even scores, so depending on who wins, they will earn 25 points. Draw gives nothing.
So, how does personal ELO changes?
If a team wins a match, earning them 25 points, the 25 points are shared between the players. If we look at case #3, and TeamC wins, newCaden and newCathy will get additional 12.5 points each (each getting a total of 812.5). TeamA's newAngie and NewAndy gets a new elo score of 787.
If TeamA and TeamC rematches. Now, TeamA have swapped newAngie with oldAnn. So TeamA is stronger than before, even trough they have just lost a match. Let's see how the the system reacts.
TeamA: 787 + 1400 / 2 = 1093.5
TeamC: 812 + 812 / 2 = 812
Now, ELO will give them TeamA probability that they will win, as they just got a stronger player (oldAnn) participating.
If TeamA wins they will earn 8 points
If TeamB wins they will earn 17 points
If its a draw, TeamA wins 42 points.
Now, because of TeamA's swapping of players, TeamB is considered as the underdogs - so if they win, they will gain many points.
But how about the teamscore shown on the website
Ok, if all players got a personal ELO stats and the team elo score depends on the participating players - what score should we then use as the "overall" teamscore - e.g. for showing/sorting teams on the league webpage?
One can use the average of all players in the team to calculate how good the team is. That would probably be the best. There is alot of others ideas, but its basically boils down to, using the player elo's to find a team elo.
Final words
You wont belive this, but I've left out some details
. And please understand, this is not a perfect idea. And it is not final. I've outlined some good/bad things about it in my first (and alot shorter) post.
I don't need huge pictures here.