Challenges in development of driver assistance functions
In BMW Car IT we’re also developing Driving Assistance functions for BMW series cars.
In this blog post I’d like to give an insight on the questions, challenges and constraints that we’re facing during our daily work. My name is Deepak Shenoy, and I’m a Software Specialist at BMW Car IT.
What makes a modern luxury sedan different from your living room couch? The answer literally lies under the hood. The powertrain lying at the heart of the vehicle ensures that one can reach from point A to B in the luxury of his vehicle. Going further, if one asks what makes a car, a BMW?
Well, it is the ease with which the driver of the BMW are able to control the vehicle in a safe and effortless manner, making the journey as much fun as the sense of reaching your destination. A large part of this experience of “Sheer Driving Pleasure” on the BMW is attributed to what we call “Driver Assistance Functions”.
Classifications of DA functions
The driver assistance (DA) functions can be broadly classified into one of the following realms:
- Functions that provide the driver with information about the current or forthcoming events relevant to the current driving situation. E.g. Speed Limit Information
- Functions that control or assist the control of the vehicle when desired by the driver and under his part or full supervision. E.g. Lane keeping and lane change assistant.
- Functions that intervene to correct the vehicle behavior of the vehicle when driver inputs and environmental conditions lead to situations which are detected as potential dangerous situations. E.g. Dynamic stability control.
A typical driving situation needs the driver to sense the environment and provide inputs to his vehicle in order to navigate a given traffic situation within the constraints enforced by local law and to match his comfort level. Even though as human drivers all these actions may come quite natural to us, there is substantial amount of time that one needs to spend at a driving school before getting a driver’s license and copious amount additionally behind the wheel, before qualifying as a safe and confident driver.
Similarities and differences between human drivers and DA systems
The DA systems have a marked similarity with a human driver, in terms of their functioning. They use various sensors to sense the environment, process it together with the inputs from the driver and then apply the physical constraints of the vehicle, constraints enforced by local law etc.; to provide assistance to the driver. Obviously, the DA systems have an upper hand when it comes to sensing the environment, because unlike humans the sensors do not get distracted or need a break. The same holds when it comes to understanding the system constraints. However, when it comes to fusing the various inputs to make a meaningful interpretation of the real world, there is still a long way the DA systems have to go before they can match the human brain. There is a plethora of metadata in the environment which a human brain is able to process very efficiently and take decisions, which a computer still has difficultly in processing. For example,
Is the speed limit sign relevant for the current lane or the exit lane?
A question as simple as this needs significant processing by the vehicle, because on one hand it should be able to detect all features needed to make this decision and on the other hand be able to localize itself precisely on the lane.
Another challenge for the DA systems is the reliability targets that need to be fulfilled. Each driver knows that there are times when they do driving mistakes be it either due to oversight or due of insufficient knowledge about the surroundings. E.g. making a wrong turn or being above the speed limit at a given stretch of road.
For DA systems these are cardinal sins. No one would be willing to pay for a DA system that behaves erratically or is unreliable. This means puts even more demands on DA systems to perform reliably in spite of the reduced sense of the environment.
Another aspect that one needs to consider is the behavior of the DA systems in various geographies with differing driving behavior and regulations. For example in Greece cars entering roundabout have right of way while in rest of Europe it is the other way round. The DA systems on vehicles sold in Greece need to make this exception, which in rest of Europe would lead to completely incorrect decisions.
Expected availability of DA systems
The last in this post but definitely not the last in the list of challenges that exist for the DA systems is the issue of “Availability”. Customers expect their DA systems to be available under all environmental conditions, be it rain or shine. The DA system developers sometimes have to tread on loose grounds here. This is because a system may work with very high degree of availability and reliability under certain conditions. This develops over reliance on the DA function by the driver, whereby he expects the system to deliver the same performance irrespective of the boundary conditions. However, when the conditions change the reliability of the DA systems drop and it becomes the onus of the driver to use his judgement to use the system. The challenge is deciding the right time to inform the limitation of DA system to the driver. For example, when snowing the camera visibility is reduced and it is likely that some road signs are not detected reliably. The DA system compensates this with information from other sensors, to make certain decisions. However, the net reliability of the information is no more the same. Should this limitation be informed to the driver? Should the whole DA function be disabled because of reduced reliability? When is the best time to do this so that the driver doesn’t over rely on the system?
There are several important questions; like the ones presented above that a SW developer like me has to answer on a daily basis in course of his work. This challenge is what makes the work exciting. In the end the idea is to provide the best driving machine, with the great driver assistance functions so that every BMW user can enjoy “Sheer Driving Pleasure”.