This article suggests that deep learning is not designed to produce the universal algorithm and cannot be used to create such a complex systems.
First of all it requires huge amounts of computing power, time and effort to train the algorithm the right way and adding extra layers doesn't really help to solve complex problems which cannot be easily predicted.
Secondly some tasks are extremely difficult or impossible to solve using DNN, like solving a math equations, predicting pseudo-random lists, fluid mechanics, guessing encryption algorithms, or decompiling unknown formats, because there is no simple mapping between input and output.
So I'm asking, are there any alternative learning algorithms as powerful as deep architectures for general purpose problem solving? Which can solve more variety of problems, than "deep" architectures cannot?