Why do autonomous vehicles crash?

Lalit Dixit
5 min readMay 12, 2022

--

Image Source

Any vehicle, robot, or traveling device that can travel on its own without the help of a human operator is an autonomous vehicle.

Unless you are living in the Amazon forest with no internet connectivity, you would have already heard about autonomous vehicles. The scope of the term “autonomous vehicles” is broad and includes Robots, Moping systems, Cleaning systems, Self-driving cars, UAVs, and other systems which can drive by themselves (without the aid of a human being).

What is an autonomous vehicle?

Sample: Self Driving vehicle (Image Source)

Any vehicle, robot, or traveling device that can travel on its own without the help of a human operator is an autonomous vehicle.

To understand it, let us segregate autonomous vehicles into two types:

  1. Fully autonomous (without the need for active manual intervention)
  2. Semi-autonomous (with limited automation to control basic things)

This article explores the fully autonomous systems which caught our attention and are slowly fading into oblivion. The primary cause for this is the failure of making these things. A lot of research is happening but there is no breakthrough that can push this concept into reality.

Why is it so hard to attain autonomous capabilities?

To understand the issues of realizing self-driving, one must first understand how driving is realized. A human driver drives any system with three basic functions:

  1. Understanding the vehicle
  2. Understanding the environment
  3. Decision making while driving

Understanding the vehicle

Image Source

The first part of “understanding the vehicle” is important. That’s the reason you can easily drive your Toyota but can’t operate a plane/ UAV or a ship. To drive, you need to understand what each component of the vehicle stands for, how the pressing of the accelerator affects the vehicle, etc. Once you understand the vehicle, it is all about practicing. The more you practice, the better you get at controlling it.

It isn’t hard to impart these learnings to any software. One can easily program the software with the functions of individual components of the vehicle. In fact, the software can control the vehicle better than humans.

But the difficulties lie in the remaining two functions. The function of “understanding of environment” is not as simple as the term itself.

Understanding of environment

The environment is not just a static thing that can be fed to a computer program but it is a complex mixture of multiple events. To simplify it, the environment can be structured or non-structured, it might be new or already known, and lastly, it can be static or dynamic (continuously changing).

Structured Vs Non-structured

The structured environment refers to the surroundings which are controlled by human beings and are drivable. You can relate it to a road, a plane surface, a finished terrain, etc. Vehicles can easily drive on these man-made tracks. While a non-structured environment refers to the raw surroundings which are not controlled by humans and any vehicle will face adversities while driving on it. To understand it, try thinking of driving on a mountain with no proper roads. While a human driver can look at the surroundings and make the decision of driving, the AI can’t do that and will fail.

AI systems are only suitable for structured environments and whenever they have to operate in a non-structured environment, it becomes a great difficulty. The rovers that are sent to mars are walking in unstructured environments. The kind of odds they face is very high and thus they need a lot of money for the simple walking operation. No one would spend that much for driving on earth.

New Vs Already Known

The next kind of environment segregation is made on basis of knowing it. Some environments are already known to us. We already have insights into the surroundings by use of images, surface maps, terrain maps, obstacle knowledge, etc. Thus, it is easy to drive on those surfaces. But for unknown environments driving is difficult. The same thing is experienced by AI software.

To understand it in simple words: We can easily reverse park our car in front of our homes but to forward drive it in the marketplace of a new crowded city is tough. Because you don’t know what exists in front, what kind of roads are there, how the crowd behaves there?

Static Vs Dynamic

To add to the above-listed problems, there is another big issue that environments are hardly static. They keep changing, sometimes a cat will come, sometimes a child will throw his ball. The changes are not only introduced by humans/ life forms but also by nature itself. Sometimes the car tire will go flat, sometimes the oil will start leaking, sometimes there can be rains, sudden hailstorms, sand storms, etc.

The changes can be minute which doesn’t affect much and can also be very significant which can alter the entire surrounding itself.

We, humans, have evolved for millions of years and yet we fail to make the right decisions whenever there are new environments. How can AI make those decisions?

Driving in a static environment is easy but expecting the environment to be static would be foolish. Nature is always random and keeps on changing. In fact, there are sayings “The only thing that is constant is change”.

Decision making while driving

To make a decision, the software has to understand the environment first. The environment which is affected by randomness. The environment which is non-structured and sometimes not known to the system. It is not just hard but impossible to make decisions that can be compared to a previous event to establish if they are correct or not.

You cannot program something that you can’t think of. That’s why the best engineers fail to think of all situations. These failures are also experienced by the AI models that the autonomous systems are using. Thus, the entire process becomes a money drain and non-reliable.

Is there no hope?

No, there is hope. We also have environments that are structured, controlled, and known. Autonomous systems are suited for them. An example is “Coaches that travel inside an underground tunnel”. The environment is not only structured but is also controlled. The program can control the coach and only refer to the operator when it identifies an issue.

To summarise, we are very far away from making autonomous vehicles. The AI, irrespective of its greatness, cannot think and therefore cannot make decisions in complex environments. Unless we add thinking to the AI, the scope of fully autonomous vehicles is limited to controlled environments only.

--

--

Lalit Dixit
Lalit Dixit

Written by Lalit Dixit

In a complicated world full of random data, I exist to uncomplicate

No responses yet