This project was developed using the inspiration that drivers drive in their own methods regardless of their daily commute. This could be using any average of acceleration, braking, and steering angle. This analysis of driver analytics will allow the vehicle to determine a specific driver who is driving the vehicle and their specific preferences within the vehicle.
What it does
Utilizing data gathered from GM vehicle sensors we created a platform to analyze driving data sent to an offboard server running on Wolfram Cloud. This driving data is analyzed using machine learning algorithms we developed to accurately determine who is driving the vehicle based on their driving patterns. The driver is then shown a driving score at the end of their drive based on their acceleration, braking, and quick turns during the drive. Having a vehicle that can determine the driver's identity based on previous drives allows the vehicle to make decisions on driver experience autonomously. If the vehicle can determine who is driving the car, the driver doesn't have to worry about climate control, seat position, mirror position, favorite music stations, or any other personal settings within the vehicle. Having a car that knows who is driving the car without user input allows a seamless driver experience from the start of the engine to the close of the garage door upon return.
How we built it
We built this app using a combination of Html and Javacript running with the support of the GM NGI SDK to forward vehicle data to a cloud hosted by Wolfram Language script to run data analysis on the data received from the GM vehicle. This data is then processed using Wolfram machine learning functions to determine who is driving the vehicle by inputting the acceleration intensity, braking intensity, and steering intensity. These machine learning functions then classify who is driving the vehicle given a training data set. This cloud hosted function then returns within a certain confidence interval who is driving the vehicle and continues to train that machine learning classifier function for that particular driver.
Challenges we ran into
Challenges ran we ran through involved utilizing the machine learning functions within Mathematica. The Classify function within Mathematica only utilizes a certain format of data, therefore we developed our own machine learning function to classify data within a certain confidence interval. This allowed us to identify who is driving the vehicle based on a certain driver score that we calculated using braking intensity, acceleration intensity, and steering angle.
Accomplishments that we're proud of
The accomplishment we are most proud of is accomplishing a GM vehicle app which is capable of classifying who is driving a car based on just a few sample drives of particular drivers. We were able to create a custom machine learning algorithm to classify drivers based on who was driving the car at a given time. This algorithm is improved based on an increased number of drivers improving the classifier function, and the more drivers we have within a certain vehicle, the higher confidence interval we have to determine who is driving the vehicle.
What we learned
We learned about the requirements to develop a machine learning algorithm that can determine individuality given a collection classifying data sets that improve over time.
What's next for GM DrivePrint
We aim for GM DrivePrint to continue to be developed as an inclusion on every future GM vehicle as an extension of the standard software package to assist the modern driver.