June 16, 2021

Whats the problem with self-driving cars?

 

Some attempt were made in the past by Waymo and Tesla to push autonomous driving forward. In an interview a journalist has asked at which moment in the future these cars will become available for the public. The engineers itself doesn't know. There is a general prediction available that after 2025 autonomous cars will be available but it is unlikely that this will become the reality. In theory it is possible that in 2025 the starting point is delayed to 2035 and so on.
This sounds surprising because from a technical perspective all the problems are solved or can be solved with minor improvements. Today's software connects a car with a cloud based infrastructure, a 3d lidar scan creates a precise map of the environment, the SLAM self localization algorithm knows where the car is, and advanced path planning generates the route for the car. So, where is the bottleneck, why are autonomous cars not available?
The problem is, that autonomous cars are without any doubt an AI technology. AI means, that it wasn't available in the past but everything was invented from scratch. The interesting situation is, that Artificial Intelligence has failed to control more simpler domains, which are autonomous trains and autonomous subways. And the engineers want to automate highly complex cars which are driving next to human controlled vehicles.
Instead of asking at which moment autonomous cars will become available we have to ask why it is so complicated to automate cargo trains and the subway. From a technical point of view, a train has no steering wheel but it can only accelerate and brake. The workload for the human operator is much lower and it is easier to create software which can handle the task by it's own. The reason why these software isn't used in reality is because train automation is to complicated for today's AI as well. Or to be more precisely, every task in the world which is important can't be handled by AI algorithms.
Let us analyze some existing press reports about train automation. There are some success stories available about robotics project. The shared similarity is, that all of these attempt are explaining how the future will look like. Not a single example for a working prototype is available. What all the railway companies are doing is that they are figuring out how to realize such future trains. But no one has found a reliable solution which can deployed in the reality.
To understand the situation we have to explain the difference between AI based automation and non AI automation. Non AI automation means to build highly complex machines but let a human operator control the system. AI based automation is the other way around. These systems were designed without a human in mind. Let us give some example. Non AI technology is a minor improvement of existing machines. For example the train gets a better chair for the pilot. Or the monitor gets a higher resolution. Everything else remains the same and no experiments are needed. This sort of technology has a high chance to become reality within the next 10 years.
In contrast, AI based technology is trying to reinvent something from scratch. Instead of improving something by 0.1% the idea is to revolutionize the domain, reduce the costs to a minimum and show what state of the art technology is about.
Autonomous trains
It was claimed that autonomous cars and trains are not possible within the near future. To understand the reason why we have to investigate some press releases about current projects. Autonomous trains are introduced to the audience as a demand. It is explained, that the requirement in the future will become higher and there is need for robotic trains. This statement is correct. Indeed the demand for such technology is there. In another press statement it was written that in the year 2019 an autonomous train was demonstrated on a 48 mile test track. Some detail information about the technology was given too. In another article, autonomous trains are compared with automatic elevators and it was made clear that some challenges need to be addressed before the technology is available.
Does this look like something which is available today? Or which can be realized within the next 10 years? No, it is a vision for future transport systems and nothing else. It is a technology which can improve the life and reduce the costs but nobody knows how to realize such things.
Perhaps another example would help to understand what the situation with robotics is. In the year 2011 the japanese powerplant in Fukushima was hit by a tsunami. At this time, no robots were available to fix the problem. This was a surprise for the public, because in the TV many prototypes were shown in the year before. From the year 2011 until 2020, robotics engineers have taken the issue more seriously and have developed new robots, which can be used for practical applications. Really? No they didn't. The current status is the same like 10 years ago. No robots at all are available. Even remote controlled robots are not reliable.
Why are robots not available?
How can it be, that on the one hand advanced biped robots are developed by engineers and autonomous cars are demonstrated on a real road, but at the same time, the technology is not available for deployment? The paradox can be understood by explaining what is shown exactly in a video or in a paper about a biped robot. Suppose a new robotics video was released in which a robot is able to climb stairs and play football. For the audience, this demonstration looks very impressive and the engineers are proud of the newly written software. The shortfall is, that the demonstrated technology isn't a robot but it is artificial life. Artificial Life looks very impressive to humans but at the same time it is completely useless.
A useful robot is able to replace a human worker. This is the meaning of the word robot. In contrast, Artificial Life doesn't replaces something but it is adding something not available before. Creating artificial life is from a technical perspective an easy to solve problem. The early braitenberg vehicles, a computer game with AI characters and today's biped robots can be understood as artificial life. These machines are doing something, and they need energy for the task. The problem is that humans can't utilized this behavior for their own purpose.
What humans are doing instead is to invent the task which fits to the robot. Let me explain the situation in case of an autonomous car. The starting point is to build the car including the sensor and the software. An engineering team assembles the onboard computer, the lidar and the gps navigation system into a self-driving car. In the next step the car is released to a track on the normal road. The assumption is, if the cars drives on a normal road during a rush hour and no human intervention is needed the engineering team was successful.
No they don't. What the engineers have done in reality is to redefine the public road into an experimental track. Not the AI controlled works fine, but the other cars are robust against interruption.
Kitchen robot
Robots are not helping the humans but they force them into a certain social role. In case of a kitchen robot this problem should be explained briefly. Suppose, a kitchen robot was built which can make a sandwhich with two dexterous arms. Building such robot is possible with today's hardware and software and some online videos are showing how such a robot will look like.
Focussing only on the robot itself is only the first step. The more interesting problem is, how to deploy this technology into the reality. There are two cases available. First idea is, that a normal kitchen gets improved by the robotic helper. And the second idea is, that the robot gets deployed into its own kitchen and humans are invited to join the room.
The second case is shown in the reality. The robocup@home challenge has demonstrated these robots. In all the videos, a newly created kitchen was shown and the human participants are acting with a certain rule set. They get a clear instruction how to interact with the sandwich making robot. At first, the human has to smile. Then he has to press the start button, then he waits some minutes until the robot is done, and then the human has to take the sandwich and eat it. He has to stand in a certain angle to the camera so that the robot and the human is shown at the same time.
The interesting situation is, that the robot can't be deplayed into a real kitchen. Because in this case, the human operator has to guideline who to interact with the robot. It doesn't make much sense to press the start button if no camera is filming the scene. Even the engineers who have created the kitchen robot have no working robot in their own kitchen. If they want to eat a sandwich they will order it from a company.
Artificial demonstrations
Perhaps it makes sense to analyze in detail how robots are deployed into artificial use cases. The robocup@home challenge was mentioned already. It is one of the most famous robotics shows in the world. In a larger building many robots are shown at the same time. There is a soccer playground, a kitchen and a maze with obstacles. All these domains are created from scratch. That means, the kitchen isn't used as a real kitchen, but it is a kitchen to deploy robots.
In such a non human kitchen, the robot laws are established. The engineers who have programmed the robots want to show a certain behavior. They are creating around the robot a scenario which contains of different tasks. What will happen, if no audience and no camera are available during a demonstration? The robot kitchen is useless. It works only if somebody will see what is going on.
This is perhaps the most major difference to a real kitchen. In most kitchens, no cameras are deployed which are filming the scene, but a kitchen is the room in which the meal is prepared. The interesting situation is, that the gap between an artificial kitchen and a real one can't be bridged.
All the advanced robots shown in television and described in academic papers are working fine in artificial situations. Around a certain robot, a scenario was created which has to be solved by the robot. A biped robot needs as an environment a staircase. An autonomous car needs a road, and a pick&place robot needs an object. The funny thing is that the robots can handle these domains very well. As the result a human observers things, that the engineers have solved a certain problem with advanced algorithms. The problem is that an artificial playground a real world applications are working with different rules.
Basically spoken, if a sandwich making robot is creating a sandwich in it's own kitchen the task is useless. Except the engineers, nobody cares about the result and nobody would buy such a robot for it's own purpose.
What is a robot kitchen?
A robot kitchen is an artificial playground to demonstrate AI technology. It contains of a refrigerator, a table and some food and helps to evaluate the capabilities of a robot. A certain robot can grasp the apple from the table or he fails with the task. A robot kitchen is some sort of a game. It is not part of normal life but was created from scratch to evaluate the consequences.
Robot kitchens are used frequently by robotics engineers. All the papers in which advanced household robots are mentioned are shown in robot kitchens. The assumption is, that a robot kitchen is a great testbed which helps to bridge the gap between reality and imagined future. If a task was demonstrated in the robot kitchen, the robot is ready for deployment – this is at least the claim.
What exactly is the meaning of deployment? The idea is that a robot is sold to the public, replaces human workers and is doing a task by it's own. The reason why robot kitchens were built is because to support this goal. The paradox situation is, that at the same time an artificial environment prevents that a certain robots gets released to the public. To understand this situation we have to take a look into the history.
In the 1970s the assumption was that industrial robots can be deployed directly to the industry. The engineers have identified a workplace, and created a robot for this job. Then the machine was powered with electricity in the hope to increase the automation level. After some attempts it was recognized fast, that the newly installed robot was doing a poor job. After a while the machine was switched off and it was labeled as a failed automation project.
The idea of the engineers to improve the situation was to invent a playground to extend the testing of a new robot in a realistic scenario. Such a playground can be a virtual simulation on the computer screen, or a robot competition like micromouse. Since the 1990s, such playgrounds are used frequently and they evolved over the years.
Creating new playgrounds and programming robots which are working well under artificial condition is an easy to solve task. What remains an open problem is how to transfer a robot from the playground into the reality.
Automation market worldwide
According to the latest stats, around 2.7 million robots are available in the world and each year 350000 new robots are shipped to the companies. On the first look, these numbers are looking very positive. It is a sign, that the robot revolution has started and it is growing.
A closer look into the details will show, that automation is never realized with robots but with automation technology. Automation technology means to install electrical servo motors, assembly lines and even an electric driven truck. There are many obvious problems with the mentioned 2.7 million robots worldwide.
First issue is, that a large amount of robots are nothing else but classical automation technology. For example, a CNC machine is not a robot. Second problem is, that lots of real robots for example robot arms are not used in production environment but they are sold as teaching robots. They are used outside the factory in a university lab.
A positive future
There is a reason available why robotics projects are not analyzed with objective measurements. Because the engineers are believing in a vision. They want to change something in the world, and see a robotics project as one way in doing so. The first place in which robots were mentioned was the science fiction literature. They were developed as tool to tell a new sort of stories. Then the same idea was established in the reality. A robot project gives an idea about a possible future world.
If robotics engineers would be honest to themself, they know in advance that their robots are useless. But if they are not creating such projects, who else is in charge? Somebody has to stand up and claim that robots are useful in the world of tomorrow.
Suppose it is possible to convince today's robotics engineers that their work is useless. All the autonomous cars, robo trains and kitchen robot projects would be stopped because of missing values. From a rational perspective this would be the optimal decision but is such a future a nice place to life?