By Lance Eliot, the AI Trends Insider
[Ed. Note: For reader’s interested in Dr. Eliot’s ongoing business analyses about the advent of self-driving cars, see his online Forbes column: https://forbes.com/sites/lanceeliot/]
Hey buddy, pick a lane and stick with it!
I was taken aback by a rude driver that had abruptly and without signaling opted to cut into my lane.
I needed to quickly move into the lane next to me. Wait a second, unfortunately, none of the cars in that lane were willing to allow me into their jam packed lane.
I’m sure that you likely have experienced the same kinds of frustrations in your daily commute as well.
On the freeways here in Los Angeles, it seems like here aren’t enough lanes for the number of cars. The lanes are often poorly marked and cars tend to radically veer toward each other. Plus, drivers illegally dart into and out of the HOV lane, and sometimes illegally use the emergency lane as a form of underhanded transit.
We live in a world of lanes.
On the open highways, there are usually a couple of lanes going in each direction. On some freeways, there are at times five lanes going in each direction. On a mountain road, you usually have one lane in each direction, and on occasion it narrows to just one lane with the need to be extra cautious for any cars coming in the opposite direction.
About The Lane Markings
Lanes can be marked in a variety of ways.
Sometimes there are “bots dots” (those small upraised bumps glued to the road surface), startling you as go across them, causing your tires and car to rumble, and serving as a handy warning that you are crossing a lane.
There are some lanes that are marked with flat paint. A disadvantage to using only flat paint is that there isn’t any “feeling” about crossing a lane, no bumpy sensation, and therefore a driver is reliant solely on their visual sight to notice a lane boundary.
There might not be any markings at all, and it’s just a gut feel as to where the lanes are supposed to be.
In addition, there can be special occasions when a lane is marked by orange cones, creating a temporary lane such as after a car crash and the police are trying to redirect traffic.
Until the day arrives that we have flying cars, we all need to be cognizant of roadway lanes.
It’s kind of amazing when you think about it that people are all willing to most of the time obey the lanes.
Each morning, during my lengthy commute on the freeway, I watch and marvel that the drivers generally agree to stay in their lanes. They don’t have to per se.
You could straddle two lanes, and there’s nothing immediate that would stop you from doing so. There isn’t a freeway laser that would zap your car, and no big hammer that would bang on your car to get it to move over. Nope, we just all voluntarily abide by the lanes.
We do so partially because of the law.
As a driver, you don’t want to get a ticket and so you obey the lanes.
Also, you pretty much know that there will be fellow-driver vigilante justice extracted if you are straddling lanes excessively.
Other cars will honk at you, and at times maybe aim at you to force you in a chicken-game like way to get into a lane. I’m not suggesting that drivers aren’t straddling lanes from time-to-time, and likewise they often make really bad decisions about lane changes, but I am just saying that most of the time it’s kind of a miracle that all these people driving all these multi-ton deadly machines — and for which at any moment they could do whatever they want, we don’t have utter chaos. We’re pretty much all well behaved most of the time.
Thanks goes to all you drivers for a general consensus on sanity when driving.
Changing Lanes Is A Challenging Task
For teenage drivers that are learning to drive, they often find that changing lanes is one of the scariest aspects of driving a car.
Should I go now, or should I wait?
Can I make the lane change or will I cut-off another car?
Is that car going to allow me into that lane?
Should I speed-up?
Should I slow down?
I remember when I was first learning to drive a car, and we had five high school students in my driver ed class, and for which (scarily) we all drove in one car with the driving instructor. Each student would get about ten minutes of driving time per instructional trip.
One of the students would make a lane change that took maybe four minutes long and did an inch at a time to get into another lane. It was agonizingly slow. Dangerously slow. In contrast, we had one student driver that made a lane change the instant the instructor said to do so, and at times we nearly got into a car crash because of the rapid movement (it was as though the car dove into the other lane). The moment the instructor started to utter the words “start to think about a lane change,” the student took this to mean “get over into the next lane, darn it, as fast as possible, and don’t delay since we’ll all die if you do.”
We all held are breaths every time that student got behind the wheel.
Of course, changing lanes is a dangerous act.
Think about what can go wrong.
You can start the lane change, and perhaps not realize there is a car directly abreast of you, and then hit that car.
Or, maybe that car realizes you are mistakenly getting into their lane and so they hit you, or they veer and hit another car as “caused” by your having started your lane change.
Let’s assume you are good enough that you don’t start the lane change when there’s a car next to you, but once you engage in the move a car “suddenly” appears in that lane. Once again, the chances of getting hit, or hitting the other car, or starting a cascading accident that will possibly injure or even kill other people are all heightened.
There are some key factors involved in the lane change act.
One of those factors is speed.
Making lane changes at a low speed is more likely to have less adverse consequences. If you hit another car and you are both going 5 miles per hour, it’s not a good thing, but hitting another car while going 70 miles per hour is certainly apt to have more dire consequences. The faster speeds tend to mean less reaction time, and so less chance of avoiding a collision. The faster speeds tend to mean greater damage to the cars and greater chances of injury to the human occupants. Faster speeds tend to mean that the incident will turn into a domino and lead to a multitude of crashes.
Believe it or not, I know one driver that genuinely believes that higher speeds are better (safer) for making lane changes.
His logic is that the length of time involved in actually undertaking the lane change is reduced. At 70 miles per hour, he says it is a blink of the eye when you make a lane change. It’s like being the Flash and it happens so quickly that essentially nothing can go wrong. At slower speeds, he believes it is worse since you take too long to make a lane change. This longer time frame increases the opportunity for a car collision. All I can say is, wow, what a way of thinking. I’m just glad that he and I are rarely on the roadways at the same time.
This does bring up the useful facet that we have both your speed as a factor and also time as a factor.
You need to know what your speed is, assuming you want to make a reasonably well executed lane change. You need to know how much time it will take to make your lane change. You need to estimate how much time there will be for a gap to exist in the other lane, such that you can get into that gap. You need to calculate whether you need to speed-up or slow down to make it into that gap. The gap is both a physical gap in terms of physical space where your car can fit and that no other car occupies, and it is a time gap in that it needs to happen at a point in time during which there isn’t another car there.
Combining Science And Intuition
You might be tempted to think that changing lanes is merely a series of algorithmic like calculations that we humans are making.
I would suggest that’s over simplifying the beauty, art, and craft of lane changing.
You need to be part psychologist too.
Will that other driver in the lane next to me be willing to let me in?
There’s a momentary gap in space and time right now, but in the next few seconds it could disappear. The other car might suddenly accelerate and end-up in the spot that I think I want to occupy. Your lane change is actually a forecast about the future. You are trying to predict what the roadway situation will be in a few seconds from now.
This involves making educated guesses.
You can’t usually know for a certainty what the future is going to hold.
Yes, there are situations involving easy lane change actions.
If I’m on the open highway, and there’s not any cars around me for miles, I can change lanes to my heart’s content.
When I was first learning to drive, me and one of my best buddies would sometimes take long drives just to get better at driving, and we’d do a series of lane changes over and over. We’d be on the open highway, and make a lane change. No reason to do so per se. Then make another lane change, and another, and so on. It was for the sake of practice.
Anyone watching the car would have thought we were drunk or crazy, since there didn’t seem to be any rhyme or reason for the multitude of lane changes.
Consider The Activator And The Respondent
For ease of discussing lane changes, let’s refer to the driver that is initiating the lane change as the Activator.
The car that is in the other lane that might be impacted by the activator will be referred to as the Respondent.
I’ll take the core elements first, namely assume we have one activator and one responder.
That being said, this can readily become more complex by adding multiple responders.
Or, we could have multiple activators (several cars all wanting to make lane changes at the same time and place). The most reduced and simplest instance would be one activator and zero responders (that’s akin to my example above about me and my buddy making lane changes when no other cars were anywhere near us).
Consider first the speeds involved.
I’ll use this notation: Activator: Respondent
We’ll also keep things simple by pretending that the speeds are either high or low.
We then have this:
- High: High
- Low: Low
- High: Low
- Low: High
In the first case, both the activator car and the respondent car are going at a high speed. We’ll assume for simplicity they are going at the same speed. Generally, the time to make the lane change will be compressed because of the high speeds. Generally, the risk factor will be higher (in spite of what my friend believes about this!) since they are both going at a high speed.
In the second case, both the activator car and the respondent car are going at a low speed. We’ll assume for simplicity they are going at the same speed. Generally, the time to make the lane change will be longer than the high speeds instance. Generally, the risk factor is lower.
In the next two cases, there is a disparity between the speeds of the two cars.
This generally creates a situation less clear cut than when both cars are at the same speeds.
In the instance of the activator going at a high speed and merging into a lane with a respondent at a lower speed, presumably the activator has some advantage since they can readily get ahead of the respondent and potentially avoid having the respondent strike them from the rear.
In comparison, when the activator is going at a low speed and tries to merge in front of a car that is at a high speed, this can be of quite heightened risk since the respondent car is going to have to likely react.
This brings up another factor, namely the ability to accelerate and decelerate (brake).
We all know that when making a lane change you don’t necessarily maintain your existing speed. You can, but often you speed-up to make a lane change, or you slow down. Likewise, the respondent might speed-up or slow down.
We now return to the psychology of the lane change act.
The activator does not particularly know how the respondent will react to the lane change. It could be that the respondent might suddenly speed-up, and thus the prediction about the future physical/time gap is no longer what was predicted.
Sometimes a respondent doesn’t want to let the other car into their lane.
Sometimes the respondent is oblivious to the lane change and just decided to speed-up due to a completely unrelated aspect.
How does another driver know that you are trying to undertake a lane change?
Legally, you are supposed to signal that you want to make a lane change. Much of the time, people do indeed turn on their signal blinker. This though can be slippery.
Some lane changers will turn on their signal after they’ve already intruded into the other lane. This could be because they forgot to use the signal and then suddenly remembered, or it could be that they didn’t want to give a heads-up beforehand and then as a pretend afterward turned on the signal to act as though they had properly signaled to make a lane change.
In that sense, lane changes involve head-fakes.
A head-fake in this context is when you begin to move your car toward a lane change, and though you haven’t made a full commitment to it, you are “signaling” that you are making a lane change (this can occur either while using the turn signal or not using the turn signal). So, we have the potential of a head-fake to showcase an upcoming lane change, and we have the use of an actual turn signal.
We have these combinations:
- Head-fake (no): Turn signal (yes)
- Head-fake (no): Turn signal (no)
- Head-fake (yes): Turn signal (yes)
- Head-fake (yes): Turn signal (no)
An activator might not do a head-fake and do just the turn signal.
Here, though, there are times that the activator turns on the turn signal but then chooses to not make the lane change. Or, they turn on the turn signal, leave it on, and don’t realize they are telegraphing to the rest of the traffic that a lane change is coming. This can be irritating to other drivers, since they are all waiting to witness the lane change and it doesn’t arise. I’m sure you’ve seen drivers that leave on their turn signal and drive mindlessly with it on – you ask yourself, how can they not know their turn signal is on, are they not watching the road and paying attention to their own car?
There’s the instance of the no head-fake and no turn signal, and yet the driver makes the lane change anyway. No notice. No trying to be civil. They just suddenly and at times inexplicably make a lane change. This unexpected move can be especially dangerous since none of the nearby drivers have been forwarded about the movement.
There’s the use of both the head-fake and the turn signal, which often is handy since it reinforces each other as a means to suggest that the person is really truly going to make a lane change. And then there’s the head-fake but no turn signal indication. In this case, the head-fake is considered a stronger suggestion that a lane change is coming, more so than the turn signal. It would be nice though to also have the turn signal as a reinforcement that the person is not just maybe weaving and not actually intending to make a lane change.
AI Autonomous Cars And Changing Lanes Challenges
What does all of this have to do with AI self-driving driverless autonomous cars?
At the Cybernetic AI Self-Driving Car Institute, we are developing AI software for self-driving cars and one of the areas that is rapidly being advanced involves lane changes.
For most of the self-driving cars of today, if you ever watch them make a lane change, you might laugh at what you see. Generally, they make a lane change like a timid teenage novice driver would do. The AI of today will only make the lane change if it seems absolutely abundantly the case that the lane change can be made with a great deal of safety.
As such, the AI often starts toward doing a lane change a lot sooner than most human drivers would.
Also, the AI self-driving car tends to often disrupt traffic flow when making a lane change, which is not by design but by the aspect that imagine if you had a teenage driver making a lane change on a busy freeway. The other drivers would all pretty quickly size up that driver and either give them wide berth, or try to take advantage of them.
This is like playing a game of poker and a rube sits down to play.
Everyone else that knows how to play poker will try every trick under the sun on that rube.
I realize that some of you are going to say that there’s no need for an AI self-driving car to worry about driving around humans because we are going to have all cars on the road become AI self-driving cars.
Wake-up! It’s going to be a long, long, long time before that happens.
There are about 200 million conventional cars in the United States alone. We are going to have self-driving cars mixing with human driven cars for a very long time.
See my article about tit-for-tat and AI self-driving cars: https://aitrends.com/ai-insider/tit-for-tat-and-ai-self-driving-cars/
See my article about defensive driving and AI self-driving cars: https://aitrends.com/selfdrivingcars/art-defensive-driving-key-self-driving-car-success/
Not A Purely Mathematically Simple Act
Recall that I mentioned that making lane changes is not just the act of making calculations.
It is also involves the psychology of the other drivers.
For human drivers, right now they can easily guess the “psychology” of the AI self-driving cars – just assume that the AI will pretty much do whatever is the most conservative and novice act of changing lanes, and that’s it. Having to figure out other humans is more complex, though seasoned drivers have already assessed how to do so. Seasoned drivers look at not only the behavior exhibited by the car and the car driver, but also often include looking to see what the driver looks like, what the car looks like, whether the car is in good shape or bad shape, etc.
The AI of today’s AI self-driving cars doesn’t consider any of those other aspects.
Instead, the AI simplistically detects that there’s another object that is moving at such-and-such speed, and otherwise doesn’t really care as to the nature of the car, nor the nature of the driver of that car, or any other such facets. It’s all calculations based.
Some interesting new approaches to the mathematics of this include incorporating what are called buffer zones.
Imagine that the AI self-driving car has a cone around it, which is a buffer zone. Other cars have likewise buzzer zones around them. This virtual buffer zone is a “pretend” in that we are pretending that the car is actually larger than it is. You might think of this as a geo-fence placed around the car. The buffer zone can be wide, like say we decide that there’s a pretend area around a car that’s 4 feet wide, all around the car. Or, the buffer zone might be tight, such as perhaps a foot in size.
When trying to make a lane change, we’ll mathematically consider that the objects (the cars) are the sizes of their buffer zones.
One key principle is that we don’t want to have buffer zones come in contact with each other. If the buffer zones come in contact, it presumably implies a collision is going to occur. Now, the question arises as to how risky we are going to go. If the buffer zone is four feet, I presumably have some allowable slippage that I can make the lane change and get say within three feet of the other car, and not actually hit the other car, even though I’ve punched into their buffer zone.
Mathematically, we’d like to have the AI be able to “prove” that collision avoidance will be preserved.
So, we take the buffer zone of the activator, and the buffer zone of the responder, we make assumptions about their speeds and likely actions in the near future when the lane change will happen, and run through the calculations to see whether the lane change can be made with a guarantee of no collision.
This is easy to do in the lab or via a simulator.
In the real-world, this needs to be done in real-time. The question arises as to whether or not the calculations can be done quickly enough to then make the decision for the lane change and then do the lane change. If the calculations take say 3 seconds too long, the opportunity for the lane change evaporates. Furthermore, the whole set of calculations now is worthless since the circumstances have changed and a new set needs to be executed.
As much as possible, it is best to pre-compute this. You can have on-board the AI system lots of pre-computations done for varying circumstances, and thus instead of having to calculate at the moment, you look up in tables to see what those tables indicate. This is similar to chess playing. You can either have a chess playing program that has to calculate all the various permutations and options of play, or you can have pre-stored templates that once the chessboard is in a certain configuration, you just look it up and know what the next move should be.
We can do somewhat of the same with the AI self-driving car and lane changes.
Not entirely though.
And so we are more than likely to have to at times make the raw calculations. And, if so, they need to be done in real-time to match the time constraints of the situation. One recent approach by researchers at MIT involves calculating a logistics function involving the buffer zones and the direction, speed, etc., and then combining with a Laplace-Gauss distribution (the “Bell Curve”) to do an on-the-fly estimation of the chances of making the lane change and doing so with collision avoidance.
Efforts to solve this problem need to contend with the severe time constraints and doing the calculation in real-time, along with considering how much information is available and how reliable is that information.
See my article about cognition timing and AI self-driving cars: https://aitrends.com/ai-insider/cognitive-timing-for-ai-self-driving-cars/
The sensors of the self-driving car are providing data about what is around the self-driving car.
You cannot assume that this is perfect information.
The sensors might be getting a lot of noise such as the cameras have blurry images due to weather conditions, or maybe the radar is not reflecting well off the other cars. Etc. The sensor fusion might be contending with conflicting and missing information about the surroundings.
See my framework about AI self-driving cars: https://aitrends.com/selfdrivingcars/framework-ai-self-driving-driverless-cars-big-picture/
Changing lanes appears on the surface to be pretty straightforward.
As a human, if you are the activator, you just glance over your shoulder, survey the scene, maybe turn on your turn signal, you steer the car into the other lane, and voila you are done.
The respondent likewise simply has to notice that your car is providing some indication that you are wanting to make a lane change, perhaps via your turn signal and/or your head-fake movement, and then let you in.
I hope that you realize now that making a lane change is a lot harder than it seems. As usual, it’s one of those human learned aspects that after a while seems effortless.
To get an AI system to do this, with a car, and in motion, and with all the variability in terms of the surrounding traffic and the roadway and the lanes, it’s a tough thing to do.
For the moment, self-driving car developers have gotten the AI to make baby-step lane changes. By continuing to push forward and advance the techniques and software, the aim is to make lane changes as “effortless” as humans. This includes that at times the lane changes might be civil in nature, and in other cases more aggressive.
Soon enough, you might find yourself saying “hey buddy, you cut me off” and then realize you should say “hey AI, you cut me off!”
Copyright 2019 Dr. Lance Eliot
This content is originally posted on AI Trends.