Driverless Cars

The driverless cars developed by Stanford University are an innovation to behold:

It is easy to understand how driverless cars would be safer.  Maintaining a constant speed on the motorways will reduce chaotic braking, and the small variations in spaces and speed that create phantom traffic jams will be eliminated.  And with a little bit of linking technology between a group of driverless cars, hazards in one place can be communicated to the other cars on the road much quicker than human drivers with their relatively poor reaction times.
Koushik Dutta runs through some of the implications of a driverless car:

The operating percent of a car will go from 4% to that 96%. But back to my leading statement: there are unintended consequences. Parked cars will be a relic from the past. What happens to car insurance prices if a driver is no longer part of the equation? And if cars are receiving 20 times more actual use, that would imply that there would be 20 times less cars sold. This is the kind of disruptive change that can reshape the automotive industry. The recent GM/Chrysler bailout may have been for naught. … Of course, car companies realize this. And I can guarantee you, they will lobby against driverless cars.

Despite the clear benefits of such driverless technology, one can also see how winning changes in legislation to operate driverless cars may lag far behind the technology. Aside from the active lobbying against such schemes from car companies (and haulage unions, taxi drivers, &ct) I imagine people and legislators would be slightly squeamish about letting automated cars out onto the road.  Even though we know that auto-pilots do most of the commercial airline flying, there is something reassuring about the fact that the pilot is on board, sharing the ‘danger’ of flying with you.  Presumably, a passenger in a driverless car would be able to take control of the vehicle if they needed to… but the real benefit of such a car is precisely that it can drive itself home (or, come and pick you up), making a portion of the journey with no-one in the vehicle.
There is also the problem of mixing human driven cars, with driverless cars.  The safety benefit of the new technology is surely at its greatest when everyone is using the driverless technology.  All vehicles can travel at a constant speed and there would not be any crashes.  But in order to introduce such technology, and to get it widely adopted, you have to go through an intermediate stage where early adopters have to share the roads with the human muggles who still insist on actually driving their cars.  Perhaps legislators will demand that the driverless vehicles are specially painted, or have flashing lights on them, to warn other drivers that their is something on the road that will not behave in the way you might expect, much like ‘Long Vehicle’ and ‘Wide Load’ livery on haulage vehicles.
A related problem is that when there is no actual person in the vehicles we share the road with, the moral duty we feel we owe to other drivers to stay safe will dissipate.  Driverless vehicles will not be given right of way, and human drivers will cut in front of driverless cars more frequently.   Young joyriders on bikes or in cars could start ‘teasing’ the driverless vehicles, deliberately driving erratically to test the avoidance capabilities of the software.
There is also a civil liberties concern, in that driverless cars will presumably log every journey they make somewhere, for diagnostic and ‘learning’ purposes, but this information could be exploited by the state, companies or anyone else who wants to invade your privacy.  Governments or commercial interests could programme cars to refuse to take you to certain locations, or to drive you via advertising hoardings.  This would be undesirable… but appropriate technological checks could easily guard against such abuse.
The way to introduce such technology is in a closed system, where the entire road infrastructure can be controlled. The DLR operates without drivers, and a new pod system has been introduced at Heathrow Airport, where driverless pods operate on dedicated lanes. Perhaps Heathrow or another airport, one out of the city centre and with a spur road serving it, could invest in dedicated driverless lanes, plus detailed road mapping, and some sort of API for their traffic lights? This would allow driverless cars to operate efficiently to-and-from the airport, and provide a ‘proof of concept’ to legislators and regulators.
Finally, there will be car enthusiasts who insist that driving a car is one of the joys of life. Why surrender it to a machine? Well, yes, but even though horse riding was made obsolete as a system of mass transit when engines (steam, internal combustion) were invented, enthusiasts can still do it for fun. But for those who only drive out of necessity, driverless cars offer a tantalising glimpse of a congestion free future.

Trainyard and Neural Pathways


By far the best iPhone game I have come across is Trainyard. Is a deceptively simple puzzle, in which the player lays tracks to guide a set of coloured trains from their starting points to a goal. It has all the features of a great game: the rules are few, simple and intuitive. The puzzles are solved on a 7×7 grid, which gives the impression that a correct solution is on the cusp of revealing itself. The graphic design and sound design give you a satisfying mental ‘pay off’ when a puzzle is solved. This all adds to the addictive quality. It is no surprise it is one of the highest ranking games in the App Store.
Until recently, Trainyard’s only flaw was that it had a set number of puzzles to play. When they were solved, the payer had to go cold turkey. Playing a pre-solved puzzle was dull. However, with the latest update, the game’s creator Matt Rix has solved this problem, by providing an ‘engineer’ feature. Players can now create their own puzzle and upload it to Trainyard site for others to download and solve. This adds an element of competitiveness, and also social play, which makes the project as perfect as can be on it’s own terms. Highly recommended.
The ‘engineer’ feature has an interesting constraint. You cannot upload a self-made puzzle to the website unless you have solved it yourself. For a while I wondered why the computer could not already perceive which puzzles were solvable, and which were unsolvable… But then I remembered Godel’s Incompleteness Theorem, as explained to me in the sprawling Pulitzer Prize winning meditation on symmetry, mathematics, loops and consciousness, Godel, Escher, Bach by Douglas Hofstadter. Trainyard is, I think, a perfect little companion to this bizarre, genre defying book.

The cover of Godel, Escher, Back gives some clue to its esoteric subject matter
The cover of Godel, Escher, Back gives some clue to its esoteric subject matter

Godel’s Incompleteness Theorem says that in any consistent mathematic system will have certain “undecidable statements” which the system will not be able to answer either way. There will be true statements that nevertheless cannot be proven within that system. This holds for Trainyard, which is definitely a mathematic system with just a few logical rules. If you translate the elements of a puzzle (the starting points, gates, tracks, switch points, the colours of the trains, the goals, and the grid) into a mathematic formula (which, of course, you can do because the iPhone is essentially a mathematical machine, manipulating millions of 1’s and 0’s each second) there would be no equation or test that could consistently tell you whether the puzzle could be solved or not. The only way to tell is to run the puzzle, set off the trains, and see what happens. With some puzzles (such as this one) it is actually quite easy for even a novice player to work out that the puzzle has been solved, but the computer has to run it (all 10,603,843 steps) to confirm that fact.
Kurt Gödel
Kurt Gödel

The second link with Godel, Escher, Bach is to do with synapses, and how elements as simple and as binary as a neurones can give rise to enough symbols and signals to constitute a consciousness. Trainyard works wonderfully well as a metaphor for neural pathways, but it is only with the addition of the ‘engineer’ feature that this becomes apparent.
What do we notice when we look at the game in this way? (1) First of all anyone playing the game can see how the same track layout can result in completely different outcomes, depending on the number of trains sent from any given start position. On a related point, it is also interesting to see tiny changes to the track layout can fundamentally alter the outcome, once the trains are set in motion.
One of 3403 solutions to 'A Barrel Roll', one of the puzzles on Trainyard
One of 3403 solutions to 'A Barrel Roll', one of the puzzles on Trainyard

Through this, one can begin to comprehend how a brain, with very simple building blocks can give rise to huge, complex patterns, which is what is required to perceive and interact with the world. We can see how an apparently fixed set of neurones can act in different ways, depending on the precise nature of the stimulus.
A different insight – one only needs to play Trainyard for a short period of time to see how the same outcome can be achieved in a near infinite number of different ways – for each puzzle in game, users have submitted hundreds of unique solutions. It’s not really important how you get there, just so long as the right pattern emerges. When thinking about brains (artificial or biological), the lesson might be that trying to discover a particular set of pathways could be a red herring. If you were to do so, you would only understand one brain, not The Human Brain. We all have different patterns and pathways in our cerebal cortexts, and it is the different pathways we take to make the same patterns, that makes us unique.
Finally, it is worth remembering the insight of Godel’s Incompleteness Theorem. When you get to a sufficiently complex puzzle solution,you can never know whether it will produce the desired outcome, until you set the train running. This will hold for the artificial brains we create on circuit boards and in the RAM of computers – we won’t know whether the pattern we have created will work, until we have tried it. Which means we can’t work out the ‘correct’ pattern in advance. We’ll need to create some process of trial and error – a metaphor for evolution – before we hit on a correct pattern, and win our mental payoff.

Prime Numbers and BASIC

I am reading Godel, Escher, Bach: An Eternal Golden Braid by Douglas R. Hofstadter.  First published in 1979, the author discusses various systems – mathematical, visual and musical, which somehow manage to talk about themselves.  This self-reference, says the author, is one of the key ingredients for intelligence.
Much of the book so far has been taken up with explaining some key elements of number theory, and Hofstadter includes lengthy digressions on programming, and loops of operations nested within others.  It inspired me to find a BBC BASIC emulator and write a little programme that finds prime numbers.  Here is what I came up with:
10 CLS
20 PRINT "LIMIT";
30 INPUT L
40 FOR N = 3 TO L
50    FOR D = 2 TO (N-1)
60      IF N/D=INT(N/D) THEN GOTO 100
70    NEXT D
80    PRINT N;
90    GOTO 110
100   PRINT ".";
110 NEXT N
120 END

This programme asks you for a number, and it will search for prime numbers up to and including the number you give.  If it finds a prime, it prints it, otherwise it just prints a dot.  I chose this method of output so that one has a visual representation of how primes are distributed throughout the natural numbers, and it is easy to spot Twin Primes.
Since we’re thinking about self-reference, I might as well make an observations about this post, which is that it will probably succeed in alienating everyone.  Those with no interest in maths and coding will likely think I am being terribly geeky.  Meanwhile, those who do take an interest in such things will scoff at the incredible simplicity of my coding ambitions.  Already one wag in the office has asked me why I don’t print all the discovered primes in an array…

The output from my programme.

Lost Moon Technology

The website TopTenz.net lists 10 Lost Technologies such as Damascus Steel and the Antikythera Mechanism (via Kottke). Incredibly, the technology used to bake the Apollo programme lacks any meaningful record of its construction:

The Apollo and Gemini programs aren’t truly lost. There are still one or two Saturn V rockets lying around, and there are plenty of parts from the spacecraft capsules still available. But just because modern scientists have the parts doesn’t mean they have the knowledge to understand how or why they worked the way they did. In fact, very few schematics or records from the original programs are still around. This lack of record keeping is a byproduct of the frenetic pace at which the American space program progressed. Because NASA was in a space race with the USSR, the planning, design, and building process of the Apollo and Gemini programs was always rushed. Not only that, but in most cases private contractors were brought in to work on every individual part of the spacecraft. Once the programs ended, these engineers—along with all their records—moved on. None of this would be a problem, but now that NASA is planning a return trip to the moon, a lot of the information about how the engineers of the 1960s made the voyages work is invaluable. Amazingly, the records remain so disorganized and incomplete that NASA has resorted to reverse engineering existing spacecraft parts that they have lying around in junkyards as a way of understanding just how the Gemini and Apollo programs managed to work so well.

I find this offensive. Lore has it that the Apollo programmeran off less computing power than your average mobile phone, and I repeat my generous offer to donate my iPhone – completely gratis, I might add – to any future moonshot.  Coupled with a Trident submarine turned on its end, I always assumed that this would catalyse our return to extra-terrestrial bodies.  And so its crushing to hear that most of the work would have to be done again from scratch.  What were you thinking, NASA?
Meanwhile, NASA joins the Flickr Commons, providing historical andiconic photography from the NASA space programmes.  The image below is the Launch of Friendship 7, the first American manned oribtal flight, in 1962.

Launch of Friendship 7, the first American manned orbital space flight. Astronaut John Glenn aboard, the Mercury-Atlas rocket is launched from Pad 14.


Mieville on Teleporting

At the event on Tuesday night, I remarked that China Mieville and Cory Doctorow share an irritating trait, which is to lathe my own ideas into science fiction books, many years before I even have the thought for the first time!
One example of this is on the important science-fiction problem of teleporting, and the possibility of transferring of one’s mind between matter.  I scribbled some concerns about this earlier this year, but now I find that Mieville got there first, in Kraken (p.221):

This is why I wouldn’t travel that way,” Dane said.  “This is my point.  For a piece of rock or clothes or something dead, who cares?  But take something living and do that?  Beam it up?  What you done is ripped a man apart then stuck his bits back together and made them walk around.  He died.  Get me?  The man’s dead.  And the man at the other end only thinks he is the same man. He ain’t. He only just got born.  He’s got the other’s memories, yeah, but he’s newborn.  That Enterprise, they keep killing themselves and replacing themselves with clones of dead people.  That is some macabre shit.  That ship’s full of Xerox copies for people who died.”

I love this kind of esoteric debate.  Teleportation might never become a reality, but the questions raised by science fiction are essential when we consider the nature of the mind and artificial intelligence.

Teleport road sign. Photo by mercurialn on Flickr. Creative Commons Licence.
Teleport road sign. Photo by mercurialn on Flickr. Creative Commons.