Sunday 30 November 2008

Thought experiments


'THE IMPOSSIBLE OFTEN HAS A KIND OF INTEGRITY WHICH THE MERELY IMPROBABLE LACKS'
- Douglas Adams

Thought experiments are ace.  They are much better than real experiments. You can conduct them sitting at the end of your bed wrapped up in a duvet. There's no chance of getting acid all over your trousers or end up creating a gruesome monster who ends up killing every person you ever loved to make you pay attention to his tortured existence.  And if anyone starts asking 'Has this been peer-reviewed?' or 'What about your experimental control?', you can just shrug: 'Whatever, mate! It's a thought experiment.'

Anyway, this is something which I started pondering-up a while back.  Like any thought experiment, it involves a completely implausible set of pre-conditions but is intended to illustrate the implications of a metaphysical concept.  Here, I'm seeing if I can explore the ideas of determinism and predictability. 


MEET "SHY CALC"



Imagine you have a computer so powerful that it can give a complete, accurate prediction of the future.  For starters, it can determine the position and state of every single particle in a perfectly sealed system, say, a room - The Room. (Don't ask how it actually gathers this information - it just can).  It then uses its immense processing power to work out where all these particles will move, how they will interact etc - so that it can trace the sequence of every single physical change that will take place in The Room over a given period of time. For our purposes, we are only need to ask the computer to make a prediction for a quite short period - let's say, 10 minutes (although since the computer can be as powerful as we like, don't treat this as any kind of slight as to its abilities).   

Despite the enormous number of calculations required, let's say that the computer is able to complete its task practically instantaneously.

Now press the 'Start' button and the computer will do its job.  It's clear - actually, it's a truism given the set of conditions I've just outlined - that it will accurately predict what The Room will look like at the end of the 10 minute period.  

So if you get a man to stand in The Room, almost as soon as the operator presses the Start button the computer knows precisely how the man will look - where he will be standing and the exact expression on his face - ten minutes in the future. Indeed, it will have calculated everything that the man will say and do in that ten minute period. There is absolutely nothing that the man can try that will throw the prediction. If he decides that he is going to fool the computer by doing a hand-stand, the computer will have 'seen' this thought coming, because, of course, the particles that make up the man's brain were part of the initial state of The Room and each particle's subsequent movement forms part of the deterministic calculation that the computer performs. So if you go into The Room with the express aim of proving that you have free will, that your past does not completely determine your future, you will end up with egg on your face every time. At the end of the ten minutes, the guy at the computer's controls will open up the airlock and be able to stroll into The Room holding a print-out picture (ten minutes old) of your exact posture; the very expression on your face; the notepad you are clutching with 'fuck off!' or whatever you have scrawled on it.  

I call this computer 'Shy Calc'.  Why?  There's one aspect of the set-up which, to keep things simple, I have not yet described: the location of the computer. Shy Calc is sitting outside of The Room itself, ie. outside of the sealed space which is the subject of its predictions.  You can imagine The Room as having a large one-way mirror, on the other side of which (the viewing side) is the control room and Shy Calc itself.  

That Shy Calc is placed outside of The Room seems to me to be a rather significant fact, because it means that it does not have to include its own calculations within its predictions.   You could say that Shy Calc is something of a voyeur - it keenly watches, records and ultimately publishes everything that is destined to happen on the other side of the mirror, but it is rather more reticent about its own intimate workings.   Maybe it wants to avoid the difficulties that its brother, Embedded Calc, gets into....

"EMBEDDED CALC"


Embedded Calc is a computer with exactly the same specifications as Shy Calc.  The only difference is that it sits inside The Room, rather than in some room outside of it.  So the particles that make up the computer are part of the sealed system which is the subject of the prediction: part of the initial snapshot of physical data out of which the computer makes its prediction, and part of the final prediction itself.  

Now I need to explain at this stage, although these experiments are literally incredible in several respects - (I can't begin to imagine what sort of apparatus could instantaneously gather up all of relevant physical information about all the matter in The Room without disturbing it; I'm doubtful that you could completely "seal" The Room from all outside physical influence; and obviously the computers we are dealing with would need to be almost infinitely powerful to carry out the calculations required) -  I am imposing one important limitation, of sorts, on both Embedded Calc and on its brother Shy Calc.  That limitation is that the computer can only generate its prediction via a long chain of 'dumb' calculations.  It understands that one physical state at one moment - say, two atoms on the verge of collision - will, given everything that has already happened, produce the next moment a collision and then a split ... and so on.  What it emphatically can't do is simply wave a magic wand and "know" the (10-minute) future of The Room.  It really has to huff and puff and calculate its way to its prediction of how The Room will look at the end of the 10-minute period, passing through every change in state, every movement, of every particle along the way - albeit we are supposing that it can carry out this either instantaneously, or within a split-second.  The computer is vastly powerful, but no more intelligent than a calculator, and certainly endowed God-like pre-knowledge of the future.

Why am I imposing this qualification  - why, since we are making all these assumptions, not just give the computer magical  powers?  Well, the point of this thought experiment is to explore the link between the concepts of determinism and predictability.  The classic description of determinism by C18th mathematician Pierre-Simon Lapace posits that if you know everything about the universe as it currently is, with sufficient processing power you would be predict, or -more -  'see', the future .  This is, of course, the idea that my imaginary computers are harnessing.  What Laplace said was: 
"We ought to regard the present state of the universe as the effect of its antecedent state and as the cause of the state that is to follow. An intelligence knowing all the forces acting in nature at a given instant, as well as the momentary positions of all things in the universe, would be able to comprehend in one single formula the motions of the largest bodies as well as the lightest atoms in the world, provided that its intellect were sufficiently powerful to subject all data to analysis; to it nothing would be uncertain, the future as well as the past would be present to its eyes."

Laplace was implying that predictability and determinism are two sides of the same coin: so long as we live in a universe where one thing, causally, leads to another, it should be possible to see the future by knowing the present. Physicists have, in fact, chipped away at the premise of this idea by suggesting that the universe may not be completely deterministic, what with 'quantum indeterminacy' and the like.  But I want to chip away from the other end, as it were, and show in an intuitive non-mathematical way that the link between determinism and predictability might not hold up all that well, even if we are actually living in a deterministic universe.  To return to the question in the previous paragraph - why do we have to assume that the computer is making a series of plodding calculations?   Well, unless we assume that the computer works in this way, we won't be testing the proposition that you can theoretically predict the future by working out consequences of information about the present/past.  If the computer has a 'just-so' magical ability to know the 10-minute future it will be a truism that it can accurately predict the future. And we can't explore the problems outlined in the next few paragraphs.

So what of these 'problems'?

Remember (you might not, cause I've waffled on for a while now) that Embedded Calc is actually in The Room itself?  This means that poor old Embedded Calc has to predict not only what ever will be happening in the rest of The Room in the ten minute period, but also what will happen to itself, including its own internal workings - which, of course, at the start of the ten minute period will be engaged in furiously calculating everything that will happen in The Room including its own internal workings...  If you think that this sounds like the start of a MC Esheresque infinite regression nightmare - I think you might be right.  

Suppose that, say, 90% of the initial data about The Room describes the physical state of everything other than the active parts (the logic gates) of Embedded Calc, and 10% represents information those active parts.  After you press the start button, Embedded Calc will happy chomp away at processing what will happen next to the 90% non-computing matter, and, presumably in some sub-routine, using the 10% of the data that relates to the computer, will to start to predict what will happen 'inside' the computer.  All will be fine - the computer can easily predict its own booting-up and initialisation process - until the prediction reaches the point where the computer predicts its how it will access and start to process the initial data about The Room.  90% of this data, as we have seen, relates to The Room outside of the computer; 10% represents the circuitry of the computer itself.  Since the computer has already, outside the prediction of its own internal workings, encountered and started to use this data, we need to remember that this is a 2nd order 'image' of the actual data that the computer started out with. Embedded Calc will, in relation to the 90% portion, do a particle-by-particle, logic gate-by-logic gate 2nd order prediction of its own calculations as to what will happen to the rest of The Room. The information generated by this process will effectively duplicate that which is being generated by the '1st order' calculations as to the physical matter in the rest of The Room, but since the very carrying-out of these calculations is something that the computer is predicting, it can't just ignore them.   Nonetheless, there doesn't seem to be any problem with that particular part of the process.  But how will Embedded Calc predict how it will process the 10% of initial data that relates to its own internal workings?  10% of that data relates to the internal set-up of the computer.  The computer needs to predict what it will do with this data on a 3rd order level; the answer being that it will predict (as it has already done on a 2nd order level) the initialisation process, and then the accessing of the initial data - but again, 10% of this data relates to the internal working of the computer... and so on ad infinitum.  Embedded Calc is surely never able to completely 'finish up' the part of its calculations that relate to its own calculations.

Can't we just sidestep all this nonsense about predicting how the computer will predict how it will predict its own predictions by just saying that the period of prediction "starts" after the computer has finished its own calculations?  Sure, but you would need to build into the program a mechanism to check that the physical workings of the computer - such as electrons whizzing around circuitry - haven't affected the information that the computer started out with: by exerting force on one of the surrounding particles they would potentially screw up the whole prediction, just like a butterfly in South America.  To create this 'checking mechanism' you would simply get Embedded Calc to merge the history of its own internal workings to the original dataset about the room, and calculate whether or not this "corrected" data would produce the same final position of particles in the rest of The Room.   However, unless the answer to this test was 'yes - the prediction would be exactly the same', Embedded Calc might well not be able to calculate its way out of the problem.   

Suppose that Embedded Calc affects the surrounding environment by marginally heating the air around it.  Suppose also that the precise amount of heat generated depends on how long the calculation takes to perform, which in turn is affected by the number of collisions between particles that take place in The Room over the ten minutes of the experiment.  The actual number of collisions would be sensitive to the amount of heat generated by the computer during its calculations.  The relationship between quantity of heat generated and the number of collisions will almost certainly be non-linear (like the relationship between a single hot day and the rest of the weather for the year) with the result that you can't determine the number of collisions by a simple formula; a computer would only be able to determine the effect of the extra heat  iteratively, by running through the entire prediction. 

This set of conditions would create an inescapable chicken-and-egg conundrum that I reckon no amount of processing power could overcome.   Embedded Calc would need to make its initial prediction ignorant of its own calculations (for the reasons discussed earlier) and hence ignorant of their effect, or their precise effect, on the surrounding environment.  You could then get it to do a second 'run',  factoring in its internal workings from the previous run and factoring in the precise amount of heat generated.  This would produce a slightly different prediction.  (As a sort of visual marker, I like to imagine that there some smoke-producing thing like an incense stick in the middle of The Room that will produce a different pattern depending on the vagaries of the convection currents).  However, the revised prediction is clearly unreliable because it is based on the total number of collisions (predicted to be) generated by the previous calculation and so a different quantity of heat: since we now know that there is a different number of collisions, we know that the computer will, in fact, a create a different amount of heat.  We can try taking the heat generated by this second prediction and feeding it back in to produce a third prediction, but this will be 'out of date' in just the same way, in that it will generate another revised prediction for the total number of collisions that the computer will have to calculate, and hence the assumption as to the heat generated by the process will be wrong.  Simply put, the computer has no way of determining what the starting position of its predictions - the original dataset -  will be without calculating a final prediction, which it cannot begin to do unless it knows the original dataset.  Or, if we revoke the earlier concession that the prediction 'starts' only once the computer has finished its calculations, the computer has no way of knowing what will happen after the first nanosecond (assuming it takes that long to complete its calculations) without reaching a final prediction, which it cannot reach unless it knows what happens after the first nanosecond.   In either case, attempts to re-run the program insert or correct for the impact of the machinations of the computer itself will fail if whatever it is that is leaking from the computer to the outside world is sensitive to its own calculations, and has a non-linear, non-recursive effect.

But why subject Embedded Calc to such a clumsy design flaw?  Who ever heard of a perfect computer that leaks? Well, firstly, it seems to me that unless Embedded Calc interacts in some way with the rest of The Room, it isn't really embedded.  If you put the computer The Room, but in a completely sealed box, then schematically, it's really outside of The Room: all you have done is recreate Shy Calc.  Ok, ok, so why did we create Embedded Calc in the first place? What's the point of this thought experiment about an infinitely powerful computer that you've deliberately set up in such a way that it can't do the job it was designed to do?  

In fact, I think that if people did create an infinitely powerful computer - indeed, one powerful enough to predict the future of the universe - they would would be desperately keen on prising open the vacuum-seal that this thought experiment seems to predict must be kept intact to generate an accurate prediction.  Because they would want to know what the computer had predicted...


HELLO, "SHOW-ME CALC"!



Show-Me Calc is the same infinitely powerful computer, again sitting outside The Room, but it is hooked up to a projector inside the The Room.  

It is set up so that as soon as it finishes calculating its prediction (which, as I think we have established, takes it about a nanosecond to do), it projects an image of The Room will look at the end of the ten minute period - "the final frame" - onto one of the internal walls of The Room as would be seen looking from that wall. So the projector-screen wall is intended to display a frozen mirror image - a haunting visual reflection of the future.

I think you will agree that Show-Me Calc is the sexiest version the computer.  But it shouldn't get too excited about itself, because really it is just a special case of Embedded Calc. Instead of leaking some useless by-product, such as heat, into the the dataset for the prediction, it is leaking the prediction itself.  

Presumably, Show-Me Calc would work perfectly well at predicting what would happen to lifeless matter in motion - such as a billowing cloud of purple-coloured incense.  You would, of course, need to take care to ensure that the projector wasn't generating heat or electromagnetic interference or the like. But if these precautions were taken, you could light the incense stick, walk out of The Room, press the start button, and when you walked back in after ten minutes, you would see a perfect image of The Room - every plume of incense smoke in precisely the right position - reflected on the wall.

But if you put a person in The Room, it all goes wrong for Show-Me Calc.   Whatever image Show-Me Calc projects onto the wall, it knows that the person will react in some way to seeing that image, throwing out all of its calculations.  In order to accurately predict how the person will will react, it needs to know what image will be flashed up on the wall in the first nanosecond after you press the start button, but it can't know that until it has run though the whole calculation.

So Show-Me Calc can't even know where to start.  One gambit might be to keep re-running the prediction, feeding the result back into the projection-image each time, until you reach convergence between the two.  Unfortunately, this strategy is as completely doomed to fail here as it was for the heat-generating version of Embedded Calc.  Indeed, if the non-recursive, non-covergent nature of the changes brought about by the heat-generation seemed somewhat contrived to you (although Chaos Theory suggest that nature is actually full of that kind of thing), there is certainly nothing implausible about the non-recursive nature of a human being's reaction to being presented with a series of images of itself.

Suppose, first of all, you place someone in The Room who, quite naturally, is out to 'beat' the computer. Let's call her Emma. In the first run of its prediction, Show-Me Calc has no real option other than to do its prediction on the assumption that the projection-wall will be left blank.  Perhaps it would predict that Emma would react to being left in the room with a blank wall for ten minutes by sticking out her tongue in the last 10 seconds for the final frame: after all, she is quite a mischievous subject.  If it then re-ran the prediction, this time using the image of Emma sticking-out her tongue as the notional projection, Emma would, let's assume, react to this by doing a hand-stand instead. Since the new final frame and the image being projected are different, Show-Me Calc cannot be sure that flashing up an image based on the new final frame will not produce a different result, it must re-run the prediction again. And sure enough, it predicts that if Emma is shown an image of her doing a hand-stand, she will ensure that at the end of the ten minutes she, say, standing in the corner of the room - or sticking out her tongue again. In Emma's case, re-running the prediction forever will not produce anything approaching convergence. Suddenly, a nanosecond seems like quite a short period of time! Of course, Emma will never tire of sticking her tongue out, doing cartwheels and generally being contrarian each revised prediction needs to be based on the assumption that she is seeing the image for the first and time - blissfully, or irritatingly, of all the squillions of previous run-throughs.

But what if, say, on the 33,456,789,657th run, Emma encounters an image of herself pulling a face so existentially weird that she is (or rather is predicted to be) moved to attempt to copy it, momentarily forgetting or abandoning her quest to thwart the computer?  Or what if you send a conformist, Sally, into The Room with instructions to try and copy whatever comes up on the wall?  Could, you could achieve convergence in either case? It does seems unlikely that a person could ever *exactly* - ie on a particle-by-particle basis - replicate the posture/expression seen on the screen: but perhaps, we could achieve "near-convergence" - say, if you used a bog-standard C21st projecter and you get a  final frame that is, pixel-by-pixel at least, an exact image of what you projected onto the wall to achieve that final frame.   But is even near convergence plausible in Emma's case?  Or is, indeed, eerily inevitable, even for a person utterly committed to beating the computer?

The line of thinking that seems to suggest that convergence, and thus an accurate (or near accurate) prediction, is inevitable goes like this.  The computer, being infinitely fast and powerful, gets to do an infinite number of re-runs of its prediction.  One of this infinite number of re-predictions is bound to produce an image that somehow 'gets at' the subject, psychologically. If the subject's reaction to the oddness of the image - and pulling a really funny/disturbing face is probably the most plausible example - is to try to emulate it (in a sort of wondered bemusement), you have the seeds of near convergence.  From then on, it would then take, so the thinking goes, is a few more re-run throughs before you produce an image, almost through 'natural selection', that the subject will succeed in copying (nearly) exactly. And hey presto - the computer has an image to project onto the wall which is an accurate prediction of how the subject will look at the end of the ten minute period.   That is the argument for plausibility.  The argument for inevitability - for any given subject - would probably involve stressing the fact that the computer has a literally infinite number of throws of the dice to produce the image that will induce the subject to copy it.  

However, intriguing as it might be in sci fi terms, I don't buy the inevitability theory.  I think, firstly, it is dependant on a mistaken assumption that because the computer and can will run an infinite number of re-predictions, it will therefore predict the person in every physically possible position, doing every physically possible contortion of his body, making every possible facial expression.  This in turn is based, I think, on the mistaken assumption that because the subject's reactions will be non-recursive - that is, each different projected image will produce a slightly different response - (of course, until we stumble upon the image that causes the subject to decide to emulate the image) - the computer's prediction will pass through every possible permutation. Actually, the computer is not flicking through completely random scenerios: the fact that each image can only be produced as the result of the subject's predicted response to the previous image considerably limits the scope for actually alighting upon the 'mesmeric' image that would cause the subject to emulate the projection.  There may be a fairly narrow trajectory of responses, even if no two responses are exactly alike. (To shameless plunder the insights I gathered from James Gleick's Chaos: Making of a New Science for about the 5th time: this trajectory, or field, of possible reponses could well be something akin to the Lorenz attractor)  Anyway I'm the whole idea of a memeric image is probably just bullshit anyway.  

There's a further obvious objection to this quest for convergence: if Show-Me Calc is allowed to keep throwing away predictions until it manages to select one which will induce the subject to emulate the projection, is it really playing with a straight bat?  Has it moved out of the prediction business and into the business of, well, stage hypnosis?  Indeed, if the computer is allowed to 'breed' an effective prediction in this way, why keep the requirement that it has to produce each tentative 'prediction' via feeding in the result of the previous failed prediction? Actually - I'm not sure there is a good answer to this question.  Perhaps, the only logical approach is to maintain that either (a) Show-Me Calc must produce its prediction first time around, with no 2nd or 3rd revised predictions, in which case it must necessarily fail, as we have seen; or (b) Show-Me Calc is allowed to think "creatively" to create a prediction that will, when shown to the subject, cause him or her to fall in step with the prediction.  Then it could be really crafty - for example by make an elderly man keel over and die of a heart attack by showing an image of him slumped dead on the floor...

But I'm still rather doubtful, to say the least, that tricking the subject into complying with the prediction will actually work in all but the rarest of cases.  Even if you allow 'creative' thinking on the part of the computer, the essential requirement that you must discover the prediction which, if projected onto the wall, would cause the subject to end up being in the same position as the prediction, is a really tough one.  For most subjects, there probably simply isn't any image that fulfils that requirement.   

(By the way: I think Show-Me Calc will also fail to predict the behaviour of a lot of animals whose eyesight can make out the prediction.  The sort of animals that would run away from the image of another animal of the same species will do just that, into the other corner of The Room, and you will never get convergence.)

And sticking a blind person in The Room is just cheating.  The projector screen would then be communicating nothing: Show-Me Calc reverts back to Shy-Calc.  


I DON'T HAVE A CRYSTAL BALL....



All in all, then, Show-Me Calc is really as much a failure as Embedded Calc.  What this tells us is that the (Laplacian) theory that complete knowledge of the present/past should make it possible to see the future just doesn't work if the prediction-maker tells anyone about it. As soon as some agent becomes aware of the 'prediction', and so on one level or another is able to react to it,  the prediction becomes unreliable.  Or rather, if the universal intelligence predicts that some person will learn of the prediction, it will realise that a reliable prediction becomes impossible. 

This doesn't mean that it is theoretically impossible to correctly predict some things as being inevitable - earthquakes, supanovae etc.  What it does mean, however, is that universal predictions of the entire future  - and, simply, predictions of how people will react to being told how they will choose to behave - are probably theoretically impossible.  Unless they are made in a complete vacuum and never communicated to anyone - which isn't very helpful.

You could argue that all this goes to show that an increase in knowledge and understanding tends, in a sense, towards greater spiritual freedom. I don't for a moment think that Show-Me Calc establishes the existence of "free will".  But it does provide something of a poetic reposte to that old Romantic argument that the scientific advance works to enslave humanity by teaching the miserable message that we all live in a relentlessly deterministic world (Blake's "... cogs tyrannic / Moving by compulsion each other"). 

To counter this notion, you only have to compare the subject of a Shy-Calc experiment with the subject of a Show-Me Calc experiment.  The man in The Room which Shy-Calc is watching over can only fidget around, every movement and thought already predicted and irrevocably recorded, covertly, in the book of fate by the God-like computer.  He must wait out the ten minutes in blissful Romantic ignorance, before Shy-Calc flashes up on the projecter (OK - so he's borrowed this from Show-Me) a deadly accurate reflection of his present position.  Yet the person sitting in Show-Me Calc's Room will utterly defeat this equally powerful machine as soon as it begins, simply because the computer has shared its knowledge with him.  However much Show-Me Calc tries to extrapolate his behaviour from its complete knowledge of what was going on inside his head at the start of the experiment, whatever it throws into the projection, he can simply side-step.    By seeing the computer's prediction, the man shatters it: he has ripped the book of fate right out of God's hands.  Knowledge sets man free.  Who would have thought it?