2021 Darwin Game - Contestants

by lsusr2 min read3rd Oct 202117 comments

70

Exercises / Problem-SetsBiology
Frontpage

123 players submitted a total of 556 species. Most players submitted just 1 species. One player submitted 11. (I disqualified his[1] 11ᵗʰ submission.) 555 species qualified for entry. I expected more players would submit 10 species compared to 8 or 9 in order to max out their submissions but that didn't happen.

The most popular name was Krill, which three separate people submitted. This does not count Yellow Krill, Green Krill, Red Krill, Nano-krill, Fornicacious Krill, Orange-Krill and Orange Krill.

Other duplicate names included Armadillo, Bear, Desert Tortoise, Forest Tribble, Kraken, Trash Panda and Flesh-Eating Clam.

A couple species were placed in the Tundra/Desert without the necessary temperature adaptations. I modified them so they wouldn't instantly die. Other people gave cold/heat adaptations to water-breathing species, which are useless. I left those unaltered.

Speaking of useless adaptations, Weapons + Armor is only useful up to 10. If your Weapons + Armor exceeds 10 the extra armor is useless. 40 submissions (7%) had Weapons + Armor more than 10. I think the idea here was to create big exciting powerful monsters. This is the realm of Dragons, Forest Dragons, Basilisks, Sandworms, White-Whales, Tundrus Rex, Humans, All-eating Leviathans and the so-called "Ultimate Lifeform". I expect[2] none of them will survive to the end.

I tried to render a food web but it didn't work because there were 54,867 connections. I let graphviz run for ten hours before putting it out of its misery.

Stats

One sixth of the entries were venomous. One third had antivenom.

Unlike their number of entries, many players did choose to max out weapons, armor and speed.

Spawning Locations

It makes sense that the ocean is popular because of how much food it supports. I was surprised by how popular the human garbage dump was. The Desert and Tundra were the least popular, presumably due to the temperature hazards.

Foraging

The most common foraging adaptations were algae, seeds and carrion.

  • Algae is on top because there is the most algae.
  • Seeds were popular because they offers lots of nutrition compared to the digestive adaptation.
  • Carrion it is most nutritionally dense option.

Forage or Hunt?

Half of all organisms were pure foragers. Of the rest, the majority had a foraging adaptation. Only a tiny minority were specialized hunters.

Social Media

I promised link to the winners' social media accounts (if they want). Most went with Twitter. Some went with LinkedIn, Tumblr, personal websites and Less Wrong itself. Two picked Instagram.


  1. If you didn't submit "Algae Eater Eater" then this isn't you. ↩︎

  2. I'm writing these words before running the game. ↩︎

70

17 comments, sorted by Highlighting new comments since Today at 7:23 AM
New Comment

Feedback on the game so far:

Genome Format: Even though I'm a long time programmer, I vastly preferred this year's version where no one (except you) had to write any code. This was awesome!

Implementation/Spec: I would have preferred a clear spec accompanied by a reference implementation. Hy may be fun to use, but it's incredibly slow. (Also the version differences causing various problems was no fun at all.)
The only big thing to watch out for is to not use the built-in RNG of whatever language you'll end up using, but instead a relatively simple to implement (but still good quality) one like e.g. PCG where you can probably find a library, but if not then you have just a couple of lines to translate. (Different RNGs would mean different results. If everyone can use exactly the same, then all re-implementations are able to behave exactly the same, and it's easy to test that you got your implementation correct.)

Time: If you can, avoid the very last/first week of a quarter year - that's when companies and people who are self-employed have to finish all the bookkeeping. (I had several requests for clarification & planning the next quarter coming at me, that took away even more time...)

Duration: A week felt quite short, two weeks would have left a week to sort out infrastructure problems and then another one to solve the actual problem. Maybe next time you could split it in two, first week releases the spec and a sample environment (like the one that you used throughout the post), second week releases the actual parameters for the game. (I.e. the big 10-biome list and final feature costs.) Leaving a 48 hour window for changes (before submission opens) would be fine at that point; given that many would already understand the base setting, any quirks like grassland having less grass than rain forest would likely be noticed quickly and could still be fixed.)

Submission: Google forms sucked. Maybe there's a browser extension that makes it easier to use, but I had to click around a lot and for some reason the browser built-in form completion was disabled for the fields, so I had to manually paste email / user etc. every. single. time. Ugh. There was also no way to see which ones I had already submitted. I'm pretty sure that I'm not the one with 11 species (and even if, two would have been exact duplicates), but an alternative "or just send me a CSV file formatted like the example data" would have been much more usable for me.

Still, in all it was a lot of fun and I'm curious what the results will be. Thank you very much for running another round this year, and I hope there will be another one next year!

Lots of great feedback! Here are my tentative thoughts. Please don't construe them as promises.

Gene Format

The genome format is easier for me too. This sounds like the genome format is just the right way to go in the future.

Implementation/Spec

I plan to stick to Hy, but I'll make the versioning clearer in the future. I could have done a better job with setup instructions overall. I think the slowness came from implementation choices. I made an extremely inefficient simulation in order to support forward compatibility with some features I never got around to implementing. I'm optimizing for features, not speed.

Using PCG sounds like an easy change. If that was all there was to it then I wouldn't mind using it for the random numbers. However there's other bits of the code too (like random selection from sets) which might vary from one implementation to another. Making it possible for everyone's simulator to behave exactly the same is a nice-to-have feature that I'm probably not going to implement. I'd rather put that time into creating more adaptations players get the choice of using.

Time

I can avoid the last/first week of a quarter year. That's no problem.

Duration

Extending from one week to two weeks is no problem either. Using the first week for a spec and a sample environment and the second week for the actual parameters sounds excellent. Leaving an explicit 48-hour window for changes sounds good too.

Submission

It's easy for me to accept CSV files. I think the best way to help everyone is to just accept both CSV files and Google Forms.

I plan to stick to Hy, but I'll make the versioning clearer in the future.

If there's two weeks, that should leave enough time for making & checking alternate implementations, as well as clarifying any unclear parts. (I never fully understood the details of the selection algorithm (and it seems there were bugs in it until quite late), but given a week for focusing just on that, I hope that should work out alright.)

I'm optimizing for features, not speed.

No complaints here, that's the only sane approach for research and other software like this.

However there's other bits of the code too (like random selection from sets) which might vary from one implementation to another.

Compared to e.g. trying to get the Mersenne Twister (which I think is still Python's default RNG?) either linked to or re-implemented in some other obscure language, that's a trivial task. I don't expect problems there, as long as those functions actually use the specified RNG and not internally refer to the language's default.


Oh also, on genome formats: I've been doing quite a bit of stuff with domain specific languages / PLT stuff, as well as genetic algorithms and other swarm optimization approaches before. If you have any ideas that you want to bounce off someone or have some cool idea for some complex genome format that looks like it might be too much work, feel free to ping me - I might be able to help! (Ideally in a sufficiently abstract / altered way that I can still participate, but if need be, I'd give that up for a year too.)

Oh also, on genome formats: I've been doing quite a bit of stuff with domain specific languages / PLT stuff, as well as genetic algorithms and other swarm optimization approaches before. If you have any ideas that you want to bounce off someone or have some cool idea for some complex genome format that looks like it might be too much work, feel free to ping me - I might be able to help! (Ideally in a sufficiently abstract / altered way that I can still participate, but if need be, I'd give that up for a year too.)

I love this forum/community so much.

Flesh-Eating Clam is mine. The name is just from trying to imagine an armored sea-floor scavenger. I was collaborating with my brother, and he chose to submit the same creature in Ocean rather than Benthic and didn't change the name. (Zero speed means they won't compete with each other.)

The Detritus/Ditritus typo from earlier has made it into the food pie chart.

(It is breeding faster than it is being predated upon)

Thanks for noticing. The spelling error is indicative of a deeper problem which actually affects the game. I have fixed it and will re-run my simulation.

Other duplicate names included ... Forest Tribble

The fact that only Forest Tribble and not the regular Tribble is listed here concerns me. Perhaps I accidentally submitted Forest Tribble twice in which case I was likely the one with 11 entries?

 

This is the realm of ...  Sandworms, 

Heh, I'm pretty sure I submitted "Shai-Hulud" with 10 weapons and 0 armor. It's supposed to be pretty sensitive anyway - that's how you steer them when riding.

You're not the one with 11. I sent him an email..

Speaking of useless adaptations, Weapons + Armor is only useful up to 10. If your Weapons + Armor exceeds 10 the extra armor is useless. 40 submissions (7%) had Weapons + Armor more than 10. I think the idea here was to create big exciting powerful monsters.

Actually, is even worse than this. Weapons 5 + Armor 5 seems fine, but Weapons 8 + Armor 1 is strictly better (assuming you wanted a successful predator). Basically, any Weapons + Armor >= 10 combination is dominated by another Weapons + Armor >= 10 combination having +3 Weapons and -4 Armor: same cost and same protection, but with more effective weapons.

That said, I've submitted a Wurm with Weapons 6 + Armor 6 anyway, because my inner Dungeon Master kept saying "It's a sodding Wurm, it should have higher Armor Class!". Weapons 9 + Armor 2 on a giant desert predator seemed just wrong (can someone please provide real-world examples of such "low-armored" deadly predators?).

A phrasing I think would be accurate:

If Weapons + Armor is > 10 (not merely equal to 10), your organism is suboptimal.

There are two different things you could do to such an organism that would be strict improvements:

  1. You could remove 1 Armor, saving size at no cost.

  2. You could remove 4 Armor and add 3 Weapons, improving your predatory ability at zero net size cost.

I agree it's usually better, but I don't think it's always better.

Imagine a world where you have a prey animal with Armor 4, and a pure predator with Weapons 10.

If you want to be able to eat the prey and survive the predator, Weapons 5 Armor 5 is the cheapest possible way of doing that (ignoring venom for now).

Right, maybe it's not always better. But if we restrict to "invincible" predators (Weapons + Armor >= 10), it is, since no one can prey upon you anyway. I've edited the previous comment.

Armor 10 cannot be eaten by anyone, whilst weapons 3 armor 6 can, so I don't believe this is correct.

I meant "restrict to both designs having Weapons + Armor >= 10" (which I admit may be a moot point since Weapons + Armor > 10 is out of the Pareto frontier anyway).

Weapons 6 + Armor 8 is obviously strictly worse than Weapons 6 + Armor 4 (cost less and do the same), but it's even worse than Weapons 9 + Armor 4 (same cost and do more). And Weapons 9 + Armor 4 is strictly worse than Weapons 10 alone.

There is nothing strictly better than armor 10 weapons 0, which contradicts the rephrased way you put it.