Code center > Darwinbots3

DB3 Leagues

(1/9) > >>

Panda:
I assume DB3 will have the concept of leagues. There are a few things to consider when it comes to the leagues. For the most part, these are just musings on my behalf.

* league design
* a server side league: an official league or set of leagues that can be computed periodically
* low run costs - top n winners from previous league
* central repository - allows users to download all bots more easily; linked to the forum (e.g. whenever a bot is posted a thread is posted)
* limiting user bot submission - too many bots posted could cause difficulty running leagues

Numsgil:
When I first joined we were using a simple ladder tournament.  ie: you start at the bottom and have to challenge your way up the ladder one rung at a time.  Once you can't beat the guy ahead of you, that becomes your new place in the ladder and you basically stay there.  It gets less reasonable as there are more and more bots.

I think Bots favors something more like a round robin tournament, which is admittedly more fair but scales even worse as you add more bots.

Another option is to take a statistical approach and give bots an elo rating.  You wouldn't need to challenge every other bot to be declared the best; you'd just need to fight enough different matches for the system to converge with a reasonable confidence level to a elo rating for your bot.  There are possibly issues of elo inflation to contend with and bots doing better/worse on different versions, but those are similar to the issues real elo systems face, and we have the advantage that bots don't age or really change much over time (except for the issues around different versions).  The number of rounds you need to play is considerably less than even the ladder system, which means it scales nicely.

Botsareus:
Actually, I think I did exactly as described. The challenger is ranked when it stops winning. It is not a requirement to fight everyone.

spike43884:
What about a "Multi-Floor League" of some form.
Multi-Floor is a concept half way between stepladder and round-robin.
It groups already ranked individuals into groups of N size, say 9? then the bot goes against this group and gets the ranking there, then if its in the top lets say, 3 on that tournament, it goes onto the next tournament (generally the floors overlap by one bot, so the top bot from the floor below goes up one)

It won't give an instantaneous result of course, its slightly slower than round robin but it'd work...Plus the fact you can have multiple bots entering, because you can go 1 competitor per floor, the bots positions are averaged out, then its given a specific placing...So if it gets No.1 in all of the floors it receives No.1 Place but if its No.2 in all of the floors except the final one, it gets through as its in top 3, but it only gets 2nd place, or possibly first...This is decided by each floors position giving X points, so 1st place in a floor gets 10 points, last gets 1 point...Any identical scores are put as oldest bot highest (as it'd have won most competitions). This also means if a random update comes a long because scores can be updates to their latest, all bots have correct positions.

Overrall its still a bit intensive, but not as intensive as round robin this also overcomes the elo rating problem that it might fair against other bots better as it challenges all currently ranked bots. You then can have a thing in the submission which quickly scans if any of the ACTIVE DNA (as we're not doing mutations in leagues yet) is already in that league, and if any of the ACTIVE DNA is violating the rules. Then you can also delete INACTIVE DNA because we don't have mutations in the leagues, notoriously speeding up the sims.

Botsareus:
Cool, that is like my tournament mode mixed with stepladder.

Navigation

[0] Message Index

[#] Next page

Go to full version