Darwinbots Forum

General => Leagues => Bot Challenges => Topic started by: Elite on November 24, 2006, 12:17:07 PM

Title: Challenge #1: The Ravine
Post by: Elite on November 24, 2006, 12:17:07 PM
Simulation file attached

Version required: 2.24.9d

Rules:
Gravity is enabled, and there is a large pit in the centre of the sim, made from shapes. Any bots falling into this pit and touching the bottom will lead to instant faliure. Movement commands are disabled due to a bang efficiency of 0%. Fixing anywhere above the ravine is strictly forbidden. Your bot cannot reproduce above the ravine either, although you can reproduce as many times as you like on either cliff.

Ravine coordinates:
*.xpos = 2800 to 6000 exclusive (Note: these define an area ever-so-slightly greater than the actual ravine)
Your bot cannot fix or reproduce within these boundaries

Bronze objective:
Your bot starts on the left cliff. Get at least one bot across the ravine

Silver objective:
Your bot starts on the left cliff. Get across the ravine, retrieve the cyan bot (it has a *.refeye of 1) from the other side of the ravine, and take it back with you as you cross the ravine for a second time. If you have more than one bot, all of them must end up on the left cliff.

Gold objective:
Your bot starts on the left cliff. Build a bot capable of getting the cyan bot from the right cliff, and (all) your bot(s), up to either of the top ledges.
(Note: For the gold, fixing anywhere is strictly forbidden)

Feel free to comment and discuss in this thread. Good luck
Title: Challenge #1: The Ravine
Post by: Numsgil on November 26, 2006, 08:17:16 PM
Here are some clarification points I think need to be made:
A ) Do we need to get all of our bots across if our initial bot reproduces?
B ) Can we use more starting resources (say, 32000 starting nrg, etc.) than the default?
C ) Can we set our bot to a plant and feed it lots of nrg and body?

This is really quite difficult.  I'd consider myself pretty good with DNA (it helps when you design the language ) and I'm having problems even starting.  In order to ease people into this, these are my sub objectives.  This should help provide some realistic measuring sticks

Copper Objective: Get at least one individual into the pit.  Reproducing enough times to move some children bots into the pit doesn't count.

Possible solution: build a two bot multibot.  Ankor one bot by fixing it.  Have both bots increase the tie length to extreme values, so the tie will break and the non fixed bot will "fire" like a cannon.  This shouldn't be too hard to tweak to get a bot to the other cliff as well.
Title: Challenge #1: The Ravine
Post by: Elite on November 27, 2006, 03:24:51 PM
A) For the bronze award, you only have to get at least one bot across the ravine. For silver, all your bots have to end up back on the left side of the ravine. For gold, all your bots must end up on top. Any bots dying, or falling in the pit, mean faliure for all the awards

B and C) You can have as much energy, body etc. as you want. Infinite energy can be supplied by setting the age cost to -32000

I've already built a bot that gets across (which means I'd get the bronze), and attempts (but fails) to bring the cyan bot back.

I suppose, since this is the first challenge, a hint is in order ...

What it does is build a line of fixed, tied bots in an incline by reproducing upwards and right. These then unfix and expand the ties to just under snapping limit to shoot out the chain and bridge the ravine. The lead bot then ties to the cyan bot, and all the chain then contracts their ties to get back. It's a whiplike motion, like a cobra. Only problem is it's hard to change the tie angles without them snapping, and the whole structure just falls slightly short on the recoil phase and snaps into the pit.

I'm sure there's more solutions. It's not impossible, just incredibly frustrating
Title: Challenge #1: The Ravine
Post by: Numsgil on November 27, 2006, 03:50:45 PM
I've gotten a bot to the other side, but it relied on placing the bot near top shapes and dropping it.  It would then reproduce, tie, and fix itself.  The tied bot would then continue wrapping around the fixed bot, effectively transforming the potential energy from the fall into kinetic energy.  It would then time itself to break the tie at just the right moment, and it would barely make it to the other side.

Unfortunately, it doesn't work with Eric's recent tie changes, and it doesn't seem deterministic.  It takes a couple of tries to get the bot to fire at the right moment.
Title: Challenge #1: The Ravine
Post by: Elite on December 02, 2006, 02:02:45 PM
Does anyone still want to have a go at this, in which case, how long do you want?

Or do you want to end the challenge and take a look at the bot I programmed, which completes the bronze and sliver objectives.
Title: Challenge #1: The Ravine
Post by: Jez on December 06, 2006, 06:54:15 AM
Sorry Elite,

I've not forgotten about your challenges, it's just the time I would have spent creating bots for your challenges has been spent on the leagues and bestiary. I will be back it's on the infamous 'to do' list...

I would have thought your challenges should be run until someone collects gold or it's decided that it's impossible to complete, or everyone throws in their towel with the opinion that they aren't good enough bot designers to complete it.

Unless you are designing a bot first and then creating a challenge to suit it then feel free to post your entry, you have as much right to enter bots in your challenge league as anyone else if they are written after the challenge is posted. I look forward to seeing it.
Title: Challenge #1: The Ravine
Post by: Henk on December 07, 2006, 05:20:24 AM
I'll surely have a go at this after my exam on cellular biology  
Title: Challenge #1: The Ravine
Post by: Griz on December 11, 2006, 11:03:48 AM
sim loads in ok ...
but as soon as I add a bot species and start new ...
there are no longer any objects/ravine. ???

obviously I haven't a clue as to how this is supposed to work.
Title: Challenge #1: The Ravine
Post by: Jez on December 11, 2006, 11:09:23 AM
I had problems first time I tried as well, the answer Elite gave was;

Quote
Open the sim, then click on the start new simulation button, then add your bot, then press 'Change' rather than 'Start new'. You can then insert your bot with the insert bot tool

Hope that helps!
Title: Challenge #1: The Ravine
Post by: EricL on December 11, 2006, 01:23:56 PM
Someday I may add a simple "add bot from DNA file" option, but doing so is not as trivial as it sounds.
Title: Challenge #1: The Ravine
Post by: Griz on December 11, 2006, 03:18:03 PM
QUOTE(Jez @ Dec 11 2006, 12:09 PM)

I had problems first time I tried as well, the answer Elite gave was;
Hope that helps!



aha!
well that explains how Num's placed his where he did.

otay den ...
has anyone had any success or can steer me to some
bots that may have a chance ...
which I can then take a look at and modify?

tanks

EDIT

Sorry mod'd your post instead of my answer! [Jez]
Title: Challenge #1: The Ravine
Post by: Jez on December 11, 2006, 05:15:54 PM
If you are serious about wanting to modify a bot I'll see if I can dig out the bot I tried to write, didn't address ties properly, and send it to you.

The idea was to create a chain of bots to reach the other side, then (if I was trying for more than silver), to reach the top and drag all other bots after it.

Personally I always find it easier to write bots from scratch though, not being bright enough to mod other peeps bots. (Nor avoid modding other peoples posts lol!)
Title: Challenge #1: The Ravine
Post by: Griz on December 11, 2006, 07:37:45 PM
Quote from: Jez
If you are serious about wanting to modify a bot I'll see if I can dig out the bot I tried to write, didn't address ties properly, and send it to you.

The idea was to create a chain of bots to reach the other side, then (if I was trying for more than silver), to reach the top and drag all other bots after it.

Personally I always find it easier to write bots from scratch though, not being bright enough to mod other peeps bots. (Nor avoid modding other peoples posts lol!)

~~~
I know less than nothing about bot code ...
I was just hoping to watch what others had come up with ...
to see what kind of things works/doesn't.

this along the idea I had for various 'gauntlet' sims ...
a variation of leagues if you will ...
but employing only one bot at a time ...
seeing how the existing bots fare in various 'test sims' ...
and ranking bots accordingly.
ie ... which bots do well in high gravity ...
or with a scarce food supply ...
or moving prey ...
or any number of other designed environments.

but hey ...
I'd settle for getting leagues to work.
Title: Challenge #1: The Ravine
Post by: Jez on December 12, 2006, 05:11:33 AM
I think Elite is your best chance there, think Num's was broken by a buddy drop.

btw I managed to run leagues yesterday, seemed quite forgiving compared to what it has been like in past, post what you done somewhere and the error message you got and I'll see if I can help.
Title: Challenge #1: The Ravine
Post by: Elite on December 12, 2006, 11:19:20 AM
The version for this one is 2.24.9d. This challenge must be done on that version exclusively.

But remember that just getting one bot across the ravine gets you a bronze award, lots of kudos, and a place in the Bot Challenge Hall of Fame.

A small clue:

Try getting your bot to reproduce itself to the edge of the ravine. At the edge, you should be able to launch a bot across by reproducing, tieing, and expanding the tie to several thousand units while aiming right and up slightly.

EDIT: Oh, and I've had a thought. How about a league where two bots face off in a small arena (constructed from shapes) about twice the vision radius of a bot, and aren't allowed to reproduce. This will reward bots that are good at true one-on-one dogfighting rather than out-reproducing.
Title: Challenge #1: The Ravine
Post by: Griz on December 12, 2006, 11:22:45 AM
Quote from: Jez
I think Elite is your best chance there, think Num's was broken by a buddy drop.

btw I managed to run leagues yesterday, seemed quite forgiving compared to what it has been like in past, post what you done somewhere and the error message you got and I'll see if I can help.

haven't had a chance to get back to it ...
and start from scratch.
thanks for your 'leauge guide' ...
that at least gives me a chance.
it really would be nice to have a working setup
with files all in place that newbies could download
to get started.
I know I was able to start my own leagues in 2.36 ...
and if a league table didn't exist ... it would write one.
the only problems I had there was getting a match
to stop, esp if the bots were evenly matched ...
it would never end.
I would still like to be able to designate a certain number
of cycles for a round, and have a winner declaired at
the end of that, regardless of if it was statistically significant.
if it's that close ... just pick one!

ok ...
will use the league problem thread from this point on.

thanks jez ...
this league thing has always been interesting ...
hope to get it sus'd out.
Title: Challenge #1: The Ravine
Post by: Jez on December 12, 2006, 05:14:21 PM
I haven't tested to see if it will still write league table from scratch, I think you may have to have one bot in table to start but not tested yet. When I've finished updating league and bestiary I should have time to write better guide.

Mention that max rounds for league in suggestions part of forum, it's not a bad idea, I've just got a match up to 488 rounds with almost no difference between bots. Would make it easier for people who want to do shorter league runs. The other way to do it is keep hitting the win button.  
Title: Challenge #1: The Ravine
Post by: Elite on December 22, 2006, 04:35:27 PM
OK, I'm closing this challenge on Christmas day. If you've got a bot that beats the challenge, post it, if not, maybe you'll have better luck with the next challenge

I'll post up the bot I made for this challenge then, which ends up with a silver. Then I've got a shiny brand new challenge planned

Hint: It's a maze
Title: Challenge #1: The Ravine
Post by: Elite on December 25, 2006, 06:16:49 AM
A saved file is attached. Load it into 2.24.9d and watch the bot on the left. It ties and fixes to make a line, and then shoots out over the ravine like a harpoon or a cobra. As soon as it's grabbed the cyan bot, it contracts to pull the cyan bot back to the left cliff.

This challenge is officially closed. You won't get an award for completing it, although if you want to try simply as a test of your programming skills you are free to do so

I'll upload the new challenge later today.