Poll

league-options

Scap old SB-league.
6 (14.6%)
Invent new SB-league.
4 (9.8%)
Fuse F1 and F2.
3 (7.3%)
Invent efficienty-league.
5 (12.2%)
Veggie-league.
3 (7.3%)
Blind-bots league.
5 (12.2%)
new F3. (if F1 and F2 fuse, F2)
6 (14.6%)
Zerobot-league.
3 (7.3%)
Dog fighting-league.
4 (9.8%)
evo league(later added)
2 (4.9%)
Anyone who comes with a clever idea, click here.
0 (0%)

Total Members Voted: 10

Author Topic: Overall league thoughts  (Read 18772 times)

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7722
    • View Profile
Overall league thoughts
« Reply #15 on: October 16, 2008, 02:55:48 PM »
We could do something like simulate 100K cycles with mutations for each bot before dropping it in a match.  It wouldn't be a league necessarily, because it wouldn't be reproducible, but it would be interesting

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
Overall league thoughts
« Reply #16 on: October 17, 2008, 12:40:42 PM »
I don't like where the F1, F2, etc... leagues are going. There's no interesting behavior, and often the simplest bot is the best (FruitFly... ). Ten years from now, the best F1 bot won't have eusociality, it won't be a multibot, it'll just be yet another boring bacterium whose sole purpose is just to kill everything asap.  

What we need are leagues that actually lead to interesting behavior, where our goal is to make an advanced, interesting bot with complex behaviors.


I have a few ideas...


An antbot league- each competition involves having one queen per species. First one to wipe out enemy or kill enemy queen wins. Only one social caste can fight.

-OR-

A Neural-Net league- like F1, but the bots must use neural nets whose weights change over the bot's life in response to the environment. When started, they MUST have no weights- they need to try new behaviors on their own, and when they do something that makes them feel pleasure (eating, reproducing), they learn to continue doing those behaviors. Same for pain. The best learner wins.

-OR-

We should have a new MB league- the 2-organism league. Basically the competitions can involve only two organisms, but each organism can have as many cells as you want. So, to win in this league you need a very large/complex organism, and I'd be excited to see the ones people come up with. Maybe there should be a requirement for tissue differentiation?

Offline bacillus

  • Bot Overlord
  • ****
  • Posts: 907
    • View Profile
Overall league thoughts
« Reply #17 on: October 17, 2008, 03:40:08 PM »
Quote from: jknilinux
I don't like where the F1, F2, etc... leagues are going. There's no interesting behavior, and often the simplest bot is the best (FruitFly... ). Ten years from now, the best F1 bot won't have eusociality, it won't be a multibot, it'll just be yet another boring bacterium whose sole purpose is just to kill everything asap.  

What we need are leagues that actually lead to interesting behavior, where our goal is to make an advanced, interesting bot with complex behaviors.
I totally agree with this.

Quote
An antbot league- each competition involves having one queen per species. First one to wipe out enemy or kill enemy queen wins. Only one social caste can fight.
An interesting idea, and definitely one I'd get behind. There's not many Antbots that form one queen, but it should provide some initiative.

Quote
A Neural-Net league- like F1, but the bots must use neural nets whose weights change over the bot's life in response to the environment. When started, they MUST have no weights- they need to try new behaviors on their own, and when they do something that makes them feel pleasure (eating, reproducing), they learn to continue doing those behaviors. Same for pain. The best learner wins.
Again, this may require some time to get started due to the lack of these bots.

Quote
We should have a new MB league- the 2-organism league. Basically the competitions can involve only two organisms, but each organism can have as many cells as you want. So, to win in this league you need a very large/complex organism, and I'd be excited to see the ones people come up with. Maybe there should be a requirement for tissue differentiation?
This one would probably be the hardest to compete in. Unless ties are made indivisible,  most organisms end up separating themselves inadvertently. Think of a worm when you cut it in half.
"They laughed at Columbus, they laughed at Fulton, they laughed at the Wright brothers. But they also laughed at Bozo the Clown."
- Carl Sagan

Offline Peter

  • Bot God
  • *****
  • Posts: 1177
    • View Profile
Overall league thoughts
« Reply #18 on: October 17, 2008, 04:43:39 PM »
How would you get league likes that regulated?

How are you going to define the rules?
Oh my god, who the hell cares.

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
Overall league thoughts
« Reply #19 on: October 17, 2008, 04:55:25 PM »
Quote from: Peter
How would you get league likes that regulated?

How are you going to define the rules?

We don't need super exact rules right now, just a guidline for people to follow, and we'll add specific rules later. Kinda like how F2 began and evolved over time.

If we try to make the exact rules now, we'll get caught up in an endless debate (like with mutation protection) and if we actually do agree on something we'll probably modify the rules later anyway as bots start to exploit holes in our guidlines.


Bacillus-

If we make a league, there will be bots made to fill the power void. Trust me. I'll be the first contributer (even if all I do is add 5 lines of code to your antbot ).

Offline Peter

  • Bot God
  • *****
  • Posts: 1177
    • View Profile
Overall league thoughts
« Reply #20 on: October 17, 2008, 05:16:34 PM »
Did the F2 evolve ?
Oh my god, who the hell cares.

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
Overall league thoughts
« Reply #21 on: October 17, 2008, 05:23:34 PM »
Quote from: Peter
Did the F2 evolve ?

What I mean is that F2 didn't always have its current rules, right? Correct me if I'm wrong, but there were some things allowed in F2 that still made the bots too powerful and "F1-like". Maybe they didn't change the rules, but instead changed the behavior of shell and stuff... I don't remember.

Anyway, that's not the point. The point was that we don't need to make perfect rules now, since we'll probably change them later anyway (like what you're trying to do with F2 now). Like that method of making laws, whatever it was called, where the government starts out with only a few laws and whenever something happens that is unethical and not covered by current laws, it's added as unlawful. Better than trying to think up of every single thing that someone could do wrong...

Offline bacillus

  • Bot Overlord
  • ****
  • Posts: 907
    • View Profile
Overall league thoughts
« Reply #22 on: October 17, 2008, 05:45:26 PM »
I think the real problem is that, say with the single-MB league, that there's no way to control what happens when an organism 'accidentally' splits in half. Is that bot eliminated, or does one half just get destroyed, or is it ignored? How does the program handle that?
"They laughed at Columbus, they laughed at Fulton, they laughed at the Wright brothers. But they also laughed at Bozo the Clown."
- Carl Sagan

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7722
    • View Profile
Overall league thoughts
« Reply #23 on: October 17, 2008, 05:57:06 PM »
I think the main issue with the league at present is balance issues and unplugged exploits.  The core is there for interesting behavior, but it's been overpowered by unintended consequences of new features, or unbalanced-ness to begin with.

Offline abyaly

  • Bot Destroyer
  • ***
  • Posts: 363
    • View Profile
Overall league thoughts
« Reply #24 on: October 17, 2008, 08:54:44 PM »
Speaking of unplugged exploits, I think I'll make a simple F3 bot tonight to get the ball rolling.
Lancre operated on the feudal system, which was to say, everyone feuded all
the time and handed on the fight to their descendants.
        -- (Terry Pratchett, Carpe Jugulum)

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
Overall league thoughts
« Reply #25 on: October 17, 2008, 11:51:30 PM »
Quote from: Numsgil
I think the main issue with the league at present is balance issues and unplugged exploits.  The core is there for interesting behavior, but it's been overpowered by unintended consequences of new features, or unbalanced-ness to begin with.

I disagree- a "kill everything asap" bacterium will always win against an antbot, or a neural-net bot, or whatever, no matter what. I'd honestly be quite surprised if a first-place F1 bot had even a vestige of complex behavior/eusociality/learning/tissue differentiation.

Bacillus- I think this is only a problem with the 2-org league (In the ant league making a new hive during combat should not be allowed), so I'll go with that:
If something in the two-org league splits during combat, then one half must die, like in living organisms. This means that there must be some cell/cells that are necessary for the organism's survival, and the half that does not have that cell/cells dies, while the other half regrows the rest of itself. Those necessary cells will probably be a brain of some sort, so if a cell in the organism is not receiving any commands from the brain, it does nothing and dies.

So yes, one half dies, to make it as life-like as possible.

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
Overall league thoughts
« Reply #26 on: October 18, 2008, 08:49:17 AM »
I like the idea of having 100K cycles with mutations before the fight... although it may be hard to actualy pick wich of the mutated bots are to compete....
And I realize the idea is near impossible to get to work as a propper league... I just hate how most of the good league bots break down after a few mutations. They either turn into canibots because the conspec is way too simple, this goes for almost all league bots, or they break some vital part of the code or generaly devolve the complex behaviors...

But most of the sugestions posted so far require a larger field with less veggies... if a multibot is going to compete in a league, then it needs time to form and generaly get started, so you can't have oponents spawn right next to it that don't depend on forming an organism.
And in a way the simples organisms are the strongest, not just in DB... viruses and bacteria will always be around, long after we're extinct.
So in my mind if you want to set up a league that favors more complex organisms you need a much larger field with a limited amount of veggies, and you need to set the rules in order to prevent most of the things that make bacteria like species superior. So for instance no killing with ties, no venom, no mem shots, no viruses, no tie feeding (Ofcourse you can share energy with your own kind... possibly also with veggies, although it would be more challenging if you can't just tie to a veggy and make it part of your organism, and allowing to share nrg with alge will just help the small bacteria like species.)
Either way I think it would be possible to just make a league with all the right rules and settings to favor multicecular organisms.
And with no venom, tie killing or mem shots (And ofcourse no sexrepro) then fungus species shouldn't be too powerfull since they need to grow if they want to kill anything. I don't know exactly what the rules and settings should be, but I think you can balance it right for multibots.

I also love the neural net league idea  I have an evo sim I've been running about 500 hours with a neural net with a very redundant structure for the weights in order to encourage changes in the weights rather than breaking down the whole thing too fast...
So far I've gotten way more out of that sim than anything else I've ever run. They have a balanced use of shell, I think they start with about 500, then make more if getting shot at and remove some if they end up with too much shell after a fight. They don't kill the alge but guard it instead eating a litle at the time while moving it around (Not using ties, just realy good ball controll). They hamster energy and reproduce rapidly if they're in too much pain in order to escape. If they get too big and risk killing the alge in few shots they create a big offspring and start over on the alge. They have a very stable conspec, there are no carnivores or cannibots evolving... had a few carnivores pop up now and then but they never lasted, the bots are too good at escaping if they're loosing a fight. They'll shoot at litle at anything they see, but they try to maneuver around their own kind avoiding confrontation, unless there's an alge close by then they fight for it (I have no idea how they can keep track of that), and ofcourse if one of the bots is agressive the other one will defend itself. Also the latest evolution I saw was a bot that instead of being realy good at guarding the alge it got realy good at stealing it, so when it sees an alge it makes like a big you turn to accelerate then swoops by and takes off with the alge. It completely looses sight of the alge while doing this but it works rather well... only problem is that this behavior makes it less good at keeping the alge since it's ball controll isn't as great. (I've watched the "guarding" species hold an alge for ages without loosing it despite many compeditors trying to take it, it accelerates the alge by pushing it, then slides around the alge changing the direction, and it does it realy well, it would beat me at soccer any day.)

Ofcourse I haven't tryed implementing backpropagation and such to make it manualy adjust the weights, but just mutating the weigths in a redundant network gives great results from what I can tell... and some of the behaviors aren't just from changing weights, for instance it evolved a handicap on one of it's movement directions because this stabilized it, but not by using the existing structure. So once most of the network is used it starts to change and do other things that weren't planned for.
So it might actualy be possible to make an evo league for blank neural networks... might also reveal some clever ways of prepping a network for mutations.


Not as sure about the antbot league and single organism league... sounds like it would be hard to get the organism league working... and the antbot league may not end up being very different from F1 depending on what other rules are set up. I mean you could probably make fruitflies employ a queen somehow... just let the queen spit out the flies and let them go feed and come back with the energy... the rules need to encourage complex behavior and not just require it. Otherwise it'll be the same bots we have now just with some added complex behavior... no sure how to set up rules to encourage antbot behavior... otherwise there's the IB league atm, wich I think is kind of something along the antbot league you're sugesting.

But I think it's possible to make a league that encourages multibots, and I definately like the idea of a NN league, but thats probably just because I'm a big fan of NN's.

And I also think new league will fill up over time... the only reason the SS league is half empty is because it's so damn hard to get an SS bot to work... and possibly because of the nazi assosiation, who knows...

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
Overall league thoughts
« Reply #27 on: October 18, 2008, 03:08:40 PM »
Well, with the antbot league, we can have a requirement for multiple castes- the queen, workers, and soldiers. The workers cannot fight. The soldiers cannot feed the queen etc...
That way, you can't just have a big fruitfly spit out smaller fruitflies that go on a murderous rampage.
Already I can see some interesting behaviors here that would be beneficial. For example, making workers run away from soldiers would isolate the "battlefront" and kill less of the run-away workers. So, if the fight is concentrated in one area, and the soldiers are controlled centrally (by the queen), the we can have complex battle plans develop, like sending 90% of soldiers to the main battlefront and stealthily send the remaining 10% around it to give a surprise attack closer to the enemy queen. It might be a nightmare to code, but it's possible, and definitely an advantage.

Also, I don't know if there can be a setting that encourages multibots. Even with your settings, when you have a SB and a MB fighting in the same place, the SB still has a few advantages:
1: It can attack the MB from all sides.
2: Multicellular penalties don't apply to it.
3: It will be simpler, and therefore will have fewer DNA length-related penalties.

Ultimately, I still doubt we'll have an IB bot defeat a fruitfly within the next few billion years. Why do you think it took that long to make the first multicellular organisms in the first place? Sure, you could make fruitfly an antbot and it might still defeat some other F1 bots, but having an IB will always be a disadvantage.

Finally, the reason I like the 2-O league idea is because it might be the only possibility where the winner will be a complex multicellular organism, and seeing two globs fight would be really interesting anyway. However, they must start out as single cells and form the complete org over time.

P.S. I completely agree, a NNBot league might be one of the most interesting of the bunch. However, we might have to make 2 NNBot leagues- one with point mutations and Mutation Protection (once it's implemented- which should be as soon as eric gets back) to allow random "learning" by randomly adjusting weights, and one with no mutations where the bots learn through BP.
« Last Edit: October 18, 2008, 03:10:17 PM by jknilinux »

Offline abyaly

  • Bot Destroyer
  • ***
  • Posts: 363
    • View Profile
Overall league thoughts
« Reply #28 on: October 18, 2008, 04:48:58 PM »
If you want complex behavior, make it. You are trying to promote an ill-defined goal under the premise that a simple bot will beat out a complex one, which was produced by the author's misunderstanding of DB. F1 has it's current structure because it is driven by discovery of low level exploits. Not because simplicity is always a better strategy than complexity. If you are finding that your complex bots cannot beat your simple ones, then it is because the idea wasn't well thought out.
Lancre operated on the feudal system, which was to say, everyone feuded all
the time and handed on the fight to their descendants.
        -- (Terry Pratchett, Carpe Jugulum)

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
Overall league thoughts
« Reply #29 on: October 19, 2008, 01:57:05 AM »
Quote from: abyaly
If you want complex behavior, make it. You are trying to promote an ill-defined goal under the premise that a simple bot will beat out a complex one, which was produced by the author's misunderstanding of DB. F1 has it's current structure because it is driven by discovery of low level exploits. Not because simplicity is always a better strategy than complexity. If you are finding that your complex bots cannot beat your simple ones, then it is because the idea wasn't well thought out.

Well, I thought F1 was a game, not an oversight/bug-detection system, but I guess not. And what idea wasn't well thought out? I might not be seeing your point, but are you saying that complex bots do have an advantage in a simple world with simple prey? If so, why don't people make antbot or complex, IB F1 bots? And why is the best F1 bot so far fruitfly, when it is one of the simplest? Coincidence?