IEET > Security > Cyber > SciTech > Contributors > Gregory Trocchia
Print •
Email •
permalink •
(15) Comments •
(1836) Hits •
subscribe •
•
•
•
•
•
Re-Thinking the Singularity
Gregory Trocchia
Ethical Technology
Posted: Mar 24, 2009
How long would it take you to count from 1 to 2^256, and how much energy would it require? The answer, which might surprise you, also may put a damper on the expectations of a Technological Singularity occurring any time soon.
I have been doing some re-thinking concerning the potency of Moore’s Law, one of the underpinnings of the arguments for the likelihood of a Singularity. Moore’s Law promises an exponential improvement in the hardware available to us, and it does so at a rate which is fairly predictable (at least for as long as Moore’s Law has to run). From this, you can deduce that even if nobody figures out a more clever approach to the most difficult computable problem facing you, if you give it long enough then Moore’s Law will provide a “big enough hammer” to solve the problem by brute force alone. Or, at least, that is how I used to look at it.
What is causing my reassessment is the fact that it is not only possible, but actually rather easy to devise problems that are resistant to solving by faster hardware alone. Consider the following example: count from 1 to 2^256. It is easy to state the task, yet completing it would require more energy than the Sun will put out during its lifetime. If this sounds unbelievable, let me demonstrate that it is not.
First, we need to start with a value for the amount of energy the Sun will emit. The estimate I will use is 10^46 joules, which is probably an overestimate, but as we will see, that will not help any. Now I divide the 10^46 joules by 2^256 to get an “energy budget” for each count. The result of this division is 8.63 * 10^-32 joules as the maximum energy that can be expended per count. This is about 10 orders of magnitude more than the ~kT limit needed to erase one bit.
Now there might be those who wish to quibble by pointing out that reversible computing architectures have been proposed that would not be subject to the kT limit. My response is several fold. First off, all the computers that have been built so far require far more than kT per bit changed. Next, you would need a computer at least billions of times more efficient than the most efficient possible non-reversible computer to do any good. Finally, even if you had a computer that efficient, you would need a Dyson Sphere and the willingness to devote the rest of the Sun’s energy output to a single problem. Note also that the question of the speed of the computer you are using doesn’t even enter the picture; we are just talking about energy usage so that improving the number of FLOPS (FLOating point OPerations per Second) your computer can churn out does absolutely nothing to make the problem more soluble.
The ease with which one could set up a problem that is completely beyond the ability of Moore’s Law alone to render tractable suggested to me that there may well be problems in AI (Artificial Intelligence) that simple BF&I (Brute Force & Ignorance) cannot and will not solve by itself. More clever algorithms, either by themselves or in combination with a bigger hammer, could make the problem into one that can be solved, but when (or whether) you will develop such a better approach to the problem is inherently far less predictable than forecasting the availability of more powerful hardware.
Does any of the above prove that there will be no Singularity? Of course not. But it does suggest that it is possible to run into a problem that is, and will continue to be, resistant to all attempts to solve it by more powerful hardware alone. That increases my estimate of the chances that we will run into a “show-stopper” on the way to the Singularity.
Gregory Trocchia has an academic background in Physics, Computer Science, and Marketing. His career experience includes writing navigation software for submarines and testing system software for the SP series supercomputers at IBM. He is currently a consultant specializing in Software Quality Assurance (SQA).
Print •
Email •
permalink •
(15) Comments •
(1837) Hits •
subscribe •
•
•
•
•
•
COMMENTS
anon • los angeles • Mar 24, 2009
why would one need to count from 1 to 2^256?
how about a real world example of the kind of computation we actually are interested in, that will allegedly never yield to brute force computation?
I got this particular example from a discussion on the Register where the initial, real world, problem involved was a brute force attack on a 256 bit key. An Anonymous Coward pointed out that even trying to count to 2^256 would require more energy than the Sun will put out, to say nothing of trying that number as a key and seeing if it worked. Another poster challenged the AC to “do the math” and when I did so, I found that the AC was correct, which got me thinking. Here is a link if you want to read the comment thread yourself:
http://www.theregister.co.uk/2009/02/17/satellite_tv_hacking/comments/
It seems to me that this problem, contrived as it may seem, illustrates the concept that it isn’t particularly difficult to generate search spaces so huge that brute force trial and error, absent some form of massive pruning in the form of algorithmic cleverness, is inadequate to give you a solution.
Here’s my take on it:
http://www.acceleratingfuture.com/michael/blog/2009/02/the-singularity-is-just-about-smarter-than-human-intelligence/
Uhg.. How silly. OF COURSE YOU CAN COME UP WITH A PROBLEM THAT CAN NEVER BE SOLVED. No DUH! Hey, I know, you can’t count to 1^100000000 therefore there will be no singularity! Yea, brilliant. The singularity is not about solving EVERY problem ever conceived, no matter how trite and useless, and I have never seen anyone who knew thing one about the singularity suggest anything like that. The singularity is about having so much computational power that major problems that humans have today are solved, and you don’t need to count to 2^256 to do that. For instance, AI can not be harder than 10^15 flops, because that is what leading researchers have figured out the human brain has. At most it will take us a little more than that (10^15 flops.) Other problems are much simpler, like nanorobotics, which together with AI will enable the curing of all diseases and age related death, as well as allow free manufacturing of ordinary goods that humans need, such as food, housing, transportation, advanced (but not infinite) computers, and so on. None of these problems and others that are actually a concern, require anywhere near the computational power or energy budget of a device that counts to 2^256, and are easily within the energy budget of the planet. I suggest you read Engines of Creation, with the understanding that that man is far smarter than you (on this subject,) for one.
The part about counting from 1 to 2^256 seems to reflect the initial focus by Kurzweil on Moore’s Law as the path to the Singularity. In some ways, back when the argument was framed, it was perhaps a reasonable assumption - ie, that hardware of sufficient power would make the requisite software fall into place, in particular, advanced AI.
As it turns out, this has not been the case. Advanced AI software is a very difficult thing to achieve, in its own right, regardless of the hardware power available. This realistic consideration is the primary reason Kurzweil moved his predicted date for the Singularity to 2045, despite the fact that computers nominally as fast (or faster?) than a human brain are right around the corner.
Therefore, this seems like the far more interesting point from the article, one with which I strongly concur:
“The ease with which one could set up a problem that is completely beyond the ability of Moore’s Law alone to render tractable suggested to me that there may well be problems in AI (Artificial Intelligence) that simple BF&I;(Brute Force & Ignorance) cannot and will not solve by itself. More clever algorithms, either by themselves or in combination with a bigger hammer, could make the problem into one that can be solved, but when (or whether) you will develop such a better approach to the problem is inherently far less predictable than forecasting the availability of more powerful hardware.”
I don’t know if we’ll get to advanced AI that can “make smarter versions of itself” or not, all by itself, leaving humanity far behind to revel in an orgy of utopian/dystopian speculation. However, I think we will get to AI advanced enough to provide a considerable boost to the productivity of the enterprises of scientific research and engineering actualization, as well as many other applications. Even these more modest (but still titanically important) achievements will be long and incredibly arduous efforts, by all indications. However, 2045 does not seem unrealistic for something of at least this level of sophistication. Hopefully sooner, though, that would be great.
http://predictionboy.blogspot.com/
I *have* read Engines of Creation (and Nanosystems, and The Singularity is Near and…). I beg to differ, strongly, with your flat assertion that “AI can not be harder than 10^15 flops”. For one thing, the 10^15 flops estimate is not a very hard number in that it comes from a back of the envelope calculation where you take number of neurons * number of synapses per neuron * average firing rate per second of synapses. This number provides a floor, but NOT a ceiling on the processing power equivalent to a human brain. There may be a lot of “processing” that is not accounted for by this estimate. I do not think we have anywhere near enough understanding to be able to flatly state exactly what the equivalent processing power to a human brain is.
It is this lack of understanding which brings me to my second point, that even if we were to find that the human brain has ~10^15 flops worth of processing going on, that fact in no way implies that “AI can not be harder than 10^15 flops”. Consider the classic computer science problem of searching a billion item list. If you know the list is sorted and can use a binary search, then this task can be accomplished in ~30 steps (counting jumping to the desired point in the list and doing the comparison as one “step”). If you have to do a brute force trial and error search, you are looking at an average of half a billion steps. This is part of my larger point: if you don’t have a good understanding of what you are doing and seek and try to compensate with raw processing power, there is no limit to the amount of flops you can expend while quite possibly getting little or no results for the effort.
Understanding just how it is that human intelligence works can mean all the difference between AI being tractable and AI being unachievable, but understanding of something as inherently complex as the human brain is not just something we can assume we will have and it is certainly not something that we can accurately schedule.
So far as addressing age old human problems of disease, food, housing and the like, I too have great hopes for nanomanufacturing but I have some cautions. First, nanomanufacturing is a distinct concept from the Singularity, as Michael Anissimov points out, the Singularity being about greater than human intelligence (achieving one may help you in achieving the other, but there remains a distinction). Second, even if nanomanufacturing is easier to implement than AI, which I suspect is the case, that does not make it easy to achieve in an absolute sense. We just won’t know how hard it will be to bootstrap our way to primitive mechanosynthesis until we are a lot nearer to actually getting there. Third, nanomanufacturing can be cheaper than conventional manufacturing but it won’t be “free” (at best what happens is that variable cost of production will approach zero, and just how close is uncertain, while the fixed costs: design of the item, writing of any embedded software, testing the design, etc. will see far less effect). Finally, while achievement of nanomanufacturing can make the above problems easier to address it does not, in and of itself, mean that we have solutions for those problems.
Complete nonsense. There is no minimum energy requirement for computation. Thus, the total energy required to count from 1 to 2^256 is zero.
Here is a link to a description of Landauer’s Principle in a pdf, which establishes the kT * ln2 minimum energy cost to erase one bit:
http://www-scf.usc.edu/~justinsc/Papers/2005_11Nov_Maxwells_Demon.pdf
You can Google it yourself if you want to, I am not making this stuff up. The way that people look to get around Landauer’s Principle is to propose reversible architectures, where instead of zeroing bits in a register (and paying the associated energy cost) you instead run your computations backwards to restore its conditions. I dealt with that concept in my original article.
The reason that no one is actually building reversible architecture computers is that we are so far above the Landauer’s Principle limit that in the real world this is not a factor yet. According to this article, as of June 2008, the best supercomputers in the world had not yet broken 500 megaflops per watt:
http://www.itjungle.com/two/two062508-printer05.html
note that this equates to a REAL WORLD number of more than 2 * 10^-9 joules per Floating Point Operation, which is a staggering 2.3 * 10^21 times more than my “energy budget” for a single count. Now you can argue that supercomputers will not only get more powerful, but also more efficient and I will agree with you. That said we have an awful, awful long way to go just to get to where we can begin worrying about the cost of computation due to Landauer’s Principle. So both in theory (Thermodynamics) and in the real world, you are flat wrong, there IS a minimum energy requirement for computation. We can argue about how low it will get (eventually) but as so often happens in real life, “There Ain’t No Such Thing As A Free Lunch”.
Gene • Portland, OR • Mar 27, 2009
The Singularity will only arise when non-linear systems multiply one-another’s output. I think you underestimate the implications of combining nanotech with knowledge of the human brain. Once robust pattern-recognition comes out of that, hard AI is already here.
The entire human species could be thought of as a computer that has solved all sorts of interesting AI problems without exhausting an energy supply the size of the sun. i’m not sure if having an AI that is equivalent to all human intelligence that has ever existed would qualify as a “singularity” event, but it seems like it would be a pretty good start.
the point being that i think most AI researchers consider the human brain to not only be a model for machine intelligence but also a type of existential proof that a very real configuration of matter exists that can perform all sorts of interesting computations using a reasonable amount of resources.
you may have different ideas about what exactly would constitute a singularity event, if so, your insight may be more devastating.
what necessary condition for a singularity do you see your computations excluding?
-jcs
Gene • Portland, OR • Mar 28, 2009
I keep thinking about this so I’m back. I pretty stupid computer could count that high eventually, but still never pass a Turing Test. Also, the energy doesn’t need to be present in one instant. It could simply be generated with a solar panel over the course of a trillion years, while it’s still counting.
In light of the comments by Gene and JCS, there is a point that I hoped I had made clear in my article that seems to need additional emphasis, namely that what I was doing was not intended to be a debunking or a disproof of the concept of the Singularity itself. Rather, what I was trying to throw doubt upon is the notion of the *inevitability* of the Singularity, which is a different animal.
Specifically, I was trying to show that it is not only possible but it is not really all that difficult to devise a problem that will resist solution through more powerful hardware alone. I am not declaring that there is such a problem facing us on the way to AI, but rather merely that it is possible that we may encounter one.
Even if we do encounter such a problem, that does not, in and of itself, render the Singularity an invalid concept. The problem may well be addressable with increased understanding and better software approaches to the problem. Better software tends to give you more “bang for the buck” than faster hardware. The only downside to addressing potential show-stoppers with better software is that you can’t pull out a calendar and estimate when you will have those software improvements in the same way that you can get out a some log scale graph paper and predict when you will have hardware that is faster by a given factor.
So, to summarize, I am agnostic about the possibility of a Singularity, I don’t think we really know enough to say with absolute confidence either that a Singularity will occur or that it won’t occur. If there was some confusion about this, I hope I have dispelled it.
Gene • Portland, OR • Mar 30, 2009
I see what you’re trying to say. It has been so easily assumed that it will either happen or not, with little recognition of the gray-zone ‘known unknowns.’
I agree that hardware improvements alone don’t guarantee that the singularity will occur, but I do think there are algorithms that exist today that can make interesting things possible once they’ve been scaled up using bigger/faster machines.
http://www.sciam.com/article.cfm?id=rise-of-the-robots
I see your point though. Throwing hardware at something doesn’t replace elegant algorithms, especially in the case of a problem like general AI where we don’t even have a complete algorithm yet!
Who can say if the necessary breakthroughs will occur as soon as the computing power necessary to match the brain is available, or if they ever will? I think people like Kurzweil are betting that increases in computing power will in itself make possible the fundamental research that leads to reverse engineering the brain so we can model it in an almost complete way. Which is really the worst case scenario. It would be like having to wait until we totally understood the aerodynamics of bird flight before we could make an airplane. The exciting news, is that some experts think even this long way around will soon be feasible thanks to exponential improvements in technologies like computer imaging, data storage and processing.
So, you’re right to say that some problems require not only more of the same stuff we already have (e.g. standard computers using known algorithms) but also something that are currently non-existent (e.g. elegant general intelligence algorithms and quantum computers) and no one really knows when the new stuff will show up.
But, the combination of new technologies growing at an increasingly fast rate and society putting incentives in place, makes it likely that if they can be solved then they will be solved and within an amount of time that many people will find shocking.
As far as the problem you suggested is concerned, it’s really a big contrived since it’s all brawn and no brains. Counting up to 2^256 compared to general intelligence is like moving Mt. Everest one spoonful at a time vs. painting the Sistine Chapel. Both are difficult tasks, but in very different ways and I would argue that the second task is difficult for much more interesting reasons.
After all, you don’t need to pluck the same string 2^256 times to compose and perform a great symphony 
Thanks for your post and your response. I’ve enjoyed exploring these ideas with you!
-jcs
The authors example was an attempt to find an example that can’t benefit from exponential growth. The idea of a technological singularity is usually based on an intelligence explosion. So, the question is, can there be an intelligence explosion?
Suppose an exponential growth of computing resources is required to get a linear growth of AGI. I think that will be the case, and then it won’t be a hard take-off at least.
YOUR COMMENT
Next entry: Science, Religion and the Quest for Secular Morality
Previous entry: What is "Uplift?"
|