Goldilocks and the “No Free Lunch Theorem” (and why there is intelligent life)

in #science7 years ago (edited)

There is no free lunch when it comes to lossless data compression, hashing functions, machine learning algorithms, and many other computing problems. For example, you can only find a compression or hashing function which works well with a particular subset of all possible input data. You can only implement a neural network that predicts well for some small subset of all possible input patterns. For any given hash function, there will always be some data which will result in a collision. For any given lossless compression function, there will always be some data which will result in an expansion rather than a compression in data size. And neural networks cannot deal with random data, however most data it the realm of all possible data is indeed random.

So why is it that we can use these algorithms in useful ways? Because we most often need to deal only with the most typical data patterns that naturally occur. It is because physical reality is very sparse when it comes to what it typically presents to us. The laws of physics are ridiculously simple compared to what they potential could be in a generalized set of all possible universes. It is only these limitations on what is possible in our universe that allows us to accomplish anything at all. But if the universe was instead too constrained and simplified, it would not be rich enough in possibilities to support the evolution of intelligence. Be grateful that we exist in this fecund universe in the enormous multiverse of possibilities. Not too simple and not too complex... not to cold and not too hot... just right for intelligent life!

https://en.wikipedia.org/wiki/No_free_lunch_theorem