(19)
(11)EP 3 367 062 B1

(12)EUROPEAN PATENT SPECIFICATION

(45)Mention of the grant of the patent:
18.11.2020 Bulletin 2020/47

(21)Application number: 18152240.0

(22)Date of filing:  18.01.2018
(51)International Patent Classification (IPC): 
G01C 21/26(2006.01)
G01C 21/32(2006.01)
G07C 5/00(2006.01)
B60W 40/09(2012.01)
G01S 19/14(2010.01)

(54)

SYSTEM AND METHOD FOR DRIVER PROFILING CORRESPONDING TO AN AUTOMOBILE TRIP

SYSTEM UND VERFAHREN FÜR FAHRERPROFILERSTELLUNG ENTSPRECHEND EINER FAHRZEUGROUTE

SYSTÈME ET PROCÉDÉ DE PROFILAGE DE CONDUCTEURS CORRESPONDANT À UN TRAJET AUTOMOBILE


(84)Designated Contracting States:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

(30)Priority: 23.02.2017 IN 201721006435

(43)Date of publication of application:
29.08.2018 Bulletin 2018/35

(73)Proprietor: Tata Consultancy Services Limited
Maharashtra (IN)

(72)Inventors:
  • CHOWDHURY, Arijit
    Kolkata 700 160 West Bengal (IN)
  • GHOSE, Avik
    Kolkata 700 160 West Bengal (IN)
  • CHAKRAVARTY, Tapas
    Kolkata 700 160 West Bengal (IN)

(74)Representative: Goddar, Heinz J. 
Boehmert & Boehmert Anwaltspartnerschaft mbB Pettenkoferstrasse 22
80336 München
80336 München (DE)


(56)References cited: : 
EP-A1- 2 536 611
US-A1- 2016 026 182
US-A1- 2015 307 107
US-A1- 2017 039 890
  
      
    Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


    Description

    RELATED APPLICATIONS AND PRIORITY



    [0001] The present application claims priority to Indian Application (Title: System and Method for Driver Profiling Corresponding to Automobile Trip), Application No. 201721006435, filed on February 23, 2017.

    TECHNICAL FIELD



    [0002] The embodiments herein generally relate to identification of driver profiles, and, more particularly, to a system and method for driver profiling using GPS data associated with automobile trip.

    BACKGROUND



    [0003] Intelligent transportation systems are considered as the advanced applications that provide novel services relating to traffic management and a convenient use of transport networks. Among various other applications, an application in ensuring driving safety through driving behavior analysis has received wide attention. Driving safety bears a direct co-relation with the driver's normal and abnormal driving behaviors, thus many systems for detecting driver's driving behavior have been developed and are widely used. These systems usually include detection of a driver's physiological signal(s), such as the movement of the driver's head, the changes in the driver's heartbeat, the moving track of the steering wheel, the driver's eye movement and the like.

    [0004] Conventional driver's driving behavior detecting system, however, suffers from certain limitations. Said systems relies on multiple sensors for collection of sensor data therefrom, which can then be utilized for detecting driving behavior. Examples of such sensors includes, but are not limited to, accelerometer sensors, gyroscope sensors, vehicle speed capturing sensors, location capturing sensors, weather capturing sensors, and so on. Due to dependence on multitude of sensors for driver behavior detection and profiling, the conventional systems render the process driver profiling computationally intensive and time consuming. One of the prior art patent application US 2017/0039890 discloses augmenting transport services using driver profiling. Trip is analyzed from a population of drivers in order to determine one or more indicators of one or more driving styles. The trip data includes sensor information obtained from sensor devices which are present in a vehicle of each driver of the population. A driving style is determined for the driver during a monitored trip by analyzing sensor information obtained from one or more sensor devices of the driver during the trip for at least one of the indicators of the one or more driving styles. Another patent application US2016/0026182 discloses personalized driving of autonomously driven vehicles. Methods for personalized driving of autonomously driven vehicles include: (a) downloading at least a portion of a driving profile to a vehicle, wherein the vehicle is configured for autonomous driving and wherein the driving profile is associated with a specific driver; and (b) executing one or a plurality of operating instructions prescribed by the driving profile, such that the vehicle is operable in a driving style imitative of the specific driver. Apparatuses for personalized driving of autonomously driven vehicles are described. Another patent application EP2536611 discloses a motor-vehicle driving style estimating system and method. A motor-vehicle driving style estimating System (100) of a motor-vehicle, comprising a measuring apparatus (1) of a kinematic signal representative of a motor-vehicle motion quantity trend (v(t)). The system is characterized in that it comprises a kinematic signal low-pass filtering module (8) configured to provide a corresponding reference filtered signal associated with a reference trend of said quantity (vF(t)). Furthermore, the system comprises a kinematic signal and reference filtered signal Processing module (2) configured to provide an indication of the driving style depending on a comparison of the motor-vehicle motion trend with the reference trend. Still another patent application US2015/0307107 discloses driver performance determination based on geolocation. System for determining driver performance based on vehicle geolocation comprises one or more onboard vehicle sensors, one or more processors, and a memory. The one or more onboard vehicle sensors are configured to detect driving data of a moving vehicle. The one or more processors are configured to determine driver performance based at least in part on the driving data. The driver performance is normalized for a vehicle geolocation. The memory is coupled to the one or more processors and configured to provide the processor with instructions.

    SUMMARY



    [0005] The following presents a simplified summary of some embodiments of the disclosure in order to provide a basic understanding of the embodiments. This summary is not an extensive overview of the embodiments. It is not intended to identify key/critical elements of the embodiments or to delineate the scope of the embodiments. Its sole purpose is to present some embodiments in a simplified form as a prelude to the more detailed description that is presented below.

    [0006] In view of the foregoing, an embodiment herein provides methods and systems for driver profiling corresponding to an automobile trip. In one aspect, a processor implemented method for profiling corresponding to an automobile trip is provided, according to claim 1.

    [0007] In another aspect, a system for driver profiling corresponding to an automobile trip is provided, according to claim 7.

    [0008] In yet another aspect, a non-transitory computer-readable medium having embodied thereon a computer program for executing a method for driver profiling corresponding to an automobile trip is provided, according to claim 11.

    BRIEF DESCRIPTION OF THE FIGURES



    [0009] The detailed description is described with reference to the accompanying figures. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the drawings to reference like features and modules.

    FIG. 1 illustrates a network implementation of a system for driver profiling corresponding to an automobile trip, in accordance with an embodiment of the present subject matter;

    FIG. 2 illustrates a block diagram of a system for driver profiling corresponding to an automobile trip, in accordance with an embodiment;

    FIG. 3 illustrates a flow diagram of a method for driver profiling corresponding to an automobile trip, in accordance with an example embodiment.

    FIG. 4 illustrates a flow diagram of a method for driver profiling corresponding to an automobile trip, in accordance with an example embodiment.

    FIG. 5 illustrates example of driver profile identification, in accordance with an example embodiment.



    [0010] It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative systems and devices embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, and the like represent various processes which may be substantially represented in computer readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.

    DETAILED DESCRIPTION



    [0011] Current intelligent transportation systems incorporate embedded sensors and computational means for performance optimization of automobiles. For better performance and maintenance of automobiles, identifying the driver and his/her natural tendency i.e. unique driving style is important. For advanced driver assistance systems, identifying the driver is crucial. Conventionally, driver identification is achieved by using few numbers of dedicated sensors. The conventional approach for driver identification utilizes machine learning on data collected from a list of sensors. Examples of such sensors includes brake pedal position sensor, steering wheel angle sensor, lateral acceleration sensor, Yaw rate, Gear shift lever, vehicle speed, estimated gear senor, Shaft angle velocity sensor, Accelerator pedal sensor, engine RPM sensor (OBD II), fuel consumption rate, throttle position, turn angle sensor, and so on.

    [0012] The aforementioned sensors are embodied in the automobile to capture sensor data and identify driver based on said sensor data. However, being external to the automobile, said sensors imposes additional cost. Moreover, deployment of multiple sensors increases operational and maintenance overhead for the automobile. Also, installing and communicating with sensors results in additional overheads. The conventional systems have additional logistics cost associated with them, which in turn limits the rapid and large scale deployment thereof.

    [0013] Another alternative conventional system includes biometric identification of the driver. However, none of the aforementioned conventional driver identification systems can be considered as viable solutions due to direct privacy violation. In addition, said conventional systems can intentionally avoided by the drivers/ users. Moreover, in order to identify unique driving style of a driver, the identification of the driver may not be necessary. For example, the current systems determine when particularly identified drifts from his/her own driving style. However said determination is not helpful in identifying typical driving style of the driver.

    [0014] In the light of foregoing problems, there exists a need for a system and a method that can provide an effective solution for driving behaviour analysis in order to generate a driving behaviour of a driver that can effectively overcome the deficiencies and technical limitations described hereinabove. Further, there also exists a need for a system and a method that can efficiently compute a driving score with minimum requirement of sensors to sense multiple parameters of a moving vehicle.

    [0015] The disclosed embodiments overcome the shortcomings mentioned above by utilizing only logged GPS data (i.e. data collected from GPS sensor when the automobile is in motion, or during a trip of the automobile), and processing said GPS data to identify a driver profile from a plurality of driver profiles. Herein, the term 'driver profile' refers to various parameters captured corresponding to driving behaviour of a driver. In an embodiment, the plurality of driver profiles includes driving behaviour for those drivers that may be associated with an automobile. For instance, for a personal automobile or a family automobile, three to four driver profiles may be associated with the automobile. However, for a commercial automobile 10-15 driver profiles may be associated with the automobile as these many drivers may be driving that particular automobile at different times.

    [0016] Additionally, the embodiments disclose methods for computation such that the computation/processing of the data is split between a remote server and a computation device on-board the automobile, so as to achieve a computationally efficient system.

    [0017] The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein may be practiced and to further enable those of skill in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.

    [0018] The methods and systems are not limited to the specific embodiments described herein. In addition, the method and system can be practiced independently and separately from other modules and methods described herein. Each device element/module and method can be used in combination with other elements/modules and other methods.

    [0019] The manner, in which the system and method for driver profiling shall be implemented, has been explained in details with respect to the FIGS. 1 through 5. While aspects of described methods and systems for driver profiling can be implemented in any number of different systems, utility environments, and/or configurations, the embodiments are described in the context of the following exemplary system(s).

    [0020] Referring now to FIG. 1, a network implementation 100 of system 102 for driver profiling for an automobile trip is illustrated, in accordance with an embodiment of the present subject matter. In various embodiments, the system 102 facilitates in identifying a driver profile and/or driving behavior of a driver of an automobile, for example, automobile 110a, 110b corresponding to a trip. Herein, the term 'trip' may refer to a continuous journey from start time instant to stopping time instant, for reaching a destination.

    [0021] Herein, the system 102 is caused to identify the driver profile primarily on the basis of GPS data captured during the trip. The GPS data may include a plurality of attributes such as a primary data, a derived data and multiple derivatives of the primary data and the derived data. The primary data may include data that can be directly captured using the GPS data. For example, the primary data may include speed, acceleration and course associated with the trip. The derived data may include data associated with lateral acceleration, angular speed, and jerk energy of the trip. The term 'jerk' may refer to rate of change of acceleration of the automobile. The term 'Jerk energy' may refer to energy of jerk signal in one second time window. The jerk energy may be computed by sum of square of five consecutive jerks around that time. The multiple derivatives of the primary data and the derived data may include a first derivative or difference of the primary and/or the derived data, the second derivative or difference of the primary and/or the derived data, and so on.

    [0022] Herein, it will be noted that although the present subject matter is explained considering that the system 102 is implemented for driver profiling for an automobile trip, it may be understood that the system 102 may is not restricted to any particular machine or environment. The system 102 can be utilized for a variety of domains as well as for data where data with high computational load and complexity is involved. In an embodiment, the system 102 may be distributed between the cloud sever, for example, a cloud server 108 and a GPS logging device that may be on-board the automobile. For example, a system 102a may be embodied in the cloud server, and a system 102b may be installed in the on-board GPS logging device. The system 102a and the system 102b may be collectively referred to as the system 102.

    [0023] The system 102 may be implemented in a variety of computing systems, such as a laptop computer, a desktop computer, a notebook, a workstation, a mainframe computer, a server, a network server, and the like. The system 102a may receive the GPS data from multiple devices such as one or more GPS logging devices and/or machines 106a 106b, and so on, collectively referred to as GPS devices 104 hereinafter. Examples of the GPS devices 104 may include, but are not limited to, GPS tracker, a portable computer, a personal digital assistant, a handheld device, a workstation, GPS sensor embodying devices, as storage devices equipped in the machines to store the GPS data, and so on. The GPS devices 104 are communicatively coupled to the system 102 through a network 106.

    [0024] In one implementation, the network 106 may be a wireless network, a wired network or a combination thereof. The network 106 can be implemented as one of the different types of networks, such as intranet, local area network (LAN), wide area network (WAN), the internet, and the like. The network 106 may either be a dedicated network or a shared network. The shared network represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), and the like, to communicate with one another. Further the network 106 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like.

    [0025] The GPS devices 104 may send GPS data to the system 102 via the network 106. The system 102 is caused to analyze the GPS data associated with the automobile trip for driver profiling. In an embodiment, the GPS data may be sent to the system 102 upon completion of the trip. Alternatively, the GPS data may be sent to the system 102 upon elapse of predefined time period. For instance the GPS data may be sent to the system 102 after every one hour during the trip. An example implementation of the system 102 for driver profiling is described further with reference to FIG. 2.

    [0026] FIG. 2 illustrates a block diagram of a system 200 for driver profiling, in accordance with an embodiment of the present disclosure. The system 200 includes or is otherwise in communication with one or more hardware processors such as a processor 202a, 202b; one or more memories such as a memory 204a, 204b; user interfaces such as a user interface 206a, 206b, and a network interface unit such as a network interface unit 208a, 208b. In an embodiment, the processor 202a, the memory 204a, the user interface 206a, and the network interface unit 208a may be coupled by a system bus such as a system bus 210a or a similar mechanism.

    [0027] Herein, the hardware processor 202a, the memory 204a, the UI 206a, the network interface 208a and the system bus 210a may be embodied in a GPS device, for example the GPS device 104 (of FIG. 1), and hence the hardware processor 202a, the memory 204a, the UI 206a and the network interface 208a may be collectively referred to as GPS system 212 or the system 212. Also, since the GPS system 212 is embodied in a computation device, the terms 'GPS system 212', 'system 212' and 'computation device 212' can be used interchangeably throughout the description.

    [0028] The hardware processor 202b, the memory 204b, and the UI 206b may be embodied in a cloud server, for example the cloud server 108 (of FIG. 1). In an embodiment, the processor 202b, the memory 204b, the user interface 206b, and the network interface unit 208b may be coupled by a system bus such as a system bus 210b or a similar mechanism. Herein, the hardware processor 202b, the memory 204b, the user interface 206b, and the network interface unit 208b and the system bus 210b are embodied in a cloud server, and hence the hardware processor 202b, the memory 204b, the user interface 206b, and the network interface unit 208b and the system bus 210b may be collectively referred to as cloud server 250 or the system 250. The GPS system 212 and the cloud server system 250 may communicate over a communication network, for example the communication network 295. The communication network 295 is an example of the network 106 (FIG. 1).

    [0029] The hardware processors 202a and/or 202b may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the hardware processors 202a and/or 202b are configured to fetch and execute computer-readable instructions stored in the memory 204a and/or 204, respectively.

    [0030] The processor 202a/202b may include circuitry implementing, among others, audio and logic functions associated with the communication. For example, the processors 202a and/or 202b may include, but are not limited to, one or more digital signal processors (DSPs), one or more microprocessor, one or more special-purpose computer chips, one or more field-programmable gate arrays (FPGAs), one or more application-specific integrated circuits (ASICs), one or more computer(s), various analog to digital converters, digital to analog converters, and/or other support circuits. The processors 202a and/or 202b thus may also include the functionality to encode messages and/or data or information. The processors 202a and/or 202b may include, among other things, a clock, an arithmetic logic unit (ALU) and logic gates configured to support operation of the processors 202a and/or 202b. Further, the processors 202a and/or 202b may include functionality to execute one or more software programs, which may be stored in the memories 204a and/or 204b or otherwise accessible to the processor 202a and/or 202b.

    [0031] The I/O interfaces 206a and/or 206b may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. Further, the I/O interface 206a and/or 206b may enable the system 212 and 250, respectively to communicate with other computing devices, such as web servers and external data servers (not shown), and amongst each other. The I/O interfaces 206a and/or 206b may facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, or satellite. The I/O interfaces 206a and/or 206b may include one or more ports for connecting a number of devices to one another or to another server.

    [0032] The memories 204a and/or 204b may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.

    [0033] In an embodiment, the memory 204a includes a plurality of modules 220 and a repository 230 for storing data processed, received, and generated by one or more of the modules. The modules 220 may include routines, programs, objects, components, data structures, and so on, which perform particular tasks or implement particular abstract data types. In one implementation, the modules 220 may include a GPS data logging module 222, a query module 224, a first feature computation module 226, and other modules 228. The modules 220 may also include programs or coded instructions that supplement applications and functions of the system 212.

    [0034] The repository 230, amongst other things, includes a system database 232 and other data 234. The other data 234 may include data generated as a result of the execution of one or more modules in the other modules 210. The repository 230 is further configured to include logged GPS data 236 and a first set of features 236 computed at the system 212. The GPS data 236 and a first set of features 236 are described further in the description.

    [0035] In an embodiment, the memory 204b includes a plurality of modules 260 and a repository 280 for storing data processed, received, and generated by one or more of the modules. The modules 260 may include routines, programs, objects, components, data structures, and so on, which perform particular tasks or implement particular abstract data types. In one implementation, the modules 260 may include a feature ranking module 262, a GPS data receiving module 264, a query module 266, a second feature computation module 268, a driver profile identification module 270 and other modules 272. The other modules 272 may include programs or coded instructions that supplement applications and functions of the system 250.

    [0036] The repository 280, amongst other things, includes a system database 282 and other data 284. The other data 284 may include data generated as a result of the execution of one or more modules in the other modules 260. The repository 280 is further configured to include GPS data 286 associated with previous trips, GPS data 288 for the trip, a second set of features 292 computed at the system 250, and a cluster data 294. The GPS data 286, GPS data 288, the second set of features 292, and the cluster data 294 are described further in the description.

    [0037] The memories 204a and/or 204b may include for example, volatile memory and/or non-volatile memory. Examples of volatile memory may include, but are not limited to volatile random access memory (RAM). The non-volatile memory may additionally or alternatively comprise an electrically erasable programmable read only memory (EEPROM), flash memory, hard drive, or the like. Some examples of the volatile memory includes, but are not limited to, random access memory, dynamic random access memory, static random access memory, and the like. Some example of the non-volatile memory includes, but are not limited to, hard disks, magnetic tapes, optical disks, programmable read only memory, erasable programmable read only memory, electrically erasable programmable read only memory, flash memory, and the like. The memories 204a and/or 204b may be configured to store information, data, applications, instructions or the like for enabling the systems 210 and 250, respectively to carry out various functions in accordance with various example embodiments. Additionally or alternatively, the memory 204 may be configured to store instructions which when executed by the processors 202a and/or 202b causes the systems 210 and 250 to behave in a manner as described in various embodiments.

    [0038] Herein, the memory for example the memory and the computer program code configured to, with the hardware processor for example the processor, causes the respective system to perform various functions described herein under. For example, the memory for example the memory 204a and the computer program code configured to, with the hardware processor for example the processor 202a, causes the system 212 to perform various functions described herein under. Also, the memory for example the memory 204b and the computer program code configured to, with the hardware processor for example the processor 202b, causes the system 250 to perform various functions described herein under.

    [0039] The system 212 is caused to acquire GPS data, via the network interface unit 208a. In an example embodiment, the system 212 may include a GPS receiver for acquiring the GPS data. In another embodiment, the system 212 may be embodied in a communication device, for example, a smartphone that can be utilized for acquiring the GPS data. In an embodiment, the communication device may include hardware and software that may be collectively be configured to host an IT application for acquiring the GPS data. In an embodiment, the system 212 is caused to log the acquired GPS data. For example, the GPS data logging module 222 of the system 212 logs the GPS data 236. Alternatively, the GPS data can be logged in the memory 204a of the system 212.

    [0040] In an embodiment, the system 212 is caused to initiate acquiring the GPS data on detection of a start event of the trip till an end of the trip. In an embodiment, the system 212 may be caused to detect an automobile start event if GPS speed is greater than or equal to a predetermined threshold value of said speed. In an example embodiment, the predetermined threshold value of GPS speed may be 3m/s. Additionally or alternatively, the system 212 may be caused to consider a trip of duration more than a predetermined value of trip duration as a valid trip for logging the GPS data therefor. For instance, a trip determined to be less than 20s duration may be discarded and not considered as a valid trip. In an embodiment, the system 212 is caused to tag the GPS data acquired by an identifier that is indicative of the automobile associated with the system 212.

    [0041] The GPS device communicates the GPS data to the system 250 via the communication network 295. In an embodiment, the system 250 may be embodied in or is in communication with the cloud server, for example the cloud server 108 (FIG. 1). In an embodiment, the communication network may be an example of the network 106 (FIG. 1). In an embodiment, the system 212 is caused to communicate the GPS data to the system 250 upon completion of the trip. Alternatively, the GPS data may be sent to the system 250 upon elapse of predefined time period. For instance the GPS data may be sent to the system 250 after every one hour during the trip. In another embodiment, the GPS data may determine the event out of the, predetermined time period and completion of the trip, whichever is associated with lesser time to communicate the GPS data to the system 250.

    [0042] The system 250 is caused to store the GPS data 288 for the trip in the repository 280. For instance, the GPS data 288 may include the latitude, longitude, heading, altitude, timestamp, speed associated with the trip. In an embodiment, in case of multiple trips, the GPS data 288 for multiple trips may be segregated based on time duration between end event of previous trip and start event of subsequent trip by the automobile. In an example embodiment, said time duration mat be around three minutes. In addition, the repository 280 is caused to store the GPS data 286 associated with previously completed trips of the automobile. Herein, the previously complete trips corresponding to an automobile refers to the trips completed by a plurality of drivers associated with said automobile. For instance, for a personal automobile or a family automobile, three to four driver profiles may be associated with the automobile. However, for a commercial automobile 10-15 driver profiles may be associated with the automobile as these many drivers may be driving that particular automobile at different times

    [0043] The system 212 and the system 250 are caused to selectively compute a plurality of features associated with the trip based on the GPS data of the trip. In an embodiment, each of the system 212 and the system 250 may include a computation module, for example the first computation module 226 and the second computation module 268, respectively to compute the plurality of features associated with the trip. In an embodiment, the system 250 is caused to perform computationally complex feature computations while the system 212 is caused to perform relatively less computationally complex feature computations. In an embodiment, the computational complexity level of the plurality of features is determined at the system 250. In an embodiment, the system 250 is caused to assign a ranking to the plurality of features in order of computational complexity level thereof. Based on said ranking, the plurality of features may be categorized into a first set of features and a second set of features such that the first set of features may be associated with relatively less computation complexity as compared to the computation complexity of the second set of features. In an embodiment, the system 250 includes the feature ranking module 262 to determine the computational complexity level of the plurality of features. In an embodiment, the memory 204b may include a feature configuration data 290 having routines and/or algorithms and/or models to compute features from the GPS data. Additionally, the feature configuration data 290 includes a sorted feature list having the plurality of features sorted in order of computational complexity thereof. In addition to computing the second set of features, the system 250 is caused to compute the derived data and the multiple derivatives primary data and the derived data.

    [0044] In an embodiment, the computation of features associated with GPS data includes computation of a statistical data for the plurality of attributes of the GPS data. As previously described, the plurality of attributes includes primary data such as speed, acceleration and course associated with the trip; derived data such as Jerk data, lateral acceleration, angular speed, and jerk energy associated with the trip; and multiple derivatives of the primary data and the derived data. In an embodiment, the statistical data includes a plurality of statistical parameters associated with the plurality of attributes of the GPS data. For example, the plurality of statistical parameters includes mean, median, skewness, kurtosis, standard deviation, max, min, 97.5th percentile, Q3, Q1, and 2.5th percentile. Herein, the statistical data of the plurality of attributes forms the plurality of features associated with the GPS data of the trip. Some examples of the features may include, but are not limited to, Median of speed, Q1 of 1st difference of lateral acceleration, Kurtosis of 2nd difference of jerk energy, 2.5th percentile of 2nd difference of jerk energy, and so on.

    [0045] As previously described, the system 212 and the system 250 are caused to selectively compute the plurality of features based on a ranking assigned to said features, wherein the ranking is assigned based on a computational complexity of said features. The features that are associated with higher computational complexity are computed at the system 250 as the system is associated with infrastructure capable of supporting complex computations. Conversely, as the infrastructure capability of the system 212 may not support complex computations, and hence computations involving lesser complexity are performed at the system 212.

    [0046] In order to selectively compute a feature from amongst the first set of features, the system 212 is caused to determine whether one or more operational characteristics of the GPS device embodying the system 212 are within predetermined range of the operational characteristics. The one or more operational characteristics of the GPS device may include RAM usage, battery charge remaining, GPS device active usage status, and so on. An example of operational characteristics being within predetermined range may be Current RAM usage <50%, Battery charge remaining >40%, Device is not in active use (i.e. in a call, watching video, playing games for smartphone), and so on. It will be noted that the aforementioned operational characteristics and predetermined range thereof are provided for exemplary purposes, and shall not be construed as limiting to the present disclosure. In alternative embodiments, the operational characteristics and predetermined range may vary as per the application and GPS device.

    [0047] On determination that the operational characteristics are within predetermined range, the system 212 is caused to query to the system 250 and determine whether said feature is computed at the system 250. For example, system 212 may resolve a query, for example, 'Is this feature already computed'. In an embodiment, the system 250 includes the feature state query module 266 to query to the system 250 and determine whether said feature is computed at the system 250. In an embodiment, prior to computation of any feature at the system 212, the system 212 queries the feature state query module 266 to determine whether the feature is already computed by the system 250, and on determination that the feature is not computed at the system 250, system 212 is caused to compute said feature. Alternately, if it is determined that said feature is already computed at the system 250, the system 212 may consider a next feature for computation, thereby facilitating in reducing computation overload on the system 212. Additionally or alternatively, the system 212 is caused to compute the first and the second derivative of each of the primary data and derived data only when said first and the second derivatives are used for feature extraction. In converse, the system 250 is caused to compute the all the first and second derivatives at the beginning of computation. Said selective computation of the features by the systems 212 and 250 facilitates in lowering RAM and storage usage thereby improving battery performance.

    [0048] The feature state query module 266 is further configured to store values of the first set of features computed at the system 212. The feature state query module 266 receives information such as the trip name or ID, feature name and value pair via the communication network 295 and stores said information corresponding to specified trip into the repository 280.

    [0049] The system 250 is caused to compare the plurality of features associated with the trip with the precomputed features data, and in accordance identify a driver profile from amongst the set of driver profiles corresponding to the trip. In an embodiment, the system includes the driver profile identification module 270 for identifying the driver profile associated with the trip. The driver profile identification module 270 utilizes a scoring mechanism that utilized the computed features for the trip and the precomputed features data associated with the previously completed trips. The profile identification module 270 computes said score for the plurality of driver profiles associated with the automobile, and identifies a driver profile having the maximum score as the driver profile corresponding to the trip. The assignment of score to the plurality of driver profiles and selection of a driver profile therefrom that is associated with the highest score is explained in detail below.

    [0050] The system 250 is caused to perform driver profiling by first clustering the plurality of features from amongst the previously computed features associated with the set of driver profiles into a set of first clusters based on a value of said feature. It will be noted herein, that each feature of the plurality of features can be clustered into one or more first clusters from amongst the set of first clusters based on the value of said feature. Each first cluster of the set of first clusters corresponding to a feature of the plurality of features is represented by a highest value and a lowest value based of said feature. For example, a first cluster of the set of first clusters may include features having values between 'a' and 'b', then said first cluster can be represented as a value pair (a, b). The difference of the highest value and the lowest value of the value pair defines a distance of said first cluster. For example, in the aforementioned example, the distance of the cluster is (b-a). In an embodiment, the set of first clusters may be stored as the cluster data 294 in the repository 280.

    [0051] From all the features of a driver each feature can be clustered into one or more clusters. Such clustering is done for each feature for a particular driver. In an embodiment, the profile identification module 270 clusters the plurality of features of the current trip into a set of second clusters based on a value of said feature. Each feature of the plurality of features is clustered into one or more second clusters based on the value of said feature. Each second cluster of the set of second clusters corresponding to a feature of the plurality of features is associated with a highest value and a lowest value based of said feature. A difference of the highest value and the lowest value defines the distance of said second cluster.

    [0052] The profile identification module 270 omits outliers from the first set of clusters and the second set of clusters so as to obtain an optimal data set for further processing and driver profiling. As an example, the profile identification module 270 may omit 10% of entire data, which may include 5% of the lowest values and 5% of highest values of the set of first features and the set of second features. It will be understood that the outlier omission is performed for optimization of data for further computations, however, in alternative embodiments, the data set including the set of first clusters and the set of second clusters can be directly utilized for further analysis and processing.

    [0053] The profile identification module 270 obtains a relative variation between the one or more second clusters and the one or more first clusters based on the distance of the first cluster and the distance of the second cluster. The profile identification module 270 obtains a set of relevant features from amongst the plurality of features based on a comparison of the relative distance of each feature of the plurality of features with a threshold value of relative distance.

    [0054] As an example, let x denotes the value of a feature (after outlier omission) for a driver profile. Then let for that driver profile there are 'm' clusters for feature 'x'. The 'm' clusters are the set of second clusters for the driver profile in consideration.

    [0055] Let there be 'n' clusters for feature 'x' when all values of feature are considered. This implies that n clusters are the set of first clusters, (i.e. for the plurality of driver profiles).

    [0056] Herein m,n >=1.

    [0057] It will be understood that the set of second clusters are global clusters, not dependent on any particular driver profile, and are same for the plurality of driver profiles. As previously described, a cluster is denoted by an ordered pair (a, b); b> a
    Where 'a' is the lowest value of feature in that cluster, and 'b' be the highest value of feature in that cluster. So, there are m such ordered pairs for each driver profile, and 'n' such ordered pairs for features of the plurality of driver profiles. Since data for all drivers include each driver surely m of such clusters is included in n clusters.

    [0058] For driver profile identification, the relative variation between the one or more second clusters and the one or more first clusters is determined based on the distance of said clusters. For example, cluster variation of i-th cluster (i = 1:m) may be determined as follows. Let i-th cluster may be denoted by (ai, bi), then length of said cluster can be defined as (bi - ai). Said cluster may belong to j-th global cluster for feature x. j= 1:n, let j-th cluster be denoted by (Aj,Bj). Then relative variation of i-th first cluster may be determined as:

    So for m = (3.5, 4.1) and n= (4.3, 4.5)

    Sum of RVi may be denoted bt RVx = sum(RVi) for i = 1 :m

    [0059] The system 250 is caused to obtain values of relative variation for each of the plurality of driver profiles (i.e., the set of second clusters) with respect to the values of the set of first clusters, and determine relevant features for each of the plurality of driver profiles. For example, for a feature x if RVx > 0.6, then that feature can be discarded. Accordingly, the features having values of RVx =< 0.6, may be considered for selecting relevant features for a particular driver profile.

    [0060] For each relevant feature of the set of relevant features, the system 250 is caused to obtain a set of driver profiles having feature value of relevant feature with a predetermined range for said relevant feature. The system 250 is then caused to identify, from amongst the set of driver profiles, the driver profile corresponding to the trip based on the relevancy score.

    [0061] In an example embodiment, the system 250 may be caused to construct a feature list corresponding to each driver profile of the plurality of driver profiles, wherein the feature list includes a list of relevant features for corresponding driver profiles. For example, for a driver profile D, there may be k relevant features. If out of these, l feature values falls in predetermined range, the relevancy score for driver D may be l/k. The system 250 is caused to compute the relevancy score for the plurality of driver profiles. The system may be caused to identify a driver profile from the plurality of driver profiles as the driver profile associated with the trip based on the relevancy score. For example the driver profile associated with maximum relevancy score may be identified as the driver profile of the driver driving the automobile during the trip. In an embodiment, the system 250 is caused to store the identified driver profile corresponding to the trip, a feature subset corresponding to the driver profile, and the relevancy score computed for the trip corresponding to the driver profile, in the repository 280.

    [0062] Herein, an advantage of storing the information such as the identified driver profile, relevancy score and the feature subset corresponding to the trip is that said information gets updated in the repository 280 and can be accessed or taken into consideration when next trip is to be analyzed. According, the disclosed system dynamically adjusts with each incoming data associated with automobile trips. In an embodiment, further analytics / API can be configured and results be published by utilizing the information stored in the repository. Said results can be accessed using API calls and web based interface towards driver behavior classification and trip level aberration detection. An example of driver profile identification based on the disclosed embodiments is described further with reference to FIG. 5.

    [0063] FIG. 3 illustrates a flow diagram of a method 300 for driver profiling, in accordance with the present disclosure. The method 300 may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, functions, etc., that perform particular functions or implement particular abstract data types. The method 300 may also be practiced in a distributed computing environment where functions are performed by remote processing devices that are linked through a communication network. The order in which the method 300 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 300, or an alternative method. Furthermore, the method 300 can be implemented in any suitable hardware, software, firmware, or combination thereof. In an embodiment, the method 300 depicted in the flow chart may be executed by a system, for example, the system(s) 212 and 250 of FIG. 2.

    [0064] At 302, the method 300 includes selectively computing, based on GPS data captured during a trip, a plurality of features. Herein, selectively computing includes computing a first set of features from the plurality of features at the computation device and a second set of features from the plurality of features at a cloud server. The first set and the second set of features differs in a computational complexity level thereof. The plurality of features includes statistical data for a plurality of attributes of GPS data associated with the trip.

    [0065] At 304, the method 300 includes storing the plurality of features corresponding to the trip at a feature database of the cloud server, the feature database further comprising precomputed features data associated with a set of driver profiles for a plurality of completed trips.

    [0066] At 306, the method 300 includes identifying, from amongst the set of driver profiles, a driver profile corresponding to the trip based on a comparison of the plurality of features and the precomputed features data. A detailed method for identifying the driver profile corresponding to the trip is explained further with reference to FIG. 4.

    [0067] FIG. 4 illustrates a flow diagram of a method 400 for identifying a driver profile corresponding to a trip for driver profiling, in accordance with the present disclosure. The method 400 may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, functions, etc., that perform particular functions or implement particular abstract data types. The method 400 may also be practiced in a distributed computing environment where functions are performed by remote processing devices that are linked through a communication network. The order in which the method 400 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 400, or an alternative method. Furthermore, the method 400 can be implemented in any suitable hardware, software, firmware, or combination thereof. In an embodiment, the method 400 depicted in the flow chart may be executed by a system, for example, the system(s) 212 and 250 of FIG. 2.

    [0068] At 402, the method 400 includes clustering the plurality of features of the previously computed features data associated with the plurality of driver profiles into a set of first clusters. Each feature of the plurality of features is clustered into one or more first clusters from amongst the plurality of first clusters based on a value of said feature. Each first cluster of the plurality of first clusters corresponds to a feature of the plurality of features associated with a highest value and a lowest value based of said feature, such that a difference of the highest value and the lowest value defines a distance of said first cluster.

    [0069] From all the features of a driver each feature can be clustered into one or more clusters. Such clustering is done for each feature for a particular driver. At 404, the method 400 includes clustering the plurality of features associated with a driver profile into a set of second clusters. Each feature of the plurality of features is clustered into one or more second clusters based on a value of said feature. Each second cluster of the set of second clusters corresponds to a feature of the plurality of features associated with a highest value and a lowest value based of said feature. A difference of the highest value and the lowest value defining a distance of said second cluster. In an embodiment, outliers may be omitted from the first set of clusters and the second set of clusters so as to obtain an optimal data set for further processing and driver profiling.

    [0070] At 406, the method 400 includes obtaining a relative variation between the one or more second clusters and the one or more first clusters based on the distance of the first cluster and the distance of the second cluster. At 408, the method 400 includes obtaining, corresponding to each driver profile of the plurality of driver profiles, a set of relevant features from amongst the plurality of features based on a comparison of the relative distance of each feature of the plurality of features with a threshold value of relative distance. At 410, the method 400 includes for each relevant feature of the set of relevant features, obtaining a set of driver profiles having feature value of the relevant feature within a predetermined range. At 412, the method 400 includes computing a relevancy score for each driver profile from amongst the set of driver profiles based on a determination of corresponding feature value of the relevant features to be within corresponding predetermined range for said relevant feature. At 414, the method 400 includes identifying, based on the relevancy score, the driver profile from amongst the set of driver profiles corresponding to the trip.

    [0071] FIG. 5 illustrates example of driver profile identification, in accordance with an example embodiment. Herein, for conducting the driver profiling, a set of drivers is considered. Each of the driver is associated with a corresponding driver profiles, and the driver profiles for the set of drivers are stored in a repository, for example the repository 280 of FIG. 2. For various trips made by said drivers, a confusion matrix is obtained. As is already understood in the art, in the field of machine learning and specifically the problem of statistical classification, a confusion matrix, also known as an error matrix, is a specific table layout that allows visualization of the performance of an algorithm, typically a supervised learning one (in unsupervised learning it is usually called a matching matrix). Each column of the matrix represents the instances in a predicted class while each row represents the instances in an actual class (or vice versa). Examples of said confusion matrices 510, 520, 530, 540, are illustrated with reference to FIG. 5.

    [0072] An observation of the confusion matrices obtained by driver profiling system is that in confusion matrix 510, the values at matrix locations 21 (meaning thereby, cell at row-2, column-1) 12 (meaning thereby, the cell at row-1, column-2) are both '1' (hence, are same), thereby indicating that disclosed system is capable of detecting the similar correlation for driver profiles that may be determined to have similar driving behavior. Also for confusion matrices 520, 530, 540, most of non-diagonal values are zero, thereby indicating that the disclosed system is robust in determining driving patterns or characteristics corresponding to distinct driving profiles.

    [0073] Various embodiments disclosed herein provide method and system for driver profiling corresponding to an automobile trip. Herein, the embodiments disclose utilizing cloud based infrastructure for computation of features from GPS data, and accordingly identification of driver driving an automobile during a particular trip. Since the embodiments relies primarily on GPS data for processing and driver detection (and precludes need for various other sensors), a significant cost advantage is achieved over conventional systems. Another significant outcome of disclosed embodiments is that the computations are selectively performed at (1) a computation device such as a GPS logger that can be placed in a moving vehicle arbitrary orientation, and (2) a cloud server for most of computationally complex computations, thereby enabling dynamic memory and RAM usage. Moreover, selective computations facilitates in reducing computation load on the computation devices such as the GPS logger. Additionally, the embodiments disclose a systematic feature extraction approach from GPS data using statistical approach and evaluation of feature efficiency, thereby providing a robust mechanism to characterize driving style drivers, as explained with reference to FIG. 5.

    [0074] The written description describes the subject matter herein to enable any person skilled in the art to make and use the embodiments. The scope of the subject matter embodiments is defined by the claims and may include other modifications that occur to those skilled in the art.

    [0075] The embodiments herein can comprise hardware and software elements. The embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc. The functions performed by various modules described herein may be implemented in other modules or combinations of other modules. For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.

    [0076] The preceding description has been presented with reference to various embodiments. Persons having ordinary skill in the art and technology to which this application pertains will appreciate that alterations and changes in the described structures and methods of operation can be practiced without meaningfully departing from scope of the invention, as defined by the appended claims.


    Claims

    1. A processor implemented method for driver profiling corresponding to an automobile trip, the method comprising:

    capturing and storing Global Positioning system (GPS) data associated to the automobile trip;

    identifying a plurality of features associated with the GPS data;

    ranking, in a cloud server (250), each feature of said plurality of features based on computational complexity level associated with the computation of said feature and categorising said plurality of features based on the ranking, into a first set of features and a second set of features, wherein the computational complexity of the first set of features is lower than the computational complexity of the second set of features;

    computing, via a first hardware processor (202a) associated with a computation device (212) and a second hardware processor (202b) associated with the cloud server (250), the first set of features from the plurality of features at the computation device (212) and the second set of features from the plurality of features at the cloud server (250), wherein the plurality of features comprises statistical data for a plurality of attributes computed from the GPS data associated with the automobile trip, wherein the plurality of attributes comprises a primary data captured during the automobile trip, a derived data derived from the primary data, and multiple derivatives of the primary data and the derived data, and wherein the primary data comprises data that is directly captured using the GPS data comprising speed, acceleration and course associated with the automobile trip, wherein the derived data and the multiple derivatives of the primary data and the derived data are computed at the cloud server, wherein the derived data comprises jerk data, lateral acceleration, angular speed, and jerk energy associated with the trip, and wherein the statistical data comprises a plurality of statistical parameters associated with the plurality of attributes computed from the GPS data;

    storing, via the first hardware processor and the second hardware processor, the plurality of features corresponding to the automobile trip at a repository associated with the cloud server, the repository further comprising previously computed features data associated with a set of driver profiles for a plurality of completed trips;

    clustering the plurality of features of the previously computed features data associated with the plurality of driver profiles into a set of first clusters based on a value pair of each feature, wherein each first cluster of the plurality of first clusters corresponding to the feature of the plurality of features is represented by the value pair comprising a highest value and a lowest value of said feature, and wherein a difference of the highest value and the lowest value is defining a distance of said first cluster;

    clustering the plurality of features associated with a driver profile corresponding to the automobile trip into a set of second clusters based on a value pair of said feature, wherein each second cluster of the set of second clusters corresponding to the feature of the plurality of features is represented by the value pair comprising a highest value and a lowest value based on said feature, and wherein a difference of the highest value and the lowest value defining a distance of said second cluster;

    obtaining a relative variation between the one or more second clusters and the one or more first clusters based on the distance of the first cluster and the distance of the second cluster;

    obtaining, corresponding to each driver profile of the plurality of driver profiles, a set of relevant features from amongst the plurality of features based on a comparison of distance of each feature of the plurality of features with a threshold value of the distance;

    for each relevant feature of the set of relevant features, obtaining a set of driver profiles having the value of the relevant feature within a predetermined range;

    computing a relevancy score for each driver profile from amongst the set of driver profiles based on the determination of the corresponding value of the relevant features to be within the corresponding predetermined range for said relevant feature; and

    identifying, based on the relevancy score, from amongst the set of driver profiles, the driver profile corresponding to the trip.


     
    2. The method as claimed in claim 1, further comprising storing the first set of features at a repository associated with the computation device.
     
    3. The method as claimed in claim 1, wherein computing the first set of features at the computation device comprises:

    checking whether one or more operational characteristics of the computation device are within a predetermined range of the operational characteristics;

    on determining the operational characteristics to be within the predetermined range, querying to the cloud server for each feature of the first set of features to determine whether said feature is computed at the cloud server; and

    computing said feature at the computation device on determination that the feature is not computed at the cloud server.


     
    4. The method as claimed in claim 1, wherein the plurality of statistical parameters comprises mean, median, skewness, kurtosis, standard deviation, max, min, and percentile, 97.5th percentile, Q3, Q1, and 2.5th percentile, Q1 of 1st difference of lateral acceleration, Kurtosis of 2nd difference of jerk energy, 2.5th percentile of 2nd difference of jerk energy.
     
    5. The method as claimed in claim 1, further comprising omitting outliers from the set of first clusters and the set of second clusters prior to obtaining the relative variation between the one or more second clusters and the one or more first clusters.
     
    6. The method as claimed in claim 1, further comprising, storing in the repository of the cloud server, the driver profile corresponding to the trip and a feature subset corresponding to the driver profile.
     
    7. A system for driver profiling corresponding to an automobile trip, the system comprising:

    a first memory (204a) associated with a computation device (212) and a second memory (204b) associated with a cloud server (108) for storing instructions; and

    a first hardware processor (202a) coupled to the first memory (204a) and a second hardware processor (202b) coupled to the second memory (204b), wherein said first and second hardware processors are configured by said instructions to:

    capture and store Global Positioning system (GPS) data associated to the automobile trip;

    identify a plurality of features associated with the GPS data;

    rank, in a cloud server (250), each feature of said plurality of features based on computational complexity level associated with the computation of said feature and categorise said plurality of features based on the ranking, into a first set of features and a second set of features, wherein the computational complexity of the first set of features is lower than the computational complexity of the second set of features;

    compute, the first set of features from the plurality of features at the computation device (212) and the second set of features from the plurality of features at the cloud server (250), wherein the plurality of features comprises statistical data for a plurality of attributes computed from the GPS data associated with the automobile trip, wherein the plurality of attributes comprises a primary data captured during the automobile trip, a derived data derived from the primary data, and multiple derivatives of the primary data and the derived data, and wherein the primary data comprises data that is directly captured using the GPS data comprising speed, acceleration and course associated with the automobile trip, wherein the derived data and the multiple derivatives of the primary data and the derived data are computed at the cloud server, wherein the derived data comprises jerk data, lateral acceleration, angular speed, and jerk energy associated with the trip, and wherein the statistical data comprises a plurality of statistical parameters associated with the plurality of attributes computed from the GPS data;

    store the computed plurality of features corresponding to the automobile trip at a repository associated with the cloud server, the repository further comprising previously computed features data associated with a set of driver profiles for a plurality of completed trips; and

    cluster the plurality of features of the previously computed features data associated with the plurality of driver profiles into a set of first clusters based on a value pair of each feature, wherein each first cluster of the plurality of first clusters corresponding to the feature of the plurality of features is represented by the value pair comprising a highest value and a lowest value of said feature, and wherein a difference of the highest value and the lowest value is defining a distance of said first cluster;

    cluster the plurality of features associated with a driver profile corresponding to the automobile trip into a set of second clusters based on a value pair of said feature, wherein each second cluster of the set of second clusters corresponding to the feature of the plurality of features is represented by the value pair comprising a highest value and a lowest value based on said feature, and wherein a difference of the highest value and the lowest value defining a distance of said second cluster;

    obtain a relative variation between the one or more second clusters and the one or more first clusters based on the distance of the first cluster and the distance of the second cluster;

    obtain, corresponding to each driver profile of the plurality of driver profiles, a set of relevant features from amongst the plurality of features based on a comparison of the distance of each feature of the plurality of features with a threshold value of the distance;

    for each relevant feature of the set of relevant features, obtain a set of driver profiles having the value of the relevant feature within a predetermined range;

    compute a relevancy score for each driver profile from amongst the set of driver profiles based on the determination of the corresponding value of the relevant features to be within the corresponding predetermined range for said relevant feature; and

    identify, based on the relevancy score, from amongst the set of driver profiles, the driver profile corresponding to the trip.


     
    8. The system as claimed in claim 7, wherein to compute the first set of features at the computation device, the first hardware processors (202a) and the second hardware processor (202b) are configured by said instructions to:

    check whether one or more operational characteristics of the computation device are within a predetermined range of the operational characteristics;

    on determining the operational characteristics to be within the predetermined range, query to the cloud server for each feature of the first set of features to determine whether said feature is computed at the cloud server; and

    compute said feature at the computation device on determination that the feature is not computed at the cloud server.


     
    9. The system as claimed in claim 7, wherein the plurality of statistical parameters comprises mean, median, skewness, kurtosis, standard deviation, max, min, and percentile, 97.5th percentile, Q3, Q1, and 2.5th percentile, Q1 of 1st difference of lateral acceleration, Kurtosis of 2nd difference of jerk energy, 2.5th percentile of 2nd difference of jerk energy.
     
    10. The system as claimed in claim 7, wherein the first hardware processors (202a) and the second hardware processor (202b) are configured by said instructions to omit outliers from the first set of clusters and the second set of clusters prior to obtaining the relative variation between the one or more second clusters and the one or more first clusters.
     
    11. A non-transitory computer-readable medium having embodied thereon a computer program comprising instructions, which when executed in a first hardware processor (202a) associated with a computation device (212) and a second hardware processor (202b) associated with a cloud server (250), cause said processors to execute a method for driver profiling corresponding to an automobile trip, according to any of claims 1-6.
     


    Ansprüche

    1. Prozessorimplementiertes Verfahren zur Erstellung eines Fahrerprofils, das einer Autofahrt entspricht, wobei das Verfahren umfasst:

    Erfassen und Speichern von Daten eines globalen Positionsbestimmungssystems, GPS, die mit der Autofahrt assoziiert sind;

    Identifizieren einer Mehrzahl von Merkmalen, die mit den GPS-Daten assoziiert sind.

    Erzeugung einer Rangordnung jedes Merkmals aus der Mehrzahl von Merkmalen in einem Cloudserver (250) basierend auf einem Berechnungskomplexitätsgrad, der mit der Berechnung des Merkmals assoziiert ist, und Einteilen der Mehrzahl von Merkmalen basierend auf der Rangordnung in einen ersten Satz von Merkmalen und einen zweiten Satz von Merkmalen, wobei die Berechnungskomplexität des ersten Satzes von Merkmalen niedriger als die Berechnungskomplexität des zweiten Satzes von Merkmalen ist;

    Berechnen durch einen ersten Hardwareprozessor (202a), der mit einer Berechnungsvorrichtung (212) assoziiert ist, und einen zweiten Hardwareprozessor (202b), der mit dem Cloudserver (250) assoziiert ist, des ersten Satzes von Merkmalen aus der Mehrzahl von Merkmalen bei der Berechnungsvorrichtung (212) und des zweiten Satzes von Merkmalen aus der Mehrzahl von Merkmalen bei dem Cloudserver (250), wobei die Mehrzahl von Merkmalen statistische Daten für eine Mehrzahl von Attributen umfasst, die aus den mit der Autofahrt assoziierten GPS-Daten berechnet wird, wobei die Mehrzahl von Attributen Primärdaten, die während der Autofahrt erfasst werden, abgeleitete Daten, die von den Primärdaten abgeleitet werden, und mehrfache Ableitungen der Primärdaten und der abgeleiteten Daten umfasst, und wobei die Primärdaten Daten umfassen, die unter Verwendung der GPS-Daten direkt erfasst werden und Geschwindigkeit, Beschleunigung und Fahrtrichtung umfassen, die mit der Autofahrt assoziiert sind, wobei die abgeleiteten Daten und die mehrfachen Ableitungen der Primärdaten und der abgeleiteten Daten bei dem Cloudserver berechnet werden, wobei die abgeleiteten Daten Stoßdaten, Querbeschleunigung, Winkelgeschwindigkeit und Stoßenergie umfassen, die mit der Fahrt assoziiert sind, und wobei die statistischen Daten eine Mehrzahl von statistischen Parametern umfassen, die mit der Mehrzahl von Attributen assoziiert ist, die aus den GPS-Daten berechnet wird;

    Speichern durch den ersten Hardwareprozessor und den zweiten Hardwareprozessor der Mehrzahl von Merkmalen, die der Autofahrt entsprechen, in einem Repository, das mit dem Cloudserver assoziiert ist, wobei das Repository ferner früher berechnete Merkmalsdaten umfasst, die mit einem Satz von Fahrerprofilen für eine Mehrzahl von durchgeführten Fahrten assoziiert sind;

    Clustern der Mehrzahl von Merkmalen der früher berechneten Merkmalsdaten, die mit der Mehrzahl von Fahrerprofilen assoziiert sind, zu einem Satz von ersten Clustern basierend auf einem Wertepaar jedes Merkmals, wobei jeder erste Cluster aus der Mehrzahl von ersten Clustern, der dem Merkmal aus der Mehrzahl von Merkmalen entspricht, durch das Wertepaar mit einem höchsten Wert und einem niedrigsten Wert des Merkmals repräsentiert wird, und wobei eine Differenz des höchsten Wertes und des niedrigsten Wertes eine Distanz des ersten Clusters definiert;

    Clustern der Mehrzahl von Merkmalen, die mit einem Fahrerprofil assoziiert ist, das der Autofahrt entspricht, zu einem Satz von zweiten Clustern basierend auf einem Wertepaar des Merkmals, wobei jeder zweite Cluster des Satzes von zweiten Clustern, der dem Merkmal aus der Mehrzahl von Merkmalen entspricht, durch das Wertepaar mit einem höchsten Wert und einem niedrigsten Wert basierend auf dem Merkmal repräsentiert wird, und wobei eine Differenz des höchsten Wertes und des niedrigsten Wertes eine Distanz des zweiten Clusters definiert;

    Erhalten einer relativen Abweichung zwischen dem einen oder den mehreren zweiten Clustern und dem einen oder den mehreren ersten Clustern basierend auf der Distanz des ersten Clusters und der Distanz des zweiten Clusters;

    Erhalten, entsprechend jedem Fahrerprofil aus der Mehrzahl von Fahrerprofilen, eines Satzes von relevanten Merkmalen aus der Mehrzahl von Merkmalen basierend auf einem Vergleich der Distanz jedes Merkmals aus der Mehrzahl von Merkmalen mit einem Schwellenwert der Distanz;

    Erhalten für jedes relevante Merkmal des Satzes von relevanten Merkmalen eines Satzes von Fahrerprofilen, bei denen der Wert des relevanten Merkmals innerhalb eines vorbestimmten Bereichs liegt;

    Berechnen einer Relevanzbewertung für jedes Fahrerprofil aus dem Satz von Fahrerprofilen basierend auf der Bestimmung, dass der entsprechende Wert der relevanten Merkmale innerhalb des entsprechenden vorbestimmten Bereichs für das relevante Merkmal ist; und

    Identifizieren des Fahrerprofils, das der Fahrt entspricht, aus dem Satz von Fahrerprofilen basierend auf der Relevanzbewertung.


     
    2. Verfahren nach Anspruch 1, ferner umfassend ein Speichern des ersten Satzes von Merkmalen in einem Repository, das mit der Berechnungsvorrichtung assoziiert ist.
     
    3. Verfahren nach Anspruch 1, wobei das Berechnen des ersten Satzes von Merkmalen an der Berechnungsvorrichtung umfasst:

    Prüfen, ob eine oder mehrere Betriebscharakteristiken der Berechnungsvorrichtung innerhalb eines vorbestimmten Bereichs der Betriebscharakteristiken liegen;

    Abfragen des Cloudservers bei Bestimmen, dass die Betriebscharakteristiken innerhalb des vorbestimmten Bereichs liegen, nach jedem Merkmal des ersten Satzes von Merkmalen, um zu bestimmen, ob das Merkmal am Cloudserver berechnet wird; und

    Berechnen des Merkmals an der Berechnungsvorrichtung bei einer Bestimmung, dass das Merkmal nicht am Cloudserver berechnet wird.


     
    4. Verfahren nach Anspruch 1,
    wobei die Mehrzahl von statistischen Parametern Mittelwert, Medianwert, Schiefe, Kurtosis, Standardabweichung, Maximum, Minimum und Perzentil, 97,5. Perzentil, Q3, Q1 und 2,5. Perzentil, Q1 von 1. Differenz von Querbeschleunigung, Kurtosis von 2. Differenz von Stoßenergie, 2,5. Perzentil von 2. Differenz von Stoßenergie umfasst.
     
    5. Verfahren nach Anspruch 1, ferner umfassend ein Weglassen von Ausreißern aus dem Satz von ersten Clustern und dem Satz von zweiten Clustern vor dem Erhalten der relativen Abweichung zwischen dem einen oder den mehreren zweiten Clustern und dem einen oder den mehreren ersten Clustern.
     
    6. Verfahren nach Anspruch 1, ferner umfassend ein Speichern des Fahrerprofils, das der Fahrt entspricht, und eines Merkmalsteilsatzes, der dem Fahrerprofil entspricht, im Repository des Cloudservers.
     
    7. System zur Erstellung eines Fahrerprofils, das einer Autofahrt entspricht, wobei das System umfasst:

    einen ersten Speicher (204a), der mit einer Berechnungsvorrichtung (212) assoziiert ist, und einen zweiten Speicher (204b), der mit einem Cloudserver (108) assoziiert ist, zum Speichern von Anweisungen; und

    einen ersten Hardwareprozessor (202a), der mit dem ersten Speicher (204a) gekoppelt ist, und einen zweiten Hardwareprozessor (202b), der mit dem zweiten Speicher (204b) gekoppelt ist, wobei der erste und der zweite Hardwareprozessor durch die Anweisungen konfiguriert sind zum:

    Erfassen und Speichern von Daten eines globalen Positionsbestimmungssystems, GPS, die mit der Autofahrt assoziiert sind;

    Identifizieren einer Mehrzahl von Merkmalen, die mit den GPS-Daten assoziiert sind;

    Erstellen einer Rangordnung jedes Merkmals aus der Mehrzahl von Merkmalen in einem Cloudserver (250) basierend auf einem Berechnungskomplexitätsgrad, der mit der Berechnung des Merkmals assoziiert ist, und Einteilen der Mehrzahl von Merkmalen basierend auf der Rangordnung in einen ersten Satz von Merkmalen und einen zweiten Satz von Merkmalen, wobei die Berechnungskomplexität des ersten Satzes von Merkmalen niedriger als die Berechnungskomplexität des zweiten Satzes von Merkmalen ist;

    Berechnen des ersten Satzes von Merkmalen aus der Mehrzahl von Merkmalen bei der Berechnungsvorrichtung (212) und des zweiten Satzes von Merkmalen aus der Mehrzahl von Merkmalen bei dem Cloudserver (250), wobei die Mehrzahl von Merkmalen statistische Daten für eine Mehrzahl von Attributen umfasst, die aus den mit der Autofahrt assoziierten GPS-Daten berechnet wird, wobei die Mehrzahl von Attributen Primärdaten, die während der Autofahrt erfasst werden, abgeleitete Daten, die von den Primärdaten abgeleitet werden, und mehrfache Ableitungen der Primärdaten und der abgeleiteten Daten umfasst, und wobei die Primärdaten Daten umfassen, die unter Verwendung der GPS-Daten direkt erfasst werden und Geschwindigkeit, Beschleunigung und Fahrtrichtung umfassen, die mit der Autofahrt assoziiert sind, wobei die abgeleiteten Daten und die mehrfache Ableitungen der Primärdaten und der abgeleiteten Daten bei dem Cloudserver berechnet werden, wobei die abgeleiteten Daten Stoßdaten, Querbeschleunigung, Winkelgeschwindigkeit und Stoßenergie umfassen, die mit der Fahrt assoziiert sind, und wobei die statistischen Daten eine Mehrzahl von statistischen Parametern umfassen, die mit der Mehrzahl von Attributen assoziiert ist, die aus den GPS-Daten berechnet wird;

    Speichern der berechneten Mehrzahl von Merkmalen, die der Autofahrt entsprechen, in einem Repository, das mit dem Cloudserver assoziiert ist, wobei das Repository ferner früher berechnete Merkmalsdaten umfasst, die mit einem Satz von Fahrerprofilen für eine Mehrzahl von durchgeführten Fahrten assoziiert sind; und

    Clustern der Mehrzahl von Merkmalen der früher berechneten Merkmalsdaten, die mit der Mehrzahl von Fahrerprofilen assoziiert sind, zu einem Satz von ersten Clustern basierend auf einem Wertepaar jedes Merkmals, wobei jeder erste Cluster aus der Mehrzahl von ersten Clustern, der dem Merkmal aus der Mehrzahl von Merkmalen entspricht, durch das Wertepaar mit einem höchsten Wert und einem niedrigsten Wert des Merkmals repräsentiert wird, und wobei eine Differenz des höchsten Wertes und des niedrigsten Wertes eine Distanz des ersten Clusters definiert;

    Clustern der Mehrzahl von Merkmalen, die mit einem Fahrerprofil assoziiert ist, das der Autofahrt entspricht, zu einem Satz von zweiten Clustern basierend auf einem Wertepaar des Merkmals, wobei jeder zweite Cluster des Satzes von zweiten Clustern, der dem Merkmal aus der Mehrzahl von Merkmalen entspricht, durch das Wertepaar mit einem höchsten Wert und einem niedrigsten Wert basierend auf dem Merkmal repräsentiert wird, und wobei eine Differenz des höchsten Wertes und des niedrigsten Wertes eine Distanz des zweiten Clusters definiert;

    Erhalten einer relativen Abweichung zwischen dem einen oder den mehreren zweiten Clustern und dem einen oder den mehreren ersten Clustern basierend auf der Distanz des ersten Clusters und der Distanz des zweiten Clusters;

    Erhalten, entsprechend jedem Fahrerprofil aus der Mehrzahl von Fahrerprofilen, eines Satzes von relevanten Merkmalen aus der Mehrzahl von Merkmalen basierend auf einem Vergleich der Distanz jedes Merkmals aus der Mehrzahl von Merkmalen mit einem Schwellenwert der Distanz;

    Erhalten für jedes relevante Merkmal des Satzes von relevanten Merkmalen eines Satzes von Fahrerprofilen mit dem Wert des relevanten Merkmals innerhalb eines vorbestimmten Bereichs;

    Berechnen einer Relevanzbewertung für jedes Fahrerprofil aus dem Satz von Fahrerprofilen basierend auf der Bestimmung, dass der entsprechende Wert der relevanten Merkmale innerhalb des entsprechenden vorbestimmten Bereichs für das relevante Merkmal liegt; und

    Identifizieren des Fahrerprofils, das der Fahrt entspricht, aus dem Satz von Fahrerprofilen basierend auf der Relevanzbewertung.


     
    8. System nach Anspruch 7, wobei der erste Hardwareprozessor (202a) und der zweite Hardwareprozessor (202b) durch die Anweisungen zum Berechnen des ersten Satzes von Merkmalen an der Berechnungsvorrichtung konfiguriert sind zum:

    Prüfen, ob eine oder mehrere Betriebscharakteristiken der Berechnungsvorrichtung innerhalb eines vorbestimmten Bereichs der Betriebscharakteristiken liegen;

    Abfragen des Cloudservers bei Bestimmen, dass die Betriebscharakteristiken innerhalb des vorbestimmten Bereichs liegen, nach jedem Merkmal des ersten Satzes von Merkmalen, um zu bestimmen, ob das Merkmal am Cloudserver berechnet wird; und

    Berechnen des Merkmals an der Berechnungsvorrichtung bei einer Bestimmung, dass das Merkmal nicht am Cloudserver berechnet wird.


     
    9. System nach Anspruch 7, wobei die Mehrzahl von statistischen Parametern Mittelwert, Medianwert, Schiefe, Kurtosis, Standardabweichung, Maximum, Minimum und Perzentil, 97,5. Perzentil, Q3, Q1 und 2,5. Perzentil, Q1 von 1. Differenz von Querbeschleunigung, Kurtosis von 2. Differenz von Stoßenergie, 2,5. Perzentil von 2. Differenz von Stoßenergie umfasst.
     
    10. System nach Anspruch 7, wobei der erste Hardwareprozessor (202a) und der zweite Hardwareprozessor (202b) durch die Anweisungen zum Weglassen von Ausreißern aus dem ersten Satz von Clustern und dem zweiten Satz von Clustern vor dem Erhalten der relativen Abweichung zwischen dem einen oder den mehreren zweiten Clustern und dem einen oder den mehreren ersten Clustern konfiguriert sind.
     
    11. Nicht-transientes computerlesbares Medium mit einem darauf enthaltenen Computerprogramm, das Anweisungen umfasst, die bei Ausführung in einem ersten Hardwareprozessor (202a), der mit einer Berechnungsvorrichtung (212) assoziiert ist, und einem zweiten Hardwareprozessor (202b), der mit einem Cloudserver (250) assoziiert ist, die Prozessoren zum Ausführen eines Verfahrens zur Erstellung eines Fahrerprofils, das einer Autofahrt entspricht, nach einem der Ansprüche 1 bis 6 veranlassen.
     


    Revendications

    1. Procédé, mis en Ĺ“uvre par processeur, pour un profilage de conducteurs correspondant à un trajet automobile, le procédé comprenant les étapes ci-dessous consistant à :

    capturer et stocker des données de système mondial de positionnement (GPS) associées au trajet automobile ;

    identifier une pluralité de caractéristiques associées aux données de système GPS ;

    classer, dans un serveur infonuagique (250), chaque caractéristique de ladite pluralité de caractéristiques sur la base d'un niveau de complexité de calcul associé au calcul de ladite caractéristique, et catégoriser ladite pluralité de caractéristiques sur la base du classement, en un premier ensemble de caractéristiques et un second ensemble de caractéristiques, dans lequel la complexité de calcul du premier ensemble de caractéristiques est inférieure à la complexité de calcul du second ensemble de caractéristiques ;

    calculer, par l'intermédiaire d'un premier processeur matériel (202a) associé à un dispositif de calcul (212), et d'un second processeur matériel (202b) associé au serveur infonuagique (250), le premier ensemble de caractéristiques parmi la pluralité de caractéristiques au niveau du dispositif de calcul (212), et le second ensemble de caractéristiques parmi la pluralité de caractéristiques au niveau du serveur infonuagique (250), dans lequel la pluralité de caractéristiques comprend des données statistiques pour une pluralité d'attributs calculés à partir des données de système GPS associées au trajet automobile, dans lequel la pluralité d'attributs comprend des données primaires capturées au cours du trajet automobile, et des données dérivées lesquelles sont dérivées des données primaires, et des dérivées multiples des données primaires et des données dérivées, et dans lequel les données primaires comprennent des données qui sont directement capturées en faisant appel aux données de système GPS comprenant une vitesse, une accélération et une trajectoire associées au trajet automobile, dans lequel les données dérivées et les dérivées multiples des données primaires et des données dérivées sont calculées au niveau du serveur infonuagique, dans lequel les données dérivées comprennent des données d'accélération transitoire, une accélération latérale, une vitesse angulaire et une énergie d'accélération transitoire associées au trajet, et dans lequel les données statistiques comprennent une pluralité de paramètres statistiques associés à la pluralité d'attributs calculés à partir des données de système GPS ;

    stocker, par l'intermédiaire du premier processeur matériel et du second processeur matériel, la pluralité de caractéristiques correspondant au trajet automobile, dans un référentiel associé au serveur infonuagique, le référentiel comprenant en outre des données de caractéristiques calculées précédemment associées à un ensemble de profils de conducteurs pour une pluralité de trajets effectués ;

    regrouper la pluralité de caractéristiques des données de caractéristiques calculées précédemment associées à la pluralité de profils de conducteurs, en un ensemble de premiers groupes, sur la base d'une paire de valeurs de chaque caractéristique, dans lequel chaque premier groupe de la pluralité de premiers groupes correspondant à la caractéristique de la pluralité de caractéristiques est représenté par la paire de valeurs comprenant une valeur la plus élevée et une valeur la plus basse de ladite caractéristique, et dans lequel une différence entre la valeur la plus élevée et la valeur la plus basse définit une distance dudit premier groupe ;

    regrouper la pluralité de caractéristiques associées à un profil de conducteur correspondant au trajet automobile, en un ensemble de seconds groupes, sur la base d'une paire de valeurs de ladite caractéristique, dans lequel chaque second groupe de l'ensemble de seconds groupes correspondant à la caractéristique de la pluralité de caractéristiques est représenté par la paire de valeurs comprenant une valeur la plus élevée et une valeur la plus basse sur la base de ladite caractéristique, et dans lequel une différence entre la valeur la plus élevée et la valeur la plus basse définit une distance dudit second groupe ;

    obtenir un écart relatif entre ledit un ou lesdites plusieurs seconds groupes et ledit un ou lesdits plusieurs premiers groupes, sur la base de la distance du premier groupe et de la distance du second groupe ;

    obtenir, pour chaque profil de conducteur de la pluralité de profils de conducteurs, un ensemble de caractéristiques pertinentes parmi la pluralité de caractéristiques, sur la base d'une comparaison de distance de chaque caractéristique de la pluralité de caractéristiques à une valeur de seuil de la distance ;

    pour chaque caractéristique pertinente de l'ensemble de caractéristiques pertinentes, obtenir un ensemble de profils de conducteurs dont la valeur de la caractéristique pertinente se situe dans une plage prédéterminée ;

    calculer un score de pertinence pour chaque profil de conducteur parmi l'ensemble de profils de conducteurs, sur la base de la détermination selon laquelle la valeur correspondante des caractéristiques pertinentes se situe dans la plage prédéterminée correspondante pour ladite caractéristique pertinente ; et

    identifier, sur la base du score de pertinence, parmi l'ensemble de profils de conducteurs, le profil de conducteur correspondant au trajet.


     
    2. Procédé selon la revendication 1, comprenant en outre l'étape consistant à stocker le premier ensemble de caractéristiques dans un référentiel associé au dispositif de calcul.
     
    3. Procédé selon la revendication 1, dans lequel l'étape de calcul du premier ensemble de caractéristiques au niveau du dispositif de calcul comprend les étapes ci-dessous consistant à :

    vérifier si une ou plusieurs caractéristiques opérationnelles du dispositif de calcul se situent dans une plage prédéterminée des caractéristiques opérationnelles ;

    dans le cadre d'une détermination selon laquelle les caractéristiques opérationnelles se situent dans la plage prédéterminée, interroger le serveur infonuagique pour chaque caractéristique du premier ensemble de caractéristiques en vue de déterminer si ladite caractéristique est calculée au niveau du serveur infonuagique ; et

    calculer ladite caractéristique au niveau du dispositif de calcul lorsqu'il est déterminé que la caractéristique n'est pas calculée au niveau du serveur infonuagique.


     
    4. Procédé selon la revendication 1, dans lequel la pluralité de paramètres statistiques comprend une moyenne, une médiane, une asymétrie, un aplatissement, un écart type, un maximum, un minimum et un centile, le 97,5e centile, Q3, Q1, et le 2,5e centile, Q1 de la première différence d'accélération latérale, l'aplatissement de la seconde différence d'énergie d'accélération transitoire, le 2,5e centile de la seconde différence d'énergie d'accélération transitoire.
     
    5. Procédé selon la revendication 1, comprenant en outre l'étape consistant à omettre des valeurs aberrantes de l'ensemble de premiers groupes et de l'ensemble de seconds groupes avant d'obtenir l'écart relatif entre ledit un ou lesdits plusieurs seconds groupes et ledit un ou lesdits plusieurs premiers groupes.
     
    6. Procédé selon la revendication 1, comprenant en outre l'étape consistant à stocker, dans le référentiel du serveur infonuagique, le profil de conducteur correspondant au trajet et un sous-ensemble de caractéristiques correspondant au profil de conducteur.
     
    7. Système de profilage de conducteurs correspondant à un trajet automobile, le système comprenant :

    une première mémoire (204a) associée à un dispositif de calcul (212) et une seconde mémoire (204b) associée à un serveur infonuagique (108) pour stocker des instructions ; et

    un premier processeur matériel (202a) couplé à la première mémoire (204a) et un second processeur matériel (202b) couplé à la seconde mémoire (204b), dans lequel lesdits premier et second processeurs matériels sont configurés de manière à :

    capturer et stocker des données de système mondial de positionnement (GPS) associées au trajet automobile ;

    identifier une pluralité de caractéristiques associées aux données de système GPS ;

    classer, dans un serveur infonuagique (250), chaque caractéristique de ladite pluralité de caractéristiques sur la base d'un niveau de complexité de calcul associé au calcul de ladite caractéristique, et catégoriser ladite pluralité de caractéristiques sur la base du classement, en un premier ensemble de caractéristiques et un second ensemble de caractéristiques, dans lequel la complexité de calcul du premier ensemble de caractéristiques est inférieure à la complexité de calcul du second ensemble de caractéristiques ;

    calculer le premier ensemble de caractéristiques parmi la pluralité de caractéristiques, au niveau du dispositif de calcul (212), et le second ensemble de caractéristiques parmi la pluralité de caractéristiques, au niveau du serveur infonuagique (250), dans lequel la pluralité de caractéristiques comprend des données statistiques pour une pluralité d'attributs calculés à partir des données de système GPS associées au trajet automobile, dans lequel la pluralité d'attributs comprend des données primaires capturées au cours du trajet automobile, et des données dérivées lesquelles sont dérivées des données primaires, et des dérivées multiples des données primaires et des données dérivées, et dans lequel les données primaires comprennent des données qui sont directement capturées en faisant appel aux données de système GPS comprenant une vitesse, une accélération et une trajectoire associées au trajet automobile, dans lequel les données dérivées et les dérivées multiples des données primaires et des données dérivées sont calculées au niveau du serveur infonuagique, dans lequel les données dérivées comprennent des données d'accélération transitoire, une accélération latérale, une vitesse angulaire et une énergie d'accélération transitoire associées au trajet, et dans lequel les données statistiques comprennent une pluralité de paramètres statistiques associés à la pluralité d'attributs calculés à partir des données de système GPS ;

    stocker la pluralité de caractéristiques correspondant au trajet automobile, dans un référentiel associé au serveur infonuagique, le référentiel comprenant en outre des données de caractéristiques calculées précédemment associées à un ensemble de profils de conducteurs pour une pluralité de trajets effectués ;

    regrouper la pluralité de caractéristiques des données de caractéristiques calculées précédemment associées à la pluralité de profils de conducteurs, en un ensemble de premiers groupes, sur la base d'une paire de valeurs de chaque caractéristique, dans lequel chaque premier groupe de la pluralité de premiers groupes correspondant à la caractéristique de la pluralité de caractéristiques est représenté par la paire de valeurs comprenant une valeur la plus élevée et une valeur la plus basse de ladite caractéristique, et dans lequel une différence entre la valeur la plus élevée et la valeur la plus basse définit une distance dudit premier groupe ;

    regrouper la pluralité de caractéristiques associées à un profil de conducteur correspondant au trajet automobile, en un ensemble de seconds groupes, sur la base d'une paire de valeurs de ladite caractéristique, dans lequel chaque second groupe de l'ensemble de seconds groupes correspondant à la caractéristique de la pluralité de caractéristiques est représenté par la paire de valeurs comprenant une valeur la plus élevée et une valeur la plus basse sur la base de ladite caractéristique, et dans lequel une différence entre la valeur la plus élevée et la valeur la plus basse définit une distance dudit second groupe ;

    obtenir un écart relatif entre ledit un ou lesdites plusieurs seconds groupes et ledit un ou lesdits plusieurs premiers groupes, sur la base de la distance du premier groupe et de la distance du second groupe ;

    obtenir, pour chaque profil de conducteur de la pluralité de profils de conducteurs, un ensemble de caractéristiques pertinentes parmi la pluralité de caractéristiques, sur la base d'une comparaison de distance de chaque caractéristique de la pluralité de caractéristiques à une valeur de seuil de la distance ;

    pour chaque caractéristique pertinente de l'ensemble de caractéristiques pertinentes, obtenir un ensemble de profils de conducteurs dont la valeur de la caractéristique pertinente se situe dans une plage prédéterminée ;

    calculer un score de pertinence pour chaque profil de conducteur parmi l'ensemble de profils de conducteurs, sur la base de la détermination selon laquelle la valeur correspondante des caractéristiques pertinentes se situe dans la plage prédéterminée correspondante pour ladite caractéristique pertinente ; et

    identifier, sur la base du score de pertinence, parmi l'ensemble de profils de conducteurs, le profil de conducteur correspondant au trajet.


     
    8. Système selon la revendication 7, dans lequel, en vue de calculer le premier ensemble de caractéristiques au niveau du dispositif de calcul, le premier processeur matériel (202a) et le second processeur matériel (202b) sont configurés, par lesdites instructions, de manière à :

    vérifier si une ou plusieurs caractéristiques opérationnelles du dispositif de calcul se situent dans une plage prédéterminée des caractéristiques opérationnelles ;

    dans le cadre d'une détermination selon laquelle les caractéristiques opérationnelles se situent dans la plage prédéterminée, interroger le serveur infonuagique pour chaque caractéristique du premier ensemble de caractéristiques en vue de déterminer si ladite caractéristique est calculée au niveau du serveur infonuagique ; et

    calculer ladite caractéristique au niveau du dispositif de calcul lorsqu'il est déterminé que la caractéristique n'est pas calculée au niveau du serveur infonuagique.


     
    9. Système selon la revendication 7, dans lequel la pluralité de paramètres statistiques comprend une moyenne, une médiane, une asymétrie, un aplatissement, un écart type, un maximum, un minimum et un centile, le 97,5e centile, Q3, Q1, et le 2,5e centile, Q1 de la première différence d'accélération latérale, l'aplatissement de la seconde différence d'énergie d'accélération transitoire, le 2,5e centile de la seconde différence d'énergie d'accélération transitoire.
     
    10. Système selon la revendication 7, dans lequel le premier processeur matériel (202a) et le second processeur matériel (202b) sont configurés, par lesdites instructions, de manière à omettre des valeurs aberrantes de l'ensemble de premiers groupes et de l'ensemble de seconds groupes avant d'obtenir l'écart relatif entre ledit un ou lesdits plusieurs seconds groupes et ledit un ou lesdits plusieurs premiers groupes.
     
    11. Support non transitoire lisible par ordinateur sur lequel est incorporé un programme informatique comprenant des instructions qui, lorsqu'elles sont exécutées dans un premier processeur matériel (202a) associé à un dispositif de calcul (212) et dans un second processeur matériel (202b) associé à un serveur infonuagique (250), amènent lesdits processeurs à exécuter un procédé de profilage de conducteurs correspondant à un trajet automobile selon l'une quelconque des revendications 1 à 6.
     




    Drawing




















    Cited references

    REFERENCES CITED IN THE DESCRIPTION



    This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

    Patent documents cited in the description