I'd be interested in a decent working way of calculating a good ratio of elo handicap AT vs randoms. What would be a good way to do that?
It would probably take a fair bit of work and testing; my initial suggestion of
Team ELO = ((arranged team size) / (game size)) * 1.2
might work, but it also means that if your entire group is in the top ~10% of players it'll take ages to find a match, as your team ELO will end up being higher than any actual players. It also doesn't work too well with large skill ranges.
After looking at it some more I think there are two other adjustments I'd want to make. Firstly, the 'penalty' needs to increase with raw number of players on the pre-made team. While a pre-made 2v2 is better than a random 2v2, coordinating with 1 random player (and getting a good random player) is a lot easier than 3 - so I would suggest a 4-stack in 4v4 should be penalized more than a duo in 2v2. Similarly, I also don't think taking a "raw average" is entirely valid, either; 3 'ok' players and 1 'top tier' player all on voice comms will do much better than 4 slightly-better-than-ok players, even if their average ELO is the same, as the 'top tier' player will be able to coordinate and advise the lower skilled players on builds, counters, and what to expect/do. As a result I'd suggest a weighted average where we estimate a group's skill to be slightly higher than the numbers suggest.
After a bit of work, this formula might do the trick; or at least work as a starting point.
Group ELO = (((Combined ELO / Group Size) + ((Highest ELO - Lowest ELO) * 0.15)) * (1.05 + (0.10((Group Size)/4)))
That's kind of a mess and maybe someone who's a math expert can clean it up. However, what it's doing is weighting the average ELO slightly towards the better player(s), and then scaling the "group penalty" up by 5% per group-filled player slot (i.e. 10% for 2 players in a group, 12.5% for 3, 15% for 4).
In the case of "mixed" teams (i.e. 2 groups, 1 group and a random, etc.) we multiply each "Group ELO" by the percentage that the group makes up; so 0.75 for a 3-stack in a 4v4, 0.5x for 2x2-stacks, etc. This is done instead of taking a simple average, as we want to put slightly more weight on having a large pre-made team.
Let's use an example of a 4-stack: 2200 ELO, 1500, 1300, 1200.
First half of the equation:
((2200 + 1500 + 1300 + 1200) / 4) + ((2200 - 1200) * 0.15) = (6200 / 4) + 150 = 1700 ELO average
Second half of the equation:
(1.05 + (0.10(4/4)) = 1.05 + (0.10(1)) = 1.15
Combined:
Group ELO = 1700 * 1.15 = 1955 Group ELO
By comparison, their average ELO is 1550 - so playing as a "4-stack" in 4v4 penalized them by 20.8%. Their best player will still be better than the opposing team by a slight amount (by 245 elo), but the remaining teammates will be facing strong opponents for their skill level (455, 655 and 755 elo higher).
Here are some other examples (and the work):
I'm sure there are better systems to use, and there might already be some out there, but this is what I can think of right now.