Understanding Driverless Vehicles via Flock Behavior

Whether driverless vehicles should be allowed on the road has been the cause for some road rage of late. Each time I hear this discussion, I find myself on the fence, leaning one way or the other based on what I learn. I’m interested to share some of these ideas, as well as to hear your perspective.

To begin, let’s start with a little info on how the driverless system operates by comparing it to another fun system on more familiar grounds (or sky!). We’ve all seen swarms of birds fly above with seamless cohesion. No matter at what speed or direction the flock swerves, it appears to move with flawless precision. There are three key components to how this behavior functions: alignment, cohesion, and separation. Respectively, this refers to the direction of each bird (which is the general heading of the flock), the distance each bird retains from its neighbor, and how each bird steers according to the position of its neighbors.

All together, these simple behaviors (individual) make up a more complex system (flock) and this is described as emergent behavior. The key point here, being that each bird only needs to keep track of its neighbors and not the entire flock. The result of this emergent behavior is a smooth pattern of motion due to each individual performing simple movements based on a local awareness.

I know it can be a hard concept to visualize! For clarification, this handy video demonstrates these very basic rules and behaviors with boids, or markers. It also demonstrates what happens when obstacles are put in the way of these markers and how the rules apply to direct the markers to interact or engage with these obstacles in specific ways.

So, in a nutshell, this pattern of flock, or emergent, behavior makes up the very basics of how driverless vehicles function. And, if this was the entirety of the situation, driverless vehicles could be set and safe to go on the road today, but there are a number of other factors to consider too.

For instance, a flock of birds follows the same rules (instinct) and they are also only in the sky and surrounded by neighboring birds so a simple algorithm is enough. On the other hand, driverless vehicles encounter a much broader spectrum of situations that cannot all be anticipated, and this is where the problem lies.

From weather, to road rage, dealing with unpredictable drunk divers or new drivers, people on (or off!) their meds., a ball rolling onto the road, a person, or that chicken trying to cross the road, and so many other obstacles- these all present major challenges to the operation of a driverless vehicle. Code is good at dealing with predictable situations, but when the environment is seemingly random, with unforeseen and complex obstacles, accidents can happen.

For example, in May last year a Tesla vehicle collided with a truck while autopilot was engaged. Tesla stated that, “… neither the autopilot nor the driver noticed the white side of the trailer against a brightly lit sky, so the brake was not applied.” Elon Musk also offered further explanation as to why the radar sensors didn’t pick up the presence of an obstacle: “Radar tunes out what looks like an overhead road sign to avoid false braking events.” Tesla then pointed out that statistically speaking (in miles per accident) there are still less accidents on autopilot than when a driver is operating a vehicle.

I think this demonstrates that the driverless system is an asset, but also that there are many unforeseen limitations to the design that restrict its reliability. While manufacturers push for technology like this to be available on the market, the driverless control system is very complex and should not be rushed. For the meantime, it can be dangerous to have driverless and driven vehicles in the same environment and perhaps compromise can be made until the system is better understood. Check out my Sunday short story to learn more!

 

PS. Just a fun fact I came across in some research: computer graphics expert Craig Reynolds was a part of the video image crew in the 1992 movie Batman Returns. Reynolds studies flock behavior and was the first to reproduce this behavior in computer code in 1986 using boids. In the 1992 Batman Returns, Reynolds used these flock derived algorithms to create the bat swarms in the movie! Neat stuff.

 

Comments

One comment on “Understanding Driverless Vehicles via Flock Behavior”

Leave a Reply