Thoughts on Meatspace and Cyberspace
As an information systems graduate student I spend many hours a week working through data structures and algorithm problems. Lately though I’ve started to think about coding even when I don’t have to. My mind goes to some interesting places when I start mixing together cyberspace and meatspace.
Last week I was trail running my usual route around the lake and listening to the audiobook Purity by Jonathan Franzen. I don’t remember the specific passage in the book but it got me thinking about free will and algorithms. Being out in nature, running, fresh air, it makes the mind wander and make weird connections.
Computers obviously do not have free will. They can only execute their programming. The java app I wrote this week can only output the parameters of a quadrilateral. Everything it can and will do has already been determined by me, the programmer.
The human brain is just a wetware computer with the same operating system that runs on all primates. This OS is running an app called human.exe. My brain is running ‘Me.exe’ which is an instance of a human.exe. The human superclass describes all the methods and processes that we as humans can execute. There’s thousands of them, already programmed and ready to be called: eat(), sleep(), procreate(), laugh(), murder(), and all the other things we’ve always done. Me.exe runs all those methods as well as some additional methods that are unique to me. When my hand drops something on accident the Me.exe app always calls the grabItBeforeItHitsTheGround() method. Some people let it fall and then pick it up. I always try to catch it on the way down.
If all of these methods are already determined what choice do we have? You cannot simply decide to defy your operating system anymore than my quadrilateral app can decide to output the parameters for a circle.
As we age the brain modifies its own code with new parameters. What we call experience is simply the accumulation of data. When we are children we constantly run explore() which gives us a lot of input to process. That input is sent to didItHurt() which only accepts boolean parameters. Back when I was a kid there weren’t child proof houses. When I put my finger in an electrical outlet my brain called didItHurt(True). Keith Alan Beadles, the guy that invented those little plastic things you stick in outlets so toddlers don’t shock themselves, probably called didItHurt(True) many times and decided to do something about it.
If each human brain has an operating system and it’s running its own instance of the Me.exe app, then all the algorithms therein are already formed. The only thing to change are the variables passed into the component methods. Even if Me.exe can modify itself in response to input its output is still predetermined and thus predictable by a sufficiently intelligent agent.
Which predictably, makes me start thinking about the inevitability of artificial super intelligence and the possibility that we’re living in a simulation. I’ll save that thought experiment for my next trail run around the lake.