The M2DC IoT appliance is on the road

Jan. 15, 2019, 9:12 a.m.

Authors: Nicholas Mainardi, Michele Zanella, Francesca Micol Rossi, William Fornaciari (POLIMI), Luca Ceva (VOD)

Analytic applications extracting valuable knowledge from big amount of data collected by IoT devices are already becoming pivotal to data centres. In particular, the use of these applications in the automotive domain is expected to grow vastly in the next few years. 20% of the circulating cars will be connected vehicles by 2020 and this number will double by 2024. This makes the market of automotive telematics viable, paving the way for the adoption of a large number of different applications. Consequently, the market space for fleet management and added value services will skyrocket, with a compound annual growth rate of 65%.

automotiveiot picture

In this scenario, Vodafone Automotive’s vision consists in delivering connected car services to the automotive and insurance industries. In particular, Vodafone Automotive Telematics is the business unit supplying services and developing telematics infrastructure for the automotive industry and the insurance business.  Vodafone  Automotive  Telematics  designs  telematic  services  and  offers assistance in case of accident and vehicle theft. It also provides useful insights to reduce the costs linked to the vehicles and it offers services based on driving behaviour indicators.

Technical details on the Appliance

One of the analyses Vodafone Automotive Telematics is interested in, concerns the problem of identifying the number of people usually driving a vehicle. This analysis is based on data collected by on-board devices, similar to the ones showed in the picture above. The IoT appliance implements a data analytics process, or workflow, specifically designed by POLIMI to tackle this problem.

An appealing feature of this workflow is its ability to perform driver identification by using data which can be collected without employing invasive methodologies, i.e. without connecting to vehicle’s Electronic Computer Board (ECB) or CAN bus. POLIMI received data collected on real vehicles by Vodafone Automotive Telematics. The idea of POLIMI workflow is to represent a trip with a set of features characterising the driving style. As trips of the same driver are expected to be similar with each other, they could form a cluster. In this context, the workflow estimates the number of usual drivers as the number of clusters found in the set of trips of the same vehicle.

Given that there is no need to specify the number of clusters to be formed in advance, the M2DC team decided to employ density-based clustering approach, and in particular, the dbscan algorithm.

The R environment in place

The aforementioned workflow is implemented with the R programming language to enhance the portability of the solution. The IoT appliance will embody an accelerated version of it, deployed on the M2DC infrastructure, hinging upon a specific R compilation toolchain developed by AS+ Groupe Eolen.


AS+ toolchain addresses the state-of-the-art limitations by providing a full compiler from R to machine code. This also targets heterogeneous architectures, including GPUs, providing transparent compilation with direct support of data flow runtime. Lastly, it can take into account parallel constructs in its intermediate representation.

In summary, as shown by the Figure below, the full toolchain and runtime support is designed as a modular framework by leveraging the modular property of LLVM based compilers

automotiveiot schema

Cryptography algorithms

The data processed by the IoT appliance concerns the driver’s personal behavior (e.g.  speed infringements and GPS locations). Therefore, if these data is stored on a remote server, protecting their confidentiality against possible security breaches needs to be guaranteed. To this extent, the IoT appliance embodies an encryption layer, which allows the storage of sensitive data in an encrypted form on the remote server.

The IoT appliance will employ an energy-efficient high throughput cryptographic implementation designed in the context of the M2DC project. This implementation is an FPGA OpenCL based accelerator for symmetric encryption primitives, providing efficient implementations for several cryptographic algorithms, including the well-known AES algorithm. Specifically, for the encryption acceleration, the appliance will include an FPGA module based on the Altera Stratix 10 SX2 series.

Benchmarking results

The experimental results confirmed the accuracy of the M2DC workflow. Indeed, the workflow identifies more than one driver in around 10% of the vehicles, which is in line with the average number of drivers per vehicle in the area where the data were collected.

From a performance point of view, the M2DC team has already evaluated a single core unoptimized R implementation of the proposed workflow. The results show that the current application is able to cluster the data related to a vehicle with 500.000 trips in approximately 3 minutes. Since performing this analysis on thousands of vehicles would require several days of computation, accelerating this application with the R compiler will be useful to significantly reduce the time needed for this computation. For the latter case, the appliance will include a GPU kernel, which will be exploited through the use of a customised R implementation, performing data analytics computation of our workflow.