The dreaded "draw"

Place discussions about upcoming events here in this thread.

Moderators: BeligerAnt, petec, administrator

EpicentrE
Posts: 831
Joined: Mon Jun 09, 2003 12:00 am
Location: Coventry
Contact:

The dreaded "draw"

Post by EpicentrE »

I'm looking at making a new tournament management system for future antweight events. The main reason I'm doing this is because I want something that integrates with streaming software to give a better experience for the viewer and a more user-friendly experience for the people running the tournament. That said, while I'm at it, I'm also looking at the "draw", and working out the most fair and balanced way to implement this. I'm making this thread as I'd like discussion and opinions on how best the draw should be handled.

The three laws of r̶o̶b̶o̶t̶i̶c̶s draws

My opinion is that there are three main aspects to consider when doing the draw;

1. Ensure no two robots from the same team come up against each other unless it is absolutely necessary.
2. Ensure that any "byes" are distributed as evenly as possible around the bracket, such that the difference in number of total possible fights between robots (excluding winners/losers bracket differences) is not more than 1. Additionally, it should be ensured that byes never meet each other in the bracket.
3. Ensure that the final bracket is as random as possible, with no specific types of teams (in relation to how many robots they are entering) having a greater or lesser chance of meeting another type of team.

I've put the above in what I believe to be the order of importance, but please let me know if you disagree. I'm going to expand on a few of the points;

1. This is something we normally aim to do during the draw, but some systems still do not achieve this as well as they possibly could. In an ideal situation, a team containing 4 or 3 robots all in the same bracket (winners or losers) should not have to fight amongst themselves until there are only 4 robots remaining in that side of the bracket. Teams with two robots should not have to fight them amongst themselves until there are only 2 robots remaining in that side of the bracket.

2. As an example, in a 100-robot tournament, you would have 16 groups of 8, leaving 28 byes. These byes would be divided such that 12 groups have 2 byes and 4 groups have 1 bye. Thus, a robot can only come up against a maximum of one bye, meaning there is only a one bye difference between it and a robot which gets 0 byes. This has to be taken into consideration when building the brackets, as an excess of byes in one bracket could mean one robot gets more than one bye, where another may still get 0.

3. This is the trickiest part. While still trying to adhere to rules 1 and 2, there are multiple considerations that need to be taken into account to ensure that the final draw is as random as possible. My first draft of the logic behind this system divided the bracket into 4 equal quadrants (more on this later), divided the 4-robot teams amongst these quadrants, and then moved onto the 3-robot teams, dividing their robots amongst the quadrants equally, with the aim of having a roughly equal number of robots in each quadrant by the end of this phase. However, it turns out that following this path means that any robots on a 3-robot team are less likely to fight robots on another 3-robot team than they would be in a completely random system, making it undesirable. The same is true for 2-robot teams. Additionally, single-robot teams are less likely to face other single-robot teams, as they are being used to fill in the gaps left by multiple-robot teams. All of this gave me a headache and made me rethink the system.

Where I am currently

Taking all of the above points into consideration, and combining that with the situations above in which I worked out that certain types of teams could have less chance of meeting other certain types of teams if bracket balance is deemed as more important than random chance when distributing robots, I've come up with the following course of actions. This is still very much a work in progress, but I think I'm getting there. For the following example, I'm assuming a tournament with 100 robots. This would mean 16 brackets of 8 robots each, with 28 byes totally divided such that 12 groups have 2 byes and 4 groups have 1 bye. I am also purely focusing on the winners bracket to start with, as I believe the losers will work following the same logic.

The first step is to divide the brackets into quadrants. If we look at this bracket and assume that each "point" represents a group of 8 robots which will be whittled down to one winner before entering this bracket, it's easy to see how we divide it into quadrants in such a way that robots from the same teams won't meet each other until as late as possible. We would divide it such that the 4 brackets in the top left, top right, bottom left, and bottom right make up our 4 quadrants. In our example, each quadrant is made of 4 8-man groups, meaning 32 spots in each.

Teams with 4 robots then have their robots divided equally (and randomly) between these 4 quadrants. They are not assigned to a group yet; that is left until a later stage. Next, the byes are divided equally between the 4 quadrants. In our example, with 28 byes, they can easily be divided equally such that each quadrant has 7 byes, although in the case of the number of byes not being divisible by 4, it would just need to be as balanced as possible. If the number of byes is divisible by 2 but not by 4, then opposite halves of the bracket should have a matching number (so if we had 26 byes, we would have 13 (6+7) assigned to the left-hand quadrants and 13 (6+7) assigned to the right). Once again, these are not assigned to a group yet.

Next the three-robot teams are dealt with. These are done in the same way as the four-robot teams, with each robot from a team being randomly placed into one of the four quadrants. There is a small chance that if there is a lot of 3 and 4-robot teams, and if the random distribution favors putting the three robots into the same three quadrants, that one quadrant might end up over capacity. Although this is a very unlikely occurrence, the system checks after each assignment that no quadrant is full (including it's share of byes), and if it is, it discounts it from future distribution.

Next, the two-robot teams have their robots divided amongst the left and right hand sides of the bracket. The placement for these is again completely random, but the capacity of each quadrant is checked to ensure that none go over capacity. Once again, I think there is a miniscule chance that if there are a huge amount of 4 and 3-robot teams, and the random placement is skewed towards certain quadrants, that there could be a problem at this stage, but without further investigation I'm confident that this would occur so infrequently that it's not worth worrying about.

All that is left is the single-robot teams at this point, and these robots are divided completely randomly amongst the remaining spots in each quadrant.

Now that each quadrant is full, the robots and byes within it are divided randomly and equally amongst the brackets within the quadrant (which in this example would be 4).

Feedback

As I mentioned above this is still very much a work in progress, but so far I'm confident that the method detailed above adheres to the rules which I set out as well as being as random as is possible within the restrictions. I would love any feedback you may have about this system, whether you think it's fair or not, whether you see any problem scenarios which I haven't outlined, etc.
Scott Fyfe-Jamieson, Captain of Epic Robotics. Champion of AWS38/41/42.
http://www.epicrobotics.co.uk
User avatar
Rhys
Posts: 738
Joined: Tue Oct 29, 2002 12:00 am
Location: Caerphilly, South Wales

Re: The dreaded "draw"

Post by Rhys »

Point 1 and point 3 seem to conflict with each other. If you want to keep the draw as random as possible, then putting robots into seperate quadrants is a pretty unrandom thing to do.

I think we should keep people apart in the group stages, but once we're into the last 16 I think it should just be luck of the draw. Keeping people's robots apart is just jiggling the draw in favour of people who have lots of robots.
Image
EpicentrE
Posts: 831
Joined: Mon Jun 09, 2003 12:00 am
Location: Coventry
Contact:

Re: The dreaded "draw"

Post by EpicentrE »

Rhys wrote:Point 1 and point 3 seem to conflict with each other. If you want to keep the draw as random as possible, then putting robots into seperate quadrants is a pretty unrandom thing to do.

I think we should keep people apart in the group stages, but once we're into the last 16 I think it should just be luck of the draw. Keeping people's robots apart is just jiggling the draw in favour of people who have lots of robots.
Thanks for the feedback. I'm aware that any rule or system that promotes anything that isn't random conflicts with rule 3, however I believe those things laid out in rules 1 and 2 are more important (because they promote fairness between competitors) than randomness.

There's a few ways of looking at it. I would argue that someone entering 4 robots should have a 4 times greater chance (all things being equal - which obviously they're not, but for sake of argument) to progress through the competition to the later stages than someone entering one robot. However, this is only true if their robots do not fight; if their robots come up against each other, one of them has to lose, thus their chances of progression are now less than 4 times a single robot's chances, thus making it unfair on them.
Scott Fyfe-Jamieson, Captain of Epic Robotics. Champion of AWS38/41/42.
http://www.epicrobotics.co.uk
User avatar
peterwaller
Posts: 3213
Joined: Fri Feb 15, 2002 12:00 am
Location: Aylesbury Bucks
Contact:

Re: The dreaded "draw"

Post by peterwaller »

I am not saying that this is how it should be but in the charts we had a maximum of 8 groups with between 6 and 16 robots in a group.
At the last AWS we had 86 robots in 6 groupsof 11 and 2 groups of 10.
The groups were designed so the path to the first in group never differed by more than 1 fight, as below.
Group.........Two.........Three.........Four
Size...........Fight.........Fight.........Fight
6.................2..............4...............0
7.................1..............6...............0
8.................0..............8...............0
9.................0..............7...............2
10...............0..............6...............4
11...............0..............5...............6
12...............0..............4...............8
13...............0..............3...............10
14...............0..............2...............12
15...............0..............1...............14
16...............0..............0...............16
So in your example of 100 robots you would have 4 groups of 12 and 4 groups of 13 which still gives 28 robots with 1 less fight.
I think that ensuring robots from the same team are put into different groups is a good idea but I feel that is as far as we should go or we are giving an unfair advantage to the bigger teams many of whom dont need it.
I see Rhys has made the same point while I was composing this post.
Last edited by peterwaller on Mon Aug 11, 2014 1:43 pm, edited 1 time in total.
EpicentrE
Posts: 831
Joined: Mon Jun 09, 2003 12:00 am
Location: Coventry
Contact:

Re: The dreaded "draw"

Post by EpicentrE »

A group of 6 is mechanically identical to an 8-man group with 2 byes, they're just presented in different ways. I prefer this method of presenting because I believe it makes it more obvious why some robots have more or less fights than others.

As I've already opined, I believe not ensuring a team's robots are separated until as late as possible actually unfairly disadvantages larger teams. Imagine two teams, both of which have drivers of equal skill, and robots of equally good design and engineering. If one of these teams has 4 robots and the other team has one robot, should the former team not have (as close as possible to) 4x the chance of success of the latter team? If the answer to this is yes, then that can only be achieved by keeping their robots separated until as late as possible. If the answer to this is no, I'd like to know your reasoning.

If the opinion of the majority is that I'm wrong then I'll of course adjust my implementation, but I would like to know the logic behind your opinion and/or a rebuttal of my logic above (in the previous post) so that I can better understand your viewpoint.
Scott Fyfe-Jamieson, Captain of Epic Robotics. Champion of AWS38/41/42.
http://www.epicrobotics.co.uk
User avatar
peterwaller
Posts: 3213
Joined: Fri Feb 15, 2002 12:00 am
Location: Aylesbury Bucks
Contact:

Re: The dreaded "draw"

Post by peterwaller »

Having 4 robots gives a great advantage but I don't see why it has to be 4 times that for 1 robot.
The fact that at AWS44 the last 6 battles were all between just 3 teams suggest that the most competative teams have advantage enough without making it harder for the rest of us mere mortals.
EpicentrE
Posts: 831
Joined: Mon Jun 09, 2003 12:00 am
Location: Coventry
Contact:

Re: The dreaded "draw"

Post by EpicentrE »

If someone spends 4 times the money on their robots, 4 times as much time designing and building, and 4 times as much time driving, repairing and recharging their robots at the tournament, I don't see why they shouldn't have 4 times the chance of success.

Looking at it on a per-robot basis, arguing that teams may have to fight between themselves in cases where it is not absolutely necessary to do so is arguing that teams with more robots should have a lower chance of success per robot than teams with fewer robots. Following that line of thinking, why even bother separating them in group stages? If you're viewing the competition from a team-focussed viewpoint, and you believe having more robots is enough of an advantage for the team in the first place, then surely it's justified if now and again one has to eliminate the other early on.

Additionally, this system treats all teams equally. At the last AWS I ran, there were two times just after group stages where Alasdair had to choose which one of his robots would progress in it's bracket and which one wouldn't. Because of how the bracket had been generated (which was no multiples in group stages but random after that, which is what others here have suggested), his team had two automatic losses which were not preventable. I'm sure there were other teams of equal or greater size in the same tournament that had no guaranteed losses, and wouldn't have had until much later in the tournament than Alasdair did. Why should we chalk one team's automatic disadvantage over another's up to 'chance', if we can use a system that won't unfairly advantage or disadvantage any team?

Random is not fair. Fair is not random. We have a unique situation in antweights that we even need to make considerations like this, so I don't believe there's a precedent as to what works best, as this hasn't been challenged before to my knowledge.

I feel the need to repeat that I'm not a stubborn old man who's decided that this is a better way of doing the draw and will not listen to reason. But thus far no reason has been given other than that this system gives a linearly-increasing advantage to teams as they grow in size, and I see no reason why it should be otherwise. We either don't care about fairness within and between teams, scrap the system entirely, and generate the entire bracket randomly, or we do care that a team of a larger size should not have a potentially lower success rate per robot than one of a smaller size, and we accept that this can only happen by ensuring that the team does not have to fight amongst itself.
Scott Fyfe-Jamieson, Captain of Epic Robotics. Champion of AWS38/41/42.
http://www.epicrobotics.co.uk
User avatar
peterwaller
Posts: 3213
Joined: Fri Feb 15, 2002 12:00 am
Location: Aylesbury Bucks
Contact:

Re: The dreaded "draw"

Post by peterwaller »

I would argue that although antweights are in teams the competition is not a team event but an individual robot event.
The fact you might have to fight another of your own robots effects your team chances but if you look at the individual robots it is just another fight against another robot.
In fact you do gain a slight advantage by being able the select which robot goes through if you wish.
I do admit to being a stubbon old man but you did ask for our views so that is what I am giving.
EpicentrE
Posts: 831
Joined: Mon Jun 09, 2003 12:00 am
Location: Coventry
Contact:

Re: The dreaded "draw"

Post by EpicentrE »

I don't think you're either of those things Peter (stubborn or old, that is), and I do appreciate your input :). You're absolutely right with what you say; at the end of the day, it's a robot that wins the AWS, not a team. With that said, teams obviously are of some importance or else we would never have bothered separating a team's robots out in the group stage in the first place.

Your point about being able to choose the robot that goes through is actually something I - somewhat embarrassingly - had failed to consider. Where you do get a guaranteed loss in your team, you also gain a guaranteed victory. This completely nullifies my earlier argument, and as such I can no longer argue strongly in favour of my system that I outlined above. I still think the chance to play all your fights out rather than choose between your robots is more desirable, but I admit that without my prior argument this is not a good enough reason for the reduction in randomness that would occur from using such a system.

Unless anyone has any further points to make, I will adjust my system accordingly to more closely match what we've done in the past. Thanks again for your input.

I'll probably re-use this thread in future if I go ahead with making this new management system.
Scott Fyfe-Jamieson, Captain of Epic Robotics. Champion of AWS38/41/42.
http://www.epicrobotics.co.uk
User avatar
Rhys
Posts: 738
Joined: Tue Oct 29, 2002 12:00 am
Location: Caerphilly, South Wales

Re: The dreaded "draw"

Post by Rhys »

But pre-detemining who a certain robot won't fight is still unfair. If you can say before a draw that 'robot A' definitely won't fight 'robot B' until the final, then there's just too much bias in that draw for my liking. The whole point of a draw, and even where the word derives from is randomness. As for keeping them apart in the early groups, I always thought this was to help with organisation? It would be nightmare having teams clumped together instead of spread evenly over 8 groups. I would have no objections to having 2 robots in the same group from a competitive point of view.

By all means stick them in separate quarters of the draw to try an avoid clashes, but there's no need for an over-elaborate and over-complicated draw system to try and stamp out a problem which is rare or non-existent for most teams. It's happened to me on a couple of occasions, but you just put it down to the luck of the draw and get on with it. Mind you, I know lots of people won't agree with me, I've seen a few people get very annoyed when they've had to put 2 of their ants head to head in the final group stages.

Hmm.... took me so long to write this that 2 new posts have appeared. It would be good to get other peoples opinions though. As I said above, I think a few people would definitely side with Scott on this.
Image
Post Reply