Bots and Simulations > Bot Tavern
Overall league thoughts
abyaly:
I know you're all for making the league more complicated, but I think you're adding a lot of unnecessary baggage. The purpose of the rules is to eliminate trivial strategies so that complex ones flourish. Any additional proposed rule should be supported with a potential exploit that it is eliminating. If a rule is not eliminating an exploit (which leads to a simple and effective strategy) then it does not belong on the list.
Here are examples of rules that eliminate a problem:
-no info (agressive) use of ties prevents the Fruitflies/Etch tactic of splitting to minimal body and maximal numbers.
-movement interference with larger field size makes powering forward at maxvel no longer the most effective food searching strategy. It is not necessary to increase movement costs in addition to reducing speed, because eliminating traditional movement doesn't actually help us. The real issue is the effectiveness of simply driving forward all the time, which could easily be reproduced using an inchworm engine.
-Non-torroidal is there to prevent wacky MB teleportation that wrecks MBs.
-Veggy repop reduction is there to prevent the "sit and wait" strategy that becomes viable when large numbers of veggies are always appearing.
These are all rules that are necessary to allow complexity to be prominent. Removing any of them limits the possibilities of the league.
Here are examples of extraneous rules that do nothing to help the (supposed) goal of this league:
-New, moving, algae.
-Random shapes.
-Movement removal or suicidal movement costs.
These rules force contrived complexity, and are not necessary for complex bots to do well. They just raise the minimum "bar" for complexity required to be able to make a league bot. They don't really expand the pool.
So before you finalize your ruleset, review it to make sure that each of them is critical for the goal that you have set. If the rule is not there specifically to fix a problem, then the rule does not belong on the list.
jknilinux:
ARGH! Bacillus, I feel your pain. My post got wiped too, I posted it a few days ago. I just noticed today that it isn't here... Maybe it's a website problem?
Anyway, here is basically what I said:
Peter-
You said caterpillar wins 1409-0, and then that both versions lose anyway. Does it win or lose to bouncer?
Also, I never tried running a size-12 sim before, so maybe it's smaller than I thought. The intention was to make it impossible for the bots to survive at repop threshold, so they must control the veggy population on their own. So, maybe we should not even have a repop threshold- just set it to zero. If they eat all the veggies until they hit zero, then those bots deserve to die.
With the antbots- it should be pretty easy to make a surviving antbot, right? Just take bacillus' antbot, and wherever it says .up, .dn etc... replace it with caterpillar's movement genes, then just cut-and-paste caterpillar's "initialization" code to turn the antbot into a caterpillar as soon as it is born. It's a caterpillar where all logic is just copied-and-pasted antbot genes.
Abyaly-
Just because something isn't necessary doesn't mean it's not a good idea.
Shapes- force bots to recognize shapes, and provide a complex environment
Moving algae- eliminate gold-mining. This isn't to encourage a specific behavior, just to prevent the winner from being decided randomly as the first one to find the big colony of algae.
Movement costs- encourage tie-movement and MBs
This is not, in my opinion, very different from:
Few veggies- encourage conservative feeding behavior.
---
However, this is just me. If others agree with abyaly, I'd be happy to eliminate those rules, but I'd like at least peter's, moonfisher's, numsgil's, or bacillus's opinion before I make any drastic changes.
Also, has anyone tried these settings yet? If so, did everything look about right? Was the veggy population kept low, yet naturally oscillating? Do bots with no veggy "conservation" genes kill all the veggies on their own? I'd really appreciate suggestions!
abyaly:
Why not just make all bots be able to run through a maze before they are eligible for the league? Because that type of contrived restriction only enforces your vision of a specific type of complexity.
I thought the distinction between this and the various bot challenges is that rather than forcing bots to adapt complex behavior, this league would let it rise to the top by getting rid of easiest super-optimized grey goo strategies. The rules do not need to (and should not be trying to) do anything except that.
Every rule you add lowers the accessibility of the league by adding another hoop a potential bot would have to jump through. Before you add a rule, you should ask yourself if the added complexity is justified by the benefit that rule provides.
--- Quote ---Just because something isn't necessary doesn't mean it's not a good idea.
--- End quote ---
Yes, it does. There are exactly the same number of good rules and necessary rules.
--- Quote ---Shapes- force bots to recognize shapes, and provide a complex environment
--- End quote ---
A complex environment just places more burden on bot writers without cutting away any bad things from the league. You want more bots written, so you want additional work for bot writers to be justified.
--- Quote ---Moving algae- eliminate gold-mining. This isn't to encourage a specific behavior, just to prevent the winner from being decided randomly as the first one to find the big colony of algae.
--- End quote ---
We already have a way of dealing with random chance. It's a pretty good one. We don't need another.
--- Quote ---Movement costs- encourage tie-movement and MBs
--- End quote ---
Why is tie movement better than regular movement?
--- Quote ---This is not, in my opinion, very different from:
Few veggies- encourage conservative feeding behavior.
--- End quote ---
The key strategy used by early fighting bots to hunt for food in a very energy efficient way was sitting in place and rotating. No energy was expended on anything else until food was located. Would you like this to be an effective strategy? If so, make sure it is very easy to find food without going anywhere. An easy way to accomplish this is to make sure lots of veggies spawn.
Since this is the exact type of thing this league is being designed to prevent, I think you should see why a smaller veggie repop rate is justified.
The justifications for your rules are not very different from
--- Quote ---Few veggies- encourage conservative feeding behavior.
--- End quote ---
They have in common that the reasons provided are not enough to justify the rule being created. Veggie conservation is NOT a requirement, so we don't need to force it on the bots.
However, it may end up that veggie conservation turns into a good strategy as a side effect of us getting rid of trivial strategies. It may also end up that it doesn't. We don't know, so we don't want to just pick one and gear the rules to encourage it.
Peter:
--- Quote from: jknilinux ---Peter-
You said caterpillar wins 1409-0, and then that both versions lose anyway. Does it win or lose to bouncer?
--- End quote ---
I didn“t say caterpillar wins. I first said the numbers where 1409 against zero, not stating a winner. Later I said they both lose. Not very good placed, but I thought it was clear . Anyway caterpillar loses bigtime.
--- Quote ---Also, I never tried running a size-12 sim before, so maybe it's smaller than I thought. The intention was to make it impossible for the bots to survive at repop threshold, so they must control the veggy population on their own. So, maybe we should not even have a repop threshold- just set it to zero. If they eat all the veggies until they hit zero, then those bots deserve to die.
--- End quote ---
I used size 12 becouse I thought it would give a good first proper idea. I think it is needless to start with a higher field and more veggies. You can always calculate the amount of veggies towards the bigger field. Think of the lag you will have with the 5000 veggies you suggested somewhere. Testing first in 12, later we can see further.
And even in that field I did't look that much forward to see if bouncer killed itself after a while after conquering the field. A pop of 1500 is really slowing down and bouncer is really don't doing much that costs energie if there are other bouncers around him, in the end it will probably be killed by standard bot costs like code execution, body costs and age costs. As those are not meant to be costly, it will survive very long without new energy. At that time the bot probably already won a fight together with breaking the ecosystem(veggies) and any income will be the repop. If that isn't enough to live then many will die out, the ones left will search for new veggies that possibly already multiplied themself, in the end probably enough for a new explosion of bots. And we move in a circle.
--- Quote ---With the antbots- it should be pretty easy to make a surviving antbot, right? Just take bacillus' antbot, and wherever it says .up, .dn etc... replace it with caterpillar's movement genes, then just cut-and-paste caterpillar's "initialization" code to turn the antbot into a caterpillar as soon as it is born. It's a caterpillar where all logic is just copied-and-pasted antbot genes.
--- End quote ---
If it was that easy, I would already have made an powerful F1 or F2 MB-league-bot. It isn't just that easy. You could use the basic initialization and use the ties to go up or down. But how would you go left,right or turn properly fast,( the original can't even do it completely how I like it).And how would I transform something like ''50 .up store''? Exspecially if you look at the fact that the movement isn't straight forward but comes with bursts.
Often you can put genes from one bot in another. Even if suceeded the bot with the new genes will probably have trouble with it, they will often behave lesser. Like trying to play games on linux.
--- Quote ---Abyaly-
Just because something isn't necessary doesn't mean it's not a good idea.
Shapes- force bots to recognize shapes, and provide a complex environment
Moving algae- eliminate gold-mining. This isn't to encourage a specific behavior, just to prevent the winner from being decided randomly as the first one to find the big colony of algae.
Movement costs- encourage tie-movement and MBs
This is not, in my opinion, very different from:
Few veggies- encourage conservative feeding behavior.
--- End quote ---
Shapes don't have a high use right now, if there is proof founded they are needed to let complex survive better against non-complex.
Moving alge couses a higher spread of them, thus easier to find, thus killing complex finding ability a little.
Movement costs, already said but I think friction will do it. Leave it untill needed.
--- Quote ---Also, has anyone tried these settings yet? If so, did everything look about right? Was the veggy population kept low, yet naturally oscillating? Do bots with no veggy "conservation" genes kill all the veggies on their own? I'd really appreciate suggestions!
--- End quote ---
No, haven't tried. Next time you post settings please try to look how it seems yourself. Otherwise it is just randomly guesing. You can try to fiddle with costs to keep an antbot win/draw against bouncer. I still think something like that is very hard. If you succeed the league is probably ready.
Numsgil:
I haven't read everything, but I agree with abyaly that the primary goal should be eliminating gray goo strategies instead of trying to encourage complexity. F2 is really F1 without the exploits (tie feeding was originally an exploit, which is where the league came from).
A league with shapes and stuff is probably a good idea, just not for F2.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version