Profile picture
Janelle Shane @JanelleCShane
, 17 tweets, 6 min read Read on Twitter
When machine learning is astonishing - I collected some highlights from a paper on algorithmic creativity
aiweirdness.com/post/172894792…
Original paper:
arxiv.org/pdf/1803.03453… Why walk when you can flop? In one example, a simulated robot was supposed to evolve to travel as quickly as possible. But rather than evolve legs, it simply assembled itself into a tall tower, then fell over. Some of these robots even learned to turn their falling motion into a somersault, adding extra distance.<br />
<br />
<br />
[Image: Robot is simply a tower that falls over.]
Why jump when you can can-can? Image: Tall robot flinging a leg into the air instead of jumping
Hacking the Matrix for superpowers: It turns out that, like in real life, if an energy source is available, something will evolve to use it. Floating-point rounding errors as an energy source: In one simulation, robots learned that small rounding errors in the math that calculated forces meant that they got a tiny bit of extra energy with motion. They learned to twitch rapidly, generating lots of free energy that they could harness. The programmer noticed the problem when the robots started swimming extraordinarily fast.
Harvesting energy from crashing into the floor Harvesting energy from crashing into the floor: Another simulation had some problems with its collision detection math that robots learned to use. If they managed to glitch themselves into the floor (they first learned to manipulate time to make this possible), the collision detection would realize they weren’t supposed to be in the floor and would shoot them upward. The robots learned to vibrate rapidly against the
It didn't specify *which* body parts Clap to fly: In another simulation, jumping bots learned to harness a different collision-detection bug that would propel them high into the air every time they crashed two of their own body parts together. Commercial flight would look a lot different if this worked in real life.
Sometimes I think the surest sign that we’re not living in a computer simulation is that if we were, some microbe would have learned to exploit its flaws. Discovering secret moves: Computer game-playing algorithms are really good at discovering the kind of Matrix glitches that humans usually learn to exploit for speed-running. An algorithm playing the old Atari game Q*bert discovered a previously-unknown bug where it could perform a very specific series of moves at the end of one level and instead of moving to the next level, all the platforms would begin blinking rapi
A Doom-playing algorithm also figured out a special combination of movements that would stop enemies from firing fireballs - but it only works in the algorithm’s internal model (its own dream-version) of Doom.
Delightfully, you can play the dream version: worldmodels.github.io
Sometimes machine learning solves the wrong problem in unintentionally sinister ways. Shooting the moon: In one of the more chilling examples, there was an algorithm that was supposed to figure out how to apply a minimum force to a plane landing on an aircraft carrier. Instead, it discovered that if it applied a *huge* force, it would overflow the program’s memory and would register instead as a very *small* force. The pilot would die but, hey, perfect score.
For example, there was an algorithm that was supposed to sort a list of numbers. Instead, it learned to delete the list, so that it was no longer technically unsorted.
Another algorithm was supposed to minimize the difference between its own answers and the correct answers. It found where the answers were stored and deleted them, so it would get a perfect score.
This is one of my favorite examples. It figured out how to remotely crash its opponent's computer to win at tic-tac-toe. How to win at tic-tac-toe: In another beautiful example, in 1997 some programmers built algorithms that could play tic-tac-toe remotely against each other on an infinitely large board. One programmer, rather than designing their algorithm’s strategy, let it evolve its own approach. Surprisingly, the algorithm suddenly began winning all its games. It turned out that the algorithm’s strategy was to place its move very,
Not in the same paper, but @br3n reminded me of this beautiful example: the time a circuit was supposed to evolve an oscillator but instead built a radio to pick up an oscillating signal from nearby hardware. people.duke.edu/~ng46/topics/e…
I also like this one. Found the best betting strategy was not to bet at all.
Another example of hacking the Matrix for superpowers
There are more anecdotes in the collection that @vkrakovna has started. Please add to the spreadsheet if you know of other published examples!
vkrakovna.wordpress.com/2018/04/02/spe…
A gem from that collection:
Rather than evolve its own good solutions, an algorithm found the best items from the pool of existing solutions and edited itself into their authorship slots
aliciapatterson.org/stories/eurisk…
Another from that spreadsheet. Artificial evolution can be just as grim as real-life evolution. In an artificial life simulation where survival required energy but giving birth had no energy cost, one species evolved a sedentary lifestyle that consisted mostly of mating in order to produce new children which could be eaten (or used as mates to produce more edible children).
Missing some Tweet in this thread?
You can try to force a refresh.

Like this thread? Get email updates or save it to PDF!

Subscribe to Janelle Shane
Profile picture

Get real-time email alerts when new unrolls are available from this author!

This content may be removed anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member and get exclusive features!

Premium member ($3.00/month or $30.00/year)

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!