Sunday, 1 November 2009

Can software help us lead better lives? Transportation - part 1 - The problem to be addressed

As you may have noticed I like starting off with broad questions. This is not because I want my success in making the following point to be subjective, but because I believe that we must always look at the big picture first and aim to solve problems from the top down.

So let’s look for a moment at how software could improve our transportation. Now let's imagine for a moment that all transport was automated and that it was perfect - somehow keeping all journey times constant and a big super computer calculating all possible interactions and no-one is allowed to drive. The ultimate software driven solution!
Let's put aside the "big brother tracking us" aspect here for a moment. Won't it be wonderful if there were no more bad drivers? But at what cost?
What I am trying to explore with this series of blogs is the fine line between software improving our lives and software making our lives worse.
It is unlikely that total control of all transportation would ever be given to a piece of software - not because it can't be robust enough but no-one, no matter how megalomaniacal, would give up a part of their freedom to act and re-act for that matter.

Back to the point at hand. Today planes can fly un-aided, just like missiles - who needs real terrorists? - and cars can drive around a whole racing circuit without a driver. But what software has really improved our lives in terms of transportation? And are we anywhere near that line between good and evil? What is the definition of making our lives better in this scenario?

Let's start with the modern car and we'll examine other transportation systems and possible solutions in future blogs.
All traction control, engine control, ABS and hybrid system control, and all electronic system control are a form of software. So if we look at the most advanced software controlled cars in production - Nissan Skyline 2009, Toyota Prius 2010, Toyota RXh and GSh, BMW M5. I'm sure you could also name a few. Has the software in these cars improved the way we drive? "Hold on!" I hear you say "I thought that you were talking about how it made the cars better?!" Well i'm glad you see a distinction and no, I am talking about how it has improved the way we drive since the topic is transportation and cars so if we were talking about improving transportation without talking about driving then we would end up concluding that we might as well let computers drive us everywhere and transportation would be perfect.

So have all these computers on chip increased driver awareness? There is a popular YouTube clip showing an obviously inexperienced driver with more money than sense in a Nissan Skyline 2009, racing a fairly experienced driver in a 2007 Mitsubishi Lancer Evo 9. Certainly both cars have advanced traction systems and one would argue, and technology traits would agree that the Skyline has more and the more advanced traction systems. But the Skyline is seen to miss apexes, understeer often and accelerate erratically in an effort to catch up until it dives into a corner too fast and understeers into a wall writing it off.
Did the software make that driver better? Should it have warned him about the dangers of applying G-forces in such rapid sequence to the chassis and the tyres?
Let's look at another scenario - the most technologically advanced cars in terms of software (not counting the Mars Rover since there are no roads or traffic on Mars and no drivers for that matter) used to be Formula 1 cars. But that didn't stop anyone from crashing but it certainly helped drive faster. So in effect that software did improve the way the cars were driven since that was the purpose of the drive, the driver and the car - to go faster. It seems appropriate then that a lot of the technology relating to traction (including tyres), construction materials and safety design we have in road cars has been developed from F1 and other hi-tech racing leagues in which manufacturers compete for this reason (and many more reasons of course).
GPS, automatic braking, peer-to-peer traffic mapping and even adaptive lighting and infra-red HUD's have also made a small difference to fuel economy, safety and safe driving.
By now I know that some of you reading will be saying that as long as there are so many different cars and different drivers on the road, no matter how advanced your car is and how good a driver you are, a car with defective traction systems - breaks, tyres, suspension - and/or a bad/reckless driver can still crash into you.
So can software help this scenario? Yes. Without entering into software controlled driving? Yes... but we'll have to take a shortcut through that area to get to where we want to go.

The scenario above, involving the bad driver, illustrates the problem that needs to be solved. Eliminating accidents from driver error is the biggest problem and the one that I would like to address in the next few posts with some theoretical discussions about what would happen when we have to deal with software bugs instead of mechanical failures or driver error. We will also explore the good and bad effects of software control in real-time, life dependant systems on a large scale.