00:00
Hi, I'm Dr. Lantz, and welcome to my podcast series about self-driving cars.
00:13
In this episode, I'll be discussing the topic of changing lanes and self-driving cars.
00:20
If you become interested in learning more about self-driving cars, please see my website
00:23
www.ai-self-driving-cars.guru for further information.
00:30
Okay, let's get started.
00:33
Hey buddy, pick a lane and stick with it.
00:36
You've likely thought about or spoken those remarks about roadway lanes.
00:41
We live in a world of lanes.
00:44
Until the day arrives that we have flying cars, we all need to be cognizant of roadway
00:49
It's kind of amazing when you think about it that people are willing to most of
00:51
the time obey the various lanes.
00:54
Thanks goes to all you drivers for a general consensus on sanity when driving.
00:59
For teenage drivers that are learning to drive, they often find that changing lanes is one
01:03
of the scariest aspects of driving a car.
01:05
Should I go now or should I wait?
01:07
Can I make the lane change or will I cut off another car?
01:10
Is that car going to allow me into that lane?
01:14
Should I slow down?
01:15
I remember when I was first learning to drive a car, we had five high school
01:18
students in my driver ed class and for which scarily we always all drove in one car with
01:23
the driving instructor.
01:24
Each student would get about ten minutes of driving time per instructional trip.
01:29
Changing lanes was a dangerous act.
01:32
Think about what can go wrong.
01:33
You can start the lane change and perhaps not realize there's a car directly aside
01:37
of you and then hit that car.
01:39
Or maybe that car realizes you are mistakenly getting into their lane and so they hit
01:45
Or they veer and hit another car as caused by your having started your lane change.
01:49
Let's assume you're good enough that you don't start the lane change when there's
01:53
But once you engage in the move, a car suddenly appears in that lane.
01:58
Once again the chances of getting hit or hitting the other car or starting a cascading accident
02:03
that will possibly injure or even kill other people is all heightened.
02:07
There's some key factors involved in the lane change act.
02:10
One of those factors is speed.
02:12
lane changes at low speed is more likely to have less adverse consequences.
02:16
If you hit another car and you're both going say five miles per hour, certainly it's not
02:21
But hitting another car while going 70 miles per hour certainly apt to have more dire consequences.
02:25
The faster speeds tend to mean less reaction time and so less chance of avoiding a collision.
02:30
The faster speeds tend to mean greater damage to the cars and greater chances of injury
02:34
to the human occupants.
02:36
Faster speeds tend to mean that the instant will turn into a domino and lead to a
02:39
multitude of crashes.
02:41
Believe it or not I know one driver that genuinely believes that higher speeds are safer for making
02:47
His logic is the length of time involved in actually undertaking the lane change is reduced.
02:51
At 70 miles per hour he says it's a blink of the eye when you make a lane change.
02:55
It's like being the flash and it just happens so quickly that essentially nothing
02:59
At slower speeds he believes it is worse since you take too long to make a lane
03:05
This longer time frame increases the opportunity for a car collusion in his mind.
03:09
All he can say is wow what a way of thinking.
03:12
I'm glad that he and I are rarely on the roadways at the same time.
03:16
This also brings up the useful facet that we have both your speed as a factor and also
03:22
You need to know what your speed is assuming you want to make a reasonably well executed
03:26
You need to know how much time it will take to make your lane change.
03:29
You need to estimate how much time there will be for a gap to exist in the other
03:32
lane such that you can get into that gap.
03:35
You need to calculate whether you need to speed up or slow down to make it into
03:39
The gap is both a physical gap in terms of physical space where your car needs to
03:42
fit and that no other car occupies and it's a time gap in that it needs to happen
03:47
at a point in time during which there isn't another car there.
03:51
You might be tempted to think that changing lanes is merely a series of algorithmic
03:54
like calculations that we humans are making.
03:57
I would suggest that's oversimplifying the beauty, art and craft of lane
04:03
You need to be part psychologist too.
04:06
Will that other driver in the lane next to me be willing to let me in?
04:10
There's a momentary gap in space and time right now but the next few seconds it could
04:15
The other car might suddenly accelerate and end up in the spot that I think I want
04:20
Your lane change is actually a forecast about the future.
04:23
You are trying to predict what the road to a situation will be in a few
04:28
This involves making educated guesses.
04:30
You can't usually know for a certainty what the future is going to hold.
04:34
Now yes, there are situations involving easy lane change actions.
04:38
If I'm on the open highway and there's not a car around me for miles, I can change lanes
04:42
to my heart's content.
04:44
For ease of discussing lane changes, let's refer to the driver that is initiating the
04:48
lane change as the activator.
04:51
The car that is in the other lane that might be impacted by the activator will be referred
04:56
to as the responder.
04:58
I'll take the core elements first, namely, assume that we have one activator and
05:04
That being said, this can readily become much more complex by adding multiple responders or
05:08
multiple activators.
05:10
The most reduced and simplest instance would be one activator and zero responders, which
05:15
is akin to my example that you can just change lanes readily when there's no other
05:21
cars anywhere near you.
05:24
Consider first the speeds involved.
05:26
In the first case, imagine the case of the activator car and the responder car both
05:30
going at high speeds, and we'll assume for a moment for simplicity that they're going
05:34
at roughly the same speed.
05:36
Generally the time to make the lane change will be compressed because of the high speeds.
05:40
Generally the risk factor will be higher in spite of what my friend believes, since
05:44
they're both going at high speeds.
05:46
In the second case, both the activator car and the responder car let's pretend are
05:50
going at low speeds.
05:52
We'll assume for simplicity again roughly at the same speed.
05:54
During the time to make the lane change will certainly be longer than the higher
05:57
speeds instance, and the risk factor tends to be lower.
06:03
In the other two cases there's a disparity between the speeds of the two cars.
06:07
This generally creates a situation, less clear cut, when both cars are not at the same speeds.
06:13
In the instance of the activator going at let's say a high speed and merging into
06:17
a lane with a responder going at a lower speed, presumably the activator has some
06:21
advantage since they can rarely get ahead of the responder and potentially avoid having
06:25
the responder strike them from the rear.
06:28
In comparison, when the activator is going at a lower speed and tries to merge in front
06:32
of a car that's going at a higher speed, this can be a quite heightened risk since
06:36
the responder car is going to have to likely react.
06:39
This brings up another factor, namely the ability to accelerate and decelerate or
06:45
We all know that when making a lane change you don't necessarily maintain your existing
06:49
You can but often you speed up to make the lane change or you alternately slow
06:54
Likewise, the responder might have to react by speeding up or slowing down.
06:59
Let's return to the psychology of the lane change act.
07:02
The activator does not particularly know how the responder will react to the lane
07:06
It could be that the responder might suddenly speed up and thus the prediction
07:10
about the future of physical time gap is no longer what was predicted.
07:14
Sometimes the responder doesn't want to let the other car into their lane.
07:17
Sometimes the responder is oblivious to the lane change and just decided to speed
07:20
up due to a completely unrelated aspect.
07:23
How does another driver know that you're trying to undertake a lane change?
07:26
Well, legally you're supposed to signal that you want to make a lane change.
07:30
Much of the time people do indeed turn on their signal blinker.
07:33
This though can be slippery.
07:34
Some lane changers will turn on their signal after they've already intruded into the
07:39
This could be because they forgot to use the signal and suddenly remembered or it
07:42
could be that they didn't want to give a heads up beforehand and then as a kind
07:45
of pretend afterwards turn on their signal to act as though they had properly
07:49
signaled to make a lane change.
07:51
In that sense lane chains also involve head fakes and head fake in this context is
07:56
when you begin to move your car towards a lane change and though you haven't made
08:00
a full commitment to it you are signaling that you're making a lane change.
08:04
This can occur either while using your turn signal or not even using the turn
08:09
So we have the potential of a head fake to showcase an upcoming lane change and
08:13
we also have the use of an actual turn signal.
08:16
What does all this have to do with AI, artificial intelligence and self-driving
08:21
The Cybernetic AI Self-Driving Car Institute were developing AI software for
08:24
self-driving cars and one of the areas that's rapidly being advanced involves
08:28
the ability for a self-driving car to make lane changes.
08:31
For most of the self-driving cars of today if you ever watch them make a
08:35
lane change you might almost laugh at what you see.
08:38
Generally they make a lane change like a timid teenage novice driver would do.
08:42
The AI of today will only make the lane change if it seems absolutely abundantly
08:46
the case that the lane change can be made with a great deal of safety.
08:51
As such the AI often starts doing a lane change a lot sooner than most human
08:55
Also the AI self-driving car tends to often disrupt traffic flow when making
08:59
lane change which is not by design but by the aspect that imagine if you had
09:03
a teenage driver making a lane change on a busy freeway.
09:05
The other drivers will all pretty quickly size up that driver and either
09:09
give them a much wider berth or try to take advantage of them.
09:12
This is kind of like playing a game of poker and a rubbe sits down to
09:16
Everyone else knows how to play poker will try to every trick in the
09:19
book on that rubbe.
09:22
I realize that some of you are going to say well there's no need for an AI
09:25
self-driving car to worry about driving involving humans because we're going
09:28
to have all self-driving cars on the road someday.
09:32
Wake up that's going to be a long long time before that happens.
09:35
There are about 200 million conventional cars in the United States alone
09:39
we're going to have self-driving cars mixing with human driven cars for a
09:45
Recall that I mentioned that making lane changes is not just the act of
09:48
making calculations.
09:49
It also involves the psychology of the other drivers.
09:52
For human drivers right now they can readily guess the psychology of the
09:56
AI self-driving cars.
09:57
Just assume that the AI will pretty much do whatever is the most
10:00
conservative and novice act of changing lanes and that's it.
10:04
Having to figure out other humans is much more complex though
10:07
seasoned drivers have already assessed how to do so generally.
10:11
Season drivers look at not only the behavior exhibited by the other
10:14
car and the other car driver but also often include looking
10:19
at other aspects such as what does the driver look like?
10:22
What does their car look like?
10:23
Is their car in good shape or bad shape and so on.
10:26
The AI of today's AI self-driving cars doesn't consider any of those
10:31
Instead the AI simplistically detects that there's another object that's
10:34
moving at such and such speed and otherwise doesn't really care as to
10:37
the nature of the car nor the nature of the driver of that car or any of
10:41
It is basically calculations-based.
10:44
Now some interesting new approaches to the mathematics of this include
10:47
incorporating what are called buffer zones.
10:49
Imagine that the AI self-driving car has kind of a cone around it which is a
10:54
Other cars have likewise buffer zones around them.
10:58
This virtual buffer zone is kind of a pretend and that we're pretending
11:01
that the car is actually larger in a sense that it is.
11:04
You might think of this as a geofence placed around a car.
11:07
The buffer zone can be very wide like say we decide there's a pretend
11:11
area around a car that's four feet all around the car
11:14
or the buffer zone might be very tight such as we might pretend let's
11:17
say a foot or less in size.
11:19
When trying to make a lane change we'll mathematically consider that the
11:22
objects the cars are the sizes of their buffer zones.
11:26
One key principle is that we don't want to have buffer zones come in
11:29
contact with each other.
11:31
If the buffer zones come in contact it presumably implies a collision is
11:35
Now the question rises as to how risky we're willing to go.
11:38
If the buffer zone is four feet I presumably have some allowable
11:41
slippage that I can make the lane change and get say within three feet of that
11:45
other car and not actually hit it even though I have
11:49
punched into their buffer zone.
11:52
Mathematically we'd like to have the AI be able to prove
11:55
that collision avoidance will be preserved.
11:57
So we take the buffer zone of the activator and the buffer zone of the
12:01
responder we make assumptions about their speeds and
12:03
likely actions in the near future when the lane change will happen
12:07
and run through various calculations to see whether the lane change can be
12:10
made with a guarantee of no collision.
12:14
This is easy to do in the lab or via simulator.
12:17
In the real world this needs to be done in real time.
12:19
The question arises as to whether or not the calculations can be done quickly
12:23
enough to then make the decision for the lane change
12:25
and then do the lane change.
12:27
If the calculations take say three seconds too long
12:30
the opportunity for the lane change evaporates.
12:33
Furthermore the whole set of calculations is now worthless
12:36
since the circumstances have changed and a new set needs to be executed.
12:40
As much as possible it is best to pre-compute this.
12:43
You can have onboard the AI system lots of pre-computations done for varying
12:47
circumstances and thus instead of having to calculate at the moment
12:50
you can look up in various tables to see what those tables indicate.
12:54
This would be similar to chess playing.
12:56
You can either have a chess playing program that has to calculate all the
12:59
various permutations and options of each play
13:01
or you can have pre-stored templates that once the chess board is in a
13:05
certain configuration you can just look it up and know
13:07
what the next move would be.
13:09
We can do somewhat of the same with the AI self-driving car and lane changes.
13:13
Now not entirely though and so we are more likely to have at times
13:17
have to make some kind of raw calculations and if so
13:21
they need to be done in real time to match the time constraints of the
13:24
One recent approach by researchers at MIT involves calculating
13:28
a logistics function involving the buffer zones and the direction of speed
13:31
and so on and then combining that with a Laplace-Gas distribution
13:36
the so-called bell curve to do an on-the-fly estimation of the chances of
13:40
making the lane change and doing so with collision avoidance.
13:43
Efforts to solve this problem need to contend with the severe time constraints
13:47
and doing the calculations in real time along with considering how much
13:51
information is available and how reliable is that information.
13:54
The sensors of the self-driving car are providing data about what is around
13:57
the self-driving car.
13:58
You cannot assume that this is perfect information.
14:01
The sensors might be getting a lot of noise such as the cameras have
14:04
blurry images maybe due to weather conditions or maybe the radar is not
14:08
reflecting well off of other cars and so on.
14:11
The sensor fusion must be contending with conflicting and missing
14:14
information about the surroundings.
14:16
Changing lanes appears on the surface to be straightforward.
14:19
As a human if you are the activator you just glance over your
14:23
shoulder survey the scene maybe turn on your turn signal you
14:26
steer the car in the other lane and voila you're done.
14:29
The responder likewise simply has to notice that your car is providing
14:32
some indication that you're wanting to make a lane change
14:35
perhaps via your turn signal your head fake movement and then let you in.
14:39
I hope you realize now though that making lane changes a lot harder than that.
14:43
As usual it's one of those human learned aspects that after a while seems
14:48
To get an AI system to do this with a car and in motion
14:52
and with all the variables in terms of surrounding traffic and the
14:54
roadway in the lanes it's a tough thing to do.
14:57
For the moment we've gotten the AI to make baby step lane changes.
15:01
By continuing to push forward in advance the techniques and software
15:04
we all aim to make lane changes as effortless as humans do.
15:08
This includes that at times the lane changes might be civil in nature
15:12
and in other cases more aggressive.
15:14
Soon enough you might find yourself saying hey buddy you cut me off
15:18
and then realize you should have said hey AI you cut me off.
15:23
Well thanks for listening again I'm Dr. Lancelot.
15:26
I hope that you found today's episode informative.
15:28
If you're interested in learning more about self-driving cars
15:31
please see my website www.ai-self-driving-cars.google.com