The 'million monkey' scenario is a well-known thought experiment. Supposing a million monkeys were randomly tapping at the keys of a typewriter. Would one of the monkeys eventually happen to type out the text of a Shakespeare play? Over any realistic time scale, it turns out that the probability of them reproducing even one page of Shakespeare is rather small, although given an infinite amount of time (or infinite monkeys), the monkeys would succeed an infinite number of times.

Being a neuroscientist, I wanted to explore what would happen if, instead of monkeys typing, we assumed that random letters were generated by the spike activity of human neurons. Could a neuron be likened to a monkey with a typewriter? And if so, how long would we have to wait before one of the neurons in a human brain 'typed' a given text? Here's how I approached the problem. A neuron has a theoretical maximum firing rate of about 1000 Hz but the average firing rate under normal conditions seems to be much lower; estimates vary but I will go with a value of 5 Hz . I'll now assume that this means that each neuron could be used to generate about 10 independent bits of information per second. Essentially, my model is that every given 1/10th of a second, a neuron might either fire or not fire, and they fire on about 50% of these periods so the average firing rate is 5 Hz. Since firing or not firing is a binary variable, a bit, each neuron could be said to encode 10 bits per second. I don't know whether the brain actually uses all of those bits, or even if it uses any of them. However for the purposes of this post I will assume that assuming you could measure a neuron's activity perfectly, you could extract 10 independent bits per second from each neuron. Now, how long would it take for at least one neuron to type, let's say, your name? There are 26 letters in the English language. Let's assume that capitalization and punctuation are ignored. To encode one letter therefore takes a minimum of log2(26) = 4.7 bits so each neuron could be seen as a typewriter producing 10 / 4.7 = 2.12 letters per second. Let's assume that your full name is about 20 characters long. The chance of any random string of 20 letters being exactly equal to your name is 1 / (26 ^ 20). Therefore, the average number of times you would have to generate a name before you found your name, is therefore 26 ^ 20 - or twenty billion billion billion. Each neuron generates one 20-character string every 10 / 10.63 = 9.4 seconds. But there are some 86 billion neurons in the human brain, meaning that nearly 10 billion strings are generated per second. The mean waiting time is thus

69 billion years.

That's several times longer than the age of the universe. That's a long time. But what if we considered not just all of the neurons in your brain, but all of the neurons in every human brain on the planet today? In this case, the process would go 7.3 billion times faster - cutting the expected wait time down to 9.5 years! So, by my calculations, some neuron in someone's brain somewhere in the world randomly generates a series of spikes that, if they were letters, would spell your name, about once every decade. Or more often, if your name is shorter than 20 characters. For messages longer than 20 characters, the waiting time becomes extreme. Consider a single Twitter tweet, or a string of 140 characters. Even assuming that tweets were only made up of 26 possible characters, with no punctuation, all the brains on earth would take an average of over 4-followed-by-172-zeros years to generate any given tweet. After you'd waited that long, the final heat death of the universe would be the only thing left to look forward to. There's a limit to what the billions of neural monkeys could achieve.