RFID - Is it a GOOD idea or a BAD idea

Where do you get those statistics? Until this year’s robot hits the field, you don’t have any data.

And don’t say by previous years or by longevity of the team. We tried the latter years ago, with horrible results. The field of teams was split into 3 groups, numerically. Each alliance was 1 from Group A, 1 from B, 1 from C. At the old Great Lakes Regional in Ypsi, there were a lot of teams with low numbers attending. That resulted in 1114 being put in Group C. So rookies and 2nd year teams could never play with 1114, only against them. And that’s not the only instance of the algorithm failure.


The purpose of the qualification rounds is not to ensure that every match is evenly matched; the purpose is to determine which robots are the best via the seeding order. If every match is perfectly balanced based on robot performance (equal chance of winning), then the seeding order would essentially be random. If every match is random, over a large sample size, the better teams will win more matches and therefore seed higher. Random is exactly how it is supposed to work.

Now the scheduling algorithm isn’t completely random, you can find more information about it here: https://idleloop.com/matchmaker/


that is all true but it has nothing to do with what I am talking about. gambler’s fallacy does not apply either.

Yes it does. You want your schedule to “even out” in the end.

schedule “even out”… explain?

Gambler’s fallacy: the belief that random events will balance in good or bad. (Ex: you play against 4 different good teams and so you think it should now pit against bad teams.)

that is a problem… and I can show you in real match ups. Alliance picks by First putting teams with less ability against higher ranked teams time after time. like 10 out of 12 times doing that.

Please explain. Why is this a problem?


As @Happycowdance said, how do you want to balance this if the schedule is released before any matches?

Also, naturally the worse the team is the more likely they’ll face better teams.

I do not … the first round … has to be played as a seeding round… as well as every round after is a seeding round… the first round should not count for anything but seeding. Still if we were collecting individual performance on a robot our statistics would be okay.

You want a continuously changing schedule?

Yes… by round. Correct the alliance selections based on individual robot statistics.

1 Like

Please use proper FRC terminology in your posts (specfically QUALIFICATION and PLAYOFF matches). It is making it incredibly hard to understand what you are trying to say. You can find a glossary here: https://firstfrc.blob.core.windows.net/frc2020/Manual/Sections/Section12.pdf


yes and every team shall participate in the first round for the ultimate robot battle royale

even if you get accurate data for every team(you wont whats to stop teams from doing things liking smurfing to play against weaker robots. what if a team shows up with a broken shooter that they repair and suddenly they are really good what if a team gets a jam or the robot fails in the first round)

I still dont understand how you are gonna arrange the match schedule to pick the first ranked seed
do you intended to pick the highest scoring robot


thanks. that is why I need you guys!

That is a terrible idea. When I’m fixing the bot, I need to know exactly when I play next as soon as I go. How do you notify teams in a timely manner of when they play?

1 Like

There’s some very good discussion on match schedules on this thread: How is matchmaking done at competitions? (Kind of a rant)

My thoughts are largely unchanged from the ones I had then, namely:
We should use pre-generated schedules a la Chezy Arena instead of re-generating at each event. This would save time at events, provide more schedule transparency so that independent parties can better validate schedule fairness, and better open the door for “balancing” (by team strength) algorithms.

if and only if the above is done, it would indeed be possible to create more “balanced” (in terms of partner and opponent strength) schedules assuming you pre-sort the teams by some strength metric. Indeed, I have created one such implementation of these schedules as described here.

Pre-ranking teams is an understandable non-starter for some folks though, so if we take that off the table I don’t believe the schedules can be noticeably improved over their current state.

There is a break between rounds and you only play once a round.

I think you are fundamentally misunderstanding the purpose of Qualification Matches. They are not meant to always be competitively fair, and if they were competitively fair, you would have more lower performing robots at the top of the seeding order for alliance selection. The seeding order would be inaccurate.

1 Like

This is too easily exploitable

If for example I am the worst team at an event, I will always be facing alliances made up of stronger teams then my own. Even dynamic schedule adjustment (however it is done) isnt going to fix that

So I’m going to try and summarize: You want to use the data collected from Automated per-robot scoring, to dynamically change the qualification schedule to make each alliance “balanced”? First, this sort of change is a bit wide in scope given that no part of it is even nailed down yet. Second, this would (as someone mentioned above) drive every team towards a 50:50 win loss record (with minor deviations). This would mean the top 8 best robots would be even less likely than they are now to be in the top 8 but I guess if someone defines “best” differently than the current ranking /tiebreaker system then its all out the window