Hacker News new | comments | show | ask | jobs | submit login
Inifinite Monkey Theorem: Recreating Shakespeare using Hadoop and EC2 (jesse-anderson.com)
10 points by colinloretz 2302 days ago | hide | past | web | favorite | 8 comments

Instead of having monkeys typing random characters and then collating together, it would have been more interesting to have monkeys typing the entire work at once and then selecting the work from the monkey with the closest output to 'breed' (use the output as the basis for a new generation of monkeys that will always type those letters in those positions with a very high probability [you accept mutations]).

This would have been faster and more interesting.

For reference, this theorem was and is often used to counter evolutionism, but those that try to use it in this way fail to grasp that evolution is not random but selects the fittiest according to survival ability. By setting the survival rule to 'proximity to Shakespeare' you'd reach the end result relatively quickly.


This seems to be missing the point. The theorem is that a monkey typing forever would eventually produce the complete works of William Shakespeare. This test seems to be having a huge number of monkeys typing random letters that might make up words, and if a word matches a Shakespeare play it is marked in green. In other words, it's just randomly generating words and slowly building a Shakespeare play. This doesn't seem hard at all.

Unless I'm missing something these seem to be two completely different experiments. One saying that a monkey given enough time could randomly create Shakespeare, and one saying given enough monkeys making random words they could eventually check off all words in a Shakespeare play.

Yeah, it looks like he's generating random 9 char strings, then testing to see if they fit anywhere at all in the Shakespeare corpus. If so, they get marked as 'done' (green).

The former problem you state is the correct one - that somewhere, one of those infinite monkeys, somewhere on his infinite typewriter paper, will contain a single consecutive string of the entire works of Shakespeare. Obviously that is monsterously more difficult, and almost certainly falls into one of those "If every atom in the universe was a computer, it'd still take x^n billion years" type combinatorial explosions.

Exactly. This requires that some "intelligent person" map all the monkey 9 char pieces together! which defeats the point. My impression of the theorem has always been that if you had an infinite number of monkeys, each typing a continuous random set of characters, at least one of them would produce Shakespeare' work.

It seems more like an expensive way to capture media attention.

The "intelligent person" would be the survival of the monkey.

If he did the same thing with 1 character strings instead of 9 character strings, he would generate all of Shakespheare very quickly by his definition.

I already did the the more orthodox version of the saying (http://www.jesse-anderson.com/2011/06/a-million-amazonian-mo...). Due to my non-infinite resources, I had to come up with another way of attaining the goal. The saying doesn't come with a list of rules and could be interpreted in both ways.

yeah. I agree. its missing the point. It should only count if it randomly generates an entire work continuously. All he's doing is generating 9 character segments and fitting them in.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact