Many like to try to guess at how long it will take to develop artificial intelligence. Like many in the field, I have my own ideas about it. I don’t think guesses that look at evolution as found in nature in order to apply those time scales to our own efforts are worthy. What follows is why I think that is the case.
Here’s the thing. Evolution in the sense most are familiar with it is basically a biological hardware development process. It took a long time for nature to produce the right computing hardware using that process. In the current “version” of humanity, consciousness arises automatically upon input and organization of enough data. That’s very good hardware from the perspective of consciousness or no consciousness.
With computer hardware, however, the odds are excellent that the hardware is already more than sufficient. If that’s the case, then we’re just dealing with one last step, which is strictly based on varying software.
And while nature — the evolution we normally consider — goes about every step by randomly trying things which are triaged only by if they make for better or worse survival, that’s not what we’re doing. We are trying all manner of software approaches that are all directed at success, being specifically triaged by “test for consciousness” and nothing else, not random at all. That reduces the possibility of failure quite a bit by comparison to nature’s ways.
We’re doing less guessing and more imitation every day as we understand more about how the brain does its computing. From Numenta’s higher level focus on cortical processes to the myriad lowest level attempts to build neural analogs, the problem is being directly, not randomly, attacked. The “arise” that applies to our effort is clearly not the “arise” that applies to classical evolution. Consequently comparing the two processes with an eye towards guessing at how long it will take for us to succeed isn’t easy, or even necessarily reasonable.
Lastly, as to specifically classical evolutionary processes, computer software can drive thousands of generations per second of evolutionary software development. The key here is to provide a sufficient test of the outcome so as to put the required pressure on the software to develop in the desired direction. In this way, evolution, too, can be put to use in a decidedly faster mode than we think of it when we look at the historical animal developmental paths that gave rise to our particular solution to the problem. I expect this to be particularly useful once the first basic successes have occurred. It is very easy to apply evolutionary software processes to something is already somewhat working, as opposed to something that is yet not working at all.
I remain quite confident that we are close — much closer than most would be willing to give credence to. Time will tell.