Code center > Bugs and fixes
League Problems
Jez:
I am listening to all of this but a little potted history of the leagues for Griz first;
Originally it was one league, then it was split into F1 and F2 because of (at the time, tie bots being fixed by PY so they worked and ) the clear superiority of tie bots. Because tie bots were so much better than other bots any other bot was allowed to challenge them.
Then the SB league was added because once upon a time they weren't as well written as they often are today but also there were lots of SB's coming out because it was a relatively new way of writing bots and so a bit of interest in doing so.
Then MB league was added, they were never really competitive enought to compete in any of the other leagues so it was used as a showcase for some of the best MB designs.
Right from the start it was decided (by me and PY I admit) that the leagues were going to be challenge leagues and any bot that couldn't beat the bot above it wouldn't get to move up a position.
Up until now, even if a bot didn't work anymore it could still remain in the position it had gained in a previous version of the leagues. Meaning non functioning bots fill some of the spaces in the leagues.
I'm intending to rerun the leagues when I have finished doing the MB and SB league downloadable files, breaking this long held tradition, so that some of the deadwood is removed from the leagues, unless there are objections.
Certainly I'm no longer going to drastically alter the leagues by making them into just one league or anything anymore and any major changes will only be made after the existing leagues are sorted out to my satisfaction.
****
Having a triple A league and so on down would, even if it is only 20 bots per league, in essence be the same as having one league the length of all those leagues added together. I would be more interested in having some extra seperate leagues, a Tie league and a Virus league were bots are more seperated in to specialist categories with the F1 still being the free for all pinnacle that all bots can enter. Perhaps even an F2minor league if you feel that league is getting to full/competitive.
Leagues aren't only there for the competition they are, after all, also there to display some of the best bots in each branch of bot design.
I am always interested to hear other peoples opinions on the leagues because it helps me shape my ideas, I have been trying to defer to the majority of opinion but there hasn't been much of it!
More to follow...
Jez:
Why use statistical analysis to decide match winners?
Why not use a set amount of rounds per match or max amount of cycles or allow a bot that ties with the bot above it to move up and challenge the next bot?
It used to be the best of five matches once upon a time. PY would run the match once and the results determined whether the bot won or lost. This can make it all a bit of a lottery though, two fairly equal bots (defender A and challenger could win or lose their place in the league from a few minutes of intense combat. It might be that bot B could win 3 of every 5 matches in the long run but that also means bot A has a chance of winning the first 4 rounds in a match.
What the statistical analysis is there for is removing this element of chance. If you had entered bot B and the last 5 (max 5 round) matches you had run had all shown your bot winning 3-2 or 4-1 wouldn't you be a bit upset if that once only 'official' league match showed bot A beating bot B 3-2 and therefore retaining its position in the league? (Specially when you know that your bot, bot B would have gone on after beating bot A to take no1 position in the league...)
(It has happened to me before, that's why you can blame me for that feature being there. )
Having a max amount of cycles is slightly different; there are some bots, particuarly the "grow big reproduce slow" bots, that need a long period to actually beat a "quick repro win by numbers" bot. Atrium Venator is a good example of this, albeit it doesn't reproduce, but if it did then it would probably need a long time to win a match. Instead of having a max amount of cycles I have asked for an upkeep cost per turn and a max waste to be added to the league settings. This will hopefully do the same sort of thing but in a less obvious and less arbitary way.
The reason bots that draw with another bot don't get to advance in the league is that they are challenge leagues, a new bot has the advantage, it can study its opponent and exploit any weakness, plus you can always ask on the forum for tips on how to beat it.
Anyway, when the 'official' league match is run it will go on ad infinitum until somebody wins.
Overall I think what would suit you is a way to run the leagues a bit quicker, a 'non official' league testing method that means you don't have to leave your pc running for hours to get a result.
The 'official' league, when it is run, is designed to be as accurate as it can be in obtainig a result that is fair to all types of bots.
And more...
Jez:
I think the crash may have been caused by Spanish Conquistador having a _ between the names in the list you copied. I have changed that now but would suggest you download the league.txt in future rather than copy/paste list. I can check league.txt but because of all the links in the list you copied (I can't just paste league.txt into it) there may be one or two minor errors when you just copy it.
You can test this by just trying to enter Spanish Conquistador from your F1 league folder into the F1 league, if it instantly tells you you have a problem than that is what it was caused by.
Sorry about that.
Griz:
--- Quote from: Jez ---Having a triple A league and so on down would, even if it is only 20 bots per league, in essence be the same as having one league the length of all those leagues added together.
--- End quote ---
well ... yes, once the league has been 'set up' ...
a challenger would then have to work its way up ...
a simple bubble sort, eh?
the problem with having a large league ...
comes to light when one then, for whatever reason ...
needs to rerun the league, or, as you are doing ...
weed out the dead wood.
then it becomes a marathon thing which can take
days to complete ... esp if some of those bots are
close and the program keeps extending the rounds.
so yes ...
I see what you are saying ...
just looking for a way to more quickly setup and
establish the initial pecking order, if you will.
btw ... as listed in F1 ...
some of those in the top positions most certainly
are displaced by some lower in the ranks ...
Animal Supremous, or whatever it's named ...
worked it's way all the way to the top ...
and of course UMA 3.0 doesn't stay at #2 long.
so in order for me to run leagues ...
I'm finding I can't just do it as a challenge ...
but have to rerun it all ...
and so far I haven't been able to ...
having a crash at #10.
in the meantime, I may just split them up into
F1, F1A, F1B ... 10 per league ...
to establish some realistic pecking order ...
and then combine them farther down the road.
Griz:
--- Quote from: Jez ---
Overall I think what would suit you is a way to run the leagues a bit quicker, a 'non official' league testing method that means you don't have to leave your pc running for hours to get a result.
The 'official' league, when it is run, is designed to be as accurate as it can be in obtainig a result that is fair to all types of bots.
And more...
--- End quote ---
of course ...
I'm not suggesting anything be abandoned
for the Official Leagues!!!!!!!!!
all I want is, as the User ...
to have these options when I want to run
something other than the official league.
that is all I'm asking.
please, please, please ...
allow the User as many options as possible ...
so some of us can explore some ideas other
than developing a bot that isn't considered a
winner unless it wipes out all other bots as
quickly as possible.
I have not been ...
am not now ...
and will never be ...
interested in that approach to an evosim ...
and in fact, think continuing to move in that
direction is a big mistake.
imo, ime ...
DB shouldn't be about individual bots ...
but about developing a system made up of
an environment populated with bots which
are geared to [and which evolve towards] ...
being able to survive and coexist with other bots ...
to evolve complex relationships with one another
and their environment ...
allowing them to form that web of life that
gets it's strength from diversity and the
interdependence/interconnectedness of the
beings which inhabit it.
you know ... kinda like it is in the real world.
that's what I'm interested in exploring and
emulating.
and so ...
I would like, and deeply appreciate ...
as a User ... having as many options as possible
to run unofficial leagues and DB, towards that end.
I don't think that is asking too much ...
and I wouldn't think implimenting these options
in leagues, which still allows folks to run things 'Officially' ...
as being that difficult.
if I had access to the VB code with the latest changes ...
I might even be able to discover how to alter it to meet
my needs, if no one else is interested in having these
options.
maybe with the official 2.43 ...
I will have that option.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version